Ethics

What we will not do, and what it costs

Positions are cheap when they cost nothing. Each of these gives something up — a feature, a revenue line, or work we could have taken. That is the only reason they are worth publishing.

Where a model earns its place, and where it does not

A model gets added when it does a job that needs doing, and not otherwise. They are not all the same kind. Crub uses two. Specialist image-recognition services name a plant, mushroom or insect from a photograph, which is a thing those models are genuinely good at. A language model sits alongside them for chat and recommendations — what to plant, where, and what goes well beside it — while care notes and calendars come from the library. KinopiQ uses a language model to read an uploaded document and propose the requirements it is evidence for, because working out which of six standards a document bears on is an afternoon of tedium nobody should be spending. SwingFactor uses a language model to draft the model of a decision from its sources, because reading every source for the claims that bear on a choice is reading work.

In each, the model proposes and a person decides. An identification carries a confidence figure, a recommendation is a starting point, a requirement is linked because you confirmed it, and nothing SwingFactor drafts counts until a person accepts it.

Using a model means sending it something. What you ask one of these products to read or answer about goes to the service that runs the model, and so leaves AKdev: a photograph to the image-recognition services, and for the language models the content in question to Anthropic, AWS or Microsoft. The sub-processor register says who receives what, product by product.

BusyWait has none and never will. Keeping two calendars in agreement is arithmetic and a webhook, and putting a model behind it would burn real power to do a worse job than a loop already does perfectly. Inference costs electricity and water somewhere, and spending that so a product can say the word on its homepage is a trade we are not going to make.

This is not a page about abstinence written by someone who ships no AI. Every product but BusyWait uses a language model, and Crub uses image recognition as well. That is the tension, and it is the reason the restraint is worth anything: BusyWait’s refusal is a choice rather than a limitation, because the sibling products show the studio will reach for a model when the job wants one.

What we will not build

No notetakers, no meeting recorders, no transcription. No engagement mechanics — streaks, nudges, anything designed to make a product stickier without making it better. No data as a second revenue line: what you put into these apps is not sold, not brokered, and not the business model. The subscriptions are the business, which is what makes that sentence checkable rather than reassuring.

What that costs: the competitive set is racing toward AI assistants and meeting intelligence, and those are the features that win comparison tables. Each one is a decision against, not a thing we have not got round to.

Small on purpose, and what it costs you

Support reaches the people who build the product rather than a tier of it, so answers tend to be direct and reasonably quick. The same fact runs the other way: work happens in an order rather than in parallel, and a request that would be a sprint at a larger studio may simply be a no here. Both of those are true, and you should weigh them.

There is no enterprise tier holding the useful part hostage, because there was never a version of this where that made sense. What that costs is the revenue an enterprise tier would bring, which is most of the reason other products have one.

Who we work for

Client work is limited to Scotland and kept deliberately small — it is capacity we can give properly without the products suffering for it. Enquiries from elsewhere get an honest no rather than a slow maybe.

What that costs is most of the market. It is also the only way the sentence above about support staying direct remains true.

Where we are not there yet

The inference we do run has an energy cost we have not measured. Saying it is small because the studio is small is an assumption, not a figure, and until there is a figure this page cannot claim the trade is a good one — only that it is made deliberately.

The hosting footprint is somebody else’s to report and we have not asked for it. A page arguing that inference costs power somewhere should know what its own servers cost.

Getting in touch

If something here does not match what one of the apps actually does, that is worth knowing about — email hello@ak.dev or use the contact page.