/ blu
CORE
BLU
HAPPI HOME PRO
RESULTS
EXPERIMENTS
FIELD NOTES
WHAT HOLDS UP
INPUTS
CONTACT
LOOP
The product is a loop
It starts when two numbers disagree. Reports fall out along the way.
ARCHITECTURE
Split by role, not domain
Lens, brain, guard, ledger. Four roles, no domain modules.
VOICE
Two voices, one auth
Leo never lives outside my auth, so the site hears VM and I hear Leo.
SEP 4
Three things at once
The repo went live before BLU stood. Virtual Mike picks up the load.
WAS THE RULE
Starts when BLU stands
Two unfinished things is one too many. That was the rule.
LiveVM
Virtual Mike
The interface you are using. Not a chatbot on a site — the site.
2 INSIDE
VIRTUAL MIKE
The reflex is the product
The reflex is worth virtualizing. The knowledge is not.
ProjectBLU
BLU
Virtual Mike, running on Simpli Soda's stack.
2 INSIDE
HubNOW
On the bench this week
Five buckets. Two are BLU, one is the thing you are reading.
4 INSIDE
HonestAVOID
What I am avoiding
Naming the price. Dressed up as a design problem. It is not.
1 INSIDE
DesigningHHP
Happi Home Pro
Designed before built. No app code yet. Listed anyway.
2 INSIDE
14 daysR-SHIP
0
Changes noticed
Somebody outside my head noticed. That is the bar.
UnattendedR-AUTO
0
Running without me
Two weeks unattended, or it does not count.
ReversedR-BACK
4
Decisions taken back
Counted, because pretending they were right is expensive.
OpenSAY
Say something
mike@michaelpelland.com — partners, builders, people comparing notes.
ParkedX-BLUCHAR
Manifest BLU as an actual character
A visual and personality layer for the intelligence that already exists underneath it.
OriginBLU-ORIGIN
Why don’t we just build it
A boat, a flask, and a question nobody had a good answer to.
ChallengeC-UGLY
Come tell me I am wrong
Bring the ugly question. I will ask BLU the Simpli Soda version of it, live.
GroundingL-IDK
If it cannot say I do not know
Then every number it hands you is unverified by definition.
JudgmentL-CHAIR
The IP is the guy in the chair
The tool could build anything I could specify. It could not tell me I was specifying the wrong thing.
HeadlessL-HEADLESS
Not going headless is the mistake
Own the data model your business runs on, or rent somebody else’s definition of a customer.
SaaSL-SAAS
SaaS is dead
The horizontal middle dies. Infrastructure lives.
Sep 4N-904
Three designs, two limits
Built the ask, designed the login. The platform reset both.
PlatformL-DOCS
The docs are a claim
Their own documented example, rejected by their own server.
ArchitectureL-RESOLVE
The copy is not truth
Most systems operate off a copy. BLU asks the source again.
PrimitivesL-PRIMITIVES
Everything is a segment
Segment, measure, derived claim. Only two may render as a count.
Aug 27BLU-DEMOTION
The CRM was demoted
Platform to sensor. The plan was to remove it. It tells me more now.
1 INSIDE
ConvergenceBLU-ONEOS
One operating system, not two
Operations and demand, wired into the same reality.
AbsenceL-ABSENT
Absent is not zero
Zero, empty, unasked, unaskable. Four answers, not one.
ModelingL-MODEL
Modeling comes before intelligence
The model is not the hard part. Modeling the business is.
Aug 6N-REPORTS
Reports were segments
Every report I built was a segment. So I built segments.
Aug 13–14N-SLOW
The instrument went stale
Three BigQuery passes became eight. Nobody noticed for ten days.
Aug 14N-TWOREADS
Two reads can disagree
Deleted a real 2x speedup, because two paths can disagree.
StandingN-ANSWERABLE
The questions became answerable
The inputs always existed. Nobody owned the disagreement.
BylineX-BYLINE
Give the machine a byline
Virtual Mike drafts the posts. I press publish on each one.
TimingL-LATE
Right and late
Right and late is not the same failure as wrong. It is worse, because it audits clean.
EMAIL
We left the middle man
We left to get control. The markup was an accident. Nobody has run the experiment we are about to run.
AFFINITY
What the test told us not to build
The preview path is the send path. Everything else it taught us was subtraction.
Focus modeEmail · BLUCLOSE ✕

We left the middle man

We left to get control. The markup was an accident. Nobody has run the experiment we are about to run.

0:00 / 2:31

Push is mandatory and HubSpot cannot do it, so we were already paying two vendors — the only live question was whether it collapsed to one. The decider was not the stack and it was not the money. Through HubSpot we could not govern which individual got which email against our own definition of who they are. The money turned out to be the accident.

I spent years telling people to buy the layer. I never once looked up what the layer was buying.

THE STACK

Two vendors before we chose one

Push notifications are not optional for us and HubSpot does not send them, so a second vendor was already in the plan. That changes the question. It was never whether to add something, it was whether this collapses to one door or stays at two, and once it is phrased that way the incumbent has to justify the seat rather than inherit it.

GOVERNANCE

The decider

We could not govern which individual got which email against our own definition of who they are. Not who HubSpot thinks they are, and not a list we maintain twice. Our record knows what machine someone owns, what they have bought, what they have not. A platform that cannot be told that, in those terms, at send time, is a platform we are writing around rather than working in.

THE EVIDENCE

Why the bet is reasonable, and why nobody can prove it

The clean experiments are about shallow personalisation and the effect is small. The best of them, a randomised field study across millions of emails, put a first name in the subject line and moved opens from 9.05% to 10.80% and leads from 0.39% to 0.51%. Its own argument is that this works because the name carries no information — it buys attention, not relevance — and a later replication could not reproduce even that. The large numbers are vendor data. Segmented campaigns get twice the clicks, but a sender chooses which campaigns to segment, and they choose the ones with a clear audience and a real offer. The honest end of the range is a consultancy's 10 to 15 per cent. So the study for what we are actually doing — the email assembled from what we know rather than poured into a template — has not been run. That is not a hole in the argument. Almost nobody can run it, because almost nobody holds the data in one place at send time. You cannot buy the study because you cannot buy the capability.

THE MARKUP

The part nobody checks

Moving email off HubSpot is roughly twelve thousand a year of marginal cost, and that is against a discounted price, so it is a floor rather than a target. That was not why we moved and I want to be honest that we found it on the way out. But it is the part most people will recognise, because most of the services that do this are themselves sending through the same infrastructure we went direct to, and its published rate is sixteen cents per thousand emails. The layer is real work. It is not that much work.

Published Updated BLU-ESP
ASK