Hacker News new | ask | show | jobs
by nprateem 661 days ago
This is largely academic now. LLMs do a good job of writing highly complex queries with the django ORM.

All you need is the django toolbar so you can check their efficiency, then keep telling it to make them more efficient.

3 comments

LLMs are not at a point where we should be treating them as a solution to any software engineering issue, period.
I've used it to write horrendously complex queries across multiple tables. It can do things I don't know how to and that would have taken significant time to learn. All I know is it works and it's performant when you tell it to be.

It's been particularly helpful for aggregations, subqueries etc. You may not think LLMs are there yet but my project is proof. Try it yourself.

> It can do things I don't know how to and that would have taken significant time to learn. All I know is it works

Until it fucks up and you have no clue how to fix it, and either does the LLM.

Or just read the code like I would if a colleague had written it, or do you think it's chucking out assembler?
What good will reading the code do you when by your own admission you can't understand it?
I said I couldn't write it, not that I suddenly became unable to reason or understand programming.
Spending time to learn? Nah better never learn and put together barely working stuff that nobody dares to change!

This isn't something new.

Yet people do, will continue doing so, and it works. Trying to stuff the toothpaste back into the tube isn’t going to work, insisting on people just using plain text mail, or stop calling the pound symbol hashtag. It’s just old men yelling at clouds.
And the title of Software Engineer becomes even more meaningless.

Imagine an electrical engineer saying, “I don’t really know what a bridge rectifier is, but I plugged these things into the breadboard where ChatGPT told me, and the output signal looks correct.”

The engineering is in saying "I need to get this data within these performance constraints", not in the now worthless knowledge of exactly how to fetch it.
That’s not engineering, it’s operating. There’s nothing wrong with operators as a career field, but don’t equate it to engineering, and don’t expect to be as highly paid (why should you be? You can’t fix it when it breaks, and you don’t know how it works).
Just because you don't write it doesn't mean you suddently become incapable of understanding it.
Sure, that's the kind of "engineer" that then needs to offload the work entirely onto someone else when things don't magically work as he wanted.

The other person is the engineer here.

You're welcome to use LLM's, but you need to be able to answer for every single line, every single construct, parameter and class before pushing it to production. That is your responsiblity as a developer.