4 ms·
> Using "esoteric" languages can also be a good long-term hiring strategy. Actually, it's a good short term hiring strategy but a terrible long term strategy.
by billmcneale 16y ago
> Using "esoteric" languages can also be a good long-term hiring strategy.
Actually, it's a good short term hiring strategy but a terrible long term strategy. Most of these languages remain a niche (Ruby, Scala, Clojure, etc...) and hiring more than a couple of people that know how to use them turns out to be a very, very tough challenge.
I have seen several companies try that and then revert back to Java just because they couldn't staff up to meet the demand.
Overall, color me still extremely skeptical of Paul Graham's original argument (which was that Lisp gave his company an advantage over the competition). Interestingly, ViaWeb was quickly switched back to a more mainstream language shortly after PG sold out. Deduce from that what you will.
- msg 16y agoI deduce from this that the fault was not in the language, but in the company, specifically in the resume filter that asks for 3+ years of production Clojure. A programmer who learns languages can learn Clojure for production work. That's better than trying to bring a soaring program back down to earth (or for C++, chaining it to a cart and dragging it into the salt mines). But don't listen to me, here's Paul Graham from Beating the Averages (Footnote Edition). And ponder this question: why didn't Yahoo just rewrite the templates in C++? [1] Viaweb at first had two parts: the editor, written in Lisp, which people used to build their sites, and the ordering system, written in C, which handled orders. The first version was mostly Lisp, because the ordering system was small. Later we added two more modules, an image generator written in C, and a back-office manager written mostly in Perl. In January 2003, Yahoo released a new version of the editor written in C++ and Perl. It's hard to say whether the program is no longer written in Lisp, though, because to translate this program into C++ they literally had to write a Lisp interpreter: the source files of all the page-generating templates are still, as far as I know, Lisp code. (See Greenspun's Tenth Rule.)
- bartonfink 16y agoI deduce that some people prefer some tools, and you get a big win when you match a highly skilled person with tools they feel best augment those skills. However, it's the pairing that is the big win. If I had to guess as to which element was more important, I'd bet that the skilled person with imperfect tools is better than a Blub programmer with tools that are above him. PG left the equation, and when he did, a big argument in favor of keeping Lisp around did as well. Without another similarly skilled Lisp hacker to fill the void, it's easier to make a strong case for a more mainstream language so that ViaWeb could still maintain some forward velocity even if they never got to move quite as fast as they did when PG/Lisp were driving. tl;dr - I bet that it's not Lisp that made ViaWeb tick - it was Lisp + PG.
- harryh 16y ago> hiring more than a couple of people that know how to use > them turns out to be a very, very tough challenge That's tackling the wrong challenge. Almost none of engineering staff at foursquare had used scala before starting here. But they're all talented engineers who can learn new skills and thought that learning scala would be interesting. We've had very few problems with people picking up the language.
- billmcneale 16y agoThat was my point: by choosing an esoteric language, you raise the bar for the people you need to hire, which makes hiring very challenging. Now go scale that up to 50 or 100 engineers and you understand why it's not a viable strategy. Try it yourself, go pitch a startup and then tell the VC's and their consultants that you're going to use Scala... I know you're going to say that they don't know their stuff and you should be the one deciding, but it's actually the other way around: they know how to grow a business, and nobody with that knowledge will ever recommend to go with non mainstream language and technologies.
- technomancy 16y agoIt almost sounds like you're saying raising the hiring bar is a bad thing.
- technomancy 16y agogot cut off on my phone; meant to add: why would you ever need 50 Clojure engineers?
- billmcneale 16y agoFor the exact same reason you might one day need 50 programmers in any language: if your company flourishes. What makes Clojure so special that you'll never need that many?
- harryh 16y ago
- hassy 16y agoCross the bridge when you come to it. You only need a handful of programmers in the first couple of years of a startup's life. The better they are the better. Worrying about whether you'll be able to hire 20+ Clojure programmers is best left for when/if the company is successful.