I had abstained from using AI assistance since the initial ChatGPT announcement. I understood, at a high level, how large language models (LLM’s) worked. I assumed that they would not be that useful to me. However, at this point it is almost impossible to avoid it. Random Google searches will occasionally include Gemini content. Gemini content in a web search was actually my first use of LLM generated code. I was trying to do something relatively simple in Bash. I knew exactly what I wanted to do, but was unable to recall the Bash syntax to achieve my goal. I do not typically write scripts in Bash and it is always a series of web searches to get the syntax correct. I was honestly using Google to eventually find StackOverflow posts when Gemini suggested a generated script that would, allegedly, do what I wanted. I paused and read through the snippet. It seemed reasonable. I did a few more searches to verify what each line of the script would do. Everything checked out. My needs were fairly low risk, so I opted to use the suggestion. I left comments in the script to ensure I would remember where it came from, just in case I ran into issues later.
A few weeks later, I was in the process of migrating my blog to Micro.blog hosting. I could have just manually edited each markdown file to cleanup my custom front matter for Micro.blog’s import feature. However, where is the fun in that? I started putting together a script to cleanup my front matter. After a bit of researching, I realized I needed a few sed
commands. Unfortunately, I find sed
to be difficult to use. I struggle with the syntax and I always have to make a few searches to piece together what I need. This seemed like a good candidate for LLM assistance. I used Gemini and its suggestion resulted in an error. I then tried ChatGPT. The response seemed so confident, even broke down what each part would do. This also resulted in an error. I tried to follow-up with ChatGPT and indicate the first suggestion resulted in an error (with the error message). It apologized (ridiculous) and suggested a slightly different approach, which also resulted in an error.
Unfortunately for me, my blog migration script required quite a few sed
commands. I did not get one working sed
command out of an LLM. I had to experiment and tinker with each one until I got the desired outcome. This wasn’t a dealbreaker and honestly wasn’t unexpected. Whenever you’re dealing with a series of slashes, it’s understandable that an LLM would not spit out a working implementation. However, the suggestions at least put me in the same zip code as a solution, which I did find helpful. My experience was largely what I expected: somewhat helpful, but not a silver bullet. At this time, I think I will include these tools as a tool in my toolbox, but I will continue to give its suggestions a critical look.
Also: I really detest the nomenclature of these tools as “AI”.