{"slug": "i-didn-t-write-a-single-line-of-code-i-built-it-anyway", "title": "I Didn't Write a Single Line of Code. I Built It Anyway.", "summary": "The author, a non-traditional developer with a background in the U.S. Army and automotive repair, built a full-stack invoicing application for his home mechanic business using AI tools, spending only $0.50 in API tokens and completing the project in one day without writing any code. He argues that while AI generated the code, his domain expertise—gained from years of hands-on mechanical work—was essential for specifying features like parts-first invoice sorting and internal time tracking, which generic software lacks. The author concludes that AI, like the calculator before it, elevates skilled practitioners rather than replacing them, but warns that success requires deep understanding to direct the technology and catch its mistakes.", "body_md": "I'm not a traditional developer. I don't have a CS degree. I learned to code at 13 on Visual Basic 3.0, spent 9 years in the U.S. Army including 3 combat deployments to Iraq, came home, spent 15+ years as an automotive technician, and somewhere in between all of that never stopped learning technology.\nI run a homelab that would have been considered enterprise infrastructure in the late 90s, It's amazing what's changed in 26 years. Self-hosted git, SSO, secrets management, a zero-trust network architecture, local LLMs, workflow automation. I built all of it myself. I am not telling you this to brag. I'm telling you this so you understand where I'm coming from when I talk about AI.\nI needed an invoicing application for my side business as a home mechanic. There are plenty of automotive invoicing solutions out there — Mitchell1, Shop-Ware, Tekmetric — but they're built for full shops with full shop budgets. Subscriptions running $100-300+ a month for a guy doing side work out of his garage doesn't make a lot of sense.\nBeyond the cost though, there's a principle at stake. I self-host everything. My password manager, my git repos, my search engine, my AI. Why would I hand my customer data, my vehicle history, and my business financials to a SaaS platform I don't control, for a small home business that doesn't need enterprise features?\nSo I built exactly what I needed. Nothing more, nothing less.\nBut not just a simple \"create invoice, send invoice\" app. I needed something that actually understood how a mechanic's business works:\nThese aren't features you find in generic invoicing software. They're features that only make sense if you've actually done the work.\nThe result is a full-stack Flask/Python application with:\nStack: Python 3.12, Flask, SQLite (WAL mode), Jinja2, Bulma CSS,\nWeasyPrint.\nI did not write a single line of code.\nI spent $0.50 in API tokens using opencode with a custom provider, stated what I wanted, made sure my agents.md was appropriate for the project, had the AI plan the architecture, then build it.\nTotal cost: $0.50.\nTotal time: One day.\nHere's where I expect some people to roll their eyes.\n\"You didn't build that. The AI built that.\"\nAnd I'd push back on that — hard.\nWhat I did was:\nThat last point is critical. AI makes mistakes. Sometimes subtle ones. Sometimes confidently wrong ones. If you don't have the domain knowledge to catch them you'll ship broken software and not know it.\nThe mobile-responsive layout wasn't just a nice-to-have. I specified it because I know what it's like to stand in a garage trying to look something up on a phone. The internal time tracking that never shows on customer invoices — because as a mechanic you're always working against book labor times. A brake job\nmight book at 1.2 hours. Am I actually hitting that? Beating it? Where am I losing time? That's data I need for myself, not something a customer ever needs to see on their invoice.\nThe parts-first sorting on printed invoices — because a customer shouldn't have to read through a jumbled mix of parts and labor line items. Parts grouped together, labor grouped together, clean and readable.\nNone of that comes from a prompt. That comes from experience.\nThe AI was the hammer. I knew what needed to be built.\nThe industry is having an identity crisis about AI right now and I understand why. AI is ingesting human knowledge at an unprecedented scale and automating things that used to require years of skill development. That's genuinely disruptive and the anxiety around it is legitimate.\nBut here's what I keep coming back to:\nThe calculator didn't replace mathematicians. It elevated what mathematicians could accomplish. The people who refused to adapt didn't win — they just fell behind.\nAI is the same inflection point.\nThe people who will thrive are not the ones who ignore it. They're not the ones who blindly depend on it either — pumping out slop and calling it productivity. They're the ones who understand it deeply enough to direct it, validate it, and know when it's wrong.\nThat requires real knowledge. Real experience. Real judgment.\nI want to be transparent about something.\nI run an automated \"This Day in Tech History\" blog on my personal website. The posts are AI generated. I use n8n workflows and locally hosted LLMs to draft them automatically.\nEvery single post sits in draft until I manually review and publish it.\nThe internet is already drowning in AI slop. I'm not interested in adding to it. The automation handles the drafting. The judgment is still mine.\nI apply the same standard to my projects. My DOSBox Launcher — a GTK3 desktop app for managing DOS games on Linux — has the AI authorship breakdown documented directly in the README:\nThat's the line I try to walk with all of this. AI as a tool. AI as an assistant. Not AI as a replacement for thinking.\nTo put that number in perspective — a freelance developer would charge anywhere from $3,000 to $10,000+ for an application like this. A SaaS alternative would run $50-100/month indefinitely.\nI spent fifty cents and an afternoon.\nThat's not a party trick. That's a fundamental shift in what a single person with domain knowledge and the right tools can accomplish.\nI'm a 45 year old self-taught infrastructure engineer, army veteran, and automotive technician from Texas. I don't have a degree. I don't have a fancy job title. I have 32 years of continuous self-directed learning, a homelab that saves me an estimated $26,000 a year in SaaS costs, and an invoicing application that cost me fifty cents and actually understands\nhow a mechanic's business works.\nAI didn't replace my knowledge. It gave my knowledge a power tool.\nThat's the correct way to use it.", "url": "https://wpnews.pro/news/i-didn-t-write-a-single-line-of-code-i-built-it-anyway", "canonical_source": "https://dev.to/mikecase/i-didnt-write-a-single-line-of-code-i-built-it-anyway-3ln", "published_at": "2026-05-24 06:20:42+00:00", "updated_at": "2026-05-24 06:32:15.379457+00:00", "lang": "en", "topics": ["developer-tools", "open-source", "artificial-intelligence"], "entities": ["Mitchell1", "Shop-Ware", "Tekmetric", "Visual Basic", "U.S. Army"], "alternates": {"html": "https://wpnews.pro/news/i-didn-t-write-a-single-line-of-code-i-built-it-anyway", "markdown": "https://wpnews.pro/news/i-didn-t-write-a-single-line-of-code-i-built-it-anyway.md", "text": "https://wpnews.pro/news/i-didn-t-write-a-single-line-of-code-i-built-it-anyway.txt", "jsonld": "https://wpnews.pro/news/i-didn-t-write-a-single-line-of-code-i-built-it-anyway.jsonld"}}