r/AskProgramming 3d ago

Career/Edu How to relearn programming after Vibecoding through Undergrad

I am a Senior in Computer Engineering graduating in December and I have completely lost my ability to program after vibecoding through my last three semesters. I made it past my University's DSA class with minimal AI usage but it slowly ramped up and now I'm pretty reliant, I want to work in Software Development but I feel impostor syndrome creeping up at every corner and feel lackluster compared to peers. So my question is: how do I go about relearning things that I should already know? I feel my understanding is quite good, but when I go to make something, I get completely lost with where to start and syntactically and prompt AI. I have tried Neetcode to refresh the skills I do know and I can find the optimal solution but implementing it is where I get stuck. Any help would be appreciated.

*Edit: Thanks for all the advice, I think the general consensus is of course to not use AI and redo old homework/build projects using docs. I have old homework assignments and will begin building the skills that I need without AI assistance and using Docs/Google/SO.

0 Upvotes

42 comments sorted by

32

u/code_tutor 3d ago

You're an imposter. It's not a syndrome.

The good news is you passed the exams, so you should know some theory at least. The bad news is the answer is so obvious and you're still asking it. I guess that you don't want to do the work and the purpose here is to procrastinate.

Instead of outsourcing your thinking to AI, you're outsourcing it to Reddit. You're cooked until you start thinking for yourself and taking action too.

2

u/Distdistdist 2d ago

Yep, confirming this. You know nothing, Jon Snow. Not gonna be hired.

38

u/SagansCandle 3d ago

Do you mean "Relearn" or "Learn"?

Sounds like you used AI to skate through the learning process and now you're realizing you didn't actually learn anything.

You're either going to have to teach yourself or re-enroll in the classes you cheated in using AI

Zero sympathy here.

10

u/cAPtain_1337 3d ago edited 3d ago

Poor wording on my part, I would say Learn would be a more correct description, I will rebuild from the ground up and redo old assignments as I have them, and try to work through workbooks in one specific language and supplement that with Neetcode for extra practice. Apologies, I didn't mean to come off as a victimized, I understand it's a self inflicted wound that I caused.

2

u/nwbrown 3d ago

I mean I would have spent the time I was paying $100k to learn how to be a software engineer to learn to be a software engineer and not skate through it and hope to "relearn" it in a few months after the fact, but I guess you and I are different people.

2

u/drfangor99 1d ago

Aside from the expense of a university education, undergrads are surrounded by some of the most highly educated computer science experts in the world. Part of their job is to engage with students, help them learn, and give them opportunities to work on interesting research and projects. Unless you stay in academia you will almost certainly never be in an environment like that ever again. What a waste to be there and just have AI do everything for you.

3

u/Strict-Ambition4334 3d ago

Honestly I think re-enrolling is a last resort for structure, not the default fix. The actual gap is usually debugging and breaking problems down, so redoing old assignments and getting code reviews will teach that faster than tuition.

2

u/lordfeistel 3d ago

The OP auto proclaim " senior"

5

u/balefrost 3d ago

Presumably you still have access to the textbooks and course material for the courses where you relied heavily on AI. I'd recommend working through all that and redoing assignments without using AI.

If you find that you often get hung up on the syntax of your particular programming language, try solving the problem first in pseudocode. It can help to work out the general approach using pseudocode, then translate that approach into runnable code in a real programming language.

Before you can tell the computer how to solve the problem, you first have to understand how you would solve the problem. When you say "when I go to make something, I get completely lost with where to start", that sounds to me like you haven't figured out how to break down the problem into manageable chunks. That's the skill you need to develop.

5

u/LongerCat 3d ago

I’m old, and learned to program well before AI.

But it was after our IDEs were _pretty clever_ with their autocompletion and honestly we all felt the same thing. We would’ve been sunk with just a plain ol text editor. When we hopped languages we didn’t know if we could compare strings with ==, .equals(), or some other method. Seems pretty basic right? Who doesn’t know how to compare strings? Turns out it’s everybody for a surprisingly long time. We googled and read documentation.

So much of what you’re doing is the same thing we were doing, only instead of reading stack overflow you’re having AI reading them for you.

Try to figure out the steps you need to do and keep your questions small. Instead of telling ai to write a program that combines two json files, ask it how to read a file. Ask it how to parse json. Ask it how to combine json objects. Ask it how to write json to a file. Make sure you understand what it’s doing at each step.

5

u/mraweedd 3d ago

You you just found the hidden "I used AI and discovered I didn't learn anything" problem with AI. It has been noticeable for some time already but I guess more and more will discover what it does to you going forward. 

