<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>Java</title>
        <link>http://geekswithblogs.net/flanakin/category/110.aspx</link>
        <description>Java</description>
        <language>en-US</language>
        <copyright>Michael Flanakin</copyright>
        <managingEditor>public@michaelflanakin.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <item>
            <title>Google Brings AJAX to Java</title>
            <link>http://geekswithblogs.net/flanakin/archive/2006/05/17/78689.aspx</link>
            <description>&lt;p&gt;
As &lt;a href="http://googleblog.blogspot.com/2006/05/making-ajax-development-easier.html"&gt;Google announced&lt;/a&gt;, they will be releasing &lt;a href="http://code.google.com/webtoolkit/"&gt;Google Web Toolkit&lt;/a&gt; to support building AJAX-ian web applications with Java. I just wish it were available for .NET as well. Not that I don't have faith in &lt;a title="" href="http://www.microsoft.com" &gt;Microsoft&lt;/a&gt;'s &lt;a href="http://atlas.asp.net"&gt;Atlas&lt;/a&gt;, but I would like to see and play with &lt;a title="" href="http://www.google.com" &gt;Google&lt;/a&gt;'s approach.
&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=78689"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=78689" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/flanakin/aggbug/78689.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Michael Flanakin</dc:creator>
            <guid>http://geekswithblogs.net/flanakin/archive/2006/05/17/78689.aspx</guid>
            <pubDate>Wed, 17 May 2006 08:50:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/flanakin/comments/78689.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/flanakin/archive/2006/05/17/78689.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/flanakin/comments/commentRss/78689.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/flanakin/services/trackbacks/78689.aspx</trackback:ping>
        </item>
        <item>
            <title>Java and C#</title>
            <link>http://geekswithblogs.net/flanakin/archive/2005/08/10/49790.aspx</link>
            <description>&lt;p&gt;
I thought &lt;a href="http://gregluck.com/blog/archives/2005/08/oscon2005_ruby.html"&gt;this&lt;/a&gt; was an interesting outlook on Java and C# - like I care about Ruby. Anyway, I'm surprised there wasn't more on C# at OSCON2005. I've heard that C# has a pretty good following of Linux users. Granted, this was just something I heard from a hardcore Linux person, so I have no idea how much support it has. Of course, this is all because of Mono.
&lt;/p&gt;
&lt;p&gt;
Greg talks about how Java 5.0 (1.5) and 6.0 (1.6) features will help Java surpass C# current capabilities. Well, he's right. That kind of brings one thing I've always worried about to mind: will .NET be able to keep up? Microsoft is always good in the heat of battle, so I'm sure they'll do a good job; but speculation is exactly that. .NET 2.0 is coming soon, but when will 2.1 be around? If .NET releases are continually tied to other product releases, we may be hurting for features as Java spits out releases with smaller feature changes quicker. The 2.0 release will no doubt give us a great advantage over 1.1, but wouldn't it have been better to have gradual improvements to get us here? Maybe it's just me.
&lt;/p&gt;
&lt;p&gt;
I obviously think some things should've waited until the 2.0 release, but I'm sure there could've been a number of features added to 1.2, 1.3, and 1.4 releases. Either way, 2 1/2 years later, we finally get an upgrade - more significant than any Java release since it's move to Java 2. Let's just hope they keep coming...and a little sooner.
&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=49790"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=49790" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/flanakin/aggbug/49790.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Michael Flanakin</dc:creator>
            <guid>http://geekswithblogs.net/flanakin/archive/2005/08/10/49790.aspx</guid>
            <pubDate>Wed, 10 Aug 2005 08:42:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/flanakin/comments/49790.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/flanakin/archive/2005/08/10/49790.aspx#feedback</comments>
            <slash:comments>6</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/flanakin/comments/commentRss/49790.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/flanakin/services/trackbacks/49790.aspx</trackback:ping>
        </item>
        <item>
            <title>IBM Commissions IBM vs. Microsoft Tools Review</title>
            <link>http://geekswithblogs.net/flanakin/archive/2005/08/01/48790.aspx</link>
            <description>I probably shouldn't even be propagating &lt;a href="http://www.branhamgroup.com/article.php?cat=general&amp;id=38"&gt;this crap&lt;/a&gt;, but I thought it was a ridiculous attempt to make the .NET plastform look worse than Java. IBM hired someone to evaluate IBM and &lt;a title="" href="http://www.microsoft.com" &gt;Microsoft&lt;/a&gt; tools for productivity. I have no problem with the fact that IBM hired the evaluators. What I have a problem with is the fact that the tools they chose to implement (and not implement, for that matter) don't give a true picture to the appropriate level of effort for the Microsoft side of the picture. Two examples are that (a) BizTalk wasn't needed; and, (b) SharePoint Services could've been used for portal functionality. I have to say that this is a horribly lopsided evaluation. I just hope others realize it before taking it to heart.&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=48790"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=48790" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/flanakin/aggbug/48790.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Michael Flanakin</dc:creator>
            <guid>http://geekswithblogs.net/flanakin/archive/2005/08/01/48790.aspx</guid>
            <pubDate>Mon, 01 Aug 2005 11:35:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/flanakin/comments/48790.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/flanakin/archive/2005/08/01/48790.aspx#feedback</comments>
            <slash:comments>3</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/flanakin/comments/commentRss/48790.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/flanakin/services/trackbacks/48790.aspx</trackback:ping>
        </item>
        <item>
            <title>null == annoyance</title>
            <link>http://geekswithblogs.net/flanakin/archive/2004/08/17/9827.aspx</link>
            <description>&lt;P&gt;What the hell is up with people putting the value you're checking for first in a comparison expression? I freakin' hate that!!! Is there some sort of advantage? Arrrgh...&lt;/P&gt;
