Wednesday, July 15, 2009

Chapter 01: Introduction to Programming Languages


What is this?

There are million books for programming languages. This is not just another book. It's almost like a starter you use to have before the main course. My primary objective will be promoting you to a position from where you can master any programming language on your own. Getting a start is what everyone wanted & it's exactly what I am gonna give you. I will give my best to mould this mini article as simple & interesting as possible. 

Happy learning!

Who are you?

All the videos in this website are for anyone interested in learning technology. They are made in a simpler manner, and anyone such as school children, college students, graduates, or teachers can learn from the  videos here.

Lets Get Started...

A Building can be strong as a rock. Can be 10 storey's or 100 storey's. But if the basement is not built properly, then everything is gone. So before jumping in to learning any programming language, there is something you should know.

Computer

You have seen a computer but what actually you think it is?
This is what Wikipedia says in one line.
"A computer is a machine that manipulates data according to a set of instructions".
My first impression, it's a wonderful entertainment device. I love it. From "Dave" to "GTA", I've played all the games. A Home Theatre. Music System. With my 4.1 Frontech speakers, it has given me a wonderful movie experience. A box used to kill ample time with chatting, Facebook, Orkut, Twitter, You tube and all.

This is what I think it is.
"A computer is a Total Idiot which does almost anything we order it to, anytime, any number of times."
I tag it an idiot because it never thinks before doing a task. I ask you to jump in the well. Will you do it? You will think of the after effects. But the computer never thinks about anything. It just does what you ask it to.

Life before/after computer?

At this moment, think of a life without a computer. It is used everywhere. Places like bank, media, travel, automobiles, entertainment, shopping. Almost everywhere you see it. Now I would like to share few examples about how computers supports the business. Here is a very simple, small scenario.
A billing system in a provisional store. Without one, the store keeper use to write down the list of items in a paper, adds them up to finally get your bill. Now the billing system not only gives the bill in a minute but also it keeps track of the total sales for the day, month & year too. Even it will order the wholesaler for more goods whenever a particular item is sold out.
My friend, Sri vallabha is a mechanical engineer by graduation. But at work he spends most of his time with a computer. You might wonder what does a mechanical engineer have to do with a computer. This is what he does.
Sri uses an engine automation software using which he can ‘virtually’ design an engine & test it’s output & performance. He configures this ‘virtual’ engine with varying parameters such as torque, size, bhp, diameter etc.and to get a perfect design.
Without computers and design software, these are once designed and manufactured manually. To get the perfect design, we need to change the design parameters & manufacture the engine multiple number of times. Computer design software helped avoid such waste of time and money. Now we know how much profit this business has made. 

Few other examples are…
  • The ATM you use every day
  • The online shopping you do with your credit card
  • Automation of Rocket launch.
  • The visual effects & sound effects in movies.
So now you have an idea of what a computer can do & it's now time we move further into technology.

Main Categories:

There are two main categories when it comes to computer.
  • Hardware
  • Software
Let's quickly find out what are these.

Hardware

Knowing this is a less priority for our goal on learning a programming language but still you should be able to distinguish between hardware & software.
In my understanding, whatever part of the computer you can see, touch & feel, take a baseball bat & whack! it or lift it and throw out of the window are called hardwares.
Books describe it as the "Physical components of the computer". Examples are your key board, mouse, monitor, speakers and all. Inside your CPU (Central Processing Unit) Box, there are something that is worth knowing. If you are eager to see how they look like, just click on the respective names. 
  • Mother Board: An electronic board which is considered as the heart of the computer.
  • Processor: A Square-Box like device which is fit into the mother board. Intel & AMD are famous manufacturers of those.
  • RAM: Abbreviation of Random Access Memory. A small chip that serves as a temporary memory which is also fit into the mother board.
  • HDD: Hard Disk Drive or simply Hard Disk is the permanent storage device connected to the mother board through a cable (or bus, they call it technically).

Software

