Introduction
Why learn the C language?
Because the C language is like Latin – it is inite and has not changed for years. C is tight and spare, and in the current economic climate we will need a host of young people who know C to keep existing critical systems running.
C is built right into the core of Linux and Unix. he design idea behind Unix was to write an operating system in C so all you needed to port it to a new architecture was a C compiler. Linux is essentially the success story of a series of earlier attempts to make a PC version of Unix.
Students paradoxically arrive at colleges knowing less about computing than they did ten years ago as programming is seen as too diicult for schools to teach. Meanwhile the body of knowledge expected of a competent IT professional inexorably doubles every few years.
Java is commonly taught as a irst language but can cause student confusion as it is in constant lux, is very abstract and powerful, and has become too big with too many diferent ways to do the same thing. It also is a bit “safe” and insulates students from scary experiences, like driving with air-bags and listening to headphones so you take less care. he core activity of writing procedural code within methods seems impenetrable to those who start from classes and objects.
So where do we start? A sensible place is “at the beginning” and C is as close as most of us will ever need to go unless we are becoming hardware designers. Even for these students to start at C and go further down into the machine is a good idea.
A knowledge of C will give you deep knowledge of what is going on beneath the surface of higher-level languages like Java. he syntax of C pretty-well guarantees you will easily understand other languages that came aterwards like C++, Java, Javascript, and C#.