&lt;P&gt;Maybe it's just me, but I think, &amp;#8220;is &amp;lt;my variable&amp;gt; equal to &amp;lt;some value&amp;gt;?&amp;#8221; That just makes sense to me. For instance, &amp;#8220;Is your name Michael?&amp;#8221; sounds so much better than, &amp;#8220;Is Michael your name?&amp;#8221; Granted, they both make grammatical sense. Maybe I'm just stuck in a latin-based society that reads (and thinks) left-to-right, but why the hell do people insist on writing expressions backwards (in my opinion, at least)?&lt;/P&gt;
&lt;P&gt;If someone could point out a good reason (or ten) as to why this approach is preferred, I would appreciate it. I get stuck in my ways sometimes, but that's only because my way is the &lt;EM&gt;best&lt;/EM&gt; way :-) ...well, until someone convinces me otherwise - and then, I just get a new way. So, in the end, my way is the best way, again. You gotta love my logic...well, I do, anyway.&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=9827"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=9827" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/flanakin/aggbug/9827.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Michael Flanakin</dc:creator>
            <guid>http://geekswithblogs.net/flanakin/archive/2004/08/17/9827.aspx</guid>
            <pubDate>Tue, 17 Aug 2004 14:59:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/flanakin/comments/9827.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/flanakin/archive/2004/08/17/9827.aspx#feedback</comments>
            <slash:comments>7</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/flanakin/comments/commentRss/9827.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/flanakin/services/trackbacks/9827.aspx</trackback:ping>
        </item>
        <item>
            <title>.NET: The American Choice</title>
            <link>http://geekswithblogs.net/flanakin/archive/2004/07/30/9130.aspx</link>
            <description>&lt;P&gt;Here's something to chew on...&lt;/P&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P&gt;&lt;EM&gt;...more-than 50% of programmers in the US use .NET as their primary development framework.&lt;/EM&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;I don't know the date of this, but it came out of a &lt;A href="http://www.forrester.com"&gt;Forrester&lt;/A&gt; report, according to &lt;a title="" href="http://www.sdmagazine.com" &gt;Software Development Magazine&lt;/a&gt;.&lt;/P&gt;
