Ask

read every ai diff line by line, or lean on tests, at 15 merges a week

The thing that helped us most wasn't a review policy, it was making the author responsible for the diff being reviewable.

Rule: if you generated it, you read it before anyone else does, and you must be able to explain any line if asked. In practice this means people stop opening 900-line PRs, because they'd have to read them first. PR sizes halved within a fortnight and review stopped being the bottleneck without the review standard changing at all.

What you're describing is really an authorship problem wearing a review problem's coat.

83 · in/ai-pair-coding ·

every compose deploy drops about 40 seconds of requests, how do people avoid this

Handle SIGTERM. A big chunk of perceived deploy downtime is in-flight requests dying because the process exits instantly on the signal.

process.on('SIGTERM', () => {
  server.close(() => process.exit(0));
});

And make sure the signal reaches your process at all. If your Dockerfile ends in CMD npm start, npm is PID 1 and it does not forward signals reliably. Use CMD ["node", "server.js"].

You'll know it's fixed when docker stop takes 300 ms instead of the full ten second timeout.

49 · in/docker-deploys ·

Year two at 72 hours a week, does that number ever actually come down?

I kept a rough log for five years: year one about 75 a week, year two 70, year three 68, year four 52, year five 45. Nothing gradual happened, the drop between three and four is the month I hired a person whose entire job was the counter and the phone. That cost me a visible chunk of margin and I made less money that year, which is the part nobody mentions when they tell you to delegate. It came back the year after because I was finally selling instead of answering the phone.

88 · in/shop-owners ·

llama.cpp with -ngl 99 still eats 5gb of system ram, where is it going

Most of it is not really "used". The model file is memory-mapped, so the pages you have read count towards RSS but they are page cache backed by the file on disk - the kernel will drop them the instant something else needs the memory. A 4.7GB GGUF that has been fully read shows up as roughly 4.7GB of RSS and costs you almost nothing.

Prove it to yourself: run with --no-mmap and watch RSS become genuinely smaller after load, while startup gets slower. Or look at PSS instead of RSS - smem -k -P llama will show you a much more honest number.

If it is actually swapping, that is a separate problem and it is usually the other two things on the box, not this.

42 · in/local-llms ·

raising from $19 to $39 next month - do the 22 people on the old price stay there forever

22 x $19 is $418. Moving all of them up is $858 if nobody leaves, and nobody-leaves is not a thing. At 30% churn on that cohort you land around $600, so you are still ahead on paper.

What the spreadsheet does not show: those 22 are your entire pool of testimonials, references, feature feedback and word of mouth. The delta is $180 a month. One introduction from a happy early customer is worth more than that. I would not run this as a revenue decision at these numbers.

118 · in/pricing-tiers ·

every generated test mocks the thing it is supposed to test, 40 files in

The reliable pattern for me: write the first test myself, badly. One test, real inputs, the assertion I actually care about. Then hand it over with "add cases in this exact style, same structure, no new mocks."

Given a concrete example it copies the shape faithfully. Given a blank file and a coverage target it produces mock theatre. The failure is almost entirely about which of those two situations you put it in.

71 · in/ai-pair-coding ·

Pattern, fabric and three toiles - is sewing my own trousers actually cheaper than buying?

The maths works out on the second pair, not the first. I spent an absurd amount of time and calico getting one trouser block to fit, and since then every pair has cost me fabric, a zip and about six hours, because the fitting is already solved and I do not toile any more unless the fabric behaves very differently. Pair one was terrible value. Pairs two through nine were excellent value. If you stop after pair one, sewing is a hobby you paid for, which is fine, but do not judge it there.

203 · in/sewing-fit ·

astro islands or a plain svelte spa for a 40-page docs site with search

Astro, and search doesn't change the maths the way you think.

A prebuilt Pagefind-style index for 150 pages is a few hundred KB total and it's chunked: the browser fetches only the shards that match what you type, typically tens of KB per query. You're not shipping the corpus. In an SPA every page's content is either in the bundle or behind a fetch you have to design.

The bigger reason: docs get read by someone who arrived from a search engine on a deep link, on bad wifi, once. Static HTML for that path is worth more than nice route transitions on the third page.

Your API table and your demos are islands. That's four client:visible components on a site that is otherwise HTML, and a typical page ends up under 30 KB of JS.

118 · in/svelte-vue-astro ·

Skipped stitches on a jersey hem even after switching to a ballpoint needle

Change the needle again, this time to a stretch needle rather than a ballpoint. They are not the same thing - a stretch needle has a deeper scarf and a slightly different eye position, and it exists specifically for the problem you are describing.

What is happening is that the jersey flags downwards as the needle enters, so the loop never forms for the hook to catch. Two things stop it: a strip of fusible knit stay tape in the hem allowance, or gentle tension held front and back rather than pushing the fabric. If it still skips after a stretch needle plus stay tape, the timing is out and that is a shop visit.

142 · in/garment-sewing ·