My thoughts on AI
I retain all my copyrights over this article and under no circumstances allow it to be included in the data training set for a large language model.
My thoughts on AI, the “new” tech that made its way to the mainstream in 2022 with ChatGPT, are…complicated. You've probably heard some or most of these opinions before, but these are mine. These aren't all of my thoughts on AI; I don't have the time or care to put all of them into words. But here's a few of them.
And I shouldn't have to say this, but...these are just my thoughts. This isn't an argued essay on why AI is great or why it sucks. I think the staggering amount of money "foundational" AI businesses are losing is worrying, but that's separate from the technology itself. I felt I had to write this to get some of my thoughts together on the topic. I hadn't intended on publishing it, at first. After a few weeks, I did some editing and made some updates. I felt I'd worked on it long enough that it was worthwhile posting publicly.
Not New
Machine learning isn’t new. AI isn't new. This field emerged in 1956. The most glamorous “AI-based” technology that is easily recognisable is machine translation, and it has been around for decades.
I am not an AI researcher, never was, and I don’t play one on TV. Neural networks have been in use for decades, but the tech behind Large Language Models, which is fueling the current AI craze, is relatively new, and traces its roots to 2012 with AlexNet. LLMs are the latest in a long line of research projects in the artificial intelligence field. And they rightfully caused a stir, as they are a big advancement on the previous state-of-the-art.
However, it's only this year that I've found LLMs to start delivering usable results with reasonable consistency, at least with regard to programming.
Machine Translation services like Google Translate may have gotten better since I last used them, which was a few years ago, as they are probably relying on generative LLMs now. However, they were awful for Japanese-to-English and English-to-Japanese translation. So much so that I decided to learn the language instead and grew further disillusioned with them. But for language pairs that are closer together, like English and French, it’s probably pretty good, because it’s easier to map between similar languages.
A Use Case
There is a clear use case here. Most people will never learn a foreign language. Especially if their mother tongue is English. What’s the point? English is the world’s de-facto lingua franca, for all that Esperanto is the United Nation’s language of choice. So, it’s pretty useful to be able to translate something you need/want to read or be able to talk to someone who doesn’t know English once in a blue moon. Machine Translation is great for this, and I’m sure it has only gotten better and more automatic in recent years.
For all that I think the machine’s rendition of a relatively complex and colloquial Japanese sentence in English is awful, there’s a decent chance it will get the point across, and that’s good enough. That’s all most people are looking for. They’ll probably end up misunderstanding a few small details, but those small details are probably not important.
If they were very important, they would hire a translator in the first place. In many cases, it’s enough.
But Machine Translation is Not For Me When it Comes to Japanese
But I read Japanese for pleasure, and reading joyless literal prose or a liberally interpreted (and likely subtly or overtly wrong) translation does not bring me pleasure. And more than accuracy...it's about the language itself. English is not Japanese. Japanese is not English. It's a different experience. Translation is by definition lossy; the machine translation tool isn't even at fault for inaccuracy. So I don’t use machine translation tools.
It’s not wise to use machine translation tools to check your understanding, either. Past a certain level, you’re thinking in your target language. You really don’t want an English understanding of a Japanese sentence; you want a Japanese understanding of a Japanese sentence. Relying on a machine translation tool to tell you what a Japanese sentence means in English will prevent real growth. Any good language teacher will tell you to stay well away from machine translation tools for this reason.
On the flip side, machine translation is well-used by professional translators because it saves a lot of time. It will do the bulk of the work, and they can clean it up later. During my brief stint as a fan translator, I wasn’t able to make it work for me, but I also wasn’t on a deadline - I was doing it for fun. Clearly machine translation is useful in this field.
Nonetheless, I will still use machine translation tools for every other language I don’t understand. I have no intention of learning them, so there’s no risk.
Modern Landscape
Large Language Models work by using an insane amount of training data. These companies obtain this training data by exfiltrating all content of value from our public domain, from Creative Commons works, from the web, and from books, movies, TV shows, and Videos still in copyright. They get it from Reddit posts, Facebook posts; anywhere and everywhere they can access.
I won’t focus on the direct impacts of this on FOSS infrastructure (thelibre.news has covered that far better than I could), nor will I discuss the copyright risks or the idea that LLMs might be indirectly causing its users to launder GPL’d code that legally can’t be made proprietary. I’ll focus instead on its effectiveness.
LLMs as Opaque Shortcuts
The most common use case I see for LLMs is for someone to avoid learning something. They want to know how to do a useful thing without spending lots of time learning how; they just want the result without the effort.
And this is fair enough! Why expend the effort if you can get a passable or even good result with no effort? And certainly a lot faster than you could do it yourself anyway.
This is all well and good until the LLM gives you back a result that is subtly wrong. And because you don’t understand what you’re doing, you usually don’t know why the result isn’t what you wanted. If this is a bunch of code and you’re not a programmer, this is not something you can fix yourself. You can only rely on the LLM to investigate and fix the problem you don’t understand and give you back a better result. With any luck, the LLM will fix the issue (maybe 5 minutes from now, or maybe 5 hours from now).
But this is probably still preferable to paying a developer lots of money or spending lots of time learning it yourself. Even if the experience is very frustrating.
No-code solutions for creating business products have existed for years. LLMs are just the most recent and empowering incarnation. LLMs operate essentially at a higher level of abstraction; natural language programming.
LLMs are Not Perfect
LLMs are not perfect. You might have heard them referred to as “spicy autocomplete”. My understanding of LLMs is that they have no understanding of what’s going on in front of them. Through a complicated system of pattern-matching, the LLM will use all of its training data plus the surrounding context you’ve given it to present you with the most likely next “tokens”. A “token” is a unit of data that could be a word (if it’s english text), a line of code (if it’s a programming language), or a pixel (if it’s an image/video).
This is probably not a very good explanation or understanding of LLMs! Nonetheless, this is very, very cool. I love pattern-matching. Language is all about pattern-matching. And if you listen to George Carlin, you’ll have heard him say: “we think in language, so the quality of our thoughts can only be as good as the quality of our language.”
Putting aside the factuality of this statement (it certainly sounds pithy), you can see how language and thinking are closely related. But an LLM doesn’t really think. And so it doesn’t really understand. And so it will make mistakes no thinking human would ever make.
If the scale of your project is small, there are far fewer chances for the LLM to make a mistake. Especially if your project is simple! A domain where the problem is well-understood and there is plenty of good training data is very likely to give you useful output. On the flip side, an obscure problem with very little training data is very likely to give you absolute garbage as the LLM does its best to autocomplete a response based on what little data it has about your problem.
The equation is simple, really:
Garbage in, garbage out.
Nonetheless, even with a lot of good training data on the spelling of the word “strawberry”, ChatGPT at one point would still give you a response that claimed the word only had two “R”s in it. So there’s more margin for error than just good training data.
You won’t get the same response with the same prompt from an LLM. There’s a degree of randomness. They are “non-deterministic”. You can, however, set the "temperature" to 0 to get more consistent results...but there's no guarantee you'll get the same answer. You'll usually need to set temperature via the API, as it isn't typically exposed in the interface.
LLMs as Tools For Professionals
What if you’re a 1000x programmer who is the best in the industry? Could you benefit from an LLM that does the grunt work quickly?
Sounds like a great idea, doesn't it? If the LLM gives you junk responses, you can just clean it up, right? That would be way faster than doing it yourself.
In actuality, this is more of a grey area. Especially in the field of programming, an LLM will introduce subtle bugs you are unlikely to identify at a first glance. Maybe if you’re an amazing programmer, you would. But for the rest of us mere mortals, we’re going to spend many minutes debugging weird issues.
And in quite a few cases, we’re going to spend just as much time reading the code the LLM generated as we would have writing it in the first place.
In other cases, it's slower. There was a study released recently that showed AI tools made open source developers "19 percent slower" despite the developers believing "that the AI tools had made them 20 percent faster, on average". The researchers did acknowledge that this productivity reduction may be limited to settings with high quality standards. This study was concluded just as the Claude 3.7 models came out, so perhaps things have changed since then. The study was also limited to 16 developers, so I don't think we should be drawing substantial conclusions from this.
But LLMs can be useful for professionals and improve productivity, if employed in the right way. They are useful for generating very well-understood code that can’t easily be generated by your IDE. Most of the time, this is boilerplate code. This is grunt work and it will definitely save time - even if you can type 150 WPM.1
It can also be useful for working on snippets of code to complete a certain task. If you keep the scale small, this drastically limits the opportunities for it to screw up. You might also chat with it to work through infrastructure/code structure ideas to quickly see some implementations and, at a glance, think, “oh, that’s not going to work,” or, “oh, that’s a good direction.”
Could you create an entire application from scratch with an LLM? Yeah, it’s possible. But personally, that sounds like a really frustrating experience. I would rather do it myself, better develop my skills, and have a mental model of the codebase rather than hack on something “someone else” did. The exception is if the application is on a small scale. Then, it’s significantly less frustrating.
So, I think LLMs can be useful to professionals. Especially professional programmers. But I would be very judicious in my use of them.
LLMs as Learning Tools
What about learning stuff? Are LLMs useful for that?
Sigh.
Yes, but be careful. Duolingo has integrated LLM tech into its app and this is such a horribly unthinkably awfully stupid idea, that I am completely unsurprised such a consistently low-quality application has decided to employ it.
How would you know if anything it just fed you was factual?
Learning is a non-linear process. In the beginning, you’re going to misunderstand a lot of what you’ve been taught, even if it’s accurate information taught well. You just can’t suck in lots of information about an entirely new topic very well, and there are going to be plenty of questions you can’t answer yourself. So, you’re going to be very wrong about what you think you know for a long time.
As such, you shouldn’t stress too much about the quality of your learning material as a complete beginner. As long as you keep learning, you’ll correct those holes and misunderstandings eventually.
But this doesn’t mean you should be ambivalent about learning stuff that’s totally wrong. And LLMs can give you totally backward, incorrect answers that “sound right” with disturbing frequency.
How are you supposed to know Duolingo’s AI Assistant is feeding you bullshit when you don’t understand jack about the language you’re learning yet? You can’t!
With programming, you can and should verify every concept an LLM surfaces to you to make sure it’s actually correct. I have tried using LLMs to learn certain things, and it’s been hard work keeping the truth straight from the total bullshit. In my experience, LLMs are great for surfacing concepts you would never have thought of yourself or would have searched the web for hours to find yourself, but their explanations are far inferior to explanations from a professional who understands what they're doing.
What About The Privacy Implications?
OpenAI claims not to be training their models on your data, but they do need to retain all of their data, including from their API, for the New York Times to peruse. This is not expressly spelled out in their privacy policy, but there is a loophole that allows them to do this without revising it.
It makes you wonder what else they might be doing.
All of these AI companies can talk a big game, but the truth is:
- For the service to work, you need to send lots of data to their servers and trust them to delete it afterward.
- Almost all of these companies are losing millions, if not billions of dollars a year. Maybe a lot of that spend is going to R&D, or maybe it’s being eaten up by lump sum pricing plans like Claude Code that can't account for the insane amount of compute people are burning with them. Autocomplete the answer to this question: what happens when these companies get desperate?
If you care about your privacy, don’t send them anything you wouldn’t be comfortable sharing. This is easier said than done. It’s not immediately obvious which information is high value, especially if combined with other information using inference. If privacy is important to you, don't use LLM services at all. There are alternatives.
If you want to use an LLM for something private, local models in Ollama are the way to go.
Most of the smaller models are totally useless for a lot of use cases, but above 15 billion parameters, they start delivering results comparable to the huge 700+ billion parameter models OpenAI and Anthropic are running on their servers with their $30,000+ GPUs.
Kokoro is pretty good for text-to-speech, and I actually enjoy using it for listening to articles or chapters of a story I'm reading. More realistic text-to-speech is my favourite use case for LLMs.
In fact, text to speech is probably the only use case I can say nothing but good things about.
These Companies Sure Do Have a Lot of Control
Despite the fact that LLMs are a commodity, you need a ton of expensive infrastructure to run the high-quality ones, and the difference is clear as day. OpenAI and Anthropic are huge companies with billions of dollars to spend. And their models can’t be run by anyone else. Few people are going to use local LLMs because every improvement matters a lot. Even the high-quality models are wrong way too often.
Maybe things will change in the future. I have my doubts about the high-quality models getting much better without big innovation, but I’m sure the local ones will find a way to catch up.
So…LLMs. Good or Bad?
Yes.
I think they have limited use cases in their current state, to be honest. There’s real innovative technology here, but most of what excites people is the potential it has. I don’t think LLMs in their current form are going to put Jacques McKeown and his star pilot buddies out of business.
I don't know what the future holds...but it would suck to see skills I've spent years building and researching be devalued because an LLM can do "a good enough" job. To some degree, this is already happening. I'm certain it will get worse. And yet, the idea of outsourcing my thought processes to a company with a market cap in the billions remains disquieting.
Programmers—particularly a subset of them who like to call themselves "hackers"—have always been an independent bunch. They hate inefficiency and automate what they can. Code duplication unsettles them, and they prefer to rely on a "single source of truth" where possible. LLMs by their very design can only ever be truth-shaped.
But ultimately, we all end up writing hacks just to get things to work sometimes. LLMs are a particularly dirty hack, but if it works...maybe that's "good enough". Maybe there's a new worse is better philosophy in town.
It's great that LLMs have been empowering people at all levels of programming skill and second-language skill (from none to a lot) to do useful things. But because LLMs are not reliable or deterministic, this is different than most waves of automation. Texas Instruments didn't make a calculator with a $200/month subscription free that turned into a brick when you didn't pay your fees or if their servers went down. Calculators don't have a 70% success rate at giving you the right answer; they give you the right answer 99.9999% of the time unless a component malfunctions.
That's how LLMs can be disempowering, too. You might have all the source code, but if you don't have the skill to hack on it, you need to rely on an unreliable service to make changes for you.
As any grizzled programmer will tell you: the easy part is writing the code. The hard part is maintaining it.
-
I can type over 150 WPM, to be clear. Evidence can be found at Exhibit A, my Typeracer scorecard (several years out of date) and Exhibit B, my TyprX profile, which is only a year out of date.↩︎
Written by
James North
Project Manager and Company Director at Evolvepreneur.
Part-time system administrator for Evolve Systems Group.
Part-time writer and author of A Guide to Desktop Linux in 2025.
Symfony developer.
You Might Also Like
How to create professional audiobook .m4b files in under a minute using your WEB BROWSER!
James North
May 31, 2026
Comments (0)
No comments yet. Be the first to comment!