Ask HN: What should I learn as my first programming language?
I always recommend Lua as a first language. It&#x27;s about as straightforward to learn as Python, but it&#x27;s smaller and simpler, with fewer &quot;gotchas&quot;. Once you&#x27;ve learned Lua, moving to Python is about as easy as moving to Javascript.<p>I don&#x27;t recommend Python or Javascript because while having a rich set of third party modules is great for actual development, it&#x27;s a detriment and distraction for beginners. When you&#x27;re learning the nuts and bolts of programming, it&#x27;s easy to be misled by how easy some common task is to perform via API call and think you understand it when you haven&#x27;t really been exposed to it. This becomes a big problem when moving to some other language, where library functions work in a different but equally straightforward way. When it comes to things outside the core standard library, you should really learn to implement them yourself before becoming accustomed to using third party libraries.<p>Python is a great <i>second</i> language, but the way you write things for a beginner programmer is very different from the way you write things when you&#x27;re trying to be clever and squeeze a lot of behavior out of a few characters or a few cycles, and python has too much of a mixture: searching for information on how to solve a problem in python will get you equal numbers of people who don&#x27;t know how a for loop works and people who prefer to do everything by passing lambdas around.