Skip to content
Ahmed Hamza Product engineer
  • Writing
  • Projects
  • About
  • Resume
  • Now
  • Contact

Writing

Notes from building

What I tried, what went wrong, and what I would do again. Decisions, trade-offs, and the occasional dead end.

Topics

All writing 19 AI 5 MCP 5 Automation 4 Node.js 4 Satori 4 Promptready 3 Systems 3 Browser Extension 2 All topics

Sep 11, 2026 AI

Can AI classifiers follow meaning when the words disappear?

I built a numeric semantic transport for AI agents, then used Decoder and Doer failures to test what survives when ordinary language is removed from the wire.

AIAgentsSemantic ProtocolsRobustness TestingPython

Aug 21, 2026 Project Retrospectives

QAP learned to say NO-GO

How an older signal-led crypto pair CLI evolved into a deterministic research workbench where matched passive controls, realistic costs, and evidence can overrule the model.

QAPPythonQuant ResearchProject Retrospective

Aug 21, 2026 Project Retrospectives

What changed when Satori became local-first

What changed in Satori's indexing, storage, and source verification when code search began running locally by default.

SatoriMCPRetrievalLocal First

Aug 20, 2026 Automation

Recommendation is not publication authority

Lessons from an X publishing experiment in keeping research, draft recommendations, approval, and measurement separate.

AutomationAIHuman In The LoopNode.js

Aug 19, 2026 Automation

The hard part of giving ChatGPT a shell is the trust boundary

How I separated file, terminal, and browser permissions when connecting AI clients to a local workstation with WebHarness.

MCPAutomationDeveloper ToolsInfrastructure

May 20, 2026 Automation

Why Chrome extension UI automation becomes whack-a-mole

Notes from building AI Studio Prompt Library: scoped MV3 messaging, layered DOM selectors, Angular form events, and user-controlled selector fallbacks.

Chrome ExtensionDom AutomationTypescriptChrome Api

May 12, 2026 Project Retrospectives

Why long-form TTS needs a queue, not repeated paste-and-generate

How VoxInfinity turns Inworld AI's homepage TTS widget into a browser-session queue for books, articles, long notes, direct requests, and playback.

VoxinfinityInworld AIFree TTSText-to-speechVoice generationUserscriptsAutomationBrowser Tools

May 12, 2026 AI

Why naive RAG fails for coding agents—and what Satori does instead

Why fixed text chunks are weak evidence for code changes, and how Satori combines symbol-aware chunking, hybrid retrieval, freshness checks, and exact bounded reads.

AIMCPRagArchitectureSystems

May 5, 2026 Project Retrospectives

Why PromptReady needed an offline Markdown baseline first

How PromptReady moved past generic page cleanup by making local Markdown capture, source metadata, fallback selection, and AI cleanup boundaries explicit.

PromptreadyMarkdownBrowser ExtensionOffline First

May 5, 2026 Project Retrospectives

When local capture failed: empty shells, lazy pages, and fixture tests

Notes on turning PromptReady's weak page captures into explicit deep-capture policy, rendered fixtures, diagnostics, and repeatable no-network tests.

PromptreadyFixturesTestingBrowser Extension

Page 1 of 2

Older notes

Ahmed Hamza

Software engineer in Kolkata. I build web products and developer tools that show their work.

Site

  • Writing
  • Projects
  • About
  • Resume
  • Now

Elsewhere

  • GitHub
  • LinkedIn
  • Email
  • RSS

© 2026 Ahmed Hamza

Built with Astro. Set in Libre Baskerville, Geist, and IBM Plex Mono.