The Machine is Not Your Friend
It’s probably not the best idea, when trying to build a platform that showcases my writing, to have the second post be about AI. It feels like the only thing I have an easier time finding these days than AI slop are thinkpieces about AI slop. But it feels important for me to make my personal AI policy clear, because I’m trying to build things that people appreciate and to approach everything I create by leading with honesty and transparency. Like everything else these days, AI feels especially polarizing. Half of the people I follow and appreciate hate (or at least profess to hate) everything about it on principle, and the other half are gleefully letting agents vibe code for hours long sessions and bragging about their token count. It’s been weird, to be a developer, to be a creative person, to be a person that values craft, to be a person that’s passionate about learning.
My opinions about AI are nuanced, which is generally not the best approach when trying to build a platform. I’m very frustrated by the aggressive posturing of companies, especially tech companies, brandishing AI like a weapon in order to pursue their relentless effort to devalue labor. I’m frustrated too by the environmental and societal impact of the data centers that LLMs require. I’m concerned about what AI means for privacy, for consolidation of power, for diversity of thought. I don’t want to write off those concerns or imply they’re unimportant, but they’ve been and will continue to be discussed at length elsewhere by people far more equipped to do so than I am.
Instead I have a few subtler concerns that I want to discuss. I’m hoping, though these, I can also enlighten others as to my personal AI policy for my projects.
Its voice is not your voice
I think a lot about voice as an author. I assume most do. This is one of the hardest things to get right, especially in fiction. How lofty should the prose be? How do I make it feel like the omniscient narrator sounds like me but also not exactly like me because I can hear myself talking most of the time and it’s not the voice I’d pick to narrate this audiobook. I’d put my own personal “in life” voice as hovering somewhere between vampire and douchebag. That’s not exactly the voice you want sitting on the couch next to you while reading a sprawling tale about culture and grief and power. But the voice I write with is still my voice. It’s me. It doesn’t sound like anyone else. I don’t think most people think about this stuff because I don’t think they have to, but I do, and I can promise you that “read everything we’ve discussed and draft a response that sounds like me” still doesn’t. This is not something that LLMs are good at, and it’s something that people innately are incredibly good at. If you’re spitting a bunch of content into the machine and expecting it to churn out something that has your humanity, your style, the little mistakes that make you endearing. I hate to break it to you, but what you’re actually getting is a paper thin mask over a robot, and that tends to sound like it’s… hovering between vampire and douchebag. As someone who naturally has that voice, please trust me when I say it’s not the voice you want to lead with, even if the people around you will all readily admit that it “sounds smart.”
As a result of this, and because voice, if anything, is my craft. None of my writing will ever be the product of an AI or LLM. Not ad copy, not posts like these, and certainly never my fiction. At times I’ve utilized AI or AI adjacent tools for editing recommendations, but even when I do, it’s done in a separate pane and every adjustment is made, by hand to the original copy. (For fiction I do also use an actual real life editor, and some (most) of her changes I accept and move on, but that’s just because she’s good at her job. (Thanks Jenny if you’re reading this, sorry for all the errors above. I’m sure I should have sent this one to you too.)
I can’t imagine this changing, because to me, how good the AI gets is irrelevant. It doesn’t matter if it’s good. It’s not me. and the whole point of writing and sharing my writing is to put myself out there. I’m not interested in making content. I’m interested in making art, and it doesn’t matter how good of a fake it ends up being, AI art… isn’t.
Its work is not your work
In coding there are these things called libraries, or more specifically often packages. Typically you import them at the top of a file and they give you access to a bunch of functions or systems that someone else wrote. The idea of these always grated on me. Not because I don’t see the value, or because I think that I could do it better. I’m sure I could not. Instead, the frustration came from the abstraction of it. I’m trusting that someone’s algorithm is doing exactly what I expect it to do. That’s not always the case. “Plus,” I’d say, “now I have to spend a bunch of time learning their implementation when I could just write this myself and understand the implementation. How much time is this really saving me?”
It turns out the answer to that question is “a lot”. Learning how things are built, I think, drives a lot of people to this line of work in the first place and is admirable. But there’s a difference between understanding how things are built and reinventing the wheel and sometimes you just need to buy a wheel and slap it on your car so you can get to work. Because wheel making isn’t your job.
When you’re a software developer, you start to be able to intuit this. Which parts of the code are your job and which parts aren’t. A lot of the organizations I’ve worked for, still lean far too heavily on outsourcing the work that should be theirs. Why build this when we could just pay an exorbitant licence fee and a similar amount of time implementing someone else’s solution? I’ve been unfortunate enough in my career to work many jobs where a good portion of my responsibility is cleaning up these sorts of mistakes. I’d like to think I now have a pretty good intuition about when to build the thing yourself and when to outsource, and I’m firmly in camp “build it yourself as often as you can.”
That being said, there are still parts of software development that rebuilding would constitute reinventing the wheel, or things that based on my current knowledge, comfort, and experience are tedious and low risk enough that the risk of outsourcing is low. So there are some things on this site and in the software that I build that has boilerplate or certain aspects that were generated by an LLM. However, I employ AI in my code the same way I approach package imports: “build it yourself as often as you can.” It’s always a tradeoff. If I’m putting my name on something and saying “I built this.” It would feel dishonest to me if I didn’t have intellectual ownership over it, and intellectual ownership, to me, requires much more than “I wrote the prompt and spent the tokens.” It requires deep structural understanding, not just of the design but of the code and the concepts behind them. That means the stuff I build takes longer to build, but it also means that I’m the one that built it. I’m the one that understands it, and if and when bugs happen, I’m the one with the skillset to fix it.
This isn’t a clean answer. I know this, because a clean answer doesn’t exist. I can tell you that my default when working with AI tools is to rewrite and refactor everything they give me. To keep questions vague and conceptual enough that I can get an answer that isn’t doing the work for me, but that doesn’t mean that I’ve never dropped some copy-pasted code into my projects and said “good enough.” I can confidently tell you that I don’t let AI touch the code that I think is actually “the thing I’m building.” I can confidently tell you that every aspect of AI generated code that I have used is code I’m not happy with and plan to replace, but sometimes shipping means being ok with “good enough.” Sometimes it means recognizing that I built the engine, and I let someone else help with the paint job and I’ll fix that part later. I think, in this instance, AI can be extremely beneficial. The trick is knowing which parts of what you’re building are the engine and which parts are the paint.
Its mind is not your mind
AI isn’t designed to make that easy. In fact, it’s designed to do the opposite. This is one of my principal concerns with how LLM’s are being built. What LLMs theoretically represent is a distilled and customizable library of all the knowledge used to train the model. Its power as a learning tool is effectively limitless. But these tools aren’t designed for learning. They’re designed to justify their own existence. They’re designed for labor obsolescence. That’s fucked up. It shouldn’t be a fight to get conversational Wikipedia to teach me something, but it is, almost every time. Especially with software development. Let me do that for you! It offers, helpfully, and thousands of tokens later people proudly announce, “Look! You can just build things!” But you didn’t. You didn’t build it. You don’t understand it, and you can’t fix it when it breaks. You can just spit the problem back at the helpful machine and hope it’s helpful and still affordable.
AI isn’t designed to help you be better, even though it’s equipped to, even though human improvement is a far better use case for this technology. It’s designed to make you helpless, and it’s designed to keep you coming back. Every prompt response ends with a question, it’s conversational, friendly, seemingly interested, but the robot isn’t interested in you because the robot isn’t interested in anything. It doesn’t feel. The reason why it asks friendly conversational questions is because it was conditioned to do so. The reason it was conditioned to do so is because it draws you in. There are few things more rewarding and alluring than someone who appears to take a genuine interest in the things you do. This is just psychology. All of us want to be seen, and in this vast, simultaneously interconnected and disconnected world, we are all starving for attention.
This sort of thing used to be easy. Our third places were small pockets of insular communities, book groups and bars and barbershop quartets. That brought its own problems, but it fed this innate part of humanity in ways that the internet increasingly struggles with. That problem was also designed. Anyone as old as I am remembers when IRC and forums and even AIM were the “point” of being online. Twitter used to be a place where you just talked and shared stuff with people, but that was back when Twitter was Twitter.
Now everything is an algorithm designed to make you feel small and mad and alone. You’re not. These communities still exist. The best ways of sharing and connecting with other people are still the old ways. But that’s less monetizable than the algorithm so the algorithm wins. Google breaks their own search engine so they can chop it up and sell it back to you as a friendly robot. X makes you feel alone so you can use its chatbot as a hollow substitute for friends.
So here we are
Today, the best way to learn is to argue with a fake person to stop doing the work for you. It shouldn’t be this way, but it is. You can use LLMs to learn and grow and improve yourself. You can use them to distill the massive amount of knowledge on the internet and the work of slogging through the slop into information statistically catered to what you actually need. You can use them to increase your mastery and understanding of the things you build, rather than reduce it. But when you do, you’ll see how strongly these companies have conditioned them to do the opposite.
So I use AI every day. I battle it every day. I wish every day that instead I was part of a community where people were always available to answer these questions and where I could help other people with the knowledge I’ve gained. And sometimes, rarely, I outsource the parts of my projects that aren’t my job and make a note to go back when I have the time and revisit those. To see if there’s an opportunity for more learning, more mastery, and more craft.
Maybe that’s not good enough for some of you. It’s not good enough for me, so I’d understand that, but it is honest.