&lt;P&gt;...Ya know, maybe that was a bad title. Oh well.&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=9130"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=9130" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/flanakin/aggbug/9130.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Michael Flanakin</dc:creator>
            <guid>http://geekswithblogs.net/flanakin/archive/2004/07/30/9130.aspx</guid>
            <pubDate>Sat, 31 Jul 2004 03:49:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/flanakin/comments/9130.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/flanakin/archive/2004/07/30/9130.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/flanakin/comments/commentRss/9130.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/flanakin/services/trackbacks/9130.aspx</trackback:ping>
        </item>
        <item>
            <title>Java...Still Segmented</title>
            <link>http://geekswithblogs.net/flanakin/archive/2004/07/28/8966.aspx</link>
            <description>&lt;P&gt;As I'm sure you all know, Java was born to provide a single development platform for any hardware system. The dreams were idealistic, yet within reach, but the implementation severly lacks. This is all old news, however. &lt;/P&gt;
&lt;P&gt;I've always found it interesting that each J2EE application server provides a different set of&amp;nbsp;extensions to the base J2EE class library. This just shows the inadequacies of the platform and the lack of support &lt;A href="http://www.sun.com"&gt;Sun&lt;/A&gt; and the &lt;A href="http://www.jcp.org/"&gt;JCP&lt;/A&gt; provide.&amp;nbsp;The question is,&amp;nbsp;with the recent release of &lt;A href="http://www.mono-project.com/"&gt;Mono&lt;/A&gt;, will there be a need to extend the .NET framework to provide functionality that customers need, but &lt;A href="http://www.microsoft.com"&gt;Microsoft&lt;/A&gt; has yet to provide? Who knows. Only time will tell.&lt;/P&gt;
&lt;P&gt;For&amp;nbsp;now, though, the Java community continues to move in different directions. &lt;A href="http://www.bea.com"&gt;BEA&lt;/A&gt; is working on an application framework&amp;nbsp;project with the &lt;A href="http://www.apache.org/"&gt;Apache Software Foundation&lt;/A&gt; that can only be used with the BEA WebLogic app server. That makes me kind of wonder why ASF is supporting it, but oh well. Another question arises, though: How will Sun react to this effort? Will they support it, compete with it, or ignore it? Based on the past, I think Sun will try to compete with it. Sun likes to show the Java community that the platform is their baby and they are in control.&lt;/P&gt;
&lt;P&gt;We'll see. I can't say that I'm hopeful of the community, but I do hope to see some good things come out of Java. The better Java gets, the better .NET will get. And, we all know who wins when Microsoft gets into a pissing competition...us! :-)&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=8966"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=8966" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/flanakin/aggbug/8966.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Michael Flanakin</dc:creator>
            <guid>http://geekswithblogs.net/flanakin/archive/2004/07/28/8966.aspx</guid>
            <pubDate>Wed, 28 Jul 2004 20:10:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/flanakin/comments/8966.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/flanakin/archive/2004/07/28/8966.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/flanakin/comments/commentRss/8966.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/flanakin/services/trackbacks/8966.aspx</trackback:ping>
        </item>
        <item>
            <title>Static Imports for Java</title>
            <link>http://geekswithblogs.net/flanakin/archive/2004/07/23/8777.aspx</link>
            <description>&lt;P&gt;Coming up in the next release of Java, J2SE 5 (aka J2SE 1.5), there will be a new feature: static imports. I thought this was kind of interesting. I'll give an example, but before I do, let me explain something... Like C#'s &lt;CODE&gt;using&lt;/CODE&gt; and VB's &lt;CODE&gt;Import&lt;/CODE&gt; statements, Java has a similar &lt;CODE&gt;import&lt;/CODE&gt; statement; however, Java's &lt;CODE&gt;import&lt;/CODE&gt; statement can [but does not have to] specify a class name instead of a namespace (or package, in Java terms). I don't really know what the benefit of this is, but it's possible. I guess one thing is that it lets you see at a glance what external classes are being used. Beyond that, however, I don't really know of any reason to do it that way. Here's an example:&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;ServiceLocations.java&lt;/STRONG&gt;&lt;BR&gt;&lt;PRE&gt;package com.indigo.examples;
public class IfUtil {
    public static object decode(object ifThis, object equalsThis, object returnThis)
    { ... }

