<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Comments on: That Sucking Sound Is Java Killing Your Soul</title>
	<atom:link href="http://www.matthew-long.com/2008/05/15/that-sucking-sound-is-java-killing-your-soul/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.matthew-long.com/2008/05/15/that-sucking-sound-is-java-killing-your-soul/</link>
	<description>Matt Long's Blog About Programming and Stuff</description>
	<pubDate>Tue, 06 Jan 2009 05:27:22 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.2</generator>
		<item>
		<title>By: perlmunger</title>
		<link>http://www.matthew-long.com/2008/05/15/that-sucking-sound-is-java-killing-your-soul/#comment-80708</link>
		<dc:creator>perlmunger</dc:creator>
		<pubDate>Wed, 24 Sep 2008 15:55:41 +0000</pubDate>
		<guid isPermaLink="false">http://www.matthew-long.com/?p=111#comment-80708</guid>
		<description>@Guurk

Geeze. That was long...

Feel better now? ;-)

p.s. You're never going to buy that place in Breck back with that attitude. ;-) Just write an iPhone app and make your billions. It's really that easy!!! :-D</description>
		<content:encoded><![CDATA[<p>@Guurk</p>
<p>Geeze. That was long&#8230;</p>
<p>Feel better now? ;-)</p>
<p>p.s. You&#8217;re never going to buy that place in Breck back with that attitude. ;-) Just write an iPhone app and make your billions. It&#8217;s really that easy!!! :-D</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: My Code Fu is Strong &#187; Java Doesn&#8217;t Need a Defence</title>
		<link>http://www.matthew-long.com/2008/05/15/that-sucking-sound-is-java-killing-your-soul/#comment-80707</link>
		<dc:creator>My Code Fu is Strong &#187; Java Doesn&#8217;t Need a Defence</dc:creator>
		<pubDate>Wed, 24 Sep 2008 15:52:34 +0000</pubDate>
		<guid isPermaLink="false">http://www.matthew-long.com/?p=111#comment-80707</guid>
		<description>[...] Here&#8217;s the link. [...]</description>
		<content:encoded><![CDATA[<p>[...] Here&#8217;s the link. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: guurk</title>
		<link>http://www.matthew-long.com/2008/05/15/that-sucking-sound-is-java-killing-your-soul/#comment-80706</link>
		<dc:creator>guurk</dc:creator>
		<pubDate>Wed, 24 Sep 2008 15:46:44 +0000</pubDate>
		<guid isPermaLink="false">http://www.matthew-long.com/?p=111#comment-80706</guid>
		<description>Ok... where do I start? Calling me a Java advocate is probably not strong enough a description, as anyone that knows me could verify (ask Matt).

Java is the bomb diggity; strait up, period, and more fun that bulls-eyeing wamp rats in your T-16 back home.

Who doesn't like annotations? Talk about fun! Who doesn't like declarative programming? Show me one and I'll show you someone who doesn't know what it is.

Show me a language that can express good OO patterns better than Java... there isn't one. That's fun? Yes, that's fun. Good design, better, good forced OO practice enforced by language couldn't be more fun. You get to focus on 'business logic', not rehashing the same ol' stuff that's already been done 1000 times by programmers way better than you. (How many lines does it take to parse a text file again?) You don't 'need' a &lt;i&gt;Factory&lt;/i&gt; every time, it just makes it easier to use that library that provides all the functionality that you are using for free.

Fun programming is about sharing. Yes, I get lambasted because I never make money with my side projects, because I contribute back to the community. That's a personal call. But truly, what better language to share concepts, examples, libraries than Java.

GUI design tool? Whoever is focusing on Java as a GUI platform is missing the point of Java. Java has always been and always will be about server frameworks and web applications. That's what it's good at.

Not to say that Java can't be used for GUI (read my-big-fat-greek-client). It can be. But don't equate Java with Swing. That would be like equating Java with Xerces. Xerces, Swing, SWT, Corba, LDAP, JMX, EJB3, Hibernate, AWT, SQL, etc. can be used with Java via built-in or external libraries. What language doesn't have all those kind of things available? Heck, that's part of what makes Java great, and fun. You need to get something done, quickly, well? There's a library that can help.

On the other Cocoa and .NET are almost impossible to separate from their GUI tool sets. It's like comparing a watermelon to an Apple and a moldy strawberry.

I find it odd that Matt makes the argument from the stand point of the development environment. It can be fun to learn a new development system... but if by some chance you don't like it?

What if you don't like Eclipse? Go to JBuilder. JBuilder not you cup of tea? Netbeans. Netbeans not your bag baby? JCode. Just not into the whole mouse usage? Emacs, VI, Visual Slick Edit... all work great with Java.

Want to do .NET development? Don't like Visual Studio? ... um... um... yeah.

Want to do Cocoa development? Don't like X-Code? ... um... um... yeah.

For me, fun is about making something that I think is cool, and maybe, just maybe, something that others find is cool too. However, it's more about the journey than the end product. I've learned that over years of false starts and cool ideas.

Java allows me to express myself, and then reuse the hard work on one dead-end path with my newest, greatest idea. Not even C/C++ allowed me the freedom and security that I have Java. Not even a scripting language can go as many places or explore as many different worlds.

C/C++... play with cross-platform compliers all day long.

.NET... just feel violated because you know you are being raped with a closed source, closed platform, closed library set that costs way to much ( &#62; 0 )

.PHP/Python... great for what they do, but now you want to do data replication and clustering of applications? Find me the libraries that do that.

Cocoa... but I really want to make something that everyone can use. And to be quite honest, "you're so busy finding out if you can make your button wiggle, fade in and out, vibrate, flip end-for-end, you don't stop to think if it &lt;b&gt;should&lt;/b&gt;".</description>
		<content:encoded><![CDATA[<p>Ok&#8230; where do I start? Calling me a Java advocate is probably not strong enough a description, as anyone that knows me could verify (ask Matt).</p>
<p>Java is the bomb diggity; strait up, period, and more fun that bulls-eyeing wamp rats in your T-16 back home.</p>
<p>Who doesn&#8217;t like annotations? Talk about fun! Who doesn&#8217;t like declarative programming? Show me one and I&#8217;ll show you someone who doesn&#8217;t know what it is.</p>
<p>Show me a language that can express good OO patterns better than Java&#8230; there isn&#8217;t one. That&#8217;s fun? Yes, that&#8217;s fun. Good design, better, good forced OO practice enforced by language couldn&#8217;t be more fun. You get to focus on &#8216;business logic&#8217;, not rehashing the same ol&#8217; stuff that&#8217;s already been done 1000 times by programmers way better than you. (How many lines does it take to parse a text file again?) You don&#8217;t &#8216;need&#8217; a <i>Factory</i> every time, it just makes it easier to use that library that provides all the functionality that you are using for free.</p>
<p>Fun programming is about sharing. Yes, I get lambasted because I never make money with my side projects, because I contribute back to the community. That&#8217;s a personal call. But truly, what better language to share concepts, examples, libraries than Java.</p>
<p>GUI design tool? Whoever is focusing on Java as a GUI platform is missing the point of Java. Java has always been and always will be about server frameworks and web applications. That&#8217;s what it&#8217;s good at.</p>
<p>Not to say that Java can&#8217;t be used for GUI (read my-big-fat-greek-client). It can be. But don&#8217;t equate Java with Swing. That would be like equating Java with Xerces. Xerces, Swing, SWT, Corba, LDAP, JMX, EJB3, Hibernate, AWT, SQL, etc. can be used with Java via built-in or external libraries. What language doesn&#8217;t have all those kind of things available? Heck, that&#8217;s part of what makes Java great, and fun. You need to get something done, quickly, well? There&#8217;s a library that can help.</p>
<p>On the other Cocoa and .NET are almost impossible to separate from their GUI tool sets. It&#8217;s like comparing a watermelon to an Apple and a moldy strawberry.</p>
<p>I find it odd that Matt makes the argument from the stand point of the development environment. It can be fun to learn a new development system&#8230; but if by some chance you don&#8217;t like it?</p>
<p>What if you don&#8217;t like Eclipse? Go to JBuilder. JBuilder not you cup of tea? Netbeans. Netbeans not your bag baby? JCode. Just not into the whole mouse usage? Emacs, VI, Visual Slick Edit&#8230; all work great with Java.</p>
<p>Want to do .NET development? Don&#8217;t like Visual Studio? &#8230; um&#8230; um&#8230; yeah.</p>
<p>Want to do Cocoa development? Don&#8217;t like X-Code? &#8230; um&#8230; um&#8230; yeah.</p>
<p>For me, fun is about making something that I think is cool, and maybe, just maybe, something that others find is cool too. However, it&#8217;s more about the journey than the end product. I&#8217;ve learned that over years of false starts and cool ideas.</p>
<p>Java allows me to express myself, and then reuse the hard work on one dead-end path with my newest, greatest idea. Not even C/C++ allowed me the freedom and security that I have Java. Not even a scripting language can go as many places or explore as many different worlds.</p>
<p>C/C++&#8230; play with cross-platform compliers all day long.</p>
<p>.NET&#8230; just feel violated because you know you are being raped with a closed source, closed platform, closed library set that costs way to much ( &gt; 0 )</p>
<p>.PHP/Python&#8230; great for what they do, but now you want to do data replication and clustering of applications? Find me the libraries that do that.</p>
<p>Cocoa&#8230; but I really want to make something that everyone can use. And to be quite honest, &#8220;you&#8217;re so busy finding out if you can make your button wiggle, fade in and out, vibrate, flip end-for-end, you don&#8217;t stop to think if it <b>should</b>&#8220;.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jag</title>
		<link>http://www.matthew-long.com/2008/05/15/that-sucking-sound-is-java-killing-your-soul/#comment-64750</link>
		<dc:creator>jag</dc:creator>
		<pubDate>Fri, 18 Jul 2008 02:09:41 +0000</pubDate>
		<guid isPermaLink="false">http://www.matthew-long.com/?p=111#comment-64750</guid>
		<description>I agree completely that Java can be quite tedious, but it does the things I need on the server side without much setup hassle, like creating zip files and accessing (Oracle) databases. Working with Java on UNIX sure beats the heck out of .Not on Windows (for me, anyway).

I use Perl when I can (Python isn't permitted here :-( ), but installing the modules can be such a supreme hassle.

After 30 years of server-side development, I'm studying hard to try to make the transition over to the Mac with Xcode/Cocoa/ObjC. (Your tutorials are much appreciated! :)

I like Java much better than I like straight C, but the combination of Cocoa and ObjC goes a long way towards alleviating the pain of C.</description>
		<content:encoded><![CDATA[<p>I agree completely that Java can be quite tedious, but it does the things I need on the server side without much setup hassle, like creating zip files and accessing (Oracle) databases. Working with Java on UNIX sure beats the heck out of .Not on Windows (for me, anyway).</p>
<p>I use Perl when I can (Python isn&#8217;t permitted here :-( ), but installing the modules can be such a supreme hassle.</p>
<p>After 30 years of server-side development, I&#8217;m studying hard to try to make the transition over to the Mac with Xcode/Cocoa/ObjC. (Your tutorials are much appreciated! :)</p>
<p>I like Java much better than I like straight C, but the combination of Cocoa and ObjC goes a long way towards alleviating the pain of C.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: baruch</title>
		<link>http://www.matthew-long.com/2008/05/15/that-sucking-sound-is-java-killing-your-soul/#comment-59089</link>
		<dc:creator>baruch</dc:creator>
		<pubDate>Sat, 28 Jun 2008 14:31:50 +0000</pubDate>
		<guid isPermaLink="false">http://www.matthew-long.com/?p=111#comment-59089</guid>
		<description>Hi:

This is more of a question than a comment.  You all are light years ahead of me in all this.  

I just downloaded your Audio Scrub beta but I don't know where to put the components in order to build the application.  Would you be willing please to explain to a neophyte?

Thanks!

baruch@mcn.org</description>
		<content:encoded><![CDATA[<p>Hi:</p>
<p>This is more of a question than a comment.  You all are light years ahead of me in all this.  </p>
<p>I just downloaded your Audio Scrub beta but I don&#8217;t know where to put the components in order to build the application.  Would you be willing please to explain to a neophyte?</p>
<p>Thanks!</p>
<p><a href="mailto:baruch@mcn.org">baruch@mcn.org</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: PhantomMenace</title>
		<link>http://www.matthew-long.com/2008/05/15/that-sucking-sound-is-java-killing-your-soul/#comment-57677</link>
		<dc:creator>PhantomMenace</dc:creator>
		<pubDate>Tue, 24 Jun 2008 04:13:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.matthew-long.com/?p=111#comment-57677</guid>
		<description>I agree with you Matt, Java has tangled itself up into a big ball of crap. I think this stems not so much from the language as it does from the crappy, counter-intuitive API and framework patterns that are so pervasive in the language. I couldn't agree with you more about the over-use of the Factory pattern (and the Builder and all the other ridiculously over engineered patterns). The Calendar and related Classes are a good example of bad design. 

I also find it interesting how many Classes start out with a somewhat intuitive API that gets deprecated to make room for a more counter-intuitive API that makes no practical sense at all. It almost seems deliberate. 

So I would contend that the crappiness of Java comes not from the language but from the idiots who steeped the Java culture in over-theoretical and counter-intuitive API's.</description>
		<content:encoded><![CDATA[<p>I agree with you Matt, Java has tangled itself up into a big ball of crap. I think this stems not so much from the language as it does from the crappy, counter-intuitive API and framework patterns that are so pervasive in the language. I couldn&#8217;t agree with you more about the over-use of the Factory pattern (and the Builder and all the other ridiculously over engineered patterns). The Calendar and related Classes are a good example of bad design. </p>
<p>I also find it interesting how many Classes start out with a somewhat intuitive API that gets deprecated to make room for a more counter-intuitive API that makes no practical sense at all. It almost seems deliberate. </p>
<p>So I would contend that the crappiness of Java comes not from the language but from the idiots who steeped the Java culture in over-theoretical and counter-intuitive API&#8217;s.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: perlmunger</title>
		<link>http://www.matthew-long.com/2008/05/15/that-sucking-sound-is-java-killing-your-soul/#comment-44487</link>
		<dc:creator>perlmunger</dc:creator>
		<pubDate>Fri, 16 May 2008 13:18:33 +0000</pubDate>
		<guid isPermaLink="false">http://www.matthew-long.com/?p=111#comment-44487</guid>
		<description>@GDA

Both!</description>
		<content:encoded><![CDATA[<p>@GDA</p>
<p>Both!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: GdA</title>
		<link>http://www.matthew-long.com/2008/05/15/that-sucking-sound-is-java-killing-your-soul/#comment-44475</link>
		<dc:creator>GdA</dc:creator>
		<pubDate>Fri, 16 May 2008 13:09:04 +0000</pubDate>
		<guid isPermaLink="false">http://www.matthew-long.com/?p=111#comment-44475</guid>
		<description>On one hand, Java is not the funniest language. But on the other hand, you have the best tools to develop in Java and far ahead from other IDEs.
I used to develop on several other languages too, and I regularly test new languages with new environement. But when I lack code completion, formatting, navigation, refactoring (not just renaming) I really miss my Java IDE. Finding all implementations of an interface, all usages of a class, or the call stack of a method key shortcut is as easy as a key shortcut. And all this makes me happy.
So, what do you prefer, fun or happiness ?</description>
		<content:encoded><![CDATA[<p>On one hand, Java is not the funniest language. But on the other hand, you have the best tools to develop in Java and far ahead from other IDEs.<br />
I used to develop on several other languages too, and I regularly test new languages with new environement. But when I lack code completion, formatting, navigation, refactoring (not just renaming) I really miss my Java IDE. Finding all implementations of an interface, all usages of a class, or the call stack of a method key shortcut is as easy as a key shortcut. And all this makes me happy.<br />
So, what do you prefer, fun or happiness ?</p>
]]></content:encoded>
	</item>
</channel>
</rss>
