Hacker News new | ask | show | jobs
by hash0 19 days ago
I wouldn't consider myself an SWE, just an amateur programmer, so this is an honest question: In your opinion, is there such a case where the usage of AI in software engineering has either sped up the dev time or improved product reliability (or even both)?
2 comments

It can churn out boilerplate but we already had templates to do that.

It can translate one language into another but we already had transpilers for that.

It can find bugs quickly but we already had static analysis. It also generates many plausible looking false positives.

There's things it can do, so long as you use it as your complement, i.e. all the stuff you know is important you just go "ugh" when faced with. For me, that means unit tests. I can write them, I know why I should write them, I have professional experience with them, I can judge which unit tests are useful and which are make-work and which have missed the point entirely, but I'd rather not be the one to actually write them.

LLMs can write them for me, and I can happily look through them to make sure what the LLM made was neither brittle, nor testing unimportant things while missing the important stuff.

They can also help with code review, but only to a limited degree; a second pair of eyes to avoid lazy people going "LGTM", or the other way around time-wasting feedback from bike-shedders, but as with unit tests, right now you still need to be the kind of person who is happy to double-check its work — if you're the kind who was previously a little too quick to accept pull requests with a "LGTM", you may well be too willing to listen to irrelevant bike-shedding from the LLM or not realise it is missing the point of the code or the ticket.

But if you use it to replace the stuff you're already good at, and not help with the stuff you're weak at, it'll probably slow you down while also making the code worse.