Sometime when I see people around me in office, I really get
curious and puzzled about their approach to problem and their behaviors. It might sound very specific to the
environment which I'm in. may not be true for an environment where people have
experienced this issues before and implemented a system where these problems
are not so common.
I wrote my first computer program in year 1992. It was in
GWBASIC and operating system was DOS. It was a very simple operating system and
it was very easy to write/edit programs using simple editor called EDIT.After few years I started working on UNIX platform. When I
came to UNIX world, I found that working in UNIX world is bit different and I
need to get used to some awkward tools. One such awkward tool was VI editor. I
found that learning and using this editor is bit difficult. But very soon realize
that if i don’t know how to use this editor, I’m not a good programmer, I’m a
junk guyJ. Strange
reasoning!!!!
I was not that much sensible at that time the way I’m trying to sound
today, So to prove myself, I put my effort and learned it, but frankly
speaking, I never liked this editor J
There was no personal preference for not liking it. When I was trying to learn this editor, what
I found is that I’m wasting my energy in wrong direction. I have a problem and
I want to write code to solve this problem but learning this tool itself is
becoming a bottleneck for executing things running in my mind. Then I asked a simple
question to myself,” is learning this editor is my goal?” And answer was Big No. My goal is to solve a
problem using computer program and I want to use a tool which is easy to use J
Later on I realized there is more to come. There are not
just awkward tools but awkward people and awkward ways of working also.
C is really good programming language but each problem has
his own requirement and it is not necessary that C fits for it. I love
programming in C but I’m not fanatic about it. But I meet people who were anytime
ready to argue how other languages are inferior to C.
Another funny thing was indentation of code in C. I like writing
code with opening and closing bracket indented in same column on a new line. This
keeps code readable and one can clearly identify different blocks in code. But
there is some strange convention of putting opening bracket on same line rather
than on newline. This is more to reduce number of lines of code, so that you
can see more code at a glance. Each convention has some advantages and
disadvantage but funny thing is, if you don’t follow the later convention you
are not considered as a good and experienced programmer J!!!
There were people who are wizards of these awkward tools and
awkward ways of working and there are people who are following and supporting
these people. I was always curious and wanted to know what is running in these
peoples mind, what they want, why they enforce this junk to everyone and why
they behave like that.
I could figure out certain things, based on that what I have
understood is there are few categories.
The real fighters:
The absence of a tool drove this people
to invent it and they came up with a working but hard to use tool. But with time these tools have become their identity
and way of their survival. Now they are the real fanatic force insisting use of
these tools.
The Followers:
These are the people who are fascinated by
the technology, tools and attitude of real fighters. They blindly follow them and
there is no reasoning behind it. Even if they have some reasoning it is just to
show off that they are one among the real fighters J
The Real user:
This is the poor guy who really wants to
solve a problem and in need of a tool. But once he is stuck with one, he cannot
go back because of many business and personal reasons J
We Are part of evolving world and with time we also need to
evolve and same is true for the tools also. If a tool is so difficult to use
and learn, our focus from actual problem is lost and we end up doing some other
work!!!