Рубріки: Интервью

Если вам надоело программировать, нужно просто… еще больше программировать

Вікторія Пушкіна

Дилан Бити (Dylan Beattie) — разработчик из Британии. Но он не только кодит, но еще преподает, выступает на конференциях, играет в рок-группе и очень любит миксовать музыку и технологии.

Один из его проектов — это каверы на рок-хиты, где текст изменен под IT-тематику. А пару лет назад Дилан разработал новый язык программирования, где код выглядит как текст рок-песни, и назвал его Rockstar.

Что примечательно, о программировании Дилан говорит с такой же страстью и охотой, как и о музыке. Как он не дает себе заскучать на коммерческих проектах и почему just for fun — это лучший подход к обучению, Дилан рассказал в интервью журналистке Highload.

Дилан во время выступления со своей группой в Осло, 2019 год

Когда программирование — это искусство

Оскар Уайльд однажды сказал: ‘All art is quite useless’ («Все искусство достаточно бесполезно»). Я с этим согласен: у настоящего искусства нет цели. Но оно вызывает эмоции. Ты смотришь на произведение искусства, и ты смеешься, или плачешь, или задумываешься о чем-то.

С этой точки зрения программирование — это не искусство. Но я думаю, что мы можем использовать программирование, чтобы создавать вещи без цели, just for fun, и тогда это будет искусством. При этом программирование может быть искусством и само по себе, а не инструментом для его создания (как когда с помощью нейронных сетей генерируют картины).

Если вдуматься, таких примеров тоже много. Посмотрите на Code Golf. Участники этого соревнования пытаются записать, допустим, вычисление чисел Фибоначчи как можно более коротким кодом.

Миру не нужен алгоритм Фибоначчи в четырех строчках на Golang — это не решает никакую проблему. Но это забавно для тех, кто этим занимается, и тех, кто увлекается такими вещами. Они посмотрят и скажут: «О, а это умно».

Почему рутина убивает интерес к программированию и как с этим бороться

Я пришел в программирование, потому что меня захватил процесс написания кода. Я запросто могу попасть в петлю мотивации и удовлетворения:

  1. сначала интересно, как решить задачу;
  2. потом ты радуешься, что смог ее решить;
  3. а затем у тебя возникает вопрос: «а что если сделать что-то еще?».

Позже я читал в научных статьях, почему так происходит. Оказывается, при решении проблем наш мозг выделяет дофамин, и мы чувствуем приток радости. Это дает нам мотивацию делать что-то снова и снова.

Увы, в рутинной работе программиста так получается не всегда. Все больше значит не код сам по себе, а код, который уходит в продакшен.

Программист в компании — звено, которое помогает делать продукт и решать бизнес-проблему. Поэтому то, что он пишет, нужно тестировать, поддерживать, релизить, менеджерить и т.д.

Я ответственно к этому отношусь, но согласитесь — это уже не так весело.

Так что сейчас я работаю на коммерческих проектах, но стараюсь держать баланс между «скучным» кодом для бизнеса и «интересным» кодом для себя. Потому что если ты занимаешься только первым — ты устанешь от этого, а если только вторым — у тебя не будет денег.

Я регулярно устраиваю челленджи или принимаю в них участие. Например, перед Рождеством я решал задачи с Advent of Code. Не чтобы победить, а чтобы просто покодить — решить проблему, улучшить работающий код и… все.

Advent of Code — предрождественское соревнование для программистов с задачами на каждый день с 1 по 25 декабря

На коммерческих проектах тоже бывает интересно, если выбирать подходящие. Я ищу что-то, где есть хотя бы одна из трех вещей:

  1. интересная проблема;
  2. интересный домен;
  3. интересная технология.

Почему полезно заниматься программированием как хобби

Разница между работой и хобби в том, что, занимаясь хобби, ты можешь остановиться в любой момент, когда перестанет быть весело. И это полезно практиковать в двух случаях.

  1. Во-первых, подход к программированию как к хобби помогает вспомнить, что тебе нравится в этом занятии. У меня было много знакомых, которые начали ненавидеть свою работу, но попробовали на досуге программировать для души и осознали, что ненавидят именно текущие проекты, а не программирование в целом.
  2. Во-вторых, самое лучшее в хобби то, что ты можешь заниматься им в свое удовольствие, но в конечном итоге приобрести навыки, на которых можешь заработать деньги. Так, хотя я в шутку придумывал Rockstar, я абсолютно серьезно изучал, как построить грамматику языка программирования. И это очень полезный навык.

Не обязательно планировать что-то значительное, можно просто делать это

Когда ты делаешь что-то just for fun, то фокусируешься на процессе, а не выхлопе. Linux, кстати, тоже изначально создавался just for fun 🙂 Но даже если в итоге не получится сделать что-то масштабное, не получится ничего вообще — ну и пусть.

Так что своим ученикам я тоже часто даю проекты just for fun. Так я напоминаю им, что в учебе главное получить опыт, а не найти правильный ответ.

Дилан во время выступления на конференции. Дилан — постоянный участник конференций и организатор воркшопов по программированию

