Contrary to the name given, firefighters wish to prevent fires rather than fight fires. A lot of people in fire safety always think about prevention first then only about fighting methods. I had briefly worked in the space of safety systems, for an office building many fire safety protocols are in place like monitoring, automated extinguishing, ease of access, education etc. A fire is best prevented or extinguished when it is too small to cause any damage.

Software industry on the other hand idolizes fire fighting metaphorically. We have progressed with tech so much that instead spending energy on monitoring and alerting alone, there are systems which can scale up and down based on traffic, restart itself when not responding, retry when messages fail to deliver etc without manual intervention.

Photo by Adonyi Gu00e1bor on

With developers also taking up operations, they are equipped with power to take the call on how to design and run the application. Building a resilient system takes deliberate effort and often have to think about how will the system perform under some conditions. It can’t be caught with unit & integration test cases easily, may be performance tests can catch but it is often not built in the continuous delivery pipeline.

Let us take a scenario, a solution will take about 5 days to introduce some functionality in two different layers to take it to prod but the solution will be very resilient with very less chance of failure versus another solution that can be developed and deployed in a day but it has to be manual scaled up and down depending on traffic situations.

For a reader the solution 1 may look obvious when looking in isolation, but for a set of people who are constantly developing and operating software will not give a second thought to understand the repercussions of solution 2 and may end up taking it, so that there is less work on their plate.

How can we avoid this? Akin to fire prevention we have to set architectural and design decisions that can keep resiliency and self healing as primary considerations for an established system. This can be relaxed for products that are looking for a market fitment, which can be more relaxed compared to an established product.

In one of the situations I was asked when I pointed out a similar problem “What is wrong? I am anyways monitoring, I will go ahead and fix as soon as the alert comes”. I replied “By the time you fought the fire, you already lost some business to competition and also ended spending more money during operations than developing and taking to market”. When people did a simple math they understood the magnitude of it.

COVID brought two kinds of people out. Those who wanted to help others in whichever way possible and those who wanted to make use of this a business opportunity to earn more. Black markets opened up for masks, gloves and sanitizers. For things where there is no MRP, prices sky rocketed for a while before supply caught on. I thought it was only small businesses who were trying to make quick money on this but it was there for a lot of big businesses and unicorns who jumped on this wave.

For example, I had seen status messages of people exchanging their points for donating oxygen facilitated by a fintech. This fintech was making people put up in their statuses for donating tens of thousand of liters of oxygen for their accumulated points, which made people very happy and give the company a much needed free promotion. But on a simple fact finding they are not giving out liquid oxygen but they were giving out numbers in regular atmospheric pressure.

Photo by cottonbro on

A simple misinformation and not telling all the facts just drove people to freely promote the company. Oxygen is not at all costly, 20+% of atmosphere is oxygen, if you reverse the process of nitrogen concentrators that are used for filling car tyres you get 99% oxygen. For the record, a kilogram of LPG will not cost more than 60 rupees. A kilogram of oxygen is roughly 700 litres and that is barely enough for an hour for a covid patient, 1 litre of liquid oxygen will expand to around 860 litres of breathable oxygen. Government recently capped prices for refilling liquid oxygen at 25.71 rupees + GST per Cubic metre (1000 litres of liquid oxygen) which is around 86000 litres of breathable oxygen.

I have seen people putting up status messages on linkedin and whatsapp saying they donated 100,000 litres of oxygen and they feel proud about it, you are misled. You ended up donating about 40 rupees. There are more companies who are trying to ride the wave, we may not even be able to notice and will fall for their marketing skills.

It is the work of the majority of the good hearted people that still keeps us going. Do not get carried away with the marketing, help for the right set of people.

In my school days it was impossible to score 100 marks in a language class. When I asked my language teachers, they mentioned that there is no definition of perfect language skills at any level, so scoring a 100 in a language test is a disgrace to the language. All the other non language ones had a defined way of scoring 100, if you memorise facts and formulas, then it is easy to score and keep moving up levels. The thoughts ingrain to you that if you follow the plan, keep memorising and apply the facts then you will accomplish a lot.

Photo by Olya Kobruseva on

Unfortunately the world we live is not always filled with templates, more and more problems that could be done with simple cause and effects can be replaced with automations and what is left for humans to solve are wicked problems. Now what is a wicked problem? Instead of going to a textbook answer, let us observe something in an urban neighbourhood.

A neighbourhood’s green grocer is always crowded as the population of the neighbourhood is more than what that store can conveniently service. The store was designed for a people of 700 but the population is 1100. A businessperson sees this as an opportunity to open a new store and draw the excess crowd, but because of the costs of running a store it will take at least 800 people in the neighbourhood to profitably run. When the new store is opened, both the stores will plunge into loss and eventually one of them will shut the shop. Another businessperson will observe the same and repeat the cycle but the problem is never solved. You will see this in every neighbourhood, new grocers, saloons, pharmacies and dentists keep opening and closing over the course of the years and see only a few established shops.

Our system is designed to teach us formulas and templates as an approach to any problem, this is especially on the higher side for premier institutes where people right from a young age are primed to think that way. Learn a formula, apply and observe, change the formula, apply and observe which will just create cycles of boom and bust.

If highly educated professionals specialising in a field cannot easily solve wicked problems then who can solve wicked problems very well? They are solved well only by people who are generalists or polymaths. Problems will boil down to intricate webbing of macro patterns and micro patterns which can be observed in one discipline and implemented in another. It is solved through coming up with a hypothesis (need not even be scientific, gut feel is also hypothesis), try a small solution, expand the solution if it works else ditch the hypothesis and go on with another one. The key is to observe cause and effect across different areas even if they are unrelated and learn from them. Like a botanist playing a violin in free time and figuring out that some plants respond to classical music and grow well, the botanist would have never figured out if there was an alternative passion.

Software development overall is a wicked problem, coding as such is not but building software is a complex dance between people, process and engineering.

Concentrating and learning only technological bits will keep us prepared only to solve templated problems like coding. If we need to scale up and solve business problems through building software then being a polymath will take us a long way ahead.