Roving amateur fumbling through software, systems, & sundry.
Engineering @Doordash/Wolt
Writing rednafi.com
Currently in Berlin, Germany

@
Roving amateur fumbling through software, systems, & sundry.
Engineering @Doordash/Wolt
Writing rednafi.com
Currently in Berlin, Germany
"Partial updates with field masks" by @rednafi.com
Classic post by Redowan. On point as always. Real world problem statement, and good practical solution. This one not strictly Go lang specific.
M1 M2 managers can't do much. This AI mandate and the 10x expectations are coming from the very top. Been there done that. Adjusting is easier, but also harder.
Field masks is a neat trick to make the update semantics of your API more tractable.
Engageme is much higher over there.
Yeah. Luckily pi allows you to turn it off. 789 skills with an avg 200 token description and it blows up quickly. Claude code has a hard budget on how much tokens skill metadata can consume.
But skills have their use. Skills can be packaged and shipped with code and other artifacts. But I don't use them as much since models have gotten better at doing things, long skills waste a ton of context and get outdated quite quickly.
But for canned prompt, you don’t need to worry about it. It's just a markdown file with a reusable prompt that you invoke manually. I have a bunch of those automating ticket creation, writing concise pr description, checking calendar, getting daily digest for standup, scouting codebases and so on
I am not a fan of the fact that harnesses just read the description of all the skills at startup time. Also, you don’t exactly know what skill your model decides to invoke and when. It's fuzzy. I like being able to disable startup read.
It's a 2 million loc mono repo powering doordash. Around 4k engineers work there. So the number of skill is high but not surprising given so many different teams are working on their respective domains.
Exactly but all the tools load them eagerly and people abuse the hell out of it. I like canned prompt to do repetitive things. Skills have their places but I just don't like magic. Harnesses read the skill description at startup and uses up a bunch of ctx. Then you don’t know what invokes a skill.
I don’t understand the distribution mechanism of this site. Now that all the tech people are back on twitter, this site lost quite a bit of lusture. On top, most of my posts just aren't seen by many compared to X. I have same follower count there and I don't pay for premium. Sorta strange.
Man...people are writing a zillion skill and typically there is no way to opt out of it. So I wrote a small extension in pi that just disallow reading skill metadata at startup. My workplace's monorepo has 700+ skills. Half of them are probably useless and outdated by now.
My workplace has a monorepo with 789 skills and counting. When I open pi, it reads the description and metadata of all of them until the context limit of 20k overflows. 20k token for this is way too much. So I disable automatic skill loading. But the model can still pick up any skill it needs.
SKILLs are alright but keeping the long ones up to date is a pain. Also, I don't like how models load up all the skill descriptions in context and read them ad hoc. I'm glad that Pi harness kept the prompt templates. Super quick to write one and keep them up-to-date.
"Parenting hits different when you work with AI" Hmm...I smell Claude's ornamenal gourd.
Everything feels like bloat after pi.
I switched to vanilla pi and it halved my token usage. I am fortunate enough to have my work pay for the tokens, but switching to a tool that doesn't add too much crap on top is nice.
You mean shit? Right?
Lol...this sovereign European sthick is getting cringy at this point. Also, they are comparing their model with a bunch of ancient ones.
Hackernews....never change.