This book introduces basic programming concepts using the C programming language. C is not typically thought of as a beginner language. However, its syntax is used by other more modern language so learning it is a good way to get started. In any case the most important thing to remember about learning to program is not about learning C per se. It is about learning how to translate a real world problem into the language of a computer. C just happens to be the language of this book.
I have written notes on this subject matter before. One key differentiation with this set of notes from my previous notes, will be that these notes will be problems based. That is, I will introduce some problems and then show how they can be solved. The solution will introduce ideas about C.
Throughout this book there will be links to videos related to the topic being discussed. These videos are usually short (I try to keep it under 5 min). They are usually summarizing the topic or going over a problem in video form. The notes will usually be a bit more thorough.
Lastly, I am writing this book as a supplement for course material for IPC144 at Seneca College. Thus, there may be sections that a non-Seneca reader could skip. The sections that are Seneca specific will have an astericks(*) in the title. These will include topics such as setting up Seneca specific development environments