
Постът е посветен на деня за защита на децата. Всички съвпадения са случайности.
На 10 години получих първия си компютър и диск с Visual Studio 6. Оттогава си измислям задачи — да автоматизирам неща, да създавам уеб услуга за трима души или да напиша игра, която после да бъде свалена от плей маркета поради остаряване. Разбира се, губех изходния код и пишех код, който е срамно да покажа на хората. На 10 години определено не бих отказал да получа архив от бъдещето с всички грешки — за да не ги повтарям никога.
Преди две седмици попитах колеги от Яндекс.Денег какво биха посъветвали дете, което иска да стане айтишник, а след това си спомних неща за себе си. Така се роди този текст. Предлагам да поговорим за това.
Не препоръчвам да се харчат много усилия за мъките на избора, по-добре е всичко да се пробва и да се занимава с всичко. Когато разбереш какво има в общи линии, можеш сам да решиш в каква посока да се движиш, а от какво да се откажеш.
Сергей, младши програмист
Детство
Какво е най-забавното занимание в детството на програмист, когато все още няма интернет?
Имах две — да разглобя всички игри от диска "800 игри на руски език" с всички програми от диска "Всичко, което е нужно на хакера", а след това да препиша всички игри, на които съм отделил над 10 часа, от нулата на Бейсик. Няма значение какво ще се получи — дори да се получи нещо такова.

Вземаш, пробваш, размествяш блоковете, експериментираш и достигаш до всичко, до което можеш да достигнеш. Събаряш Windows, 10 часа слагаш Windows обратно. Опитваш се да възстановиш драйверите. Разбираш как работи DOS. Разбираш как трябва да стоят мостовете, за да заработи хард дискът в компютъра на приятел (там има 200 мегабайта нови игри!). Въртиш софтуер, въртиш хардуер, разглобяваш и сглобяваш компютър. Пишеш футболен симулатор 13 години, в крайна сметка.
Когато няма нищо, ставаш щастлив и от това.
Не може да се подценява важността на самопроверката. Според мен, начинаещите в IT недооценяват колко строго ще трябва да контролират продукта си (а и в аналитиката също) и колко много време отнема в сравнение с чисто творческата част. И колкото по-интригуващо е това, което правиш, толкова по-трудна и по-дълга ще бъде проверката.
Това, разбира се, е малко абстрактен съвет, но ако само знаех веднага.
И не препоръчвам да се фокусирате само върху едно направление в ИТ. И тук широкият мироглед има значение.
Анна, старши системен аналитик
Средно училище
В един момент на форума на провинциалния град П обсъждаха програмирането — и там се появи тема с заглавие „В голяма компания търсят програмисти PHP“. Текстът на обявата беше следният:
В голяма компания търсят програмисти PHP:
За да разберете дали си струва да дойдете на интервю, изпълнете една лесна задача: напишете програма на PHP, която намира такива цели положителни числа x, y и z, че x^5+y^5=z^5. (^ - степен).
Можете да отговорите тук.В тази тема се отписаха само няколко души — включително и аз. С цялата си шестнадесетгодишна наивност отговорих:
Странно е. Ито компютърът е нужен доста мощен, за да го намериш...
Защото от x,y,z <=1000 такива числа няма — това е първо (направих един опит с VB, не продължих за сега), и второ компютърът се срива веднага.
Нима всичко е без значение, IMHO.Да, това е измама, капан за начинаещи, да, падонкафски, и какво от това. Очевидно е, че похарчих известно време за прост скрипт, но съвсем забравих за съществуването на теоремата на Ферма — за което авторът на темата, достопочтеният The_Kid, уточни в самия край.
Резултатът е тъжен - в П. практически няма хора, които да разбират от математика, но всеки втори се смята за велик програмист. За три часа, на всички форуми, на които публикувах съобщение, имаше общо около двеста прегледа... и само два верни отговора. А теоремата на Ферма е училищна програма, и условията ѝ са толкова простички, че трябва да се набиват на очи. Между другото, паралелно, при запитване в Асько 6 от 6 познати студенти от Новосибирск отговориха „Това е теоремата на Ферма“.
И кого да наемем след това?Тогава това предизвика в мен буря от недоволство в духа на: „Ако не написах за теоремата на Ферма, това не означава, че не я знам“, — класическо оправдание. Тъжно ли ми е сега? Не, това също е урок за цял живот. Както тогава, когато играта ми беше представена в индонезийския Windows Phone Store, а след две седмици я махнах, защото не актуализирах някакви условия EULA.
И е напълно неясно: ако в една голяма компания не могат да намерят наемател — какво тогава да правим? С какво да се занимаваме? Къде да растем?
Не си струва да мислиш, че, получавайки образование, ще станеш програмист/таксиметров шофьор/математик или нещо подобно.
Дойдоха времена, когато в дипломата значението на основните предмети (математика, физика, информатика, философия) стана много по-голямо от прикладните (програмиране, проектиране в конкретни области и т.н.). Висшето образование започна да се разделя на слоеве – основен (инженерен) и прикладен. Трябва да учиш не конкретни умения, а умения за мислене, научен подход, разбиране как да решаваш проблеми и софтуерни умения.
Това се отнася до университета. За прикладни умения човек ще има целия си останал живот.
Олег, водещ системен анализатор
Университет
Пишеш код на C++, пишеш код на Java. Докосваш асемблер, отвеждаш ръката си, сблъскваш се с Qt и се питаш защо ти е такава участ. Към четвърти курс на всички започва да им е все едно на какво пишат поредните важни лабораторни работи – преподавателите гледат на кода по-скоро така.
Разбира се, не навсякъде – има университети, където положението е много добро, но там приемат ученици, които в училище решавали задачи от ACM, на допълнителни занятия извлекли всичко от теорията на графите и учели наизуст колко памет изискват всички съществуващи алгоритми.
Аз не решавах, не ходих на допълнителни занятия, а просто завърших в моя математически клас, като правех интересни неща в същото време. Спойлер – на интервютата те ще са ненужни на никого.
Първо е хубаво да се определи какво ти харесва от ИТ. Ако ти харесват всички направления, ще бъде трудно. Да учиш някакъв език – няма да доведе до нищо, ще има само объркване в бъдеще.
Ян, специалист по финансов мониторинг
Истинска история – за симулатор на Windows, направен с приятел в десети клас, в университета може да получиш автоматично няколко изпита и кредита. Можеш дори после да разказваш на всички колко е било готино. Проблемът е, че това не беше готино – това бяха заплетена архитектура, отвратителен код и пълна липса на каквито и да било стандарти.
Такива неща трябва да се правят с една цел – да имаш собствен каталог на грешките. Въпреки това, това не ще те предпази от синдрома на самозванеца, когато се окажеш в голяма компания с някакви повърхностни знания за всичко и си мислиш, че сега ще те разобличат.

