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

I don't think there's a reason to be limited to 3 programming languages. Perhaps you can only be fluent in 3 languages at once, but knowing more languages is definitely not harmful. I know more than 10 languages to a degree where I have written at least one non-trivial project with them. I can't claim to be fluent in all of them at this moment, but I can quickly ramp up to a productive level in a matter of a few days.

Now if I had to pick three languages, they would probably be something along the lines of:

1. C. This language has been relevant for 40 years, and will remain relevant for at least another 40 years. Low level understanding of computer operation is paramount for a lot of advanced tasks.

2. Python/Ruby/Lua. A dynamic "scripting" language is very useful to get stuff done quickly when you need it.

3. A functional language: Haskell, ML or Lisp. Knowledge of this paradigm will make you a better programmer, regardless whether or not you get to use it in your day job.

There are languages I'd like to add to this list, namely something like Java/C# (a "managed" imperative language). And then some "brain teaser" languages to expand your horizons, Prolog is a good one for a rainy weekend and doing some simple Brainfuck programming because Brainfuck is to Turing machines what Lisp is to Lambda calculus.

But I disagree with the "3 languages" rule here, I'd recommend trying to learn a little bit of a new language every year. Next on my list is Rust.



"I often feel that the American programmer would profit more from learning, say, Latin than from learning yet another programming language." -- Edsger Dijkstra https://www.cs.utexas.edu/users/EWD/transcriptions/EWD06xx/E...


Dijkstra was a great scholar, but often very extremist in his thinking; probably he was well aware of his extremism and even use it as a tool to over correct some issues.

For instance, he was very right about the goto abuse but the idea of removing a powerful tool from your belt just because can be abused is a bit too much. Here I suspect is happening the same, he was concerned about people learning a lot of languages but not mastering a single one, still that doesn't negate the advantages of master one language and learning more.


"But I disagree with the "3 languages" rule here, I'd recommend trying to learn a little bit of a new language every year"

Absolutletly agree. By the way, an interesting language to learn is Smalltalk.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

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

Search: