If you like me are an espresso coffee lover (the real espresso, http://en.wikipedia.org/wiki/Espresso , not that sort of dark filthy water imitation you can find in many american coffee bars) you should recognize the object in figure 1:
It is a Moka machine from a famous Italian brand. It allows you to prepare just espresso coffee, but it does its job very well. Some other coffee machine producers got some other ideas to add features to this basic but brilliant concept. Here an example:
If you are an espesso lover and a lazy guy too you should appreciate it. The producer of the advanced moka shown in figure 2 implemented the following:
Now suppose you are a pasta lover. In order to prepare pasta you need the following distributed system:
The one shown in figure 3 includes the basic configuration. Depending by the kind of pasta you want to cook it could be specialized or extended with some plugins (figure 4 shows a plugin for spaghetti).
But at the end its main goal is to help you cooking pasta. If some coffee and pasta lover would ask you to add the make espresso coffee functionality to the system in figure 3 what would you reply to him/her? I am sure the 99% of people would suggest to use both systems of figure 1 and 3 and maybe found some sort of integration between them rather than start to waste time and money trying to build a useless and absurd feature. Always use pot and colander to cook pasta and Moka to make espresso coffee.
What's the meaning of this example? If you work in the IT you should have faced at least once in your professional life this kind of situation: someone asking you to use a system for a different purpose than the one it was designed for while there is another one that totally fits the need and does it better. It seems sometimes so hard for some people to understand this basic concept. The next time a customer, a sales representative or a manager with no technical skills comes to you with this kind of request it could be helpful for you to reply recycling the example proposed in this post: Moka is perfect for coffee ;) That's it. And ask him/her to think in terms of integration than complication.
Fig. 1 - The traditional Moka
It is a Moka machine from a famous Italian brand. It allows you to prepare just espresso coffee, but it does its job very well. Some other coffee machine producers got some other ideas to add features to this basic but brilliant concept. Here an example:
Fig. 2 - Advanced Moka
If you are an espesso lover and a lazy guy too you should appreciate it. The producer of the advanced moka shown in figure 2 implemented the following:
- Scheduling: you can program the exact time to have the coffee ready to be consumed.
- Validation: Before starting the Moka checks if coffee and water were provided. If not, it warns the user with human readable messages.
- Automation: the moka itself manages the preparation (no human intervention needed to check if the coffee is ready and to remove the moka from the fire (and no fire at all: you need just to plug the Moka to a wall socket)).
- Alert: the Moka can be used as alarm in the morning to wake up and start a brand new day with a good coffee.
- Stress reduction: it keeps the coffee warm up to 30 minutes waiting for you to overcome the morning awakening setback.
Now suppose you are a pasta lover. In order to prepare pasta you need the following distributed system:
Fig. 3 - Basic system to cook pasta
The one shown in figure 3 includes the basic configuration. Depending by the kind of pasta you want to cook it could be specialized or extended with some plugins (figure 4 shows a plugin for spaghetti).
Fig. 4 - The spaghetti server plugin
But at the end its main goal is to help you cooking pasta. If some coffee and pasta lover would ask you to add the make espresso coffee functionality to the system in figure 3 what would you reply to him/her? I am sure the 99% of people would suggest to use both systems of figure 1 and 3 and maybe found some sort of integration between them rather than start to waste time and money trying to build a useless and absurd feature. Always use pot and colander to cook pasta and Moka to make espresso coffee.
What's the meaning of this example? If you work in the IT you should have faced at least once in your professional life this kind of situation: someone asking you to use a system for a different purpose than the one it was designed for while there is another one that totally fits the need and does it better. It seems sometimes so hard for some people to understand this basic concept. The next time a customer, a sales representative or a manager with no technical skills comes to you with this kind of request it could be helpful for you to reply recycling the example proposed in this post: Moka is perfect for coffee ;) That's it. And ask him/her to think in terms of integration than complication.
Comments
Post a Comment