4 ms·
There is nothing "secret" about these languages. Everybody knows they exist, everybody knows they are better in certain respects, most companies prefer standar
by VMG 7y ago
There is nothing "secret" about these languages.
Everybody knows they exist, everybody knows they are better in certain respects, most companies prefer standard languages where it is easy to recruit standard-level talent for standard wages.
- consp 7y ago> most companies prefer standard languages where it is easy to recruit standard-level talent for standard wages. With the added benefit of easier recovery when the main programmer leaves and take with him/her all his/her knowledge about the code. I've heard about this plenty of times when in a relatively small company, using [name your preferred somewhat exclusive language here] was preferred because someone made that decision alone, a long time ago, and the end result being almost unmaintainable code and longer than average time to get going or even find replacements.
- haggy 7y agoI agree with you wrt hiring but I think the choice on language (especially at startups) largely comes down to founder knowledge. As a full-time Scala developer (and long time Java guy) I've seen first-hand the benefits and drawbacks of both worlds: The highly populated world of Java libs and developers vs. the relatively niche Scala (but growing FAST!) community (relative to Java/Node.js/etc). The learning curve on Scala (just like haskell) is quite high for most "standard" developers. However even given that we usually don't have much trouble getting people on-boarded and productive in Scala. Java & Scala (thanks to the JVM) offer fantastic options for resource util. You can build very lightweight stateless microservices that run on a box with 1 or 2 cores. You can also build services that utilize hundreds of cores and terrabytes of RAM
- blub 7y agoThere's no proof really that above standard talent prefers or uses functional programming languages. Indeed, this is a reductionist view, like saying the best engineers are those that use a specific tool, not those that have access to a broad body of engineering knowledge and real-world experience.
- UK-AL 7y agoI think it's because functional programming does take a bit more learning to get going with it. That's because there are higher level abstractions like monads, bind, type classes etc These take more time to learn but once you know they make modelling some problems much easier. I do think a lot problems in programming come from businesses wanting everything to be easy to understand and to require little training and education. As opposed to highly trained people who know their craft. This as a business decision is fair enough. But you can't then complain your software is buggy or it takes to long to build something because you haven't built higher level abstractions. You made that decision.