“Sir, can you please switch off your mobile phone or keep it
in flight mode during the entire flight?”
The flight attendant approached a young guy and told. The
guy did not like what she said, looks like he was busy in a very important call
and not in a mood to discontinue the conversation. But she did not give-up and
thanks to the federal law, the guy had to hang the call and switch off his
mobile. I often encounter such situation during flight, most of these occur
either because of electronic devices or fastening of seat belt. These are very
trivial matters but can generate greater negative impact during the flight.
Let’s take the case of mobile phone or any electronic devices, these devices
are equipped with Wi-Fi and may interfere with the cockpit devices causing
communication breakdown. The modern flight operating devices are designed to
block such interference; however it is highly recommended that the devices are switched
off or kept in flight mode. There can be exceptions like the blocking devices
are not installed properly or the device produces very high frequency, so it is
unpredictable and interestingly the flight attendant cannot call an air craft
maintenance engineer 37000 feet above the ground to fix if any problem occurs.
Hence it is their duty to make sure that all best practices (or flying
protocols) are followed by the passengers to avoid any emergency situation. The
guy looks like highly educated and cultured, however at that moment his selfishness
or “I need to finish this call at any cost” behavior seems did not care to push
200 people into danger.
So, it is about awareness and attitude that we posses towards
such practices. There are lot of such practices that we need to adhere to make
things work better and also to help others. I saw people switching off their
mobile phones before entering the flight and some shortening their
conversations. Those persons know the value behind such practices and they tend
to make it a part of their daily life, like we do not forget to brush our teeth
in the morning. The concept of best practices in programming aligns with these
facts, the fact of making it a daily practice, the fact of helping others by
writing clean code and the fact that helps to create a healthy programming culture
within a team. Programming is not an easy job; we may found tons of so called
“geeks” but very few who falls into those who believe in switching off their
mobile phone before entering the flight. The best practices make sure that you
do not increase your code maintenance effort, help others to understand easily
what you have written and set an ideology for the team by being accountable
what you have written. It helps you to establish a long term sustainable programming
model that not only educate new joiners but also boosts the programming morale.
It helps to avoid any emergency situation caused due to technical debts by
providing a well define process of developing software.
Now the question is how big difference the best practices
can make in engineering. We have several side of this problem, I think the most
important one is how much are we aware of these practices and what our mindset towards
learning and adopting them. We all fly first time, but do we consider fastening
our seat belt next time we fly or do we need to be informed by an attendant every
time. So there is a difference between awareness and adoption. Because
knowledge can be spread across easily by several means such as training,
discussions, coaching etc. but inheriting those into work life is the biggest challenge
as it needs a professional mindset with adaptive nature. The mindset is an individual
characteristic attribute which cannot be controlled by another individual.
One’s mindset is controlled by his attitude. Attitude is developed over a period
of time and so is mindset. We have to control both in order to incline towards adhering
best practices into our working life. It will sound really hard for the first
time if you have started fresh because there will be a cultural shift from your
traditional programming model to another completely new model. But if we take
this as an advantage or challenge we can make up to it very quickly and easily.
There is always an opportunity to develop ourselves and we should consider this
as one of them.
These are implicit; the manager does not come and tell you
how beneficial will be SRP or OCP, may be sometime but it is our responsibility
to create that SOLID culture and get some benefit out of it. In principle it is
easy to write a blog or to suggest these kind of cultural shifts, however end
of the day it is up to the management and the product team to decide which way
to go, but from my point of view we should keep the management team away from this
and start programming today in a way that all best practices are examined and
followed.


Comments
Post a Comment