4 ms·
That's my go-to argument when choosing languages. Whenever someone says to use Java or .NET rather than the relatively obscure Ruby (or Node.js or whatever) be
by tjogin 16y ago
That's my go-to argument when choosing languages.
Whenever someone says to use Java or .NET rather than the relatively obscure Ruby (or Node.js or whatever) because that makes it easier to find programmers, I always ask why they want to staff up on average to below average programmers. (Edit: sure there are good ones, just far more bad ones)
At least if they use the obscure language, you know that the programmer in question has his eyes and ears out there, finding things out on his own, trying things, reading stuff. There are a lot of cubicle programmers who simply don't; that find out about things when things are added to Visual Studio.
Not saying obscure languages are better in and of themselves (well, maybe just a pinch), just that the opposite isn't true. Easy access to droves of average to poor programmers is not a feature.
- knieveltech 16y agoYou're going to find the full range of talent regardless of which language you're using. Erlang doesn't guarantee godlike competence, and .NET doesn't guarantee mediocrity. I think your biases are showing a little here.
- tjogin 16y agoI never said anything about a guarantee. I'm just saying that if you want to hire a programmer, the fact that there are thousands and thousands more of .NET programmers doesn't make hiring any easier. You want quality, not quantity.
- wccrawford 16y agoActually, it does make hiring easier. It doesn't making hiring -good people- easier.
- tjogin 16y agoRight, and why would you want to make it easier to hire bad people?
- hdctambien 16y agoIt might be better to have an average programmer than no programmer at all.
- wccrawford 16y agoI've never been able to figure that out, and yet many companies continue to do it. Some mistaken belief that a filled seat is better than an empty seat or something.
- jrockway 16y agoSaves on heating costs!
- Sandman 16y agowhy they want to staff up on average to below average programmers 1. Because they don't want to spend a lot of time looking for developers - it's far easier to find a Java developer than, say, a Ruby developer, simply because there's so many of them. Also, because there is so many of them, in all likelihood they will ask for standard wages whereas a developer with a good knowledge of some lesser known language/technology might ask for a higher pay because he knows his skills are in demand and the employer cannot easily find somebody else with those skills for a lot less money. 2. For certain types of software there is no need to have the best of the best. Average programmers are just fine for working on a standard CRUD application. If you're Google and you're hiring people to work on your search engine, then yes, you want to have the most brilliant minds out there, but if you're a company that just needs somebody to maintain it's CRUD application than you'll do just fine with an average developer, who'll be more than happy to work for standard, average pay. That being said, it's my opinion that, when hiring developers for work on an enterprise app, it's probably best to hire those that have a good knowledge of some enterprise-proven language like Java or C#, but with an interest in languages such as Scala, Ruby or Python. This way you get the guy that knows his way around an enterprise stack, but that's also not just a drone that considers programming nothing more than a day job, you get somebody who actually likes coding and frequently codes just for the fun of it.
- RyanMcGreal 16y ago> a developer with a good knowledge of some lesser known language/technology might ask for a higher pay because he knows his skills are in demand and the employer cannot easily find somebody else with those skills for a lot less money. Given the huge productivity gulf between low and high ends of programmer productivity - a gulf that vastly outstrips the gulf between low and high pay levels - it stands to reason that as you move up the pay scale, programmers will tend to become net more productive in relation to what you pay them. If you pay twice as much for a programmer who is ten times as productive, you end up ahead of the game.