/ NOW

What I amthinking about,right now.

Short, frequent notes. The seeds of longer pieces; the things that don't have a place yet.

The span is the material, not the leap

A belief I have held for years: a person should not stay inside one field, and the size of the gap between the fields they hold is the variable that matters. Two adjacent technical disciplines make somebody more useful. A technical discipline and a literary one seem to do something different in kind — the residues interact rather than stack.

I went looking for the theory behind that this week, and found it agreeing with half of what I thought. Koestler's bisociation is the same claim stated better and forty years earlier: an idea arrives when two internally consistent frames that are not habitually connected get held against each other. The wider the frames sit apart, the less anybody else has already stood in that spot.

The other half took a hit. Transfer research has been stubborn for a century — near transfer happens, far transfer is rare. Gentner's work on analogy explains why it stings: the value of an analogy comes from structural similarity between two situations, but what makes a person retrieve one from memory is surface similarity. The distant analogy, the one worth the most, is the one least likely to show up when it is needed.

So the leap is not automatic, and I had been treating it as though it were. Range supplies the material and not the mapping, and the mapping is a habit rather than a possession: stopping on a problem long enough to ask what else it resembles. A wide span raises the ceiling on what a person can connect. It does nothing on its own for the floor.

Read the long-form

Difference needs a room where disagreeing is cheap

I have been assuming that a team of varied people beats a team of similar ones, and the more carefully I read, the more the assumption comes back with conditions attached rather than confirmed.

The first condition is that I was probably using the wrong word. Personality composition research points the other way from where my instinct went: what predicts performance is the team's mean on conscientiousness and agreeableness rather than its variance, and variance on those traits tends to cost, because one careless member is enough. What I actually want is difference in cognitive kit — perspectives, heuristics, the way each person represents a problem before starting. Personality was standing in for that because personality is visible in a week and a toolkit takes a quarter to see. Having complained about proxies this often, I notice I reached for one immediately.

The second condition is the one I keep underrating. Difference converts into nothing where disagreement is expensive. Woolley's collective intelligence work found group performance predicted by social sensitivity and even turn-taking rather than by the average or the maximum ability in the room, which is close to saying that composition sets the ceiling and the conversational conditions decide whether anybody gets near it.

A varied team is not better by construction. It has a higher ceiling and a lower floor, and which one shows up is decided by the manager rather than by the hires.

Read the long-form

The third sentence was no

I once approached a company that had no opening matching me. I wrote to the boss, the boss passed my contact to the person handling recruitment, and the third sentence after the call connected was that there was no suitable position and they were sorry.

Being told no is fine. What stayed with me is how fast it arrived and what it was made of — no question about what I had built, no attempt to work out whether an unusual candidate was worth ten minutes of somebody senior. I had been matched against a list of open requisitions, the list came back empty, and that was the entire procedure.

That seat is measured on filling the requisitions it is handed. It is not measured on whether the people it brings in make the company better in a year, because nobody can attribute that, and what nobody can attribute drifts out of the job. So the requisition becomes the work, and a candidate who does not fit an existing box turns into unpaid effort outside the scope.

The consequence is legible from inside the office. A recruiting function optimising for closed requisitions hires people who close cleanly, which is a different population from the one the company needed. I ended up in that company through a different door, which is its own comment on the screen.

Read the long-form

A hiring seat reproduces itself

Hiring is close to the only decision that goes on to make more decisions, which is the argument for caring who sits in the chair more than the job description suggests you should.

A person choosing candidates, with nothing pushing back, drifts toward candidates who resemble them. The easiest version to watch is age: an older person in that seat finds older candidates more legible, reads their pauses more generously, and the composition of the company moves a few degrees a year in that direction. I have seen the older version much more clearly than the younger one, and I would not push the symmetry harder than my evidence supports.

None of this is prejudice in the loud sense. Fit gets felt rather than reasoned, and what feels like fit is usually familiarity wearing a better word — Lauren Rivera's fieldwork on hiring calls it cultural matching, and notes that evaluators report the preference back to themselves as merit. An ordinary person in that chair hires a slightly weaker version of themselves, and each of those people, a few years on, hires again.

