4 ms·
I would think that the "Hard to find developers" takeaway was a pretty good incentive for developers to start learning erlang.
by Joeboy 12y ago
I would think that the "Hard to find developers" takeaway was a pretty good incentive for developers to start learning erlang.
- rwmj 12y agoI don't get this thing about having to find developers in a particular language. I work on a lot of OCaml programs, and have used and hired developers to work on the same programs. None of them had OCaml experience before, but they just learned it as they went along (because they are intelligent programmers). I actively don't want someone who only knows one language. Also we're using RabbitMQ (written in Erlang). At the moment there are a couple of us mostly just reading the code and fixing the odd bug -- I guess we'll want to extend it in future. You just plug away at it, read the code, read the Erlang docs. It's not that difficult.
- crdb 12y agoThis would be a valid reason: http://paulgraham.com/pypar.html http://paulgraham.com/pypar.html I agree with you that whilst familiarity with a rare, powerful language might be a signal of quality, lack of familiarity with rare languages does not imply the reverse.
- MCRed 12y agoThis effect is even more pronounced with erlang, which has had several waves of popularity, going back to at least 2007. Because the language is harder to learn than most other languages due to the syntax being perceived as "difficult" (and it is for a week or two before you see its elegance) the barrier for entry is actually higher than many other languages. Someone coming from Java has to learn both FP and the erlang syntax at the same time.
- Almaviva 12y agoThere's something worth talking about, which is that a sophisticated and ingenious mess is orders of magnitude more costly than a simple minded mess. My experience with brilliant functional programmers is that it's hard to know whether you're getting someone who can use it as the best tool for a job in a simple, elegant, and maintainable way, or a cargo-cultist who delights in sophistication and cleverness and purity for their own sake, to great excess, and leaves a codebase that needs to be scrapped and re-written when they get bored and leave the company 6 months later, when everyone realizes that the twisty baroque monstrosity could just be handled by an imperative loop one quarter of the size that any high schooler could understand.
- mistermann 12y agoSometimes it's near impossible to tell the difference between the two.
- rwmj 12y agoAs it's all open source, I guess you can look at the code and judge whether it's a mess or not. https://github.com/libguestfs/libguestfs https://github.com/libguestfs/libguestfs https://github.com/rabbitmq/rabbitmq-server https://github.com/rabbitmq/rabbitmq-server
- orclev 12y agoThat isn't unique to functional programming. I've seen my fair share of Java and C# code bases that could best be describe as baroque monstrosities. It's like the authors read Design Patterns and then decided they absolutely had to use every single pattern at least once. The clean code book is also somewhat to blame here as people who go full retard on that tend to write stupidly complicated class hierarchies just so they can never have more than 1 line of code in any given method (effectively turning most classes into proxy wrappers for other classes providing some default values).
- crdb 12y agoWe hired a team of 10 Haskellers in 3 months with over 100 people doing our application task. It's really not hard to find developers, the market (at least for Haskell work) has plenty of supply and little demand. So, "learning Erlang/Clojure/Haskell" is a bad strategy if you just want to be employed, unless you are good enough to pit yourself against people with decades of experience, who write large amounts of open source code, who have built several projects in a host of other tech stacks and who can afford and are willing to take a (so far, up to 3x) pay cut to work full time in the language they love and helped build. I suspect the problem is the two most popular ways of hiring developers in tech companies (tapping your network, and recruiters) fail hard at finding functional programmers, unless you yourself are a functional programmer.
- njharman 12y agoI consciously and successfully did this with Python back when it was hard to find Pyguys. But, it took a killer app (Django use by media companies) to achieve self-sustaining demand growth. I also really, really love development in Python. Which probably was 80% reason of my success. tldr; The best success is achieved by doing things you are passionate about. Not chasing jobs/tech/money.
- digitalzombie 12y agoYeah... about that. I monkey around with Erlang you know where the jobs are? Silicon Valley and Miami. I couldn't find much Erlang anywhere in Sol Cal. There are jobs description that have Erlang in there but they put that only as an example of a functional language skill set they want.