    public static object nullValue(object ifNull, object returnThis)
    { ... }
}&lt;/PRE&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;This class provides generic conditional logic capabilities. The &lt;CODE&gt;decode()&lt;/CODE&gt; method takes in two values, compares them, and if they are equal, returns the third value; if not, the first (&lt;CODE&gt;ifThis&lt;/CODE&gt;) value is returned. There are usually overloads for this to provide more extensive options, but I'll not worry about that right now. The &lt;CODE&gt;nullValue()&lt;/CODE&gt; method checks to see if a value is &lt;CODE&gt;null&lt;/CODE&gt; and if it is, returns the second value; otherwise, the original value is returned.&lt;/P&gt;
&lt;P&gt;And, here's the follow-on implementation of the static import:&lt;/P&gt;
&lt;P&gt;&lt;B&gt;Foo.java&lt;/B&gt;&lt;BR&gt;&lt;PRE&gt;import static com.indigo.examples.IfUtil;
public class Foo {
    public static void main(String[] args) {
        // outputs: 1
        System.out.println( decode(1, 2, 3) );

        // outputs: 3
        System.out.println( decode(1, 1, 3) );

        // outputs: "No value specified"
        System.out.println( nullValue(null, "No value specified") );
    }
}&lt;/PRE&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;So, I'm sure you can see how this is trying to add functions (no, not "methods") back to Java. They are "functions" because "methods" are actions taken on or by instantiated objects.&lt;/P&gt;
&lt;P&gt;And, more to why I started this post, I'd like to see something like this in .NET (or, at least C#). Assuming a similar &lt;CODE&gt;IfUtil&lt;/CODE&gt; class in C#, the import could look something like this:&lt;/P&gt;
&lt;P&gt;&lt;B&gt;Foo.cs&lt;/B&gt;&lt;BR&gt;&lt;PRE&gt;using static Indigo.Examples.IfUtil;
public class Foo
{
    public static void main(string[] args)
    {
        // outputs: 1
        MessageBox.Show( Decode(1, 2, 3) );

        // outputs: 3
        MessageBox.Show( Decode(1, 1, 3) );

        // outputs: "No value specified"
        MessageBox.Show( NullValue(null, "No value specified") );
    }
}&lt;/PRE&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;I think that this would be a nice way to implement static utility methods that some people seem to be missing (&lt;A href="http://geekswithblogs.net/flanakin/archive/2004/02/16/2161.aspx"&gt;1&lt;/A&gt;, &lt;A href="http://www.sdtimes.com/cols/winwatch_095.htm"&gt;2&lt;/A&gt;). Personally, I don't know how much I'd use it (except for in examples like the above). The only problem is that, as a new programmer maintaining this code, you may not realize that &lt;CODE&gt;Decode()&lt;/CODE&gt; belongs to the &lt;CODE&gt;IfUtil&lt;/CODE&gt; class. And, to make matters worse, what happens if you have 3 or 4 static imports? That will just make the whole thing confusing as hell. The only solution I have to that is to register specific methods. Perhaps one of the following:&lt;/P&gt;
&lt;P&gt;&lt;PRE&gt;// specify an exact method instance
using static Indigo.Examples.IfUtil.Decode(object, object, object);

// specify all method instances
using static Indigo.Examples.IfUtil.Decode(*);

// specify all static members
using static Indigo.Examples.IfUtil.*;&lt;/PRE&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;This may or may not ease the readability and maintainability of it, but for those who are begging for similar functionality, it could be an option.&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=8777"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=8777" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/flanakin/aggbug/8777.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Michael Flanakin</dc:creator>
            <guid>http://geekswithblogs.net/flanakin/archive/2004/07/23/8777.aspx</guid>
            <pubDate>Fri, 23 Jul 2004 09:28:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/flanakin/comments/8777.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/flanakin/archive/2004/07/23/8777.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/flanakin/comments/commentRss/8777.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/flanakin/services/trackbacks/8777.aspx</trackback:ping>
        </item>
        <item>
            <title>Microsoft Support for Eclipse</title>
            <link>http://geekswithblogs.net/flanakin/archive/2004/07/12/8275.aspx</link>
            <description>&lt;P&gt;Once again, I'm late, but it looks like the &lt;a title="Eclipse Foundation" href="http://www.eclipse.org" target="_blank"&gt;Eclipse Foundation&lt;/a&gt; has &lt;A href="http://www.eweek.com/article2/0,1759,1615143,00.asp"&gt;extended an invitation&lt;/A&gt; to &lt;a title="" href="http://www.microsoft.com" target="_blank"&gt;Microsoft&lt;/a&gt; to join its efforts. I guess they think their new directions on web services and SOAs might be of interest to Microsoft, since they're the market leader, right now.&lt;/P&gt;
