Everyone wants cool toys.
When we’re talking enterprise software, those toys are typically integration points. Very little gets management more excited than real-time metrics on a dashboard with dials in motion as the data changes. Those data points aren’t just for show, of course, and can provide useful information to the business owners of the enterprise software.
But do they need to be shiny?
For those that have been around the block a few times, I liken this to the early days of the World Wide Web. You may recall things like spinning logos, flaming logos, and the BLINK HTML tag. These “features” brought little substance to the need to get out the information about the business.
Just as these bits of eye candy distracted from the main purpose of promulgating business information, so too do some of the flashier capabilities of integration suites distract from the business need of getting data from system A to system B. Moving data real time between systems without human interaction is undeniably amazing, but this ability needs to be tempered by the question of whether it needs to be done.
As Ian Malcolm Black said in Jurassic Park, “Your scientists were so preoccupied with whether or not they could, they didn’t stop to think if they should.”
Business requirements are key. They drive the technical choices for your integration (as they should) and help you decide how intricate your integration needs to be. It should be exactly as complex as needed and no more than that.
If there’s no need for real-time integrations, don’t bother with them. They introduce some fragility that may jeopardize your business success. Remember that the “cool” factor can also bring in the “brittle” factor in cutting-edge offerings from your software vendors. The relationship between complexity and things like bugs and maintenance costs is a subject of its own in computer science circles.
Of course, if your business requires these features, go ahead and use them! By no means be frightened of complexity, rather be aware of whether or not you need it and at what price it comes.
 Spielberg, Steven. 1993. Jurassic Park. Film.
My parents were both technology focused teachers when I was a kid, and my father was a high school math teacher so in the ‘80s he was the “computer teacher” too. This meant I was lucky enough to have an actual computer in our house, an Apple //e. I clearly remember my father bringing home the sample programming exercises (in Basic!) for me to practice. From there, I moved on to entering the example programs from the back of computer magazines myself and tinkering with them. It was this that made me realize that the flexibility of the computer made it the ultimate tool to solve problems.
I also read a lot of science fiction when I was a kid. They were mostly the “classics” of the genre from the 1950s or so. I clearly remember Heinlein’s exhortation and that the main characters were inevitably able to do just about anything they needed to do to survive with their wide-ranging knowledge of multiple subjects. They knew metallurgy, biology, survival skills, hunting, cooking, sewing, and more in a large array of skills.
I resolved to do the same.
While I have not come close to mastery in all these skills, the notion of the “Renaissance Man” drove my early desire to learn as much as possible about as many things as possible. This led me to the Jesuits and their idea of “care for the whole person” and eventually led me to have my undergraduate education at Loyola College in Baltimore (now called Loyola University Maryland).
Combining both technology and the humanities helped put perspective on how computers and other technology really were just tools and that we were solving people problems even though we were using technology to do so. That remains true even now with the clients I help. They are just trying to overcome an obstacle and the method to fix it is immaterial. I happen to use technology as a tool for much of the time but there are human fixes that can be applied to human problems too.
At the bottom of every request there is a person trying to do their job. Sometimes they don’t really know what the source of their frustration might be which is why I always start by asking “What is the problem you’re trying to solve?” I figured if it was good enough of a starting place for Richard Feynman it would have to be good enough for me. Once these problems are clearly outlined, they are solvable. I enjoy helping people and solving problems. These things all work together.