Towards the later half of the twentieth century, a big revolution gripped humanity. After having tackled mass production and creating machines, people looked to using a single machine to do multiple things. I am happy to report that software was born, and with it, a period of information revolution was unleashed. The whole digital world is an automated mass production factory that can’t help being any other way. A piece of software is mass-produced the instant it is written (it is soft-ware after all!). In fact, people go to great lengths to limit this inherent mass production feature by encrypting information, using DRM etc. etc.
Industrial revolution took the pockets of automation already happening and put it on steroids. Similarly, information revolution takes the pockets of innovation and puts them on steroids. The result is for everyone to see. Just the internet itself doesn’t cease from being an immense source of innovative entrepreneurs and even more innovative users generating “user generated content”. However, just like automation couldn’t be an end unto itself, innovation for innovation’s sake is meaningless. And so here we go… What is innovation for? Automation enabled worldwide mass production, and what innovation is enabling is a worldwide mass varietization. There was a time when standardization was sought after as a means of achieving conformance. Parts were supposed to adhere to a standard. Today, standardization is looked upon as a means of achieving variety (companies now support a standard, don’t they?). HTTP, HTML, WWW and so many building blocks of the information revolution are examples of standards that enable variety to emerge and thrive. Open source only takes this variety-production-ability to the next level by freeing up the mass production of software.
Today’s teens and the so-called millenials have limited attention span, want a huge variety to choose from, and are just not afraid of the ton-loads of information that is being off-loaded on them. Mr. Henry Ford’s customers might have been content with “a car painted any colour that he wants so long as it is black”, but today’s teens expect to choose from a free-flowing variety of options. Great companies of the future will be those that realize this need for variety and capitalize on it. So if you are building software, remember the following:
- Build scope for variety into your system. Enable users to customize and personalize your software. It might seem like a whole lot of trouble for nothing, but it will pay off in the end.
- Support a variety of standards. You don’t know where your software will end up finding its users and what they will make of it.
- Have a big heart. Trust your users a bit and let go of some things. Don’t worry, they will catch the ball and run with it.
I have a feeling that this list will look a lot clearer in hindsight, but if you can add, please do. I am letting things go a bit myself!