I last published on this blog 20 years ago. The final post was in February 2006: a “reblog” of a link from Tim Bray to an incredible juggling performance (now available on YouTube).

At the time, I was a sophomore at Carnegie Mellon. When I moved into my dorm, I brought with me a Shuttle “mini PC” (probably the size of 10 Mac minis), which was plugged into the ethernet jack in my room. CMU allowed students to register static IPs, and you were permitted to use them to host websites, provided they were on .org TLDs (an odd rule). I quickly registered btucker.org, and this blog lived there until I moved out and took the server with me.

Twenty years is a long time. I graduated, sold a company, built another, got married, moved to Boston, then San Francisco, and finally Chicago. I spent the first decade primarily as a Ruby on Rails consultant, then the second as an engineering leader at Chegg.

And now I’m starting a new chapter of exploration in the incredible, paradigm-shifting, delirium-inducing world where code can be written through conversation and systems can spring to life in the time it used to take to call a meeting.

Matthew Ramirez first explained language models to me in 2018 and, I’ll be honest, I didn’t get it. They seemed like a clever way to make better predictive text systems, but that was about it. I even remember playing with the GPT-3 API in 2020, and it still didn’t click. It wasn’t until the InstructGPT paper that it hit me what this was. You can just tell a computer to do something… in English… and it will… do it!? It still seemed like a far-off fantasy, but wow! So this is what they meant by “AI.”

Fast forward to the ChatGPT era and we can all see that the “far-off fantasy” wasn’t so far off.

I plan to use this blog to write about what I’m exploring, learning, and thinking about. It’s been a blast to become active on GitHub again, and I have a few projects I can’t wait to talk about.