Hacker News new | ask | show | jobs
by varjag 746 days ago
I would describe the minimal stack for self learning programming as the following:

1. Genuine interest

2. Ability to focus/concentrate and overcome frustration (there will be plenty)

3. Understanding of the basics: conditionals, iteration, functions and function calls, variables, basic input/output in any form. I would add on memory/pointers here, as understanding it will greatly improve your comprehension of what's going on even if you use a language that attempts to abstract that away.

It's worth finding a tutorial on these and do as many exercises as necessary. I'm not going to recommend any specific language as I think they all are bad for beginners in their own ways. You need not concern yourself with practicality or popularity of the language you pick though as your focus is on the basics. These skills are transferable, important and yet a tiny kernel of all your future progression. Then you'll be able to combine these basics to build some simple programs. Print a string backwards, guess the number, guide a cursor on a canvas by keyboard or similar.

From that point you can branch out to explore and comprehend actual CS concepts, and start with writing small practical applications.