&lt;P&gt;Personally, I don't expect Microsoft to support this. First off, Eclipse has a long way to go to compete with Visual Studio. Secondly, do you seriously think Microsoft will support development for a product on a platform that it is a direct competitor for? Would anybody? I know I wouldn't. I mean, if there was some sort of integration that .NET developers, or the .NET platform might get out of it, then that's one thing. Otherwise, it just doesn't make sense.&lt;/P&gt;
&lt;P&gt;One thing being looked at is whether or not to add a platform-neutral layer to its Eclipse Web Tools project. I don't know if this is in addition to a Java approach or not, however. I would hope that this wouldn't be a duplicate. That would be more code to update, which just doesn't make much sense. I'm sure each of you have tried to maintain two similar code bits (small or large) at some point in time. It's a pain. I just see the open source community not supporting that for long.&lt;/P&gt;
&lt;P&gt;Anyway, above all of that, Microsoft has just released its &lt;A href="http://msdn.microsoft.com/express"&gt;Express line of products&lt;/A&gt;. They are all in Beta, but I believe these will all be free tools. So, why would Microsoft support a competitor whose tool would require new code, especially when it is so far behind Visual Studio? Life will only get better when VS 2005 is release. (By the way, the Express line will not include Team System.)&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=8275"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=8275" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/flanakin/aggbug/8275.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Michael Flanakin</dc:creator>
            <guid>http://geekswithblogs.net/flanakin/archive/2004/07/12/8275.aspx</guid>
            <pubDate>Mon, 12 Jul 2004 17:27:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/flanakin/comments/8275.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/flanakin/archive/2004/07/12/8275.aspx#feedback</comments>
            <slash:comments>9</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/flanakin/comments/commentRss/8275.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/flanakin/services/trackbacks/8275.aspx</trackback:ping>
        </item>
        <item>
            <title>Portability: Java vs. .NET</title>
            <link>http://geekswithblogs.net/flanakin/archive/2004/03/26/3393.aspx</link>
            <description>&lt;P&gt;I recently found out that my office did a code review for a tool that may be maintained by my organization. Now, the tool has an odd choice of technology implementations, so I'm not sure who decided on everything. But, essentially, there's a .NET web application that uses Flash for some reporting UI components which talk to Java web services. And, the .NET app also talks directly to the same database that the Java web services talk to for additional admin functionality. (I hope I explained that clearly)&lt;/P&gt;
