The best part is no part
Tech ·Elon Musk has a saying ‘the best part is no part’. When engineering systems be it physical or in software, it is fundamentally important to keep things as simple as possible and eliminate all unnecessary parts. This is because while having more parts may seem ‘fanciful’, every part has an associated cost.
Let’s take the example of building a rocket. Assuming a rocket has 10,000 parts and each part has a reliability of 99.9%. Would you take that rocket? A simple calculation of the overall reliability of the rocket reveals some shocking numbers. Assuming that each part has to work in order for the rocket to function, the overall reliability of the rocket can be calculated as
The same can be said for software systems. Microservices has been the ‘de facto’ standard for modern day software architectures. While it does come with its benefits, one should still seek to minimize the number of services as much as possible as each service requires a whole team to build, test and maintain. A 100x engineer does not code 100x faster, in fact he spends 90% of his time thinking what not to write and only 10% of the time writing 1% of what is needed compared to others.
An engineering philosophy by an inexperienced and naive 0.1x engineer.