Saturday, February 27, 2010

Computer Science: Getting the Basics Right - Part I

I was having a chat the other day with a really good friend of mine who has done his Bachelors and Masters in Computer Science from the same universities as me, I am his junior and also have had the pleasure of working in the same Software company as him. In this chat he said that using .NET controls, fetching data from tables, formating the fetched data is not really the work of Computer Scientists, the real work for us is Research.

After three years in Software Development and being a Senior Software Engineer (one of the best that I have came across) I have to admit he is right. This chat made me some what rest less as well and began searching and exploring as to what Computer Science really is? And also what should be the mind set of person having a degree in Computer Science?

The whole idea behind this series of articles is the get confusions and mis-conceptions out of not only my mind but the minds of others particularly from the minds of young CS graduates. The matter discussed in this part has been taken from Episode 1: Getting Right the Basics.

What is Computer Science?
  • Its not programming, Programming does have a fair share, but still you can not give it more than its actual worth.
  • Its not Quality Assurance, no offence to QA people we love you and can not live with out you.
  • Computer Science us the study of Algorithms, their formal and Mathematical Properties like: correctness, Cost, Efficiency, Limits, their Hardware Realizations like: Computer Design, their Linguistic Realizations like: Programming Languages Theory, thier Applications like: Network Design, Bio-informatics, Ocean Modeling, etc.
  • The above is the definition of Computer Science as given by two great researchers of Computer Science: Gibbs and Tucker.
  • The above definition is the most clear and concise definition thats presentable and should be understandable to one and all.
  • If you have a degree in Computer Science, the algorithms is the name of the game.
Since now we know what Computer Science REALLY is lets explore it TOGETHER.