Back to main
Why use C?
Why not: C sucks
The C language is the oldest widely-used programming language; it
was developed in 1972.
It was not designed for ease-of-use or suitability for teaching.
It was not designed for modern computers -- C gives (and forces)
the programmer to control low-level features of the computer.
The language follows the philosophy of the Unix operating system:
stdin/stdout, everything is a file, etc.
C makes it very easy to write unsecure code
scanf("%s", name); I'm looking at you!).
Almost all universities and colleges have switched to java,
python, or scheme for their introductory programming courses.
So why use it?
Given the disadvantages of C, why are we learning it?
Because C is so old, there are many, many software libraries which
use it -- particularly libraries for scientific and engineering
processes. Learning C will enable you to use and understand this
Due to its minimalist roots, C produces very small executables.
This doesn't matter for desktop applications, but it is absolutely
vital for writing software for "embedded systems" such as remote
control devices and fuel injection systems.
C forces the programmer to think about what's happening on the
hardware level. For most programmers, this is a disadvantage, but
as electrical engineers, this turns into a pedagogical advantage.
Unless otherwise noted, all materials on these pages
are licenced under a Creative