📜 ⬆️ ⬇️

Method of teaching programming: “note-taking”

This article is for those who are thinking or just started learning programming. In it, I would like to share my chosen method of studying programming, which consists in taking note of the basic principles. The method has one major drawback - time consuming. However, he has some advantages.

Prehistory


To the questions "how to study programming independently", I usually met two main answers:
1. Study the theory, solving examples on the topic covered;
2. Try to implement a project while studying the selected programming language.

The second method did not attract me, so I, like many, probably, initially tried to “learn” from the first.

More specifically, I started learning PHP by looking at Lynda.com translations of Vedouracs. I was delighted. Kevin Skogland very quickly brings up to date. I enthusiastically repeated everything I saw, and the puzzle of the “art of web programming” was very easy to form in my head, even at the most primitive level.
')
Further, for obvious reasons, I decided to dive into MySQL. This time it was a good tutorial (book in electronic form). The principle is the same: I read -> I repeated what I saw myself (or I invented my simple example). Upon completion of his study of primitive techniques in the console MySQL, I could write "with my eyes closed."

I remember that long-awaited moment when I finally decided to organize my “baptism of fire” and test my PHP / MySQL skill by creating an admin for database management, which made it possible to perform basic manipulations (create / delete base, fill, edit, etc.). ). And at that very moment I was shocked. I almost completely forgot PHP. How so? Now all over again? In the second round to watch all the lectures on PHP? Let us suppose. And what will happen when I do this? Will I forget MySQL?

What is good about note taking?


It was an obvious fact. Having performed one, five, ten times some kind of programming action, but then for a long time without returning to it because of learning other languages ​​or delving into the current one, the beginner most likely will not be able to remember it once and for all.

Then what is more profitable? Spend time taking notes in the course of studying or searching for information every time you need anything?

I came to the following conclusion, which, it seems to me, is more relevant to beginners: it is better to write notes if you are learning some basic principles (for example, from the self-instruction manual) that are readily chewed from this source. After all, if then they are forgotten, you will need to remember the source, find the page (in the book), time (in the video lesson) and re-read the material.

I also want to immediately make a reservation that this rule does not apply , for example, to built-in functions, of which there is a huge amount and which are much more sensible to look for in the documentation for the language, where, as a rule, there is a description and examples. You can write down perhaps the main ones that you will regularly use during your studies.

To outline is not just to copy.


The abstract in this case does not imply the principle “Ctrl + C -> Ctrl + V”, but the observance of the following procedure:
1. Read the material (paragraph, chapter, description of something);
2. If necessary, very briefly write out the essence, which you yourself will then be able to understand (this will not leave you any choice, except to sort out the question) ;
3. Write sample code (if needed).

Advantages and disadvantages


Using this method for some time, I can definitely say that the great disadvantage is the need to structure the information into sections, as well as draw it out. But at the same time, it is also a plus, because as a result, it is very well remembered what information and where you brought it. And after reading one sentence, written in your own words, the whole picture opens immediately. There is no need to look for where in the book or, God forbid, a video lesson, the right question was raised.

In confirmation of this, I can give a banal example, when data on recovering a MySQL database dump with information about cities at work came in handy (the position is not related to programming).

I remembered looking at the MySQL lectures of the Specialist company, I decided to lecture this moment, because it seemed to me rather confusing. I spent time taking notes. But if necessary, this task was solved in 30 seconds. And how much time will be needed each time I return to this task after a long time?

Conclusion


Nowadays, many are trying to learn programming. A small part manages to start working in this area, even less people become specialists. I'm just trying at the moment. And I hope that my small achievements will help other beginners to improve the quality of training.

Source: https://habr.com/ru/post/259637/


All Articles