Alle 35 Kommentare

[–]plastikmissile 146 Punkte147 Punkte  (2 Kinder)

That's a very common trap you can fall into when you use AI (or even just Google). You read the explanation and copy/paste the answer and think you've understood it, but you haven't really.

First thing to do is never copy/paste. Type it in yourself. Better yet, reimplement it using your own code after you've read the explanation. You need to force yourself to actually think about what's happening. Play around with that code and see where it can break and what you might do to improve it.

[–]numbersthen0987431 13 Punkte14 Punkte  (0 Kinder)

This

The whole copy/paste technique has always been an issue in programming. So many programmers find code on stackoverflow, copy and paste, and then have zero idea what it's doing. They just test it and move on.

[–]Expert4206967 [Bewertung versteckt]  (0 Kinder)

yep. i also started keeping a little “why this exists” note above non-trivial functions. if i can’t explain that comment in my own words a week later, i know i just cargo‑culted the code instead of learning it.

[–]TaeTaeDS 43 Punkte44 Punkte  (2 Kinder)

I don't think keeping a file of everything you didn't come up with yourself is really addressing what caught you out here. The issue isn't that Claude suggested the unique constraint; it's that you implemented the suggestion, saw the tests pass, and moved on without making the reasoning your own.

His point wasn't that you can't remember your code. His point was your solution was not proper.

[–]developerknight91 [Bewertung versteckt]  (0 Kinder)

Yes agree. If I was reviewing someone’s GitHub repo and they could not explain a sizable portion of their code base for a given project and the answer was “this is how Claude generated the solution for me” I would possibly pass on them.

Will say it sounds like OP didn’t use Claude to generate the entire solution in this instance so they are probably a strong hire for a Junior level person, so maybe the interviewer didn’t give them a fair shake. But Junior roles are none existent atm and the ones that are, are HIGHLY competitive I would not leave it up to chance in my career that I could not explain something in my own project.

Is there a reason why you would specify a database constraint in your code due to a limitation of the database you are working with, very possible. Especially if you’re using something like SQLite to stand up a personal project, but if you can’t explain your workaround you don’t understand best practice and that’s a huge red flag.

[–]rokomotto [Bewertung versteckt]  (0 Kinder)

I once heard a software engineer say that they do more thinking than writing code and that's honestly so true and is a good way to realise if you're actively justifying your design choices. Heck, as a student, I sometimes end up like Buridan's donkey because I can't decide on which approach will work better.

[–]edparadox 44 Punkte45 Punkte  (3 Kinder)

Because you let an LLM write it, not you.

[–]JamzTyson [Bewertung versteckt]  (1 Kind)

Even the post is OP's post is AI generated, which breaks the sub's rules.

[–]SprinklesFresh5693 [Bewertung versteckt]  (0 Kinder)

How did you know its AI generated?

[–]farfromelite [Bewertung versteckt]  (0 Kinder)

That's ok, the llm didn't get the job either.

[–]woodsmithrich 9 Punkte10 Punkte  (2 Kinder)

Start with commenting your code? Especially if it's something Claude is helping you with. If you can't expect yourself to remember (I wouldn't be able to either, there's just too much), comment it.

[–]the-lemurs [Bewertung versteckt]  (1 Kind)

Heck you should always comment code

[–]Greedyfish54 [Bewertung versteckt]  (0 Kinder)

I guess it depends . If it was someone with more experience they wouldnt have the need for commenting this .

I worked in some companies where the idea was that your code should be self explanatory . We would only comment on extremelly complicated part of the code or library methods .

And that works pretty well without creating too much noise

[–]UnreachableMemory 19 Punkte20 Punkte  (2 Kinder)

I hate “has anyone else” posts because they always read as if they were written by AI and I can’t stand that.

But for argument sake let’s say this is real. It seems like you’ve missed what the real takeaway should have been. “I asked Claude.” You’ve relegated too much to AI. Instead of using it as just another tool, you use it as a replacement for your own knowledge. AI is great to increase productivity but when it’s used in lieu of learning things yourself that’s a real issue. We end up with code written by AI that the human directing it doesn’t understand.

[–]FasterFasting 19 Punkte20 Punkte  (1 Kind)

It's not definitely not real. This was their first interview for a junior role, but "everyone at work" uses Claude?

[–]btoned 9 Punkte10 Punkte  (0 Kinder)

Came to say this. Just another dumbass AI post we're feeding into.

[–]CoffeePieAndHobbits 6 Punkte7 Punkte  (0 Kinder)

Suggestion: instead of keeping a separate text file, add comments to your code.

[–]KyrosiveOne 2 Punkte3 Punkte  (0 Kinder)

I'm very junior self-taught, and I can second, that whatever I DID learn, I learned by writing myself. That was my reasoning. I can't remember jack shit W/O writing it down anyway lol. I read for ages before I started actually practicing and I remember that being a common theme. Don't just do, understand what and why you did it.

