6 Languages You Wish the Boss Let You Use
Esther Schindler writes "Several weeks ago, Lynn Greiner's article on the state of the scripting universe was slashdotted. Several people raised their eyebrows at the (to them) obvious omissions, since the article only covered PHP, Perl, Python, Ruby, Tcl and JavaScript. As I wrote at the time, Lynn chose those languages because hers was a follow-up to an article from three years back. However, it was a fair point. While CIO has covered several in depth, those five dynamic languages are not the only ones developers use. In 6 Scripting Languages Your Developers Wish You'd Let Them Use, CIO looks at several (including Groovy, Scala, Lua, F#, Clojure and Boo) which deserve more attention for business software development, even if your shop is dedicated to Java or .NET. Each language gets a formal definition and then a quote or two from a developer who explains why it inspires passion."
Your programming skills should not be tied to the language you use.
---
ECHELON is a government program to find words like bomb, jihad, plutonium, assassinate, and anarchy.
Right on! A good programmer will learn any programming language in a fortnight. But sadly average programers don't.
I remember when ADA was going to be the next big thing. Then it was SmallTalk. I actually used Modual-2 back in the day. C? was never going to take off. It was too big and slow for micro computers and not high level enough for minicomputers. The only people that would ever really find use for it where those few people that used Unix.
Before that it was PL-1 and Simula. I left out the fourth generation languages that where going to let everybody write their own programs. Oh and programing by making flow charts... Or was it Hypercard that was the future...
Well you get the idea. Most where really good programing languages but there seems to be a limited number of languages that reach critical mass. I remember Comal which was a great little language on the old 8 bit machines but it only became popular in Europe.
Oh well we will see what happens this time.
See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
If you can't write it in a .BAT file, it can't be done.
Boo is 0.8.2 - If you wish your boss would let you use this, you're fired.
I once created an in-house fork of Boo for file processing. It worked reasonably well as a stopgap solution, and I wasn't fired at the end of it.
I could understand a more generic Functional Lang like Hask,OCaml,Erlang but F#?
Haskell, OCaml and Erlang don't have access to the .NET libraries. F# does, so you get the benefits of a statically typed functional language with the extensive .NET APIs.
Groovy - JVM Java scripting for when Java is too hard for you? Wow. You're fired.
Groovy is a superset of Java functionality, not a subset. You can do everything in Groovy that you can in Java, but there are a lot of things in Groovy that Java lacks, most notably closures.
So if anything, I'd contend that Groovy is harder to learn than Java.
Clojure - Functional syntax on the JVM. Why would I use this and for what when there's no support?
The mailing list is quite active, so I assume you're talking about a paid support contract or something? Can you even get that kind of support with, say, Scala or Ruby? Would you even want to?
Lua... Chances your developer wants to use it inappropriately = 99%
Uh, hire better developers?
I mean, really, if you're working with morons, then sure, you might not want them to use a language they can screw things up too badly in. But it's probably better to just hire competent programmers in the first place.
These seem to be the languages you wish your boss let you use if you're a corporate guy who's already in a shotgun wedding with JVM or .NET (and it is CIO Magazine, so this makes sense). And then for some reason Lua, which is a neat language, but if it's good for your problem domain you're already using it - and it seems out of place with the others listed.
My boss lets us use Python for most things (hell, he loves it, even though he's not a programmer, since he likes how fast and easy it makes dev and maintenance), and I don't see any reason at all to even contemplate switching to one of these. Not that they look bad, but since we're not already shackled to the JVM or .NET I just don't see a compelling draw.
As a CTO and the guy who's money is at stake, this is complete crap.
Yes, a good programmer can pick up the syntax of any language. But syntax hasn't been the key to a language since K&R's White Book. The main issues is the API that goes with it. When I hire Java coders I want them to use Collections, not 1.1-era Vectors. I want them to use a FilterInputStream, not bring the whole thing into a byte array and then munge it.
Every language has paradigms, coding styles, best practice and APIs that must be learned through use, not osmosis. If you don't have this knowledge you'll reinvent the wheel, and you'll inevitably do a poor job. Look back at when you switched from C to Java, or whatever - you'll find this self evident.
Following on from that, I need to hire people with these skills and know I can replace them if they leave. 150,000 lines of beautifully written X is no good if I can't find anyone that speaks X, not matter how perfect it's structure.
In short, the Boss is right.
Yes but Ada was supposed to be the next big thing as was SmallTalk. Frankly I really like SmallTalk. Squeak is really nice.
More people should play with Squeak including me but time is the issue as always.
There seems to be a burst of new languages and then they fad to a select few.
In scripting Perl and PHP are to old standards. Python and Ruby are the new hotness. My guess is that Python has staying power. LUA and some of the others mentioned are the new new hotness.
What most people don't get is there is a good reason your boss will not let you use those. What happens when they fade and you have this cool app that nobody knows how to extend anymore?
Programs tend to be living things You add new features over time. So a hot programmer decides to use snobol4. Five years later nobody knows how to write snobol4 the language hasn't had an update in two years and you are in a world of hurt.
See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.