Programmeur de carrière. Partie 1. Le premier programme

image Chers lecteurs de Habr, je présente à votre attention une série de messages que je prévois de combiner dans le livre à l'avenir. Je voulais plonger dans le passé et raconter mon histoire comment je suis devenu développeur et continue de l'être.

À propos des conditions préalables pour entrer dans l'informatique, le chemin des essais et erreurs, l'auto-éducation et la naïveté enfantine. Je vais commencer mon histoire dès la petite enfance et la terminer aujourd'hui. J'espère que ce livre sera particulièrement utile pour ceux qui étudient juste pour une spécialité informatique.

Et ceux qui travaillent déjà dans l'informatique - peuvent établir des parallèles avec leur chemin.

Dans ce livre, vous trouverez une mention de la littérature que j'ai lue, de l'expérience de la communication avec les personnes avec qui j'ai croisé lors de la formation, du travail et du lancement d'une startup.

À partir des enseignants de l'université, se terminant par de grands investisseurs en capital-risque et propriétaires d'entreprises de plusieurs millions de dollars.

À ce jour, 3,5 chapitres du livre sont prêts, sur un possible 8-10. Si les premiers chapitres trouvent une réponse positive de la part du public, je publierai l'intégralité du livre dans son ensemble.

À propos de moi


Je ne suis pas John Carmack, Nikolay Durov ou Richard Matthew Stallman. Je n'ai pas travaillé dans des entreprises telles que Yandex, VKontakte ou Mail.ru.

Même si j'avais de l'expérience dans une grande entreprise, je vais certainement vous en parler. Mais je pense que le point n'est pas tant dans un grand nom que dans l'histoire du chemin vers les développeurs, et plus loin, dans les victoires et les défaites qui ont eu lieu au cours de mes 12 ans de carrière dans le développement commercial. Bien sûr, certains d'entre vous ont beaucoup plus d'expérience en informatique. Mais je crois que les drames et les victoires qui ont été dans ma carrière actuelle méritent d'être décrits. Il y a eu beaucoup d'événements, et ils sont tous divers.

Qui suis-je aujourd'hui en tant que développeur
- Participé à plus de 70 projets commerciaux, dont beaucoup il a écrit à partir de zéro
- Dans une dizaine de leurs propres projets: open-source, startups
- 12 ans en informatique. Il y a 17 ans - a écrit le premier programme
- Microsoft Most Valuable Person 2016
- Professionnel certifié Microsoft
- Scrum Master certifié
- À un bon niveau, je possède C # / C ++ / Java / Python / JS
- Le principal lieu de travail aujourd'hui est le service Upwork Freelance. Grâce à elle, je travaille pour une entreprise qui s'occupe de PNL / AI / ML. Dispose d'une base de données de 1 million d'utilisateurs
- Sortie de 3 applications dans l'AppStore et GooglePlay
- Je me prépare à créer ma propre entreprise informatique autour du projet que je développe actuellement

En plus du développement, j'écris des articles sur des blogs populaires, j'apprends de nouvelles technologies, je parle lors de conférences. Je me détends au club de fitness et avec ma famille.

C'est probablement tout pour moi, concernant le sujet du livre. Ensuite, c'est mon histoire.



L'histoire. Commencer


J'ai d'abord appris ce qu'est un ordinateur quand j'avais 7 ans. Je viens juste d'aller en première année et dans la classe des beaux-arts on nous a donné des devoirs pour fabriquer des ordinateurs à partir de carton, de caoutchouc mousse et de feutres. Bien sûr, mes parents m'ont aidé. Maman au début des années 80 a étudié dans une université technique et ne savait pas par entend ce qu'est un ordinateur. Au cours de ses études, elle a même réussi à perforer des cartes perforées et à les charger dans une gigantesque machine soviétique, qui occupait la part du lion de la salle de formation.

Nous avons terminé nos devoirs à 5 heures, car nous avons tout fait avec diligence. Nous avons trouvé une feuille de carton A4 épaisse. Des cercles en mousse ont été découpés dans de vieux jouets et l'interface utilisateur a été dessinée avec des feutres. Il y avait peu de boutons sur notre appareil, mais ma mère et moi leur avons attribué les fonctionnalités nécessaires et dans la leçon, j'ai montré à l'enseignant comment, en appuyant sur le bouton "On", une lumière s'allume dans le coin de l '"écran", complétant simultanément un cercle rouge avec un stylo-feutre.

