Scala vs Java vs Python vs Ruby vs Lisp vs Clojure vs Haskell (and why only engineers care)
How can you tell when engineers have too much time on their hands?
I've another one to add. When they spend hours debating in pubs about which language is, in their opinon, the best tool for every job.
Its often amazing when engineers gets blinded by the tools they use as opposed to what they produce. A form of distracting, language ADHD, which certain people are afflicted with, making them oblivious to what their jobs are. Then they are shocked when management suggests they haven't time/budget to rewrite in
Lets rebuild that towerblock
Do engineers who deal with physical materials get to start from scratch? Unlikely. Sure, knock yourself out with Scala and Haskell for a new, skunk works project but make sure you can find an engineer to support it. Also have fun navigating the security bugs and instability issues. And I mean that, it is actually fun as an engineer. As a company, these are life threatening.
Languages as a sales tool
I often wonder who actually gains from the fan boy wars involving languages online?
Companies certainley don't benefit - despite the hype laden blog posts that Paypal release about node.js or IMVU's recent use of Haskell. These posts are all over hackernews (news.ycombinator.com); the programmers version of Reddit where evangalists with all kinds of conflicting backgrounds come to duke it out with mind boggling statements about low level compilers and PhD level detail.
Who are they aiming at?
Ever wonder if developers and architects are the target of these flame wars? That we are the unknowing consumers of these rather pointless diatribes. Rather than learning what appears to be the latest trend, we are in fact subscribing to some company's advertising material. Paypal is really saying "we are forward thinking and cool, come work for us!" despite all rational evidence pointing to the contrary. The Haskell guys are selling books and courses online. Martin Odersky sells more scala consulting services and the companies he has affiliations with do more business. Developers convinced by the trend everywhere feel like they're progressing in their careers, they now understand something new and groundbreaking. Until next year when some other collegiate rolls another language with obtuse syntax and principles.
You are the product
Remember people, you are the product. When someone tries to convince you that uber-R++-on-rails is the next big thing, try to think whether your time would be better spent doing something else. While I agree that passion for learning is a powerful ingredient in every engineer, be wary of the snake oil salesmen you encounter. Just because someone understand how a compiler works, doesn't mean they understand why we write code.
Any for God's sake stop reading so many tech blogs (except this one)...