I started a computer science bachelor's degree four weeks ago with almost no programming experience. We are learning Rust, and the early material—conditionals and loops—felt manageable. Functions were more difficult, especially exercises involving minimum, maximum, and average values, and translating mathematical formulas such as Newton's method into code felt overwhelming. Now we have moved on to structs, enums, options, and tuples, and although I can often follow the explanations, I struggle to apply the concepts independently in assignments.
I attend tutorials, ask teaching assistants questions, read the Rust book, watch videos, and use an AI assistant for hints or explanations when I am stuck. Sometimes I ask it for code, then study the result line by line to understand how it works. I do enjoy programming, but the amount of time it takes me to understand basic ideas makes me feel unintelligent. Unlike learning a mathematical formula from an example, programming requires figuring out how to break an unfamiliar problem into smaller pieces, and that process is still very new to me.
I want to become capable of writing programs without someone guiding every step. Would asking an AI assistant to create additional exercises at gradually increasing difficulty be a useful way to practice, or could that make me too dependent on help?
4 Answers
Using AI to generate similar exercises can be a good approach, especially if you ask for small hints, test cases, and explanations instead of finished code. Treat it like a tutor, not an answer machine. A useful progression is to solve a problem yourself, ask for one hint when stuck, implement the next step, and only look at a full solution after making a serious attempt. Rewriting the solution yourself and changing the requirements will show whether you actually understand it.
Do not conclude that difficulty means you are not suited for software engineering. People often find different parts of computer science easier or harder, and beginners have not yet developed the pattern recognition that makes programming feel natural. You can also supplement your coursework with beginner exercises or puzzles, but keep them simple enough that you can explain every line. If a problem takes a long time, that struggle is often part of the learning process; just make sure you take breaks and ask for targeted help when you genuinely reach a dead end.
Four weeks is extremely early, and Rust adds its own complexity. Structs, enums, and options may seem abstract until you use them repeatedly in small programs. Go back to older exercises and solve them again without looking at your previous work. Make tiny programs—such as a menu, a simple calculator, or a record that uses an enum—and experiment with changing the code. The goal right now is building intuition, not solving everything quickly.
What you are experiencing is very normal for a beginner. You are learning both programming concepts and the skill of decomposing problems at the same time, and that takes a lot of practice. Looking things up is not a failure—even experienced programmers constantly check documentation. Try attempting each problem yourself first, writing down what you know, and identifying the exact point where you are stuck. Then use AI or another resource for a hint or explanation rather than immediately requesting a complete solution. Afterward, close the solution and try to recreate it from memory, then revisit the exercise later.

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