Back

My stance on AI (and other things)

Sometimes* it’s fine

Recently I’ve been seeing more and more people just spit “AI slop” this and “Claude” that. This whole AI topic is very divisive, you’re either a “vibecoder” or you despise AI entirely. Obviously it’s more nuanced than that, but this is what you most often see online.

In my opinion, whether you are “allowed” to “hate” on “projects” that “someone” has “made” depends on a “multitude of things”.

“allowed” - whether you should, given all aspects of that project, your background, their background, how egregious is the use of AI, what/how AI is/was used for, is AI use disclosed, and if so, how, and so on…

“hate” - in an ideal world I would prefer to use the word “criticize”, however we don’t live in that world. What I see online is a lot of people actively hating on even the slightest whiff of basic matrix multiplication and the like, sometimes without following up on their statements. I do sometimes understand these “haters” if what they’re hating on is actual “slop”.

“projects” - pretty self explanatory, just wanted to highlight it for fun.

“someone” - same as “projects”.

“made” - my thoughts on the phrase “I made this” in regards to AI.

“multitude of things” - as mentioned in the “allowed” point above.

I believe using generative AI for generating images, videos, songs is not nearly as acceptable as generating text based media, especially if you aim to profit from it, or gain fame. A “fine”-ish example of this use case is those brainrot TikTok videos or songs, though that’s a whole other can of worms that I won’t get into. What I don’t consider acceptable is generating videos/audio for fully AI YouTube channels, ads, movies, artwork/”photographs”, music for financial gains.

Using generative AI for generating text is more acceptable, though, it still depends on what it is. If you code with AI, it’s sort of fine, depending on how you do it. However, letting AI generate entire books, articles, scripts for YouTube videos, etc., is just lazy and sad. I will not go too deep into the moral aspects of how AI’s are trained, and where they get all their data from. I am not a fan of it and the vast majority of it should not be how it is.

AI-assisted development

I have used various kinds of AI in the development of my projects as a development aid. None of my projects were created by just asking AI to build them and accepting the resulting code.

I have not disclosed the use of AI in a lot of my older projects, but I will try to do so in the future as AI has become more capable, and in general, more widely used to create “slop”.

I tend to use AI more like a “junior developer” or “fancy autocomplete”, I give explicit instructions about what I want to create, how it should be implemented, which libraries, technologies, and approaches to use, and how the resulting code should fit into the existing project. I thoroughly check the generated code, test it, and refine it to what I want it to be. Using AI this way helps me be more productive and get things done much quicker. I can write the code myself, I studied programming, I’ve learned a lot and have done a lot myself, as well as am quite passionate about a lot of it.

Not to go too far off the topic, I’ve realized that my thought process is often limiting my productivity which AI helps me overcome. I tend to spend a lot of time thinking about how to implement something, how to structure the project, the files, what’s the best approach, and so on, and never actually settle on one solution.

Parts of “my” AI-generated code are also manually rewritten, refactored, or replaced when they do not match my intentions, coding style, architecture, or requirements. The final implementation is therefore the result of “human directed development with AI assistance” (yes, I used AI for those 6 words because I don’t know how else to word it), rather than an unreviewed AI-generated project.

We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil. Yet we should not pass up our opportunities in that critical 3%.

, Donald Knuth

This is one of the things I really struggle with, and AI “forces” me to settle on a solution, and If I don’t like it, I can always change it to what I think would be better. I can also ask about all possible solutions, they pros and cons, and make a decision based on that.

Slop

I consider “slop” to be low-effort, mass-produced AI output that someone published without really looking at it, often by the so called “vibe coders”. The typical example is a project or site that was generated in one go and barely reviewed, tested, or understood by the person who “made” it. I hope that’s the opposite of how I work. I hope that my projects are a good example of how AI can be used to assist development, rather than replace it. I hope that I’m not going to be lumped in with the “vibe coders” who just post whatever AI spits out, though, I understand if some people do. That’s just the risk you have to take. Most people just don’t care enough about the details and will not put in the effort to understand how a project was made, whether it was made well or not.

Lately I’ve noticed this most with a lot of websites and projects people advertise on various platforms, such as Reddit. Largely as a personal preference, I really dislike the look of typical AI-generated sites, even when they’ve been manually improved afterwards. The same problems show up again and again:

I’d much rather have something simple and minimalistic, but legible. That’s also why this site looks the way it does. Here is a good, although slightly extreme example of what I mean. It’s perfectly legible and straight to the point.

