(Mis)adventures in AI CLIs: Part 2 Confidently Building the Wrong Thing

If Part 1’s theme was attempting to ‘vibe’ through golang text templates with codex then Part 2’s theme is attempting to ‘vibe’ through updates to a legacy javascript library with Gemini CLI. As planned this did not go as planned. I recommend skimming Part 1’s narrative, if not reading, as the following builds on it incrementally. Context, again First, a brief refresh on the origin of this work. I was dissatisfied with an existing hugo theme for my image gallery. I also wanted to present images using modern formats like avif which are unsupported by hugo’s builtin processing capabilities. This had impacts on how the templates for my new theme were structured. It also meant client side, in browser client, processing of image tags (e.g. exif or XMP data) for presentation. ...

October 3, 2025 · Michael Hughes

(Mis)adventures in AI CLIs: Part 1 (?)

Originally, I was going to write about using OpenAI Codex versus Google Gemini CLI to help me code my personal photos website. I could and may still do that, however, here we’ll tell a story about building a Hugo theme with codex, where things went right, and where they did not. We might also take digressions into commentary on the reality of software development and the 1986 Fred Brook’s essay ‘No Silver Bullet…’. ...

September 23, 2025 · Michael Hughes

Google Doc(uments) please support SVG.

We all call it docs or gdoc or Google Docs, but the URL path actually says documents. Regardless, I must be in the minority, but I plead for vector graphics support anyway to whatever team within Google Workspaces is responsible for apps. Raster images Raster images are the jpegs, gifs, pngs, webps, tiffs, avifs, and many other formats of the world. They are of fixed resolution. I, and many people within the software development community before and after me, have created diagrams made of boxes, text, and lines connecting those boxes. We’ve used Visio (does anyone still use Visio?), Lucidchart, diagrams.net, and many other tools to create these images. ...

September 18, 2025 · Michael Hughes

AI. Again. The boring manager's view.

This is a continuation from a post in April, 2023 on low-code and AI. ...

September 2, 2023 · Michael Hughes

Is low code all that? AI???

Should organizations that need to build software care about low code? Should they ever have cared about low code? Will low code be the future of how software is built? Will large language models trained to write code based on text prompts replace all developers? Are these same questions applicable to AI? Do I have answers to these questions? Nope, but I can still editorialize. ...

April 20, 2023 · Michael Hughes

How to log out and related topics

It is more than mid-way through 2021. I should not be writing an essay about the nuances of log out. Yet here I am writing one; it is still an area that can be confusing. Today we’ll explain some simple and some complex sign-on and sign-out integrations with examples. ...

August 9, 2021 · Michael Hughes

Relaxing on CouchDB

Apache CouchDB 2.0 was recently released and has some compelling features for those looking for clustered document oriented databases. In today’s post I want to share a few of things that I’ve learned on how to use CouchDB’s new features and how to avoid some new user mistakes that we made along the way. ...

December 15, 2016 · Michael Hughes

How I screwed up my website or how to not manage your content

I enjoy running my own blog at codinginthetrenches.com because I am a technologist that likes to write. Unfortunately, sometimes my interests as a technologist get the better of my interests as a writer. This last week my competitive interests resulted in my blog being visually broken for several days. Furthermore, the competition has resulted in a few select articles being mis-formatted and visually broken for much longer than a week. Today’s post is about what I’ll be doing to avoid these problems and how they can apply to your own writing platform. ...

September 24, 2016 · Michael Hughes

SRV records as service locators

Recently I began work on a project to manage the deployment of a product built using a microservices architecture. As a result of our chosen architecture we have a large number of services which will communicate to each other over HTTP/S. Instead of using fixed IPs we decided to used DNS SRV records to indicate where services could contact their dependencies. Today’s post goes into using SRV records in a little more detail and the problem they solve. ...

May 2, 2015 · MichaelHughes

From dynamic to static to dynamic or why my blog is back on WordPress

I recently migrated back to Wordpress as my blog platform of choice. The change has been painful, in fact, many of my older posts haven’t been migrated to WordPress. The change has been worth it though since it makes publishing easier. Today’s post is about the importance of focusing on the core workflows of an application and ensuring that they are as easy as possible to complete. ...

February 27, 2014 · MichaelHughes