Notes on building software worth keeping.
Perspectives from our design, engineering, and AI teams — practical, opinionated, and free of hype.
Outsourcing software development to Pakistan: what to expect
The time zone helps more than people expect, and payment needs more thought than people plan for. An honest account from a studio in Islamabad.
Oct 27, 2026 · 6 min readBusinessWhy an agency should ship its own product
Client work ends at handover. A product you operate keeps telling you things about your own engineering that no retrospective ever will.
Oct 25, 2026 · 3 min readAICharging AI agents for your content
Cloudflare's Monetization Gateway revives HTTP 402 so agents can pay per request. What x402 actually does, and what using it would cost you.
Oct 25, 2026 · 3 min readEngineeringFeature flags without the platform
You can get most of the benefit from a database table and some discipline — and the discipline is the hard part.
Oct 6, 2026 · 2 min readBusinessThe early warning signs a software project is in trouble
Projects do not fail suddenly. They fail slowly, and the signals are visible months before anyone says so.
Oct 6, 2026 · 3 min readEngineeringChoosing a database when you are not a DBA
Use Postgres. The interesting part is the handful of situations where that is the wrong answer.
Oct 5, 2026 · 2 min readEngineeringWhy your site search is worse than Google's
Because a SQL LIKE query is not search. The gap between the two is where most product search disappoints.
Oct 5, 2026 · 2 min readBusinessHow to be a good client on a software project
The variables that most affect a project's outcome are mostly on your side of the table, not the supplier's.
Oct 5, 2026 · 2 min readEngineeringWhere your secrets should actually live
Not in the repository, not in the PM config, not in a screenshot in Slack. A short guide to the boring version.
Oct 4, 2026 · 2 min readEngineeringRewrite or refactor?
The rewrite is almost always more appealing and almost always more expensive. Here is how to tell when it is genuinely the answer.
Oct 4, 2026 · 2 min readEngineeringWhy your CI is slow, and what actually fixes it
A twenty-minute pipeline costs more than the compute. It costs the habit of pushing small changes.
Oct 3, 2026 · 2 min readBusinessWho owns the code when an agency builds it?
The answer should be you, in writing, before work starts — and there are four other things to get in writing with it.
Oct 3, 2026 · 2 min readDesignKeyboard accessibility: the third that scanners miss
Automated tools catch contrast and alt text. They cannot tell you whether anyone can finish your checkout without a mouse.
Oct 2, 2026 · 2 min readBusinessFixed price or time and materials?
Fixed price does not remove your risk — it prices it and sells it back to you. Here is when each model is the right one.
Oct 2, 2026 · 3 min readEngineeringWhat actually makes learners finish
Completion is a product problem, not a content problem — and the levers that move it are mostly not features.
Oct 1, 2026 · 2 min readEngineeringNext.js caching, explained without the confusion
Four separate caches with similar names, and most of the surprises come from not knowing which one you are fighting.
Sep 30, 2026 · 2 min readEngineeringEvery carrier integration is its own project
One has a clean REST API. The next has SOAP from 2009. Budgeting them as a single line item is how logistics projects slip.
Sep 29, 2026 · 2 min readEngineeringWhich structured data is actually worth adding
Google retired FAQ rich results in 2026. Here is what still earns a result, and what is now just bookkeeping.
Sep 27, 2026 · 2 min readEngineeringWhat integrating with a clinical system actually involves
The demo shows an API. The reality is a nightly file drop, a vendor fee, and a field nobody can explain.
Sep 26, 2026 · 2 min readEngineeringWhich image format should you actually use?
WebP for nearly everything, AVIF when the saving justifies the effort, PNG only when you need lossless. Here is the reasoning.
Sep 25, 2026 · 2 min readEngineeringIs your health product a medical device?
The question that decides your timeline, your budget and your regulatory burden — and the one most teams answer too late.
Sep 24, 2026 · 3 min readEngineeringWhat actually moves Largest Contentful Paint
Most LCP advice is a list of everything. Here are the four things that actually move the number, in order.
Sep 23, 2026 · 2 min readEngineeringWhy your fintech product needs a ledger
Storing a balance as a number you update is the mistake that is cheapest to avoid and most expensive to fix.
Sep 22, 2026 · 3 min readEngineeringMigrating to Tailwind v4: what actually changes
The JavaScript config is gone and theming moved into CSS. Here is what that means in practice, from a project that made the move.
Sep 19, 2026 · 3 min readDesignBuilding a colour system that passes WCAG
Brand palettes are chosen on a mood board and then fail contrast on the first real screen. Here is how to design one that does not.
Sep 18, 2026 · 3 min readEngineeringYour animations are probably costing you Core Web Vitals
Scroll reveals ship with opacity zero. If the animation never runs, the page never appears — and the metric Google measures notices.
Sep 16, 2026 · 3 min readEngineeringWhy your links look broken when people share them
A bare grey box on LinkedIn is a missing tag, not bad luck. We had the same problem on this site.
Sep 14, 2026 · 3 min readEngineeringThe European Accessibility Act is in force. What it means for your website.
The deadline passed in June 2025. If you sell to EU consumers, accessibility moved from good practice to a legal requirement.
Sep 12, 2026 · 3 min readBusinessIn-house or agency: the costs that never make the spreadsheet
Salary is roughly two thirds of what an employee costs. The comparison most teams run is missing the other third.
Sep 9, 2026 · 3 min readEngineeringWhy your stock numbers are always wrong
Overselling is rarely a sync speed problem. It is usually two systems that both believe they are right.
Sep 8, 2026 · 2 min readEngineeringMulti-tenancy: the SaaS decision you cannot defer
Almost everything in a SaaS product can be changed later. How customer data is separated is not on that list.
Sep 4, 2026 · 2 min readEngineeringWhat actually drives the cost of a software project
Feature count is the thing everyone counts and the weakest predictor of cost. Here is what the number really tracks.
Sep 2, 2026 · 3 min readEngineeringOffline-first apps: what it actually takes
Warehouses, delivery routes and basements are where field apps are used and where connectivity is not. Designing for that changes everything underneath.
Sep 1, 2026 · 3 min readBusinessWhat software actually costs to run after launch
The build is the part everyone budgets. Over five years it is frequently the smaller half.
Aug 26, 2026 · 3 min readEngineeringWhy software projects run late
Not because engineers are slow. The delays are almost always the same five things, and four of them are decided before any code is written.
Aug 19, 2026 · 3 min readEngineeringWhat a discovery phase actually produces
The line item clients resent most, and the one that most reliably prevents a project going sideways.
Aug 13, 2026 · 2 min readBusinessBuild vs buy: when custom software is the wrong answer
We build software for a living and we still talk people out of it regularly. Here is the line we use.
Aug 8, 2026 · 2 min readBusinessHow to choose a software development partner
Portfolios are curated and references are hand-picked. Here are the questions that actually separate firms.
Aug 5, 2026 · 3 min readDesignDesigning for the first five seconds
The opening moment of a product decides whether the rest of it ever gets a chance. Here's how we design for it.
Jul 10, 2026 · 3 min readEngineeringWhy we bet on Next.js and Payload
The stack decisions behind sites that stay fast for users and easy for the teams who edit them — including where the combination is the wrong answer.
Jun 22, 2026 · 3 min readAIShipping AI features without the hype
A practical checklist for adding LLM features your users will actually trust — starting with whether you should.
May 30, 2026 · 3 min readDesignThe quiet power of a design system
Design systems don't just make things consistent — they make teams faster and braver. And they can absolutely be premature.
May 8, 2026 · 3 min read