Роджер Коллер, журналист и начинающий программист из Канады, рассказывает о том, почему начал заниматься программированием и почему сложности — это хорошо. Редакция techrocks.ru представляет адаптированный перевод материала.
Было далеко за полночь. Моя жена и дети уже давно легли спать. Но я не мог уснуть, мне нужно было во всем разобраться. Огромное количество раз я исправлял код, снова и снова…
Хммм… Выглядит многообещающе.
Если я нажму здесь, программа должна вызвать функцию и рассчитать следующий ход. Да. И если я нажму здесь, та функция должна вызываться сама. Хорошо. Теперь, если я нажму здесь, я должен получить … не это.
Черт побери!
Больше изменений. Больше ошибок. Проходит еще несколько часов. Я подумал, что программирование это сложно. Моя следующая мысль? Да, так и есть — программировать сложно, и именно поэтому я люблю это делать!
Как программирование стало моим хобби
Четыре месяца назад я начал обучение программированию с JavaScript, начиная с учебной программы на сайте «freeCodeCamp». В итоге программирование стало моим хобби.
За последние несколько лет я разочаровался в личном соотношении «создание-потребление». Слишком много моего свободного времени тратилось впустую. Netflix, подкасты, Twitter, журналы, телевизионные виды спорта, Facebook, блоги, средства массовой информации, газеты, романы — список можно продолжать еще долго.
Ни в одном из этих занятий нет ничего плохого, но все они являются чистым потреблением. Даже чтение большой книги — это акт потребления.
Конечно, я много работал журналистом, но я больше не мог мириться с тем, что та тяжелая работа была чем-то, чем я занимался только ради денег.
Даже имея семью, карьеру и другие обязанности у меня оставалось много свободного времени. Я тратил все свободное время на СМИ. Я почувствовал себя просто свиньей.
Пока что мое увлечение программированием не дало результатов. Я сделал всего одно простое приложение. Я завершил поставленные задачи касательно пользовательского интерфейса и проекты на «freeCodeCamp».
Но это только начало! Моя цель — создавать удивительные вещи не ради того, чтобы произвести впечатление на людей, а чтобы просто погрузиться в акт сотворения, бросить вызов самому себе, попытаться сделать что-то сложное.
Чем сложнее, тем лучше
В моей родной провинции — Онтарио, Канада – существует общественное движение по улучшению физического здоровья под названием «Make Your Day Harder». Основная предпосылка заключается в том, чтобы вносить небольшие изменения в ежедневную рутину для увеличения физической активности и улучшения здоровья.
Воспользуйтесь лестницей вместо лифта. Сойдите с автобуса на одну остановку раньше. Возьмите место для парковки, которое находится подальше от входа в рабочий офис.
«Проще не значит лучше …» — девиз этого общественного движения.
Я не могу не согласиться с этим. Те, кто ненавидит лифты, люди, которые паркуются подальше от офиса, явно в курсе чего-то невероятного 🙂
Конечно, написание кода явно не улучшит ваше физическое здоровье. Ведь JavaScript отлично подходит для создания приложений, а не для занятий фитнесом.
Не думаю, что нужно много времени, чтобы понять, что обучение программированию полезно для вашего мозга. Это, по крайней мере, принесет больше пользы, чем просмотр «Железного кулака» или ленты Instagram.
У меня, даже после того, как я начал писать код, свободного времени остается все еще слишком много. В этом месяце, например, я уже провел десятки часов, наблюдая, как люди бросают мяч в металлическое кольцо, короче говоря, я смотрел плей-офф НБА. Поскольку я фанат «Рапторов» (Торонто), можно сказать, что я устроил себе пытку.
Приносит ли мне пользу проведение времени в одиночестве за просмотром баскетбола? Ну, я пью больше пива, когда смотрю спорт. Я ем больше начос, крылышек и картофельных чипсов. Я часто опаздываю из-за того, что смотрю игры на Западном побережье. К тому же, из-за этого я меньше сплю.
Другими словами, смотреть спортивные матчи, соревнования и т.д, для меня – порок, моя слабость. Мне это нравится, но на самом деле это несет мне только вред. Это простое развлечение, которое приводит к тому, что растет живот и появляется усталость во второй половине дня. Вот и все.
Но это же легко. Это так легко! Плюхнуться на диван. Открыть бутылочку пива. Закинуть ноги поудобней и валяться часами.
Легкий путь более заманчив, а трудный путь более полезен.
Охватывающие сложности
При просмотре фильма «Скрытые фигуры» я вспомнил о том, как нелегко воспринимать трудности. В фильме упоминалась выдержка из речи Джона Ф. Кеннеди «Мы решили лететь на Луну». Соединенные Штаты стремились к космическим путешествиям, несмотря на то, что это было трудно. Они делали это именно потому, что это было трудно.
«Мы решили полететь на Луну в этом десятилетии и сделать другие вещи не потому, что это легко, а потому что это трудно, потому что эта цель заставила нас собрать и оценить свои силы и способности, потому что это вызов, который мы готовы принять, это Задача, которую мы не хотим откладывать и с которой мы намерены также справляться, как со всеми остальными …» — Джон Кеннеди.
Слова «сложный» и «трудный» часто используются для описания чего-то негативного. Во многих случаях это уместно. Сложно наблюдать, как любимый человек заболевает и страдает. Трудно, когда отношения терпят неудачу или умирает домашнее животное. Некоторые ситуации — это боль, сплошная боль, а не прибыль.
Однако, изучение чего-либо сложного полезно само по себе. Этот процесс является призом. Попытки написать рабочий код, даже со всеми разочарованиями — лекарство для ума.
Если вы создадите что-то удивительное, и пользователи будут налетать и покупать ваше приложение, это замечательно. Если нет, продолжайте писать код. Если вы освоите JavaScript и станете гуру в YouTube с количеством подписчиков большим, чем у «New York Times», это замечательно. Если нет, продолжайте писать код.
Многие люди учатся программированию для достижения конкретной цели. Возможно, ваша работа скучна, и вы хотите ставить перед собой более сложные задачи. В этом нет ничего плохого. Может быть, вы хотите влиться в IT-сферу, потому что вам нужно больше денег для того, чтобы прокормить свою семью.
Не ждите подходящего момента, чтобы начать ваше путешествие в мир программирование. Просто начните прямо сейчас! И если это путешествие окажется трудным, не отчаивайтесь. Это означает, что вы на правильном пути. На сложном пути.