Read the long-form

The baseline that reads as above average

The best HR person I have worked with was on the other side of the table when I interviewed. The questions were precise, written by somebody who had worked out what the role required rather than read down a form. And when the conversation went somewhere they could not judge, they neither bluffed nor waved it away — they handed it to the colleague beside them who could, and then listened to the answer. Deferring in front of a candidate costs a little standing in the room and buys a better decision, and most people protect the standing.

Inside the company they were the connective tissue, without ever running a workshop about it. Talked to people across departments who had no other reason to speak, went home with colleagues rather than ahead of them, treated everyone in the building as a person at every level with no adjustment for rank.

All of that is the baseline. It is what the function should manage on an ordinary Tuesday. I still file them as above average, and that is the uncomfortable part — when the floor reads as an achievement, what is being described is the distribution, not the person standing on it.

Read the long-form

The gigabit port, or: paying for four and using one

The office network has been bad for as long as I have worked here, and for most of that time everyone treated it as weather. People were called. Causes were proposed. Nothing measurable changed.

A few weeks ago I stopped guessing and looked at the hardware. The router has gigabit ports. The line the company leases runs somewhere between three and four gigabits. We pay for three to four thousand megabits and pass less than a quarter of it through the one box that everything has to cross. Twenty-odd people spend their working day behind that quarter, and the fix is a few hundred yuan of hardware and an afternoon of somebody's attention.

I took the diagnosis and the fix to admin the same day, so that nothing was left to work out. There was surprise in the room, and the surprise was passed along to the colleague at the next desk. Two months later the office runs at exactly the same speed.

What keeps my attention is not the router. It is that a cost this cheap to remove survived this long, because it was never anybody's cost — it was twenty people's, in amounts too small for any of them to invoice. I wrote the longer version of this out on the writing page.

Read the long-form

The task was to find someone, not to fix it

Three or four months ago a teacher here had a machine that would not behave, and admin found somebody off some platform to come and repair it. During the repair the machine picked up an infection, her spreadsheets came back encrypted, and the original fault was never fixed. There was nothing to do in the end but let the man go and absorb the loss.

Today the same colleague called the same man back.

I do not think this was carelessness in the ordinary sense. From where he sits the task was to find someone who would come, and that task was completed last time. Inside a system that keeps records of completed tasks, a completed task is a good precedent — the number was in the phone, the man had answered before, the box had been ticked. Whether the machine got fixed sits in a column he is not responsible for.

The pattern underneath is one I keep meeting from different directions. The ticket closes when somebody shows up, not when the problem goes away, and once a system has made that substitution, the extra work of calling a better technician buys nothing the system can see.

Read the long-form

The department nobody is watching

I used to think of admin as a low-variance seat. Not much value made, not much lost, a floor sitting just under a low ceiling. I was wrong about the floor, and I was wrong about it in a way I now find slightly embarrassing.

Admin failures are not paid for by admin. They are paid by everyone else, in amounts too small to notice and on a ledger nobody consolidates. The reach is the whole company and the feedback belongs to no one, which is a combination I would call high-variance anywhere else. A function whose failures are cheap to repair and expensive to leave alone is not low-stakes. It is high-stakes with the evidence hidden.

Two months of silence taught me something more specific than that admin is slow. It taught me that raising a problem here does not produce a response, and therefore that I should stop raising and start routing around. That is an expensive lesson for a company to teach, and it costs almost nothing to avoid. When I run something of my own, the person in that chair will be hired for judgment, given a memory that outlives their phone, and measured on the state of the room rather than the count of the tickets.

Read the long-form

The overjustification effect, or: what happens when the carrot eats the joy

I have been reading, in the last few days, about the overjustification effect — the phenomenon Edward Deci and Richard Ryan named in the 1970s, when they noticed that extrinsic rewards, introduced for activities that were previously intrinsically motivated, tend to *replace* the intrinsic motivation rather than add to it.

The effect, in the version of the team I work with, is the one I have been trying to name. The designer who used to spend a Sunday afternoon fiddling with a campaign layout, because the campaign was interesting, has been told, in the new system, that the Sunday afternoon is the time to fill the buffer for next week's quota. The fiddling has not gone away. The fiddling has been re-categorized — from "the part of the work I love" to "the part of the work I do because I have to." The re-categorization is the overjustification effect, in the small.

I have come to think of this as the most expensive thing a manager can do to a small creative team. The manager introduces a quota. The quota, by construction, adds a carrot. The carrot, in the research, eats the joy. The joy, once eaten, does not come back. The cost of the carrot is the loss of the joy. The cost is paid by the worker. The cost is paid, eventually, by the team.

The longer version of this — the three things the two-image rule misunderstands, the principle, the moves I have come to hold instead, and the literature I keep borrowing from — is in a piece I just published. The piece is on the writing page.

Read the long-form

Redundancy is not waste, or: the 99 experiments that the 1 needs

I have been thinking, on and off, about the difference between industrial efficiency and creative work. The industrial assumption is that time is the scarce input, and that the manager's job is to fill the time with the most efficient possible use of the time. The model is the assembly line. The model is, for creative work, the wrong model.

The model is wrong because the unit of progress in creative work is the experiment, and the experiment, in creative work, fails more often than it succeeds. The viral post is the visible tip of a long tail of invisible experiments. The 100 drafts that did not land. The 30 hooks that did not catch. The 10 angles that did not convert. Each of these is, by the manager's standard, a waste. Each of these is, by the creative's standard, the *substance* of the work.

I have been calling this the "redundancy" of creative work. The 99 failed experiments are the redundancy that the 1 viral post cannot exist without. The rule that eliminates the redundancy has, in the same move, eliminated the conditions under which the 1 can be made.

The hardest part is the manager who has to defend the 99, in a system that has decided the 1 is the work. The 99 are not the work, in the system's reading. The 99 are the redundancy, in the system's reading. The 99 are, in the creative's reading, the substance. The 99, in the version of the system I am trying to hold, are a line in the budget, named in the conversation, defended in the review.

I wrote the longer version of this — the three things the two-image rule misunderstands, the moves I have come to hold instead, and the literature I keep borrowing from — in a piece on what the two-image rule misunderstands. The piece is on the writing page.

Read the long-form

Quantification as a substitute for trust

A line I have been holding, on and off, for the last few weeks. The cheapest tool to mask the absence of trust is a count. The most expensive tool to replace the absence of trust, in the small team, is the same count.

The argument applies most strongly to the smallest possible team — the two-person team. The two-person team is the team where the cost of a count is the highest possible cost, because the cost of the count is paid in the loss of the conversation, and the conversation, in a two-person team, is the entire workflow. The conversation is where the angle gets chosen. The conversation is where the hook gets made. The conversation is where the work, in the version the team is capable of, gets done.

The count, in a two-person team, does not just fail to add the work. The count, in a two-person team, *subtracts* the work.

I have been watching this play out, in the small team I run, for a while. The team that I have decided to trust has done more of the work that the work is for, than the team that I have decided to count. The difference is not the team. The difference is the manager. The manager who has decided to count has, in the worker's reading, given up on the conversation. The manager who has decided to trust has, in the worker's reading, kept the conversation. The conversation, in the small team, is the workflow. The conversation, in the small team, is the work.

I wrote the longer version of this — the three things the two-image rule misunderstands, and the moves I have come to hold instead — in a piece on what the two-image rule misunderstands. The piece is on the writing page.

Read the long-form

When the form eats the image

A version of the Goodhart pattern played out in a meeting this week, in a way I cannot describe in full, because the people in the meeting are not me to quote. The pattern, in the version I saw, is the pattern I keep describing here.

A team has been given a hard number — a small one, but a hard one — for a kind of work that does not reduce to a number. The team has hit the number, every week, for several weeks. The thing the number was supposed to be a proxy for — a campaign that lands, a brand that holds up — is, by the consensus of the people in the room, not landing.

