<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>musc@> $daniele.rant &#124; Out-Blog &#187; ITVC</title>
	<atom:link href="http://www.muscetta.com/category/itvc/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.muscetta.com</link>
	<description>Superior Dedication - Specialization is bullshit.</description>
	<pubDate>Tue, 26 Aug 2008 16:55:12 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.1</generator>
	<language>en</language>
			<item>
		<title>Looking at OpsMgr2007 Alert trend with Command Shell</title>
		<link>http://www.muscetta.com/2008/01/25/looking-at-opsmgr2007-alert-trend-with-command-shell/</link>
		<comments>http://www.muscetta.com/2008/01/25/looking-at-opsmgr2007-alert-trend-with-command-shell/#comments</comments>
		<pubDate>Fri, 25 Jan 2008 20:01:02 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Coding]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[MOM]]></category>

		<category><![CDATA[Microsoft]]></category>

		<category><![CDATA[OpsMgr2007]]></category>

		<category><![CDATA[PowerShell]]></category>

		<category><![CDATA[System Center Operations Manager 2007]]></category>

		<category><![CDATA[Tools]]></category>

		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2008/01/25/looking-at-opsmgr2007-alert-trend-with-command-shell/</guid>
		<description><![CDATA[It&#039;s friday night, I am quite tired and I can&#039;t be asked of writing a long post. But I have not written much all week, not even updated my Twitter, and now I want to finish the week with at least some goodies. So this is the turn of a couple of Powershell commands/snippets/scripts that [...]]]></description>
			<content:encoded><![CDATA[<p>It&#039;s friday night, I am quite tired and I can&#039;t be asked of writing a long post. But I have not written much all week, not even updated my Twitter, and now I want to finish the week with at least some goodies. So this is the turn of a couple of <a href="http://www.microsoft.com/powershell">Powershell</a> commands/snippets/scripts that will count alerts and events generated each day: this information could help you understand the trends of events and alerts over time in a Management Group. It is nothing fancy at all, but they can still be useful to someone out there. In the past (MOM 2005) I used to gather this kind of information with SQL Queries against the operations database. But now, with Powershell, everything is exposed as objects and it is much easier to get information without really getting your hands dirty with the database <img src='http://www.muscetta.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p><strong>#Number of Alerts per day</strong></p>
<p><em>$alerttimes = Get-Alert | Select-Object TimeRaised<br />
$array=@() </em></p>
<p><em>foreach ($datetime in $alerttimes){<br />
$array += $datetime.timeraised.date<br />
} </em></p>
<p><em>$array | Group-Object Date</em></p>
<p><strong>#Number of Events per day</strong></p>
<p><em>$eventtimes = Get-Event | Select-Object TimeGenerated<br />
$array=@() </em></p>
<p><em>foreach ($datetime in $eventtimes){<br />
$array += $datetime.timegenerated.date<br />
} </em></p>
<p><em>$array | Group-Object Date</em></p>
<p>Beware that these &#034;queries&#034; might take a long time to execute (especially the events one) depending on the amount of data and your retention policy.</p>
<p>This is of course just scratching the surface of the amount of amazing things you can do with Powershell in Operations Manager 2007. For this kind of information you might want to keep an eye on the official &#034;System Center Operations Manager Command Shell&#034; blog: <a href="http://blogs.msdn.com/scshell/" title="http://blogs.msdn.com/scshell/">http://blogs.msdn.com/scshell/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2008/01/25/looking-at-opsmgr2007-alert-trend-with-command-shell/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Get-FlickrPhotos</title>
		<link>http://www.muscetta.com/2008/01/14/get-flickrphotos/</link>
		<comments>http://www.muscetta.com/2008/01/14/get-flickrphotos/#comments</comments>
		<pubDate>Mon, 14 Jan 2008 21:46:50 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Blogs]]></category>

		<category><![CDATA[Choice]]></category>

		<category><![CDATA[Coding]]></category>

		<category><![CDATA[Cross Post]]></category>

		<category><![CDATA[Flickr]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Interop]]></category>

		<category><![CDATA[PowerShell]]></category>

		<category><![CDATA[Tools]]></category>

		<category><![CDATA[dotNet]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2008/01/14/get-flickrphotos/</guid>
		<description><![CDATA[A while ago, talking to some friends, I was mentioning how cool it was that Flickr provides APIs, so that you can always get your data out of it, if you want to. There are several downloader applications that I found on the Internet, but I have not yet chosen one that I completey like [...]]]></description>
			<content:encoded><![CDATA[<p>A while ago, talking to some friends, I was mentioning how cool it was that <a href="http://www.flickr.com/services/api">Flickr provides APIs</a>, so that you can always get your data out of it, if you want to. There are several downloader applications that I found on the Internet, but I have not yet chosen one that I completey like among the few that I&#039;ve tried. So, inspired by <a href="http://kosso.wordpress.com/2007/01/31/free-php5-script-to-grab-your-flickr-photos/">Kosso&#039;s PHP script for enumerating your photos on Flickr</a>, I thought I&#039;d port it to <a href="http://www.microsoft.com/powershell">Powershell</a> and make my own version of it. Just for the fun of it. My Powershell script does not do everything that Kosso&#039;s one does: I don&#039;t build a web page showing description and comments. I suppose this is because the original script was made with PHP, which you usually run on a web server and outputting as HTML is the standard thing you would do in PHP. I just concentrated on the &#034;download&#034; thing, since mine it is a console script. You can think of mine as a &#034;full backup&#034; script. Full&#8230; well, at least of all your photos, if not of all the metadata. It should be trivial to extend anyway, also considering Powershell XML type accelerator really makes it extremely easy to parse the output of a <a href="http://www.flickr.com/services/api/request.rest.html">REST API such as Flickr&#039;s</a> (I would say even easier and more readable that PHP&#039;simplexml). There is a ton of things that could be extended/improved in the script&#8230; including supporting proxy servers, accepting more parameters for things that are now hardcoded&#8230; and with a million other things. Even this way, though, I think that the script can be useful to show a number of techniques in Powershell. Or just to download your photos <img src='http://www.muscetta.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> So you can download the script from here: <a href="http://www.muscetta.org/Get-FlickrPhotos.ps1.txt">Get-FlickrPhotos.ps1</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2008/01/14/get-flickrphotos/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Welcome www.powershell.it!</title>
		<link>http://www.muscetta.com/2008/01/04/welcome-wwwpowershellit/</link>
		<comments>http://www.muscetta.com/2008/01/04/welcome-wwwpowershellit/#comments</comments>
		<pubDate>Fri, 04 Jan 2008 21:35:50 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Blogs]]></category>

		<category><![CDATA[Choice]]></category>

		<category><![CDATA[Coding]]></category>

		<category><![CDATA[Cross Post]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Integration]]></category>

		<category><![CDATA[Interop]]></category>

		<category><![CDATA[Links]]></category>

		<category><![CDATA[Microsoft]]></category>

		<category><![CDATA[PowerShell]]></category>

		<category><![CDATA[Tools]]></category>

		<category><![CDATA[Windows]]></category>

		<category><![CDATA[dotNet]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2008/01/04/welcome-wwwpowershellit/</guid>
		<description><![CDATA[I just read from Jeffrey Snover about this newly born Italian PowerShell community site.
I just created an account for myself on the site&#8230; as you know I like PowerShell, so even if I usually prefer writing stuff in english, I will try to hang out there and see how can I contribute to it.
After all, [...]]]></description>
			<content:encoded><![CDATA[<p>I <a href="http://blogs.msdn.com/powershell/archive/2008/01/04/www-powershell-it-italian-powershell-community-website.aspx">just read from Jeffrey Snover</a> about this newly born <a href="http://www.powershell.it/">Italian PowerShell community site</a>.</p>
<p>I just created an account for myself on the site&#8230; as you know <a href="http://www.muscetta.com/category/powershell/">I like PowerShell</a>, so even if I usually prefer writing stuff in english, I will try to hang out there and see how can I contribute to it.</p>
<p>After all, I am italian&#8230; <img src='http://www.muscetta.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2008/01/04/welcome-wwwpowershellit/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Simply Works</title>
		<link>http://www.muscetta.com/2007/12/27/simply-works/</link>
		<comments>http://www.muscetta.com/2007/12/27/simply-works/#comments</comments>
		<pubDate>Thu, 27 Dec 2007 18:24:27 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Blogs]]></category>

		<category><![CDATA[Choice]]></category>

		<category><![CDATA[Coding]]></category>

		<category><![CDATA[Energy]]></category>

		<category><![CDATA[Facebook]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[MOM]]></category>

		<category><![CDATA[MOM2005]]></category>

		<category><![CDATA[Microsoft]]></category>

		<category><![CDATA[OpsMgr2007]]></category>

		<category><![CDATA[Personal]]></category>

		<category><![CDATA[Photos]]></category>

		<category><![CDATA[PowerShell]]></category>

		<category><![CDATA[Rant]]></category>

		<category><![CDATA[Risk]]></category>

		<category><![CDATA[System Center Operations Manager 2007]]></category>

		<category><![CDATA[Tools]]></category>

		<category><![CDATA[lifestream]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/12/27/simply-works/</guid>
		<description><![CDATA[
Simply Works, uploaded by Daniele Muscetta on Flickr.
I don&#039;t know about other people, but I do get a lot to think when the end of the year approaches: all that I&#039;ve done, what I have not yet done, what I would like to do, and so on&#8230;
And it is a period when memories surface.
I found [...]]]></description>
			<content:encoded><![CDATA[<p class="flickr-frame"><a title="photo sharing" href="http://www.flickr.com/photos/dani3l3/2141526220/"><img src="http://farm3.static.flickr.com/2222/2141526220_7754fa3134.jpg" alt="Simply Works" class="flickr-photo" /></a></p>
<p><span class="flickr-caption"><a href="http://www.flickr.com/photos/dani3l3/2141526220/">Simply Works</a>, uploaded by <a href="http://www.flickr.com/people/dani3l3/">Daniele Muscetta</a> on Flickr.</span></p>
<p class="flickr-yourcomment">I don&#039;t know about other people, but I do get a lot to think when the end of the year approaches: all that I&#039;ve done, what I have not yet done, what I would like to do, and so on&#8230;</p>
<p>And it is a period when memories surface.</p>
<p>I found the two old CD-ROMs you can see in the picture. And those are memories.<br />
missioncritical software was the company that invented a lot of stuff that became Microsoft&#039;s products: for example <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=6f86937b-533a-466d-a8e8-aff85ad3d212&amp;displaylang=en">ADMT</a> and <a href="http://www.microsoft.com/systemcenter/opsmgr/default.mspx">Operations Manager</a>.</p>
<p>The black CD contains SeNTry, the &#034;enterprise event manager&#034;, what later became Operations Manager.<br />
On the back of the CD, the company motto at the time: &#034;software that works simply and simply works&#034;.<br />
So true. I might digress on this concept, but I won&#039;t do that right now.</p>
<p>I have already explained in my other blog <a href="http://blogs.msdn.com/dmuscett/archive/2005/09/02/459914.aspx">what I do for work</a>. Well, that was a couple of years ago anyway. Several things have changed, and we are moving towards offering services that are more measurable and professional. So, since it happens that in a certain job you need to be an &#034;expert&#034; and &#034;specialize&#034; in order to be &#034;seen&#034; or &#034;noticed&#034;.<br />
You know <a href="http://www.muscetta.com/2006/05/29/specialization-is-bullshit/">I don&#039;t really believe in specialization</a>. I have written it <a href="http://www.muscetta.com/2006/11/05/more-on-specialization/">all over the place</a>. But you need to make other people happy as well and let them believe what they want, so when you &#034;specialize&#034; they are happier. No, really, it might make a difference in your carrer <img src='http://www.muscetta.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>In this regard, I did also mention my <a href="http://blogs.msdn.com/dmuscett/archive/2004/11/18/263280.aspx">&#034;meeting again&#034; with Operations Manager</a>.<br />
That&#039;s where Operations manager helped me: it let me &#034;specialize&#034; in systems and applications management&#8230; a field where you need to know a bit of everything anyway: infrastructure, security, logging, scripting, databases, and so on&#8230; <img src='http://www.muscetta.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /><br />
This way, everyone wins.</p>
<p>Don&#039;t misunderstand me, this does not mean I want to know everything. One cannot possibly know everything, and the more I learn the more I believe I know nothing at all, to be honest. I don&#039;t know everything, <a href="http://thedailywtf.com/Articles/Classic-WTF-Lock-In-Key-Security.aspx">so please don&#039;t ask me everything - I work with mainframes</a> <img src='http://www.muscetta.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /><br />
While that can be a great excuse to avoid neighbours and relatives annoyances with their PCs though, on the serious side I still believe that any intelligent individual cannot be locked into doing a narrow thing and know only that one bit just because it is common thought that you have to act that way.</p>
<p>If I would <a href="http://twitter.com/gapingvoid/statuses/535752142">stop where I have to stop</a> I would be the standard &#034;IT Pro&#034;. I would be fine, sure, but I would get bored soon. I would not learn anything. <a href="http://www.muscetta.com/2007/09/11/itpro-vs-dev-there-is-no-such-a-thing/">But I don&#039;t feel I am the standard &#034;IT Pro&#034;</a>. In fact, funnily enough, <a href="http://www.google.com/search?hl=en&amp;q=link:www.muscetta.com&amp;btnG=Search">on some other blogs out there I have been referenced as a &#034;Dev&#034;</a> (find it on your own, look at their blogrolls :-)). But I am not a Dev either then&#8230; I don&#039;t write code for work. I would love to, but I rarely actually do, other than some scripts. Anyway, I tend to escape the definition of the usual &#034;expert&#034; on something&#8230; mostly because I want to escape it. I don&#039;t see myself represented by those generalization.</p>
<p>As <a href="http://haacked.com/archive/2007/12/21/faceoff-haack-vs-hanselman-it-gets-real.aspx">Phil puts it</a>, when asked &#034;Are software developers - engineers or artists?&#034;:</p>
<blockquote><p>&#034;[...] Don’t take this as a copout, but a little of both. I see it more as craftsmanship. Engineering relies on a lot of science. Much of it is demonstrably empirical and constrained by the laws of physics. Software is less constrained by physics as it is by the limits of the mind. [...]&#034;</p></blockquote>
<p>Craftmanship. Not science.<br />
And stop calling me an &#034;engineer&#034;. I am not an engineer. I was even crap in math, in school!</p>
<p>Anyway, what does this all mean? In practical terms, it means that in the end, wether I want it or not, I do get considered an &#034;expert&#034; on MOM and OpsMgr&#8230; and that I will mostly work on those products for the next year too. But that is not bad, because, as I said, working on that product means working on many more things too. Also, I can point to different audiences: those believing in &#034;experts&#034; and those going beyond schemes. It also means that I will have to continue teaching a couple of scripting classes (both VBScript and PowerShell) that nobody else seems to be willing to do (because they are all *expert* in something narrow), and that I will still be hacking together my other stuff (my facebook apps, my wordpress theme and plugins, my server, etc) and even continue to have strong opinions in those other fields that I find interesting and where I am not considered an *expert* <img src='http://www.muscetta.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>Well, I suppose I&#039;ve been ranting enough for today&#8230;and for this year <img src='http://www.muscetta.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /><br />
I really want to wish everybody again a great beginning of 2008!!! What are you going to be busy with, in 2008 ?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/12/27/simply-works/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Monitoring Syslog with OpsMgr 2007</title>
		<link>http://www.muscetta.com/2007/11/09/monitoring-syslog-with-opsmgr-2007/</link>
		<comments>http://www.muscetta.com/2007/11/09/monitoring-syslog-with-opsmgr-2007/#comments</comments>
		<pubDate>Fri, 09 Nov 2007 12:45:05 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Cross Post]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Integration]]></category>

		<category><![CDATA[Interop]]></category>

		<category><![CDATA[MOM]]></category>

		<category><![CDATA[Microsoft]]></category>

		<category><![CDATA[OpsMgr2007]]></category>

		<category><![CDATA[System Center Operations Manager 2007]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/11/09/monitoring-syslog-with-opsmgr-2007/</guid>
		<description><![CDATA[I had missed it&#8230; finally guidance on how to collect and monitor UNIX syslog in System Center Operations Manager 2007 has been published!
This is much more sysadmin-oriented than what was availble before (that remais of course still relevant, but more from a Management Pack developer&#039;s point of view, who wants to know how things work [...]]]></description>
			<content:encoded><![CDATA[<p>I had missed it&#8230; finally guidance on <a href="http://support.microsoft.com/kb/942863">how to collect and monitor UNIX syslog in System Center Operations Manager 2007</a> has been published!</p>
<p>This is much more sysadmin-oriented than <a href="http://blogs.msdn.com/komal/archive/2007/10/05/syslog-module-enhanced.aspx">what was availble before</a> (that remais of course still relevant, but more from a Management Pack developer&#039;s point of view, who wants to know how things work &#034;behind the hood&#034;).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/11/09/monitoring-syslog-with-opsmgr-2007/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Using Live ID to authenticate to WordPress</title>
		<link>http://www.muscetta.com/2007/11/02/using-live-id-to-authenticate-to-wordpress/</link>
		<comments>http://www.muscetta.com/2007/11/02/using-live-id-to-authenticate-to-wordpress/#comments</comments>
		<pubDate>Fri, 02 Nov 2007 21:39:23 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Choice]]></category>

		<category><![CDATA[Coding]]></category>

		<category><![CDATA[Cross Platform]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Integration]]></category>

		<category><![CDATA[Interop]]></category>

		<category><![CDATA[LiveID]]></category>

		<category><![CDATA[Microsoft]]></category>

		<category><![CDATA[PHP]]></category>

		<category><![CDATA[Passport]]></category>

		<category><![CDATA[Personal]]></category>

		<category><![CDATA[Plugin]]></category>

		<category><![CDATA[WebSite]]></category>

		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/11/02/using-live-id-to-authenticate-to-wordpress/</guid>
		<description><![CDATA[Yesterday I&#039;ve been hacking a bit with the Windows Live ID SDK and I wrote a very small and simple plugin for WordPress that enables you to login in to WordPress with your passport Live ID.
I had read in various places that such a plugin would be welcome&#8230; I looked around and found none yet [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday I&#039;ve been hacking a bit with the <a href="http://msdn2.microsoft.com/en-us/library/bb676633.aspx">Windows Live ID SDK</a> and I wrote a very small and simple plugin for <a href="http://www.wordpress.org/">WordPress</a> that enables you to login in to WordPress with your <span style="text-decoration: line-through;">passport</span> Live ID.<br />
I had read <a href="http://wordpress.org/extend/ideas/topic.php?id=689">in various</a> <a href="http://microsoft.blognewschannel.com/archives/2007/08/17/windows-live-id-cardspace-info-cards-available-for-websites">places</a> that such a plugin would be welcome&#8230; I looked around and found none yet (if anyone has instead already written something like this and I missed it I will happily waste the simple stuff I did  for something more advanced/well written&#8230; just let me know :-)).<br />
I took a look at <a href="http://mvolo.com/blogs/serverside/archive/2007/08/12/IIS-Authentication-plugin-for-the-Wordpress-PHP-blogging-engine.aspx">a similar experiment</a>, and eventually even found that there is <a href="http://verselogic.net/projects/wordpress/wordpress-openid-plugin">some conceptually similar plugin written to work with OpenID</a>. The wordpress openid plugin is much more complex and much more advanced than what I did, tough. It will let you log in with just ANY OpenID user, it will automatically create a user for you on that wordpress installation and associate it with your ID, even just for the purpose of commenting, etc.</p>
<p>But in my blog I don&#039;t require or need people to actually log in to do anything. I actually like anonymous/free comment. A CAPTCHA takes care of spammers and I am fine with it so far. Probably for a big site with a lot of users it might make sense, but for my blog so far it doesn&#039;t. But there&#039;s one thing for which this is instead useful: I have always been worried, when logging in through HTTP (thus, without SSL) to my blog from networks I don&#039;t manage or completely trust, that my password could be sniffed over the wire and stolen. Live ID solves my problem by letting Microsoft validate my identity: I have associated my Live ID to the blog&#039;s main user account(=myself), the one writing this post. So the plugin in its current form <a href="http://www.muscetta.com/wp-content/plugins/liveauth/auth.php">is used as a replacement of the login form</a> (the <a href="http://www.muscetta.com/wp-login.php">standard wp-login.php wordpress form</a> CAN still be used if you like, of course, you just don&#039;t HAVE to. Also the use of xmlrpc will still require local user/pwd combination.). Anyway, this new form will authenticate you thorugh Live ID and then check if your Live ID is associated to any local user. If it is, it will log you on to wordpress with that account. Otherwise it will inform you that you are successfully logged on to passport Live, but unfortunately there is no corresponding local account for you, and that it would need to be set up. Setting it up is as difficult as adding a line to the database&#8230; probably adding a form or a property page would be nice, but in my case I just did it with a query:</p>
<p>INSERT INTO `wordpress`.`wp-usermeta` (<br />
`umeta_id` ,<br />
`user_id` ,<br />
`meta_key` ,<br />
`meta_value`<br />
)<br />
VALUES (<br />
NULL , &#039;1&#039;, &#039;LiveID&#039;, &#039;f11fa1d3e82c68776f94a3a5c459b70b&#039;<br />
);</p>
<p>which adds an extra &#034;property&#034; for the first user (admin) called &#039;LiveID&#039; which contains your Live ID (the one above is not my real one, in case you were wondering). When you are authenticated by LiveID and you get back this value, the plugin checks in this table which WordPress userid in the database has been associated with this Live ID and - if it finds one - it authenticates you as that user. Of course you should not have duplicates.</p>
<p>My code is mostly based on <a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=8BA187E5-3630-437D-AFDF-59AB699A483D&amp;displaylang=en">the SDK PHP Sample</a>, with some modification to integrate it in WordPress as a plugin. Of course I removed the file that is used as &#034;user database&#034; and used wordpress DB instead.</p>
<p>There&#039;s a ton of things that could be improved. I just did not put any more effort and time in it. As you might know if you read this blog, I am not a full time developer. Actually I shouldn&#039;t write code at all for work and I am mainly considered an &#034;infrastructure&#034; guy. Anyway, I would like to code more and even if I am not supposed to, I always try to find stimulating situations that require a bit of integration, thinking out of the box, some scripting, etc&#8230;</p>
<p><strong>[updated: november 3rd 2007]</strong> You can download the sample plugin &#034;AS-IS&#034; here: <strong><a href="http://www.muscetta.com/wp-content/uploads/liveauth.zip">liveauth.zip</a></strong> . This has only been tested and only works with Wordpress 2.3.x serie (but should also work with earlier versions - not tested) <a href="http://www.muscetta.com/wp-content/uploads/liveauth.zip"><br />
</a><br />
<strong>[updated: march 30th 2008]</strong> <a href="http://wordpress.org/development/2008/03/wordpress-25-brecker/">Wordpress 2.5</a> has changed the way the authentication cookie is generated, therefore here is an updated version of the plugin that works with the new secure cookies: <strong><a href="http://www.muscetta.com/wp-content/uploads/liveauth02.zip">liveauth02.zip</a></strong><br />
I should really invest some more time in this and clear up the code. I should also make an interface to make the configuration easier, and maybe make a version that works on both 2.3 and 2.5 branches. I am not sure when I will have time for that, though&#8230;</p>
<p><strong>[updated: april 20th 2008]</strong> I have released version 0.3c of the plugin which now finally includes a simple configuration page, and should work on both WordPress 2.3 (and older) and on the 2.5 brach. Please visit the new Windows <strong><a href="http://www.muscetta.com/live-id-wordpress-plugin/">Live ID Authentication WordPress Plugin Page</a></strong>.<a href="http://www.muscetta.com/wp-content/uploads/liveauth.zip"><br />
</a></p>
<p><strong>Disclaimer:</strong><br />
The information in this weblog is provided &#034;AS IS&#034; with no warranties, and confers no rights. This weblog does not represent the thoughts, intentions, plans or strategies of my employer. It is solely my own personal opinion. All code samples are provided &#034;AS IS&#034; without warranty of any kind, either express or implied, including but not limited to the implied warranties of merchantability and/or fitness for a particular purpose.<br />
THIS WORK IS NOT ENDORSED AND NOT EVEN CHECKED, AUTHORIZED, SCRUTINIZED NOR APPROVED BY MY EMPLOYER, AND IT ONLY REPRESENT SOMETHING WHICH I&#039;VE DONE IN MY FREE TIME. NO GUARANTEE WHATSOEVER IS GIVEN ON THIS. THE AUTHOR SHALL NOT BE MADE RESPONSIBLE FOR ANY DAMAGE YOU MIGHT INCUR WHEN USING THIS PROGRAM.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/11/02/using-live-id-to-authenticate-to-wordpress/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Microsoft in the Open</title>
		<link>http://www.muscetta.com/2007/10/18/microsoft-in-the-open/</link>
		<comments>http://www.muscetta.com/2007/10/18/microsoft-in-the-open/#comments</comments>
		<pubDate>Thu, 18 Oct 2007 10:31:26 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Blogs]]></category>

		<category><![CDATA[Choice]]></category>

		<category><![CDATA[Cross Post]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/10/18/microsoft-in-the-open/</guid>
		<description><![CDATA[Two of Microsoft’s Shared Source licenses have been approved by the OSI. Read more on port25! (yes, I did read this yesterday, but I was teaching and then travelling so I did not make it to blog).
]]></description>
			<content:encoded><![CDATA[<p>Two of Microsoft’s Shared Source licenses <a href="http://opensource.org/node/207">have been approved by the OSI</a>. <a href="http://port25.technet.com/archive/2007/10/16/microsoft-out-in-the-open.aspx">Read more on port25</a>! (yes, I did read this yesterday, but I was teaching and then travelling so I did not make it to blog).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/10/18/microsoft-in-the-open/feed/</wfw:commentRss>
		</item>
		<item>
		<title>.Net Framework CODE is going to be available!</title>
		<link>http://www.muscetta.com/2007/10/04/net-framework-code-is-going-to-be-available/</link>
		<comments>http://www.muscetta.com/2007/10/04/net-framework-code-is-going-to-be-available/#comments</comments>
		<pubDate>Thu, 04 Oct 2007 06:01:11 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Blogs]]></category>

		<category><![CDATA[Cross Platform]]></category>

		<category><![CDATA[Cross Post]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Integration]]></category>

		<category><![CDATA[Interop]]></category>

		<category><![CDATA[MS Italy Blogs]]></category>

		<category><![CDATA[Microsoft]]></category>

		<category><![CDATA[Rant]]></category>

		<category><![CDATA[dotNet]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/10/04/net-framework-code-is-going-to-be-available/</guid>
		<description><![CDATA[I am amazed and excited to read that Microsoft has decided to release the source code of the .Net libraries.
Scott Guthrie writes:
&#034;[...] One of the things my team has been working to enable has been the ability for .NET developers to download and browse the source code of the .NET Framework libraries, and to easily [...]]]></description>
			<content:encoded><![CDATA[<p>I am amazed and excited to <a href="http://weblogs.asp.net/scottgu/archive/2007/10/03/releasing-the-source-code-for-the-net-framework-libraries.aspx">read that Microsoft has decided to release the source code of the .Net libraries</a>.</p>
<p>Scott Guthrie writes:</p>
<blockquote><p><em>&#034;[...] One of the things my team has been working to enable has been the ability for .NET developers to download and browse the source code of the .NET Framework libraries, and to easily enable debugging support in them. [...] VS 2008 will include support to automatically retrieve the appropriate .NET Framework source files on demand from Microsoft.  This means that the source code for the ASP.NET GridView and BaseDataBoundControl classes above do not have to already be installed on the machine before we started the debugger.  Instead, when we use F11 to step into their implementation VS can automatically download the source files from Microsoft and open it within the IDE. [...]&#034;</em></p></blockquote>
<p>WOW. This is so cool, and a further step in the right direction.</p>
<p>Thanks to <a href="http://blogs.technet.com/alead_msft/archive/2007/10/03/codice-sorgente-delle-librerie-del-framework-net-aperto.aspx">Alessandro</a> for having picked this up, as I read it on his blog, and I thought it was an information worth spreading!!!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/10/04/net-framework-code-is-going-to-be-available/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Facebook implemented a user.setStatus API!</title>
		<link>http://www.muscetta.com/2007/10/01/facebook-implemented-a-usersetstatus-api/</link>
		<comments>http://www.muscetta.com/2007/10/01/facebook-implemented-a-usersetstatus-api/#comments</comments>
		<pubDate>Mon, 01 Oct 2007 08:55:20 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Blogs]]></category>

		<category><![CDATA[Choice]]></category>

		<category><![CDATA[Coding]]></category>

		<category><![CDATA[Cross Platform]]></category>

		<category><![CDATA[Cross Post]]></category>

		<category><![CDATA[Facebook]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Integration]]></category>

		<category><![CDATA[Interop]]></category>

		<category><![CDATA[Rant]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/10/01/facebook-implemented-a-usersetstatus-api/</guid>
		<description><![CDATA[Finally, you CAN change your Facebook status programmatically in a way that is supported!
Some months ago Christian discovered a hack to change your Facebook status. Some other people also used it and extended it. I also ported it to C# and made a winform using its unofficial method.
Suddenly after, Facebook asked us to take down [...]]]></description>
			<content:encoded><![CDATA[<p>Finally, <a href="http://developers.facebook.com/documentation.php?v=1.0&amp;doc=extperms">you CAN change your Facebook status programmatically in a way that is supported</a>!</p>
<p>Some months ago <a href="http://nexdot.net/blog/2007/04/20/updating-facebook-status-using-php">Christian discovered a hack to change your Facebook status</a>. <a href="http://blakebrannon.com/2007/08/18/how-to-sync-facebook-status-with-twitter">Some other people also used it and extended it</a>. <a href="http://www.muscetta.com/2007/08/03/facebook-statetray">I also ported it to C# and made a winform using its unofficial method</a>.<br />
Suddenly after, <a href="http://www.muscetta.com/2007/09/03/its-nice-to-see-things-called-by-their-real-name">Facebook asked us to take down the code</a>, as it violated their terms of service.</p>
<p><a href="http://www.muscetta.com/2007/09/06/facebook-status-change-is-not-a-crime">It has taken a while</a>, <a href="http://www.techcrunch.com/2007/09/06/facebook-opening-up-but-on-its-own-terms/">some struggles</a>, but now they finally recognized the need for <a href="http://adrianspender.com/blog/2007/05/21/federated-status">federated status</a>, and implemented a <strong>user.setStatus</strong> API.</p>
<p><a href="http://www.twitter.com/">Twitter</a> is the first to pick it up, so now <a href="http://twittersweet.com/2007/9/30/integration-between-twitter-and-facebook-status">you can update twitter and have your status propagate in Facebook</a>!</p>
<p>Well done, guys!</p>
<p>When I&#039;ll have some time I might think of rewriting my app using the SUPPORTED method, maybe finally writing that <a href="http://www.25hoursaday.com/weblog/CommentView.aspx?guid=51b24ec1-ec28-4526-b7fe-9d1e6c7fc802">Live Messenger plugin</a>&#8230; it would be nice <img src='http://www.muscetta.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /><br />
When I&#039;ll have time&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/10/01/facebook-implemented-a-usersetstatus-api/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Orkut make up</title>
		<link>http://www.muscetta.com/2007/08/24/orkut-make-up/</link>
		<comments>http://www.muscetta.com/2007/08/24/orkut-make-up/#comments</comments>
		<pubDate>Fri, 24 Aug 2007 19:11:43 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Cross Post]]></category>

		<category><![CDATA[ITIL]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Interop]]></category>

		<category><![CDATA[Orkut]]></category>

		<category><![CDATA[Rant]]></category>

		<category><![CDATA[Social Networking]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/08/24/orkut-make-up/</guid>
		<description><![CDATA[[...] Just as you change your profile picture to keep with the times, we&#039;re updating the look of orkut. The change isn&#039;t live yet, but starting soon, we will start rolling-out the new look. [...]
this is what is written on Orkut blog.
&#8230;shouldn&#039;t they rather think of providing an API instead than just a new look [...]]]></description>
			<content:encoded><![CDATA[<blockquote><em>[...] Just as you change your profile picture to keep with the times, we&#039;re updating the look of orkut. The change isn&#039;t live yet, but starting soon, we will start rolling-out the new look. [...]</em></p></blockquote>
<p>this is what <a href="http://en.blog.orkut.com/2007/08/coming-soon-new-look.html">is written on Orkut blog</a>.</p>
<p>&#8230;shouldn&#039;t they rather think of providing an API instead than just <a href="http://bp0.blogger.com/_eXrfCIRgeCA/Rs78Y4ZZv4I/AAAAAAAAFho/9uhuTh4V9Rg/s1600-h/new-homepage-en.png">a new look (which does not look that different from the old one)</a> ?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/08/24/orkut-make-up/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Open Source Projects and Microsoft</title>
		<link>http://www.muscetta.com/2007/08/24/open-source-projects-and-microsoft/</link>
		<comments>http://www.muscetta.com/2007/08/24/open-source-projects-and-microsoft/#comments</comments>
		<pubDate>Fri, 24 Aug 2007 12:16:50 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Blogs]]></category>

		<category><![CDATA[C#]]></category>

		<category><![CDATA[Choice]]></category>

		<category><![CDATA[Coding]]></category>

		<category><![CDATA[Cross Platform]]></category>

		<category><![CDATA[Cross Post]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Integration]]></category>

		<category><![CDATA[Interop]]></category>

		<category><![CDATA[Microsoft]]></category>

		<category><![CDATA[Places]]></category>

		<category><![CDATA[Tools]]></category>

		<category><![CDATA[dotNet]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/08/24/open-source-projects-and-microsoft/</guid>
		<description><![CDATA[This CNet article about CodePlex has some VERY interesting points:
[...] Bayarsaikhan has posted the top 25 most active open-source projects on Microsoft&#039;s Codeplex site. Looking at the list, it looks like Microsoft developers spend their time doing much the same as the rest of the Java/other world: play games and make the Web world pretty with [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://news.com.com/8301-10784_3-9761998-7.html">This CNet article about CodePlex</a> has some VERY interesting points:</p>
<blockquote><p><em>[...] Bayarsaikhan </em><a href="http://www.plentyofcode.com/2007/08/most-active-open-source-projects-in.html" class="external-link"><font color="#0048c0"><em>has posted</em></font></a><em> the top 25 most active open-source projects on </em><a href="http://www.codeplex.com/"><font color="#20328e"><em>Microsoft&#039;s Codeplex</em></font></a><em> site. Looking at the list, it looks like Microsoft developers spend their time doing much the same as the rest of the Java/other world: play games and make the Web world pretty with AJAX. You can see the top project interests below in the Codeplex tag cloud.</em></p>
<p><em>Codeplex is interesting to me for several reasons, but primarily because it demonstrates something that I&#039;ve argued for many years now: </em><a href="http://asay.blogspot.com/2005/06/windows-as-open-source-platform.html" class="external-link"><font color="#0048c0"><em>open source on the Windows platform is a huge opportunity for Microsoft</em></font></a><em>. It is something for the company to embrace, not despise.</em></p>
<p><em>And it does several things well (better than Sourceforge, in my opinion) [...]</em></p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/08/24/open-source-projects-and-microsoft/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Tafiti</title>
		<link>http://www.muscetta.com/2007/08/23/tafiti/</link>
		<comments>http://www.muscetta.com/2007/08/23/tafiti/#comments</comments>
		<pubDate>Thu, 23 Aug 2007 15:30:57 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Cross Platform]]></category>

		<category><![CDATA[Cross Post]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Microsoft]]></category>

		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/08/23/tafiti/</guid>
		<description><![CDATA[      .flickr-photo { border: solid 2px #000000; }  .flickr-yourcomment { }  .flickr-frame { text-align: left; padding: 3px; }  .flickr-caption { font-size: 0.8em; margin-top: 0px; }

Tafiti, uploaded by Daniele Muscetta on Flickr.
www.tafiti.com/#p=0&#38;q=%22Daniele%20Muscetta%22
Try it out.
]]></description>
			<content:encoded><![CDATA[<style type="text/css">      .flickr-photo { border: solid 2px #000000; }  .flickr-yourcomment { }  .flickr-frame { text-align: left; padding: 3px; }  .flickr-caption { font-size: 0.8em; margin-top: 0px; }</style>
<p class="flickr-frame"><a href="http://www.flickr.com/photos/dani3l3/1214899138/" title="photo sharing"><img src="http://farm2.static.flickr.com/1085/1214899138_6ca27a6f53.jpg" alt="Tafiti" class="flickr-photo" /></a></p>
<p><span class="flickr-caption"><a href="http://www.flickr.com/photos/dani3l3/1214899138/">Tafiti</a>, uploaded by <a href="http://www.flickr.com/people/dani3l3/">Daniele Muscetta</a> on Flickr.</span></p>
<p class="flickr-yourcomment"><a href="http://www.tafiti.com/#p=0&amp;q=%22Daniele%20Muscetta%22">www.tafiti.com/#p=0&amp;q=%22Daniele%20Muscetta%22</a></p>
<p>Try it out.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/08/23/tafiti/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Facebook Mobile is not working for Italy</title>
		<link>http://www.muscetta.com/2007/08/21/facebook-mobile-is-not-working-for-italy/</link>
		<comments>http://www.muscetta.com/2007/08/21/facebook-mobile-is-not-working-for-italy/#comments</comments>
		<pubDate>Tue, 21 Aug 2007 09:04:01 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Blogs]]></category>

		<category><![CDATA[C#]]></category>

		<category><![CDATA[Choice]]></category>

		<category><![CDATA[Coding]]></category>

		<category><![CDATA[Cross Platform]]></category>

		<category><![CDATA[Facebook]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Integration]]></category>

		<category><![CDATA[Interop]]></category>

		<category><![CDATA[Personal]]></category>

		<category><![CDATA[Rant]]></category>

		<category><![CDATA[Social Networking]]></category>

		<category><![CDATA[dotNet]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/08/21/facebook-mobile-is-not-working-for-italy/</guid>
		<description><![CDATA[    .flickr-photo { border: solid 2px #000000; }  .flickr-yourcomment { }  .flickr-frame { text-align: left; padding: 3px; }  .flickr-caption { font-size: 0.8em; margin-top: 0px; }

Facebook mobile is not working from mobile operators not in the US, I suppose.
I can&#039;t even log on to m.facebook.com with my WIndows Mobile SmartPhone.
I [...]]]></description>
			<content:encoded><![CDATA[<style type="text/css">    .flickr-photo { border: solid 2px #000000; }  .flickr-yourcomment { }  .flickr-frame { text-align: left; padding: 3px; }  .flickr-caption { font-size: 0.8em; margin-top: 0px; }</style>
<p class="flickr-frame"><a href="http://www.flickr.com/photos/dani3l3/1192155232/" title="photo sharing"><img src="http://farm2.static.flickr.com/1341/1192155232_2852c73935.jpg" alt="Facebook Mobile is not working for Italy" class="flickr-photo" /></a></p>
<p>Facebook mobile is not working from mobile operators not in the US, I suppose.<br />
I can&#039;t even log on to m.facebook.com with my WIndows Mobile SmartPhone.<br />
I can&#039;t send status updates through SMS.</p>
<p>I can&#039;t even send them by mail, or I get the following back:</p>
<p><a href="http://www.flickr.com/photos/dani3l3/1191285337/"><img width="416" src="http://farm2.static.flickr.com/1047/1191285337_ba494d53ef_o.jpg" alt="Facebook Mobile is not working for Italy" height="447" /></a></p>
<p>So, now, I am updating <a href="http://twitter.com/dani3l3">Twitter</a>.<br />
Twitter can be updated with an SMS even from Europe. Or it can be updated with a bot running GTalk. Very easy, can do it from everywhere.</p>
<p>I then wrote a small command line application (<a href="http://www.muscetta.com/2007/08/03/facebook-statetray/">based on the same &#034;hack&#034; as the one described before</a>) that runs every five minutes from the scheduler on my server and keeps the two in sync.</p>
<p>I wrote it in C# as a Console application because that&#039;s usually what I do when I want it to run it both on my windows machines and/or on my Linux server (with <a href="http://www.mono-project.com/">MONO</a>). I already used this approach in the past and I found it to be successful. As long as you keep the application simple enough and check out <a href="http://www.go-mono.com/docs">the documentation for the implemented classes on mono</a>, it runs without modification both on windows on the &#034;real&#034; .Net framework and on Mono on Linux. i just copy the executable and I am ready to go.<br />
Not this time, though.<br />
I am hitting what seems to be a bug in mono. I might be able to find a workaround, but I haven&#039;t had the time to dig in the issue yet.<br />
I posted some <a href="http://www.gotmono.com/cgi-bin/yabb/YaBB.pl?board=news;action=display;num=1180633385">info about this on this forum</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/08/21/facebook-mobile-is-not-working-for-italy/feed/</wfw:commentRss>
		</item>
		<item>
		<title>How to get a funky-colored Logon Desktop</title>
		<link>http://www.muscetta.com/2007/08/20/how-to-get-a-funky-colored-logon-desktop/</link>
		<comments>http://www.muscetta.com/2007/08/20/how-to-get-a-funky-colored-logon-desktop/#comments</comments>
		<pubDate>Mon, 20 Aug 2007 11:32:07 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Microsoft]]></category>

		<category><![CDATA[Tools]]></category>

		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/08/20/how-to-get-a-funky-colored-logon-desktop/</guid>
		<description><![CDATA[aka - how to (mis)use the information in a KB article to make your logon screen on Windows 2003 Server look like a candy shop: http://support.microsoft.com/?id=906510

]]></description>
			<content:encoded><![CDATA[<p>aka - how to (mis)use the information in a KB article to make your logon screen on Windows 2003 Server look like a candy shop: <a href="http://support.microsoft.com/?id=906510">http://support.microsoft.com/?id=906510</a></p>
<p><a href="http://www.muscetta.com/wp-content/uploads/funky_logon_screen.jpg"><img class="alignnone size-medium wp-image-255" title="Candy Colored Logon Screen" src="http://www.muscetta.com/wp-content/uploads/funky_logon_screen-300x203.jpg" alt="" width="300" height="203" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/08/20/how-to-get-a-funky-colored-logon-desktop/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Windows Live ID Web Authentication 1.0 SDK !</title>
		<link>http://www.muscetta.com/2007/08/16/windows-live-id-web-authentication-10-sdk/</link>
		<comments>http://www.muscetta.com/2007/08/16/windows-live-id-web-authentication-10-sdk/#comments</comments>
		<pubDate>Thu, 16 Aug 2007 14:28:50 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Blogs]]></category>

		<category><![CDATA[C#]]></category>

		<category><![CDATA[Choice]]></category>

		<category><![CDATA[Coding]]></category>

		<category><![CDATA[Cross Platform]]></category>

		<category><![CDATA[Cross Post]]></category>

		<category><![CDATA[Hotmail]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Integration]]></category>

		<category><![CDATA[Interop]]></category>

		<category><![CDATA[Java]]></category>

		<category><![CDATA[Links]]></category>

		<category><![CDATA[LiveID]]></category>

		<category><![CDATA[Microsoft]]></category>

		<category><![CDATA[PHP]]></category>

		<category><![CDATA[Passport]]></category>

		<category><![CDATA[Python]]></category>

		<category><![CDATA[Ruby]]></category>

		<category><![CDATA[Tools]]></category>

		<category><![CDATA[WebSite]]></category>

		<category><![CDATA[dotNet]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/08/16/windows-live-id-web-authentication-10-sdk/</guid>
		<description><![CDATA[Check this out:
Windows Live ID Team has published on the web the SDK that lets you liveID (or &#034;passport&#034;)-enable your applications!
http://msdn2.microsoft.com/en-us/library/bb676633.aspx
There are even code samples in six different languages: C#, Java, PHP, Python, Ruby e Perl! You can download them from http://go.microsoft.com/fwlink/?LinkId=91761
Wow! Having time, it would be cool to write a Wordpress plugin using Passport [...]]]></description>
			<content:encoded><![CDATA[<p>Check this out:</p>
<p>Windows Live ID Team has published on the web the SDK that lets you liveID (or &#034;passport&#034;)-enable your applications!</p>
<p><a href="http://msdn2.microsoft.com/en-us/library/bb676633.aspx">http://msdn2.microsoft.com/en-us/library/bb676633.aspx</a></p>
<p>There are even code samples in six different languages: C#, Java, PHP, Python, Ruby e Perl! You can download them from <a href="http://go.microsoft.com/fwlink/?LinkId=91761">http://go.microsoft.com/fwlink/?LinkId=91761</a></p>
<p>Wow! Having time, it would be cool to write a Wordpress plugin using Passport authentication to authenticate/identify users that want to comment&#8230; mumble mumble&#8230;.. <img src='http://www.muscetta.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Interoperability. Wow.</p>
<p>More info at the Live ID starting Page: <a href="http://dev.live.com/blogs/liveid/archive/2006/05/18/8.aspx">http://dev.live.com/blogs/liveid/archive/2006/05/18/8.aspx</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/08/16/windows-live-id-web-authentication-10-sdk/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Don&#8217;t touch the Surface!</title>
		<link>http://www.muscetta.com/2007/08/13/dont-touch-the-surface/</link>
		<comments>http://www.muscetta.com/2007/08/13/dont-touch-the-surface/#comments</comments>
		<pubDate>Mon, 13 Aug 2007 14:29:54 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Choice]]></category>

		<category><![CDATA[Cross Post]]></category>

		<category><![CDATA[Funny]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/08/13/dont-touch-the-surface/</guid>
		<description><![CDATA[I am sorry I only read this blog post by Eileen Brown today, not when she posted it. It got lost somewhere among loads of other feeds. Anyway I am sorry I read it so late, because, by now, commenting on that post is not possible anymore. Hope she does get the pingback at least&#8230;
Anyway, the post goes [...]]]></description>
			<content:encoded><![CDATA[<p>I am sorry I only read <a href="http://blogs.technet.com/eileen_brown/archive/2007/06/28/touching-microsoft-surface-or-not.aspx">this blog post by Eileen Brown</a> today, not when she posted it. It got lost somewhere among loads of other feeds. Anyway I am sorry I read it so late, because, by now, commenting on that post is not possible anymore. Hope she does get the pingback at least&#8230;</p>
<p>Anyway, the post goes about <a href="www.microsoft.com/surface">Microsoft Surface</a>. Which is something really cool. Eileen goes saying that she&#039;s worried if her cat would jump on the touch-screen table doing some damage to her information / data /accounts&#8230;. when I first saw the technology presented, I actually thought sort of the same thing&#8230;. what about my son going to the table with his hands dirty of chocolate paste ?? <a href="http://blogs.msdn.com/dmuscett/archive/2005/01/06/347523.aspx">I have blogged in the past about the danger he poses&#8230;</a></p>
<p>Since kids these days do use the computers, having to replace keyboards because they are full of biscuits&#039;crumbles or because they spilled fruit juice on them is quite common. Just less expensive than the special touch-screen, at the moment&#8230;.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/08/13/dont-touch-the-surface/feed/</wfw:commentRss>
		</item>
		<item>
		<title>About Multiple Personalities</title>
		<link>http://www.muscetta.com/2007/08/13/about-multiple-personalities/</link>
		<comments>http://www.muscetta.com/2007/08/13/about-multiple-personalities/#comments</comments>
		<pubDate>Mon, 13 Aug 2007 12:41:49 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Blogs]]></category>

		<category><![CDATA[Cross Post]]></category>

		<category><![CDATA[Facebook]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Social Networking]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/08/13/about-multiple-personalities/</guid>
		<description><![CDATA[&#034;[...] many of us are getting sick and tired of creating multiple user id&#039;s, checking messages on multiple inboxes and accepting the same 75 friends on 10 different social networks. For now here is my personal solution to the social networking problem - if you have my gmail address and my blog address, that is [...]]]></description>
			<content:encoded><![CDATA[<p><em>&#034;[...] many of us are getting sick and tired of creating multiple user id&#039;s, checking messages on multiple inboxes and accepting the same 75 friends on 10 different social networks. For now here is my personal solution to the social networking problem - if you have my gmail address and my blog address, that is all that you need to reach me, read about me, see my pictures, date me, send me fan letters and/or harass me. [...]&#034;</em> (exceprt from: <a href="http://www.anshublog.com/2007/08/identity-crisis-in-land-of-social.html">http://www.anshublog.com/2007/08/identity-crisis-in-land-of-social.html</a>)</p>
<p>lol! Anshu is so much right!!!! I agree with his conclusion 100%!!!!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/08/13/about-multiple-personalities/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Why do developers tend to forget about people behind proxy servers ?</title>
		<link>http://www.muscetta.com/2007/08/13/why-do-developers-tend-to-forget-about-people-behind-proxy-servers/</link>
		<comments>http://www.muscetta.com/2007/08/13/why-do-developers-tend-to-forget-about-people-behind-proxy-servers/#comments</comments>
		<pubDate>Mon, 13 Aug 2007 11:38:49 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Blogs]]></category>

		<category><![CDATA[C#]]></category>

		<category><![CDATA[Choice]]></category>

		<category><![CDATA[Coding]]></category>

		<category><![CDATA[Cross Platform]]></category>

		<category><![CDATA[Cross Post]]></category>

		<category><![CDATA[Facebook]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Integration]]></category>

		<category><![CDATA[Interop]]></category>

		<category><![CDATA[Networking]]></category>

		<category><![CDATA[Proxy]]></category>

		<category><![CDATA[Rant]]></category>

		<category><![CDATA[Security]]></category>

		<category><![CDATA[dotNet]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/08/13/why-do-developers-tend-to-forget-about-people-behind-proxy-servers/</guid>
		<description><![CDATA[I know this is a very common issue.
I keep finding way too many software that claim to interact with Web 2.0 sites or services, and connect here or there&#8230;. still forgetting one basic simple rule, that is: letting people use a proxy.
Most programmers for some reasons just assume that since they are directly connected to [...]]]></description>
			<content:encoded><![CDATA[<p>I know this is a very common issue.</p>
<p>I keep finding way too many software that claim to interact with Web 2.0 sites or services, and connect here or there&#8230;. still forgetting one basic simple rule, that is: letting people use a proxy.</p>
<p>Most programmers for some reasons just assume that since they are directly connected to the internet, everybody is. Which isn&#039;t always the case. Most companies have proxies and will only let you out to port 80 - by using their proxy.</p>
<p>&#8230;which in turn is one of the reasons why most applications now &#034;talk&#034; and tunnel whatever application protocol on top of HTTP&#8230; still a lot of softwares simply &#034;forget&#034; or don&#039;t care proving a simple checkbox &#034;use proxy&#034;, which will translate in two or three extra lines of code&#8230; three lines which I personally usually include in my projects, when I am not even a *developer*!! (but that might explain why I *think* of it&#8230; I come from a security and networking background :-))</p>
<p>I thought of writing this post after having read <a href="http://geekswithblogs.net/technetbytes/archive/2007/08/11/114573.aspx">this post by Saqib Ullah</a>.</p>
<p>Anyway. I keep finding this thing over and over again. Both in simple, hobbyist, sample and/or in complex, big, expensive enterprise software. Last time I got pissed off about a piece of code missing this feature was some days ago when testing <a href="http://www.codeplex.com/FacebookToolkit">http://www.codeplex.com/FacebookToolkit</a>. The previous time was during Windows Vista beta-testing (I had found a similar issue in beta2, and had it fixed for RC1.)</p>
<p>Actually, I am being polite saying it is &#034;missing a feature&#034;. To be honest I think missing this &#034;feature&#034; would have to be considered a bug: every piece of software using HTTP *should* include the possibility to pass thorugh proxy (also, don&#039;t forget about  AUTHENTICATED proxies), or the purpose of using HTTP in the first place is defeated!!</p>
<p>Developers!!! You have to remember people ARE behind proxies !!!!!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/08/13/why-do-developers-tend-to-forget-about-people-behind-proxy-servers/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Powershell and RegExp: a &#8220;match&#8221; made my day.</title>
		<link>http://www.muscetta.com/2007/08/09/powershell-and-regexp-a-match-made-my-day/</link>
		<comments>http://www.muscetta.com/2007/08/09/powershell-and-regexp-a-match-made-my-day/#comments</comments>
		<pubDate>Thu, 09 Aug 2007 18:45:31 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Coding]]></category>

		<category><![CDATA[Exchange]]></category>

		<category><![CDATA[ISA]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Microsoft]]></category>

		<category><![CDATA[PowerShell]]></category>

		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/08/09/powershell-and-regexp-a-match-made-my-day/</guid>
		<description><![CDATA[Today I was working with a customer and friend (Claudio Latini, who I thank for the permission to post this, which is also work of his brain - especially the regular expression you&#039;ll see reading on!).
We are running several projects and activities together and, among several other things, he&#039;s in the process of migrating his users from Exchange [...]]]></description>
			<content:encoded><![CDATA[<p>Today I was working with a customer and friend (Claudio Latini, who I thank for the permission to post this, which is also work of his brain - especially the regular expression you&#039;ll see reading on!).</p>
<p>We are running several projects and activities together and, among several other things, he&#039;s in the process of migrating his users from Exchange 2003 to Exchange 2007. In this infrastructure, he has some ISA Server that publish both the Exchange2003 and the Exchange2007 frontends.</p>
<p>Now he wanted to know HOW MANY and WHICH ONES of his users actually have a PocketPC or other WIndows Mobile device and were actively connecting to the old FrontEnd. You give out mobile devices to people but those things are usually less &#034;managed&#034; - when compared to corporate PCs, at least. So you loose a bit control of the thing&#8230; usually people with mobile devices using ActiveSync in companies are managers, and especially since some of them might be on holiday at the moment, it was important to know WHO were the people that had to be told to reconfigure their device to point to the new name/server BEFORE he would start complaining about ActiveSync not working anymore&#8230;</p>
<p>So how do you figure out who&#039;s connecting ?</p>
<p>I am NO Exchange expert whatsoever&#8230; but a thing that came in handy was the thing that an ISA Server was reverse-publishing the frontend server. I know ISA (and firewalls/proxies in general) much better than Exchange, so I can help on that side. In the log files, ActiveSync Connections looked like the following URL, passing most parameters in the POST request: <a title="http://www.company.com/exchange?User=Mario&amp;DeviceID=186hkjw6gjw76463uh2g5gi2j3h&amp;Bla=bla" href="http://www.muscetta.org/Admin">http://www.company.com/exchange?User=Mario&amp;DeviceID=186hkjw6gjw76463uh2g5gi2j3h&amp;Bla=bla</a> (and on an unrelated note: yes, if you try to crawl this link, you are a bot :-))</p>
<p>So we exported ISA logs (there are several tools for this, including &#034;<a href="http://www.isatools.org/tools/ISA_Extract_Logs_v1.8.zip">Extract logs</a>&#034;, but we did not use a script, we just used a filter for the correct publishing rule in the &#034;Monitoring - Logging&#034; tag in ISA Server Console and then copied and pasted those log lines) and tried to see if <a href="http://www.microsoft.com/powershell">PowerShell</a> could help tackle the issue.</p>
<p>Here we load our sample log (in a real log you would have much more information - each single line wrapping several console rows; I cut it short to the URL to make it more readable.</p>
<pre style="color: #eeedf0; background-color: #012456"><span style="background-color: #012456; color: #00ff00;">PS&gt;</span> get-content log.txt    

http://www.company.com/exchange?User=Mario&amp;DevideID=186hkjw6gjw76463uh2g5gi2j3h&amp;Bla=bla
http://www.company.com/exchange?User=Gino&amp;DevideID=186hkjw6gjw76463uh2g5gi2j3h&amp;Bla=bla
http://www.company.com/exchange?User=Antonio&amp;DevideID=186hkjw6gjw76463uh2g5gi2j3h&amp;Bla=bla
http://www.company.com/exchange?User=Antonio&amp;DevideID=186hkjw6gjw76463uh2g5gi2j3h&amp;Bla=bla
http://www.company.com/exchange?User=Gino&amp;DevideID=186hkjw6gjw76463uh2g5gi2j3h&amp;Bla=bla
http://www.company.com/exchange?User=Antonio&amp;DevideID=186hkjw6gjw76463uh2g5gi2j3h&amp;Bla=bla
http://www.company.com/exchange?User=Antonio&amp;DevideID=186hkjw6gjw76463uh2g5gi2j3h&amp;Bla=bla
http://www.company.com/exchange?User=Mario&amp;DevideID=186hkjw6gjw76463uh2g5gi2j3h&amp;Bla=bla
http://www.company.com/exchange?User=Mario&amp;DevideID=186hkjw6gjw76463uh2g5gi2j3h&amp;Bla=bla
http://www.company.com/exchange?User=Mario&amp;DevideID=186hkjw6gjw76463uh2g5gi2j3h&amp;Bla=bla
http://www.company.com/exchange?User=Mario&amp;DevideID=186hkjw6gjw76463uh2g5gi2j3h&amp;Bla=bla
http://www.company.com/exchange?User=Antonio&amp;DevideID=186hkjw6gjw76463uh2g5gi2j3h&amp;Bla=bla
http://www.company.com/exchange?User=Antonio&amp;DevideID=186hkjw6gjw76463uh2g5gi2j3h&amp;Bla=bla
http://www.company.com/exchange?User=Mario&amp;DevideID=186hkjw6gjw76463uh2g5gi2j3h&amp;Bla=bla
http://www.company.com/exchange?User=Antonio&amp;DevideID=186hkjw6gjw76463uh2g5gi2j3h&amp;Bla=bla
http://www.company.com/exchange?User=Antonio&amp;DevideID=186hkjw6gjw76463uh2g5gi2j3h&amp;Bla=bla
http://www.company.com/exchange?User=Mario&amp;DevideID=186hkjw6gjw76463uh2g5gi2j3h&amp;Bla=bla
http://www.company.com/exchange?User=Antonio&amp;DevideID=186hkjw6gjw76463uh2g5gi2j3h&amp;Bla=bla
http://www.company.com/exchange?User=Antonio&amp;DevideID=186hkjw6gjw76463uh2g5gi2j3h&amp;Bla=bla
http://www.company.com/exchange?User=Mario&amp;DevideID=186hkjw6gjw76463uh2g5gi2j3h&amp;Bla=bla
http://www.company.com/exchange?User=Antonio&amp;DevideID=186hkjw6gjw76463uh2g5gi2j3h&amp;Bla=bla
http://www.company.com/exchange?User=Antonio&amp;DevideID=186hkjw6gjw76463uh2g5gi2j3h&amp;Bla=bla
http://www.company.com/exchange?User=Mario&amp;DevideID=186hkjw6gjw76463uh2g5gi2j3h&amp;Bla=bla</pre>
<p>We know Get-Content does not just display the file, it loads the file into a string array.</p>
<p>So we can cycle through the file and try to extract (using a regexp) the string after &#034;User=&#034; and before the first ampersand (&#034;&amp;&#034;), which translates in the following regular expression:</p>
<p><strong>&#034;User=(?&lt;nome&gt;.*?)&amp;&#034;</strong></p>
<p>(the regexp has been the most difficult thing to figure out, but it is very worth the hassle once you&#039;ve done it&#8230;)</p>
<pre style="color: #eeedf0; background-color: #012456"><span style="background-color: #012456; color: #00ff00;">PS&gt;</span> get-content log.txt | foreach {$_ -match "User=(?<span>&lt;</span>nome&gt;.*?)&amp;" | out-null; $matches}
Name                           Value
----                           -----
nome                           Mario
0                              User=Mario&amp; nome                           Gino
0                              User=Gino&amp;
nome                           Antonio
0                              User=Antonio&amp;
nome                           Antonio
0                              User=Antonio&amp;
nome                           Gino
0                              User=Gino&amp;
nome                           Antonio
0                              User=Antonio&amp;
nome                           Antonio
0                              User=Antonio&amp;
nome                           Mario
0                              User=Mario&amp;
nome                           Mario
0                              User=Mario&amp;
nome                           Mario
0                              User=Mario&amp;
nome                           Mario
0                              User=Mario&amp;
nome                           Antonio
0                              User=Antonio&amp;
nome                           Antonio
0                              User=Antonio&amp;
nome                           Mario
0                              User=Mario&amp;
nome                           Antonio
0                              User=Antonio&amp;
nome                           Antonio
0                              User=Antonio&amp;
nome                           Mario
0                              User=Mario&amp;
nome                           Antonio
0                              User=Antonio&amp;
nome                           Antonio
0                              User=Antonio&amp;
nome                           Mario
0                              User=Mario&amp;
nome                           Antonio
0                              User=Antonio&amp;
nome                           Antonio
0                              User=Antonio&amp;
nome                           Mario
0                              User=Mario&amp;
nome                           Mario
0                              User=Mario&amp;</pre>
<p>This seems to work. Now we only have to get the Named Captures called &#034;nome&#034; (containing the user name):</p>
<pre style="color: #eeedf0; background-color: #012456"><span style="background-color: #012456; color: #00ff00;">PS&gt;</span> <strong>get-content log.txt | foreach {$_ -match "User=(?<span>&lt;</span>name&gt;.*?)&amp;" | out-null; $matches["name"]}
</strong>Mario
Gino
Antonio Antonio
Gino
Antonio
Antonio
Mario
Mario
Mario
Mario
Antonio
Antonio
Mario
Antonio
Antonio
Mario
Antonio
Antonio
Mario
Antonio
Antonio
Mario
Mario</pre>
<p>Awesome. Now sort them and remove duplicates. Which is one more command in our pipeline:</p>
<p><strong>get-content log.txt | foreach {$_ -match &#034;User=(?&lt;nome&gt;.*?)&amp;&#034; | out-null; $matches["nome"]} | sort-object -uniq</strong></p>
<pre style="color: #eeedf0; background-color: #012456"><span style="background-color: #012456; color: #00ff00;">P&gt;</span> get-content log.txt | foreach {$_ -match "User=(?<span>&lt;</span>name&gt;.*?)&amp;" | out-null; $matches["name"]} | sort-object -uniq
Antonio
Gino
Mario     

<span style="background-color: #012456; color: #00ff00;">PS&gt;</span>
<span style="background-color: #012456; color: #00ff00;">PS&gt;</span></pre>
<p>Now you can call those three users and tell them to modify their ActiveSync configuration <img src='http://www.muscetta.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/08/09/powershell-and-regexp-a-match-made-my-day/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Facebook StateTray</title>
		<link>http://www.muscetta.com/2007/08/03/facebook-statetray/</link>
		<comments>http://www.muscetta.com/2007/08/03/facebook-statetray/#comments</comments>
		<pubDate>Fri, 03 Aug 2007 21:44:23 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Blogs]]></category>

		<category><![CDATA[C#]]></category>

		<category><![CDATA[Choice]]></category>

		<category><![CDATA[Coding]]></category>

		<category><![CDATA[Cross Post]]></category>

		<category><![CDATA[Facebook]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Integration]]></category>

		<category><![CDATA[Interop]]></category>

		<category><![CDATA[Personal]]></category>

		<category><![CDATA[Social Networking]]></category>

		<category><![CDATA[Tools]]></category>

		<category><![CDATA[dotNet]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/08/03/facebook-statetray/</guid>
		<description><![CDATA[       .flickr-photo { border: solid 2px #000000; } .flickr-yourcomment { } .flickr-frame { text-align: left; padding: 3px; } .flickr-caption { font-size: 0.8em; margin-top: 0px; } 

Facebook StateTray, uploaded by Daniele Muscetta on Flickr.
This is a Screenshot of the small application I first described in my previous blog post.
It is [...]]]></description>
			<content:encoded><![CDATA[<style type="text/css">       .flickr-photo { border: solid 2px #000000; } .flickr-yourcomment { } .flickr-frame { text-align: left; padding: 3px; } .flickr-caption { font-size: 0.8em; margin-top: 0px; } </style>
<p class="flickr-frame"><a href="http://www.flickr.com/photos/dani3l3/986527032/" title="photo sharing"><img src="http://farm2.static.flickr.com/1050/986527032_6dd64a6f5a.jpg" alt="Facebook StateTray" class="flickr-photo" /></a></p>
<p><span class="flickr-caption"><a href="http://www.flickr.com/photos/dani3l3/986527032/">Facebook StateTray</a>, uploaded by <a href="http://www.flickr.com/people/dani3l3/">Daniele Muscetta</a> on Flickr.</span></p>
<p class="flickr-yourcomment">This is a Screenshot of the small application I first described in <a href="http://www.muscetta.com/2007/08/02/facebook-api-and-winform-experiment/">my previous blog post</a>.</p>
<p>It is a simple Windows Form that lets you change your status on Facebook without having to browse to the site. It does not rely on <a href="http://developers.facebook.com/documentation.php">Facebook&#039;s API</a> (as they won&#039;t let you change your status, at least to date) but is really uses a hack on the <a href="http://m.facebook.com">Facebook mobile pages</a>. It is based on <a href="http://www.nexdot.net/blog/2007/04/20/updating-facebook-status-using-php/">PHP code posted by Christian Flickinger</a>, ported to C# (.Net 2.0) by me.</p>
<p>When you pull down the form you get to see the settings:</p>
<p><a href="http://www.flickr.com/photos/dani3l3/999229925/"><img width="459" src="http://farm2.static.flickr.com/1396/999229925_8020fb6938.jpg" alt="Facebook State Tray" height="500" /></a></p>
<p>Those can be stored in an XML file, that gets loaded automatically every time the program starts.<br />
Beware that password ARE displayed and stored in clear text.</p>
<p>The idea so far is that you run it on your PC and you just keep it resized so it does not show the &#034;dangerous&#034; bits.<br />
You can keep it minimized on the tray in windows, pop it up when you need to update your status, write your new status and click &#034;change&#034; - it will freeze for a couple of seconds while updates your status, since it uses synchronous calls - then you can minimize it again.</p>
<p><strong><em>UPDATED -  September 1st 2007: I have been asked by Facebook to pull down the source code from the Net, as it violates their <a href="http://www.facebook.com/terms.php">terms of service</a> (I had not realized that). Apologies to all.</em></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/08/03/facebook-statetray/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Facebook API and WinForm experiment</title>
		<link>http://www.muscetta.com/2007/08/02/facebook-api-and-winform-experiment/</link>
		<comments>http://www.muscetta.com/2007/08/02/facebook-api-and-winform-experiment/#comments</comments>
		<pubDate>Thu, 02 Aug 2007 14:24:26 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Blogs]]></category>

		<category><![CDATA[C#]]></category>

		<category><![CDATA[Choice]]></category>

		<category><![CDATA[Coding]]></category>

		<category><![CDATA[Cross Platform]]></category>

		<category><![CDATA[Cross Post]]></category>

		<category><![CDATA[Facebook]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Integration]]></category>

		<category><![CDATA[Interop]]></category>

		<category><![CDATA[PHP]]></category>

		<category><![CDATA[Social Networking]]></category>

		<category><![CDATA[dotNet]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/08/02/facebook-api-and-winform-experiment/</guid>
		<description><![CDATA[While testing with the Facebook API, I started creating a WinForm using the Facebook Toolkit.
What I had in mind was a simple program that would run on my PC, maybe minimized in the system tray, that would let me update my status in a click, thorugh the day, without having to log on to the [...]]]></description>
			<content:encoded><![CDATA[<p>While testing with the <a href="http://developers.facebook.com/documentation.php">Facebook API</a>, I started creating a WinForm using the <a href="http://www.codeplex.com/FacebookToolkit">Facebook Toolkit</a>.</p>
<p>What I had in mind was a simple program that would run on my PC, maybe minimized in the system tray, that would let me <a href="http://www.facebook.com/statusupdates/?ref=tn">update my status</a> in a click, thorugh the day, without having to log on to the website. Most of the day I am busy working, and I don&#039;t really have time to go surf and check Facebook&#8230; but I like the possibility for people to hear how I am doing. Changing the status would keep them up to date, and would keep my profile current.</p>
<p>As I figured out afterwards, their API does not yet let you change your status yet.</p>
<p><a href="http://www.25hoursaday.com/weblog/CommentView.aspx?guid=51b24ec1-ec28-4526-b7fe-9d1e6c7fc802">There are other people asking for this possibility</a>&#8230; but then I went further searching on the Internet, and I found this blog: <a href="http://www.nexdot.net/blog/2007/04/20/updating-facebook-status-using-php/">http://www.nexdot.net/blog/2007/04/20/updating-facebook-status-using-php/</a>. </p>
<p>I just hacked together a small WinForm written in C# that reimplements this idea.</p>
<p><a href="http://www.flickr.com/photos/dani3l3/986527032/" title="Photo Sharing"><img width="500" src="http://farm2.static.flickr.com/1050/986527032_6dd64a6f5a.jpg" alt="Facebook StateTray" height="66" /></a></p>
<p>I indeed would like to thank Christian for the idea, and my friend and colleague Pierluigi for his precious help with the regular expressions <img src='http://www.muscetta.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>At the moment it has terrible things such as hardcoded passwords in it, but as soon as I will have time to polish the code a bit, I will post it.</p>
<p>One more thing I would like to do with it is turning it from a standalone application into a <a href="http://msdn2.microsoft.com/en-us/library/aa905655.aspx">Live Messenger Add-In</a>, so that it synchronizes my messenger status with the one of Facebook. When I will have time for that.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/08/02/facebook-api-and-winform-experiment/feed/</wfw:commentRss>
		</item>
		<item>
		<title>The &#8220;WOW&#8221; starts *NOW*!</title>
		<link>http://www.muscetta.com/2007/07/27/the-wow-starts-now/</link>
		<comments>http://www.muscetta.com/2007/07/27/the-wow-starts-now/#comments</comments>
		<pubDate>Fri, 27 Jul 2007 05:21:48 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Choice]]></category>

		<category><![CDATA[Cross Platform]]></category>

		<category><![CDATA[Cross Post]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Integration]]></category>

		<category><![CDATA[Interop]]></category>

		<category><![CDATA[Linux]]></category>

		<category><![CDATA[Microsoft]]></category>

		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/07/27/the-wow-starts-now/</guid>
		<description><![CDATA[I&#039;m speechless. Read it on your own: http://www.microsoft.com/opensource/ . Wow.
]]></description>
			<content:encoded><![CDATA[<p>I&#039;m speechless. Read it on your own: <a href="http://www.microsoft.com/opensource/">http://www.microsoft.com/opensource/</a> . Wow.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/07/27/the-wow-starts-now/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Facebook development</title>
		<link>http://www.muscetta.com/2007/07/26/facebook-development/</link>
		<comments>http://www.muscetta.com/2007/07/26/facebook-development/#comments</comments>
		<pubDate>Thu, 26 Jul 2007 13:30:56 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Blogs]]></category>

		<category><![CDATA[Choice]]></category>

		<category><![CDATA[Coding]]></category>

		<category><![CDATA[Cross Platform]]></category>

		<category><![CDATA[Cross Post]]></category>

		<category><![CDATA[Facebook]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Integration]]></category>

		<category><![CDATA[Interop]]></category>

		<category><![CDATA[Links]]></category>

		<category><![CDATA[Places]]></category>

		<category><![CDATA[Rant]]></category>

		<category><![CDATA[Risk]]></category>

		<category><![CDATA[Security]]></category>

		<category><![CDATA[Social Networking]]></category>

		<category><![CDATA[Tools]]></category>

		<category><![CDATA[WebSite]]></category>

		<category><![CDATA[popfly]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/07/26/facebook-development/</guid>
		<description><![CDATA[I have been quite hooked into Facebook for the last couple of days, figuring out what it can and cannot do. It can do a lot. The possibility to inject code and brand new application into it is absolutely awesome.
PopFly lets you create mashups and even custom blocks, and I liked that too. But you [...]]]></description>
			<content:encoded><![CDATA[<p>I have been quite hooked into <a href="http://www.facebook.com">Facebook</a> for the last couple of days, figuring out what it can and cannot do. It can do a lot. The possibility to inject code and brand new application into it is absolutely awesome.</p>
<p><a href="http://www.popfly.ms">PopFly</a> lets you create mashups and even custom blocks, and I liked that too. But you have to use fancy-shiny <a href="http://silverlight.net/">Silverlight</a> (which is very cool indeed, but probably not *always* necesary) and you can only create blocks using Javascript. Sure, as someone as already written, <a href="http://www.paulgraham.com/web20.html">the meaning of AJAX is &#034;javascript now works&#034;.</a> I can understand (even if I don&#039;t know them for sure) the reasons behind certain choices. But I find it limiting. Maybe it is because I don&#039;t like Javascript. It must be it. </p>
<p>Facebook, instead, empowers you to inject code into their social networking framework. Any code. In whatever language you like. They started it in PHP, but you can plug-in whatever you like: Java, Ruby, Perl&#8230;. you can even have your application running on your own server, still providing a seamless experience inside of facebook. This opens up to millions of possibilities, and I got fascinated by that.</p>
<p>At the same time, the paranoid part of myself has been thinking to the security implications of it. This open platform is cool, but it also sounds like a framework for cross-site-scripting (XSS) attacks. Sure, you can &#034;report&#034; an application made by a third party that does something weird&#8230; but who will really notice if all that happens under the hood is that your cookies get stolen (and someone accesses your bank account) ? Will you figure it out it has happenend because <a href="http://en.wikipedia.org/wiki/Dancing_pigs">you wanted to see the &#034;dancing pigs&#034;</a> loaded in your profile ? Or will you figure it out at all ?</p>
<p>This said, I set aside my fear for a while and I delved into coding. What I did learn in the last couple of years, having slowly moved away from security engagements, is to relax. When I was working costantly with security I was a lot more paranoid. Now I case much less, and I live a lot more.</p>
<p>So I developed a couple of quick and simple apps running from this very server into Facebook, and I started using thePHP5 library they provide, so to be able to follow the examples first and figure out how it was working.</p>
<p>Now I also want to take a look at the <a href="http://www.nikhilk.net/FacebookNET.aspx">.NET library for facebook </a>when I have time. It sounds cool.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/07/26/facebook-development/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Windows Management Instrumentation</title>
		<link>http://www.muscetta.com/2007/07/24/windows-management-instrumentation/</link>
		<comments>http://www.muscetta.com/2007/07/24/windows-management-instrumentation/#comments</comments>
		<pubDate>Tue, 24 Jul 2007 08:40:34 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Funny]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Photos]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/07/24/windows-management-instrumentation/</guid>
		<description><![CDATA[    .flickr-photo { border: solid 2px #000000; }  .flickr-yourcomment { }  .flickr-frame { text-align: left; padding: 3px; }  .flickr-caption { font-size: 0.8em; margin-top: 0px; }

Windows Management Instrumentation, uploaded by Daniele Muscetta on Flickr.
If you can&#039;t see what I am referring to in this picture, try to take a look [...]]]></description>
			<content:encoded><![CDATA[<style type="text/css">    .flickr-photo { border: solid 2px #000000; }  .flickr-yourcomment { }  .flickr-frame { text-align: left; padding: 3px; }  .flickr-caption { font-size: 0.8em; margin-top: 0px; }</style>
<p class="flickr-frame"><a href="http://www.flickr.com/photos/dani3l3/877485965/" title="photo sharing"><img src="http://farm2.static.flickr.com/1254/877485965_8fafdcee95.jpg" alt="Windows Management Instrumentation" class="flickr-photo" /></a></p>
<p><span class="flickr-caption"><a href="http://www.flickr.com/photos/dani3l3/877485965/">Windows Management Instrumentation</a>, uploaded by <a href="http://www.flickr.com/people/dani3l3/">Daniele Muscetta</a> on Flickr.</span></p>
<p class="flickr-yourcomment">If you can&#039;t see what I am referring to in this picture, try to take a look at the <a href="http://www.flickr.com/photo_zoom.gne?id=877485965&amp;size=o">large</a> picture.<br />
Or just look at the title bar.. eeeehhhmm&#8230; at the window&#8230;.<br />
If you still don&#039;t get it, you are probably not a geek. In that case don&#039;t worry: it is not you; it&#039;s us.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/07/24/windows-management-instrumentation/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Facebook</title>
		<link>http://www.muscetta.com/2007/07/23/facebook/</link>
		<comments>http://www.muscetta.com/2007/07/23/facebook/#comments</comments>
		<pubDate>Mon, 23 Jul 2007 20:55:32 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Blogs]]></category>

		<category><![CDATA[Choice]]></category>

		<category><![CDATA[Cross Platform]]></category>

		<category><![CDATA[Facebook]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Personal]]></category>

		<category><![CDATA[Places]]></category>

		<category><![CDATA[Rant]]></category>

		<category><![CDATA[Social Networking]]></category>

		<category><![CDATA[Tools]]></category>

		<category><![CDATA[WebSite]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/07/23/facebook/</guid>
		<description><![CDATA[ .flickr-photo { border: solid 2px #000000; } .flickr-yourcomment { } .flickr-frame { text-align: left; padding: 3px; } .flickr-caption { font-size: 0.8em; margin-top: 0px; } 
 	
Facebook_Daniele, uploaded by Daniele Muscetta on Flickr.
 	Yet another social networking. I am on there too, now.
http://www.facebook.com/p/Daniele_Muscetta/742258687
Ah, and by the way, I really find it incredible that every time [...]]]></description>
			<content:encoded><![CDATA[<style type="text/css"> .flickr-photo { border: solid 2px #000000; } .flickr-yourcomment { } .flickr-frame { text-align: left; padding: 3px; } .flickr-caption { font-size: 0.8em; margin-top: 0px; } </style>
<p class="flickr-frame"> 	<a href="http://www.flickr.com/photos/dani3l3/845705282/" title="photo sharing"><img src="http://farm2.static.flickr.com/1052/845705282_9df1428a68.jpg" class="flickr-photo" alt="Facebook_Daniele" /></a></p>
<p><span class="flickr-caption"><a href="http://www.flickr.com/photos/dani3l3/845705282/">Facebook_Daniele</a>, uploaded by <a href="http://www.flickr.com/people/dani3l3/">Daniele Muscetta</a> on Flickr.</span></p>
<p class="flickr-yourcomment"> 	Yet another social networking. I am on there too, now.<br />
<a href="http://www.facebook.com/p/Daniele_Muscetta/742258687">http://www.facebook.com/p/Daniele_Muscetta/742258687</a></p>
<p>Ah, and by the way, I really find it incredible that every time I invite some people to a new social networking site (it has happened for all of them), it happens that  some (many) of the persons I have invited reply to me or call me asking me &#034;is this really sent by you ?&#034; &#034;it looked like spam&#034; &#034;what is this thing&#034; and the like.</p>
<p>Come on, guys, we are in year 2007, you still don&#039;t know what social networking is&#8230; especially if you work in IT you are sort of a dinosaur, you know?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/07/23/facebook/feed/</wfw:commentRss>
		</item>
		<item>
		<title>IronPython and Visual Studio Shell</title>
		<link>http://www.muscetta.com/2007/06/08/ironpython-and-visual-studio-shell/</link>
		<comments>http://www.muscetta.com/2007/06/08/ironpython-and-visual-studio-shell/#comments</comments>
		<pubDate>Fri, 08 Jun 2007 17:47:03 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Choice]]></category>

		<category><![CDATA[Coding]]></category>

		<category><![CDATA[Cross Platform]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Integration]]></category>

		<category><![CDATA[Interop]]></category>

		<category><![CDATA[IronPython]]></category>

		<category><![CDATA[Microsoft]]></category>

		<category><![CDATA[Python]]></category>

		<category><![CDATA[dotNet]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/06/08/ironpython-and-visual-studio-shell/</guid>
		<description><![CDATA[I read on the IronPython Mailing List about this cool integration with Visual Studio Shell! Also, further in the same thread, you can find out that the current CTP of ASP.NET (ASP.NET Futures) also includes ironPython integration. Look at this:

]]></description>
			<content:encoded><![CDATA[<p><a href="http://lists.ironpython.com/pipermail/users-ironpython.com/2007-June/005045.html">I read on the IronPython Mailing List about this cool integration with Visual Studio Shell</a>! Also, further in the same thread, you can find out that <a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=9323777E-FE78-430C-AD92-D5BE5B5EAD98&amp;displaylang=en">the current CTP of ASP.NET (ASP.NET Futures) also includes ironPython integration</a>. Look at this:</p>
<p><a href="http://msdn2.microsoft.com/en-us/vstudio/bb510103.vss_IronPython_large.jpg" title="IronPython running in VS Shell"><img src="http://farm2.static.flickr.com/1213/536136720_869f05cb29.jpg" alt="IronPython running in VS Shell" height="389" width="500" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/06/08/ironpython-and-visual-studio-shell/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Where did I leave that old JavaScript book ?</title>
		<link>http://www.muscetta.com/2007/06/05/where-did-i-leave-that-old-javascript-book/</link>
		<comments>http://www.muscetta.com/2007/06/05/where-did-i-leave-that-old-javascript-book/#comments</comments>
		<pubDate>Tue, 05 Jun 2007 19:51:13 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Coding]]></category>

		<category><![CDATA[Cross Platform]]></category>

		<category><![CDATA[Cross Post]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Interop]]></category>

		<category><![CDATA[WebSite]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/06/05/where-did-i-leave-that-old-javascript-book/</guid>
		<description><![CDATA[When testing out PopFly, I figured out I *really* need to know JavaScript better than I do, in order to build &#034;blocks&#034;. And I don&#039;t just need it for PopFly, of course, but in general -&#160;because these days it is ubiquitous, and it is being used so much on the Web. One more thing on&#160;my [...]]]></description>
			<content:encoded><![CDATA[<p>When testing out <a href="http://www.popfly.ms/">PopFly</a>, I figured out I *really* need to know JavaScript better than I do, in order to build &#034;blocks&#034;. And I don&#039;t just need it for PopFly, of course, but in general -&nbsp;because these days it is ubiquitous, and it is being used so much on the Web. One more thing on&nbsp;my to-do list. <a href="http://www.codinghorror.com/blog/archives/000857.html">Jeff seems to agree</a>. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/06/05/where-did-i-leave-that-old-javascript-book/feed/</wfw:commentRss>
		</item>
		<item>
		<title>This blog in C#</title>
		<link>http://www.muscetta.com/2007/05/30/this-blog-in-c/</link>
		<comments>http://www.muscetta.com/2007/05/30/this-blog-in-c/#comments</comments>
		<pubDate>Wed, 30 May 2007 10:18:21 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Blogs]]></category>

		<category><![CDATA[C#]]></category>

		<category><![CDATA[Coding]]></category>

		<category><![CDATA[Cross Platform]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Integration]]></category>

		<category><![CDATA[Interop]]></category>

		<category><![CDATA[Linux]]></category>

		<category><![CDATA[Microsoft]]></category>

		<category><![CDATA[WebSite]]></category>

		<category><![CDATA[dotNet]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/05/30/this-blog-in-c/</guid>
		<description><![CDATA[I have been busy trying to write a new frontend for this blog that uses .Net. I already blogged about it here. In the last couple of weeks I have been adding stuff - permalinks using mod_rewrite, I finally show the comments properly, I have added categories and category archives (as in http://www.muscetta.net/dotnet/tag/coding). There is [...]]]></description>
			<content:encoded><![CDATA[<p>I have been busy trying to write <a href="http://www.muscetta.net/dotnet/Blog.aspx">a new frontend for this blog that uses .Net</a>. I already blogged about it <a href="http://www.muscetta.com/2007/05/01/wordpressnet/">here</a>. In the last couple of weeks I have been adding stuff - permalinks using mod_rewrite, I finally show the comments properly, I have added categories and category archives (as in <a href="http://www.muscetta.net/dotnet/tag/coding">http://www.muscetta.net/dotnet/tag/coding</a>). There is even an <a href="http://www.muscetta.net/dotnet/Feed.aspx">RSS Feed</a>.</p>
<p>The layout is still crap, but I sort of like it being so light weight, so that is not on my priority list so far. Moreover, I am a crap designer.</p>
<p>Before that, tough, I still have to add important functionalities like the possibility to POST comments (which needs a new CAPTCHA, etc, so it will take me a while), and I am having issues with text encoding (it does not show the accented characters properly, yet).</p>
<p>But I am having fun doing it.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/05/30/this-blog-in-c/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Microsoft Popfly</title>
		<link>http://www.muscetta.com/2007/05/19/microsoft-popfly/</link>
		<comments>http://www.muscetta.com/2007/05/19/microsoft-popfly/#comments</comments>
		<pubDate>Sat, 19 May 2007 07:26:24 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Blogs]]></category>

		<category><![CDATA[Coding]]></category>

		<category><![CDATA[Cross Platform]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Integration]]></category>

		<category><![CDATA[Interop]]></category>

		<category><![CDATA[Microsoft]]></category>

		<category><![CDATA[Places]]></category>

		<category><![CDATA[Social Networking]]></category>

		<category><![CDATA[WebSite]]></category>

		<category><![CDATA[popfly]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/05/19/microsoft-popfly/</guid>
		<description><![CDATA[
You can build complex web-mashups in minutes.
Read on an interesting review at programmableweb.com and, obviously, more info at the official site http://www.popfly.ms
]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.popfly.ms" title="Microsoft Popfly"><img src="http://farm1.static.flickr.com/204/504146344_4b0ad07f51.jpg" alt="Microsoft Popfly" height="375" width="500" /></a></p>
<p>You can build complex web-mashups in minutes.</p>
<p>Read on <a href="http://blog.programmableweb.com/2007/05/19/microsoft-popfly/">an interesting review at programmableweb.com</a> and, obviously, more info at the <a href="http://www.popfly.ms">official site http://www.popfly.ms</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/05/19/microsoft-popfly/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Italian Microsoft Bloggers</title>
		<link>http://www.muscetta.com/2007/05/11/italian-microsoft-bloggers/</link>
		<comments>http://www.muscetta.com/2007/05/11/italian-microsoft-bloggers/#comments</comments>
		<pubDate>Fri, 11 May 2007 18:11:37 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Blogs]]></category>

		<category><![CDATA[Choice]]></category>

		<category><![CDATA[Cross Post]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Microsoft]]></category>

		<category><![CDATA[Personal]]></category>

		<category><![CDATA[WebSite]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/05/11/italian-microsoft-bloggers/</guid>
		<description><![CDATA[Some days ago some of my colleagues (most of them in Milan) who have a blog, decided to gather together to talk to each other and to share experiences about blogging, technology, Microsoft, etc.
What they basically did for now was to make a list of all italian Microsoft blogger.
I could not attend, as it turns [...]]]></description>
			<content:encoded><![CDATA[<p>Some days ago some of my colleagues (most of them in Milan) who have a blog, decided to gather together to talk to each other and to share experiences about blogging, technology, Microsoft, etc.<br />
What they basically did for now was to make <a href="http://vincos.spaces.live.com/Blog/cns!1BE30B71856FFF9D!2724.entry">a list of all italian Microsoft blogger</a>.</p>
<p>I could not attend, as it turns out I am the only guy in Rome, among all of them.<br />
That is strange. What is also strange is being all of a sudden in a list of *Microsoft* bloggers. I had never thought of myself like a *Microsoft* Blogger. Sure enough I work at Microsoft, but as my <a href="http://www.muscetta.com/disclaimer/">disclaimer</a> says it clear <em>&#034;The content of this site are my own personal opinions and do not represent my employer’s view in anyway.&#034;</em>. I just feel like I am myself. And I also have a blog. <a href="http://reports.internic.net/cgi/whois?whois_nic=muscetta.com&#038;type=domain">MUSCETTA.COM</a> has been online for 5 years now, and I have only been working for Microsoft for less than three years now.<br />
For sure, I do blog about technology, also Microsoft technology. Of course, I also talk and write and blog about NON-Microsoft technology. In the past I did try to get an <a href="http://blogs.msdn.com/dmuscett">official blog (which I called a &#034;corporate blog&#034;)</a> but then <a href="http://blogs.msdn.com/dmuscett/archive/2006/06/09/623680.aspx">I preferred to keep using my own domain</a>, just because a lot of what you find here is often personal, politically incorrect and even - yes, I am gonna write it - open source.</p>
<p>Don&#039;t get me wrong, I love being at this company, because there&#039;s a lot of brilliant people and you cannot find anywhere in any other company such a huge mix of techies that rock so much and are so passionate about what they do! Those other bloggers in that list are this kind of people.</p>
<p>This said, this will stay my random and personal thoughts&#039; basket. I like being in the community, but don&#039;t take my word for &#034;official&#034; please. Those you find written here are just my ramblings written from the couch after dinner.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/05/11/italian-microsoft-bloggers/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Create a Script-Based Unit Monitor in OpsMgr2007 via the GUI</title>
		<link>http://www.muscetta.com/2007/05/10/create-a-script-based-unit-monitor-in-opsmgr2007-via-the-gui/</link>
		<comments>http://www.muscetta.com/2007/05/10/create-a-script-based-unit-monitor-in-opsmgr2007-via-the-gui/#comments</comments>
		<pubDate>Thu, 10 May 2007 20:31:40 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Coding]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[MOM]]></category>

		<category><![CDATA[Microsoft]]></category>

		<category><![CDATA[OpsMgr2007]]></category>

		<category><![CDATA[Personal]]></category>

		<category><![CDATA[System Center Operations Manager 2007]]></category>

		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/05/10/create-a-script-based-unit-monitor-in-opsmgr2007-via-the-gui/</guid>
		<description><![CDATA[ .flickr-photo { border: solid 2px #000000; } .flickr-yourcomment { } .flickr-frame { text-align: left; padding: 3px; } .flickr-caption { font-size: 0.8em; margin-top: 0px; } 

There is not a lot of documentation for System Center Operations Manager 2007 yet.
It is coming, but there&#039;s a lot of things that changed since the previous release and I [...]]]></description>
			<content:encoded><![CDATA[<style type="text/css"> .flickr-photo { border: solid 2px #000000; } .flickr-yourcomment { } .flickr-frame { text-align: left; padding: 3px; } .flickr-caption { font-size: 0.8em; margin-top: 0px; } </style>
<p class="flickr-frame"><a href="http://www.flickr.com/photos/dani3l3/492786198/" title="photo sharing"><img src="http://farm1.static.flickr.com/221/492786198_d85d81a5b4.jpg" class="flickr-photo" alt="Create a Script-Based Unit Monitor in OpsMgr2007 via the GUI" /></a><span class="flickr-caption"><a href="http://www.flickr.com/photos/dani3l3/492786198/"></a></span></p>
<p class="flickr-yourcomment">There is not a lot of documentation for System Center Operations Manager 2007 yet.<br />
It is coming, but there&#039;s a lot of things that changed since the previous release and I think some more would only help. Also, a lot of the content I am seeing is either too newbie-oriented or too developer-oriented, for some reason.</p>
<p>I have not yet seen a tutorial, webcast or anything that explains how to create a simple unit monitor that uses a VBS script using the GUI.</p>
<p>So this is how you do it:</p>
<p>Go to the <strong>&#034;Authoring&#034;</strong> space of OpsMgr 2007 Operations Console.<br />
Select the <strong>&#034;Management Pack objects&#034;</strong>, then <strong>&#034;Monitors&#034;</strong> node. Right click and choose <strong>&#034;Create a monitor&#034;</strong> -&gt; <strong>&#034;Unit Monitor&#034;</strong>.</p>
<p>You get the &#034;Create a monitor&#034; wizard open:<br />
<a href="http://www.flickr.com/photos/dani3l3/492786202/"><img src="http://farm1.static.flickr.com/202/492786202_861b4818fa.jpg" alt="wizard02" height="444" width="500" /></a></p>
<p>Choose to create a two-states unit monitor based on a script. Creating a three- state monitor would be pretty similar, but I&#039;ll show you the most simple one.<br />
Also, choose a Management pack that will contain your script and unit monitor, or create a new management pack.<br />
<a href="http://www.flickr.com/photos/dani3l3/492786204/"><img src="http://farm1.static.flickr.com/220/492786204_57fb878a47.jpg" alt="wizard03" height="444" width="500" /></a></p>
<p>Choose a &#034;monitor target&#034; (object classes or instances - see this webcast about targeting rules and monitors: <a href="http://www.microsoft.com/winme/0703/28666/Target_Monitoring_Edited.asx">www.microsoft.com/winme/0703/28666/Target_Monitoring_Edit&#8230;</a> ) and the aggregate rollup monitor you want to roll the state up to.</p>
<p>Choose a schedule, that is: how often would you like your script to run. For demonstration purposes I usually choose a very short interval such a two or three minutes. For production environments, tough, choose a longer time range.<br />
<a href="http://www.flickr.com/photos/dani3l3/492786208/"><img src="http://farm1.static.flickr.com/231/492786208_b48ef74259.jpg" alt="wizard04" height="444" width="500" /></a></p>
<p>Choose a name for your script, complete with a .VBS extension, and write the code of the script in the rich text box:<br />
<a href="http://www.flickr.com/photos/dani3l3/492786212/"><img src="http://farm1.static.flickr.com/196/492786212_60a675bdf5.jpg" alt="wizard05" height="444" width="500" /></a></p>
<p>As the sample code and comments suggest, you should use a script that checks for the stuff you want it to check, and returns a &#034;Property Bag&#034; that can be later interpreted by OpsMgr workflow to change the monitor&#039;s state.<br />
This is substantially different than scripting in MOM 2005, where you could only launch scripts as responses, loosing all control over their execution.</p>
<p>For demonstration purpose, use the following script code:<br />
<em> </em></p>
<p><em>On Error Resume Next<br />
Dim oAPI, oBag<br />
Set oAPI = CreateObject(&#034;MOM.ScriptAPI&#034;)<br />
Set oBag = oAPI.CreateTypedPropertyBag(StateDataType)<br />
Const FOR_APPENDING = 8<br />
strFileName = &#034;c:\testfolder\testfile.txt&#034;<br />
strContent  = &#034;test &#034;<br />
Set objFS = CreateObject(&#034;Scripting.FileSystemObject&#034;)<br />
Set objTS = objFS.OpenTextFile(strFileName,FOR_APPENDING)<br />
If Err.Number &lt;&gt; 0 Then<br />
Call oBag.AddValue(&#034;State&#034;,&#034;BAD&#034;)<br />
Else<br />
Call oBag.AddValue(&#034;State&#034;,&#034;GOOD&#034;)<br />
objTS.Write strContent<br />
End If<br />
Call oAPI.Return(oBag)</em><em><br />
</em></p>
<p>[edited on 29th of May as <a href="http://ianblythmanagement.wordpress.com/2007/05/27/scripting-in-2007/">pointed out by Ian</a>: if you cut and paste the example script you might need to change the apostrophes (“) as that causes the script to fail when run - it is an issue with the template of this blog.] [edited on 30th of May: I fixed the blog so that now post content shows just plain, normal double quotes instead than fancy ones. It seems like a useful thing when from time to time I post code...]</p>
<p>The script will try to write into the file c:\testfolder\testfile.txt.<br />
If it finds the file and manages to write (append text) to it, it will return the property &#034;State&#034; with a value of &#034;GOOD&#034;.<br />
If it fails (for example if the file does not exist), it will return the property &#034;State&#034; with a value of &#034;BAD&#034;.</p>
<p>In MOM 2005 you could only let script generate Events or Alerts directly as a mean to communicate their results back to the monitoring engine. In OpsMgr 2007 you can let your script spit out a property bag and then continue the monitoring workflow and decide what to do depending on the script&#039;s result.</p>
<p><a href="http://www.flickr.com/photos/dani3l3/492786214/"><img src="http://farm1.static.flickr.com/225/492786214_96af0cc463.jpg" alt="wizard06" height="444" width="500" /></a></p>
<p>So the next step is to go and check for the value of the property we return in the property bag, to determine which status the monitor will have to assume.</p>
<p>We use the syntax <strong>Property[@Name='State']</strong> in the parameter field, and we search for a content that means an unhealthy condition:</p>
<p><a href="http://www.flickr.com/photos/dani3l3/492787088/"><img src="http://farm1.static.flickr.com/217/492787088_3b3107fb59.jpg" alt="wizard07" height="444" width="500" /></a></p>
<p>Or for the healty one:<br />
<a href="http://www.flickr.com/photos/dani3l3/492787092/"><img src="http://farm1.static.flickr.com/207/492787092_a8559eecf5.jpg" alt="wizard08" height="444" width="500" /></a></p>
<p>Then we decide which status will the monitor have to assume in the healty and unhealty conditions (Green/Yellow or Green/Red usually)<br />
<a href="http://www.flickr.com/photos/dani3l3/492787094/"><img src="http://farm1.static.flickr.com/223/492787094_fac28573d3.jpg" alt="wizard09" height="444" width="500" /></a></p>
<p>Optionally, we can decide to raise an Alert when the status changes to unhealthy, and close it again when it goes back to healty.</p>
<p><a href="http://www.flickr.com/photos/dani3l3/492787098/"><img src="http://farm1.static.flickr.com/194/492787098_72d6ad227f.jpg" alt="wizard10" height="444" width="500" /></a></p>
<p>Now our unit monitor is done.<br />
All we have to do is waiting it gets pushed down to the agent(s) that should execute it, and wait for its status to change.<br />
In fact it should go to the unhealthy state first.<br />
To test that it works, just create the text file it will be searching for, and wait for it to run again, and the state should be reset to Healthy.</p>
<p>Have fun with more complex scripts!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/05/10/create-a-script-based-unit-monitor-in-opsmgr2007-via-the-gui/feed/</wfw:commentRss>
<enclosure url="http://www.microsoft.com/winme/0703/28666/Target_Monitoring_Edited.asx" length="126" type="video/x-ms-asf" />
		</item>
		<item>
		<title>Rain Forest Puppy Interview</title>
		<link>http://www.muscetta.com/2007/05/07/rain-forest-puppy-interview/</link>
		<comments>http://www.muscetta.com/2007/05/07/rain-forest-puppy-interview/#comments</comments>
		<pubDate>Mon, 07 May 2007 09:57:11 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Blogs]]></category>

		<category><![CDATA[Choice]]></category>

		<category><![CDATA[Cross Post]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Rant]]></category>

		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/05/07/rain-forest-puppy-interview/</guid>
		<description><![CDATA[An interesting interview with a personality of the security community of some years ago has been published by Antonio `s4tan` Parata. It is very interesting to read from RFP&#039;s words an analysis of how the view of people has changed regarding security.
I particularly enjoyed the following passage:
[...]
Antonio “s4tan” Parata (ap): Hi Rain Forest Puppy, many thanks for this [...]]]></description>
			<content:encoded><![CDATA[<p>An interesting interview with a personality of the security community of some years ago has been published by Antonio `s4tan` Parata. It is very interesting to read from RFP&#039;s words an analysis of how the view of people has changed regarding security.</p>
<p>I particularly enjoyed the following passage:</p>
<blockquote><p><em>[...]<br />
<strong>Antonio “s4tan” Parata (ap):</strong> Hi Rain Forest Puppy, many thanks for this interview. You are considered one of the fathers of web security and the inventor of the SQL injection attack. Anyway in the year 2003 you decided to publicly retire from the security field (to get more infos </em><a href="http://www.wiretrip.net/rfp/txt/evolution.txt)"><em>http://www.wiretrip.net/rfp/txt/evolution.txt)</em></a><em>. Can you briefly sum your decision? </em></p>
<p><em><strong>Rain Forest Puppy (rfp):</strong> My decision to retire from the public eye was based on a lot of reasons; overall, the amount of resources &#038; energy required to release and maintain advisories and tools was just getting to be too large. It wasn’t fun anymore–and why pursue a hobby if you’re not enjoying it? </em></p>
<p><em>Plus, the security industry was becoming commercialized. Advisories and exploits are now bought and sold; performing security research in the first place can land you in legal waters. The intellectual value of the security research performed has been reduced to a single severity rating, which…if not high enough…causes the entire research to be dismissed. I really enjoy security from the intellectual angle; to me, it’s all just a big mental challenge…a puzzle, if you will. So when the creativity and intellectual aspect of it started to fade away, I decided to go with it.<br />
[...] </em></p></blockquote>
<p> </p>
<p>I do back up this point of view: &#034;why pursue a hobby is you&#039;re not enjoying it ?&#034;.</p>
<p>Creativity and intellectual aspects of security do still interest me, just the market around changed. That&#039;s also part of why I started doing more System Management again - at least I have fun thiking and thinkering, integrating, scripting and composing&#8230;.</p>
<blockquote><p><em>[...] The intellectual value of the security research performed has been reduced to a single severity rating [...] I really enjoy security from the intellectual angle; to me, it’s all just a big mental challenge…a puzzle, if you will [...]</em></p></blockquote>
<p>His point is expressed beautifully.</p>
<p>But he does not only talk about the Security community and market, he also has some interesting thoughts on open and closed source software:<br />
 </p>
<blockquote><p><em><strong>ap:</strong> You are the author of the libwhisker library (</em><a href="http://www.wiretrip.net/rfp/lw.asp)"><em>http://www.wiretrip.net/rfp/lw.asp)</em></a><em>, widely used to create assessment perl scripts. What do you think about nowadays products related to web application assessment? What about some open source software (like parosproxy or nessus) changed to closed-source? </em></p>
<p><em><strong>rfp:</strong> I have to choose my words carefully, because I very recently started working for a security software vendor. </em></p>
<p><em>Having had open source projects, I will say this: it is very hard to bootstrap a development community, and achieve the same level of polish, quality (as in QA), and implementation thoroughness as a commercial product. This isn’t necessarily because commercial software vendors are better coders; the dynamics are just different. </em></p>
<p><em>Open source coders are usually working on their own donated time. That means contributions are often catch-can and best-effort. Open source (when not sponsored by a commercial entity) are typically limited in resources (with time being the critical one). </em></p>
<p><em>[...] </em></p>
<p><em>All I care about is whether the tool works and/or gets the job done. I’ve spent so much wasted time trying to get a screwdriver to do a hammer’s job, and vice versa. I really don’t care if a tool is open source or commercial; I let the job dictate the tool, and not the other way around. Of course, there are certain artificial restrictions on this (like price limitations), but in general, I think there are some things that currently only exist in free &#038; open source tools, and there are some things that currently only exist in commercial tools. </em></p>
<p><em>So use both wisely and get the best of both worlds. <img src='http://www.muscetta.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </em></p>
<p><em>[...]</em></p></blockquote>
<p> </p>
<p>Read the complete interview here: <a href="http://www.ush.it/2007/05/01/interview-with-rain-forest-puppy/">http://www.ush.it/2007/05/01/interview-with-rain-forest-puppy/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/05/07/rain-forest-puppy-interview/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Luca is loving Purble Place</title>
		<link>http://www.muscetta.com/2007/05/05/luca-is-loving-purble-place/</link>
		<comments>http://www.muscetta.com/2007/05/05/luca-is-loving-purble-place/#comments</comments>
		<pubDate>Sat, 05 May 2007 13:57:31 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Luca]]></category>

		<category><![CDATA[Microsoft]]></category>

		<category><![CDATA[Personal]]></category>

		<category><![CDATA[Photos]]></category>

		<category><![CDATA[Vista]]></category>

		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/05/05/luca-is-loving-purble-place/</guid>
		<description><![CDATA[      .flickr-photo { border: solid 2px #000000; }  .flickr-yourcomment { }  .flickr-frame { text-align: left; padding: 3px; }  .flickr-caption { font-size: 0.8em; margin-top: 0px; }

Purble Place is a new educational game that ships with Windows Vista (even with Starter and Home Basic editions) that can help teach [...]]]></description>
			<content:encoded><![CDATA[<style type="text/css">      .flickr-photo { border: solid 2px #000000; }  .flickr-yourcomment { }  .flickr-frame { text-align: left; padding: 3px; }  .flickr-caption { font-size: 0.8em; margin-top: 0px; }</style>
<p class="flickr-frame"><a href="http://www.flickr.com/photos/dani3l3/484997159/" title="photo sharing"><img src="http://farm1.static.flickr.com/215/484997159_89e5df3169.jpg" alt="Luca is loving Purble Place" class="flickr-photo" /></a></p>
<p class="flickr-yourcomment"><a href="http://en.wikipedia.org/wiki/Purble_Place">Purble Place</a> is a new educational game that ships with <a href="http://www.microsoft.com/windows/products/windowsvista/editions/default.mspx">Windows Vista</a> (even with Starter and Home Basic editions) that can help teach colors, shapes, and pattern recognition.</p>
<p>My kid absolutely LOVES it, especially the section of the game where you have to make and decorate cakes :-).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/05/05/luca-is-loving-purble-place/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Ancient and Modern (aka &#8220;Digital Printouts&#8221; and Writing Secure Systems)</title>
		<link>http://www.muscetta.com/2007/05/05/ancient-and-modern-aka-digital-printouts-and-writing-secure-systems/</link>
		<comments>http://www.muscetta.com/2007/05/05/ancient-and-modern-aka-digital-printouts-and-writing-secure-systems/#comments</comments>
		<pubDate>Sat, 05 May 2007 13:02:31 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Choice]]></category>

		<category><![CDATA[Coding]]></category>

		<category><![CDATA[Funny]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Personal]]></category>

		<category><![CDATA[Photos]]></category>

		<category><![CDATA[Places]]></category>

		<category><![CDATA[Rant]]></category>

		<category><![CDATA[Risk]]></category>

		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/05/05/ancient-and-modern-aka-digital-printouts-and-writing-secure-systems/</guid>
		<description><![CDATA[    .flickr-photo { border: solid 2px #000000; }  .flickr-yourcomment { }  .flickr-frame { text-align: left; padding: 3px; }  .flickr-caption { font-size: 0.8em; margin-top: 0px; }

Digital Printouts.
I often find it funny to use the old reflex camera with films, but I mostly use it as if it was a digital [...]]]></description>
			<content:encoded><![CDATA[<style type="text/css">    .flickr-photo { border: solid 2px #000000; }  .flickr-yourcomment { }  .flickr-frame { text-align: left; padding: 3px; }  .flickr-caption { font-size: 0.8em; margin-top: 0px; }</style>
<p class="flickr-frame"><a href="http://www.flickr.com/photos/dani3l3/484909653/" title="photo sharing"><img src="http://farm1.static.flickr.com/200/484909653_bcaeb023f5.jpg" alt="Ancient and Modern (aka " class="flickr-photo" /></a></p>
<p class="flickr-yourcomment">Digital Printouts.<br />
I often find it funny to use the old reflex camera with films, but I mostly use it as if it was a digital one: I make many shots, some are good some are bad - I don&#039;t bother printing them, I just let it develop and I scan the pictures I like from the film (several ones are even posted here this way).<br />
I have even been talking about this with fellow flickerer&#039;s: <a href="http://www.flickr.com/groups/romamor/discuss/72157600009019234/page3/">www.flickr.com/groups/romamor/discuss/72157600009019234/p&#8230;</a></p>
<p>On the opposite, it often happens that I want to print some photos made with the digital camera. So I take them to the shop on the Compact Flash, or more often on a USB pen drive.</p>
<p>Today, tough, something strange happened: the machine they use to print digital photos (some very big professional system for printing on photographic paper with a proprietary application which manages it) hanged while it was trying to load <a href="http://www.flickr.com/photos/dani3l3/357028635">this one photo</a> which was on the USB pendrive.</p>
<p>The guy at the shop got panicked: he said a week earlier a guy got the machine infected with a Virus through his USB pen, and he had to stop working for three days, spend a lot of money to get the system reinstalled&#8230;</p>
<p>I tried to tell him to close the application but he did not even get what I was talking about. He was saying that the system was not responsive&#8230; I was pretty sure the system WAS responsive, it was just the APPLICATION which was hanging, and since it looked like an NT-based system I tried to guide him through CTRL+ALT+DEL, to start &#034;Task Manager&#034;, kill the application (this whole procedure took several minutes, and I had to show him which keys I was talking about as he was abel to find &#034;ALT&#034; but he had never hear of CTRL, left alone &#034;DEL&#034;). It was a Windows2000 Professional&#8230; so I wondered how did he logged in if he did not know that key combination&#8230;.. I asked how did he get in when he started the machine&#8230;. &#034;it opens automatically&#034; he said. I see. I though it must be configured for autologon then. After killing the application he asked &#034;how do I get out of this now??&#034; &#034;This&#034; being Windows Explorer&#8230; I mean, the desktop. I pulled out my USB pendrive he was afraid of, I helped him reboot. He was nervous and he said it took much longer than normal to start up (I don&#039;t believe ONE word of it, it just took much less time than my laptop with Vista takes to start up&#8230; but he was worried and that makes one anxious and makes time flow slower). He was afraid and nervous that the &#034;thing&#034; could have been broken somehow by trying to load a JPEG&#8230;<br />
NOTHING made him confident about me: I tried to reassure him I am an IT Professional, that I work for Microsoft (unfortunately I did not have my business cards with me today, that would have probably helped!), that I put my hands on much more complex and &#034;missioncritical&#034; systems, that I would not bring him any virus whatsoever and I am paranoid about computer security&#8230;<br />
Nothing. Nothing worked to re-assure him that there wasn&#039;t anything to worry about my pen&#8230;</p>
<p>While the machine started I saw it doing <a href="http://support.microsoft.com/kb/315231">AutoAdminLogon</a> with Administrator&#8230; with a password of TWO characters.<br />
Oh my god!<br />
Then he wonders that he gets viruses from strangers. He runs as Administrator all the time!!!</p>
<p>But then I though and asked&#8230; &#034;is there maybe a LIMIT on the SIZE of the file?&#034;. &#034;Of course there is!&#034;.<br />
Right.</p>
<p>Since the photo I wanted to print is actually a composition made of two photos pasted together, and each of the original was a 8 Megapixel photo, the resulting is a 16 Megapixel picture, a JPG file of roughly 8 megabytes in size. Well, this days it isn&#039;t much anyway. We nearly have cameras which produce files with that high resolution&#8230;<br />
..but if THAT application has a limit&#8230; WHY on earth doesn&#039;t it CHECK for the bloody SIZE of the file BEFORE trying to load it ?</p>
<p><strong>I mean, those are professional systems which - he said - cost around 150 THOUSAND of Euros&#8230; which they let run with an application which does NOT do any input checking/validation, runs the whole time as Administrator&#8230; while letting people bring in their own CD-ROMs, USB pens, flash memory cards&#8230;.<br />
and they expect it to be safe?</strong></p>
<p>Now the guy was panicked and wouldn&#039;t let me plug my pen in the machine again.</p>
<p>Then he&#039;s keeping his shop closed in the afternoon since it is saturday, and I need that photo (and other ones) printed for tomorrow, because tomorrow it is my grandad&#039;s 91st birthday and I wanted to bring them printed for him and framed as a present!</p>
<p>Morale: I have to find another place to print them in the afternoon, in a rush, because some company sells print systems which are written like crap, which need to run as Administrator and won&#039;t do any input validation in their code. This is one of those situations where a design flaw matters.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.muscetta.com/2007/05/05/ancient-and-modern-aka-digital-printouts-and-writing-secure-systems/feed/</wfw:commentRss>
		</item>
		<item>
		<title>WordPress.Net</title>
		<link>http://www.muscetta.com/2007/05/01/wordpressnet/</link>
		<comments>http://www.muscetta.com/2007/05/01/wordpressnet/#comments</comments>
		<pubDate>Tue, 01 May 2007 08:14:41 +0000</pubDate>
		<dc:creator>Daniele Muscetta</dc:creator>
		
		<category><![CDATA[Blogs]]></category>

		<category><![CDATA[C#]]></category>

		<category><![CDATA[Coding]]></category>

		<category><![CDATA[Cross Platform]]></category>

		<category><![CDATA[ITVC]]></category>

		<category><![CDATA[Integration]]></category>

		<category><![CDATA[Interop]]></category>

		<category><![CDATA[Linux]]></category>

		<category><![CDATA[Microsoft]]></category>

		<category><![CDATA[Personal]]></category>

		<category><![CDATA[WebSite]]></category>

		<category><![CDATA[dotNet]]></category>

		<guid isPermaLink="false">http://www.muscetta.com/2007/05/01/wordpressnet/</guid>
		<description><![CDATA[
.flickr-photo { border: solid 2px #000000; }
.flickr-yourcomment { }
.flickr-frame { text-align: left; padding: 3px; }
.flickr-caption { font-size: 0.8em; margin-top: 0px; }


WordPress.Net, uploaded by Daniele Muscetta on Flickr.
It has been quite a while that I wanted to experiment a bit more with ASP.Net but I don&#039;t have a windows machine on the internet. Not one that [...]]]></description>
			<content:encoded><![CDATA[<style type="text/css">
.flickr-photo { border: solid 2px #000000; }
.flickr-yourcomment { }
.flickr-frame { text-align: left; padding: 3px; }
.flickr-caption { font-size: 0.8em; margin-top: 0px; }
</style>
<div class="flickr-frame"><a title="photo sharing" href="http://www.flickr.com/photos/dani3l3/479584212/"><img alt="WordPress.Net" class="flickr-photo" src="http://farm1.static.flickr.com/222/479584212_c5acb5300c.jpg" /></a></p>
<p><span class="flickr-caption"><a href="http://www.flickr.com/photos/dani3l3/479584212/">WordPress.Net</a>, uploaded by <a href="http://www.flickr.com/people/dani3l3/">Daniele Muscetta</a> on Flickr.</span></div>
<p class="flickr-yourcomment">It has been quite a while that I wanted to experiment a bit more with <a href="http://www.asp.net">ASP.Net</a> but I don&#039;t have a windows machine on the internet. Not one that performs enough anyway. My server runs linux. I have had <a href="http://www.mono-project.com">mono</a> running on it for a while, but its support was not complete with the <a href="http://www.debian.org/releases/sarge">old release of Debian</a>, so part of my mono and mod_mono installation were a custom compile and they were breaking from time to time, each time some library got updated. So I did run a &#034;Hello World&#034; page with it, but nothing more, because it was a bit of a mess to mantain and, moreover, because I had not yet figured out how to have it connect with mysql instead than with MS SQL Server.<br />
Also, I did not have any real project or idea to implement in my mind.</p>
<p>Now that I have upgraded to <a href="http://www.debian.org/releases/etch">Debian Etch</a>, mono support seems to be much more out-of-the-box and stable on this release. I also got an idea of what to do with it, so I finally gave it a try.</p>
<p>As a starter, I am trying to re-publish my blog, historically running at <a href="http://www.muscetta.com">www.muscetta.com</a>, on my other <a href="http://www.muscetta.net">muscetta.NET</a> domain (it makes sense to use a .NET domain, right?). But this is not a new site, it is a republish of the same content, but done using C# - just pointing at the same wordpress&#039; mysql database. Connection to MySQL is done with <a href="http://dev.mysql.com/doc/refman/5.1/en/connector-net-ref-mysqlclient.html">MySql.Data (the ADO.Net driver for MySQL)</a>.</p>
<p>I still need to implement a lot of things/features, such as comment posting (you can only read them now), some layout/styling/framing to make it look nicer, some sidebar/blogroll, feeds, and a many other things. I am not aiming at a complete rewrite (for example I won&#039;t do an administrative interface or a webservice so far), but just a republish/frontend to the visitors.<br />
I don&#039;t know when I will have time to continue writing it, but all in all I am glad it works so far, and I had fun doing it.</p>
<p>Writing ASP.Net for mono on linux in the absence of Frontpage server extentions and WebDAV and the remote debugger is proving slightly more challenging than just dragging and dropping controls in Visual Studio and let it do a lot of work with you. 