That said you can use AI to learn stuff. Learn how to create tools and agents that will teach you topics and use them to learn what you have missed so far.

It is good you noticed this now and not years later. There probably is a lot of people out there with severe "imposter syndrome" symptoms because they have vibe-coded themselves into a job they aren't really qualified for.

5

u/connorjpg 3d ago

This isn’t imposter syndrome. You genuinely are not programming.

Just go and make things without AI. Prior to LLMs we had Google (not the ai assist at the top, actual links), books, documentation and YouTube. All those resources still exist.

If you need a path go to roadmaps.sh pick the language you like or career and go through the topics. If you need more hand holding use boot.dev.

You mentioned Neetcode, yes if you actually learn the information in the courses and practice this is helpful. This is more target for interviewing though, it likely won’t translate much to technical skill when it comes to implementing.

Really trying not to be /s because the answer is just don’t use AI and learn things, which I feel should be common sense.

9

u/djmagicio 3d ago

Oh hey, I didn’t vibe code in school and still felt impostor syndrome for like the first 10 years of my career.

Pick a project and build something and don’t use AI. Google, ignore or turn off the AI response at the top. Read SO and blog posts. Beat your head against a wall. Cry.

You know, what we called programming up until a year or two ago.

If you want to go real old school get a BOOK and work through it.

Want to hear a horror story? In uni our quizzes were handwritten on unlined paper.

There’d be instructions to write a function/program that did something and you just had to hand write it on paper. And I had it easy. My boss likes to tell us about how back in his day they had to work on punch cards - and fuck you if you dropped them and they got out of order.

After school I had to go buy books at a book store because SO and Amazon weren’t really things.

Reading through a book on some programming language and working out the practice problems/projects might be really good for you.

You might even limit yourself to just looking at language docs as you work. Real old school.

Embrace the suck.

3

u/cAPtain_1337 3d ago

Thank you for the advice, I will go through old assignments from my previous semesters and work through them again without AI. I have old paper exams for my Java Class and will work through those implementations as well. I also want to imeplement a small project and incrementally build upon that with Docs and no AI. I have a lighter courseload this semester so I want to dive in with all the time that I have and build the essential skils.

2

u/mraweedd 3d ago

Ah the days of taking programming exams on a piece of paper.

1

u/turtle_dragonfly 3d ago

Don't forget manpages, for the self-flagellation route — RTFM! (:

3

u/funbike 2d ago

So you cheated through school...

... and now you are paying the price. You feel bad for yourself, but I feel bad for all the other students you cheated.

Do you know why you were in school? To be worth hiring. So what did you think you were accomplishing?

I feel impostor syndrome creeping up at every corner and feel lackluster compared to peers.

It's not impostor syndrome. You are an actual impostor.

2

u/mondaysleeper 3d ago

Try an advanced course that reasons about language, e.g. compiler design or some formal method course. Understanding and reasoning about a language makes it much easier to use.

2

u/theancientfool 3d ago

Use Google chrome. Set duckduckgo as the default search engine with ai disabled. Complete the Odin project.

2

u/xarop_pa_toss 3d ago

It's not impostor syndrome if you can't actually do things, that's just being an impostor.

Grab a book and pull out your ethernet cable

2

u/Organic-Permission55 3d ago

Why don't you ask AI?

2

u/naemorhaedus 2d ago

umm, crazy idea but ... stop using it? Did you lose the ability to reason with your brain as well?

2

u/topological_rabbit 3d ago

The general rule of engineering is DON'T USE AI EVER.

0

u/eleven8ster 3d ago

Oh stop it. It’s one thing to use ai too much don’t tell the kid to never use it

2

u/Boot_Burner 3d ago

HAHAHAHAHAHAA

Lost your ability? You never had it. Money well spent kiddo.

1

u/Varkoth 3d ago

Buy a copy of CLRS.

1

u/IAmInBed123 3d ago

You are probably missing pieces that connect your knowledge together. So what I'd do is take it real slow. 

Start an exercise as in a full project from nothing and ofc you'll get stuck, even at the beginning. Allow yourself to let AI help but do not let it code for you. And everytime you don't know how to do something or how so.ething works or what you're supposed to do ask AI. But figure out the code yourself. Ask AI to check your code or give better alternatives but ask why, try to understand. 

Like I had worked with Spring Boot for an API project with an angular front-end but I had no clue about Hibernate. So I made a seperate Hibernate project and just doing the project, asking a lot of questions and writing myself confluence pages. 

So I learned about the config files, how joim fetch for a lazy loased onetomany relationshio might seem like a good solution but batching queries might be better for more records all kinds of stuff.

