Learning Multiple Languages

This cluster debates whether programmers should learn additional programming languages for broader insights and flexibility or focus on mastering a few, domains, frameworks, or core principles instead. Opinions range from embracing polyglot programming to prioritizing depth over breadth.

📉 Falling 0.2x Programming Languages
4,041
Comments
20
Years Active
5
Top Authors
#5503
Topic ID

Activity Over Time

2007
29
2008
89
2009
116
2010
211
2011
198
2012
220
2013
271
2014
293
2015
255
2016
279
2017
234
2018
271
2019
249
2020
246
2021
289
2022
353
2023
184
2024
143
2025
104
2026
7

Keywords

PHP AI SQL HN JS NET VB OK VB.NET SOLID languages language learn programming learning python programming languages new languages learning new learn new

Sample Comments

drallison Dec 21, 2019 View on HN

I guess I am an outlier. You should learn both languages and any other you encounter. Learning a programming language (after the first few) is not particularly difficult. Each language gives some small insight into how a program (or programs) can be structured. It pays to learn a few assembly languages as well to learn how abstract programs can be mapped onto hardware. Focusing on a particular language to enable career growth is not rational behavior.

SnooSux Mar 11, 2022 View on HN

Instead of exploring different languages learn about different fields and domains. The language may be basically the same (outside of some more esoteric ones), but Data Science is a very different experience from Web Dev which is different from Embedded Systems. Get out of your comfort zone a little.

lsiebert Apr 6, 2014 View on HN

I'm going to suggest that you don't learn a new language, but that you learn how to deal with broader issues and to think about problems.Go deeper, not broader. Another language can help you learn about stuff, but knowing languages is less important than understanding how they are used.Learn about event handling. If you have toyed around with C, get an arduino and learn about hardware interrupts. Learn about concurrency and distributed systems. learn about semaphors and locks

thebouv Feb 15, 2016 View on HN

There are lots of tools and even lots of toolboxes.What do you like to do? What can you find work for?If you know other languages, you can shift easily. It's not like you have to invest years into a new language if you're already proficient with others. You're not going to forget if/else logic, what functions do, or object oriented basics. Most languages just have their own syntactic sugar on all of that.Learn Python.Learn Node.Learn Julia.Be flexible.

hello_moto May 18, 2010 View on HN

Life is about making choices and perhaps knowing your limitations as a human being.You can either be someone who knew various programming languages and wrote a few small single-purposed libraries (and jump the wagon to another new languages) or knew two or three programming languages and build something big.It's a choice. Ask yourself if you are truly interested at these languages or is it because of the HN side-effect (hang out with a crowd with certain belief, you'll become them or want

brudgers May 8, 2015 View on HN

Learning a third language after C# and Python will make you a programming polyglot regardless, so why plan to artificially limit yourself to three?Message passing Ruby, homoiconic Lisps like Clojure, or the diagramatic J is each, like the languages you know, better for some things than others. Finding "the language of your soul" doesn't start with a specification. Comfort with picking up new languages is a sound long term skill.Good luck.

dsalkhfldsahf Jul 29, 2018 View on HN

How about focusing on a domain rather than languages? Say you're interested in Natural Language Processing. Pick a language and become an expert in NLP only. You'll be valued for your domain knowledge even if you're not that good of a programmer. That way you're not pressured to pick up a handful of languages, which pretty much do the same thing anyway.

qwerta Nov 6, 2012 View on HN

Dont be a polyglot, it is read to hell! Learn only two languages which are stable, use similar stack and complement each other (C and Lua; C++ and Python; Java and Clojure). And become _best_ at those two.

Skywing Oct 18, 2011 View on HN

I think it's worthwhile, if only to see what all the hype is about. You may like it or you may not. That's a decision you will benefit from being able to make, though. If you know enough tools to be able to approach a particular problem and then assemble your tech stack based on which of those tools solves it the best, or to your highest liking, then you're better off than you were when you only had C# to choose from.You most likely won't find a company that is willing to pay you while you le

davidgf Aug 5, 2017 View on HN

I wouldn't stop learning new languages. They are just tools, and knowing several of them lets you better judge how to face a new project/problem. I was (in fact, am) a happy Rubyist, but had to start working with Node and learnt to love the beauty of event-driven programming and prototypal inheritance. Now I'm learning Elm, as I'm quite interested in functional programming and event sourcing. I wouldn't say that any language is better that another, but knowing some of th