So I’m an on/off noobie but have been focusing on actually sticking with programming what I’ve been working on is Python but this question is for programming in general. For me it’s hard but I want to see how I can get better
Like are these good ways to get good:
Follow tutorials, then work on ways of adding your own twists or changes? Or trying to code it in something else?
Work on assignments from a resource you’re using like in my case Python Crash Course and attempt to redo the assignments without looking back?
Experiment with multiple libraries and library methods or built in methods?
Please share any other ways especially ones that helped you
Also when would be good to start a new language after learning one


I think the best way to get better at programming is to
If you like, you can also just read some books or scour some programming related communities for general info, without some specific goal. However, most people don’t have the motivation to do that, because they don’t know what that information is good for yet. That’s why, for most people in my opinion, it’s better to just try to do something and then learn (better) ways of doing what you want, because then you actually immediately get what it’s good for and why you’d need it.
I disagree with your first point, when I started learning c++ I wanted to make an integral approximator, an approximator that takes any function and returns the approximate value. I already knew programming through java, and I’m not entirely used to the C++ syntax. Basically what I did to do my programming project that was “fun for me” was rush through the learning process, skipping detail of classes, inheritance, polymorphism, structs, linked lists, pointers and arrays, to get to lamda functions. Eventually I did get to learn c++ formally with my programming class, most of which I don’t remember learning it during the summer. Its not that doing your own projects is bad, you just can’t be overly ambitious on it.
It’s almost like being overly ambitious is simply a bad thing, not being specific to programming or learning programming.
That #1 is crucial. I see a lot of people get stuck in tutorial hell or burn out from doing other people’s projects. Some tutorials are okay if you’re just starting out but at some point switching to your own projects and challenging yourself is necessary
And since OP mentioned being on/off, i would also just say be consistent. Dedicate some time to work on your own projects so you’re not forgetting stuff before it really sticks