5 ms·
Erlang may as well not exist for the vast majority of developers. I like Erlang, but a lot of people don't get it, and even more are completely unaware that it
by chc 15y ago
Erlang may as well not exist for the vast majority of developers. I like Erlang, but a lot of people don't get it, and even more are completely unaware that it exists. Meanwhile, JavaScript is already one of the biggest languages on the Web. This is actually one of Node.js's intended strengths.
The JVM is really mature, but its primary language is one many people hate, so people would complain about choice of platform even if they had gone that way. You may as well ask why Ruby on Rails wasn't Java on Rails. The answer is that 37signals didn't like Java.
And V8 and JavaScript already existed when Node was created, so they were building in an existing ecosystem. Again, JavaScript was already one of the dominant languages on the Web. That's a big argument in its favor.
To my understanding, JavaScript had one more advantage that put it over the top: what didn't exist in its ecosystem — namely, a culture of synchronous development. This meant Node wasn't fighting against the idiomatic way to do things. JavaScript was already highly async, and since this was the whole idea behind Node, it made JavaScript a less-bad fit than most other languages. Other languages were considered, but the fact that libraries for those languages were largely synchronous was viewed as a downside.
- petercooper 15y agoI agree with your post, but wanted to pick up on one point: Erlang may as well not exist for the vast majority of developers. I like Erlang, but a lot of people don't get it, and even more are completely unaware that it exists. This was also true of Ruby pre 2005. I'm not an Erlang developer but it clearly has some natural advantages in the increasingly important world of parallelism and maybe it just needs its own "Rails" as a catalyst for its take off? (And by "its own Rails" I don't mean a Web framework but just a MacGuffin that lures people in to trying it.)
- chc 15y agoHalf of it was true for Ruby — many people were unaware. What they don't have in common is people's immediate reaction upon discovering the language. Common first exposure to Ruby: "Oh, wow, that's cool. It looks pretty easy." Common first exposure to Erlang: "Oh, wow, I didn't know you could code in Klingon." I do agree, though, that Erlang could probably gain a lot more popularity if somebody introduced a framework that really showed what it could do. The most popular web framework right now (at least I think it's the most popular — there aren't any official polls or anything) is MochiWeb, which kindasorta doesn't have any documentation.
- petercooper 15y agoGiven the visceral reactions to the syntax, perhaps Erlang could be boosted via a CoffeeScript-esque language that compiles down to it? No idea how practical that is with Erlang's idioms but CS helped some previously JS-shy folks get on board.
- chc 15y agoThere already is one: Elixir (http://elixir-lang.org http://elixir-lang.org). It's created by Jose Valim, who (as you probably know) is also a member of the Rails core team. It's a very interesting language.
- petercooper 15y agoAh, cool! I knew he'd gone off to build something new but hadn't realize it was Erlang based. Thanks.
- pessimizer 15y agoMochiWeb is a web server, not a web framework. People use nitrogen(1) and webmachine(2) over it. Nitrogen is a pretty fully featured framework, and webmachine is a really light layer that bakes in http/REST semantics. I pretty much exclusively use webmachine with ErlyDTL (an implementation of the Django templating system) on top. There's also erlangweb, and a few others. Both nitrogen and webmachine are pretty well documented. I think it's still all of the periods and arrows that are scaring people off. (1) http://nitrogenproject.com/ http://nitrogenproject.com/ (2) http://wiki.basho.com/Webmachine.html http://wiki.basho.com/Webmachine.html
- rubyrescue 15y agoA web framework built on top of Elixir would do it.
- anuraj 15y agoSince when did people do not like Java? And still it is the most widely used computer language? And how many people like Ruby, Python by the way? Hype is indeed stranger than reality. You should choose languages and platforms that fit the task at hand. Every language is as good as the programmer who wields it as long as it suits the purpose. Hating a language is hardly the way to get things done. After learning and working on dozens of languages I am very language agnostic - a new language takes at most a week to get to moderate proficiency now. Make systems that work rather than bitching about your new pantyhose.
- chc 15y agoJava is the most widely used computer language because it's the lingua franca of the enterprise. That doesn't reflect the programming community's love — it reflects the approval of big business executives. Some programmers genuinely love Java, but I'm pretty sure it's a much smaller number. In the startup scene, where technical founders pick the stack, Ruby is actually more widely used. Take a look at the HN Jobs category (linked at the top of the page) and count the number of Ruby web dev listings, then count the Java web dev listings. (Cheat sheet in case you didn't feel like counting: There are zero listings for server-side Java. The only Java listings are for Android.) You can argue that it shouldn't be this way, but that is how it is. A lot of people hate Java. Rails' whole initial marketing campaign was essentially "Java sucks — we do everything opposite of them."
- anuraj 15y agoAnd you think HN is the horizon of entire programming world? Hope that is a self fulfilling prophecy. If you believe HN, Ruby is taking over the world - but in reality, Ruby use is going down (http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html http://www.tiobe.com/index.php/content/paperinfo/tpci/index....). If you really want to know which language is gaining popularity fast - it is a pretty old language called Objective-C! Recheck the reality distortion field. And about love - I have a family to love - programming languages are tools - hardly objects to love or hate.
- 15y ago