Remix.run Logo
bonoboTP an hour ago

Depends a lot on the college. I had electives like Java phone app development (J2ME, dating myself), DirectX game engine development, web development, alongside the more theoretical math classes.

> They won’t teach you that in your /login endpoint, if a user is not found, you should verify the password against a pre-computed dummy hash so the response delay matches a real user account workflow to avoid timing attacks. You only learn this on the job under the supervision of a senior mentor.

Actually this kind of timing attacks were taught to me in information security and cryptography class, alongside other side channel attacks.

sarmadgulzar an hour ago | parent [-]

Agreed. I’m not insinuating that colleges should teach all of these extremely domain-specific things. Most of the stuff would indeed be unnecessary for most students depending on what they do in the future. But that is my original point that you learn this on the job while making a mistake and being corrected by a senior mentor. AI wouldn’t call this out by itself unless you give it a very specific prompt which you also can’t write if you don’t know that these kinds of problems happen in the first place.

bonoboTP an hour ago | parent [-]

Not so sure. AI can flag non-best-practices like this quite easily from generic prompts. You just have to remember to ask it. I mean general review / audit prompts, like "are there any correctness bugs, or things that don't match best practices for efficiency, maintainability, security, or typical UX/API expectations?" And frontier models often flag such things. And it's just getting better. I would not confidently state "AI will never be able to X".

sarmadgulzar an hour ago | parent [-]

Sure you can do it but I think you’ll agree with what I said about ownership. Whenever I ask AI to audit my codebase, it always plays it safe and gives me a few options to choose from. It just won’t give me a concrete answer unless I insist it to give only one but then I wouldn’t trust that answer that I basically forced out of it.

bonoboTP an hour ago | parent [-]

Yes, I don't know how a junior brain would read it. I already have a map of roughly what kinds of things exist out there, even if my picture is blurry, so when I read a suggestion from the AI, I have a rough ballpark of what it means, and can ask followups and triage what is promising. If you never developed this, probably as a junior you have very little to base such decisions on.

sarmadgulzar 43 minutes ago | parent [-]

Exactly, I absolutely agree that AI supercharges seniors with judgment and conviction. They’re no longer constrained by how fast they can type.

But this is about what comes next i.e. seniors of tomorrow

If AI gets so good at software that vibe coding is the new norm and as Elon Musk says that AI will generate the machine code directly without any intermediate compilation or interpretation then we wouldn’t need seniors or juniors but I don’t think that’s coming any time soon, if at all!

bonoboTP 22 minutes ago | parent [-]

I doubt AI will ever generate straight up machine code directly as a best practice. Hierarchical, high-level abstractions help even AI reasoning. Re-reading some undifferentiated machine code make it harder to reason about even for the AI, while having a compact representation expressing the high level algo is much more efficient.

Regarding seniors of tomorrow, I think there are big differences between good devs and sub-mediocre ones, and I think their proportion won't change, and the good ones will have the drive to use the AI to learn and understand because they are simply curious and want to know. But most programmers don't care at all, and that's the case even today, and they will be less forced to learn. But I don't think we will lose much with this. Important things are held up by a small proportion of engineers, a Pareto-like principle.