Where software-defined vehicles are heading
The opportunity map of SDV: what changes economically with OTA and features as software, which technical directions are compounding, and why now is an unusually good entry point for software engineers.
39 posts across 6 topics. Jump to a section:
Virtual ECUs, simulation, vehicle APIs, and the shift to software-first cars.
10 posts
The opportunity map of SDV: what changes economically with OTA and features as software, which technical directions are compounding, and why now is an unusually good entry point for software engineers.
The software-defined vehicle from first principles: how E/E architecture is consolidating, why hardware and software are decoupling, what vehicle APIs like COVESA VSS change, and how to try it today with digital.auto.
The two moves that define modern vehicle software work: shift left (validate earlier, against virtual targets) and shift north (develop at higher abstraction, against vehicle APIs instead of bus signals).
What ACC actually is per ISO 15622 — sensing, the two-loop controller, time-gap policy, the state machine — and how we test a real ACC controller as an FMU in a virtual car.
From zero to a tested virtual ECU with RemotiveLabs, file by file: signal databases, a Python behavioral model, topology build, and a pytest that proves it works.
A one-page, hand-verified reference for the RemotiveLabs toolchain: CLI command map, broker verbs, record & replay in 3 steps, offsets, versions, and every gotcha we hit.
Giving a virtual car real physics: a pure-I/O bridge between the CARLA driving simulator and vehicle bus signals — design, verification against ground truth, and the bugs.
Booting Android Automotive 15 as the virtual infotainment unit of a simulated car — and the two deep bugs on WSL2: vsock via LD_PRELOAD, and WebRTC ICE vs Docker Desktop.
Build a virtual vehicle from containerized ECUs with RemotiveLabs: signal databases, CAN/LIN/SOME-IP buses, behavioral models — the mental model, a worked topology, and the gotchas.
A hands-on, current (2026) path for taking a PyTorch CV model to ONNX and a TensorRT engine: export, parity, FP16/INT8 build, and latency gating.
Agent harnesses, context engineering, MCP, and running LLM coding tools without regret.
8 posts
Why long coding-agent sessions degrade, what compaction really loses, and the habits that keep an agent sharp: grep-first, sub-agents, short memory files.
What MCP is in mid-2026 — primitives, transports, registry — and the four things that bite once you actually install servers.
A complete, runnable Python coding agent — loop, tool schemas, read/write/edit/bash, permission prompt — plus the failure modes nobody warns you about.
The coding agents that exist in mid-2026, sorted by shape instead of vendor, with prices, licences, benchmark caveats and a decision guide.
Why SWE-bench Verified and Terminal-Bench are weak buying signals, and a two-week protocol for evaluating a coding agent on your own repository.
A hands-on tour of Pi 0.82.1 — install, the four default tools, session trees, all five extension points, and when a bigger harness wins.
A working threat model for coding agents, the sandbox options ranked by real strength, and a graded setup for side projects, work repos and CI.
What a coding-agent harness actually is — loop, tools, context, permissions, extensions — and why the same model scores differently in each one.
Retrieval, structured outputs, serving and fine-tuning open models.
6 posts
Hands-on guide to self-hosting open-weights LLMs with vLLM: install, serve an OpenAI-compatible API, quantize, benchmark, and manage VRAM.
Build a typed MCP server in Python, run it over stdio and HTTP, wire it into Cursor, and drive it from a custom client and an OpenAI-compatible model.
Build agentic RAG in Python: hybrid retrieval as a tool, a bounded agent loop, sufficiency and grounding checks, against any OpenAI-compatible endpoint.
Building an end-to-end multi-agent system — support, recommendation, and pricing — with LangChain, AutoGen, FastAPI, Kafka, and Qdrant. What held up and what I'd change.
A hands-on QLoRA fine-tuning walkthrough: dataset prep, 4-bit training with peft and trl, merging, and vLLM serving behind an OpenAI-compatible API.
A layered, runnable approach to reliable structured LLM outputs: pydantic schemas, json_schema enforcement, bounded validate-and-retry, and constrained decoding.
How software actually gets built: process, testing, version control, code quality.
10 posts
How to run a root cause analysis that ends in a fix ticket instead of a symptom, a philosophy, or a person to be more careful.
How keyword-driven suites in Robot Framework are built, how they rot, and the maintenance rules that keep them running past month three.
What belongs in a coding standard, what belongs in a config file, and how to enforce the difference with formatters, hooks and CI gates.
How to tell deliberate debt from accidental mess, measure what it costs you, and make the case for paying it down in numbers a manager will accept.
A working mental model of Git — snapshots, pointers, three trees — then the daily commands and how to escape the five situations that scare people.
Red-green-refactor with a worked Python example, what test-first actually buys you, and the places where it earns its keep least.
A practice-by-practice look at Extreme Programming: what became the industry default, what stayed niche, and why the split is mostly about tooling.
The roles, events and artifacts Scrum actually defines, how each one degrades on a real team, and the kinds of work it fits badly.
The phases every software project runs through, why waterfall, iterative and agile only differ in ordering, and how to choose one deliberately.
What the four values and twelve principles actually say, which ones matter in practice, how to spot agile theatre, and when plan-driven is the right call.
Communicating clearly, thinking clearly, and the habits that make an engineer easy to work with.
3 posts
A review checklist for design docs, bug diagnoses and estimates, plus the five biases that quietly get past it.
Ten principles that make an engineer good to work with, each grounded in a real situation, plus the failure mode each one produces when overdone.
Treat miscommunication like a pipeline bug: find the stage that failed, then apply the fix that actually belongs there.
Speech, vision, and the lessons that came out of the papers.
2 posts
How the noisy student loop actually works, why the noise and the pseudo-label filter are the method, and where it falls apart in practice.
Why combining CNNs, InceptionNeXt, and a Vision Transformer beat either alone for video deepfake detection — and why cross-dataset generalization is the metric that matters.