You might have come across this word. Definitely. Still, let me try to put it simple. Softwares are invisible components of a computer. They are logical components and there is no chance of banging (?!) them with baseball bats.

In general, a software is a tool which is added inside a computer to perform a specific task.

Technically,
A software is a single or set of programs. A program is a single or, most often, a set of instructions. An instruction can be any basic mathematical instruction like add or subtract or even something more complicated. So a set of programs written to set up a Billing system is a software, and a small, simple,  program to add two numbers is also a software. A software simplifies something. It makes life beautiful. It improves the quality of life. It solves a purpose, digitally.

Types of Software

Basically, there are two types of software. I will just say what they are with an example.
You know that software is a tool which is included inside a computer to perform a specific task.

Application Software

If the tool is performing a task for the benefit of the user, then it is an application software.

Examples
Windows Media Player: Just to hear song, we use it.
Solitare Game: To kill some time, relax & enjoy, we play this famous game.
Notepad: A simple applicaion Used to compose text.
Internet Explorer: Used to browse websites.
NOTE: Though solitare is a game, still it's actually an application software.

TIP:
Internet Explorer comes under the category of Application Softwares called "Browsers". A Browser is an application used to communicate with the Web. Other famous browsers are Mozilla, Firefox, Netscape, Google Chrome. So these examples will give you a clear idea of what an application software is. 
Bottom-line is,
The computer can perfectly function without an application software.

System Software

If the tool is performing a task for the benefit of the system, then it is a system software. These softwares are essential for the computer to function properly. If they aren't added to the computer, or if not working properly, then the chances are you cannot type in notepad, or hear music in Windows Media Player or open Internet Explorer.

Examples:
Operating System: The primary, all important sofware that communicates with hardware.
Boot loader: When you press the power button of your computer, this is the first software that starts to do it's work.

Operating System: What & Why?


Since I said it is "the primary, all important software", you must have a strong understanding of what an Operating System (OS) is & why is it so important to the computer.

A pretty straight simple question.
You press the "A" key in your keyboard. An "A" appears on your monitor. HOW?
Who is doing this job?
Answer is, "Operating System".

Assume, you have bought a brand new, high-end, costly computer at home. Everything is ready. A 29" Monitor, 9.1 Surround speakers, 1 TB Hard disk (1024 GB) & a DVD of your all-time favorite movie.

Now, if you don't have an Operating System installed on your computer, then everything is waste. All the million dollar worth hardwares are just like dolls. Because whatever hardwares you have, it is the O.S, the system software that interacts with YOU & the computer hardware. It understands your request & directs the hardwares inside the CPU box to get it done. Like a supervisor who ensures the user (it's you) requests are completed.Here are few examples of operating systems.

Microsoft created a series of OS like, Windows 98, Windows XP, Windows Vista, Windows 7. Linux is a Free OS and few of then are RedHat Linux, Mandrake Linux, Suse Linux, Ubuntu Linux. Unix, Mac OS from Apple (manufacturer of the famous iPod, iPhone) and Solaris OS from Sun Micro systems. 

Programming Languages

We saw about Software, types, examples just now.
So a programming language is like a tool using which we can write programs.
Programs means, as I said, set of instructions. If you ask me what type of instructions? Why instructions ? I'm replying you. "Buy me a Cheese burger, less salt, Chicken Pizza & a Schezwan fried rice. more spicy."

Can I ask this to a computer? Will it be capable of understanding my language? Unfortunately, it can't. At least for now, 10 July, 2009, There isn't any intelligent computer built yet capable of understanding what a human being talks. 

So now you know why we write programs. "Programming Language" is a 'language' which can be understood well by computers. As the computers cannot understand our language (English or Tamil or French) we are left with only one option. Learn the computers language & then talk to it. When I say 'talking', it's actually not a voice but text. This text is called a program.

We end chapter 01 with those 3-4 pages & I hope you are clear with Computer, Hardware, Software, their Types, Operating system, and What, and Why of Programming languages.

No comments:

Post a Comment

Our Google Group

Our Facebook Group