AI

I started writing this post in early 2024. I decided against publishing it then because, frankly, I didn’t have enough direct experience with Large Language Models. Anyhow, I am keeping my old draft intact and will comment below, as a growth exercise. The original title of this post was “Large Language Models and AI”.


One of the big benefits to come out of the trending topic of “AI” this past year has been the proliferation of free and open source solutions surrounding audio, image, and text processing. I will be the first to admit that this is an exciting time for computing. I remember early attempts at an “AI” 15 years ago and it was largely chat bots who parroted your question back in a new way or repeated comments from prior chat sessions with other users.

Today’s Large Language Models or LLMs are much more sophisticated, making it possible to have a full conversation with a chat bot and have it somewhat be coherent but it isn’t perfect. LLMs as their name suggests are simply a collection of patterns that were generated when the model was built.

All neural networks start with the model and a person that has to select the data that will be utilized to build the model. This can be anything from selections of images, text or really any data set that has a reproducible pattern. LLMs focus on language or text based data sets. For example, this blog’s content could be used to train a model amongst many other technical writings to develop a model capable of focusing on highly technical questions and answers.

If we wanted to create a language model that could tell us how to cook specific recipes we could train a model on “The Joy of Cooking” and other cookbooks and the model will spit out a recipe for Chocolate Chip Cookies after you ask the prompt for the recipe. Explicitly giving you answers based on questions you ask that align with the specialization of the model is a very compelling application. This capability has the potential to better handle what are currently rigid flows in systems processing questions, issues or problems.

A simple application that LLMs could handle right now would be order taking systems. Build a model based on a selection of menu items and simple language patterns related to the order taking process and you can easily build out far more accessible systems for processing orders at a fraction of the cost a human could do it. Likely if there is a script that is followed to handle some issue, LLMs as they are today are the solutions.

LLMs at their core are just one type of model. All models in this same way can and likely will be engineered with the bias of the creator built in. The act of data selection itself is where bias is introduced into the system.


Reflections from 2025

It’s quite interesting to read something from your old self. I guess my thinking at the time was more centered on bias. I had run across many people who just had trouble with an AI concept when fixed computer programs were what they had experience all their lives. Computer programs are deterministic and society is largely used to recognizing a direct 1-for-1 relationship between the input and the output.

I am hearing more and more disturbing stories swirling around “AI” today, but a lot of it centers around very old human stories. They can be broadly categorized into two main buckets: Threats to humans and Helpful to humans. In order for me to break down my understanding of each of these categories I tend to focus really closely to each then weigh the trade-offs.

Threat

I’ve heard many different threat tales. CEOs discussing job replacement and layoffs pointing to AI as the reason. Using LLMs as a replacement to thinking, wherein a user surrenders decision making and judgement to ChatGPT. Dead Internet theory where the entire landscape of the web is awash in “AI slop”. AI-driven misinformation campaigns driven by deepfakes of major events, important people, and people close to them. I’ve also heard fantastical accounts of how AI can infest a system and take over important defense capabilities Terminator style.

Helpful

Personal tutors and helpful drivers to expand creativity. Workflow accelerators helping to improve work efficiency and quality. Tackling the work that no one wants to do, the chores, tackling the tedious parts of work. Accessibility wins for data we haven’t seen in many years. It’s now possible to have a small model handle the complete understanding of a concept that you could carry with you. A sounding board for ideas, solutions, and concepts (with a heavy asterisk). Finally, similar to tackling chores but worth calling out, you can finally use LLMs to tackle that project or workflow kink that hasn’t been worth it until now when an LLM can spit out a quick solution in 5 seconds.

The In Between

My take is that we are somewhere in between these two extremes. LLMs aren’t a magic pill to solve all things nor are they spelling the end for human productivity. As with all innovations, humans will find a way to continue driving while AI takes on heavier burdens.

I’ve created some miraculous things with LLMs and I think that is only going to get easier but autonomy in the LLM space is still very far off. Software is moving from code writing to spec writing. Iterations haven’t changed much though, I still have to judge the quality of the work. Does it solve the issues it was intended to solve? I am still a quality gate for a lot of the work that is being covered by LLMs, invested more in business objectives than technical ones. The biggest winners from these latest sets of tools are technically proficient but software-adjacent individuals who know the business needs deeply but don’t necessarily have coding experience to translate those needs into a product.

R&D need no longer involve bringing in a team of devs to accomplish some PoC objective. An invested user can “Vibe Code” something and give that product to others for evaluation, involving engineers much later in the process. Does this mean less demand for software engineers? Perhaps, but only to a certain point. Does this mean junior roles are no longer needed and impossible to fill? I don’t think so, but I think what we define a “junior’s” role as being is going to change. What is a software engineer in this new LLM coding assist world? My take is direction/vision is still very much in human control. Humans need to evaluate products for humans. Architectural decisions are going to happen much earlier in an engineer’s career.

Reading my 2024 draft, I was surprised how much still holds up, and how much has already changed. That’s probably the only prediction worth making: this stuff is going to keep moving fast, and some of what I’ve written here will look naive soon. But I don’t think that undermines the in-between take. If anything, it reinforces it. The faster things move, the more you need someone asking whether the new shiny thing actually solves a real problem or just makes for a better demo.