Foamplate

You are not logged in. Login
Hello, world!
Aug. 2, 2026

It's the first program many programmers write. It wasn't my first program. I didn't know about "Hello, World" until much later on. My first program was Etch-A-Sketch. While other programmers started on some version of BASIC, my first programming language was LOGO. It's a different kind of programming language, one that was designed to teach students about programming. I used an Epson QX-10 and the interpreter was "Logo Professor". With Logo, you have a drawing surface with a triangle called a turtle 🐢. You are given commands like "forward", "left", and "right" to move the turtle around. There are also commands like "pendown" and "penup". If you input a pendown command, then move the turtle forward, it draws a line. You can also input a penup command to move the turtle without drawing. Commands can also be abbreviated FD for forward, RT for right, LT for left, PD for pendown. Here's a program to draw a star:

REPEAT 5

FD 100

RT 144

END

Something like that anyway. And, you have a star ⭐.

How's that for some programming action?

Now we have this new era where most programmers are using AI to write code. The magical feeling of seeing that turtle move for the first time, drawing lines on the screen, may be lost for some people.

Some people think that writing code by hand will be a thing of the past. I don't think so. AI systems are trained on code that was written by people. For it to learn new software technologies, there needs to be new code written with it. There's a chicken and egg type problem here. If all new code is generated from training done on existing code, there won't be any new human made driven code innovation to train the next generation bots on. Hence, there will always be programmers who hand write new code. These people will be the leaders, the innovators. Not the people who generate all their code with AI. It's a craft you'll have to love to do that though.

Here's the thing - programs aren't written just for computers to run. They are also written for programmers to read. Why should we read code? Aside from dictating how our programs run, it also tells a story - the story of what a programmer was thinking when it was written. It is a story of intention, of what was needed. When a program is written by hand, like when anything is written by hand, there's an ineffable quality about it. The emotions, thoughts, and effort of the programmer is imbued into the code in a way that doesn't happen when AI writes it. Is it just enough that a program works?

Let's think of it another way. Writing software is a creative act, just like writing anything. Consider other types of creative works that AI outputs, like art or music. No one can say that the art or music that AI generates is bad, not at all. Sometimes, it hits this uncanny valley sort of feeling about it. Depending on how it was generated, AI generated art and music can actually be very good. Still, no matter how good it is, it will always lack the vision and direction of an artist who creates with purpose.

It's the same with software, and that's why "vibe coding" can end up with a mess of a program. Without the clarity, vision, and direction of a programmer, you end up with something that looks about right but isn't quite what would be expected.

Can you make good software with the help of AI? Absolutely. Just like you can make good music and good art with the help of AI. It's all about how you use it. If you just throw prompts together and just describe what you want a program to do, you'll get something that does about what you said but isn't quite right. You'd have to be familiar with software engineering and the software development process to know how to direct your AI bot to generate good quality software.

That's why I don't judge anyone who writes software with AI right off, or anyone who writes software without AI. Whether you use AI or not, what really matters is your output. What does your code look like? How is it organized? Does it follow SOLID design patterns? These are qualities that you have to be purposeful in your design to really end up with something good.

If you just tell your AI bot - hey try to make your design good, follow SOLID patterns, and so on, it will say that it's going to do it but it won't really. The difference between quality software engineering with AI and vibe coding is that level of attention. It's important that the code does what you want it to do, but it's also important how that goal is accomplished.

Think about art work - you can make the same picture with paints, watercolors, oil paints, digital raster, digital vector, and a whole variety of other mediums, and the result is vastly different depending on what medium you choose.

It's the same with software. You can write all your software in assembly, and it can work. It won't be nearly as readable and maintainable as code that you write in C or in C++. It matters greatly what programming language you choose, what platform, what software stack you pick, and so on.


There are no comments for this post.


Would you like to leave a comment?

Your email will never be shared nor sold with anyone. You can unsubscribe from the mailing list at any time. If you permit us to display your comment, you agree to permanently transfer ownership of its content to us, to display on this page indefinitely. In that case, your name and comment may be published, but not your email.