September 22, 2003
If you really want a mini to haul a trailer..

Philip Greenspun apparently forgot that there is such a thing as an appropriate tool for the job.

Java an SUV? Perhaps.. but then php is a Mini - admittedly a very cool car that will get you to your destination, but do not attempt to haul a heavy boat behind it.

Posted September 22, 2003 06:44 PM in Java
TrackBack URL for this entry: http://www.unix-girl.com/mt/mt-tb.cgi/929
Comments
On September 22, 2003 07:29 PM gregory added:

PHP is definitely a Mini. As much as I love it, there are limits to what you can expect it to do. And I think he's overlooking other uses for Java. I use this app for OS X (and well anything actually, but it's written by an OS X user) called Zoe (http://zoe.nu/) that indexes email and is pretty much web driven. You certainly would have a harder time doing it with PHP or Perl (if you could do it easily at all).

#
On September 22, 2003 07:45 PM George Schlossnagle added:

Just out of curiosity, why would you have a hard time implementing that app in PHP or Perl? I only took a cursory glance through it, but both PHP and Perl have 'standard' (at leasst in the case of PHP, popular-and-well-supported in the case of Perl) libraries to handle most of the heavy lifting that app requires.

You probably shouldn't use a SUV to tow your boat either. My Subaru will do a fine job of it (the Perl of automobiles if there ever were one), and if that wasn't good enough I'd buy a truck (read a vehicle designed to do heavy pulling, not a poorly designed multitasker like most SUVs).

Perhaps that analogy is stretched too far, but I'll stand by it.

#
On September 22, 2003 07:52 PM garrett added:

Everyone repeat after me:

I will not get involved in pointless debates about programming language preferences.

I will not get involved in pointless debates about programming language preferences.

I will not get involved in programming language preferences.

There, don't you feel better already?

#
On September 22, 2003 07:54 PM Gregory added:

I was actually thinking about this after I wrote the comment and I think it is doable and am pretty sure how I'd do it. And I'm not sure that it would be easier to maintain. But I think it would be difficult to have it in a nice easy to use package that someone could just download and double-click to run.

#
On September 22, 2003 08:15 PM kasia added:

No offense to your argument George, but if I had to do what I do now in php I think I would kil myself.

#
On September 23, 2003 12:22 AM Peter added:

I think everyone should use Java. I don't use it, I use PHP. But I think everyone *else* should use Java.

Especially my competitors.

#
On September 23, 2003 07:14 AM kasia added:

Peter.. my point was about 10000 feet back and more to the left.. you're only showing your ignorance by making such blanket statements.

#
On September 23, 2003 07:36 AM Frank Merenda added:

I agree with Kasia on this. PHP/Perl are great for small/medium apps, prototyping, and utilities. Maintainence on non-OO apps is just plain painful (don't get me wrong, you can write crappy code in any language). But with the large enterprise applications I write, I'd go nuts trying to maintain that stuff in perl or PHP. I also integrate different systems together, which is a breeze with Java. I wouldn't want to pull from COM, flat files, a database and a web service with perl. With Java (or any OO language) you can just abstract away wherre the data is coming from, and process it as you'd like. They work out the issues for getting the data in the objects that deal only with getting data, but process it the same way. Duplication is the root of (almost all) evil in software development, and you can easily avoid most duplication with Java (or any OO language). If you haven't written any *large* applications, with teams of developers, and tens of thousands of lines of code, this probably doesn't make any sense, and the difference may not be obvious. But once you do a large app like that and have to maintain it, the benefits are obvious.

And don't talk to me about performance! I have written apps to process log files (all text processing) where the logs were several hundred megabytes (from an aspect I wrote to analyze performance on a webapp). The small, efficient perl script I wrote ran for over 5 minutes, maxing out my CPU. The more complicated Java app I wrote, with 5 objects (the actually did more complex analysis on the log files) ran in under 30 seconds, with my hard drive being the bottleneck. I know that's only one small example, but for me it's relevant. I have written several apps that scale quite well in Java, thank you very much. I've also seen several apps written by other people in Java that don't scale worth a damn, because they don't know what they're doing. The same thing goes with other languages. :)

Then again, right now I'm learning Python, and it's fun fun fun. You get the quick scripting benefits of perl/PHP, while at the same time, you can refactor it into good OO code. :)

#
On September 23, 2003 08:13 AM boneverks added:

A Mini?

Hell no. PHP is like Duplo Legos. Fun to build things with, but heaven help you if you try to build your house out of them.

And Perl is like regular Legos. Sure, there's all sorts of cool parts, but the same is true; above a certain size model, you spend as much time fighting the fact that you're using Legos (Perl) as actually building anything :-)

#
On September 23, 2003 09:41 AM Randy added:

Does this make C or MFC a moped? It works and gets you places but you don't want your friends to see you riding one?

#
On September 23, 2003 09:49 AM kasia added:

More like an Aztec :) Functional, does the job well but ugly as hell and wouldn't be caught dead driving it in public!

#
On September 23, 2003 04:20 PM pete added:

*mumbles something about using right tool for right job*

#
On September 23, 2003 10:21 PM Peter added:

Kasia:

I don't know if it's so much ignorance as it is conviction.

Lack of ignorance (i.e. experience) does not translate to lack of resolve.

#
On September 24, 2003 02:50 AM Joan added:

I will not get involved in pointless debates about programming language preferences.

I will not get involved in pointless debates about programming language preferences.

#
On September 24, 2003 04:16 AM Jeremy aka bad-magic-number added:

I think I'll break my leftist mold and go into a reactionary stance...

After having messed with Java, I firmly believe life was better in the days of C and C++. C and C++ are like a fuel efficient, all terrain sports vehicle. Small, fast and capable of general heavy duty work. Of course I barely program anymore and mostly did lower-level, non-guified stuff...

As for the web arena, I'll stick with PHP since I haven't come to a point where PHP isn't enough. :)

#
On September 24, 2003 06:03 AM Sam added:

Shut up and Hack !

#
On September 24, 2003 01:48 PM reinhard added:

php for web is like Basic for DOS

#
On September 25, 2003 10:14 PM Jason Lotito added:

I will not get involved in pointless debates about programming language preferences.

I will not get involved in pointless debates about programming language preferences.

...especially considering my websites...hehe =)

still love ya kasia =)

#
On September 26, 2003 04:42 PM Blaine Hilton added:

I think each programming language has its good points and bad points. You have to consider the language itself, and also the programmer. A great PHP coder can recreate a java application in less time then a newbie java programmer.

However back to the language question it also depends on the application. If it needs to be ran from a web browser PHP is usually much faster, and easier on low-end computers then a java applet. When creating a full java application though it can be more powerful then a PHP+GTK solution.

Now after wasting that time saying the obvious I will say that I am in the proceses of buidling a ERP/CRM solution with PHP/mySQL and so far its working fine. Its running on multiple computers, OSs ect, even some really old hardware. It is also interfaced to machines using a proxy written in C++ to access the serial port on clients.

Moral of the story is it all depends. :-)

#
Trackbacks
Dichotomy's Purgatory:Java == SUV, Part Deux
Philip Greenspun's Weblog: Fallout from the Java = SUV posting Just picking some quotes out. it is not obvious how...
(read more)
September 23, 2003 04:23 PM