Main Content

Learning to Program in C

Archive - Originally posted on "The Horse's Mouth" - 2008-12-10 22:04:45 - Graham Ellis

From my inbox

Q: I need to learn to program in the C language, but have never programmed before. Can you help me?

And my outbox (modified to make the answer generally applicable)

A: Yes - but my answer will be a long one ...

Looking back a number of years, C was very much a mainstream language that was widely taught, and it was often the first language that people learned, so that there was a wide variety of courses available, including some styled as "Learning to program in C" which were intended for those with no prior programming experience. These days, however, C has become more of a niche. Other languages have come along, such as Perl and PHP, Java and Python, and similar which are much more efficient in terms of programmer's time taken to do a particular task, and they have rather taken over. Better to write in a morning in Perl what would take you a week in C.

However, Perl itself (and these other languages) are actually written in C, so the language itself hasn't gone away at all and remains a critical part of modern computing. And there are some applications - such as embedded systems / specialist devices / high throughput and real time code for which the other high(er) level languages are not applicable. In other words, C won't and can't die and still has a vital place for a certain segment of specialist users. So these days, you'll find that most of the people who come newly to C will have already programmed in other languages, and they are the people that most providers of C courses are now catering for.

As you may have seen from our web site, we provide training in a number of languages, and the question "but which course can I take as I've never programmed before" is NOT a new one. Yet by providing a second series of courses on each of the more niche topics, we would thin out course sizes so that they would be below a minimum practical number of delegates to make a viable business out of it. However, I can offer you a solution.

The next C programming course - WITH pre-requisites - runs on 19th and 20th January 2009. I will be running extra days on 17th and 18th (yes, Saturday and Sunday) to cover off many of the basics of programming, with particular reference to C, to prepare you for the Monday / Tuesday course. You will be one of very few on those 2 extra days, and we could run the Saturday starting at lunchtime, and an extended day on the Sunday, so that at least you wouldn't have to travel down on the Friday night. For pricing, we would treat it as a 4 day course - so you would be looking at 1100 pounds + VAT (or 1340 + VAT if you include a hotel room).

I *have* run "learning to program in ....." courses before, and indeed have various note modules that I would use for the extra two days. I'm confident that we could do a good job for you is this proposal suits. I will caution you that many people take easily to programming, but others find it quite a daunting task, so I can't offer you a guarantee that you'll make a great programmer as a result of the course. I can guarantee that you'll have a very effective start, though. And you'll need to practise and learn more even after the course ... programmers are always learning even years and years "in" - but that learning can be from books, the web and practical experience once you're over the initial hurdle.

If you come back to this article in the archives, and have missed the dates quoted, you might like to note that we run the C Programming Course mentioned a number of times through the year. I can't always extend back to the two prior days, but sometimes I can ... if you're interested, please ask!