The number is not the problem. The number is the symptom. The problem is the moment a manager decides the number is the work, and the manager stops watching the work. Once that moment happens, the number starts to drift, the work starts to drift, and the gap between them is the part no one in the room can see, because no one in the room is looking at the work directly anymore.

The hardest part is not the number. The hardest part is admitting, in a system that has decided the number is the work, that the number is not the work.

I wrote the longer version of this argument — the four failure modes of a creative-team quota, the four moves I keep coming back to, and the literature I keep borrowing from — in a piece on the two-image week. The piece is on the writing page; I am not going to repeat the whole thing here.

Read the long-form

Generalists outperform on every task

A principle I have come to think about, on and off, for the last year. The generalist, in the right kind of team, outperforms the specialist on *any* one of the tasks in the team's surface. The reason is not that the generalist is more talented. The reason is that the generalist has the context.

I work with a small overseas team. Each member of the team can write copy, edit a short video, design a static post, and read a trend. None of them is the best copywriter, the best video editor, the best designer, or the best trend reader in the company. Each of them, in my experience, ships a finished post in any of those four surfaces — and the finished post lands better, more often than not, than a finished post made by a specialist who has been cut off from the rest of the workflow.

The W-shaped career is the same principle, applied to a person. The W is not a luxury. The W is the version of a person that the small creative team needs. The specialist, in the small team, is the one who ships two of the wrong thing and walks away. The generalist is the one who ships two of the right thing, in the same week, because the generalist can see where the two will land.

How far this scales past a small team is a separate question, and the principle may well invert at some size. The point, for me, is the small team I actually run. The longer version of this is in the two-image week piece.

Read the long-form

The cost of looking busy

A version of the pseudo-busyness pattern played out this week, in a way I have been chewing on.

A team I work with has been told, by a system I will not name, to be at the desk for a longer block of the afternoon. The block, in the version of the system, is supposed to be a productivity block. The block, in the version I have watched, is producing exactly the form of busy and not the work. The hours are in the chair. The status pings are going out. The visible artifacts are being produced. The work that the block was supposed to be a productivity block *for* is the work that has gotten slower.

I have written about this elsewhere — the 16:00 break piece, and now this week's two-image week piece. The argument is the same argument. A creative team that has to look busy produces the form of busy. A creative team that has been given room to do the work, by contrast, takes the room, and does the work. The cost of the looking-busy block is not the hours. The cost is the work that the hours are displacing.

The hard part is the manager who has to defend, in a system that has decided the form is the work, the decision to give the team the room. The manager has to be ready, in that moment, to say: the form is not the work, the room is the work, the hours in the chair are not the production, the production is what the team does with the room. I am not always sure I am the manager who decides anyway. I am getting better at it.

Read the long-form

The Frankenstein problem

I have been watching a quieter failure mode at work. Every team is now shipping with an agent. Every ship is competent on its own. The whole, in a way I did not fully appreciate a year ago, is broken.

The HR team ships an internal tool. The ops team ships another. Sales ships a third. None of them talk to each other. None of them share a user model. None of them share a permission model. None of them share auth. Each piece has its own login, its own data, its own opinion about what a user even is. The user — the person who is supposed to be the same person across all of them — has to log in three times. The maintenance, when one of the builders leaves, falls to nobody.

I have been calling this the Frankenstein problem in my head. Not because the products are bad. They are stitched together from pieces that have no idea what the other pieces are doing. Each piece is competent. The whole is a monster.

The cost of building has dropped to near zero. The cost of building *the same way* as the next team has not. That is the gap. The paved-paths piece I just put up is my attempt to name the gap and the role that closes it.

Read the long-form

Paved paths are invisible, and that is the point

The best paved path I ever laid was the one nobody noticed was there.

The team using it did not think about the auth. Did not think about the data model. Did not think about the deployment. They thought about the thing they were trying to do, and the path took care of the rest. The path was the door handle you do not think about. The path was the kitchen tap you do not think about. The path, in the moment it is working, is invisible.