I think the strong reaction people have to AI-looking sites (me included) comes from having seen countless examples where no effort went into them. After enough of those, the look itself has become shorthand for “slop”, whether or not the particular site deserves it.

But the look isn’t the problem, the lack of effort is. You can make a unique, good-looking site with AI. You just have to put in the work most people don’t.

I admit, I am guilty of this myself, I have created a few sites that I would consider “slop”, and I have no problem admitting that. The simple fact is that I absolutely despise modern web development. A smaller reason is that a lot of my projects are not meant to be seen by anyone but me, are just small tools, or are just meant as a fun little thing for a few people to use. The bigger issue is when I see people advertising their AI-generated sites, with the intent of making money off of them.

“I made this”

A phrase that bothers me, especially in the context of AI, is “I made this”. I admit, I am partially part of the problem from time to time, though I hope not to the extent that many others are. I often see it said by someone who wrote a prompt and got a finished result back, and I don’t think that counts as making it.

Imagine you go to a restaurant and ask the waiter for a burger, but with extra cheese instead of pickles. The waiter brings it out, and you proudly announce that you made the burger. It sounds absurd, because you only chose what you wanted. The farmers who grew the ingredients, the people who processed and delivered them, the cook who prepared the burger, and the waiter who served it all did the actual work. Customizing an order doesn’t make you the cook. Writing a prompt doesn’t make the project inherently yours.

AI works the same way, except the people behind it are mostly invisible. Models are trained on enormous amounts of text, images, code, and music made by real people. A lot of that data was collected without asking them, and often by dubious means, with scraping at a scale that most of those creators never agreed to and definitely weren’t paid for. When you type a prompt and get a result, you’re getting the output of all that work, but none of those people are credited, and most of them don’t even know they contributed.

This idea is a bit more nuanced, though. For example, when somebody hits someone else with their car on purpose, do you blame the car or the driver? If someone shoots someone on purpose, do you blame the gun or the person? The same can also apply to AI-generated content. If someone used AI, you can’t say “AI made it, you didn’t”. There’s no black and white answer. AI won’t randomly decide to go fix an issue on a random git repo, or want to decompile an old game to fix issues. A person has to have the intent of using AI to do something, it just depends on how much of the work they actually did. The examples I took from this Reddit thread. It’s interesting to read through the comments as well.

Visual and audio media are where I draw a harder line. With text or code, you can read every line, change it, restructure it, and rewrite the parts that don’t work, so the result can be reshaped by you. With a generated image, video, or song, you usually can’t. You write a description, the model produces something, and if you don’t like it you generate it again. Picking your favorite out of a hundred attempts is closer to curating than creating. I think that makes calling it “mine” much harder to justify.

I’m not saying AI media can never be used, for example as a placeholder or for a joke, but presenting it as your own artwork or music, especially when you’re selling it or entering it in a contest, is something I find unjustifiable.

I’m not saying you can’t use AI, since I do myself. I’m saying that the amount of credit you can take depends on how much you actually did. If you wrote the design, made the decisions, reviewed and fixed the output, and rewrote what didn’t fit, then you have a real claim to the result, and that’s the difference between the approach I described above and just accepting whatever comes out. If all you did was ask for it, then you ordered a burger.

That’s why I’m careful with the word “my” when I talk about AI-assisted code, and why I will try to, going forward, be open about where AI was involved. The final result can be partly mine, but it’s never entirely mine.

Why I don’t pay for AI

I have never paid for an AI subscription, and I most likely never will. One reason is simple: I can get everything I need for free. You can do surprisingly much with what’s offered at no cost if you use it smartly, and for my own tools, I run models locally. The LLM feature in my Twitch bot, for example, runs on a local model, so I fully control what it does, and don’t have to worry about where my data goes.

The other reason is more personal, and it’s a bit of a rant. At the start of 2025, I upgraded my PC. I bought only 16 GB of DDR5 RAM for around 60 euros, thinking I’d just buy more later. Then the “rampocalypse” happened, with AI companies’ demand for memory pushing prices through the roof, and the same kind of RAM now costs around 400 euros. The AI bubble has made it much harder for regular people to afford computer components at reasonable prices, and I don’t want to give money to the companies that have indirectly caused that.

To be fair, AI isn’t all bad. It has done real good for humanity, in research, medicine, and science, where it helps analyze data and find things that humans would take far longer to find. I’m not against the technology itself. I’m against the hype, the low-effort use of it, and the way the industry has affected regular people in a negative way.

Outsourcing thinking

What bothers me almost as much as the slop is how some people use AI day to day. I see people asking a chatbot what they should have for dinner, whether they should text someone back, whether they should take a job, or what they should think about something. Using AI as a tool is one thing, but turning it into your brain is another.

Part of this is just convenience, and I get the appeal, since making decisions is tiring. But deciding things, even small things, is a skill, and skills fade when you stop using them. There are people, hopefully not many, losing the habit of thinking for themselves, and of trusting a chatbot’s answer more than their own judgment, or even trained professionals.

The bigger problem is the belief that AI is always right. These models can and are confidently wrong more often that most realize, they make up facts, sources, and quotes, and agree with whatever you say. They are built to sound sure of themselves, which isn’t the same as being correct. If you can’t check the answer, you can’t tell the difference.

Super Intelligence

lol

Modern web development

Modern web development is a mess. I don’t mean the internet itself, which is wonderful, but the ecosystem that has grown on top of it. Building a simple page now often starts with picking from a pile of frameworks, whether it be React, Vue, or Angular, along with build tools, bundlers, package managers, and “meta-frameworks” built on top of the frameworks, most of which will be replaced by something newer in a couple of years. Here’s another relevant example of what I mean.

Too many frameworks

There are hundreds of JavaScript frameworks and libraries, and every few months a new one is announced as the thing that finally fixes the problems of the last one, but each with its own issues and learning curve. Learning one doesn’t guarantee that your knowledge carries over to the next. A lot of the time they solve problems that mostly exist because of the other tools in the stack. For a site that is just text and a few images, you don’t need any of them. Plain HTML and CSS have worked for decades and will, and ideally should keep working.

Too many languages at once

A single project can easily involve HTML, CSS, JavaScript, TypeScript, JSX, a CSS preprocessor, a templating language, a config format for each tool, and then whatever language the backend is written in. Each one has its own syntax, tooling, and quirks, and they all have to be made to work together through a build step that nobody fully understands.

JavaScript

JavaScript, my beloved (not). It was famously created in a very short amount of time, and it shows. TypeScript helps a lot, but it’s another layer on top that has to be compiled away into… JavaScript, and it can’t change what JavaScript does at runtime.

Dependencies

A new project can pull in hundreds or thousands of packages through node_modules, most of which you never chose directly yourself. Tiny packages that do one trivial thing are common, and when one of them disappears or gets compromised, a large part of the ecosystem can break. A brand new React project is often hundreds of megabytes large. That’s just insane. This entire project, including the page you are reading right now, is ~116 KB, including the git history, and dev dependencies which are not necessary for the site to run.

Electron (and similar)

Electron and similar frameworks let you build desktop apps, like Discord, Visual Studio Code, Spotify, etc, using web technologies, which is great for developers - just write the code once and deploy it everywhere, on the web, and on the desktop, but this approach is often not so great for end-users. Each app ships with its own copy of a browser, so even a simple app can be huge and use a lot of memory, while the performance is far from what I would consider acceptable.

Performance

Computers and internet connections have gotten much faster, yet so many websites feel slower than they did years ago. Pages ship tons of JavaScript just to show some text, then wait for it to download, parse, and run before anything works. Client-side rendering, trackers, ad scripts. Single-page apps are a nightmare - YouTube, for example - If I’m watching a video, and visit a different page, there is a slight chance that the video will still keep playing in the background, with no ability to stop it, making me reload the page. Yes, it doesn’t happen often, but it’s been an issue for years, and it shouldn’t be. This is just one example of many, but it shows me that things just keep getting worse.

Software bloat

Everything I’ve complained about in web development is really one symptom of a bigger problem: software keeps getting bigger and slower, even though hardware keeps getting faster. Much of the extra speed we got over the years has been spent on convenience for developers rather than on a better experience for users. A text chat, a note-taking app, or a music player using gigabytes of RAM is not normal, it just happens to have become normal.

This is why I prefer systems programming languages like C, C++, and Go, even though they have their own issues I have strong feelings about. They have little overhead, they’re powerful, and the programs they produce can be small, fast, and light to run. I enjoy working with them, it’s fun to figure out little optimizations. They give me control over what the program is actually doing, instead of hiding it behind several layers of frameworks and runtimes. I like knowing where my resources go.

I’m not saying every program must be written in C. Some things really are fine as a web app, and the right tool depends on the job. But I’d like more developers to ask themselves whether their app needs to be this heavy for what it does.