I’m a Bit of a Rebel

I feel like some of what I do in life isn’t because it’s the “best”. I certainly love optimizing workflows, switching keyboard layouts because QWERTY is clearly not the best, learning and customizing window managers instead of using broad defaults from full desktop environments. But, I also do lots of things that are decidedly not in pursuit of efficiency or optimization:

  • Firefox is not faster than Chrome, and AFAICT it still isn’t really much better than Chromium privacy-wise
  • Linux causes me pain, MacOS supposedly “Just Works™”
  • NixOS causes me more pain, but I also love it
  • I daily drove a OnePlus 6 with PostMarketOS for a few months last year. So cool to carry a terminal with you. But Termux exists, and my wife could not reach me reliably.

I don’t value ease of use as much as other values like privacy, openness, and tinker-ability. As most things in life, it’s always a trade-off. I get teased by many of my coworkers and friends for being the “linux guy” or similar, for choosing to swim upstream despite the more “obvious” easy choice of using the proprietary, super affordable electric boat (with better battery life BTW). So how could I come around to these over-hyped, shark-backed, environment burning GPU crunchers??

Just One More AI Bro

I have seen it as a crutch. I see it as having very muddy licensing and potential legal issues in its future. I see it partly destroying the craft of software engineering. I think its very over hyped.

BUT

I think its time I give up fighting against the machine in this respect and see if using AI as a tool in my toolbelt helps me become a better engineer.

The Pivot Point

I read this blog post about building personal software with Claude and I realized that perhaps I could better my life and those around me by taking advantage of this tool. Was it just stubbornness and pride that was preventing me from benefitting? You may think its just FOMO, but I’ve held off for a long time from using AI.1 I think it is just a recognition of my hard-headed and misplaced judgement. So, today I am signing up for a Claude account. I’m going to build with AI (I’m not going to write these posts with it though). As this new perspective settled in my mind, I had a couple thoughts:

Using Non-Deterministic Tools

One of the hardest challenges I think adopting AI use is due to its imprecise and ever-changing nature. Imagine using a compiler that failed to compile some C code, then when you just UP arrow and rerun cmake it works. No change in its input. In the world of software where precision, intent, and design matter, this feels like an Uno Reverse. This is a tough tool to learn, depend, and rely on. A carpenter’s ruler that moves its inch notches depending on the time of day?? But, it’s not just a ruler. It is so good at predicting tokens that it has some semblance of intelligence. So much so that many people, even those that know intimately the internals of the technology, believe it is doing more than it is.

Is this like C?

When the assemblers of the world got tired of porting their code to each new architecture and came up with C, was there a similar ripple in the software slinging community? Writing at such a high level will result in too many “head in the clouds” engineers. And perhaps, these new high-level developers will never even learn assembly! They will lose touch with the very systems that execute their code!! Unimaginable at the time, but certainly a reality we live in now. I have a few relatives entering the field and learning to code, and I don’t imagine they will ever write assembly. I myself have written very little, and hardly think in assembly day-to-day.

Onwards into a Higher Future

Not sure if it’s a higher plane of Nirvana I am about to enter or if I’ll be getting too close to the sun melting my waxed wings and plummet to my death, but I figure its never a bad idea to keep my mind open and give it a year.


  1. Not entirely. My best guess is I’ve queried ChatGPT less than 50 times. I have used it over the last two years as a Google Search replacement occassionally. When AI was first released I tried it with some coding / reasoning tasks and formed most of my opinion from that experience. ↩︎