Everything must be made as simple as possible, but not one bit simpler. - Albert Einstein

Recently SAP BusinessObjects veteran executive and analytics expert Timo Elliot ran a cartoon caption contest that enabled his SAP Community Network readers to vent (humorously) on the topic of excessive technology complexity.

Here’s the cartoon. How would you caption this?

Source: Timo Elliot (timoelliot.com)Source: Timo Elliot (timoelliot.com)

The caption contest entries (you can read them in the comments section of Timo Elliot’s contest challenge) I found the most humorous revolved around a couple of related basic truths:

Developers might (frustratingly) get blamed for complicated enterprise applications…

And then I said to the engineers, “If you don’t like the new coffee machine, feel free to build your own.”

…but in reality, needless technology complexity is most often caused by the less-than-adequate tools the developers are expected to use.

Trust me: Rube Goldberg machines are the cutting edge of big data and enterprise business intelligence.

An end-to-end integrated, next generation, built from the ground up thingamajig.

What do you mean, there’s no single sign-on?!

And quite often, technology complexity is often built on top of the pre-existing complexity of a legacy enterprise application that might be retrofitted to be marketed as a “platform”.

_Don’t worry, we have APIs! _ [Sure you do, pal. Sure you do. - M.U.]

As requested, the new platform is integrated with all of your legacy systems.

Your first job is to find the last maintenance guy. He’s in there somewhere.

The best way to avoid needless technology complexity is to work with a true enterprise platform built properly from the ground up in the first place. That’s exactly what we have strived to do from the very beginning with the Nuxeo Platform - an end-to-end enterprise content application development program designed to be as flexible and extensible as possible.

To achieve this, we offer some unique core platform capabilities that sets Nuxeo apart from other systems:

  • Every feature created as a separate component. The Nuxeo Platform is made up of a system of loosely coupled components, each one packaged as an OSGi bundle. Each bundle includes a “contract” that specifies how it can interact with other bundles. Developers can also specify and deploy only those components are required for their application.
  • Easily customize and configure all Nuxeo services. Each bundle also exposes extension points which enable developers to easily configure the behavior of a component (using an XML-based configuration, which can be done quickly and visually using Nuxeo Studio), or extend the behavior of a component (using your own custom code or scripting). The same extension point system is used at every layer of the Nuxeo Platform. Nuxeo’s extension point system ensures there’s no risk of “losing” your customizations after an “upgrade”, (and no risk of “losing” a maintenance person, either!)
  • An API that can access everything the application can do. Unlike an enterprise application that has exposed some partial functionality exposed through an API, the Nuxeo Platform provides a completely dynamic API that exposes all platform capabilities. Developers can define their own custom-built services, plug-ins, data structures and data processing routines; selectively expose only those Nuxeo services required by their application; and much more.
  • An efficient and extensive testing framework is included. Testing is at the core of the Nuxeo Platform, just as it is at the core of all quality software engineering. Developers are enabled to load only the bundles required for their tests and fully automate testing of your application - in the very same manner that we test the Nuxeo Platform itself.

Perhaps these two clever captions sum this all up the best:

Sorry, I didn’t have time to make it more simple!

Simplification ain’t so simple!

How true! We at Nuxeo have already sweated all of the critical details of our infrastructure essential to make our enterprise content application development platform so simple - from design all the way through to deployment in the cloud - that developers actually enjoy using it.

And that’s no joke.