Most recently, I saw a post on Habré
How young we were , where the author recalled his programming experience and sales of his software. I was always interested in the question of how people are attached to programming. Speech in this case is not about young people who go to the institutes to study as a programmer.
In my life there were two unsuccessful attempts to learn how to program - on Mikroshe and ZX Spectrum. Naturally, those computers were mainly used only for games. But I was always interested in the question, but how to write the game yourself? It seems that Mikroshe was given listings of some games. But the lack of a normal description for the code killed my curiosity. So the first attempt to become a programmer was unsuccessful.
The second attempt to join the programming was made during the reign of the ZX Spectrum. I remember that once I came across information on how to write programs in Basic. Eager to write at least some game, I eagerly pounced on stuffing code. If my memory serves me, the guide suggested drawing a Russian flag (apparently, it was the beginning of the 90s). I honestly typed a few lines of code and a flag actually appeared on my screen. But I have not experienced any joy. It was torture. Not owning a ten-finger blind printing method, writing a simple code took a lot of time. So I did not become a programmer a second time.
And only the third attempt to learn how to program became successful. And it happened quite by accident. Constantly buying pirated games (and there were no others) in tents near the metro (Warcraft, Duke Nukem, Doom, etc.), I once stopped my eyes on a Visual Basic 5.0 disc. I bought the disc without even knowing what kind of language it is, what other programming languages are there. Just bought a disc like a regular toy. Just in case, I still went to the store to look at the available literature. In my opinion, in those years, all computer literature fit on one shelf (or half-shelf) of a bookstore. I took the first book I got and brought it home. Having installed VB 5.0 somehow, I opened the book and began to write my first Hello, World, I had it in Russian. Hello, world! I remember well that even when I wrote this first line of code, I did not understand why I was doing this and what the line should do in general. I created my first program for the book, probably more than an hour. Finally, putting the book aside, I pressed F5 to start the program. And then I experienced shock and delight at the same time. A real program window appeared on the screen, no different from standard Windows programs Notepad, Calculator, etc. I realized that I can change this text at will. I erased the text, and wrote it again and ran the program: I greeted myself, my parents, then the first names that came to mind went further. Even just throwing buttons on the form and stretching them in any direction was an exciting activity. All games have been abandoned.
By that time, home Internet began to appear slowly in Moscow. Glasnet became my provider for many years (publicity and the Internet, if anyone is interested). In those years, the Internet was English-speaking, there were no free sites like Narod.ru and all were registered on bourgeois geocities.com or xoom.com. Russian language programming sites could be counted on fingers. And then I also decided to contribute to the development of the RuNet. Google still remembers the existence of my site
members.xoom.com/wwwind .
Many years have passed since then. During this time, several thousand source codes were studied, several articles and books on programming were written. And now I am a little envious of the new generation, which has much more opportunities to access the latest information. The development of high-speed Internet, screencasts, e-books - in my time this could only be dreamed of. Still, I often receive letters from people asking for help to solve this or that problem. They talk about themselves and their hobbies - programming. These are doctors, people of creative professions and even workers. All of them chose their own path in life, but programming for them remains any occupation.
I conducted several surveys on the website about creating an online primer and I always received the warm support of this idea. But the lack of free time does not allow me to come to grips with this task. And, nevertheless, I want to create such a section and write a very understandable for everyone guide to the C # language, in which I am programming now. And I really want to write it so that the newcomer, who visits my site for the first time and tries to repeat my lessons, will enjoy and the desire to program more will be strengthened. And here the most important thing is to understand what the first lesson should be. For example, I completely disagree with the approach that is practiced in modern editions - the first program in C # is always written in the console version. But it's boring, gentlemen. For a person who has sat down to write his first program, the process should be a pleasure. He, like a baby, wants to touch and touch everything. Give him the opportunity to play with the buttons, fields, checkboxes, switches. Let him feel an interest in controls. Programming for the first time should be like a game. And the authors of the books suggest that the user see a black console window labeled Hello, World. Where is the intrigue, where is the secret?
So far I have written the first lesson for beginners and will be glad to any comments. It is available at
http://developer.alexanderklimov.ru/lessons/begin1.php . And it is interesting to me, but how do you, the residents of Habr, have joined programming, because there are so many programmers among you, including and professional.