Hacker News new | ask | show | jobs
by fauigerzigerk 6200 days ago
The only reason to write in a language like C or Java today (over Python) is speed. And there are a very limited number of applications that require that sort of speed

You probably mean a very limited number of web app frontend code. That may be true. But I think you underestimate what is being done with software.

With a language that is 200 times slower than C or Java you can't do any data analysis, graphics or image processing, machine learning, algorithmic optimisation, financial software like trading, pricing and risk management, embedded systems, bioinformatics, simulation and a whole lot more.

You're basically excluding yourself from doing anything that mankind couldn't do before. Progress it's called. Most AI tasks require massive computational power. But even just things like pickling a Python object is too onerous for Python itself. I don't think that's good enough.

2 comments

Can we at least all agree that no one should be writing anything in a shell scripting language any longer?

I'd be happy with just winning that battle.

I like scripting my shell using a shell scripting langauge; if I have a few dozen (or hundred) console operations that need to be done often, then a shell script is more concise than ruby. If I need to add error handling, exceptions, networking, etc, then it's time to move up, but if all that's needed are external programs and some looping and conditionals, then I don't see any problem with scripting.
Why are you against shell scripting languages ?
Because I have seen the horrors that they wreak in a production system where they are responsible for mission critical logic.

The horror. The horror.

Could you give examples of it ? You could also write horrible python or ruby code.
I don't feel comfortable posting code from my employer here, sorry. But let me address your counter-argument on its own: Saying you can write bad Ruby or Python is a turing tarpit argument. You can write bad code in any language, but I've seen a lot more bad shell script code than I've seen bad Python. Add to that that shell scripting languages are very irregular and I can't see why anyone would use a shell script for something that they actually relied on that was more complicated than invoking a few commands in sequence.
You can already do image processing in lowly Javascript, example http://hacks.mozilla.org/2009/06/content-aware-image-resizin... , and machine learning can be done in pure Python, example http://montepython.sourceforge.net/ .
They're all Turing complete after all ;-)