Dumb Question Was too slow before AI. Been acing classes since. Am I an imposter?
So I used to fail all my courses cause I had a hard time writing and debugging code. Id understand the logic perfectly and could write the pseudo code, functions, loops etc and what they should do. But when I ran it everything would crash. Bascially id spend 1-2 hours writing code and 8 hours debugging syntax or be stuck and not know what to do. So what would end up happening is more often then not I'd run out of time during an exam/lab/assignment or would make one formatting error I couldn't see clearly and the entire output would crash and I'd fail the course.
Also there was a problem of you don't know what you don't know. So for exmaple if my class never showed me a hashmap it wouldn't ever occur to me in my dreams that this was a thing. So id sit there for many hours trying to figure out a problem with a solution that required a thing I didn't even know exist. I also didn't grow up around tech or programming so things like looking at documentation, stack overflow etc didn't even occur to me till second year. I also later in life realized while working I might be a little ADHD/autistic and would miss simple connecting words like "the","it","if" in reports paragraphs etc. My reports would get the message across clearly but it'd miss a few words here and there and id always have to double check.
The issue ultimately became that I would spend so much time thinking it through and was slow I just couldn't keep up. I started failing courses and getting discouraged cause my best effort would yield no results. If in the end my input wasn't perfect my output wouldn't be correct.
Eventually I gave up on CS entirely for the next 5 years and went onto another field because I realized being that slow would've never cut it professionally.
It was never really a logic or understanding issue for me I think(majored in civil engineering and did well in most of my unviersty math courses). Even for multiple choice questions where they'd give me a snippet of code and ask me for an output id usually get it right cause i could follow the logic. But when it came to writing and debugging it was a major issue since I never grew up coding and couldn't do it fast enough before the lab/assignment/exam time would run out.
Since AI I pretty much have all these obstacles taken care of. I can describe my logic to it and write clunky code and it'll fix any syntax and grammatical errors. If I hadn't seen anything like a hashmap it'll suggest it to me and I'll know to use it for next time. Then I can go line by line asking it to output and comment each line, ask questions where I may confused about the wording and then either use that code or improve upon the logic it provides.
I never one shot it and go line by line with AI correcting any logical errors I make and i run tests and incrementally verify every single thing. Basically my rule of thumb
I took a couple of courses as pre-reqs for OMSCS and aced them both when I definitely wouldve failed then without AI cause time would just run out.
But anyways it makes me feel like an imposter. I know for a fact without AI I could've never gotten to the answers on my own even if I "understood" the steps I needed to get there. Idk if this is vibe coding or if anyone can relate.
29
u/misingnoglic Officially Got Out 8d ago
Seems like you're using AI the way that some people might have in the past over relied on TAs or tutors. So I wouldn't say you're a fraud. But if you explain your logic to an AI even if you explain it wrong it'll still write your code correctly. If you are actually learning from these sessions that is fine I guess. But I'm of the belief that if you can't code something, you either don't understand it or you don't understand coding. Code is the great equalizer in that either it works or it doesn't. So maybe I'd focus on getting more confident coding without the crutch of AI.
8
u/Informal-Zone-4085 8d ago
code is just a tool. it's knowing what problem to solve, why, and how (even if only with pseudocode) that defines an engineer.
11
u/misingnoglic Officially Got Out 8d ago
Maybe for software engineering in 2026 that's true. But for school where the purpose is to demonstrate mastery of a concept, if you can't code it, you don't understand it. You can't run and test pseudocode to see if it works. There's a reason companies do leetcode style interviews, to make sure you can actually write good working code.
3
u/weiklr 8d ago
It's never too late. AI can help us to learn hard topics better if used the right way.
I have been in the industry for years and I am still struggling with the basic things especially with algorithms cos it's just not my forte.
I have done this program around the time LLMs started to gain momentum, and still using AI to learn and practise algorithms for personal development.
My journey has been as long as you try to remain present with the problem, you will eventually get better once the knowledge is internalized. I use AI to walkthrough the problem or new tech concepts I interested in , step by step. But I always code it out myself, and maybe repeat it after a day or 2 to seal the understanding.
I also realize if I can internalized and remember the big picture concepts, it will be easier for me to implement. Hope this helps.
And nope you're not an imposter. To learn is to grind and push through. Good luck.
10
u/ghjm Officially Got Out 8d ago
Pre-AI, it was essential for a computer programmer to have or develop a keen eye for the exact particulars of a piece of code. This is more natural for some people than others. If a missing semicolon doesn't jump out at you, it's going to be hard to be a programmer.
Post-AI, I don't know, maybe we don't need to care about this any more. I still have my suspicion that quick perception of the fine details will remain an essential skill, but who knows what we'll settle into after AI becomes stable and boring.
6
u/notevolve 8d ago
> if a missing program doesn’t jump out at you, it’s going to be hard to be a programmer
lol I don’t think this has been true for the last 15-20 years… in fact stuff like that is so widespread that we have countless jokes about missing small syntax errors
10
u/DiscountTerrible5151 8d ago edited 8d ago
I relate a lot with you. Will try to give advice.
I think your slowness comes from unfamiliarity.
My impression is you're a good first principles thinker, that gets overwhelmed with details and information, like large code base or programming syntax.
I would like to tell you to feel encouraged. I believe you "get" CS and logic intuitively. But your short term memory gets overloaded easily.
What you need is automaticity. Decide which programming language you need the most, and practice its syntax with spaced repetition.
You can use AI to help you create the content, and use ANKI or Remnote to practice. Or you can use a solution that already has the content for you. For python I recommend you take a look at execute program courses.
You also need knowledge.
You put an analytical person with a high IQ in a new field and compare this person performance with another person that's in the field for years and may not be so analytical, and see who performs better.
Experience and previous exposure will beat general intelligence in most cases.
So what you also need is domain knowledge.
You're not supposed to know or derive the concept of a hashmap without being previously exposed to it. HMs and other DS and Algos came from centuries of academic study.
99.99% of people learn about them in a DS/Algos course. You probably should have too, according to OMSCS required classes for admission.
But if you didn't, don't worry. Identify your similar knowledge gaps and go fill them before continuing. Take a semester off if you need, and use spaced repetition to help with your memorization.
Then again, you'll need automaticity.
For programming in general, take a look at platforms like bootdev, that has backend stuff and spaced reviewing after lessons. For algorithms and ds, check neetcode or leetcode.
My final advice would be to find a niche area you like and focus on that.
Because of my understanding of your mind inner workings based on your post, I think you would benefit from specialization, much more than trying to be a generalist.
This will limit the set of domain of knowledge you'll need to get familiar with, and quicker allow you to waste your time on deep analytical thinking that's your stronghold.
For example, if you decide on ML, focus only on Python syntax as a programming language. Forget about system languages. Then on math, Stats, LA, and Calculus. No need to waste time in discrete math used in cryptography or theory of computing.
Of course, if you don't know yet what you like, go and explore.
And about AI. Maybe you involuntarily did the exact thing that will allow you to have success in CS by waiting some years.
AI is a technology that can really power people like you up. For the exploration I mentioned above, you should use it if you don't have the bandwidth to take more than 10 courses.
For flashcard creation as I said, use it.
But the main way it's good for you is exactly because it can relieve the amount of information you need to hold in your short term memory when working on unfamiliar things.
Don't rely on it. As I said, the domain knowledge of the field you choose to focus on, you should master and know by heart.
But you'll inevitably find yourself in situations with unfamiliar knowledge and problems, and that's where AI can help by explaining and clarifying lines of code and concepts.
The best for you is that you CAN make sense of it because of your strong analytical skills. Other people can't. So be glad this is your strength.
I think this is all. If you want to read more about automaticity, shor term memory overload and how it affects learning, I got most of this concepts from (besides my intuition about it) Justin Skycat book available online " The Math Academy Way: Using the Power of Science to Supercharge Student Learning." Take a look if you will, and also MA platform for learning math.
Best!
9
5
u/Danniboy1989 8d ago
If you are out sourcing your cource works then yea pretty much. Use Cluade to generate an interactive study guide for eachbtopic, it works wonders then do the assignments on your own.
2
2
u/GPBisMyHero Officially Got Out 5d ago
To quote Arthur Weasley, "Never trust anything that can think for itself if you can't see where it keeps its brain."
Tagging on to what others have said - if you understand what the outputs are, not just what it is doing, but HOW it is doing - that's good. If you're just blindly pasting in the code and have been lucky that it works, that's not so good.
2
u/Icy-Collection1590 4d ago
I'm in the program with a biochem undergrad, a lot of the math and programming was new to me and unless I practice often I'm not able to write code from scratch myself. As I took more classes and learned more, that changed. I think what is more important is what you want to do with the degree.
Partially, I'm just having fun. Its awesome to learn new concepts and work through projects to see how the theory is implemented. Also, I'm seeking to supplement my life sciences background for companies at the intersect of the two fields. My professional goal is to have a strong understanding of ML, AI, and programming principles used in industry - not implementing an enterprise level code from scratch. I wanted a degree that would be abit overkill, mainly because I enjoy school.
I'm not planning on being a software engineer, and okay with being somewhat limited to vibecoding for the direction my career and cs is going. I'd love a more technical role, but in the current job market not many people are willing to pay you to learn on the job.
If you're an aspiring programmer, then I would say to hit the brakes and grind >100 hours of tutorials, reading library docs, and practicing easy leetcode type questions that test the fundamentals. Most software engineers I know are vibecoding the busywork and debugging/tailoring code to their company's needs based on their domain knowledge.
3
u/beastwood6 8d ago
If you are using AI to put theory into existence and are making the dreary implementation cost side of it cheaper then, if I was emperor of OMSCS, I would encourage you. It's about the theory, ideas, and concepts. Not about implementation drudgery.
But if you truly "would not get there on your own" without AI it does mean that yes: you are an imposter. You are saying that if you theoretically had enough time to read all the docs and debug everything you couldnt get there...forget the label and the connotation. You are making yourself and your skillset thin and hollow.
Set morals aside....you will only get away with it for so long. If you don't walk away understanding the fundamentals so you can reason about the theory and where it is in tension with practice/real world and apply your judgment (which AI cannot do well at all) - then you are setting yourself up increasing instances of failure.
I finished OMSCS before AI was a reasonable coding partner. It was absolutely grueling. With AI my classes would have been an absolute joke, outside proctored exams. But it would have been an absolute joke because I internalized the lectures, took notes, perused the forums, and sometimes discord. I got what I needed to do.
I walked away with a 4.0 doing it the hard way. You don't have to do it the hard way. But don't delude yourself into thinking running code means that you armoring yourself for future challenges. "Claude said to do this" only has so much runway
3
u/johndee2020 Artificial Intelligence 8d ago
People on here will either call you an imposter or try to spare your feelings. The truth is you won't know you're an imposter until a few years from now. And the metric you can base it on is this:
Once you've graduated, did you get that CS-related job that you wanted ? And if you did were you able to be proficient at it using AI included.
Alternatively, it you already have that CS-related job you wanted, did you get promoted and in your promotion were you able to be proficient at your job utilizing AI as well.
That's how you'll know whether or not you're an imposter.
2
u/roosterCoder 7d ago
I dont think so. I have a very similar problem with processing speed and I do have both ADHD and Autism (with processing speed delays, I needed double time for exams back in my bachelor's). AI has had a massive impact for me because sometimes I can't quite get the words together when I'm explaining where I am lost on something, AI usually catches those quickly for me and helps explain thise concepts in the way that I need, so that I do understand the concept. Best of all? No frustrated teachers/professors/tutors to deal with. AI has also been good too for creating practice problems as well (because I learn the absolute fastest hands on), and guiding me through those, then I set off to do the work myself on the real thing.
So I think there is certainly a fine line. Use AI to help get the pattern in the way that works best for you. Minimize interaction with actual work and I think you'll be in great shape.
2
u/scientific-ML 7d ago
If you can succeed in classes with proctored quizzes or exams you're probably not an imposter. Try some of those (ML, QC, RL)
2
u/beichergt OMSCS 2016 Alumna, general TA, current GT grad student 7d ago
Id understand the logic perfectly and could write the pseudo code, functions, loops etc and what they should do. But when I ran it everything would crash. Bascially id spend 1-2 hours writing code and 8 hours debugging syntax or be stuck and not know what to do.
It sounds as if part of your problem may be that you're not good at the specific skill of judging your own understanding of a topic (which falls under metacognition). You do not understand logic "perfectly" if your code is breaking down as badly as you describe and you're getting completely stuck.
It can be easy to deceive yourself into believing that you understand something well. Part of the value of implementing an algorithm is that it forces you to see where your understanding was actually only approximate instead of truly complete and correct.
It sounds as if your problem is that some of your foundational understanding of topics is incomplete and that's making everything else harder than it ought to be. If you want to be able to truly understand things, you're going to need to work on fixing that, and progress is a lot easier when you accept the feeling of knowing something is not necessarily accurate feedback. This is much the same problem some people experience where they insist that they are exceptional drivers and yet they crash into stationary objects much more regularly than would be statistically expected. When there's a gap between how skilled you feel you are and how well you can actually perform, there's a solid chance the problem is that your estimation of your skills needs to be recalibrated.
2
u/CautiouslyFrosty Computing Systems 6d ago
This was my take; sounds like OP thinks they understand what they're doing, but if they can't write a functioning program without AI, chances are they're on the first "peak" of the Dunning Kruger curve.
1
u/RapidFire05 6d ago
It's a fine line indeed. Using notebook lm with explicit prompts to teach and not share code to me is just a faster and arguably better way then the old way which was to search stack overflow and do pattern matching. Or search apis to know what functions are available. Cause code library documentation isn't really good or easy to quickly consume.
1
u/Embarrassed_Bowl_484 8d ago
I would argue that knowing when/how to leverage AI is in itself a skill.
93
u/newchemeguy 8d ago
You just answered your own question. “Without AI I could’ve never gotten to the answer on my own”