I hear a lot about so-called vibe coding, in which you prompt an LLM to produce a bunch of code with little regard to the quality, so that you can get something that sort of works quickly.
While I'm not interested in that, I did decide to break with my recent practice and write some software with a lot less regard to trappings of quality. I did NOT:
- Make a pyproject.toml file
- Carefully install requirements with uv or pip
- Use ruff, pre-commit, ty, and other best practices
- Write any tests whatever
- Check license compatibility even once
Instead, I:
- Started typing into a blank Python file with no real plan
- Vendored in whatever files I wanted
- Called into a C library (6800 CPU simulator from SIMH) with ctypes instead of making a nice Pythonic API
- Well did I say C library? More like a C source file copied from somewhere else and edited until it could be built into a shared library.
- Then did it again with a speech synthesizer simulator from MAME
- Just let it grow organically
- Added whatever feature I wanted next, until it felt done
The result? A pretty usable emulator for a 6800-based breadboard computer. It not only emulates the computer, but provides its own readline-based debugging interface with debug symbols, instruction decoding, breakpoints, etc.
This project will never "grow into" anything big, nor is it supposed to, so whatever level of technical debt doesn't stop me progressing is absolutely fine!
It's felt in some ways more fun than trying to do a Quality Python Package I imagine putting on pypi...
Entry first conceived on 1 May 2026, 21:49 UTC, last modified on 1 May 2026, 21:58 UTC
Website Copyright © 2004-2024 Jeff Epler