Build or Buy? An Old Question in a New World

Need some change in your business. Something new and fresh?

I have been working for CAD Retail Systems for more than 13 years and have seen some big shifts in the industry.

For many years, there was a priesthood of knowledge that was kept under lock and key. Now, the keys to the castle have been released into the wild. Who wants to be a programmer? Anyone? Everyone?

Software has become much easier to copy, recreate and replace with AI tools and agentic programming. Are these replacements better? Yes, in many cases they are. Sleek interfaces, rich graphics, high-speed database connections, AI interfaces, a shiny new toy. They can have a certain level of polish that even a seasoned programmer might struggle to match. Does this really make it better or is it a glittering trinket, is there real meat on the bones?

Is the right move to go to a software company and simply ask them to build exactly what you want? In some cases, I think it is. You are happy. They are happy. We are all happy. Long-term happiness isn't about shiny new toys. There is maintenance required to preserve that happiness.

Support, deployment, training and updates are still part of the infrastructure that's needed. Boots on the ground, so to speak. Who do you turn to in your time of need? In Claude we trust? Our Claude and savior?

This is true for both custom-built software and an established software package, so you're not really cutting much out of the equation by building custom.

The part you are cutting out is the battle-tested part. The tried and tested, the trusted and loved, the familiar interfaces, everything where you expect it to be. The imperfections, the errors that have become part of what you expect. Errors that have become requirements. If you, as a programmer, change a button or a keyboard flow, you will change a person's whole life. For good and bad.

I think we should be careful not to get trapped into building a whole bunch of custom apps just because we can. I'd rather see us build custom features into our established family of products. This way the whole infrastructure can be taken into account. How does this feature or requirement fit into the whole business? You are not running multiple applications in isolation. You have a living, breathing ecosystem that needs to talk the same language and be on the same page.

Keep your core product range small and add on top. This way you achieve better support, deployment and a more cohesive ecosystem.

It may very well be possible one day to build that entire ecosystem from beginning to end, with all factors and all things considered. Maybe one day there will just be a single text input and anything you could possibly need or want can just be typed in. Until we reach that day, let's take a moment to appreciate the many years of infrastructure building and the pioneers who laid the golden road for us to walk on.

Custom vs Established? Build on the ecosystem rather than the idea.