Live data from Hacker News

Your job is to deliver code you have proven to work

simonwillison.net

171–180 of 699 posts

Re: Your job is to deliver code you have proven to work

#171

> there’s one depressing anecdote that I keep on seeing: the junior engineer, empowered by some class of LLM tool, who deposits giant, untested PRs on their coworkers—or open source maintainers—and expects the “code review” process to handle the rest. It's even worse than that: non -junior devs are doing it as well.

Just shove a code review agent in the middle. Problem solved

[Edit] man, people dont get /s unless its explicit

Re: Your job is to deliver code you have proven to work

#172

Whole article seems very much all llm generated Edit: I'm an idiot ignore me.

So what? as long as it conveys the point it was supposed to, should be fine IMO.

If we are accepting LLM generated code, we should accept LLM generated content as long as it is "proof read" :)

Re: Your job is to deliver code you have proven to work

#173

Earlier quoted context omitted.

Code review is an unfunded mandate. It is something the company demands while not really doing anything make sure people get rewarded for doing it.

> while not really doing anything make sure people get rewarded for doing it. I don’t know about you, but I get paychecks twice a month for doing things included in my job description.

My manager asked me to disable CI and gating code owner reviews “for 2 weeks” 6 months ago so people could commit faster. Just because it is in your job description doesn’t mean it won’t get shoved aside when it’s perceived as the bottleneck for the core mission.

Now we have nightly builds that nobody checks the result of and we’re finding out about bugs weeks later. Big company btw

Re: Your job is to deliver code you have proven to work

#174
post #154

Earlier quoted context omitted.

[flagged]

This sounds like the exact kind of profound pseudo-enlightenment that one gets from psychedelics. Of course, it's all electrons in the end. Trying to create a secure, reliable and scalable system that enables many people to work on one code base, share their code around with others and at the end of the day coordinate this dance of electrons across multiple computers, that's where all of these 'useless' layers of abs…

Try almost 30 years in electrical engineering.

I know exactly what those layers of abstraction are used for. Why so many? Jobs making layers of abstraction.

But all of them are dev friendly means of modeling memory states for the CPU to watch and transform just so. They can all be compressed into a generic and generalized set of mathematical functions ridding ourselves of the various parser rules to manage each bespoke syntax inherent to each DSL, layers of framework.

Re: Your job is to deliver code you have proven to work

#175

Earlier quoted context omitted.

Code review is an unfunded mandate. It is something the company demands while not really doing anything make sure people get rewarded for doing it.

> while not really doing anything make sure people get rewarded for doing it. I don’t know about you, but I get paychecks twice a month for doing things included in my job description.

[deleted]

Re: Your job is to deliver code you have proven to work

#176

> there’s one depressing anecdote that I keep on seeing: the junior engineer, empowered by some class of LLM tool, who deposits giant, untested PRs on their coworkers—or open source maintainers—and expects the “code review” process to handle the rest. It's even worse than that: non -junior devs are doing it as well.

In the company I’m at this is beginning to happen. PM’s want to “prototype” new features and expect the engineers to finish up the work. With the expectation that it ‘just needs some polishing’. What would be your recommendation on how to handle this constructively? Flat out rejecting LLM as a prototyping tool is not an option.

This could be workable with the understanding that throwing away 100% of the prototype code is acceptable and it’s primary purpose is as a communication tool, not a technical starting point.

Re: Your job is to deliver code you have proven to work

#177

Perhaps off-topic, but: "Testing doesn't show the absence of errors, it shows the presence of errors" Willison says we need to submit code we have proven to work but then argues for empirical testing, not actual correctness proofs.

If you can formally prove correctness then brilliant, go for it!

That's not something I've seen or been able to achieve in most of my professional work.

Re: Your job is to deliver code you have proven to work

#178

> there’s one depressing anecdote that I keep on seeing: the junior engineer, empowered by some class of LLM tool, who deposits giant, untested PRs on their coworkers—or open source maintainers—and expects the “code review” process to handle the rest. It's even worse than that: non -junior devs are doing it as well.

>It's even worse than that: non-junior devs are doing it as well. This might be unpopular, but that is seeming more like an opportunity if we want to continue allowing AI to generate code. One of the annoying things engineers have to deal with is stopping whatever they're doing and doing a review. Obviously this gets worse if more total code is being produced. We could eliminate that interruption by having someone do…

> One of the annoying things engineers have to deal with is stopping whatever they're doing and doing a review.

I would have thought that reviewing PRs and doing it well is in the job description. You latter mention "someone" a few times - who that someone might be?

Re: Your job is to deliver code you have proven to work

#179

"Slow the f*ck down." - Oliver Reichenstein [1] This only happens because the software industry has fallen into the Religion of Speed . I see it constantly: justified corner-cutting, rushing shit out the door, and always loading up another feature/project/whatever with absolutely zero self-awareness. AI is just an amplifier for bad behavior that was already causing chaos. What's not being said here but should be: dis…

A few years ago I embraced automated tests and comprehensive documentation for even my smallest personal projects because I found that they sped me up. https://simonwillison.net/2022/Nov/26/productivity/

Re: Your job is to deliver code you have proven to work

#180
post #44

Earlier quoted context omitted.

100%. There's no difference at all in my mind between an AI-assisted PR and a regular PR: in both cases they should include proof that the change works and that the author has put the work in to test it.

At the last company I worked at (Large popular tech company) it took an act of the CTO to get engineers to simply attach a JIRA Ticket to the PR they were working on so we could track it for tax purposes. The Devs went in kicking and screaming. As an SRE it seemed like for SDEs, writing a description of the change, explaining the problem the code is solving, testing methodology, etc is harder than actually coding. Ir…

Strange, I thought this is actually the norm. Our PRs are almost always tagged with a corresponding Jira ticket. I think this is more helpful to developers than to other roles, because it allows them to have history of what has been fixed.

One can also point QA or consultants to a ticket for documentation purposes or timeline details.

Post reply on HN