Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

The fear of making the "wrong" choice actually makes the familiar, mastered PHP more attractive.

The multi-core reality means that the long-term languages will have a strong concurrency model. Clojure and Go are two languages with strong concurrency models that are building momentum and have potential to go mainstream.

But for your first foray out of PHP, I would pick a language that has a large, well-established community with mounds of documentation, books, and resources.

My path out of PHP would be:

  1. Python
  2. Clojure
  3. Go
Learn Python first because it's easy to learn, easy to read, and it's taught at major universities so it's easy to find smart people to help. It has a large community behind it, which is still building momentum, and it has a huge library so it's generally more useful than Ruby.

Then once you're comfortable with Python, I would venture into Clojure. It's different, but in a good way. And you get access to all of Java's libraries so it's practical now, even though it's relatively new.

And then look at Go. Go is building momentum fast, but right now it doesn't have the massive libraries that Python and Clojure have. However, in a few years, this will change.



I think that multicore support is unlikely to be the crucial feature that cements the success of the language of the future for simple CRUD web apps. Such apps are invariably not CPU-bound. Wide support on hosting providers, tooling, ease for novices, database access, etc. are far more important--which explains the success of PHP in the first place.


You're assuming that simple CRUD apps will still be interesting in the future. It's possible that future apps will be CPU-bound.

It would be nice to have a language that lets you prototype quickly but also build the real deal efficiently. Actually, not having such a language should be embarrassing for the software industry.

Maybe Clojure fits the bill, difficult to say.


Multicore will drive the development of languages in general, and this will bring with it the libraries and ecosystem.

So if you're stuck in limbo trying to "make the right choice," concurrency is the feature that you should pay attention to because it will bring the dominant language in years to come, even if the CRUD devs don't use it directly.

And who knows what the basic Web app of the future will be, it may not be CRUD forever.


If your goal is to work at Google maybe.

If your goal is to become independent and wealthy, perhaps not.


What would your path be?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: