<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="/stylesheets/rss.css" type="text/css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>assertTrue: Invest Regulary in Your Knowledge Portfolio</title>
    <link>http://www.asserttrue.com/articles/2006/07/25/invest-regulary-in-your-knowledge-portfolio</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description>powered by Pattern Park</description>
    <item>
      <title>Invest Regulary in Your Knowledge Portfolio</title>
      <description>&lt;p&gt;I must have learned something from the first chapter of &lt;a href="http://www.pragmaticprogrammer.com/ppbook/extracts/index.html"&gt;&lt;em&gt;The Pragmatic Programmer&lt;/em&gt;&lt;/a&gt; by &lt;a href="http://blogs.pragprog.com/cgi-bin/pragdave.cgi"&gt;Dave Thomas&lt;/a&gt; (who&amp;#8217;s probably better known these days for his contributions to the &lt;a href="http://www.ruby-lang.org/en/"&gt;Ruby&lt;/a&gt; community through his &lt;a href="http://www.pragmaticprogrammer.com/"&gt;publishing company&lt;/a&gt; and must-have &lt;a href="http://www.pragmaticprogrammer.com/titles/ruby/index.html"&gt;book&lt;/a&gt; &lt;a href="http://www.rubycentral.com/book/"&gt;&lt;em&gt;Programming Ruby&lt;/em&gt;&lt;/a&gt;) when I read it long ago.  In that chapter, Dave&amp;#8217;s 8th tip is to, &amp;#8220;Invest Regulary in Your Knowledge Portfolio&amp;#8221;.  One of the ways he suggests doing so is to learn one new language a year.  Well, this year I seem to be making up for years gone by, because I&amp;#8217;ve been spending a lot of my extra time  working with several different languages and their frameworks.  This year, I&amp;#8217;ve been working with &amp;#8211; in order as of today &amp;#8211; &lt;a href="http://www.haxe.org/"&gt;haXe&lt;/a&gt;, &lt;a href="http://livedocs.macromedia.com/flash/8/main/wwhelp/wwhimpl/js/html/wwhelp.htm?href=Part10a_FL_getting_started.html"&gt;Flash Lite 1.1&lt;/a&gt;, &lt;a href="http://www.ruby-lang.org/en/"&gt;Ruby&lt;/a&gt;, &lt;a href="http://livedocs.macromedia.com/specs/actionscript/3/wwhelp/wwhimpl/js/html/wwhelp.htm"&gt;ActionScript 3.0&lt;/a&gt;,   &lt;a href="http://www.xulplanet.com/"&gt;&lt;span class="caps"&gt;XUL&lt;/span&gt;&lt;/a&gt;, and the &lt;a href="http://nsis.sourceforge.net/Main_Page"&gt;Nullsoft Scriptable Install System&lt;/a&gt;.  I&amp;#8217;ve been working with their frameworks &lt;a href="http://www.rubyonrails.org/"&gt;Ruby on Rails&lt;/a&gt;, &lt;a href="http://livedocs.macromedia.com/flex/2/"&gt;Flex&lt;/a&gt;, and &lt;a href="http://developer.mozilla.org/en/docs/XULRunner"&gt;XULRunner&lt;/a&gt;.&lt;/p&gt;


	&lt;p&gt;All of these languages are tools to build the kind of software that I&amp;#8217;m interested in building: software that&amp;#8217;s fun to write, easy to distribute, a pleasure to use, useful, and affordable.  For software to be distributed easily and a pleasure to use has to be universally available.  And, to be universally available it needs to be truely cross-platform &amp;#8211; cross-software and cross-hardware.  It needs to work on &lt;a href="http://www.windows.com"&gt;win&lt;/a&gt;, &lt;a href="http://www.apple.com/macosx/"&gt;mac&lt;/a&gt;, and &lt;a href="http://www.kernel.org/"&gt;nix&lt;/a&gt; and also in a browser, on a desktop, and on a palmtop.  Today, the best format to make software universally available is the &lt;a href="http://www.adobe.com/licensing/developer/"&gt;&lt;span class="caps"&gt;SWF&lt;/span&gt;&lt;/a&gt; format.  It&amp;#8217;s undeniable, &lt;a href="http://www.adobe.com/products/player_census/flashplayer/version_penetration.html"&gt;more people have the Flash Player than any other piece of software&lt;/a&gt;  .&lt;/p&gt;


	&lt;p&gt;It is, granted, worth noting that some feel like &lt;a href="http://java.sun.com/"&gt;traditional Java&lt;/a&gt;, &lt;a href="http://gcc.gnu.org/java/"&gt;non-traditional&lt;/a&gt; &lt;a href="http://wiki.eclipse.org/index.php/Rich_Client_Platform"&gt;Java&lt;/a&gt;, &lt;a href="http://www.python.org/"&gt;Python&lt;/a&gt;, &lt;a href="http://www.ruby-lang.org/en/"&gt;Ruby&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/netframework/"&gt;.NET&lt;/a&gt;, and the &lt;a href="http://www.mozilla.org/projects/xul/"&gt;Mozilla Foundation&amp;#8217;s &lt;span class="caps"&gt;XUL&lt;/span&gt;&lt;/a&gt; are also acceptable tools to make available software, and depending on the goal, they&amp;#8217;re correct.  In many cases, these technologies can even enhance a &lt;span class="caps"&gt;SWF&lt;/span&gt;&amp;#8217;s funcionality.  For example, it&amp;#8217;s possible to use Mozilla&amp;#8217;s &lt;a href="http://developer.mozilla.org/en/docs/XULRunner"&gt;XULRunner&lt;/a&gt; as a &lt;a href="http://www.osflash.org/pipermail/osflash_osflash.org/2006-February/007659.html"&gt;desktop wrapper for SWFs&lt;/a&gt;, or if you&amp;#8217;re really smart, to do what &lt;a href="http://richkilmer.blogs.com/about.html"&gt;Rich Kilmer&lt;/a&gt; did and write a &lt;a href="http://richkilmer.blogs.com/ether/2006/02/get_indi_baby.html"&gt;&lt;span class="caps"&gt;SWF&lt;/span&gt; view to a Ruby controller and Berkeley DB model&lt;/a&gt;.  Rich gave me and &lt;a href="http://www.lukebayes.com"&gt;Luke&lt;/a&gt; a sneak peak at his &lt;a href="http://www.getindi.com/"&gt;indi&lt;/a&gt; product at &lt;a href="http://www.railsconf.org/"&gt;RailsConf&lt;/a&gt;, and we were blown away.  The product is a great idea, and it&amp;#8217;s built on an extremely smart and interesting architecture.  &lt;a href="http://www.getindi.com/"&gt;Get indi&lt;/a&gt; when it&amp;#8217;s available.&lt;/p&gt;


	&lt;p&gt;Invest regularly in your knowledge portfolio.&lt;/p&gt;</description>
      <pubDate>Tue, 25 Jul 2006 23:30:00 -0700</pubDate>
      <guid isPermaLink="false">urn:uuid:9d097fa3-d093-456c-9de2-fa0cb3671df2</guid>
      <author>Ali Mills</author>
      <link>http://www.asserttrue.com/articles/2006/07/25/invest-regulary-in-your-knowledge-portfolio</link>
      <category>actionscript</category>
      <category>flashlite</category>
      <category>flex</category>
      <category>haxe</category>
      <category>nsis</category>
      <category>ruby</category>
      <category>rubyonrails</category>
      <category>swf</category>
      <category>xul</category>
      <category>xulrunner</category>
      <trackback:ping>http://www.asserttrue.com/articles/trackback/41</trackback:ping>
    </item>
  </channel>
</rss>
