It’s 2024 so there’s got to be a post about AI.
My only perspective about AI is from a consumer’s standpoint. I don’t understand AI much aside from a few basic concepts I learned in a machine learning college course I took in 2019.
Mundane Tasks
I use both GitHub Copilot and ChatGPT to help me accomplish a some boring mundane tasks. These AI tools are Good Enough for something like reformatting/transforming a CSV to another data format, remembering command line switches, regular expressions, or date string formatting.
For small software development tasks, I use Copilot within VSCode with a moderate amount of success.
Rating: 4/5 stars (for both ChatGPT and Copilot).
New Technical Concepts
I use AIs to get started with new technologies that I’ve never encountered before. One example of this was with Python’s rasterio library. I’m not a remote sensing expert, but at work I occasionally need to experiment in this space. Using AI tools, I was able to familiarize myself with rasterio and complete a quick proof of concept performing HTTP RANGE reads and clipping Cloud Optimized GeoTIFFs to a GeoJSON boundary and returning clipped GeoTIFF via a web service.
Rating: 4/5 stars.
Raw Data into Insights
In my own time, I’m hacking on a project called Cloud Insight Index. Using OpenAI APIs, I supplied the APIs with unstructured text from cloud provider event reports and I’m able to get back event start/end times. Then, I insert them into a database. Now, I’m able to answer questions like “What was the longest event that happened in 2023 for each cloud provider?”
Without AI, this type of work would be pretty brittle: you’d have to utilize something like Fuzzy String matching to do it en masse.
I was initially hesitant to use the APIs because I didn’t understand their cost structure. I fed the OpenAI tokenizer a few event reports, and quickly realized the cost wasn’t going to be significant. So far I’ve spent $0.04 of the $10 that I have on my account.
Rating: 5/5 stars.
Overall
For Software Engineering, AIs in early 2024 are basically on-demand interns with regrettable social views and out of date information. You’ve got to check their work, you definitely do not want them making decisions of any consequence, but I feel much more productive in a few specific scenarios.
PS: This blog post was 100% written by a human.