La prochaine intersection avec la technologie informatique, je suis arrivé quelque part au même âge. Le week-end, je rendais souvent visite à ma grand-mère et mon grand-père, qui échangeaient diverses ordures et les achetaient aussi volontiers pour un sou. Anciennes montres, samovars, chaudières, badges, épées de guerriers du 13ème siècle et plus encore. Parmi toute cette variété de choses, quelqu'un lui a apporté un ordinateur alimenté par une télévision et un enregistreur audio. Heureusement, ma grand-mère avait les deux. La production soviétique bien sûr. Télévision Electron avec huit boutons pour changer de chaîne. Et l’enregistreur à deux cassettes de Vega, qui pourrait même réenregistrer des bandes audio de films.

1
Ordinateur soviétique «Recherche» et périphériques: TV «Electron», magnétophone «Vega» et cassette audio avec langage BASIC

Nous avons commencé à comprendre comment fonctionne l'ensemble de ce système. Complet avec un ordinateur, il y avait quelques cassettes audio, une instruction très battue et une autre brochure avec un titre - "BASIC Programming Language". Malgré mon enfance, j'ai essayé de participer activement au processus de connexion des cordons au magnétophone et à la télévision. Ensuite, nous avons inséré l'une des cassettes dans le compartiment de l'enregistreur, cliqué sur le bouton "Suivant" (c'est-à-dire démarrer la lecture) et une pseudographie incompréhensible à partir du texte et des tirets est apparue sur l'écran du téléviseur.

L'unité centrale elle-même était comme une machine à écrire, seulement un poids assez jauni et perceptible. J'ai poussé toutes les touches avec l'excitation d'un enfant, je n'ai pas vu de résultat tangible et j'ai couru me promener. Bien qu'avant moi, je dépose déjà un manuel sur le langage BASIC avec des exemples de programmes que je ne pouvais tout simplement pas réécrire en raison de mon âge.

De souvenirs d'enfance, je me souviens certainement de tous les gadgets que mes parents m'ont achetés, après avoir formé avec d'autres parents. Le premier hochet fut le jeu bien connu "The Wolf Catches Eggs". Je l'ai parcouru assez rapidement, j'ai vu le dessin animé tant attendu à la fin et je voulais quelque chose de plus. Ensuite, il y avait Tetris. À cette époque, il valait 1 000 000 de coupons. Oui, c'était en Ukraine au début des années 90, et pour mon excellence académique, ils m'ont donné un million. Me sentant à juste titre millionnaire, j'ai commandé à mes parents ce jeu plus complexe, où il fallait bien disposer les figures de formes différentes tombant d'en haut. Le jour de l'achat, Tetris m'a été complètement enlevé par mes parents, qui eux-mêmes n'ont pas pu l'enlever pendant deux jours.

1
Célèbre "Le loup attrape des œufs et Tetris"

Ensuite, il y avait des consoles de jeux. Notre famille vivait dans une petite maison, où mon oncle et ma tante vivaient également dans la pièce voisine. Mon oncle était pilote militaire, il a passé des points chauds, donc malgré sa modestie il était très tenace et avait peur de peu, après de véritables hostilités. Comme beaucoup de gens dans les années 90, mon oncle s'est lancé dans les affaires et il avait un assez bon revenu. Ainsi, dans sa chambre est apparu un téléviseur importé, un magnétoscope, puis le préfixe Subor (similaire à Dendy). C'était à couper le souffle quand je l'ai regardé jouer à Super Mario, TopGun, Terminator et à d'autres jeux. Et quand il passa le joystick entre mes mains, mon bonheur ne connut pas de limites.

1
Le préfixe huit bits "Subor" et le légendaire "Super Mario"

Oui, comme tous les enfants ordinaires qui ont grandi dans les années 90, j'ai passé toute la journée dans la cour. Jouons maintenant le ballon des pionniers, puis le badminton, puis grimper aux arbres dans le jardin, où poussaient de nombreux fruits différents.
Mais cette nouveauté, lorsque vous pouvez contrôler Mario, sauter par-dessus les obstacles et sauver la princesse - était beaucoup plus intéressante que les lunettes, les pions et les classiques des aveugles. Par conséquent, voyant mon véritable intérêt pour les consoles, mes parents m'ont donné la tâche d'apprendre la table de multiplication. Ensuite, ils réaliseront mon rêve. Elle est enseignée en deuxième année et je viens de terminer la première. Mais, il est dit - fait.

Il était impossible de trouver une motivation plus forte que sa propre console de jeu. Et après une semaine, j'ai facilement répondu aux questions «famille neuf», «six trois» et autres. Le test a été réussi et j'ai acheté un cadeau convoité. Comme vous l'apprendrez plus tard, les consoles et les jeux informatiques ont joué un rôle important en m'intéressant à la programmation.

Ainsi s'est passé année après année. La prochaine génération de consoles de jeux est sortie. D'abord Sega 16 bits, puis Panasonic, puis Sony PlayStation. Les jeux étaient mon passe-temps quand je me comportais bien. Quand il y avait un montant à l'école ou à la maison - les joysticks m'ont été enlevés et bien sûr je ne pouvais pas jouer. Et bien sûr, saisir le moment où tu rentrais de l'école et où ton père n'était pas revenu du travail pour aller à la télévision était aussi une sorte de chance. Il est donc impossible de dire que j'étais un joueur ou que j'ai passé des journées entières à jouer à des jeux. Il n'y avait pas une telle possibilité. J'ai plutôt passé toute la journée dans la cour, où l'on pouvait aussi trouver quelque chose d'intéressant. Par exemple, un jeu complètement sauvage - des escarmouches avec des pistolets à air. À notre époque, vous ne rencontrerez pas cela dans les cours, et puis - c'était une vraie guerre. Le paintball est juste amusant pour les enfants, par rapport au massacre que nous avons organisé. Les airs étaient chargés de grosses balles en plastique. Et après avoir tiré sur un autre enfant à bout portant, il y avait une ecchymose sur le sol de son bras ou de son estomac. Et ils ont donc vécu.

image
Pistolet jouet d'enfance

Il n'est pas superflu de mentionner le film "Hackers". Il est sorti juste en 1995, avec Angelina Jolie, 20 ans. Dire que le film m'a fait forte impression, c'est ne rien dire. Après tout, la pensée des enfants perçoit tout à sa valeur nominale.

Et comment ces gars-là ont effacé les guichets automatiques, éteint les feux de circulation et joué avec l'électricité dans toute la ville - pour moi, c'était magique. Puis il m'est venu à l'esprit qu'il serait cool de devenir aussi omnipotent que les Hackers.

Quelques années plus tard, j'ai acheté chaque numéro du magazine Hacker et j'ai essayé de pirater le Pentagone, même si je n'avais toujours pas accès à Internet.

image
Mes héros du film "Hackers"

La vraie découverte pour moi était déjà un vrai PC, avec un moniteur à tube de 15 pouces et une unité centrale basée sur le processeur Intel Pentium II. Bien sûr, il a été acheté par son oncle qui, à la fin des années 90, s'était élevé assez haut pour se permettre de tels jouets.

La première fois que j'ai activé une sorte de jeu, ce n'était pas trop excitant. Mais un jour, le jour du jugement est venu, les étoiles se sont réunies les unes après les autres et nous sommes venus rendre visite à un oncle qui n'était pas chez lui. J'ai demandé:

"Puis-je allumer l'ordinateur?"
"Oui, fais ce que tu veux avec lui," répondit la tante aimante.

Bien sûr, j'ai fait ce que je voulais avec lui. Il y avait différentes icônes sur le bureau Windows 98. WinRar, Word, FAR, Scarf, jeux. Après avoir cliqué sur toutes les icônes, mon attention s'est tournée vers FAR Manager. Cela ressemble à un écran bleu incompréhensible, mais avec une longue liste de (fichiers) que vous pouvez exécuter.

En cliquant alternativement sur chacun, j'ai saisi l'effet de ce qui se passait. Quelque chose a fonctionné, quelque chose ne fonctionne pas. Après un certain temps, j'ai réalisé que les fichiers se terminant par ".exe" sont les plus intéressants. Ils lancent différentes images sympas dans lesquelles vous pouvez également masquer. J'ai donc probablement lancé tous les fichiers exe disponibles sur l'ordinateur de mon oncle, puis ils m'ont à peine tiré sur les oreilles d'un jouet super intéressant et m'ont ramené à la maison.

Gestionnaire éloigné
Le même gestionnaire FAR

Ensuite, il y avait des clubs informatiques. Mon ami et moi sommes souvent allés vers eux pour jouer à Counter-Strike et Quake sur le réseau, ce qui ne pouvait pas être fait à la maison. J'ai souvent demandé à mes parents une bagatelle pour jouer dans le club pendant une demi-heure. En voyant mes yeux comme un chat de Shrek, ils m'ont offert un autre contrat lucratif. Je termine l'année scolaire sans triple, et ils m'achètent un ordinateur. Le contrat a été signé au début de l'année, en septembre, et le PC convoité aurait dû arriver déjà en juin, et sous réserve des accords.

J'ai fait de mon mieux. Il a même vendu sa bien-aimée Sony Playstation sur les émotions, afin d'être moins distrait des études. Bien que j'aie étudié comme ça, mais la 9e année était importante pour moi. Du sang du nez, il fallait obtenir uniquement de bonnes notes.

Déjà au printemps, en prévision de l'achat d'un PC, l'événement probablement le plus important de ma vie s'est produit. J'essaie de penser à l'avance et j'ai donc dit un jour à mon père:

"Papa, je ne sais pas utiliser un ordinateur." Inscrivons-nous aux cours.

Aussitôt dit, aussitôt fait. Ouvrant un journal avec des publicités, mon père a trouvé un bloc en petits caractères avec le titre "Cours d'informatique" . J'ai téléphoné aux professeurs et après quelques jours j'étais déjà à ces cours. Les cours ont eu lieu de l'autre côté de la ville, dans l'ancien panneau Khrouchtchev, au troisième étage. Dans une pièce, il y avait trois PC d'affilée et sur eux des personnes réellement intéressées ont été formées.

Je me souviens de ma première leçon. Windows 98 a été chargé pendant longtemps, puis l'enseignant a pris la parole:

- Alors. Voici le bureau Windows. Il y a des icônes de programme dessus. Au bas du bouton Démarrer. N'oubliez pas! Tout travail commence par le bouton de démarrage. Faites un clic gauche dessus.
Il a continué.
- Ici - vous voyez les programmes installés. Calculatrice, bloc-notes, Word, Excel. Vous pouvez également éteindre l'ordinateur en cliquant sur le bouton «Arrêter». Essayez-le.
Enfin, il est passé à la partie la plus difficile pour moi à ce moment-là.
- Sur le bureau, a déclaré l'enseignant, vous pouvez également voir les programmes qui peuvent être lancés en double-cliquant.
- Double!? - Comment ça?
- Essayons. Lancez le Bloc-notes en double-cliquant dessus avec le bouton gauche de la souris.

Ouais, maintenant. La chose la plus difficile à ce moment était de garder la souris au même endroit et en même temps de double-cliquer rapidement. Au deuxième clic, la souris tressaillit un peu et le raccourci avec. Mais malgré tout, nous avons réussi à maîtriser une tâche aussi insurmontable pendant la leçon.

Ensuite, il y a eu une formation pour Word, Excel. Un jour, ils m'ont laissé regarder des photos de monuments naturels et architecturaux. C'était l'activité la plus intéressante de ma mémoire. Beaucoup plus amusant que d'apprendre à formater du texte dans Word.

Dans le quartier avec mon PC, d'autres étudiants ont étudié. Quelques fois, je suis tombé sur des gars qui ont écrit des programmes, tout en discutant vigoureusement de ce processus. Ça m'intéressait aussi. En me souvenant du film Hackers et de l'ennuyeux MS Office, j'ai demandé à être transféré à des cours de programmation. Comme tous les événements importants de la vie, cela s'est produit spontanément, par intérêt.

Je suis arrivée à ma première leçon de programmation avec ma maman. Je ne me souviens pas pourquoi. Apparemment, elle aurait dû convenir de nouveaux cours et payer. C'était le printemps dans la cour, il faisait déjà noir. Nous avons traversé toute la ville en minibus-Gazelle à la périphérie, atteint le notoire
panneau Khrouchtchev, monta au sol et nous fit entrer.

Ils m'ont mis derrière un ordinateur extrême et ont ouvert un programme avec un écran complètement bleu et des lettres jaunes.

- Voici Turbo Pascal. Le professeur a commenté son action.
- Regardez, ici j'ai écrit la documentation, comment ça marche. Lisez-le.

Devant moi se trouvait une toile de texte jaune, absolument incompréhensible. J'ai essayé de trouver quelque chose pour moi, mais je n'ai pas pu. La grammaire chinoise et c'est tout.

Enfin, après un certain temps, le responsable du cours m'a remis une feuille imprimée A4. Il a été écrit sur une sorte de bizarrerie que j'avais déjà aperçu sur les moniteurs de gars de cours de programmation.
- Réécrivez ce qui est écrit ici. Il a ordonné au professeur et est parti.
J'ai commencé à écrire:
programme Summa;

J'ai écrit en cherchant des lettres anglaises sur le clavier. Dans Word, je me suis même entraîné en russe, mais ici j'ai besoin d'apprendre d'autres lettres. Le programme a été tapé avec un doigt, mais avec beaucoup de diligence.
begin, end, var, integer - qu'est-ce que c'est? Bien que j'aie étudié l'anglais dès la première année et que je connaissais le sens de nombreux mots, je ne pouvais pas tout rentrer ensemble. Comme un ours entraîné sur un vélo, j'ai continué à pédaler. Enfin quelque chose de familier:
writeln ('Entrez le premier numéro');
Ensuite - writeln ('Entrez le deuxième numéro');
Alors - writeln ('Résultat =', c);

image
Le tout premier programme Turbo Pascal

Fuh, a écrit. Il retira ses mains du clavier et attendit que le gourou apparaisse pour de plus amples instructions. Finalement, il s'approcha, fit courir ses yeux sur l'écran et dit d'appuyer sur la touche F9.
- Maintenant, le programme est compilé et vérifié pour les erreurs, a déclaré le gourou
Il n'y a eu aucune erreur. Puis il a dit d'appuyer sur Ctrl + F9, ce qui pour la première fois devait également m'être expliqué pas à pas. Ce dont vous avez besoin pour maintenir Ctrl, puis appuyez sur F9. L'écran est devenu noir et finalement une entrée claire pour moi est apparue: "Entrez le premier numéro."
Sur ordre du professeur, j'ai entré 7. Puis le deuxième chiffre. J'entre 3 et appuie sur Entrée.

Une ligne apparaît instantanément sur l'écran «Résultat = 10». C'était euphorique et je n'avais jamais rien vécu de tel dans ma vie auparavant. C'était comme si tout l'Univers s'était ouvert devant moi et je me suis retrouvé dans une sorte de portail. La chaleur a traversé le corps, un sourire est apparu sur mon visage, et quelque part très profondément dans mon subconscient, j'ai réalisé que c'était le mien . Très intuitivement, au niveau des émotions, j'ai commencé à ressentir quel énorme potentiel dans cette boîte bourdonnante sous la table. Combien vous pouvez faire de vos propres mains, et elle le fera!

C'est une sorte de magie. Ma tête ne convenait pas du tout, comme ce texte incompréhensible jaune sur un écran bleu, transformé en un programme pratique et compréhensible. Ce qui compte toujours! Ce n'est pas le décompte lui-même qui m'a surpris, mais le fait que les hiéroglyphes écrits se transforment en calculatrice. Entre ces deux événements, il y avait un abîme à ce moment. Mais intuitivement, je sentais que ce morceau de fer pouvait presque tout faire.

Presque tout le chemin du retour en minibus, j'étais comme dans l'espace. Cette image tournait dans ma tête avec l'inscription «Résultat», comment il se faisait que cette machine pouvait encore, pourrais-je écrire moi-même quelque chose sans un morceau de papier. Des milliers de questions qui m'intéressent passionnées et inspirées à la fois. J'avais 14 ans. Ce jour-là, la profession m'a choisi.

Partie 2. École ou auto-éducation >>

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


All Articles