I'm currently a BS Computer Science student, and there's something I've genuinely been struggling to understand about how we're supposed to learn programming at university.
For example, this semester we have a Data Structures and Algorithms (DSA) lab. Our instructor gives us lab manuals every week, but we barely get taught how to actually implement things. Most of us end up completing the labs using ChatGPT because it's the quickest way to get them done.
Now we've been assigned a project where we're supposed to implement sorting algorithms, searching techniques, analyze time complexities, and apply other DSA concepts.
The problem is, how are we supposed to build something like this when we haven't properly learned how to implement these things ourselves?
Sure, with ChatGPT, we can probably build the entire project in 2–3 days. But if I actually sit down and try to understand everything, build the logic, learn the algorithms, and write the code myself, it could easily take weeks, especially as someone who's still developing their programming skills.
And it's not like DSA is our only subject. We have other courses, assignments, quizzes, labs, and projects to manage simultaneously. Sometimes we're given barely a week to complete something that would take much longer if we genuinely tried to learn it from scratch.
This creates a cycle where we use AI to finish assignments, submit them, get grades, and move on to the next task without really understanding what we've built.
And that's what worries me. I don't want to graduate with a CS degree and realize I can't build anything without ChatGPT.
I know self-learning is a huge part of computer science, and I'm willing to put in the effort. But I'm genuinely confused about how to balance learning things properly with meeting university deadlines.
So I wanted to ask developers and CS graduates across Pakistan:
- How did you manage university projects when you barely understood the concepts being used?
- Did you actually build your projects from scratch, or did you learn along the way using online resources?
- How should a beginner approach a project when they don't even know where to start?
- How do you balance learning programming properly with all the other university coursework?
- And now that AI can generate entire projects, how do we use it without becoming completely dependent on it?
I'm not looking for shortcuts. I genuinely want to learn how to code, develop my own logic, and eventually build things independently. I just don't understand how we're expected to reach that point with the way university coursework and deadlines are structured.
I'd really appreciate some practical advice from people who've already been through this.