<?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"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Laughing Meme &#187; java</title>
	<atom:link href="http://laughingmeme.org/tag/java/feed/" rel="self" type="application/rss+xml" />
	<link>http://laughingmeme.org</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Mon, 02 Apr 2012 20:12:19 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Twitter: Jobs</title>
		<link>http://laughingmeme.org/2008/05/01/twitter-jobs/</link>
		<comments>http://laughingmeme.org/2008/05/01/twitter-jobs/#comments</comments>
		<pubDate>Thu, 01 May 2008 07:05:11 +0000</pubDate>
		<dc:creator>Kellan</dc:creator>
				<category><![CDATA[Aside]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[scala]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://laughingmeme.org/?p=3812</guid>
		<description><![CDATA[Operations Engineer experience with JVM-based application stacks, Systems Engineer code using primarily Java, Ruby, C/C++ and Scala. I blame theraflu]]></description>
			<content:encoded><![CDATA[<p>Operations Engineer experience with JVM-based application stacks, Systems Engineer code using primarily Java, Ruby, C/C++ and Scala.  I blame <a href="http://twitter.com/jack/statuses/792777706">theraflu</a></p>
<p><a href='http://twitter.com/help/jobs'>http://twitter.com/help/jobs</a></p>]]></content:encoded>
			<wfw:commentRss>http://laughingmeme.org/2008/05/01/twitter-jobs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The creator of Struts is working in Rails</title>
		<link>http://laughingmeme.org/2007/08/02/the-creator-of-struts-is-working-in-rails/</link>
		<comments>http://laughingmeme.org/2007/08/02/the-creator-of-struts-is-working-in-rails/#comments</comments>
		<pubDate>Thu, 02 Aug 2007 19:16:49 +0000</pubDate>
		<dc:creator>Kellan</dc:creator>
				<category><![CDATA[Aside]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[struts]]></category>

		<guid isPermaLink="false">http://laughingmeme.org/2007/08/02/the-creator-of-struts-is-working-in-rails/</guid>
		<description><![CDATA[Along with the creator of Ant, this is the slow but undeniable momentum. Nice work after 3 years]]></description>
			<content:encoded><![CDATA[<p>Along with the <a href="http://duncandavidson.com/">creator of Ant</a>, this is the slow but undeniable momentum.  Nice work after <a href="http://www.loudthinking.com/posts/10-three-years-with-ruby-on-rails">3 years</a></p>
<p><a href='http://blogs.sun.com/craigmcc/entry/jmaki_on_rails'>http://blogs.sun.com/craigmcc/entry/jmaki_on_rails</a></p>]]></content:encoded>
			<wfw:commentRss>http://laughingmeme.org/2007/08/02/the-creator-of-struts-is-working-in-rails/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Code: google-rfc-2445 recurrences</title>
		<link>http://laughingmeme.org/2006/10/25/google-code-google-rfc-2445-recurrences/</link>
		<comments>http://laughingmeme.org/2006/10/25/google-code-google-rfc-2445-recurrences/#comments</comments>
		<pubDate>Wed, 25 Oct 2006 16:33:00 +0000</pubDate>
		<dc:creator>Kellan</dc:creator>
				<category><![CDATA[Aside]]></category>
		<category><![CDATA[calendaring]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[ical]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[recurrence]]></category>

		<guid isPermaLink="false">http://lm.quxx.info/?p=3506</guid>
		<description><![CDATA[Google Calendar&#8217;s implementation of RFC 2445 repeating events. Apache 2.0 license. Java.]]></description>
			<content:encoded><![CDATA[<p>Google Calendar&#8217;s implementation of RFC 2445 repeating events.  Apache 2.0 license.  Java.</p>
<p><a href='http://code.google.com/p/google-rfc-2445/'>http://code.google.com/p/google-rfc-2445/</a></p>]]></content:encoded>
			<wfw:commentRss>http://laughingmeme.org/2006/10/25/google-code-google-rfc-2445-recurrences/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>What version of Ruby is this guy using?</title>
		<link>http://laughingmeme.org/2006/03/21/what-version-of-ruby-is-this-guy-using/</link>
		<comments>http://laughingmeme.org/2006/03/21/what-version-of-ruby-is-this-guy-using/#comments</comments>
		<pubDate>Wed, 22 Mar 2006 01:24:00 +0000</pubDate>
		<dc:creator>Kellan</dc:creator>
				<category><![CDATA[Aside]]></category>
		<category><![CDATA[enterprise]]></category>
		<category><![CDATA[humor]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://lm.quxx.info/?p=3299</guid>
		<description><![CDATA[No regular expressions, no instance variables, no packages/namespacing, no public/private/protected!?!!? Clearly he got his hands on an unreleased alpha from 1987. But that doesn&#8217;t explain his concern that Ruby will drive up your electrical bill. It&#8217;s got to be a troll. I blame why.]]></description>
			<content:encoded><![CDATA[<p>No regular expressions, <strong>no instance variables</strong>, no packages/namespacing,  no public/private/protected!?!!?  Clearly he got his hands on an unreleased alpha from 1987.  But that doesn&#8217;t explain his concern that Ruby will drive up your electrical bill.  It&#8217;s <em>got</em> to be a troll.  I blame <a href="http://whytheluckystiff.net/">why</a>.</p>
<p><a href='http://duckdown.blogspot.com/2006/03/additional-thoughts-on-why-ruby-isnt.html#links'>http://duckdown.blogspot.com/2006/03/additional-thoughts-on-why-ruby-isnt.html#links</a></p>]]></content:encoded>
			<wfw:commentRss>http://laughingmeme.org/2006/03/21/what-version-of-ruby-is-this-guy-using/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>RasterWeb: MagpieRSS for &#8230; JSP?</title>
		<link>http://laughingmeme.org/2006/02/07/rasterweb-magpierss-for-jsp/</link>
		<comments>http://laughingmeme.org/2006/02/07/rasterweb-magpierss-for-jsp/#comments</comments>
		<pubDate>Tue, 07 Feb 2006 21:22:00 +0000</pubDate>
		<dc:creator>Kellan</dc:creator>
				<category><![CDATA[Aside]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[magpie]]></category>
		<category><![CDATA[rss]]></category>

		<guid isPermaLink="false">http://lm.quxx.info/?p=3242</guid>
		<description><![CDATA[Anyone got a suggestion for Pete?]]></description>
			<content:encoded><![CDATA[<p>Anyone got a suggestion for Pete? </p>
<p><a href='http://rasterweb.net/raster/2006/02/07/magpierss-rss-for-jsp/'>http://rasterweb.net/raster/2006/02/07/magpierss-rss-for-jsp/</a></p>]]></content:encoded>
			<wfw:commentRss>http://laughingmeme.org/2006/02/07/rasterweb-magpierss-for-jsp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lucene in Action (and Ferret)</title>
		<link>http://laughingmeme.org/2006/01/23/lucene-in-action-and-ferret/</link>
		<comments>http://laughingmeme.org/2006/01/23/lucene-in-action-and-ferret/#comments</comments>
		<pubDate>Mon, 23 Jan 2006 21:08:00 +0000</pubDate>
		<dc:creator>Kellan</dc:creator>
				<category><![CDATA[books]]></category>
		<category><![CDATA[ferret]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[lucene]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[search]]></category>

		<guid isPermaLink="false">http://lm.quxx.info/?p=3208</guid>
		<description><![CDATA[I&#8217;ll admit I&#8217;m a freak, but I find a well written programming book as gripping as a well written novel, and have been known to sit down and read them cover to cover. (PofEAA was a page turner!) I&#8217;m about a third of the way through Lucene in Action, and it&#8217;s excellent: easy to read, [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.manning.com/assets/products/hatcher2/hatcher2_cover150.jpg" align="right" style="padding: 10px;" />
I&#8217;ll admit I&#8217;m a freak, but I find a well written programming book as gripping as a well written novel, and have been known to sit down and read them cover to cover. (<a href="http://www.martinfowler.com/eaaCatalog/">PofEAA</a> was a page turner!)  I&#8217;m about a third of the way through <a href="http://lucenebook.com">Lucene in Action</a>, and it&#8217;s excellent: easy to read, compelling examples, deep insight, generally good stuff.  A good tech book leaves your mind percolating with the all cool new things you can do with your new knowledge, and LiA is that kind of book.</p>

<p>I&#8217;m reading it in the contexts of <a href="http://ferret.davebalmain.com/">Ferret</a> and while there are some minor API differences  (no <code>Hits</code> class in Ferret but it adds an <code>Index::Index</code> convenience class), for the most part the knowledge is directly applicable.</p>
]]></content:encoded>
			<wfw:commentRss>http://laughingmeme.org/2006/01/23/lucene-in-action-and-ferret/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Caucho adds PHP support to  Resin</title>
		<link>http://laughingmeme.org/2005/12/20/caucho-adds-php-support-to-resin/</link>
		<comments>http://laughingmeme.org/2005/12/20/caucho-adds-php-support-to-resin/#comments</comments>
		<pubDate>Wed, 21 Dec 2005 05:36:00 +0000</pubDate>
		<dc:creator>Kellan</dc:creator>
				<category><![CDATA[Aside]]></category>
		<category><![CDATA[gpl]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://lm.quxx.info/?p=3171</guid>
		<description><![CDATA[and apparently it runs 4x faster using ab and mediawiki to benchmark!]]></description>
			<content:encoded><![CDATA[<p>and apparently it runs 4x faster using ab and mediawiki to benchmark!</p>
<p><a href='http://www.theserverside.com/news/thread.tss?thread_id=38144'>http://www.theserverside.com/news/thread.tss?thread_id=38144</a></p>]]></content:encoded>
			<wfw:commentRss>http://laughingmeme.org/2005/12/20/caucho-adds-php-support-to-resin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>rc3.org: Ruby the gateway drug&#8230;. for Java</title>
		<link>http://laughingmeme.org/2005/08/19/rc3org-ruby-the-gateway-drug-for-java/</link>
		<comments>http://laughingmeme.org/2005/08/19/rc3org-ruby-the-gateway-drug-for-java/#comments</comments>
		<pubDate>Fri, 19 Aug 2005 21:21:03 +0000</pubDate>
		<dc:creator>Kellan</dc:creator>
				<category><![CDATA[Aside]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[django]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://lm.quxx.info/?p=2988</guid>
		<description><![CDATA[I tend to think life is too short to use compiled languages, but Rafe is absolutely correct when he says Rails (and Django) is a port of the J2EE web stack state of the art, and people should acknowledge that heritage.]]></description>
			<content:encoded><![CDATA[<p>I tend to think life is too short to use compiled languages, but Rafe is absolutely correct when he says Rails (and Django) is a port of the J2EE web stack state of the art, and people should acknowledge that heritage.</p>
<p><a href='http://rc3.org/2005/08/ruby_the_gateway_drug.php'>http://rc3.org/2005/08/ruby_the_gateway_drug.php</a></p>]]></content:encoded>
			<wfw:commentRss>http://laughingmeme.org/2005/08/19/rc3org-ruby-the-gateway-drug-for-java/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why Web Programming Matters Most (in Language adoption)</title>
		<link>http://laughingmeme.org/2005/03/29/why-web-programming-matters-most-in-language-adoption/</link>
		<comments>http://laughingmeme.org/2005/03/29/why-web-programming-matters-most-in-language-adoption/#comments</comments>
		<pubDate>Tue, 29 Mar 2005 16:02:53 +0000</pubDate>
		<dc:creator>Kellan</dc:creator>
				<category><![CDATA[Aside]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://lm.quxx.info/?p=2886</guid>
		<description><![CDATA[I&#8217;ve been saying this for years, but Ian says it well.]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been saying this for years, but Ian says it well.</p>
<p><a href='http://blog.ianbicking.org/why-web-programming-matters-most.html'>http://blog.ianbicking.org/why-web-programming-matters-most.html</a></p>]]></content:encoded>
			<wfw:commentRss>http://laughingmeme.org/2005/03/29/why-web-programming-matters-most-in-language-adoption/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Doug Cutting on configuring distributed Lucene for Technorati</title>
		<link>http://laughingmeme.org/2005/03/16/doug-cutting-on-configuring-distributed-lucene-for-technorati/</link>
		<comments>http://laughingmeme.org/2005/03/16/doug-cutting-on-configuring-distributed-lucene-for-technorati/#comments</comments>
		<pubDate>Wed, 16 Mar 2005 19:12:51 +0000</pubDate>
		<dc:creator>Kellan</dc:creator>
				<category><![CDATA[Aside]]></category>
		<category><![CDATA[distributed]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[lucene]]></category>
		<category><![CDATA[search]]></category>
		<category><![CDATA[technorati]]></category>

		<guid isPermaLink="false">http://lm.quxx.info/?p=2865</guid>
		<description><![CDATA[Why do I feel like shouting &#8216;Bingo!&#8217;]]></description>
			<content:encoded><![CDATA[<p>Why do I feel like shouting &#8216;Bingo!&#8217;</p>
<p><a href='http://www.mail-archive.com/lucene-user@jakarta.apache.org/msg12709.html'>http://www.mail-archive.com/lucene-user@jakarta.apache.org/msg12709.html</a></p>]]></content:encoded>
			<wfw:commentRss>http://laughingmeme.org/2005/03/16/doug-cutting-on-configuring-distributed-lucene-for-technorati/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Oooh, someone got a grant to write Ruby Lucene bindings.</title>
		<link>http://laughingmeme.org/2005/03/11/oooh-someone-got-a-grant-to-write-ruby-lucene-bindings/</link>
		<comments>http://laughingmeme.org/2005/03/11/oooh-someone-got-a-grant-to-write-ruby-lucene-bindings/#comments</comments>
		<pubDate>Sat, 12 Mar 2005 01:56:15 +0000</pubDate>
		<dc:creator>Kellan</dc:creator>
				<category><![CDATA[Aside]]></category>
		<category><![CDATA[fulltext]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[lucene]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[search]]></category>

		<guid isPermaLink="false">http://lm.quxx.info/?p=2859</guid>
		<description><![CDATA[Via Swig and GCJ. Too bad the CLucene library doesn&#8217;t have more momentum.]]></description>
			<content:encoded><![CDATA[<p>Via Swig and GCJ.  Too bad the CLucene library doesn&#8217;t have more momentum.</p>
<p><a href='http://groups-beta.google.com/group/comp.lang.ruby/browse_thread/thread/35c2f61d29e94550/28b32a50948920ba#28b32a50948920ba'>http://groups-beta.google.com/group/comp.lang.ruby/browse_thread/thread/35c2f61d29e94550/28b32a50948920ba#28b32a50948920ba</a></p>]]></content:encoded>
			<wfw:commentRss>http://laughingmeme.org/2005/03/11/oooh-someone-got-a-grant-to-write-ruby-lucene-bindings/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Bruce Eckel likes PHP</title>
		<link>http://laughingmeme.org/2005/02/22/bruce-eckel-likes-php/</link>
		<comments>http://laughingmeme.org/2005/02/22/bruce-eckel-likes-php/#comments</comments>
		<pubDate>Wed, 23 Feb 2005 00:16:02 +0000</pubDate>
		<dc:creator>Kellan</dc:creator>
				<category><![CDATA[Aside]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://lm.quxx.info/?p=2831</guid>
		<description><![CDATA[PHP has its good points, but &#8216;consistent and well thought-out&#8217; makes me think that Bruce hasn&#8217;t actually used the language]]></description>
			<content:encoded><![CDATA[<p>PHP has its good points, but &#8216;consistent and well thought-out&#8217; makes me think that Bruce hasn&#8217;t actually used the language</p>
<p><a href='http://rc3.org/cgi-bin/less.pl?arg=6795'>http://rc3.org/cgi-bin/less.pl?arg=6795</a></p>]]></content:encoded>
			<wfw:commentRss>http://laughingmeme.org/2005/02/22/bruce-eckel-likes-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Python Is Not Java</title>
		<link>http://laughingmeme.org/2004/12/03/python-is-not-java/</link>
		<comments>http://laughingmeme.org/2004/12/03/python-is-not-java/#comments</comments>
		<pubDate>Sat, 04 Dec 2004 05:29:57 +0000</pubDate>
		<dc:creator>Kellan</dc:creator>
				<category><![CDATA[Aside]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://lm.quxx.info/?p=2675</guid>
		<description><![CDATA[Very well done write up on the difference of coding in Java vs a scripting language]]></description>
			<content:encoded><![CDATA[<p>Very well done write up on the difference of coding in Java vs a scripting language</p>
<p><a href='http://dirtsimple.org/2004/12/python-is-not-java.html'>http://dirtsimple.org/2004/12/python-is-not-java.html</a></p>]]></content:encoded>
			<wfw:commentRss>http://laughingmeme.org/2004/12/03/python-is-not-java/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Java 1.5 on Debian</title>
		<link>http://laughingmeme.org/2004/10/02/java-15-on-debian/</link>
		<comments>http://laughingmeme.org/2004/10/02/java-15-on-debian/#comments</comments>
		<pubDate>Sat, 02 Oct 2004 12:02:21 +0000</pubDate>
		<dc:creator>Kellan</dc:creator>
				<category><![CDATA[Aside]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[java]]></category>

		<guid isPermaLink="false">http://lm.quxx.info/?p=2570</guid>
		<description><![CDATA[Installing most things on Debian is sinfully easy&#8230;Java is an exception]]></description>
			<content:encoded><![CDATA[<p>Installing most things on Debian is sinfully easy&#8230;Java is an exception </p>
<p><a href='http://martinfowler.com/bliki/DebianJava.html'>http://martinfowler.com/bliki/DebianJava.html</a></p>]]></content:encoded>
			<wfw:commentRss>http://laughingmeme.org/2004/10/02/java-15-on-debian/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Writing a Social Content Engine with RDF</title>
		<link>http://laughingmeme.org/2004/09/24/writing-a-social-content-engine-with-rdf/</link>
		<comments>http://laughingmeme.org/2004/09/24/writing-a-social-content-engine-with-rdf/#comments</comments>
		<pubDate>Fri, 24 Sep 2004 22:07:11 +0000</pubDate>
		<dc:creator>Kellan</dc:creator>
				<category><![CDATA[Aside]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[rdf]]></category>
		<category><![CDATA[social]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://lm.quxx.info/?p=2555</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[
<p><a href='http://hook.org/anselm/essays/20040915.htm'>http://hook.org/anselm/essays/20040915.htm</a></p>]]></content:encoded>
			<wfw:commentRss>http://laughingmeme.org/2004/09/24/writing-a-social-content-engine-with-rdf/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>throw new com.thoughtworks.ashcroft. runtime.CantDoThat</title>
		<link>http://laughingmeme.org/2004/08/25/throw-new-comthoughtworksashcroft-runtimecantdothat/</link>
		<comments>http://laughingmeme.org/2004/08/25/throw-new-comthoughtworksashcroft-runtimecantdothat/#comments</comments>
		<pubDate>Wed, 25 Aug 2004 22:11:37 +0000</pubDate>
		<dc:creator>Kellan</dc:creator>
				<category><![CDATA[Aside]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[funny]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://lm.quxx.info/?p=2489</guid>
		<description><![CDATA[Ashcroft &#8211; the extremely conservative continous integration framework]]></description>
			<content:encoded><![CDATA[<p>Ashcroft &#8211; the extremely conservative continous integration framework </p>
<p><a href='http://docs.codehaus.org/display/ASH/Home'>http://docs.codehaus.org/display/ASH/Home</a></p>]]></content:encoded>
			<wfw:commentRss>http://laughingmeme.org/2004/08/25/throw-new-comthoughtworksashcroft-runtimecantdothat/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Java vs. PHP</title>
		<link>http://laughingmeme.org/2004/05/24/java-vs-php/</link>
		<comments>http://laughingmeme.org/2004/05/24/java-vs-php/#comments</comments>
		<pubDate>Mon, 24 May 2004 20:36:48 +0000</pubDate>
		<dc:creator>Kellan</dc:creator>
				<category><![CDATA[Aside]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://lm.quxx.info/?p=2286</guid>
		<description><![CDATA[All languages suck.]]></description>
			<content:encoded><![CDATA[<p>All languages suck.</p>
<p><a href='http://rc3.org/cgi-bin/less.pl?arg=6262'>http://rc3.org/cgi-bin/less.pl?arg=6262</a></p>]]></content:encoded>
			<wfw:commentRss>http://laughingmeme.org/2004/05/24/java-vs-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Resume Driven Development</title>
		<link>http://laughingmeme.org/2004/04/20/resume-driven-development-via/</link>
		<comments>http://laughingmeme.org/2004/04/20/resume-driven-development-via/#comments</comments>
		<pubDate>Tue, 20 Apr 2004 22:54:53 +0000</pubDate>
		<dc:creator>Kellan</dc:creator>
				<category><![CDATA[Aside]]></category>
		<category><![CDATA[buzzword]]></category>
		<category><![CDATA[complexity]]></category>
		<category><![CDATA[j2ee]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[resume]]></category>

		<guid isPermaLink="false">http://lm.quxx.info/?p=2222</guid>
		<description><![CDATA[e.g. a J2EE monstrosity for doing something that a relatively simple set of Perl scripts]]></description>
			<content:encoded><![CDATA[<p>e.g. a J2EE monstrosity for doing something that a relatively simple set of Perl scripts</p>
<p><a href='http://weblogs.java.net/pub/wlg/1214'>http://weblogs.java.net/pub/wlg/1214</a></p>]]></content:encoded>
			<wfw:commentRss>http://laughingmeme.org/2004/04/20/resume-driven-development-via/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>What is James Gosling doing these days? (via</title>
		<link>http://laughingmeme.org/2004/03/19/what-is-james-gosling-doing-these-days-via/</link>
		<comments>http://laughingmeme.org/2004/03/19/what-is-james-gosling-doing-these-days-via/#comments</comments>
		<pubDate>Fri, 19 Mar 2004 21:26:00 +0000</pubDate>
		<dc:creator>Kellan</dc:creator>
				<category><![CDATA[Aside]]></category>
		<category><![CDATA[aggregation]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[rss]]></category>

		<guid isPermaLink="false">http://lm.quxx.info/?p=2155</guid>
		<description><![CDATA[Writing an RSS aggregator of course!]]></description>
			<content:encoded><![CDATA[<p>Writing an RSS aggregator of course!</p>
<p><a href='http://today.java.net/jag/page7.html'>http://today.java.net/jag/page7.html</a></p>]]></content:encoded>
			<wfw:commentRss>http://laughingmeme.org/2004/03/19/what-is-james-gosling-doing-these-days-via/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Grooving Up Slowly</title>
		<link>http://laughingmeme.org/2004/03/17/grooving-up-slowly/</link>
		<comments>http://laughingmeme.org/2004/03/17/grooving-up-slowly/#comments</comments>
		<pubDate>Wed, 17 Mar 2004 19:24:00 +0000</pubDate>
		<dc:creator>Kellan</dc:creator>
				<category><![CDATA[agile]]></category>
		<category><![CDATA[boston]]></category>
		<category><![CDATA[ice.cream]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[patterns]]></category>
		<category><![CDATA[seattle]]></category>
		<category><![CDATA[ted.leung]]></category>

		<guid isPermaLink="false">http://lm.quxx.info/?p=768</guid>
		<description><![CDATA[I finally made it a SeaJUG meeting last night, Ted Leung speaking on Groovy proved to be an irresistible draw (and I was in town for once). This was also my first venture across the 520 bridge, into deepest, darkest suburbia (Bellevue). Wilhelm and Ted took pity on my carless state, and were great company [...]]]></description>
			<content:encoded><![CDATA[<p>I finally made it a <a href="http://www.seajug.org/">SeaJUG</a> meeting last night, <a href="http://www.sauria.com/blog/">Ted Leung</a> speaking on <a href="http://groovy.codehaus.org/">Groovy</a> proved to be an irresistible draw (and I was in town for once).  This was also my first venture across the 520 bridge, into deepest, darkest suburbia (Bellevue).  Wilhelm and Ted took pity on my carless state, and were great company</p>

<p><a href="http://www.seajug.org/">SeaJUG</a> is a great group; smart, friendly, and intellectually curious.  There are several vibrant subgroups including a Scheme group, a GoF study group, a regular language agnostic pair programming night, and a new Eclipse group (first meeting is first Tuesday in April, and I&#8217;ll be out of town, bah).  I can also see that it would be an intimidating group to present to, especially bullshit, and this was confirmed by quiet evil laughter describing their last vendor visit.
<h3>Groovy</h3></p>

<p><a href="http://groovy.codehaus.org/">Groovy</a> has fascinated me since I first heard of it.  I&#8217;m a dedicated &#8220;scripting&#8221; language hacker.  Life is too short, and there are too many interesting problems to solve to slave away in the service of the compiler.  And yet I&#8217;ve definitely felt the pull for more rigor and structure at times (generally when I was having to work with someone else&#8217;s code).  Much of Perl works by consensus, I agree to call a method just so, and you agree not to muck with my internal variables (or the symbol table).  Java works by locks (and shotguns, according to Larry Wall).  Groovy provides a gradient, I can be as dynamic, and loose, and experimental as I want, or as locked down and precise, and I can change my mind, over time, about which way to go.</p>

<p>Groovy is a Java compatible, dynamic language, built on the JVM.  You can pare it down to something it will make a Perl programmer pause (no classes, no methods, objects defined at runtime as closures, no semicolons), or add structure, type declarations, and all sorts of baggage all the way up to Java itself.  Code can be run interactively, or can be compiled to Java bytecode.  (one wag even suggested you could write Groovy, compile, and then use a decompiler to get your Java code.  This is not recommended)  </p>

<p>The Groovy developers have done a lot of work adding the syntactic sugar which makes scripting languages fun.  Primitives are auto-boxed, and collections have been instrumented with a variety of useful methods that will make your functional programmers feel right at home.  They&#8217;ve also been building some powerful domain specific constructs for operating on tree structures (XML/<a href="http://ant.apache.org/">Ant</a>/GUI widgets), building web pages (as ugly as PHP on a bad day, should make it popular!), and marshalling data into and out a relational DB.  And lastly they address the other thing life is too short for, reinventing the wheel (especially as they seem to get more square each time).  Because Groovy is compiling down to Java bytecode you have total, native access to many many high quality Java libraries.</p>

<p>See <a href="http://www.sauria.com/presentations/Groovy%20SeaJUG%202004-03.ppt.pdf">Ted&#8217;s slides</a>. (understanding of closures is <em>highly</em> recommended)</p>

<h3>Would I Use It?</h3>

<p>Not this month.  Not next month either.  The syntax is still somewhat influx (if you&#8217;re a language hacker, that makes now a great time to get involved), and there were part which seemed either undefined or ambigous never a good thing in a programming language.  There also feels like there has been a lack of discipline, too many special cases in the syntax, and a sense that the designers are kids in a candy shop running amok borrowing syntax from all their favorite languages.  Still I&#8217;m excited about it.  Its about 6 months old.  I think 6 more months will tell us how successful its going to be.</p>

<h3>Ted</h3>

<p>Ted is as smart, interesting, and informed as you would expect him to be reading his <a href="http://www.sauria.com/blog">blog</a>.  He kept his cool in the face of <a href="http://www.sauria.com/blog/2004/03/16#864">hardware trouble</a>, and a large contingent of the audience who weren&#8217;t buying it.  As Ted said, &#8220;to fully buy into Groovy, you have to buy into some assumptions about how software should be developed, which is philosophical bordering on religious.&#8221;  He is talking about agile software development, which I occasionally forget still has its detractors, and its unintiated.</p>

<h3>Rabble Rousing</h3>

<p>He ended by addressing the fact that much of programming is mechanical, and that far from happening accidentally, or improving over time this trend is getting worse.  With top heavy, byzantine architectures like EJB, or the ever deepening W3C XML stack, you see the work of the large technology vendors who are interested in keeping entry difficult, work rote (and therefore cheaply offshore-able), and profits up.  As he ended with &#8220;the big corporations are going to solve this for you, we need to solve this for ourselves&#8221; I had a brief moment of cognitive dissonance as my worlds collided and I couldn&#8217;t remember if I was at an anti-globalization meeting, or a software users group.  This is the sort of stuff people should at least bring up at the next <a href="http://cats.protest.net">CATS</a> meeting.</p>

<h3>Chandler</h3>

<p>It was fascinating to get an inside update on <a href="http://www.osafoundation.org/Chandler_Compelling_Vision.htm">Chandler</a>, a project I&#8217;ve watched with fascination since its early days. (Thankfully I&#8217;ve got a job I&#8217;m very happy with, and so I didn&#8217;t have to embarrass myself by pumping him for contacts as the <a href="http://www.osafoundation.org/">OSAF</a>.)  I&#8217;m looking forward to Mitch Kapor&#8217;s keynote at next week&#8217;s <a href="http://www.python.org/pycon/dc2004/">PyCon</a> (not that I&#8217;ll be attending)</p>

<h3>Mixins</h3>

<p>And he addressed the problem I&#8217;ve always had with mixins. (recently reinvented by the AOP crowd apparently as &#8220;static cross cutting&#8221;)  You see when I hear mixins the first thing I think about (or the second, after I think about too many late nights struggling with Mailman) is ice cream from <a href="http://www.herrells.com/">Herrell&#8217;s</a>.  Herrell&#8217;s is a Boston (and Northampton) ice cream shop that will pound your ice cream out flat, mix all sorts of wonderful things into it, and roll it up again.  Turns out that that <b>is</b> the origin of the term.  Back when it was Steve&#8217;s and the MIT hackers were working on the original Lisp machine.  Wow.</p>
]]></content:encoded>
			<wfw:commentRss>http://laughingmeme.org/2004/03/17/grooving-up-slowly/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

