I'm 17 and finishing grade 12, and I want to approach programming more seriously instead of jumping between tutorials and languages. There's a lot of conflicting advice online, so I'm trying to figure out what actually matters.
How do people move from following tutorials to starting with an idea and building a reasonably complex project from scratch? I'm currently interested in Python and C, but I'm also curious about Rust and other languages. Is it better to focus deeply on one language first, or learn several programming paradigms?
I'd also like to know which parts of computer science are useful to study alongside programming, what different areas of software work are actually like, and whether fields such as systems, security, machine learning, infrastructure, research, developer tools, and reinforcement learning are worth exploring early.
Finally, with AI becoming increasingly capable of writing and debugging code, is computer science still a good long-term direction for someone starting college next year? If you could go back to the beginning, what would you do differently, and what would you avoid wasting time on?
2 Answers
The biggest change comes from building things, not collecting tutorials. Pick one language and make small projects that gradually become more complicated. Break each idea into manageable pieces, decide what each part is responsible for, test your assumptions, and expect to rewrite things. A complicated program is usually many simple parts working together. You don’t need the perfect design before starting; build, learn from what breaks, and improve it.
Computer science and software work cover a huge range, from infrastructure and security to research, data, games, embedded systems, and developer tools. You don’t need to choose a specialty at 17. Explore through projects and introductory courses, then notice which problems keep your attention.
AI will change how developers work, especially by reducing the amount of routine code they write. That makes understanding design, debugging, trade-offs, and system behavior more important, not less. AI-generated code still needs someone who can evaluate whether it is correct and appropriate. If you enjoy solving problems with code, it is still absolutely worth learning.

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