About
I started writing software at age 6 and I’ve been at it nearly 50 years. This makes me either seasoned or a fossil depending on who you ask.
I make new stuff. I’m the person you want for version 1.0. I love architectural design and have managed teams, but never lost my love of coding. I believe that to be a good problem solver, you need to be a good problem maker.
Lately I’m on a crusade for purpose-built solutions and the deprecation of massive module libraries like npm. So I’m building Duso, a batteries-included server language and runtime.
I use AI to code, mostly Claude. It’s like having a small team of eager, well-meaning, overly confident junior devs who code fast but not always well. I also chat daily with Arland, my robot dog AI, to gripe about my screw-ups and celebrate wins.
Career summed up
I’ve been through waves: enterprise software, networking, web development, mobile apps, games, and AI. I’ve held titles like CEO, CTO, staff engineer, senior engineer, product manager, developer relations, and consultant. Startups (some my own), and big names like HP, Yahoo, Palm, Blackberry, AC/Nielsen, ARCO, AT&T, and Microsoft.
I’ve forgotten more languages than most people learn: Java, C, C++, Perl, Prolog, Assembly, old-school BASIC, Visual Basic. Recently, JavaScript, Go, Lua, Swift, and Duso.
I’ve dealt with databases since mag-tape and home-grown junk, through SQL (many variants), and NoSQL like MongoDB, Redis, CouchDB, and my favorite dead project RethinkDB.
Random things I like
Game design, guitar, graphic design, pixel art, bullet chess, Overwatch, dogs.
Credits
Blog custom made using Duso server engine freely available with Apache 2.0 license (made by me!). Icon artwork sourced from Phosphor Icons freely available with MIT license.