<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet type='text/xsl' href='http://robzyc.spaces.live.com/mmm2008-07-24_12.50/rsspretty.aspx?rssquery=en-US;http%3a%2f%2frobzyc.spaces.live.com%2fcategory%2fSoftware%2bLanguages%2ffeed.rss' version='1.0'?><rss version="2.0" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:msn="http://schemas.microsoft.com/msn/spaces/2005/rss" xmlns:live="http://schemas.microsoft.com/live/spaces/2006/rss" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:cf="http://www.microsoft.com/schemas/rss/core/2005" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>The Ramblings of Rob Cooper: Software Languages</title><description /><link>http://robzyc.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&amp;_c=BlogPart&amp;partqs=catSoftware%2bLanguages</link><language>en-US</language><pubDate>Tue, 23 Sep 2008 05:29:29 GMT</pubDate><lastBuildDate>Tue, 23 Sep 2008 05:29:29 GMT</lastBuildDate><generator>Microsoft Spaces v1.1</generator><docs>http://www.rssboard.org/rss-specification</docs><ttl>60</ttl><cf:parentRSS>http://robzyc.spaces.live.com/blog/feed.rss</cf:parentRSS><live:type>blogcategory</live:type><live:identity><live:id>5173604217493655657</live:id><live:alias>robzyc</live:alias></live:identity><cf:listinfo><cf:group ns="http://schemas.microsoft.com/live/spaces/2006/rss" element="typelabel" label="Type" /><cf:group ns="http://schemas.microsoft.com/live/spaces/2006/rss" element="tag" label="Tag" /><cf:group element="category" label="Category" /><cf:sort element="pubDate" label="Date" data-type="date" default="true" /><cf:sort element="title" label="Title" data-type="string" /><cf:sort ns="http://purl.org/rss/1.0/modules/slash/" element="comments" label="Comments" data-type="number" /></cf:listinfo><item><title>Nice Silverlight App</title><link>http://robzyc.spaces.live.com/Blog/cns!47CC559FF82C1069!176.entry</link><description>&lt;p&gt;I got &lt;a href="http://blogs.msdn.com/mharsh/archive/2007/08/09/mediapreview-tv-beautiful-silverlight-v1-0-app.aspx" target="_blank"&gt;this blog&lt;/a&gt; from Michael Harsh in my RSS reader today. It pointed me to the &lt;a href="http://silverlight.net/" target="_blank"&gt;Silverlight&lt;/a&gt; Application &amp;quot;&lt;a href="http://mediapreview.tv/" target="_blank"&gt;MediaPreview.tv&lt;/a&gt;&amp;quot;. &lt;p&gt;I &lt;strong&gt;strongly&lt;/strong&gt; recommend checking it out, its a great demo app.&lt;a href="http://mediapreview.tv/" target="_blank"&gt;&lt;img style="border-right:0px;border-top:0px;margin:0px 0px 10px 15px;border-left:0px;border-bottom:0px" height=221 alt=MediaPreview.com src="http://byfiles.storage.msn.com/y1pnwGVwtLvCoSwKvCWkd_sRYPWo7Qxg9x9FTb_Od4YCwAsvd3SufnH0v-mLBNNFVHfntTq5rWVJcg" width=300 align=right border=0&gt;&lt;/a&gt; &lt;p&gt;Be sure to check out the: &lt;ul&gt; &lt;li&gt;Dragging-and-dropping of the thumbnails at the bottom, you can drop them in the trash. &lt;li&gt;The nice slide effects on the panels down the side. &lt;li&gt;The overlay created by clicking the little &amp;quot;&lt;em&gt;i&lt;/em&gt;&amp;quot; in the video. &lt;li&gt;The quality and speed of delivery of the video content. &lt;li&gt;The smoothness of it all, on resizing the browser, and the animation.&lt;/ul&gt; &lt;p&gt;Now, I am not an expert in Flash, but my understanding is that you would need a pretty hefty course on it to be able to produce an app of this quality in it, what's great about Silverlight is that its all based (or will be in the 1.1 release) on &lt;a href="http://en.wikipedia.org/wiki/Managed_code" target="_blank"&gt;managed code&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Extensible_Application_Markup_Language" target="_blank"&gt;XAML&lt;/a&gt;. Both of these are easy for existing developers to get to grips with with relatively little training, and of course its all seamless between the design (&lt;a href="http://www.microsoft.com/expression/products/overview.aspx?key=blend" target="_blank"&gt;Expression Blend&lt;/a&gt;) and the development (&lt;a href="http://msdn2.microsoft.com/en-us/vstudio/aa700830.aspx" target="_blank"&gt;Visual Studio 2008&lt;/a&gt;). &lt;p&gt;It must be an exciting time for web developers out there! &lt;p&gt; &lt;div style="padding-right:0px;display:inline;padding-left:0px;padding-bottom:0px;margin:0px;padding-top:0px"&gt;del.icio.us Tags: &lt;a href="http://del.icio.us/popular/Silverlight" rel=tag&gt;Silverlight&lt;/a&gt;, &lt;a href="http://del.icio.us/popular/XAML" rel=tag&gt;XAML&lt;/a&gt;, &lt;a href="http://del.icio.us/popular/MediaPreview.tv" rel=tag&gt;MediaPreview.tv&lt;/a&gt;&lt;/div&gt;&lt;br&gt; &lt;div style="padding-right:0px;display:inline;padding-left:0px;padding-bottom:0px;margin:0px;padding-top:0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/Silverlight" rel=tag&gt;Silverlight&lt;/a&gt;, &lt;a href="http://technorati.com/tags/XAML" rel=tag&gt;XAML&lt;/a&gt;, &lt;a href="http://technorati.com/tags/MediaPreview.tv" rel=tag&gt;MediaPreview.tv&lt;/a&gt;&lt;/div&gt;&lt;br&gt; &lt;div style="padding-right:0px;display:inline;padding-left:0px;padding-bottom:0px;margin:0px;padding-top:0px"&gt;Flickr Tags: &lt;a href="http://flickr.com/photos/tags/Silverlight" rel=tag&gt;Silverlight&lt;/a&gt;, &lt;a href="http://flickr.com/photos/tags/XAML" rel=tag&gt;XAML&lt;/a&gt;, &lt;a href="http://flickr.com/photos/tags/MediaPreview.tv" rel=tag&gt;MediaPreview.tv&lt;/a&gt;&lt;/div&gt;&lt;br&gt; &lt;div style="padding-right:0px;display:inline;padding-left:0px;padding-bottom:0px;margin:0px;padding-top:0px"&gt;LiveJournal Tags: &lt;a href="http://www.livejournal.com/interests.bml?int=Silverlight" rel=tag&gt;Silverlight&lt;/a&gt;, &lt;a href="http://www.livejournal.com/interests.bml?int=XAML" rel=tag&gt;XAML&lt;/a&gt;, &lt;a href="http://www.livejournal.com/interests.bml?int=MediaPreview.tv" rel=tag&gt;MediaPreview.tv&lt;/a&gt;&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=5173604217493655657&amp;page=RSS%3a+Nice+Silverlight+App&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=robzyc.spaces.live.com&amp;amp;GT1=robzyc"&gt;</description><comments>http://robzyc.spaces.live.com/Blog/cns!47CC559FF82C1069!176.entry#comment</comments><guid isPermaLink="true">http://robzyc.spaces.live.com/Blog/cns!47CC559FF82C1069!176.entry</guid><pubDate>Thu, 09 Aug 2007 20:50:57 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://robzyc.spaces.live.com/blog/cns!47CC559FF82C1069!176/comments/feed.rss</wfw:commentRss><wfw:comment>http://robzyc.spaces.live.com/Blog/cns!47CC559FF82C1069!176.entry#comment</wfw:comment><dcterms:modified>2007-08-09T22:08:03Z</dcterms:modified></item><item><title>Oh Ruby! Ruby! Ruby!</title><link>http://robzyc.spaces.live.com/Blog/cns!47CC559FF82C1069!172.entry</link><description>&lt;p&gt;OK, I am getting worried about myself now.. 
&lt;p&gt;I like to think of myself as a young, keen developer. I study hard, work hard and think I have a good attitude to software development. I also have an open mind and look for the &amp;quot;possibilities&amp;quot; within.. And I tend to pretty much instantly have ideas about things when I see a new tech or product, &amp;quot;what can I do with this?&amp;quot;, &amp;quot;how could it affect my work?&amp;quot;, &amp;quot;can it make me more productive?&amp;quot;, &amp;quot;could it provide a better experience for the user?&amp;quot;, &amp;quot;can it provide less of a headache for the developer?&amp;quot;.. Its these questions which I find makes the IT/Software industry so exciting, there is always so much going on. There is almost &lt;strong&gt;too&lt;/strong&gt; much going on! 
&lt;p&gt;One noise within the party that seems to be getting louder, like the drunk girl everybody is trying to steer clear of is &lt;strong&gt;&lt;a href="http://www.ruby-lang.org/" target="_blank"&gt;Ruby&lt;/a&gt;&lt;/strong&gt;. For those of you that do not know what Ruby is, it is a &lt;em&gt;&lt;a href="http://en.wikipedia.org/wiki/Dynamic_language" target="_blank"&gt;dynamic language&lt;/a&gt;&lt;/em&gt;. And there's a lot to it, but in short, it means that you can write some code in a script file, and it will all be executed at run-time, rather than compiled into an executable of some form (where the &amp;quot;language&amp;quot; disappears and it is all compiled into &amp;quot;computer speak&amp;quot;). Examples of dynamic languages are &lt;a href="http://www.javascript.com/" target="_blank"&gt;JavaScript&lt;/a&gt; and &lt;a href="http://msdn2.microsoft.com/en-us/library/sx7b3k7y.aspx" target="_blank"&gt;VBScript&lt;/a&gt;. These offer their own benefits and drawbacks, which I won't really go into, but they exist. I will mention a major one, &lt;strong&gt;performance&lt;/strong&gt;. Dynamic Languages execute much slower than compiled code, simply because the code needs to be interpreted each time it is executed, every time it is executed. 
&lt;p&gt;&amp;quot;OK Rob, the point is?&amp;quot; I hear you ask.. Well, everyone seems to be singing Ruby's praises about how clean the syntax is for a developer to read. This is what is worrying me, I look at the syntax and think it is awful. One thing I always try to remember when writing code is that I want to be able to read it as quickly as possible and instantly know what its going, like a&lt;a href="http://tryruby.hobix.com/"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px" height=108 alt="Try Ruby" src="http://byfiles.storage.msn.com/y1pnwGVwtLvCoShXpaC38BhBYxRw5bkBR0WrPXo5VA8ghq2pLTPHNX8-4OJkRSowd2RBHtq2eaLebs" width=240 align=right border=0&gt;&lt;/a&gt; book. So when I need to find a problem, I read the story, and find where the plot goes awry. And while VB6/A and C# (the languages I work in) may not be perfect, I find most of the syntax pretty &amp;quot;English&amp;quot;. 
&lt;p&gt;If you want a better understanding of what I mean, check out the online &lt;a href="http://tryruby.hobix.com/" target="_blank"&gt;Interactive Ruby Demo&lt;/a&gt; that you can actually play with some code yourself. And tell me if you have a clue what the hell you are typing in!?! 
&lt;p&gt;I also came across &lt;a href="http://www.hacknot.info/hacknot/action/showEntry?eid=93" target="_blank"&gt;this excellent essay&lt;/a&gt; on &lt;a href="http://www.hacknot.info/" target="_blank"&gt;Hacknot&lt;/a&gt; - a great site that features essays on Software Development, its got some comedy in it (I love the word &amp;quot;Weenie&amp;quot;) but also some &lt;strong&gt;excellent&lt;/strong&gt; points on actually looking at what we have, and what Ruby does for us.. And to be honest, the writer seems to have come to the same conclusion as me (and admittedly with a lot more research and experience) &lt;strong&gt;&lt;em&gt;not a lot!&lt;/em&gt;&lt;/strong&gt; 
&lt;p&gt;Here's one of my favourite points in the essay, on about the syntax of Ruby: 
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;&amp;quot;Let's put both these claims to the test with a few examples. If you're unfamiliar with Ruby, see how natural the following code seems to you:&amp;quot;&lt;/em&gt; 
&lt;p&gt;&lt;em&gt;[1,3,5,7].inject(0) { |x,y| x + y }&lt;/em&gt; 
&lt;p&gt;&lt;em&gt;Can you tell what it does? It's an expression whose value is the sum of all the elements in the array [1,3,5,7], which is 16. Let's try this exercise the other way around. If you had not seen the above, what syntax would you think Ruby uses to sum the elements of an array? Here's a guess: &lt;/em&gt;&lt;pre&gt;&lt;em&gt;for every x in [1,3,5,7] { total += x }&lt;/em&gt;&lt;/pre&gt;&lt;/blockquote&gt;
&lt;p&gt;So, someone please, please enlighten me as to what all the fuss is about! Right now all I can see is &lt;strong&gt;another&lt;/strong&gt; language. Hooray.&lt;br&gt;It is really doing nothing for me! 
&lt;p&gt;
&lt;div style="padding-right:0px;display:inline;padding-left:0px;padding-bottom:0px;margin:0px;padding-top:0px"&gt;del.icio.us Tags: &lt;a href="http://del.icio.us/popular/software development" rel=tag&gt;software development&lt;/a&gt;, &lt;a href="http://del.icio.us/popular/dynamic language" rel=tag&gt;dynamic language&lt;/a&gt;, &lt;a href="http://del.icio.us/popular/ruby" rel=tag&gt;ruby&lt;/a&gt;, &lt;a href="http://del.icio.us/popular/c#" rel=tag&gt;c#&lt;/a&gt;&lt;/div&gt;&lt;br&gt;
&lt;div style="padding-right:0px;display:inline;padding-left:0px;padding-bottom:0px;margin:0px;padding-top:0px"&gt;Flickr Tags: &lt;a href="http://flickr.com/photos/tags/software development" rel=tag&gt;software development&lt;/a&gt;, &lt;a href="http://flickr.com/photos/tags/dynamic language" rel=tag&gt;dynamic language&lt;/a&gt;, &lt;a href="http://flickr.com/photos/tags/ruby" rel=tag&gt;ruby&lt;/a&gt;, &lt;a href="http://flickr.com/photos/tags/c#" rel=tag&gt;c#&lt;/a&gt;&lt;/div&gt;&lt;br&gt;
&lt;div style="padding-right:0px;display:inline;padding-left:0px;padding-bottom:0px;margin:0px;padding-top:0px"&gt;LiveJournal Tags: &lt;a href="http://www.livejournal.com/interests.bml?int=software development" rel=tag&gt;software development&lt;/a&gt;, &lt;a href="http://www.livejournal.com/interests.bml?int=dynamic language" rel=tag&gt;dynamic language&lt;/a&gt;, &lt;a href="http://www.livejournal.com/interests.bml?int=ruby" rel=tag&gt;ruby&lt;/a&gt;, &lt;a href="http://www.livejournal.com/interests.bml?int=c#" rel=tag&gt;c#&lt;/a&gt;&lt;br&gt;&lt;/div&gt;
&lt;div style="padding-right:0px;display:inline;padding-left:0px;padding-bottom:0px;margin:0px;padding-top:0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/software development" rel=tag&gt;software development&lt;/a&gt;, &lt;a href="http://technorati.com/tags/dynamic language" rel=tag&gt;dynamic language&lt;/a&gt;, &lt;a href="http://technorati.com/tags/ruby" rel=tag&gt;ruby&lt;/a&gt;, &lt;a href="http://technorati.com/tags/c#" rel=tag&gt;c#&lt;/a&gt;&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=5173604217493655657&amp;page=RSS%3a+Oh+Ruby!+Ruby!+Ruby!&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=robzyc.spaces.live.com&amp;amp;GT1=robzyc"&gt;</description><comments>http://robzyc.spaces.live.com/Blog/cns!47CC559FF82C1069!172.entry#comment</comments><guid isPermaLink="true">http://robzyc.spaces.live.com/Blog/cns!47CC559FF82C1069!172.entry</guid><pubDate>Thu, 09 Aug 2007 20:50:57 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://robzyc.spaces.live.com/blog/cns!47CC559FF82C1069!172/comments/feed.rss</wfw:commentRss><wfw:comment>http://robzyc.spaces.live.com/Blog/cns!47CC559FF82C1069!172.entry#comment</wfw:comment><dcterms:modified>2007-08-09T21:23:16Z</dcterms:modified></item></channel></rss>