[–]Acrobatic-Ice-5877 1 Punkt2 Punkte  (0 Kinder)

I haven’t been caught like this but what I do I use my morning commute to review technical decisions and things I’ve learned. I’ve been developing an application for about two years, so I’ve made many decisions from front-end,  back-end, database, and deployment. I can’t remember all of them but I do like to review the codebase and decisions after a change. It gives me an opportunity to reinforce on concepts and explain things in my own words when I’ve had outside help.

[–]developerknight91 [Bewertung versteckt]  (0 Kinder)

My best advice to anyone that’s junior level is LEARN HOW TO DO THE BASICS YOURSELF FIRST. Seriously. Us Seniors have to be careful about skill atrophy because of the AI tools available to us I WOULD NOT use any of them as a Junior.

Now, using Google is a common practice at any shop, what you don’t want to do is just copy and paste. Most of the time the answers on Google are either half complete, demos, or are not entirely for for your use case so you need to intergrate into your solution. That’s common but never copy paste anything off of the internet. NEVER, understand what your implementing WHY and HOW its solving your problem and what problem lead to you having to use Google to find the solution.

You can use Claude to also give you a suggestion for a solution but DO NOT let it write code for you. You will have two years gone and not know some of the basics of software development and engineering.

As Seniors I think we all need to step up and create a framework where any incoming Juniors are basically barred from using AI as a coding tool. Should really be reserved for a Senior person IMO.

I know leadership will push back but we NEED to come together and put our foots down. The next generation of Juniors needs a foundation for software development best practices or all implementations in the next five years concerning new projects is SUNK point blank period.

[–]lowban 0 Punkte1 Punkt  (0 Kinder)

As you say, you made hundreds of decisions when you programmed your app. It's almost impossible to remember all of them so don't beat yourself down. I think you're doing the right thing to write down your thoughts but experience is what's going to change everything in the long run.

[–]koolhand_luke -1 Punkte0 Punkte  (0 Kinder)

You didn’t fail. There were multiple applicants. Interviewer probably thought you did pretty well. Someone else just did slightly better.

[–]Biliunas 0 Punkte1 Punkt  (0 Kinder)

What was your build process? Did you build a design document first, did you outline the steps for yourself etc.? By the end of the project, I'll usually have at least 3-4 documents outlining the technical implementation, decisions, pain points and so forth. A truncated version of these documents becomes the readme for the project.

Obviously, I don't remember every single line of code I wrote, but this gives me a reasonable mental map that helps me piece together the logic if needed (usually).

[–]HappyPeval3657 0 Punkte1 Punkt  (0 Kinder)

I tried this once with a regex pattern I yanked from Stack Overflow, got asked to modify it on the spot and just... blanked. The real lesson: you need to actually understand why a solution exists, not just that it works. If you can't explain the tradeoff between a database constraint and application-level validation (spoiler: it's about data integrity vs performance vs where your business logic lives), then you don't own that code yet, though honestly that's fixable.

[–]funnyh0b0 0 Punkte1 Punkt  (0 Kinder)

I like to comment my code and use great name descriptive names for your variables.

You can remove most of the comments before screen sharing for the interview but use it to review.

[–]CyberDivergent [Bewertung versteckt]  (0 Kinder)

docstrings just exist...

[–]the-lemurs [Bewertung versteckt]  (0 Kinder)

Do people not comment their code anymore?

[–]FurkinLurkin [Bewertung versteckt]  (0 Kinder)

You could write the code yourself. Or walk through it mentally with claude explaining. At work we are told to use ai, dont write things yourself make the ai do it. So i spend a lot of time asking it why it wrote this or that. Also comment things like that above the code

[–]the-awesomer 0 Punkte1 Punkt  (0 Kinder)

I wrote about my experiences before but basically, LLMs write legacy code. no one i work with seems to remember what their llm wrote even a week after they commit it. I've never used git blame more in my life.

[–]nelsonsilva_dev 0 Punkte1 Punkt  (0 Kinder)

Five months of decisions is more than anyone holds in their head. I can't explain choices in my own codebase from last year without going and reading the commit that changed it.

The gap isn't that you didn't write it, it's that you didn't write down why. A commit message explaining the reason instead of the change is worth more than any amount of revising beforehand.

[–]No_Copy_8193 -1 Punkte0 Punkte  (1 Kind)

I am a college student and I feel the same when I am making project. I won't be able to explain the code I wrote. I think explaining your code is a essential skill for a programmer, but I don't know how to develop that skill.

[–]EliSka93 1 Punkt2 Punkte  (0 Kinder)

As someone who has been there: it's just experience.

[–]AgitatedSubstance502 [Bewertung versteckt]  (0 Kinder)

i wanna get into coding aswell like you with self taught could you text me pls i have few things to ask if you could help