An Insight on Existing Learning Material

Learn about the different approaches authors use to design courses.

Today, there are plenty of courses available online. Readers with any level of technical knowledge can easily find the appropriate material for their skills and experience. So, why can these existing programming courses still not be good enough for beginners? Usually, this is because authors design courses that focus too much on either of the following: technology-specific theory or coding examples.

Technology-specific theory

Many beginner courses focus on a specific language or technology. They then consider the chosen theme in detail. In such cases, course authors often do not pay enough attention to practical exercises. A beginner programmer does not need such a high volume of specialized knowledge. Thus, courses that focus on theory alone may give beginners the wrong idea of programming.

Language and technology-specific theory

It’s difficult to start learning to program by diving straight into tricky, technical details of a specific technology. Instead, it is best if you first understand programming basics. Then, you can easily resolve any issues that may arise while you put your knowledge into practice. After learning the basics, technical details about specific technology can help you with such issues. You can often use your knowledge of these details as a reference manual when specific practical questions arise once you’re a little more experienced.

Coding examples

Another type of course teaches you a programming language just through examples. When you study them, you may make quick progress. However, there is one problem here: many readers do not find the motivation to work with only examples. This is because the author requires learners to read and understand a lot of code. Often, such code demonstrates a specific principle and does not have practical use-cases. Examples like that are not attractive to many learners.

Programming language-specific approach

General-purpose languages

Modern general-purpose languages—those designed to be used in a variety of contexts and for many purposes—are complex. Therefore, you should know a lot about a language before you deal with real-life tasks. Here, you can meet a vicious circle. Basic examples often lose the learner’s interest because they don’t seem practical, but useful, real-life programs are too difficult for them to fully understand.

General-purpose complexity