Дзень абароны дзяцей ад дрэннага кода

Дзень абароны дзяцей ад дрэннага кода

Пост прысвечаны дню аховы дзяцей. Любыя супадзенні - не супадзенні.

У 10 гадоў у мяне з'явіліся першы кампутар і дыск з Visual Studio 6. З тых часоў я прыдумляю сабе задачы – аўтаматызаваць справы, сабраць які-небудзь вэб-сэрвіс для трох чалавек ці напісаць гульню, якую потым выдаляць з плэймаркету ад старасці. Вядома, я губляў зыходнікі і пісаў код, які сорамна паказваць людзям. І ў 10 гадоў я б сапраўды не адмовіўся атрымаць з будучыні архіў са ўсімі вушакамі — каб ніколі іх не дапушчаць.

Пару тыдняў таму я спытаў калег з Яндекс.Грошай, што б яны зараз параілі дзіцяці, які хоча стаць айцішнікам, а потым успомніў сёе-тое пра сябе. Так зьявіўся гэты тэкст. Прапаную аб гэтым пагаварыць.

Не рэкамендую марнаваць шмат сіл на пакуты выбару, лепш усё спрабаваць і ўсім займацца. Калі зразумееш, што ёсць што ў агульных рысах, зможаш сам вырашыць, у якім напрамку трэба рухацца, а ад якога лепш адмовіцца.

Сяргей, малодшы праграміст

Дзяцінства

Які самы вясёлы занятак у праграмісцкім дзяцінстве, калі яшчэ няма інтэрнэту?

У мяне іх было два - разабраць усе гульні з дыска «800 гульняў на рускай мове» усімі праграмамі з дыска «Усё, што трэба хакеру», а потым перапісаць усе гульні, на якія выдаткаваў больш за 10 гадзін, з нуля на Бейсіку. Няма ніякай розніцы, што атрымаецца, - нават калі атрымаецца такое.

Дзень абароны дзяцей ад дрэннага кода

Ты бярэш, спрабуеш, перастаўляеш блокі месцамі, эксперыментуеш і дацягваешся да ўсяго, да чаго можна дацягнуцца. Зносіш Windows, 10 гадзін ставіш Windows зваротна. Спрабуеш вярнуць драйверы. Разбіраешся, як уладкованы DOS. Разбіраешся, як павінны стаяць перамычкі, каб твой хард завёўся ў кампутары ў сябра (там 200 мегабайт новых гульняў!). Круціш софт, круціш жалеза, разбіраеш і збіраеш кампутар. Пішаш футбольны сімулятар 13 гадоў, у рэшце рэшт.

Калі няма нічога, робішся шчаслівым і ад такога.

Нельга недаацэньваць важнасць самаправеркі. Па-мойму, навічкі ў IT недаацэньваюць, як строга давядзецца кантраляваць свой прадукт (і ў аналітыцы таксама) і як шмат гэта займае часу ў параўнанні з чыста творчай часткай. І чым цікавейшае тое, што ты робіш, тым складаней і даўжэй будзе праверка.

Гэта, вядома, некалькі абстрактная рада, але калі б я адразу ведала.

І не рэкамендую зацыклівацца на адным напрамку ў IT. Тут таксама далягляд мае значэнне.

Ганна, старшы сістэмны аналітык

Сярэдняя школа

У нейкі момант на форуме павятовага горада П абмяркоўвалі праграмаванне – і там з'явіўся трэд з загалоўкам "У буйную кампанію шукаюцца праграмісты PHP". Тэкст аб'явы быў такім:

В крупную компанию ищутся программисты PHP:

Для того, чтобы понять, стоит ли вам приходить на собеседование, выполните несложное задание: напишите программу на php, которая находит такие целые положительные числа x, y и z, чтобы x^5+y^5=z^5. (^ - степень).

Отвечать можете здесь.

У гэтым трэдзе адпісаліся ўсяго некалькі чалавек - там быў і я. З усёй сваёй шаснаццацігадовай наіўнасцю я адказаў:

Реально чет странное. Да и комп нужен неслабый, штоб ето найти...
Ибо от x,y,z <=1000 таких чисел нет-эт во первых (сел набросал в vb, большего ПОКА не дано), во вторых комп подсаживается намертво.

Не все равно чето нето, ИМХО.

Так, розыгрыш, пастка для пачаткоўцаў, так, падонкафскі, ну і што. Відавочна, што я патраціў колькі-то часу на просты скрыпт, але зусім забыўся пра існаванне тэарэмы Ферма - пра што аўтар трэда, высокашаноўны The_Kid, удакладніў у самым канцы.

Итог печален - в П. практически нет людей, знающих математику, но каждый второй мнит себя мего программистом. За три часа, на все форумах на которых я разместил сообщение, было суммарно около двух сотен просмотров... и всего два правильных ответа. А теорема Ферма - это ведь школьная программа, и условия ее настолько просты, что должны бросаться в глаза. Кстати, параллельно при опросе в аське 6 из 6 знакомых новосибирских студентов ответили «Это же теорема Ферма».
И кого после этого брать на работу?

Тады гэта выклікала ў мяне буру абурэння ў духу: "Калі я не напісаў пра тэарэму Ферма, гэта не значыць, што я пра яе не ведаю", - класічная адмазка. Ці сумна мне зараз? Не, гэта таксама ўрок на ўсё жыццё. Як тады, калі маю гульню зафічэрылі ў інданэзійскім Windows Phone Store, а праз два тыдні выдалілі, бо я не абнавіў нейкія там умовы EULA.