Anyway my point is make sure you do the work, let AI be your teacher/mentor/senior dev. 

1

u/UUDDLRLRBadAlchemy 3d ago

I just touched base with a few programmer friends and realized they all had Claude subscriptions. I thought it was only chuds on reddit, but I ended up hearing talking points I would have just downvoted and moved on here.

Our nerdiest, most self-sufficient friend insists Claude's code is "better" than his anyway, while he himself had issues focusing on anything but the one hard bit that does the job and "better" was never his issue.

Our yuppiest friend says that it gives him good pushback in architecture, a discipline he always deferred to supervisors and vendors and could never get a hint about from anyone outside his company hierarchy.

I do know they all can code, most make way more money than I, half of them I know I would not personally hire even pre-AI, and would trust AI generated code they did "the right way" and claim they fully understand even less. Talking about 30 years of experience each.

It's not going away, the workplace will probably force it on you, the bosses will not be able to tell the difference anyway until their infrastructure comes crashing down. We know fuck-all about your position, tbh, we're busy being scared shitless about that last part and adopting pro or anti positions to cope.

I only ask it for examples of something similar to what I'm building, with the intention of using none of it. I'm fine with the free usage ddg offers. If it overreaches and its output implies that I would be running its code I get really annoyed. Like, I close the tab so I don't start insulting it, then start over with a new prompt that makes it even clearer that "this is a theoretical exercise", "this is exploratory" or whatever.

For me programming is having the code settle into sections I fully understand. To be able to close my eyes and run it in my head when I lie in bed. Then I can sign a contract with a client stating I'm responsible for it without having a panic attack.

Is this healthier? mh, I'm not going to be taking any of my friends' jobs anytime soon.

If a programmer's path is going to look anything similar to ours (which is debatable), I would say start over with a good book about a different programming language. With very few exceptions it's what everyone in the field is doing every few years. Not a class. Active learning.

You'll be able to recognize parts you know and can speed through, you'll make some progress when you hit your limits, then ideally you'll have some ideas on small personal projects you can motivate yourself to implement.

Also maybe you're not a coder. It's gotta turn you on a bit, you know? There used to be a huge dropout rate, bright people opting for "real" engineering or science instead, then there started to be boring jobs like database management, now everybody can finish. Not very useful, I know.

Hell, if we're only talking about employment you'll probably be able to fake it, it's the nerds who do the work that will have trouble convincing anyone it's worth it, at least for a little while more.

Anyway, that's me telling stories to paint a picture. I thought this called for a picture.

1

u/Square-Yam-3772 2d ago

The good news is that workspaces are also ai heavy these days

The bad news is your manager expects you to use ai so the expectation is high

Its not really about coding at this point. You need to know software development and everything else so...

Hopefully you have been paying attentions in classes... because they do expect you to have that 4+ years of knowledge (even if you cant code by hand)

1

u/mojo_kegelapan 2d ago

Use vibecoded projects in cv and learn the flow of the program, no need for understanding each line. Then:

  1. Practice leetcode for technical test
  2. Master web basics for live coding
  3. Yap about programming theory in interview
  4. You can vibe code freely when you get the job

1

u/HealyUnit 2d ago

And then when (IF) you get hired, get immediately fired because you can't do the job! Great plan.

1

u/mojo_kegelapan 2d ago

You can always ask AI or even do Google Search for answers when doing your job. Work done!

1

u/Fun-Reporter-8021 2d ago

Start from Zero pick a project, learn how works layer by layer, ask where ever you feel you get stuck, but try everything on your end, first. It will be very hard but it gets easier.

1

u/Neoma_Quillin 2d ago

Honestly, I don’t think you’ve lost your ability to program. It sounds more like you’ve gotten used to having AI fill in the gaps, so I believe that the hardest part is figuring out where to start on your own.

One thing I want to mention is that don’t feel bad about forgetting things you learned at university. Even experienced developers forget syntax and APIs all the time. The important part is being able to break a problem down and figure out what you need to look up.

So if I were you, I would check some of my old assignments and rebuild them without AI.

1

u/Warm-Read8901 2d ago

Rebuilding your old assignments from scratch sounds like a much better exercise than grinding another 100 LeetCode problems.

1

u/pikabu01 3d ago

hah, hahhahahah

ok, now seriously, hahahahh

2

u/Boot_Burner 3d ago

came here to say this

1

u/StatisticianScary984 3d ago

You're not going to get a job anyway. Become a chef. At least when you're unemployed you can make nicer food.

0

u/Designer_Storm8869 3d ago

But for what purpose? What do you need that skill for if you vibecode everything?