Я однажды где-то прочитал: ‘Start with something small. And then see what happens next’ («Начни с малого. А затем посмотри, что получится»). И это очень правильно. Потому что когда ставишь себе большую цель, она кажется необъятной. Но когда решаешь сделать что-то, что можешь закончить до конца выходных, это уже не кажется таким неподъемным.

Особенно когда на каждом следующим шаге у тебя есть свобода выбора — хочешь ты это заканчивать или нет.

Я не хочу уходить из IT ради музыки

Мое второе хобби — музыка. Я люблю ее с детства. Ребенком я слушал записи своего отца. Сейчас я тоже постоянно слушаю музыку и играю ее сам — в группе.

Почему же я тогда не стал музыкантом? Мой учитель сказал, когда мне было 15 лет: 

«Не делай это профессией. Возможно, у тебя получится заработать этим, но однажды ты проснешься, посмотришь на свою гитару и тебе не захочется играть, но придется — чтобы заплатить по счетам. И тогда ты возненавидишь это»

‘Don`t do this for a living. You’ll work hard and maybe you’ll make it. And then one day you’ll wake up, look at your guitar and think ‘I don’t want to play it’, but you’ll have to — to pay your bills. And after that you will not love it anymore’ (ориг.)

Иронично, ведь так же можно сказать и о программировании. Но мне сказали это о музыке, так что я стал программистом 🙂

Я все еще не знаю, кем стану, когда вырасту. Каждый день я нахожу новые возможности. С другой стороны, программированием заработать проще, чем музыкой.

Мне нравится быть музыкантом, имея при этом высокооплачиваемую работу. У меня есть время и желание заниматься музыкой и в то же время возможности купить все нужное оборудование без лишнего стресса.

Возможно, когда-нибудь сделаю IT-пародию на Noize MC

Моя первая попытка совместить музыку и технологии была, когда я попробовал заставить компьютер Amstrad CPC 6128 играть мелодии.

Гораздо позже, когда я стал программировать на Java, я начал экспериментировать. Сначала просто записывал гитарные мелодии на компьютер, потом совмещал их с другими звуками и добавлял разные эффекты. И чем больше я в это погружался, тем больше понимал, как много интересных идей может возникнуть на стыке.

Amstrad CPC 6128. Уже на этом компьютере можно было креативить

Наверно, мой самый известный проект в этой области — это язык программирования Rockstar. Как я уже говорил, он начался как шутка: я задался вопросом, можно ли создать язык программирования, на котором код будет выглядеть как рок-песня. Так что я взял строчки тех песен, которые знал и любил, и попробовать превратить их в строчки кода.

В итоге, я сделал шуточную спецификацию к этому языку и опубликовал ее. А затем люди начали ее использовать. Этого не должно было случиться, но это случилось.

Кстати, несколько участников Advent of Code этого года выполняли задачи на Rockstar. Я же иногда беру код программ на Rockstar (которые по сути — рок-песни) и выступаю с ними на вечеринках 🙂

Рабочий код на Rockstar

Я не слишком слежу за другими проектами, которые находятся на пересечении музыки и технологий. Мне больше нравится создавать. А вдохновляюсь я тем, что создается в этих областях по отдельности.

Например, я часто ищу новые песни для своего проекта пародийных песен для программистов. Или темы для этих песен — исходя из трендов индустрии.

Сейчас мы хотим сделать песню про контейнеры. На одной из конференций мне подкинули идею сделать что то на основе Smells Like Teen Spirit: ‘entertainers… containers’ — хорошо рифмуется.

Пародия Дилана на Bon Jovi — You Give Love a Bad Name

Кстати, после поездки на конференцию в Киев я начал учить украинский, а сейчас изучаю русский — потому что на нем разговаривают в большем количестве стран. И мне посоветовали сделать пародию на исполнителя Noize MC. «Назови меня попсой» — эта песня. Возможно, она появится в нашем репертуаре 🙂

Останні статті

Обучение Power BI – какие онлайн курсы аналитики выбрать

Сегодня мы поговорим о том, как выбрать лучшие курсы Power BI в Украине, особенно для…

13.01.2024

Work.ua назвал самые конкурентные вакансии в IТ за 2023 год

В 2023 году во всех крупнейших регионах конкуренция за вакансию выросла на 5–12%. Не исключением…

08.12.2023

Украинская IT-рекрутерка создала бесплатный трекер поиска работы

Unicorn Hunter/Talent Manager Лина Калиш создала бесплатный трекер поиска работы в Notion, систематизирующий все этапы…

07.12.2023

Mate academy отправит работников в 10-дневный оплачиваемый отпуск

Edtech-стартап Mate academy принял решение отправить своих работников в десятидневный отпуск – с 25 декабря…

07.12.2023

Переписки, фото, история браузера: киевский программист зарабатывал на шпионаже

Служба безопасности Украины задержала в Киеве 46-летнего программиста, который за деньги устанавливал шпионские программы и…

07.12.2023

Как вырасти до сеньйора? Девелопер создал популярную подборку на Github

IT-специалист Джордан Катлер создал и выложил на Github подборку разнообразных ресурсов, которые помогут достичь уровня…

07.12.2023