І зусім жа незразумела: калі ў адной там буйной кампаніі няма каго браць на працу - кім жа тады быць? Чым займацца? Куды расці?

Не варта думаць, што, атрымаўшы адукацыю, ты будзеш праграмістам/таксіроўшчыкам/матэматыкам ці яшчэ кімсьці.

Надышлі часы, калі ў дыпломе становяцца нашмат важнейшымі базавыя прадметы (матэматыка, фізіка, інфарматыка, філасофія), а не прыкладныя (праграмаванне, праектаванне ў пэўных галінах, іншае). Вышэйшая адукацыя пачало падзяляцца на пласты - базавы (інжынерны) і прыкладной. Варта вучыцца не канкрэтным навыкам, а мысленню, навуковаму падыходу, разуменню, як вырашаць праблемы, софт скілам.

Гэта што тычыцца ўніверсітэта. На прыкладныя навыкі ў чалавека яшчэ будзе ўсё астатняе жыццё.

Алег, вядучы сістэмны аналітык

Універсітэт

Пішаш код на "плюсах", пішаш код на Джаве. Чапаеш асэмблер, адводзіш руку, уляпваешся ў Qt і думаеш, завошта так з табой паступаюць. Курсу да чацвёртага ўсім становіцца ўсё роўна, на чым ты пішаш чарговыя важныя лабы, - выкладчыкі глядзяць на код так-сяк.

Так, вядома, не ўсюды - ёсць вну, дзе магутна і добра, але туды бяруць рабят, якія ў школе вырашалі задачы з ACM, на дадатковых занятках выціскалі ўсё з тэорыі графаў і зубрылі, колькі памяці патрабуюць усе існыя ў свеце алгарытмы ўсяго на свеце .

Я вось не вырашаў, не хадзіў на допы, а проста давучыўся ў сваім матэматычным класе, адначасна робячы цікавыя штукі. Спойлер - на сумоўях яны будуць нікому не патрэбныя.

Спачатку лепш вызначыцца, што падабаецца з ІТ. Калі падабаюцца ўсе кірункі, то будзе складана. Вучыць нейкую мову ні да чаго не прывядзе, будзе толькі блытаніна ў далейшым.

Ян, спецыяліст па фін. маніторынгу

Рэальная гісторыя – за сімулятар Windows, зроблены з таварышам на каленцы ў 10 класе, ва ўніверы можна атрымаць пару іспытаў і залікаў аўтаматам. Можна нават потым расказваць усім, як гэта было класна. Праблема ў тым, што гэта не было класна - гэта былі заблытаная архітэктура, агідны код і поўная адсутнасць якіх-небудзь стандартаў хоць чаго-небудзь.

Такія рэчы трэба рабіць з адной мэтай - каб быў уласны каталог грабляў. Хоць гэта і не зберажэ ад сіндрому самазванца, калі апынуўся ў вялікай кампаніі з нейкімі сваімі павярхоўнымі ведамі па ўсім і думаеш, што цябе зараз выкрыюць.

Дзень абароны дзяцей ад дрэннага кода

Падтрымаю, важней дапамагаць парадамі, што можна рабіць і дзе браць інфу, а не наадварот. І зусім не страшна, калі ён спачатку будзе навобмацак нешта рабіць, - ўсведамленне пазней прыйдзе. Важна, каб падабалася.

Эрык, інжынер па тэсціраванні

Усе мы пішам планы развіцця - што трэба вывучыць, чым займацца ў найбліжэйшай будучыні і як сябе паляпшаць. Але здаецца, усім нам было б карысна напісаць ліст сабе з мінулага - вось мой.

  1. Выдаткуй час, знайдзі кніжку і пастаў-ткі той дыстрыбутыў Убунты, які табе бясплатна даслалі з Canonical. Там відавочна нейкая простая праблема, Убунта заводзіцца ўсюды. А Лінукс табе вельмі спатрэбіцца.
  2. Не бойся кансолі. Volkov Commander, вядома, змяшчаецца на адну дыскету, але паспрабуй разабрацца, навошта табе ўсе гэтыя каманды, пасябраваць з камандным радком. А дыскеты памруць. Дыскі памруць. Флэшкі таксама памруць. Не моцна хвалюйся.
  3. Шануй пра алгарытмы, разбярыся ў сартаваннях, дрэвах і кучах. Чытай кніжкі.
  4. Каб разабрацца ў асновах, платныя курсы не патрэбны. Хутка з'явіцца Ютуб - вось ты здзівішся.
  5. Не зацыклівайся на Бейсіку. У свеце ёсць сотня тэхналогій, якія стаяць тваёй увагі, і мільён рэчаў, якія цікавей, чым у чарговы раз маляваць юзерформы ў Экселі. Вазьмі хаця б Python – а далей разбярэшся.
  6. Навучыся карыстацца Гітам, забэкап усе зыходнікі. Напішы хаця б адно кліент-сервернае прыкладанне, каб разумець, як яны працуюць. Разбярыся ў сетках, світках і маршрутызатарах.
  7. І калі ты зараз гэта чытаеш, значыць усё не дарма.

Раскажыце ў каментарах, што б вы напісалі сабе з мінуўшчыны? Парайце што-небудзь цяперашнім школьнікам і студэнтам, якія пакуль на ростанях і спрабуюць знайсці свой шлях. Давайце пагаворым аб гэтым.

Крыніца: habr.com

Дадаць каментар