I'm a computer science student in France about to begin my second year, and I'm worried that I barely retained anything from the first one. Depression, stress, a long commute, poor sleep, and difficulty concentrating made lectures and exercises increasingly hard to follow. By the end of the year, I had also become dependent on generative AI, especially because some instructors encouraged using it and the coursework felt difficult to finish without it. I passed largely because of strong grades early on, but now I'm concerned that I can mostly write code mechanically without understanding the underlying theory, problem-solving methods, or technical concepts.
I don't think restarting the entire year is realistic, and I'm not sure I have the time or energy to relearn everything while keeping up with second-year courses. How would you rebuild your programming and CS fundamentals in this situation? What topics would you prioritize, what could wait, and how would you balance targeted review with current coursework? I'd also appreciate hearing from people who went through a difficult period and still managed to succeed in computer science.
4 Answers
The concentration and motivation issues deserve attention separately from the academic problem. Depression, exhaustion, and executive-function difficulties can make learning feel impossible, so contacting a doctor, counselor, or therapist could be just as important as reviewing programming. Getting support isn’t an admission that you’re incapable; it can make the studying you’re already trying to do effective again.
I wouldn’t try to relearn the entire first year. Start with the language and concepts that your current courses actually depend on, especially basic data structures, algorithms, and problem-solving patterns. Spend a few short sessions each week rebuilding those skills through small programs.
For a while, try working without AI, even if everything takes longer. Attempt the problem, write down what you understand, and debug on your own before using any outside help. If you do use AI later, treat it like a tutor that gives hints or explains an error—not something that writes the solution for you. Put most of your energy into second year and repair gaps as they appear.
You may be judging yourself more harshly than the situation deserves. Forgetting details after a stressful semester is normal, and knowing that a concept exists and where to look up its details is also part of being a programmer. You don’t need every syntax rule or algorithm memorized before moving forward.
Choose one small project or an old first-year assignment and rebuild it from scratch. Keep it slightly beyond your comfort zone, and focus on understanding each decision rather than producing lots of code. A few focused sessions of 30–60 minutes per week can be enough to regain momentum.
I’d avoid restarting from the beginning unless your university specifically requires it. Make a short list of the topics you can’t currently explain, then rank them by how often they appear in your second-year classes. Review only the highest-priority gaps first, and let the current coursework show you what needs attention next.
Also, don’t worry about mastering all of computer science at once. Many people continue discovering supposedly basic topics years later. The key milestone is becoming comfortable struggling with a problem and gradually finding your own way through it.

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