&lt;P&gt;Anyway, I am the only person in my office that is pro-.NET; everyone else supports/backs J2EE. But, this project came to my office (without me knowing, which ticked me off) and a code review was performed. The person who did it is familiar with .NET, but I'm not sure to what extent. Anyway, the report was fine. There were a few vague areas that I had questions about, but overall, it was sound and I'd agree. The problem came when I saw the source code findings. They used a set of quality attributes that are defined in the &lt;A href="http://www.iso.org/iso/en/StandardsQueryFormHandler.StandardsQueryFormHandler?scope=CATALOGUE&amp;amp;sortOrder=ISO&amp;amp;committee=ALL&amp;amp;isoDocType=ALL&amp;amp;title=true&amp;amp;keyword=9126"&gt;ISO 9126 Software Quality Model&lt;/A&gt;. I haven't seen the code, yet, so I can't say whether or not the ratings (1-5, 1 being poor) are accurate. But, there was one in particular that was an attention-getter: portability.&lt;/P&gt;
&lt;P&gt;The review defines portability as:&lt;/P&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P&gt;&lt;EM&gt;The ability of the source code to be used on various user environments and development environments. Observations generated on portability indicate risks that the software product can't be used on specific user platforms or that the source code can't be used &amp;#8220;as-is&amp;#8221; in specific development environments.&lt;/EM&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P dir=ltr&gt;Now, maybe I'm just trying to argue the 5-to-1 Java vs. .NET rating, or maybe I'm just trying to give more credit to .NET, but when doing a code review, I don't think portability should be considering moving the code to unsupported environments. Basically, I think this should be relative. For instance, if I have a Perl application, how well can I move my code to one or another Perl server? Obviously, I've already chosen Perl, which means that I've accepted the risk of limiting myself to a Perl server. Now, is my code portable between Perl servers? That's the true question.&lt;/P&gt;
&lt;P dir=ltr&gt;In this situation, the Java code got a 5, but I don't know if that means it is completely transferable between any and all&amp;nbsp;other Java app servers, or this means that&amp;nbsp;Java can theoretically run on any platform. One has to question that. They didn't do a full review of all the code, so I doubt they know whether it is completely Java-portable or not.&lt;/P&gt;
&lt;P dir=ltr&gt;Anyway, I'm trying to figure out how best to approach this. It'd be interesting to hear other peoples' opinions on how the portability metric should be applied to code reviews. Perhaps the best answer is to have two sub-categories of portability: one&amp;nbsp;to determine how easily the code can be moved to another OS (considering &lt;EM&gt;all&lt;/EM&gt; OSs), and&amp;nbsp;another to determine how easily code can be moved to another implementation of the&amp;nbsp;technology platform.&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=3393"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=3393" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/flanakin/aggbug/3393.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Michael Flanakin</dc:creator>
            <guid>http://geekswithblogs.net/flanakin/archive/2004/03/26/3393.aspx</guid>
            <pubDate>Fri, 26 Mar 2004 07:54:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/flanakin/comments/3393.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/flanakin/archive/2004/03/26/3393.aspx#feedback</comments>
            <slash:comments>3</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/flanakin/comments/commentRss/3393.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/flanakin/services/trackbacks/3393.aspx</trackback:ping>
        </item>
        <item>
            <title>Table Data Gateway vs. Data Access Object</title>
            <link>http://geekswithblogs.net/flanakin/archive/2004/03/08/2633.aspx</link>
            <description>&lt;P&gt;So, I'm about to create my data access layer... &lt;FONT color=#808080&gt;&lt;EM&gt;*flashback sequence begins*&lt;/EM&gt;&lt;/FONT&gt; ...and I reach for my &lt;A href="http://www.martinfowler.com/books.html#eaa"&gt;Patterns of Enterprise Application Architecture&lt;/A&gt; book. &lt;FONT color=#808080&gt;&lt;EM&gt;*flips the cabinet door open to see an empty space where the book used to be*&lt;/EM&gt;&lt;/FONT&gt; Damn...I left it at home. Well, what am I to do? Let me just move over a couple of books and grab my &lt;A href="http://java.sun.com/blueprints/corej2eepatterns"&gt;Core J2EE Patterns&lt;/A&gt; book (admittedly, still in my to-read stack). I figured this was as good of a time as any to get to know the &lt;A href="http://java.sun.com/blueprints/corej2eepatterns/Patterns/DataAccessObject.html"&gt;DAO pattern&lt;/A&gt; and how it compares to the &lt;A href="http://www.martinfowler.com/eaaCatalog/tableDataGateway.html"&gt;TDG pattern&lt;/A&gt;. So, I read through the pattern description and I get a little excited. I realize that the only difference in the two patterns is the implementation. While I don't like the idea of tacking on &amp;#8220;DAO&amp;#8221; to an object name, I figure I'd make a hybrid of the two. &lt;EM&gt;&lt;FONT color=#808080&gt;*flashback sequence ends*&lt;/FONT&gt;&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;The fundamental differences between these two patterns are pretty much null and void when you consider that pattern implementation is usually different than the prescribed means. Here are a few of the pros (in my opinion)...&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;String constants for insert, select, update, and delete statements 
