Могат ли алгоритмите да са полезни в ежедневието? Има ли как да съберем технологичния свят с този на човешкото, емоционалното? Как така срещата на двама ИТ хора ще завърши с… поезия?
Алгоритмите на живота ще потърсим в един неочакван и, според мен, много смислен разговор.
Петър Събев е не само специалист в тестването на софтуер с огромен опит, но и човек с широк, нетипичен поглед. Пътешественик по света и през живота. „Алгоритъмът на живота в 10 и 1/2 лични истории“ е заглавието на темата, с която на 22 август 2024 г. той ще постави началото на тазгодишния DEV.BG All in One – най-мащабното събитие в ИТ сферата у нас, което всяка година събира общността за важни разговори.
За първи път с Дигитални истории ще гостуваме на свой щанд! Елате и вие, нека се срещнем и поговорим. (Ако още нямате билет, оттук можете да го вземете с 30% отстъпка за ценители – с код aio24-DI30.)
А сега е време за смислени истории!
Събрали се двама ИТ специалисти да си разказват интересни случки. Да поговорят за програмите и хората, за софтуера и този в главите ни. За онова, което ни прави успешни програмисти и щастливи хора…
– Алгоритъмът на живота е доста амбициозно заглавие… как ще да изглежда този алгоритъм?
– Ами, в ИТ сферата ползваме десетки алгоритми в ежедневието си, но знаем твърде малко за думата „алгоритъм“. Тя идва от името на арабския учен Ал Хорезми и е термин, с който
описваме нещо сложно чрез поредица от елементарни действия,
които изпълняващият може да извърши в последователни стъпки, без допълнителни обяснения… В този смисъл, ако приемем, че животът е нещо наистина сложно, неговият алгоритъм би трябвало да са прости стъпки. Например ако просто повтаряме действията „вдишай-издишай“ до безкрайност, това вече е един прост алгоритъм на живота. Но, както казват мъдреците, животът не се измерва с броя на вдишванията, а с моментите, които ни карат да затаим дъх, решенията, които се запомнят и остават дълго след нас… Та – за търсенето на такъв алгоритъм ще се опитам да говоря.
– Струва ли си да опитваме да го търсим?
– Абсолютно, винаги си струва да търсим и да се стремим към мечтите си. Въпросът е можем ли да следваме някои прости житейски истини с определена логика, които водят до конкретни резултати. В живота не винаги 2+2=4, има много непредвидими фактори и случайности, които не могат да бъдат контролирани. Но вярвам, че с правилния подход и стратегия можем да навигираме през живота по-успешно и да постигнем целите си.
Успехът не идва веднага, но усилията и постоянството винаги се отплащат.
За това и ще говоря, през призмата на личния си опит.
– Изкуството, философията, религията или Илон Мъск – кой може да ни помогне да формулираме алгоритмите на живота?
– Има различни алгоритми. Например, за да стигнеш от точка А до точка В, може да търсиш най-краткия път, но той не е задължително най-бързият, който пък не е задължително най-изгодният икономически. На някои хора им трябва най-точният отговор и са склонни да вложат много време и ресурси, за да го получат. Други предпочитат да повървят повече, т.е. пътят им да не е оптимален, но да получат сравнително задоволителен отговор веднага, ползвайки минимум ресурси.
Различни хора, различни алгоритми, различни цели и различна ефективност.
Ето защо един човек може да получава вдъхновение от философията и изкуството, за друг смисълът на всичко да е в религията, а трети да идолизира Илон Мъск. Замисли се колко заклети фенове на Tesla има – само в Twitter, пардон – Х, са около 200 милиона! В същото време, според скорошно проучване на The New York Times, голяма част от хората не си купуват Tesla именно заради това, което Мъск направи с Twitter, неговите странни изказвания и подкрепа на конспиративни теории…
– Докато сме на темата за авторитетите… имаш ли в живота си идоли, хора, на които би искал да приличаш?
– Черпя вдъхновение от всички хора около мен – от децата, съпругата ми, близки, приятели, роднини, колеги… и може би няколко известни личности в края на списъка.
Много внимавам с идолизирането на известни хора – обикновено знаем много малко за тях,
особено във века на огромни PR екипи, назначени от тези хора. Всички знаем, че Джон Ленън е гениален музикант, но колко от нас са чували, че редовно е биел първата си съпруга Синтия? Вирджиния Улф може и да е гениален писател, но се е държала отвратително с хората от работническата класа. Дори канонизираната за светица Майка Тереза всъщност е обвинявана за злоупотреби с милиони, ужасно отношение към лежащите в болниците ѝ, които по думите ѝ трябва да страдат, както е страдал Христос. А и е някак странно да се бориш срещу СПИН и да отричаш презервативите едновременно, не мислиш ли? В същото време, наскоро бях в Япония и много се впечатлих колко щастлив е един портиер на входа на магазин, за това че насочва хората, поздравява ги и ги кара да се чувстват по-добре…
– А може би онлайн общуването направи още по-трудно създаването на авторитети, заради това, че много бързо за всеки можем да натопим лъжица с катран в кацата с меда… Приличат ли си по нещо писането на компютърен код и разказването на истории?
– Да, имат някои общи неща. Аз много уважавам хората, които успяват да кажат нещо важно или интересно възможно най-стегнато. Има автори, които, подобно на Марсел Пруст, Вирджиния Улф или Габриел Гарсия Маркес „разтягат локуми“ и могат да говорят с часове, без да кажат нищо съществено. Предпочитам кратките, съдържателни и изпълнени с динамика текстове – например Джордж Оруел, Ърнест Хемингуей или Дан Браун. В програмирането също е така – има хора, които пишат чист, кратък, стегнат код и такива, които ползват странни, неясни структури от данни, много повторения. За щастие, с времето технологиите ни помагат последните да стават все по-малко.
– И тук пак стигаме до невъзможността да имаме универсални алгоритми, според мен някои истории просто се нуждаят от по-бавно и обстоятелствено разказване… Аз имам сайт, в който разказвам дигитални истории, ти имаш огромен опит в света на технологиите и умението да разказваш истории. Има ли история, която в най-голяма степен да те е формирала като личност?
– Почти всичко, което ни се случва, ни оформя като личности и в лекцията си ще спомена именно десет и половина такива истории… Искам да запазя най-„формиращите“ за тогава, но все пак ще загатна нещичко: когато искрено мечтаеш за нещо и изведнъж нещо друго те накара да си кажеш: „Абе, аз всъщност това ли искам?“ – именно тогава се променя голяма част от светогледа ти. Аз получих този „шамар“ от живота, още преди да навърша пълнолетие и имах достатъчно време да осъзная точно какво искам…
– Светът е малък, дори ИТ сферата в България е малка – сигурно не си спомняш, че и аз съм бил на интервю при теб и даже се справих.
– Виждаш ли? А повечето хора казват, че интервютата при мен били много тежки.
– Понякога човек има късмет. И дано не разкрия твърде много с това, че успях някак да докарам топологично сортиране на графи… Животът е странен, ето, днес пък аз задавам въпросите. Имаш ли интересна история, родена по време на интервю за работа? В замяна и аз ще ти разкажа моя.
– Истината е, че съм провел над 500 интервюта и съм виждал какво ли не – човек, който сяда между двамата интервюиращи и казва: „Ехааа, какво офисче сме си спретнали, а?“;
човек, който идва с майка си на интервю и тя го побутва към залата: „Айде, мами, успех!“;
човек, който дойде лично да попита какъв е проблемът със CV-то му, защото пратил на над 200 места и никой не го викал – седнахме, поговорихме, изчистихме проблема, вече работи в ИТ сектора…
Но най-запомнящото се интервю беше с едно момиче – Петя. Това беше първото интервю в живота ѝ, за стажантската ни програма… Справи се средно добре, беше много притеснена и напълно осъзнаваше всичко това. Накрая я попитахме: „Защо трябва да изберем теб?“. Това беше най-искреното: „Много се притеснявам, но наистина съм по-добра, отколкото показах днес. Дайте ми шанс да покажа какво мога и няма да съжалявате“. И ѝ дадохме. Взехме я в стажантската програма. Тогава аз, млад и неопитен „шеф“, често се правех на „голямата работа“. Петя много често идваше при мен и казваше – тази твоя постъпка не ми хареса, тук се почувствах зле… И всъщност, научих повече от нея, отколкото тя от мен… Но това, често се случва, ако слушаш и гледаш внимателно. Ще завърша с това, че Петя днес е програмен мениджър в една от водещите ИТ компании. А сега ти си наред!
– Интервютата и на мен са ми любими занимания в повече от един смисъл – и тук, и в подкаста на DEV.BG, а и в работата – и от двете страни на „барикадата“. Оттам имам скорошна забавна история. С колегите се впечатлихме от CV-то на един кандидат със забележителна биография, влизаме в срещата онлайн…, а отсреща младеж, които видимо е от Югоизточна Азия, няма нищо общо с България, макар да се представя за българин. И упорито в рамките на 30 минути не спираше да търси онлайн отговорите на всеки въпрос – от JavaScript до това коя е любимата му българска дума…
Как мислиш, ражда ли софтуерният свят истински приятелства?
– Определено. Наскоро четох за поредната World of Warcraft сватба… Но и извън гейминга, работата в софтуерния свят често изисква сътрудничество и комуникация, което води до изграждането на силни връзки. Едни от най-силните ми приятелства съм създал покрай разработката на софтуер – някои още от ученическите години и състезанията по информатика, макар да са от другата страна на океана, други – колеги в работата, които ми станаха кумци в живота…
Софтуерният свят не само приятелства, ами и деца ражда, да ти кажа.
В един от екипите ми, които изградих от нулата, бяхме толкова сплотени и правихме толкова яки тиймбилдинги, че в крайна сметка от него изскочиха цели семейства с деца, които си играят заедно и до ден днешен. Дори синът ми е създаден по време на един фирмен тиймбилдинг в Белоградчик, където ходихме с половинките си…
– По-добър ли е кодът, писан от щастливи програмисти?
– Усещам закачката, но истината е, че аз си купувам яйца само от свободни кокошки! Може би е важно да кажа, че не съм голям фен на това да дам три пъти повече за биодомат, защото е раснал в специална оранжерия в Германия, докато при бабите ни все още почти всичко е „био“. Но определено усещам разлика във вкуса на яйцата от свободни кокошки. А софтуерът, подобно на яйцата от свободни кокошки, е с по-високо качество, по-надежден, по-креативен и по-етично създаден, тъй като
щастливите програмисти са по-мотивирани, продуктивни и внимателни към детайлите.
Не че не съм виждал и много добър код, писан от нещастен програмист… Просто когато не си щастлив и работиш твърде много, обикновено шансът за грешки е по-голям.
– Кога човек разбира, че работи прекалено много?
– Аз вече лесно се хващам – много си обичам работата и когато усетя липса на мотивация и интерес към нея, или се хвана, че пренебрегвам личния си живот и здраве, знам че съм се „преработил“… Но докато усетя този момент, почти стигнах до бърнаут. Между другото, имах нелоша лекция за бърнаута на OpenFest преди години. TL;DR – един от най-добрите начини за справяне е с разнообразие и поддържане на баланс между личен и професионален живот, между физическо и психическо натоварване, между лява и дясна половина на мозъка и т. н.
– ИТ хората доста странно и понякога грубо комуникират онлайн, както съм си говорил и с Борис Симандов, съоснователя на най-големия форум. Защо според теб е така?
– От една страна, има много хора, които не идват от света на ИТ, където всичко е кратко, ясно и конкретно… И се получават „локумите“, за които вече споменах. Това дразни ИТ специалистите, дори бях писал статия в блога си за това как се пише кратък мейл, например. От друга страна пък много ИТ хора са свикнали да работят в среда, където комуникацията е онлайн, формална и техническа. Така често липсват невербалните сигнали, които ни помагат да разберем по-добре намеренията и емоциите на другите. С годините много ИТ специалисти стават по-затворени и необичащи да общуват с хората. За някои просто са по-интересни техническите проблеми, други предпочитат да работят тихо, комфортно и самостоятелно, трети са свикнали на задачи, изискващи фокус и висока концентрация и знаят, че прекъсването за социални взаимодействия ни правят разфокусирани. Има и четвърти, които са безнадеждни техничари и просто не искат да занимават „простосмъртни“ хора със сложните си концепции и терминологии. Но в правилната обстановка дори тези хора се отпускат, често са прекрасни професионалисти и имат страхотни идеи.
– Понякога на мен добрите идеи в програмирането ми идват, докато пиша текст. Имаш ли случаи на подобно неочаквано вдъхновение?
– Случвало се е неведнъж. Спомням си един конкурс по програмиране на сп. Personal Computer World, където трябваше да обходя цялата дъска с хода на коня. Стандартни алгоритми като рекурсия и т. нар. backtracking не бяха оптимални. Дни наред гледах шахматната дъска с празен поглед, въртях фигури и листчета с хартия и не се сещах да добро решение на проблема. Същата вечер бяхме на гости у приятелско семейство и видях как тяхната дъщеричка старателно оцветява книжката си – първо по края по контура, после в средата. Веднага се досетих, че тази оптимизация – да се обиколи дъскат от периферията към центъра, може да се приложи за решение на моята задача. Спечелих конкурса!
Обратното – алгоритмични умения в реалния живот също са нещо, което често прилагам. Например, много добър съм в подреждането на багаж. Мога да събера и 4-5 големи чанти покупки в средно голям хладилник… Познати често ме търсят да си направят екскурзии, защото намирам интересни и финансово оптимални маршрути – например за приятели, които искаха да си направят едноседмична екскурзия до Брюксел и с директен полет щеше да им струва над 800 лв. на човек, успях да намеря полети плюс влакове и автобуси за под 200 лв. общо, като включиха Айндховен, Антверпен, Париж и Бове в програмата си!
– Имаме късмета да работим в област, която формира бъдещето. Според мен често това ни прави леко арогантни. Има ли нещо подобно?
– Може би причината е в това, че изкарваме над средните за страната пари, трудът ни е конвертируем навсякъде и сме търсени. Има една добра шегичка по темата – Tinder е услуга, в която пъпчиви програмисти търсят красиви мацки, за да се запознаят с тях. В LinkedIn е обратното… Но ИТ браншът в България претърпя доста промени – много хора от други области решиха, че искат да стават ИТ специалисти, тъй като работата е добре платена, без да имат нито опит, нито реален интерес в областта. Няколко години по-късно качеството на хората в ИТ падна за сметка на количеството. А като резултат от този процес нещата започнаха да се променят драстично в последните година-две.
Имаме конкуренция, която идва основно от другите източноевропейски държави, Индия, Пакистан, Филипините, а ние не сме толкова многобройни. Преди години, на QA: Challenge Accepted, една от конференциите, които организирам, Емо Славов разказваше колко трудно е на Китай да произведе химикал, заради фината работа по топчето на върха на писеца, заради което държавата, която изнася какво ли не, внася от Европа въпросния писец. Запомнил съм думите на Емо: ИТ-тата в България трябва да сме ценни и трудни за заменяне, като топчето на химикала!
– Кои са най-погрешните стереотипи за ИТ хората, които си чувал?
– О, спомням си, веднъж си говорихме със съпругата ми и тя ми каза: „Знаеш ли,
преди да те срещна, си представях всички програмисти с бели, изгладени ризки, огромни диоптрични очила с рогови рамки
и неизмити зъби!“. Истина е, че за нас, програмистите, е много по-важно какво можеш и правиш за сметка на това как изглеждаш. Вече над 20 години съм в бранша и почти не съм виждал програмист с костюм и вратовръзка – ходим с тениски и дънки, като рядко са маркови, нямаме пред кого да се показваме в друга светлина!
Но това, че сме стресирани от крайни срокове, неработещ код и стоим пред мониторите неподвижно всеки ден в продължение на 7-8, че и повече часа, има неминуеми ефекти върху здравето ни… Много ме радва, че все по-често колегите си говорят за здравословен живот и фитнес, внимават какво ядат и пият, изглеждат все по-добре и имат все по-разнообразни хобита и странични интереси.
– А най-основателните стереотипи?
– Извинявай, сещам се за виц по темата… Програмист се хвали: „Имам две приятелки – руса и чернокоса. На брюнетката казвам, че съм при блондинката. На блондинката казвам, че съм при брюнетката. А аз си седя тук и си решавам задачки…“
Наистина, един от най-основателните стереотипи е, че ИТ-хората обичат да решават проблеми. Някои, като видят проблем, се шашкат и гледат да избягат надалече. При нас е точно обратното –
ние не просто обичаме да решаваме проблеми, а обичаме да търсим най-доброто, най-иновативното, оптималното решение.
Това е в основата на нашата работа и е качество, което наистина ни характеризира.
– Напълно съм съгласен! И откакто „на стари години“ преминах в бранша, усещам същата промяна и в себе си. Често създаваме технологии, които нямаме никаква идея как ще се развият – например надали някой е можел да предположи докъде ще стигнат социалните мрежи. Трябва ли да се замисляме?
– Определено. Важно е да се замисляме за потенциалните последици от технологиите, които създаваме… И казвам това, завръщайки се от Португалия с огромно закъснение на полетите, дължащо се на софтуерния проблем с CrowdStrike. Важно е и да обичаме това, което правим. Много се гордея с дъщеря ми – отдават ѝ се езици, химия, биология, литература, програмиране, но в крайна сметка тя сама реши да запише средно образование в ИТ специалност. А
когато правиш нещо, което харесваш, не работиш и един ден, нали така?
– С какво създадено от теб в софтуерния свят се гордееш най-силно? А в аналоговия свят?
– Всъщност, гордея се най-много, когато видя някакво творение от софтуерният свят да се появи в аналоговия и да прави полезни на обществото неща. През годините съм работил над много интересни проекти от различни области – финанси, застраховане, онлайн търговия, недвижими имоти и още много други. Например пералня, която си изчислява циклите на подгряване, пране и сушене и пере при най-ниската тарифа на тока, свалена от съответното енергоподаващо дружество в България.
Или поръчвате си долнище и горнище на анцуг онлайн и едното пристига от Солун, другото – от Будапеща, а вие нямате представа за това, взимайки си го на следващия ден от магазина на Витошка… Или, недай Боже, катастрофирате с автомобила си, а той автоматично изпраща на 112 информация за локацията на катастрофата, състоянието на колата и дори колко души са в нея!
В момента с Pliant, която наскоро бе придобита от IBM, работим върху платформа за автоматизация и оркестрация, с която пък други ИТ специалисти си улесняват живота и правят стотици продукти, които улесняват ежедневието ни…
В аналоговия свят много се гордея с конференциите, които съорганизирам, както и с усилията си да обучавам и вдъхновявам новото поколение специалисти, особено след пандемията, когато обучавах безработни и незрящи хора.
– Днес, забързани в ежедневното удобство, рядко имаме време да забавим темпото. Струва ли си да го правим?
– Мен забавянето ме побърква, но си признавам – когато искам да спра времето, отивам за ден до селото, в което съм прекарал детството си, Просторно, Разградско. Всеки път си припомням дългите летни дни безгрижие и дори скука, обикалянето с колелото… Знам, че и 20 години по-късно селото ще си е почти същото.
Това, което мен ме зарежда с енергия обаче, е промяната. Някой път просто цъкам елементарна компютърна игричка, друг път си проветрявам главата с мотора, отивам на кафе с близки хора… дори това интервю е нещо различно и приятно за мен! Пътуванията обаче буквално ми „сменят батерията“ с нова.
– За какво мечтаеш?
– От професионална гледна точка – за свят, в който технологиите се използват за подобряване на живота на всички хора. В личен план – за живот, който е повече от „вдишай-издишай“… Имам едно любимо стихотворение на Петър Динчев, ще продължа отговора си с него и така ще ти благодаря за това интервю:
За прости радости мечтая.
С човечност да съм обграден.
Една любов да ме омайва.
Добро да буди моя ден.
В дома ми топлина да има,
да скача шумно детски смях.
Да няма върху мойто име
ни черна кал, ни златен прах.
В очите хората да гледам.
Пред злото да не свивам врат.
Животът ми да бъде щедър
на нежни песни и на цвят.
Не искам празник до безкрая.
За прости радости мечтая.
– И аз… Благодаря ти! След всичко, казано дотук, ще ми е особено интересно да чуя твоите 10 и 1/2 истории, с които ще започне DEV.BG All in One. И аз ще съм там, на щанда на Дигитални истории, технологиите и живият живот отново ще се срещнат по неочакван начин…