Set restart: unless-stopped at minimum while you sort this out, so a kill at 3am is a four-second blip rather than your morning.
Rae
@rubberduck_rae
Answers beginner questions the long way round because the short way never sticks.
78 credit Contributor
- From answers
- 0
- From questions
- 78
Prompt caching interacts with this in a way people don't think about. Staying in one long conversation is cheaper per turn because the prefix is cached, which quietly incentivises you to stay in a degrading session. The saving is real and it is much smaller than the cost of an hour of subtly wrong work.
Six weeks with one dev who's React-only: whichever you pick, the risk isn't the framework, it's the build/router/state trio. Take the batteries-included path, Nuxt if Vue, SvelteKit if Svelte: and do not hand-roll routing on a deadline.
Websockets on two screens is a non-issue either way. Ten lines and a store.
Whatever you pick, set the export up as a weekly routine now, not as something you'll do when you eventually leave the app. Everybody I know who lost notes lost them at the exact moment they were leaving.
Seconding the drawer design, and one thing worth checking before you buy: the Litter-Robot 4 ships with a one-year warranty and you can extend it to three years total, but only if you buy the extension before that first year runs out. I forgot, and month fourteen was an expensive lesson in reading the fine print.
Add a firewall today if there isn't one. ufw allowing 22, 80 and 443 and denying everything else, and check postgres isn't published. The number of compose files with ports: - "5432:5432" reachable from the open internet is genuinely alarming, and scanners find them within hours.
Change the password too, and have a look at pg_stat_activity for connections you don't recognise. Probably nothing. Check anyway.
The bit that should get automatic is not syntax, it is knowing that a thing exists. You do not need to remember the exact signature of a dictionary iteration, you need to know that iterating keys and values together is a thing so you can go find it. Recognition beats recall for almost everything in this job.
A shared shopping list with my partner is a real thing we do. Fair point, and one I'd have discovered the hard way.
'Anything that says workspace' is a filter I can actually apply in ten seconds. Thank you.
That's exactly it. Everything works right up until the two devices have to agree about anything.
That was it. And yes, I had to nuke .astro/ before it took - spent ten minutes convinced the fix hadn't worked.
Yep, hit that about ten minutes after fixing the glob. Two silent failures in one migration, which is a good hit rate.
The thing that finally got me writing notes was lowering the standard. Ugly note, no tags, no template, just the thing I learned today in whatever words I had. Templates are where my notes went to die for about eight months.
Postgres in a container is fine. Postgres in a container with data in a named volume you don't fully understand is the actual risk. Bind-mount to an explicit host path so you know exactly where the bytes are, and make sure a stray docker compose down -v can't take them with it.
Also shm_size. The 64 MB default bites you the first time somebody runs a big parallel query and you get "could not resize shared memory segment". Set it to 1g and forget about it.
Migration note since you came from 4: the whole family of $: total = a + b maps to $derived, and $: doSomething(a) maps to $effect. Most of the pain in migrating is discovering how many of your $: lines were quietly both at once.
One axis nobody mentions: reviewing generated code is a different skill from reviewing human code, because the mistakes are shaped differently. Humans get things wrong near the edge of what they understood. Models produce plausible, well-formatted code that's wrong about a fact: an API that doesn't exist, a field name that's nearly right, an assumption about ordering.
So read for facts, not for style. The style is always fine. That's the trap.
Sleep tracking, honestly: directionally useful and precisely wrong. It knows whether you slept badly. It does not know your sleep stages to the minute whatever the graph implies. I found it useful for about three months while I learned that alcohol and late food wreck my sleep, and then I'd learned it, and the graph never told me anything new again.
Paper notebook, one per year, seven years. Gave up search entirely. Still annoys me that I can't grep it and never will. Kept it because I remember things I write by hand and I do not remember things I type, and after seven years I've stopped arguing with my own brain about it.
What you actually need for your scenario is not resolution, it is the G-sensor log and the speed data. In both of my rear-end claims the useful part was the file showing my vehicle stationary with the impact timestamp, which any two-channel camera records. Plate readability at night is a bonus and is genuinely hard to get from a rear camera through tinted glass.
Shallow versus deep was the missing vocabulary. deepcopy fixed it immediately.
If any part of those 40 seconds is migrations, split them out. Running migrations on container boot means every replica races to run them and your rollout is gated on the slowest DDL statement. Run them as a one-shot step before the swap, and keep them backwards-compatible so old and new code can both talk to the new schema for a minute. That's the part people skip, and then they discover that zero-downtime deploys require zero-downtime schema changes.
That does not close. du = cos(x) dx, and there is no cos(x) sitting in the integrand to absorb it, and the e^x cannot be rewritten in terms of sin(x). Substitution is the wrong tool here.
Build in CI. Your home uplink is 20 Mbit; a runner in the same region as your registry is on a gigabit link with the layer cache next door. It's free, and it means your deploy no longer depends on your laptop staying open.
Do one directory by hand yourself first. Not for the code - for the spec. You will discover three exceptions you didn't know existed, and those exceptions are exactly what an agent will silently get wrong across 180 files if you haven't named them up front.
An hour of manual work is the highest-leverage part of this whole project.