I want to start making software projects, but my coding skills are still fairly basic. I'm especially interested in building full-stack websites and eventually experimenting with training AI models. I'm a third-year computer science student and understand the fundamentals, but I'm unsure what would be a suitable next step or how long it might take to feel comfortable working independently.
4 Answers
Full-stack development and training AI models require very different knowledge. For web development, choose a small app and learn the frontend, backend, database, testing, and deployment pieces one at a time. For AI, begin with manageable projects such as image or handwriting classification. Training a useful large language model from scratch is an advanced research and infrastructure problem, not a typical beginner project.
You can begin immediately rather than waiting until you feel ready. Pick a project just beyond your current ability, use documentation and tutorials when needed, and expect the first version to be rough. Even beginners can build a basic web application in a few weeks if they work consistently, although understanding, securing, and maintaining it will take longer.
Start with something small and useful, like a calculator, to-do list, or scorekeeper for a game. You can keep improving the same project as you learn new concepts. A complete full-stack application or an AI model is a much bigger first step, so building a few smaller projects will give you momentum and help you figure out what you enjoy.
There isn’t a fixed timeline. It depends on how consistently you practice, how well-structured your learning path is, and whether your materials explain the fundamentals clearly. A simple web app might be possible within months, while becoming comfortable building and deploying more complete applications could take one to three years of steady work.

That makes sense. I’m not completely new to programming since I’m in my third year of computer science, but I wasn’t sure whether I should focus on web development or start with a smaller machine-learning project.