Ask HN: Which programming games helped you become a better programmer?
There are numerous programming games available that claim to teach you how to code. However, I couldn't find any posts on HN that confirmed or denied their usefulness. Except this one, but it's from 5 years ago: https://news.ycombinator.com/item?id=13566247
1. Are there any good beginner programming games in widely used programming languages (like C, C++, C#, Java, JavaScript, Python, PHP)?
2. Are there any programming games that have helped you become a more advanced programmer (or a better programmer)?
I am interested in games that are not just fun, but also teach you programming useful in the real world (maybe not directly, since it's a game, but still).
89 comments
[ 3.6 ms ] story [ 154 ms ] threadThese days, you will most likely have your account restricted and banned from an entire ecosystem of games if you try this, but back in the days where flash was dominant you could do lots of fun things with little risk. Many fun times in Runescape making dollars off my bots that ran air runecrafting bots, or Fist of Guthix bots in F2P and selling the GP I got for the rewards. Does not need to be very complicated either IMO.
For a direct answer, I think Minecraft has a lot of options for learning programming without really learning programming. I have never played it but I have seen what others have done in what I believe is creative/builder mode.
- Turing complete: helped me understand how a computer works, how binary works and what the instructions and operations look like at the hardware level
- Factorio: helped me understand broader aspects like availability, fault tolerance, decoupling, team management, prioritization.
Even now, when I am working with frontend designs, I sometimes am mentally picturing my elements as frogs that need to be placed in the right place :D
Factorio doesn’t exactly have code. However, it’s very much a game about systems, and how to efficiently build and manage them.
In fact, Shopify expensed the game for their employees [1]
1: https://twitter.com/tobi/status/1294330081452666882
Translating the solutions of my Factorio problems into my real world problems worked like a charm.
I don't think any game will make you a better programmer. It can get you interested, sure, but becoming a better programmer is only so much related to having in-game fun, and is often a matter of more self-discipline.
As for becoming a better programmer, it's all about practice. CodeWars might be what you're looking for: https://www.codewars.com/
and communication, and writing simple readable code
for a lot of programmers solving "tricky" algorithmic questions are more the exception then the norm
In turn while it's a must have skill for senior programmers for mid level programmers improving skills around communication, writing simple easy to read and understand code often is much more useful.
Edit: and being able to abstract properly/see beyond the marketing (especially for web).
I suppose you could just do the tasks and ignore the website itself.
The "real world" always provides much more interesting "gameplay", but it is sometimes with a too steep learning curve. :)
Edit: And I've been ninja'd by another user, but just remembered that there is another in my wishlist - [5] Baba is you (haven't played it, though)
[0] https://grasshopper.app/ [1] https://zachtronics.com/spacechem/ [2] https://tomorrowcorporation.com/7billionhumans [3] https://tomorrowcorporation.com/humanresourcemachine [4] https://zachtronics.com/tis-100/ [5] https://www.hempuli.com/baba/
Go read a book!
It’s a series of riddles that are meant to be solved using the python language. It’s really old now but I’m hoping that some library specific riddles are still relevant. Apart from those few, most of them should be language agnostic as well.
I’ve always wanted to create a similar thing to replicate the experience in JS but never gotten around to it.
Edit: oh also completely agree with most of the recommendations here. Particularly with TIS-100, Factorio and Human Resource Machine.
Counter-snipe: https://challenge.synacor.com
I guess, I have to try some of the games that everyone has mentioned.