Chad Dickerson writes, "If you put the world's most talented Java developer and the world's best Perl programmer in a room and gave them an unstructured textual document to parse, I would put my money on the Perl programmer to finish first."
Read this short InfoWorld.com article, Tools for the Short Hike, by Chad Dickerson:
If you put the world's most talented Java developer and the world's best Perl programmer in a room and gave them an unstructured textual document to parse, I would put my money on the Perl programmer to finish first. When you're going on a one-mile hike, you shouldn't weigh yourself down with a full set of silverware, a saw, scissors, and an inflatable boat just in case you run into a raging river. You take a light backpack, a bottle of water, and a Swiss Army knife. That's the mentality behind scripting -- when going on a one-mile programming hike, the tools for climbing Everest will only weigh you down.
I would recommend to developers that they find a systems and a scripting language they are comfortable with, and get to know them well. The developer can then reach for the most appropriate tool for each particular job. The two languages I reach for most often are Java and Python, and I use them for different kinds of jobs. (In Chad's terms, I tend to use Python for short hikes, Java for longer ones.)
> So what is a large website then? A short hike or an > expedition? And why would a scripting language NOT be good > for the expedition? > A large website is most likely many short hikes and a few long expeditions. I use both Python and Java behind the scenes at Artima.com, for example, because I have both scripty needs and systemsy needs. I use Python all the time, but I've never written a Python program that's in more than one file. I rarely write a Java program that's just in one file. Also, I tend to write Java in terms of APIs more than apps.
I've met many people who'd rather use a scripting language all the time, and I've met some people who'd rather use a systems language all the time. I think it is a matter of personality and taste. I prefer to use both. That's how I feel most productive.
> A large website is most likely many short hikes and a > few long expeditions.
This is an awesome answer!
I personally like the idea of using a scripting language then handing off to a compiled language at certain times. Those times would be the expeditions. :-)
I agree with you on this one Bill. The combination of Java and Python for web application development is probably the best combination around, hence JPublish ( http://www.jpublish.org/ ) was spawned.
Personally I also keep Perl handy in my back pocket for those times when I need it.
Please don't take this as adversarial or anything. It's not meant that way. I'm just curious why you consider Java and Python such a good combination. I've been very curious about Python in particular for some time, but also busy with other things.