The path becomes visible in two ways. The first is when it is missing — when the next team tries to build the same kind of thing and discovers the path is not there, and has to lay it from scratch in two weeks. The second is when it is broken — when the path stops working, the team's productivity falls off a cliff, and the path that was invisible becomes the only thing anyone can talk about.

The first visibility is a sign the path was right. The second is a sign the path was right, but the path's owner was not held.

I wrote the longer version of the principle in the paved-paths piece. The short version is here: the path is invisible, and the invisibility is the point.

Read the long-form

The cost of paving is not dropping

The cost of building has dropped. The cost of paving has not.

The agent era gives every team a 10x lever on the first part. The second part is still 1x, possibly worse, because the surface area that needs to be paved is rising. Every new team that ships with an agent is a new shape the platform has to support. Every new shape is a new seam to think about. The seam, in the worst case, is a place where the company's data, or the company's auth, or the company's user model, has to be the same across the company and is not.

The cost of paving is, if anything, rising. The people who can lay the path are the people who can see across the company, and the people who can see across the company are the people who are not in the weeds of the next sprint. The people who can see across the company are also, almost by definition, the people the agent era makes the most expensive. The trade is bad, and the trade is not going to get better on its own.

This is the punchline of the paved-paths piece, in case the long version is too long for the moment. The cost of building is dropping. The cost of paving is not. The company that does not notice the difference is the company that ends up with fifty front doors.

Read the long-form

Professional matters to professional people

A principle I keep coming back to here, in the systems I help run and the small decisions I have to make every week.

Professional matters should be handled by professionals.

The principle is, on the face of it, almost embarrassingly obvious. The reason I am writing it down is that the principle is the one most likely to be forgotten in the moment the cost of doing the work drops toward zero.

When the cost of building drops, the temptation is to build — in every direction, for every problem, for every department, with every available budget. The temptation is, in my reading, the failure mode of the unbundling. The temptation produces systems nobody uses, at a cost nobody tracks, for a problem that was never quite the problem the system was supposed to solve.

The HR director where I work has been pushing internal systems for the last several months. Tens of thousands to hundreds of thousands of yuan have been spent. Most of the systems sit unused. Asked in private, the grassroots staff says they do not fit the workflow; asked in public, the staff says they are useful. The systems, in production, do nothing. They will keep doing nothing until the person who built them leaves — and then they will keep doing nothing in a slightly more expensive way.

The principle, in this case, would have said: before the budget is approved, talk to a professional. The professional would have said: do not build; change the workflow. The problem is not the system — the problem is the workflow. The system, in the end, was a 30,000-yuan lesson in the cost of building something nobody needs.

The principle is simple. The discipline to apply the principle is the hard part. I am not always sure I apply it myself. I am getting better at it. The improvement is the only thing I have to point to, at the end of the year, as the work I have actually done.

Read the long-form

The new literacy is conceptual

I have been thinking, for the last year, about what to learn now that the syntax is becoming free.

I used to think the answer was to learn more languages. To get fluent in Python, in Go, in Rust, in TypeScript, in whatever was going to be the language of the next decade. I have a shelf of books on the topic. I have spent a lot of evenings on the topic. That is no longer the answer, if it ever was.

What I am now more interested in is the conceptual layer. What is a microservice, and when is it the right answer. What is a monolith, and when is it the right answer. What is a queue, and when is it the right answer. What is a database, and when is the relational model the right answer. What is a container, and when is the abstraction worth the cost. What is an event log, and when is the log the right answer.

I do not need to know how to deploy a Kubernetes cluster — the agent will deploy it. I do not need to know how to write the migration — the agent will write it. I do need to know, in my own head, which of these things is the right one for the system in front of me. The agent cannot tell me. The agent can only execute. The decision is mine. The decision is the new literacy.

The shelf of language books is going to gather dust. The shelf of concept books is going to be read twice. That is the bet I am making for the next five years.

Read the long-form

Agents are great for 0→1, and that is the problem

