I want to be a programmer by pursuing computer languages such as Cobol. Which electives should I choose in M. Tech (Computer Science) in order to become a programmer?
Computer programming is defined as creating a sequence of instructions to enable the computer to do a specific task. It is creating a programme that enables the computer to reason logically and perform those instructions.
To learn programming languages one need not actually pursue a M. Tech course necessarily. These languages can be picked up by anybody who has a good basics in mathematics, statistics and can understand the logic of these languages. Why these programmes are called languages is that they like other human languages have a grammar of their own. The syntax forms the basis of these languages. One who can master the syntax can expect to be a good programmer. But no rule prevents you from getting a M. Tech degree in computer Science if you are interested.
“Computer science education cannot make anybody an expert programmer any more than studying brushes and pigment can make somebody an expert painter,” says Eric Raymond, author of The New Hacker's Dictionary and a top programmer at Google. He just went through high school.
The questions that arise for anybody who is interested in learning computer programming is – where should I start? Which languages to learn? In return you will have to ask yourself the question – what is my aim of learning? Is it for hobby or to build a career? If it is for building a career than you have to consider many aspects such as – which is in demand, which language is widely used or what is the future of a particular language.
“Learn at least half-a-dozen programming languages. Include one language that supports class abstractions (like Java or C++), one that supports functional abstraction (like Lisp or ML), one that supports syntactic abstraction (like Lisp), one that supports declarative specifications (like Prolog or C++ templates), one that supports co-routines (like Icon or Scheme), and one that supports parallelism (like Sisal),” says Peter Norvig. And he happens to be the Director of Research at Google. So you have there can be no second opinion.
Visit his web site www.norvig.com/21-days.html to get the best insight available on learning programming languages. Be sure to look at his bio by going to www.norvig.com/bio.html where you will come to know that he was previously head of Computational Sciences at NASA and a faculty member at USC and Berkeley.
Many universities in India offer M. Tech in Computer Science. In the course you will learn more of science than programming. Subjects such as theory of computation, object-oriented analysis and design, data structures, algorithms, database management systems, systems programming, compiler design, operating systems, embedded systems, computer networks and artificial intelligence will be given priority. You will be left with little time to master programming skills. So you will have start during graduation to better understand these languages and be able to write programmes that work.
Visit these web sites to get more information about languages, tutorials and tips to develop programming skills
(Queries for this column can be sent to firstname.lastname@example.org)