Shipping is hard. But it does not have to be.
Ideas are cheap. Execution is difficult. Shipping implemented ideas? Never mind. Throughout my career in tech as a developer, I've had so many ideas for products that I can't remember half of them. Needless to say, I didn't do much about those ideas. Most of them never turned into anything. Some were a bit more successful; they got a little work, then I forgot about them. The code still exists somewhere. I might have even shown a prototype to some friends, but that's all.
In the last few months, I've been working on some more ideas that have been living in my mind for quite some time, so I decided to give them a chance. What I can say is that I've never been so focused on something. The LLMs have helped, for sure. But I think the desire to see these ideas transformed into real products with real users and real feedback has kept me working more than ever. I now finally can say that the possibility of having something to show is closer than it has ever been, and this is terrifying.
But why? Why is it terrifying? What can happen? The worst I can see happening is nobody giving a shit about the product. But still, this is not easy. Many things come to my mind. Maybe the product is not that good. Maybe I'm the only person in the world who cares about it. Maybe.
The crazy thing about software products is that there is nothing that hasn’t been created a thousand times for thousands of people before. To do apps? There are at least a million out there. Task management? Every CS student in the world has created one by now. Even browsers are proliferating like hell lately. It seems that everyone has decided to create their own search engines, which is a good thing.
We have to consider that this is not exclusive to software. Humans don't need that much stuff to live a good life, really. We need to eat, move around, have a place that protects us from the outside, and connect to people somehow. Pretty much every product out there targets these necessities in one way or another. There are a million flavors of cars and car brands, but all of them serve the same purpose: to move us around. Computers were initially created to help us make calculations faster. The internet was created to help us connect with other people more easily, and now we use it to design better homes, cars, and so on. But without people, connections, and chats, computers would have very limited usage. Remove every social app from your computer, and you will see what I'm talking about. Anyway, my point is, from the old days to this day, we have been redesigning the same products over and over. Before the cars, there were horses; before electricity, there were candles. Before computers, there were abacuses, just another type of computer.
So, original ideas are almost impossible. Everything is an iteration.
Everything is iteration, so what? Well, having the mentality that you probably are not creating anything new may help, but we still need to face the true question: Why is shipping the final product so hard sometimes?
My take on this is the details. When we are creating the core features of our products, we are not really thinking about every detail. Our goal is to make it work. Once we accomplish this, we move on to the next challenge until there is no core functionality left. Then, just when we think we did eighty percent of the job, it seems like there is 80% left. Before showing the project to clients, we need to consider many things that we did not before. For example, what if the user is using the product from a phone, is this prepared for being used in a phone? What is the user doing, filling the form and giving up? What if they never confirm the email address? And so on. The list starts piling up, and when you realize you are tired and give up. Sure, things change when you are working on someone else’s business. But if you are working alone, it is easy to get distracted by the details and never ship anything.
These are some things worth remembering. Don't take it so seriously; there are a lot of horrible products out there making millions, and nobody cares, 90% of corporate software included. Don't be afraid to make mistakes. You will make mistakes. There is nothing you can do about it. Trust your taste. Everything has been created, but maybe you have better taste than most. Don't get lost in the details. Just ship it and figure out later.