About
Two halves of one workshop
Passion is a small software studio. Half of the work is our own: products we designed, built, pay the hosting bill for and get woken up by. The other half is client work, live sites and platforms that we built and still look after. Alongside both sits Jonosakti, a free set of organising tools for petitions, referendums, unions and mutual aid. MIT licensed, no premium tier planned, earns nothing. We keep it because we wanted it to exist.
The two halves are the same craft pointed in different directions, and each one pays for the other in ways that are not only financial.
What owning the pager teaches
Advice is cheap when you never have to live with it. Objectify keeps tenant data in ten separate databases with a directory in front of them, so one customer's records are isolated by which database you opened rather than by everybody remembering a WHERE clause for the next five years. That looked fussy on day one. It is the reason a free tier is affordable, and the reason a tenant who writes ten times more than everyone else is a placement decision rather than an incident.
DMARC Engine taught us the other half of the lesson, which is about people rather than machines. Almost every domain we scan has a policy of p=none, put there years ago and never touched again, usually by someone who was quite reasonably afraid of blocking their own invoices. Getting from there to enforcement is a sequence of small reversible steps and a lot of patient reading of aggregate reports. No amount of clever architecture removes the need for that.
So when we tell a client a shortcut will hurt them in eighteen months, it is normally because it hurt us in month nine.
Client work pushes back the other way. Deadlines are real, budgets have an end, and other people's users do not care how elegant the internals are. Taxcare needed a Making Tax Digital calculator that gives a correct answer about who is in scope and from when, so the care went into the rules rather than the code. Linked Corporate needed eight pages that load on a phone in a warehouse and put the buyer straight into WhatsApp. That discipline goes back into our own products, where it is otherwise easy to spend a fortnight on something nobody asked for.
Being straight about what actually trades
They are not all trading businesses, and it would be easy to imply that they are. Objectify sells four plans in sterling and DMARC Engine has a published price ladder with partner rates for agencies, so those two are trading. Consonas has a live free plan for three users, with the paid tiers announced but not yet priced or open. ClassProfile is open to sign up and has no public marketing page and no pricing. 360nutri works and has no billing in it whatsoever. atHeartbeat is free, carries no advertising and makes nothing at all. Starterflare serves a login wall and nothing else: no public product, no pricing, no launch date. It is on the site because the codebase is real and it shows how we build when the constraints call for a conventional server stack instead of an edge one.
We would rather say that plainly than let a tidy portfolio grid imply a row of thriving concerns.
How the work actually goes
Small team, short cycles, something running in production inside the first fortnight so the conversation is about the real thing rather than a slide. We build the plain version first. Systems rarely get slow and expensive through one catastrophic decision; they get there through a hundred small pieces of flexibility added for a case that never arrived, each of which somebody has to understand at three in the morning two years later.
You deal with the people writing the code. No account manager in the middle, no weekly status theatre. What you get instead is a short written note: what changed, what broke, what happens next.
We also say what we do not know. If your problem needs a specialism we do not have, you will hear that on the first call rather than watch us acquire it slowly at your expense.
What we will and will not take on
Good fits: a multi-tenant product that needs building, or one that exists and needs somebody competent to run it. A domain whose email nobody has ever checked. A content-heavy site the client wants to edit without ringing anyone. A fast brochure site. An architecture you want a second opinion on before committing to a rewrite.
Poor fits: staff augmentation, where what you want is bodies rather than a finished thing. Reviews where the answer has already been chosen and the report is for show. Anything resting on a specialism we would be learning as we went, a regulated payments core or a native mobile app being the two we turn down most. And work that has to start next week, at a fixed price, from a scope that fits on a napkin.
Starting a conversation
Email info@passion.business and tell us what you are trying to do, who it is for and what already exists. Rough is fine. A paragraph in your own words beats a specification. If there is a live site or a codebase, point us at it, because we will have a look before we reply.
The first call is short, it costs nothing, and its only job is to work out whether the work is worth doing. If it is, you get a written proposal with a scope, a price and an honest note about which parts we think are risky. If it is not, we will tell you, and where we can we will point you at someone better suited.
Registered in England and Wales; the particulars are in the footer.