Product blog
Product blog
Product updates, field guides, and field notes—each with links to docs and the hub where relevant. High-level milestones also appear on the changelog.
Topic
- Read
Field guide · Jun 10, 2026
Mobile-first layout for content and tools
Why designing for the phone first produces a better desktop experience too, and the concrete rules that get you there.
- Start at 360px, not 1440px
- Tap targets at least 44px
- Stack, never cram or scroll sideways
Novus Stream Solutions (hub)
- Read
Field guide · Jun 9, 2026
Lossy vs lossless compression: what each is for
What lossy and lossless compression actually do, the trade-off between size and fidelity, the generation-loss trap, which formats are which, and a simple rule for choosing the right one for photos, graphics, audio, masters, and the web.
- Size vs fidelity, explained
- The generation-loss trap
- A simple rule for choosing
Novus Stream Solutions (hub)
- Read
Field guide · Jun 9, 2026
Search intent: writing the page the searcher actually wanted
What search intent is, the four intent types, how to read intent straight from the search results, why a great page that mismatches intent still fails, and how to match the format and depth searchers expect for a given query.
- The four intent types
- Read intent from the SERP
- Match format, not just topic
Novus Stream Solutions (hub)
- Read
Field guide · Jun 9, 2026
Web Workers and OffscreenCanvas: keeping the UI smooth during heavy AI work
A practical tour of moving heavy work off the main thread: why a single blocked thread freezes everything, what a Web Worker is and how data crosses to it without being copied, how OffscreenCanvas lets a worker draw directly, and the honest trade-offs in complexity that decide when it is worth doing.
- One blocked thread freezes all
- Move heavy work to a worker
- Transfer data, do not copy it
NSS Background Remover
- Read
Field guide · Jun 9, 2026
From scattered feedback to a roadmap, without a PM
A practical method for turning scattered feedback into a roadmap when you have no PM: getting all the inputs into one place, clustering raw requests into underlying themes, weighing each theme by frequency and pain against effort and fit, and sorting the result into build now, watch, or decline — across multiple products without drowning.
- Themes, not raw requests
- Weigh pain × frequency × fit
- Build, watch, or decline
Novus Stream Solutions (hub)
- Read
Field guide · Jun 9, 2026
Subscription boxes as a business model
A clear-eyed breakdown of the subscription-box model: what it is, why recurring revenue is so attractive, why churn rather than acquisition is the number that decides everything, how lifetime value must beat acquisition cost, the relentless monthly operations, the genuine cash-flow advantage of being paid upfront, and the kind of product and operator it actually suits. Educational, not financial advice.
- Recurring revenue, monthly clock
- Churn decides everything
- Paid upfront is a cash-flow edge
Novus Stream Solutions (hub)
- Read
Field guide · Jun 8, 2026
Automating SVG hero art for a 150-post blog
How to automate original hero and inline art across a large blog: a house style as code, topic-specific content in a consistent frame, why SVG beats raster here, and keeping every post visually unique at scale.
- Original art per post
- House style as code
- Unique at scale, on-brand
Novus Stream Solutions
- Read
Field guide · Jun 8, 2026
How to remove EXIF metadata from your photos (and why)
What EXIF metadata is, the privacy risk of embedded GPS, when platforms strip it (and when they do not), and how to remove it yourself without uploading your photos.
- What EXIF reveals
- GPS location risk
- Strip it free, on-device
NSS Background Remover
- Read
Field guide · Jun 8, 2026
Content as code: running a 250-post blog without a CMS
Why the product blog stores all ~250 posts as typed TypeScript objects instead of in a CMS: the post shape is enforced by the compiler, the whole catalog is versioned and reviewable in git, broken posts cannot ship, and the same tools that build the app build the content — plus an honest account of where this approach stops scaling.
- Posts are typed objects, not rows
- The compiler is the editor
- No half-published states
Novus Stream Solutions (hub)
- Read
Field guide · Jun 8, 2026
A go-live runbook for a serverless browser app
A practical, ordered go-live runbook for an app with no backend: verifying the build and assets, confirming metadata and share previews, checking performance and the offline path, making sure analytics and error reporting are live before traffic arrives, and knowing exactly how to roll back. Less a philosophy than a checklist that has earned its place.
- No servers, subtler risks
- Check before traffic, not after
- Know your rollback cold
Novus Stream Solutions (hub)