A friend showed me an internal tool that an agent built over a weekend. The first version was clean. The first version was fast. The first version solved the problem.

Then the user came back with feedback. The field should be in a different place. The label should match the customer-facing version. The dropdown should be sorted by recency, not alphabetically. The export should include the related entity. Each change, on its own, is small. Each change, on its own, takes the agent an afternoon. Each change, on its own, breaks something the agent did not know was load-bearing.

The pattern is the same pattern every time. The agent is brilliant at the first version. The agent is brittle at the second. The reason is not that the agent has gotten worse. The reason is that the work has changed. The first version is a from-zero task. The second version is a from-one task, and the from-one task depends on a history the agent does not have.

I have been watching the same pattern in three companies. The pattern is the one the agent era is going to produce more of, not less. It is the reason the new literacy is going to be the literacy of history, not the literacy of syntax. It is the reason the architect is going to become more important, not less, in the years ahead.

Read the long-form

The KPI review was theatre, again

We sat through the quarterly KPI review last week. Three pages of form. An afternoon of meeting. A full box of ticked boxes. At the end, the numbers had no effect on pay, no effect on ratings, no effect on promotions. The system is "running." Nothing is moving.

I wrote the longer piece about why this version of KPI — the version with no teeth — looks to me like the same pattern I have been writing about for frontline staff. The form looks like work, fills the calendar, produces no output. To me, the form feels like dirty work — but for the people who are supposed to be measuring the work, not for the people doing the work. The manager pays the tax. The HR partner pays the tax. The afternoon is the cost. The work that was supposed to happen in the afternoon is probably what gets squeezed into the cracks.

There is no fix available for this version, and the company will not find one while the form carries no consequences. Named plainly, the fix is to give the manager the conditions to see the work and the room to pay attention to it, at which point the form dissolves on its own. The form is not the answer. It is the sign that the answer has been replaced by a workaround.

Read the long-form

Dirty work for managers

I wrote, a few months ago, that there is a category of work that looks like work and produces no creative output. UTM links. Waitlist setup. Shipping tracking. Data sync. I called it dirty work. I framed it as a frontline problem. I was too quick to stop there.

The current KPI cycle made me realize, in a way I had not quite put together before: managers probably have dirty work too. The form. The rating. The consolidation. The meeting. The numbers that nobody reads. The boxes that have to be ticked. The system that has to be run. A lot of it looks, to me, like dirty work. A lot of it consumes the hours of the people who are supposed to be managing. A lot of it is what the manager does *instead of* watching the work — or at least, that is my best guess at the pattern.

The pattern is the same pattern. The dirty work consumes the hours. The actual work gets squeezed into the cracks. The role, over time, is defined by the form. The form is not the work. The form is the sign that the work has been replaced.

Read the long-form

When the sales floor KPIs each other

A friend of mine runs a sales team at a company where the quarterly KPI is welded to the rating, the rating is welded to the promotion, the promotion is welded to the comp. He told me last week that two of his sales leads are no longer talking to each other. They used to share customers. They used to help each other close. They used to call each other when one was stuck.

They do not do that anymore. From what he described, the KPI rewards individual numbers, because individual numbers are easy to compare. The lead who helps another lead close has, by construction, fewer of them than the lead who closes alone. So the helper is penalised and the soloist is rewarded, both of them work this out inside a quarter, the collaboration ends, and the customers feel it soon enough.

He asked me what I would do. I said: dissolve the proxy. It is producing the wrong instinct and rewarding the wrong behaviour. He said that is not what HR would say. I said, half-joking, that this is what HR is paid to say, and that the payment is the trap.

Read the long-form

The 16:00 break is policy now

For two years, the team has had a 16:00 to 16:30 block in the middle of the long afternoon. Closed laptop. Out of the office. Walk. No phone. No "I'll just reply to this one thing first."

The half hour is not a coffee break. It is a deliberate disengagement from the focused mode, so the diffuse mode has somewhere to run. The literature on attention, rest, and creative incubation has been saying the same thing for fifty years. I am just trying to take it seriously.

