previously touched upon automation here, and here. I am forced to revisit the topic again
because now things are becoming a little closer to comfort. Two weeks ago, a
friend of mine who works as the lead in the database team were discussing about
tech in general and he told me that they have received official emails from HR
elaborating upon the effects of Automation. Then, the same thing with my own
office, and other places too. Till only a few weeks, this was all just rumors
and news clips, but now it seems like this thing is really happening.
In a way,
it does not take a super genius to realize that this is happening. For five
years now (since I became an independent consultant) I have been cajoling, requesting
and begging any and all students and professionals alike that run into me to
think of this day arriving. Some (may be 1 out of a 100) took my advice, but
even in those 1’s who took my advice, very few actually followed through on the
advice. In some ways, it is a bitter sweet moment for me because my predictions
and forecasting is coming true (sweet) but so many of these folks who had 5
years to prepare will soon be unemployed, or continue to remain unemployed (the
bitter part), at least in their chosen field of career i.e. software. Sure,
many of them will have to migrate horizontally to unrelated industries
(because, let’s face it, jobs are always available for skilled folks) which is
sort of a bummer.
tasks have always been under threat by machines since the invention of
machines. I remember watching this old Hindi movie Sholay, where there was one
guy who’s sole job was to put coal into the coal fire room. Of course, later
trains replaced this manual fueling with automatic fueling, so that guy’s job
was doomed. Horses were replaced by cars, so all the horses lost their jobs.
Traffic signal systems took over the jobs of many traffic signal folks. Closer
at home, (and brag shamelessly) I am now working on an assignment which only 2
years ago would be done by at least 15 developers.
This is not
to say that I am so awesome. It only goes to say that code automation has
improved so much, that more can be done by less. I mean, entire trains can be
manned and operated by no more than two train folks, I am sure. Testing is
become automated like crazy. There are websites that allow interested business
folks to build entire solutions (as long as they don’t need super serious
customization and are happy with the available default options). On an
individual level, I manage my own domain, servers, databases, backup systems,
email service, all thanks to Microsoft Azure, with surprising ease. Tomorrow,
if I should end up building a company, I doubt if I will have a dedicated IT
team. I will simply manage it myself (on my smartphone, no less!), and spend
zero money on either hardware or software. Again, the magic of automation!
ago, I would have to spend money on everything from hardware to software to air
conditioning and some guy to manage all this. Of course, there have always been
managed IT solutions but they come with their own baggage like annual
commitments, fixed cost operations and of course, limited flexibility. I mean,
let’s say I sign a contract for 3 mail boxes, I would have to do it for a year.
Now, if I layoff 2 people the next day of signing the contract, I am stuck with
the bill for a year. With the cloud email service, I use the admin panel and
simply cancel the extra email box. At most, I may have to pay for the current
month and be done with it. Later, if 2 more employees should be hired, it takes
a few minutes at most to create them new email addresses.
The more I
think about it, the more I can see the appeal of automation, from a business
perspective. Isn’t this what is already happening with online services? If one
where to look at non-online stuff, I would rather shop at a super market (where
I can pick items at my own leisure) than at a mom and pop store where I provide
a list of items and the shopkeeper picks up the items for me. One reason I
prefer booking tickets online is because I don’t want to deal with the ticket
guy or girl who slow down the whole process, what with the time it takes for
them to print the ticket out, look for the change, chit chat with their
co-workers and being forced to smile and all that. Of course, getting them to
give me exact seats I want (even the movie hall is empty) can be a hassle
essential idea (while detaching myself from related ethical concepts) is to
remove the human element or reduce the human element entirely. For instance,
many movie halls have now begun to allow patrons to simply flash the online
ticket directly from their smartphones so that even that small step of
‘collecting tickets’ is eliminated. Does it mean that we should not interact
with humans at all? I am not going to ask the ethical questions related to
that, so I won’t answer the question here, nor is this the place to do the
same. Of course, better people, and more
influential than me have already asked such questions. The banking industry
asked and answered that questions when they replaced bank tellers with ATMs.
The government asked and answered the question when they replaced traffic
signal folks with automated traffic signals. Large IT organizations will now
have to ask and answer similar questions as ever more software related tasks are
taken over by automated engines.
As with the
earlier blog posts, the solution to any challenge is to see what is being
removed and what could be replaced. The march of technology has always been
about allowing others to up their game. When cars started replacing horse
carriages, the same folks who were driving the horse upped their game by
learning how to drive the car. Horses had limited range which reduced the
distance that people travelled. Once cars came, the distances increased. Costs
became lower, so more people could afford it. Same thing with ATMs and Traffic
Signals. People were given an opportunity to do more in their lives. They no
longer had to do a menial task of checking the books and collecting cash/giving
cash. They could do more with their super awesome brains. Let’s never forget.
Our brains are awesome! When the brain starts doing stuff, more things happen,
and the economy becomes bigger, creating even more jobs. Awesomeness leads to
even more awesomeness.
I have been preparing for it for the last 5 years. Unless my preparation is
fatal, I would like to think I am already equipped for an automated world. I
have believed that what I do (the work of a developer, and I am only halfway
decent) and what we developers do is integrate systems. No matter what project
I have working, most of the time is spent integrating different systems.
beloved Project TD for instance. Although I am
developing it, the project itself depends on all sorts of external, open source
projects for everything. The IT part (servers and related stuff) is also
automated. I don’t have an IT team managing anything. I am managing it with no
input from any third party. Project TD is already doing extensive automation of
so many things. Visual Studio already does so many things automatically for me.
As have mentioned many times in the posts related to Project TD, I am harnessing
every possible iota of automation so that I myself can build the entire thing with
little or zero outside assistance.
words, although I am technically a developer, I am spending all my work hours, integrating
one system with other. In other words, I am an integrator who also programs and
codes and develops when the occasion calls for it. To some extent, integration
is perhaps that one thing, automation is yet to do. Automation depends on the
assumption that a given task in repetitive. Integration is rarely repetitive.
For instance, the process of buying a movie ticket is repetitive (once the
movie is chosen, of course) but the selection of the food items during the
interval is not. I might choose to combine samosas with extra sauce or go with
chutney and coke. Alternatively, I could pick samosas, no sauce or chutney, and
opt for tea to go with it.
anytime there is a matter of choice, a human must be involved. Anytime there is
repetition, automation will take over. Developers who are aware this will equip
themselves to make sure that their skills are aligned on the ‘choice’ part of
the software development. Those who refuse to see this (either by design i.e.
denial or accident i.e. they are unaware, not being educated) … I don’t know.
me on twitter, facebook and instagram for
more updates. Thanks!