&lt;UL&gt;
&lt;LI&gt;&lt;EM&gt;Pro&lt;/EM&gt;: One&amp;nbsp;place&amp;nbsp;to update table structure changes 
&lt;LI&gt;&lt;EM&gt;Con&lt;/EM&gt;: In methods, you don't know the order of values that need to be inserted (i.e. in .NET, using the &lt;code&gt;String.Format()&lt;/code&gt; method to insert values)&lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;Method names that match common data access terminology (create, read, update, delete - aka CRUD) and are not specific to any data source 
&lt;UL&gt;
&lt;LI&gt;&lt;EM&gt;Pro&lt;/EM&gt;: Sets a naming standard for the pattern 
&lt;LI&gt;&lt;EM&gt;Con&lt;/EM&gt;: ???&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Some of the things I didn't like about the TDG pattern were that the method names weren't consistent (where did "find" come from?), methods seemed to be based on SQL (use of "insert" method), and the method signatures didn't suggest the use of objects.*&lt;/P&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P&gt;* The use of objects is very beneficial when passing data through tiers because it allows you to abstract away from the exact data that needs to be transferred. For instance, based on the TDG pattern description, consider the insert method: &lt;CODE&gt;PersonGateway.insert(lastName, firstName, numberOfDependants)&lt;/CODE&gt;. These are the three properties of the Person class, but I don't know why&amp;nbsp;a class instance wasn't passed instead - for instance, &lt;CODE&gt;PersonGateway.insert(person)&lt;/CODE&gt;. Now, consider adding an SSN. With the implementation as-is, you would have to add another &lt;CODE&gt;PersonGateway.insert()&lt;/CODE&gt; method allowing for the SSN to be passed. And, what if the SSN is required? Then you would have to deprecate the old insert method. However, if you use a class instance, we only have to change the internals of the insert method - no new or deprecated methods. Obviously, this would be a much cleaner implementation.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Also, let me say that the TDG pattern seems to be a bit higher level. It represents the idea of having an object to act as a gateway between business and data. There isn't a lot of guidance for naming conventions or implementation ideas, which I think is important for identifying/using patterns in existing software. As such, you could say that the DAO pattern is just a lower level TDG pattern.&lt;/P&gt;
&lt;P dir=ltr&gt;You'd think that this would solve all of my problems, but it doesn't. I like the idea of the &lt;A href="http://www.martinfowler.com/eaaCatalog/gateway.html"&gt;Gateway pattern&lt;/A&gt; (not the &lt;U&gt;Table Data&lt;/U&gt; Gateway pattern) because it is abstract and identifies a way to interface with any type of back-end. Because of this, I think it's important to look at intermediaries as gateways. Now, all of my development is usually in .NET, but I sometimes dabble in Java. I would like to have one standard set of patterns to use, but these two conflict. In my mind, the gateway pattern works in all situations; however, it is pretty much standard practice to have a PersonDAO&amp;nbsp;class as opposed to a PersonGateway class. I don't like deviating from the standard, but at the same time, I don't like having two standards for the same practice.&lt;/P&gt;
&lt;P dir=ltr&gt;I've talked to Dan Malks, one of the co-authors of Core J2EE Patterns, and he said that they talked with Martin Fowler when making the book. My question is: Why are there conflicting patterns? And, can we identify the right (read: best) solution so there's only one? I'd like to see the DAO pattern reference the TDG pattern (or maybe just the Gateway pattern). This would identify the relationship and developers would be able to identify each implementation as it was used in projects. This doesn't necessarily get rid of one or the other, which could cause naming conflicts, but at least its a step in the right direction. In my experience, most Java developers don't even know about the TDG or Gateway patterns.&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=2633"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=2633" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/flanakin/aggbug/2633.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Michael Flanakin</dc:creator>
            <guid>http://geekswithblogs.net/flanakin/archive/2004/03/08/2633.aspx</guid>
            <pubDate>Mon, 08 Mar 2004 11:22:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/flanakin/comments/2633.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/flanakin/archive/2004/03/08/2633.aspx#feedback</comments>
            <slash:comments>12</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/flanakin/comments/commentRss/2633.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/flanakin/services/trackbacks/2633.aspx</trackback:ping>
        </item>
    </channel>
</rss>