Articles: Notes on Building Software and AI
Notes from the lab: practical write-ups from Cueset Labs on SEO, web frameworks, large vs small language models, AI agents and touch typing for the IT sector.
Practical write-ups on the decisions we make building software and AI systems: what we weigh, what we’d pick, and why.
- Launching CueSense: A Health and Life Companion Where the AI Runs on Your Phone, Not Our Servers
· 8 min read
CueSense runs small AI models on your phone to organise notes, plan and surface health patterns, with validated evidence and deterministic fallbacks.
Most "AI companion" apps have a server in the loop. You speak, your words travel to a data centre, a frontier model answers, and the reply travels back. That design is easy to build and hard to defend — because the moment a health note leaves the phone, you have to explain where it went, who can read it, how long it is kept, and what happens when the network is down. CueSense takes the opposite position. Every piece of AI that touches your words runs on the device in your hand. There is no cloud model, no "bring your own key" provider, and no server that sees a single capture. Today it goes live.
In this article:
- Small models, close to the user
- The AI selects; the app owns every fact
- Making a phone behave like a reliable runtime
- The factory stays offline
- What this adds up to
- Touch Typing for the IT Sector: How cueset/type Finds the Keys That Slow You Down
· 11 min read
A prose typing test can’t tell you why you slow down on the code, commands and user stories an IT job involves. cueset/type finds the keys that cost you time and builds a 10-lesson plan around them, and its Virtual Coach uses your webcam to catch wrong-finger habits.
Most typing tests hand you a passage of plain English and a words-per-minute score at the end. That number says very little about how fast you type at work in IT. Code, commands, SQL and config files are full of brackets, operators, quotes and capitals, which are the keys that sit furthest from the home row and need Shift. Someone who types 80 WPM on prose can be a third slower inside a JSX block, and a single score won't tell them which keys are to blame.
In this article:
- Start with the material you actually type
- A report measured against your own speed
- A plan built from your own faults
- Virtual Coach: which finger pressed the key
- The arcade, challenges and the rest
- How the keyboard at the top of this page works
- Try it
- Building a Data Analyst Agent: Grounding an LLM in Tools, Not Guesses
· 7 min read
The hard part of “talk to your data” is not getting an answer; it is getting one you can defend. With code from our analytics agent, here is how we keep every answer anchored to the data, and how the system reports what it refused to do.
Point a language model at a spreadsheet and it will always answer. That is the problem, stated in one sentence. A model asked about a column that does not exist will not stop and tell you the column does not exist. It will reach for the nearest plausible thing, write a query, and hand back a confident, well-formatted number that is quietly fiction. The hard part of a "talk to your data" system is not getting an answer. It is making the answer one you can defend to the person who signs off on it.
In this article:
- Plan and execute over a closed registry
- Tool selection by retrieval, not a wall of prompt
- Validating every call against the real schema
- The loop: detect, repair, drop, report
- Measuring groundedness, including the failures
- Degrading toward honesty, not toward a guess
- Configuration
- Takeaways
- LLMs vs SLMs: A Practical Guide for Senior Engineers
· 6 min read
Choosing a model size is an architecture decision, and it depends on the latency, cost and privacy needs of your workload.
For the last few years, the usual answer to "which model should we use?" was the biggest one you could afford. That answer has stopped holding up. Small language models (SLMs) are now good enough at narrow tasks that sending every request to a frontier model often means paying for latency, cost and vendor dependency you don't need.
In this article:
- What we mean by "large" and "small"
- Where LLMs win
- Where SLMs win
- The tradeoffs engineers underestimate
- A decision framework
- Using both
- Practical recommendations
- React vs Astro: Choosing the Right Tool for the Job
· 5 min read
One is a UI library. The other is a content-first web framework that can run React inside it. Knowing the difference saves a lot of rework.
"React or Astro?" comes up on almost every new web project, and it's a slightly misleading question. React is a library for building interactive user interfaces. Astro is a framework for building websites that ship as little JavaScript as possible, and it can render React components when you need them. The two overlap, but their defaults point in opposite directions.
In this article:
- The core difference: defaults
- Where things stand in 2026
- Where Astro wins
- Where React wins
- Head-to-head
- Common mistakes
- A quick decision guide
- SEO Explained: What It Is, How It Works, and the Free Tools to Get Started
· 10 min read
You can have the best-looking website in your industry, but if nobody can find it, it isn't doing its job. SEO is how you get found.
Search engine optimisation (SEO) is the work of improving your website so it ranks higher when people search for the products, services or information you offer. SEO traffic is "organic": you don't pay per click the way you do with ads, and the results build up over time.
In this article:
- What is SEO?
- The three pillars of SEO
- Free SEO tools worth using
- Our recommendation for a paid tool: Semrush
- A simple SEO workflow using these tools
- Common SEO mistakes
- A sample site audit report