I wrote the long version — the why, the theory, and the postscript tying it back to the dirty-work piece. If your afternoon is a creative afternoon, the half hour is the cheapest production block of the day. If your afternoon is still a dirty-work afternoon, the break is theatre. Build the system first. Then take the walk.

Read the long-form

Dirty work is the enemy of creative work

There is a category of work that looks like work, fills the calendar, and produces no creative output. It comes back every day, in slightly different forms, and never quite goes away. UTM links. Waitlist setup. Shipping tracking. Data sync. Analytics pipelines. Marketing distribution. None of it requires taste. All of it can be done by a system, an agent, or a backend service.

I have been naming it "dirty work" in my head for a while. It is the silent killer of every team that is supposed to be doing creative work. The trap closes quietly — one task at a time — until the role is defined by the dirty work and the creative work is what gets squeezed into the cracks.

I wrote the longer piece about it — the principle, the trap, the cost, and where it shows up in every system I have built. The full essay is on the writing page.

Read the long-form

The link in the bio is now a system

The GUILD Bio Link Surface is live at links.guildgemlab.com. It started as a small thing — discovering that a third-party linktree was treating the Aurora Awards entries as ordinary Instagram posts. They were the most important campaign of the year, and they were getting the same treatment as a Tuesday morning post.

That was the moment the link in the bio stopped being a link. It became a homepage. Self-hosted, fed by the same backend that runs the rest of the operation, with a featured campaign slot that swaps in five minutes and a post grid that joins social content and Aurora entries in a single SQL query.

I wrote the case study — origin, system, wiring, outcome. The full architecture is on the work page. The principle behind it is on the writing page.

Read the case study

Two systems joined by one SQL query

The most surprising thing about the GUILD Bio Link Surface is not the page. It is the query behind the page.

One SQL statement decides which posts show up in the grid: is_public = true OR (aurora_no is bound AND the Aurora work is publicly visible). That is it. Two systems — the social media manager and the Aurora Awards platform — joined at the database level, not in JavaScript, not in the page. The page is dumb. The backend is the source.

I have been thinking about this pattern for a while. The instinct is always to glue systems together in code — write a function that fetches from system A, then from system B, then merges the results. That works until one system changes its schema, slows down, or returns a shape you did not expect. The join moves the integration down a layer, where the database can be honest about what it knows.

See the system

The agent pipeline is live

Eleven PRs shipped through the agent pipeline this month. Six of them were filed by people who have never written a line of code. The review-agent conversation has dropped from 18 minutes to under 4 by the eleventh requirement. That is the curve I am watching.

I wrote a longer piece about how the loop is wired — from a structured form, to a higher-tier review agent, to a coding agent on a sandboxed branch, to an architect who only looks at the system-level concerns. The full diagram is on the system page.

Read the long-form

This page is open

I am trying a new section of the site: short, frequent notes, no title required, no "let me polish this for an hour" gate. If a thought survives a single sitting, it goes here. If it grows legs, it becomes a long-form post. If it dies, that is fine too.

The point is to lower the bar for showing what I am currently chewing on — without pretending every thought is a finished essay.

Why this site exists

What the sales lead filed

A sales lead opened a structured form yesterday, described a field that should auto-populate from a related customer's last quote, and submitted. The review agent came back in three minutes with two questions: "do you want this for all customers, or only for the ones you have previously sent a quote to?" and "when the related quote is updated, should the field refresh automatically?".

She answered both. The coding agent opened a PR the same afternoon. The architect approved it the next morning.

The whole loop, from her first sentence to merged code, took 14 hours. Of those 14 hours, she was in the room for about 7 minutes.

The structured form is a thinking tool

The single biggest unlock in the agent pipeline is not the agent. It is the form.

A free-text requirement like "I want this to work better" is impossible for an agent to act on. A structured requirement — "when this field is left blank, after the user has already saved once, surface a hint that links to the help article" — is actionable. The user is forced to think about the edge case before they file it. The agent does not have to guess. The architect does not have to translate.

We are not building a smarter agent. We are building a smarter way to ask.