What should be the first chapter on programming or How did you become a programmer?

    Most recently, I saw a post on the hub. How young we were , where the author recalled his experience in programming and selling his software. I have always been interested in the question of how people get involved in programming. This case is not about young people who go to college to study as a programmer.
    In my life there were two unsuccessful attempts to learn how to program - on Mikrosh 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 lists of some games were given to Mikrosh. But the lack of a normal description of the code killed my curiosity. So the first attempt to become a programmer was unsuccessful.
    A second attempt to join programming was made during the reign of ZX Spectrum. I remember that one day I came across information on how to write programs in Basic. Eager to write at least some game, I eagerly pounced on typing the code. If my memory serves me, the manual suggested drawing a Russian flag (apparently, this was the beginning of the 90s). I honestly filled a few lines of code and a flag really appeared on my screen. But I did not experience any joy. That was torture. Not owning a blind ten-finger printing method, writing a simple code took a very long time. So I did not become a programmer a second time.

    And only the third attempt to learn programming was successful. And it happened quite by accident. Constantly buying pirated games (and there were no others) in metro tents (Warcraft, Duke Nukem, Doom, etc.), I once turned my eyes to the Visual Basic 5.0 drive. I bought the disc without even knowing what kind of language it is, what other programming languages ​​are there. Just bought a disc, like an ordinary 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 somehow installed VB 5.0, I opened the book and began to write my first Hello, World, I had this Russian version. Hello world! I remember well that even when I wrote this first line of code, I didn’t understand why am I doing this and what should the line do in general. I created my first program for the book, probably more than an hour. Finally, setting the book aside, I pressed F5 to start the program. And then I experienced shock and delight at the same time. The real program window appeared on the screen, no different from standard Windows-based programs of Notepad, Calculator, etc. I realized that I can change this text as I wish. 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 simply went on. Even just throwing buttons on the shape and stretching them in any direction was an exciting experience. All games have been abandoned. I pressed F5 to run the program. And then I experienced shock and delight at the same time. The real program window appeared on the screen, no different from standard Windows-based programs of Notepad, Calculator, etc. I realized that I can change this text as I wish. 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 simply went on. Even just throwing buttons on the shape and stretching them in any direction was an exciting experience. All games have been abandoned. I pressed F5 to run the program. And then I experienced shock and delight at the same time. The real program window appeared on the screen, no different from standard Windows-based programs of Notepad, Calculator, etc. I realized that I can change this text as I wish. 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 simply went on. Even just throwing buttons on the shape and stretching them in any direction was an exciting experience. All games have been abandoned. and wrote it again and started the program: I greeted myself, my parents, then the first names that came to mind simply went on. Even just throwing buttons on the shape and stretching them in any direction was an exciting experience. All games have been abandoned. and wrote it again and started the program: I greeted myself, my parents, then the first names that came to mind simply went on. Even just throwing buttons on the shape and stretching them in any direction was an exciting experience. All games have been abandoned.
    By that time, home Internet was slowly starting to appear in Moscow. For years, Glasnet became my provider (publicity and the Internet, if anyone is interested). In those years, the Internet was English-speaking, there were no free sites like Narod.ru yet and everyone registered on bourgeois geocities.com or xoom.com. Russian-language programming sites could be counted on the fingers. And then I also decided to contribute to the development of 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 jealous 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 you could only dream about it. And still, I often receive letters from people asking for help to solve a particular problem. They talk about themselves and their hobby - programming. These are doctors, people of creative professions, and even workers. All of them have chosen their own path in life, but programming for them remains any activity.
    Several times I conducted polls on the site about creating an online primer for beginners and always received warm support for this idea. But the lack of free time does not allow me to come to grips with this task. And yet, I want to create such a section and write a very understandable guide for the C # language for everyone, which I am currently programming in. And I really want to write it so that a beginner who first visits my site and tries to repeat my lessons will enjoy it and the desire to program will strengthen even more. 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 publications - the first C # program is always written in the console version. But this is boring, gentlemen. For the person who sat down to write his first program, The process should be fun. He, as a baby, wants to touch everything, feel it. Give him the opportunity to play with buttons, fields, checkmarks, switches. Let him feel an interest in the controls. Programming at first should be like a game. And the authors of the books offer to see the user a black console window with the inscription Hello, World. Where is the intrigue, where is the secret?
    So far I have written the first lesson for beginners and I will be glad to any comments. It is available at http://developer.alexanderklimov.ru/lessons/begin1.php . And I’m wondering, how did you, the residents of Habr, get involved in programming, because among you there are a lot of programmers, including and professional.

    Also popular now: