I had my aha moment after 9/11. I had left Merrill Lynch and was doing a programming gig for a company in the US. I was having a hard time moving the project forward because the code was complex and there were no documented requirements. The code had a poor architecture (if at all) and simple tasks were taking an arduously long time as a result. I would not be the first programmer to have gone through this kind of experience.
I had just come from a project at Merrill Lynch that was all about requirements and change management. The problem was that the requirements weren’t connected to the vast number of different programs that were all across the business.
After 10 years, programming had lost its luster as I just never found anywhere – not once – that requirements and code were all together in one place all the time.
My mind wandered over what I would do to solve the problem of requirements and code – once and for all.
I started to think of a better way, and then it all just came to me – like a beam of light. The first step was to ruthlessly commit that anything I did next would be the smallest, simplest thing possible. Cut away and annihilate any idea or concept that has no purpose or is redundant.
So, here we go…
In the world of making software, it comes down to these fundamentals.
There were three things that were needed to make a program: screens, logic, and a database. Every program that ever existed is basically those three things. Anyone who says anything else is just wrong. Even if I only nailed 90% of the market with this approach, that is still pretty much everyone.
I knew from my training that in tech speak we call this the Model/View/Controller architecture. Normal people don’t use fancy words like that, so lets just call them screens, logic and a database.
I was really starting to feel good now. I was making something that would have the power to change the course of an entire industry. I knew in time I would not need to make a single argument to prove my point. The sheer amount of time savings would make the economic argument. In the end, I believed that economics overcomes politics and fear of change every time. All I had to do was just make the darn thing work.
I felt an invigorating sense of purpose now, as though I had been given a great gift-like I was entrusted with an important message to deliver. It was more important to deliver than what happened after that. I knew that whatever happened as a result would turn out for the better.
So I needed one “magnum opus” program, ironically designed to put myself out of business as a programmer. If it were really true that mine was just a boring, repetitive job, then the proof would be that I could replace myself with this program. I just needed to figure out how to make it happen.
The idea of what this could do to the management and IT establishment was intriguing. Technology should be about speed, and there were a lot of people getting in the way with their forms, processes and general bureaucracy. This could turn the page on that, if only it could be built.
I needed a quick way to represent the real world using commonly accepted abstracts, so I picked Smalltalk to make it. Initially I stored the data in one file, but then came up with the idea of doing it in SQL.
A bit more work and one patent later, voila. It worked. The name “Text to Software” was actually from one of those establishment types who said it couldn’t be done.
David Long, CEO, SageTea Software