5 ms·
I'm a professional Java developer, and thought I was fairly trendy because I've introduced Scala in my company's services tier. About a month ago I started rea
by StevePerkins 13y ago
I'm a professional Java developer, and thought I was fairly trendy because I've introduced Scala in my company's services tier.
About a month ago I started reading HN, and discovered that I'm irrelevant because I'm still using Scala rather than Clojure.
I ordered a Manning book, but before it even arrived I discovered that I'm irrelevant because I'm learning Clojure rather than Node.js.
So I started a couple of personal projects based on Express. However, before I was completely comfortable with callbacks vs. promises, I discovered last week that I'm irrelevant because I'm working with Node.js rather than Go.
Go has been my favorite of the bunch so far. However, I was just started to learn about goroutines and channels, when I discovered three days ago that I'm irrelevant because I'm using Golang rather than Rust.
I like this board, but it should come with a warning label! I haven't been approaching it with the grain of salt that it requires.
- jacquesm 13y agoPriceless comment. The alternative, to be like me, a stuck-in-the-past old guy who knows how to use only a few tools really well is probably also not optimal. But the chase-the-next-fad attitude can be just as lethal for your productivity as having no options at all.
- StevePerkins 13y agoI'm being a more than a bit tongue-in-cheek here. Of course I do enjoy learning new languages, and accumulating at least a basic understanding of the technologies discussed here. However, I notice that languages wash over HN like waves. A few weeks ago there were a glut of back-to-back Clojure posts. Last week it was all-Go-all-the-time, and over the past few days Rust has surged. This wave pattern is a cultural quirk of HN, rather than serious indicators of what you should be pushing for within your company, or where you should be taking your career long-term.
- jacquesm 13y agoI'm about to deep-dive into Erlang so consider me still susceptible to temptation :)
- davidw 13y agoErlang, in my opinion, is more of a Lisp or Smalltalk than, say, a Ruby, Python or Go: it gets some things really right, and some people will continue to swear by it, but it'll never see mass adoption, and sooner or later, other languages will rip off enough of the good ideas to be 'good enough'.
- jacquesm 13y agoErlang is an interesting hybrid between language and operating environment that offers a unique set of trade-off choices. The language itself is not as interesting as the result of these trade offs that translate into a reliability that seems hard to duplicate using other platforms, or at least the platforms that I'm aware of. That said it is not a silver bullet, split brain problems and other nasties remain hard. I don't think you can rip off the good bits of Erlang without using the Erlang VM and associated plumbing.
- davidw 13y agoRight, what makes Erlang interesting is the VM and how it's put together, with its own scheduler. It's fairly unique, but something you could replicate elsewhere. Go has a scheduler too, although it's built differently with different goals in mind. The problem is that you end up needing to do 'real world' stuff, and hit something like this: http://www.erlang.org/doc/apps/xmerl/xmerl_ug.html http://www.erlang.org/doc/apps/xmerl/xmerl_ug.html
- jacquesm 13y agoI just spent nearly 2 years on trying to replicate the 'good' bits of Erlang in a less exotic environment. It's been one hell of a ride (I never knew how much I didn't know) but ultimately fruitless because it is simply too much effort to build this for the one application we have for it. So, reluctantly, we have come to the conclusion that it is better to re-use an existing platform even if that means having to deal with the warts of those platforms. Very frustrating. But then again, if it were easy it wouldn't make the money that it does. A defensible moat that is made out of hard work is a good thing in many ways.
- gngeal 13y agoor where you should be taking your career long-term Obviously, you have to learn Common Lisp if you're thinking long-term - the one language that people will still be using when all the ones you've named will be history!
- wglb 13y agoThere was a period of time when there was an absolute flood of Earlang articles posted here, perhaps a couple years ago.
- jacquesm 13y agoiirc that was to drown out even less desirable articles.
- bbwharris 13y agoLanguages are a tool. They are fun to learn. I always want to use something new on a new project but then I realize that I need to get it done and I need to find people that can maintain it. That takes the fun out of it. I do think that one can safely bet on scala or go and have fun. If you have the right architecture you can be as polyglot as you'd like. It's just risky from a maintenance standpoint.
- zeckalpha 13y agoI think the wave pattern is just do to how the web is structured and the way people find new interesting articles. Nothing about the culture of HN.
- melling 13y agoI don't look at it as being a language irrelevant thing, but more of a critical mass in adoption, and "burn-in" for non-mainstream languages. If you've been around long enough, you know that something like Clojure, Go, Scala, Python, or even Ruby aren't adopted until a certain level of acceptance is reached, that being often defined by your industry. At a start-up, anything might go, but at a Fortune 500 company, you might be stuck on a Java 1.4 project. The "drum banging" on HN is often the initial rumblings, or some other point in the adoption curve. By the way, you forgot about Dart. :-) The performance advantages seem attractive. Is it gaining any traction? One way I try to find out is by seeing if a lot of people are asking questions on StackOverFlow. http://stackoverflow.com/tags/dart http://stackoverflow.com/tags/dart -- 1386 questions so no traction. A few others: http://stackoverflow.com/tags/go http://stackoverflow.com/tags/go - 2697. Not so good. http://stackoverflow.com/questions/tagged/node.js http://stackoverflow.com/questions/tagged/node.js - 27, 301 Someone's probably asked all the basic questions. http://stackoverflow.com/questions/tagged/scala http://stackoverflow.com/questions/tagged/scala - 17,933 A little light? http://stackoverflow.com/questions/tagged/clojure http://stackoverflow.com/questions/tagged/clojure - 5709 - Really light! If only a few people ask questions a day, and you get stuck jumping in head first, you might regret that later if you're trying to move fast. Real world example, ...the guys at Twitter went with RoR and ran into scaling problems. Might be different today because RoR has matured? I wonder if the guys at FourSquare have some growing pains with Scala? If only the build would compile twice as fast...
- mercurial 13y agoOn the other hand Clojure dates from 2007, Scala from 2003. Comparatively, Haskell has 12196 questions, but it is more than 20 years old.
- asdasf 13y agoIt is rather unlikely that people were asking questions about any language on stackoverflow before stackoverflow existed.
- threeseed 13y agoScala is becoming much more popular in enterprise and large scale environments. Mostly because us developers who are working there know that companies like Twitter, LinkedIn, Foursquare etc. are using it and doing so incredibly successfully. And often frameworks like Play2, Storm, Finagle etc are perfect for our requirements.
- laumars 13y agoI appropriate your comment is meant to be flippant - and while I did enjoy the humour of it, the point you were seeming to raise bothered me a little. The reason why HN promotes so many different languages and paradigms is because different solutions are better suited for different people and problems. It's not about hopping languages based on the latest bandwagon, it's about people wanting to share their experiences with their new tools. What's more, just because many of us have got a little exited about Go / node.js / whatever, it doesn't mean that we're turning our back entirely on older technologies (case in point: I've recently made the switch to Go; both for web development and standalone console apps. However I still use shell scripts if I want to bang out some quick sysadmin routines. And I still use Perl CGI if I just need a very quick page thrown together for internal / personal use). I think it's great to embrace new technologies, but not at the expense of abandoning older technologies when they're a better fit. And I think most people on here are intelligent enough to realise that. So the diversity of languages you see published on HN are the equivalent of the variety of different IDE's or even OS's around - they're not always there to replace each other as they often set out to solve different goals; and nobody is advocating that members of this community should learn and hop to each new language like a Frogger sprite leaps from log to log. Just as you wouldn't be expected to switch IDE's nor OS's every few months.
- JulianMorrison 13y agoHacker News often suggests languages and I try them out. Go, I now use at work, because it's ridiculously productive. Many of the others, I learned about and learned from, even if I don't use them. For example, I don't use Clojure, but my understanding of time and change in programs is improved by Clojure's ideas.