Skip to main content

'IT' Happened to Me - Part 5

Computer programming is great fun. I enjoy it so much that even now, I spent countless hours trying to solve a particular programming problem, get frustrated when I am not able to understand or implement something in spite of all the possible efforts, and have a very peaceful sleep on the occasions when the challenge is surmounted. Sometimes, I actually feel that I would have been completely lost had computer programming not been invented. What else would I have done?

Every few years, there is a theory that computer programming is dead, and that we need not write programs anymore. This is because computer programs themselves would write programs. So, why should humans write programs? However, in spite of code automation in many areas, we still need solid, skillful programmers. With the developments in tools and technologies, I do not know how long this would last. But I truly hope that at least in my lifetime, the joy of writing programs and constantly learning something new should not be taken away from us!

How did I start enjoy writing computer programs? As I mentioned in the previous blog, when I learnt GW-BASIC, I did not enjoy it that much. I found it quite novel and interesting, but that was the end of it. I did not feel like spending hours in front of the computer to solve various challenges by writing programs in BASIC.

This changed when I came across a language that I even now consider magical: COBOL. This is perhaps the most graceful programming language that I have ever learnt. If I am given the choice of watching just one batsman play, I would struggle to decide between David Gower, Mohammad Azharuddin, VVS Laxman, and these days, perhaps Rohit Sharma. Many batsmen have scored more runs, but the sheer beauty of these magicians is unmatched. Similarly, in the programming world, I would choose COBOL without even blinking the eye. COBOL wins hands down. It is just too sweet.

Why COBOL? Anyone who knows basic English can write COBOL programs with some training. (Well, somebody could argue that that is a problem!). It has no fearful syntaxes, threatening keywords, unending complexity. It just flows like a beautiful and yet casual flick from Azhar's bat. Want a proof? Suppose we wish to add two variables A and B and store the results in a third variable called as C. How do we express this in COBOL?

ADD A, B GIVING C.

Or suppose we have a customer data file, which we want to read sequentially in our code. Here comes COBOL for the file declaration:

SELECT customer-file ASSIGN TO DISK

ORGANIZATION IS SEQUENTIAL

ACCESS MODE IS SEQUENTIAL.

COBOL programs are so simple to write. Yet, that does not make COBOL trivial. It is an immensely powerful language. No wonder for so many years, the backbone of all Mainframe computer systems was COBOL. After learning COBOL, I have learned so many other languages such as C, C++, C#, Java, JavaScript, Python, and Perl. However, it is COBOL that stands out even today. Although I have not written a single program in COBOL for what must have been over 15 years, you can wake me up from deep sleep even today, and I can write a COBOL program as per your requirements that would compile and run without a single error. That is how madly I felt in love with COBOL.

I worked hard, very hard, on COBOL. I honed my skills by creating imaginary problems and writing code for them. I did several dummy projects in COBOL. Those days were also good for COBOL. Mainframe computers were in heavy use in complex systems. The dreaded Y2K problem was threatening to cause havoc. There was a dire need for people knowing COBOL (and related Mainframe skills). I did not know all this while learning COBOL, but after I learned it, the situation was very conducive to my COBOL skills. This was an added bonus. I learned COBOL just because I enjoyed it. However, when that soon turned into a much-wanted skill, my fortunes changed dramatically. But more about that later.

Some people have this view that if you learn one programming language, that is enough. It is because in the other programming languages, it is just the syntax, that is different. The basic concepts remain the same. While I also subscribe to this theory to a certain extent, I do not fully endorse it. Only someone who keeps learning new programming languages would understand what I mean. This is because, on the surface, someone may casually remark 'I know Java and I know that in Python also, we have conditional statements, loops, file handling, etc.'. Such statements are routinely made, but I think they do not reflect the full story. While programming languages are similar to each other in some respects, they are also vastly different from each other in many other aspects. It is just not about learning a new syntax. That is superficial. Only when you take up some problem statements and try solving them by writing programs in the concerned programming language, you actually start understanding nuances of the language. That is also when you start learning the language in the true sense.

COBOL taught me the basics of all this. I was spending hours writing COBOL code. I did not know where that would take me. But it did not matter. It was giving me pure joy. That was enough!

And soon, I was thrilled by another experience. A programming language with a strange name was round the corner. It mesmerized me further. It was, of course, the C programming language. But more about it next time …

Comments

Popular posts from this blog

My CV

Head - Learning and Development at RIA Advisory, Author and Visiting Faculty of Computer Science at various colleges at Symbiosis and Pune University MBA Department. Overall Corporate and Teaching experience of over 25 years. 1. Completed MBA after BSc (Statistics) 2. Earlier worked in Information Technology (IT) industry - Handled various responsibilities at Syntel, American Express, Deutsche Bank, L&T Infotech, i-flex Solutions (now called as Oracle Financial Services Software Limited) and RIA Advisory 3. Developed many technology solutions and managed several large projects/customer engagements across the globe 4. Visiting lecturer for many IT subjects at Symbiosis and many Pune University colleges for more than 20 years 5. Author of 75 books: 30 in English and 45 in Marathi - Many books on computer technology for students as well as IT professionals, for topics such as Network Security, Web Technology, Operating Systems, Database Management, Data Communications, C++ etc - Many