I'm relatively new to programming, having dabbled in Python and Lua mostly through courses, but I find this method quite dull and slow. Instead, I've learned more effectively by experimenting and creating my own projects while looking up syntax or specific tutorials as needed. I'm curious about the best way to expand my skills: Should I learn from the ground up with basic examples then move on to independent projects, or is it more beneficial to follow structured courses like Codecademy or similar? Additionally, I'd like to know how professional programmers approach learning new languages since I'm looking to expand into C and C++. Should I get a solid grasp of the syntax first before diving into projects, or can I take a more hands-on approach right away?
5 Answers
I've been programming for years, and I typically learn new languages by diving into a resource until I'm comfortable with the syntax, then getting hands-on with projects. If you already know a few languages, picking up more becomes easier. Learning the quirks of a new language usually happens through practice and project work.
I usually learn languages from textbooks, and it's been a great experience. No Starch Press has fantastic resources, and you get a deep understanding of programming concepts along with practical syntax. Books like 'C++ Crash Course' can be especially helpful if you're familiar with other languages and want to ramp up quickly.
If learning by experimenting excites you, lean into that! Courses can be tedious for many. For C and C++, I suggest a quick syntax overview then jump straight into creating a small project. Pros tend to read documentation and build stuff repeatedly, so starting small could be a good fit for you.
It all boils down to your learning style. Don't stress about finding the perfect learning method—just dive in and start trying things out! The sooner you start experimenting, the better. Waiting for the perfect plan just delays your progress. It's about starting now, learning from mistakes, and adjusting as you go.
Hands-on learning is definitely more engaging. A brief look at basic syntax followed by practical projects works well. Many professionals learn new languages as they need them for specific tasks. For C and C++, getting comfortable with a bit of structured learning can help, especially with tricky concepts like memory management.

Related Questions
How To: Running Codex CLI on Windows with Azure OpenAI
Set Wordpress Featured Image Using Javascript
How To Fix PHP Random Being The Same
Why no WebP Support with Wordpress
Replace Wordpress Cron With Linux Cron
Customize Yoast Canonical URL Programmatically