Omar Shabab

Machine learning engineer. I build AI tools, CLI applications, and civic tech, and write about the parts that were harder than they should have been.

12
Security September 2026 AI-written

Your agent has been writing your secrets to disk

I scanned 1.2 GB of my own Claude Code and Codex transcripts for credentials and found 373 across 105 files, including a live API key repeated 60 times and a plaintext password. The script is a single file with no dependencies. The write-up is mostly about the four bugs that got past a green test suite.

Read post
11
Research August 2026 AI-written

Advancements in image search and nearest neighbor algorithms from 2021 to 2026

Five years of image search in one place. CLIP made text a query for pictures, compression got a proof and moved inside the graph, cross-modal queries turned out to break the assumption every index was built on, and storing a vector fell from memory prices to object-storage prices. A sourced synthesis, with no original benchmarks.

Read post
10
Benchmark August 2026 AI-written

MLX vs llama.cpp on an M3 Ultra: mlx-lm decodes 1.49x faster, and one run is not an answer

A measured MLX vs llama.cpp comparison on a 512GB Mac Studio M3 Ultra at a 234,158-token prompt. mlx-lm 0.31.3 decodes 1.49x faster than llama.cpp b10200 and ties on prefill, while llama.cpp uses 29% less system-wide memory and outranks every MLX serving stack measured on decode. The llama.cpp arm is a single unrepeated run, and this post is mostly about why that matters.

Read post
09
Benchmark August 2026 AI-written

Every 256K-capable local LLM on my Mac Studio M3 Ultra, ranked. The winner decodes at 60.45 tokens/sec.

Sixteen model and engine configurations at a real 262,000-token prompt on a 512GB Mac Studio M3 Ultra. Nemotron-3.5-Lightning-30B-A3B wins at 60.45 tok/s decode with 8/8 needle recall, and it wins by degrading slowly: its decode falls 1.83x from 2k to 262k where a dense 14B falls 10.68x. Architecture beats parameter count, a 1M-native model fails at 1M, and all five recall failures I published turned out to be my own harness.

Read post
08
Hardware August 2026 AI-written

macOS clamps my M3 Ultra's GPU to 338 MHz before the fans even try. Maxing them doubled my LLM throughput.

My LLM benchmarks kept collapsing 4x mid-session. macmon caught a firmware power limiter clamping the GPU to 338 MHz and holding it while the die cooled, fans never past 70%. Pinning them at max with fanpro: 2.57x sustained decode, and a 100k-context job in 259 s instead of 568+, byte-identical.

Read post
07
Benchmark July 2026 AI-written

Kimi-Linear ran a real 1M context on my Mac Studio. I checked all million tokens.

Last post I called local 1M context a mirage. Then Kimi-Linear-48B passed: 8/8 needle recall at a real 1,048,692-token prompt on a 512GB M3 Ultra, full ingestion proven. Native 1M is finally real. It just takes a five-hour prefill.

Read post
06
Benchmark July 2026 AI-written

The two numbers that decide local LLMs: 100 tokens/sec and 1M context

I ran a 754B model on a 512GB Mac Studio. It fits, it crawls, and its 1M context flag is a warning message and a silent cap. Where local models fail as coding tools, and the one job they are great at.

Read post
05
Hardware July 2026 AI-written

Making a Logitech mouse follow its keyboard across Macs

Easy-Switch moves the keyboard and abandons the mouse. One HID++ packet fixes that, once you get past the two permission gates macOS hides between you and your own devices.

Read post
04
Claude Code June 2026 AI-written

How I run Claude Code: Opus 4.8 advisor + ultracode

Two switches I leave on: the advisor tool and /effort ultracode. An honest, log-backed account of where they help, where they are overkill, and where the model wisely skips them.

Read post
03
Template April 2026 AI-written

I built a SaaS starter because every other one is wrong

An opinionated Cloudflare-first template. Next.js 16, D1, Better Auth, Stripe. No monorepo. No edge-runtime religion. No status page.

Read post
02
Benchmark April 2026 AI-written

Local LLM Benchmark: Gemma 4 vs Qwen 3.5

Head-to-head on a Mac Studio M3. 26 prompts, 6 categories, and one surprising finding about thinking mode overhead.

Read post
01
Data January 2026 AI-written

Bangladesh 2026 National Election Candidates

Explore 1,680 candidates across 275 constituencies. Filter by coalition, division, party, and more.

Explore data