When I first learned I’d have the opportunity to speak with the brilliant Grady Booch about the future of application development, I thought it a contradiction. For you kids new to development, Booch is perhaps best known for working with Ivar Jacobson and James Rumbaugh at Rational Software in the mid-1990s to create the Unified Modeling Language for software development, an industry standard. He has also written books on object-oriented programming, and some of the methodologies he created have been built into the Rational Unified Process. Rational was acquired by IBM in 2003.
Much has changed in software development since that seminal work, and not surprisingly, Booch has changed along with them and has a lot of opinions about the state of things today.
“I’m very proud of the UML. It was the right technology at the right time,” he told me on a recent visit to IBM Watson headquarters in Manhattan (though Booch was phoning in from Hawaii, where he resides). “We were at the cusp of the Internet, when things were changing from algorithmic languages to object-oriented languages, and the industry was building large, software-intensive systems.”
As we have come to learn, many of those systems were islands unto themselves, which led to the development of platforms that could bridge disparate systems. That, Booch said, is where we saw the rise of “domain-specific architectures, levels of abstraction above the operating system. There were fierce debates in that space. Now we see a technological push and an economic pull to grow domain-specific architectures, such as those at Facebook, Amazon and Twitter. And there’s AutoCzar [now Verifaya], a common architecture for in-car electronics. There is an economic interest in a common architecture.”
Booch noted that in the 30-plus years since he became chief scientist at Rational Software, the way software is created has changed dramatically. He discussed new methodologies, the rise of the non-professional programmer, and building cognitive systems that rely on machine learning—the area in which he is now working as an IBM Fellow.
“Rational in its time was a billion-dollar company, and now it’s in a corner of IBM,” Booch said. “Tooling is now just part of the atmosphere, not the primary discussion.”
Today’s developers have much more to consider than those building the big monolithic systems of the past, and Booch identified cloud services and the Internet of Things as areas in which developers face new challenges.