Ще те подкрепя, по-важно е да помагаш с съвети за това какво да правиш и къде да намериш информация, а не обратното. И съвсем не е страшно, ако в началото той ще опитва нещата наослеп. — Осъзнаването ще дойде по-късно. Важно е да ти харесва.
Ерик, инженер по тестване
Всички ние пишем планове за развитие — какво трябва да учим, с какво да се занимаваме в близко бъдеще и как да се подобрим. Но изглежда, че на всички ни би било полезно да напишем писмо до себе си от миналото — ето моето.
- Отдели време, намери книга и инсталирай онзи дистрибутив на Убунту, който ти изпратиха безплатно от Canonical. Явно е, че има някакъв прост проблем, Убунту работи навсякъде. А Линукс ще ти бъде много полезен.
- Не се страхувай от конзолата. Volkov Commander, разбира се, се побира на едно флопи, но опитай да разбереш, защо ти трябват всички тези команди, опознай командния ред. А флопитата ще изчезнат. Дисковете ще изчезнат. Флашките също ще изчезнат. Не се притеснявай болезнено.
- Прочети за алгоритмите, разучи сортирането, дърветата и куповете. Чети книги.
- Не са необходими платени курсове, за да разбереш основите. Скоро ще се появи Ютуб – тогава ще се изненадаш.
- Не се фокусирай само върху Бейсика. Има стотици технологии в света, които заслужават твоето внимание, и милион неща, които са по-интересни от това да рисуваш отново юзерформите в Ексел. Вземи поне Python — а после ще се оправиш.
- Научи се да използваш Гит, направи резервно копие на всички изходни кодове. Напиши поне едно клиент-сървър приложение, за да разбираш как работят. Разучи мрежи, суичове и маршрутизатори.
- И ако ти четеш това в момента, значи не е било напразно.
Разкажете в коментарите какво бихте написали на себе си от миналото? Дайте съвет на сегашните ученици и студенти, които все още са на кръстопът и се опитват да намерят своя път. Нека поговорим за това.
Източник: habr.com
