Екатерина

"Чтобы начать программировать, нужно сильно разозлиться". 4 вдохновляющих истории от гуманитариев


Чуть больше года назад журналист "Секрета Фирмы" Константин Бочарский, в очередной раз разозлившись на программистов-подрядчиков, пересмотрел лекцию, которую давно пытался осмыслить, и набрал код: "Тут у меня получилось. Нажал на кнопку – и на белой странице показалась не "жопа", как обычно, а выгрузилась информация, которую я туда записал. Для меня это было, словно я ступил на поверхность Луны. После этого все быстро поехало", - вспоминал он в интервью RB.ru. Мы собрали еще несколько вдохновляющих историй гуманитариев, которые не побоялись "ступить на поверхность Луны".

Фото: Shutterstock

Константин Бочарский, создатель Pressfeed:


"Про то, как гуманитарий научился программировать - довольно долгий рассказ. И начинается он с того, что с программированием у меня как-то не складывалось.

Я покупал книги, смотрел видеокурсы, заплатил за курс "PHP для начинающих" в "Специалисте" - все было без толку. Словно в голове была огромная дырка, сквозь которую со свистом пролетала информация. Я буквально ощущал, что ко мне "не прилипает". Мы даже устроили эксперимент с приятелем, профессиональным программистом – я ездил к нему утром по субботам. Приезжал, мы завтракали и несколько часов занимались. Было клево, но тоже без толку.

При том, что желание было довольно сильное. Я хотел научиться программировать не просто так – у меня постоянно была масса идей, которые хотелось реализовать. Как известно, есть два способа реализовать проект – правильный и тот, который работает. Правильный – это когда каждый занимается своим делом. Программист – программирует, веб-дизайнер делает макет, верстальщик – верстает, а автор идеи – выбирает подрядчика, пишет ТЗ, ставит задачи и платит. Способ, который работает – это когда ты просто берешь и делаешь.

Поначалу я шел правильным путем. Долгое время упражнялся в написании ТЗ. Я старался писать так, чтобы все было предельно понятно, четко, лаконично. Мои ТЗ даже хвалили на Фриланс.ру. Это было приятно, но не работало. Наверняка среди читателей этого текста много людей, которые размещали проекты на фриланс-биржах, поэтому вы знаете все то, что я мог бы вам про это рассказать.

Тогда я решил, что вся проблема в буквах. Что, мол, текст, вербальная коммуникация – полны изъянов. Слова лживы. То ли дело готовый макет. И я стал изучать Photoshop. Я рисовал макеты и вскоре стал, наверное, не самым плохим веб-дизайнером на планете. Не очень хорошим, но я могу рисовать макеты и отдавать их программистам. Слова больше были не нужны. Я стал на целую ступень ближе к результату. Но на сам результат это не повлияло.

Переломным стало событие, которое меня здорово разозлило. Я в очередной раз нарисовал пару экранов очередной своей идеи, отправил знакомым программистам, заплатил и вскоре получил результат. Из двух функциональных элементов не работал ни один. "Не работает", - сказал я. "Но мы же сделали", - сказал исполнитель. "Но оно не работает", - сказал я. "Но мы же сделали!" - сказал исполнитель. Диалог зациклился.

Не знаю почему, но именно эта ситуация меня чудовищно разозлила. Настолько, что, по-моему, я толком не смог уснуть. Встал в 6 утра и поехал в редакцию (тогда я еще работал в журнале "Секрет Фирмы"). У нас была заблокирована самостоятельная установка софта на редакционные компьютеры, поэтому я поставил в FireFox плагин FireFtp, а код набирал просто в Блокноте. Я зашел на сервер, создал в phpMyAdmin базу данных (и она каким-то чудом создалась. Чудом - потому что я не очень понимал, что значил этот миллион опций), открыл какой-то сайт с кодом запроса к базе, набрал его, запустил и увидел в браузере не ошибку, как обычно, смысла которой я даже не смог понять, а мои данные. Это был невероятный шок. Я в замешательстве бродил по коридору, пил воду из кулера и не мог в это поверить. Это было очень круто. А главное, я вдруг все понял. Я как будто просто увидел все это внутри себя. Абракадабра символов стала вполне читаемым алфавитом. Да, он требовал справочника и порой поддавался не с первого раза, но оказалось, что заниматься этим не так уж и сложно. Требовался просто немного другой взгляд (если пафосно – образ мышления), предметная деятельность тут выполнялась на непривычном уровне абстракции, и надо было просто оставаться на этом уровне – думать немного по-другому. Потом оказалось, что к "уровню абстракции" надо добавить алгоритмическую логику, потом – немного математики. Но тут я уже вошел во вкус.

Майскую поездку в Швецию в 2014 году я провел со смартфоном, в котором смотрел курсы на Udemy. Довольно быстро я скупил всю российскую полку книг по языкам и технологиям, которые были мне нужны. И купил себе Kindlе, чтобы читать западную. Я отказался от машины, потому что поездка на метро давала 1,5 часа чтения в день (30 часов в месяц – чистых 3 рабочих дня чтения) и порой писал код просто ручкой на бумажке, пока ехал на работу. Я днями напролет сокрушался над тем, какой я тупой, когда не смог придумать, как сделать ту или иную фичу. И невероятно радовался тому, какой я умный, когда у меня это получалось. Раньше я писал в блокнот заголовки заметок и кусочки текстов, когда появлялась подходящая идея, теперь я рисовал ромбики и прямоугольники алгоритмов и записывал псевдокод, чтобы не забыть, когда появлялась идея.

А в декабре 2014 года из всего этого вырос Pressfeed.

Друзья часто спрашивали, что я им посоветую, как учиться им. В результате у меня получился такой набор советов:

1. Главное - иметь очень сильную цель, реальный проект, который очень надо сделать. И, возможно, сильно разозлиться.

2. Дальше – на первом месте среди моих учителей все-таки книги. Я называю это "разговор с великими". Когда я читаю, я слышу голоса людей и интонации и, кажется, даже вижу их. И радуюсь тому, что у меня есть возможность послушать этих крутых российских и западных кодеров. Они делают крутые штуки, умеют интересно рассказывать, и вот всего за 500 рублей они целый месяц со мной персонально разговаривают.

3. Я посмотрел кучу бесплатных обучающих видеокурсов. Это очень прикольно и тоже полезно. Но для меня видео всегда менее удобно, чем книги. Оно "медленнее" и в нем сложно "пропустить пару абзацев". Т.е. если есть какой-то затянутый или не интересный момент, ты не можешь просто перевести взгляд. А перемотка - это какое-то мучение. Перемотал больше, заволновался, что вдруг пропустил важное, перемотал назад, промахнулся, слушаешь снова.

4. Я активно пользовался Pocket, скидывая в него целые годовые архивы интересных мне сайтов. Например, я нашел блог разработчиков сайта газеты Guardian. Я прошелся по нему до 2012 года и закинул себе в Pocket каждый пост. Потом читал в метро. То же сделал с разделом PHP на SitePoint.com - несколько сотен статей. И читаю в дороге, очередях и пр.

5. Я отобрал себе массу курсов в онлайн-академиях – Coursera, Udacity, Stanford online. Это очень духоподъемно и хорошо с точки зрения имиджа. Вроде: "Ого! Я смотрю те же лекции, что и парни в Стэнфорде!" Но с прикладной точки зрения это дало мне не много пользы. Я перевел их в категорию "вознаграждение" - мол, вот и я приобщился к Стэнфорду. Тем не менее, я прошел базовый курс Computer Science – CS 101 на Stanford online, сдал тесты и получил сертификат. Учиться у реального профессора Computer Science было очень здорово. Он занятный. Сейчас прохожу курс Machine Learning у самого Andrew Ng, сооснователя Coursera и профессора Computer Science в Стэнфорде. Здесь мне пришлось взять учебник 10 класса по алгебре и началу анализа, чтобы вспомнить производные и интеграл, а также учебник по "вышке" – чтобы получить нужный объем знаний по линейной алгебре (векторы, матрицы). Понравилось.

В результате поступил на годовой онлайн-курс изучения Java, C++ и математики, где много тестов, экзаменов и довольно напряженный график.

6. Очень люблю Habrahabr и Тостер, порой подвисаю на час, зацепившись за что-то интересное, прикладное.

7. Форум php.ru (только с реальными острыми проблемами, которые сам не смог решить в течение двух дней) и просто поиск в "Яндексе" и Google. Это классический "stackoverflow coding" - по названию ресурса, где можно найти народное решение любой проблемы в программировании. Завел себе специальный документ в Google Doc, в который складываю интересные посты по всяким прикладным темам.
Со временем оказалось, что это – целая жизнь. И через год неожиданно для себя я перестал быть журналистом и покинул профессию, в которой прожил почти 20 лет и считал, что это – то, чем я должен заниматься. А еще через год Pressfeed стал главным инновационным событием на рынке российского PR, сервисом с десятками тысяч пользователей, командой и выручкой. Сегодня даже сложно представить, как бы все сложилось, если бы тогда я не разозлился, как следует".
 
Жоао Габриэл С.Триндаде, менеджер по локализации в LinguaLeo:

На фото Жоао - крайний слева

"Я окончил философский факультет в Рио-де-Жанейро, работал учителем в школе в течение трех лет – до того, как переехал в Россию примерно пять лет назад.

Я начал работать в российском технологическом стартапе в образовательной сфере, применяя свои знания английского, португальского, испанского, немного французского и сейчас – немного русского. С того момента, как я начал работать над локализацией сайта для Латинской Америки, я чувствовал, что мне бы очень пригодились навыки программирования. Я начал изучать front-end разработку полтора года назад и сейчас владею HTML, CSS, JavaScript. Это, безусловно, помогает мне в повседневной работе. Сейчас моя цель – улучшить навыки кодинга, чтобы стать разработчиком и заниматься back-end, когда необходимо создавать решения для локализации или интернационализации.

Я учусь самостоятельно, посредством онлайн-курсов (некоторые из них платные, некоторые бесплатные), а также читаю технические книги. Самое сложное, на мой взгляд, - некоторые навыки, которые придут со временем.
 
До того момента, когда некоторые вещи обретут смысл, вы должны посвящать некоторое количество времени и энергии им, поскольку часто один язык или технология зависит или связана с другой, которая вам еще неизвестна. До того, как я начал программировать (и сейчас, если позволяет время), я работал в моей домашней студии, используя цифровые рабочие станции для профессиональной записи и редактирования звука. Иногда для этого требовалось писать какой-то код, но погружаться я стал лишь в веб-разработку.
 
В LinguaLeo я работаю менеджером по локализации. Я управляю небольшой группой переводчиков из Турции, Испании, Латинской Америки, краудсорсинговым сообществом, а также занимаюсь поддержкой латиноамериканских и испанских пользователей приложения и сайта, кроме того, исправляю некоторые ошибки интерфейса, когда позволяет время.
 
Недавно коллеги-разработчики предложили мне стать стажером в их команде, чтобы больше времени уделять front-end".  

Алексей Горностаев, менеджер продукта в "Канобу" (социальная сеть для геймеров):


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

Я отвечаю за продукт в "Канобу". В том числе, и за разработку, хотя сам, как и многие другие менеджеры по продукту, никогда не программировал. Я очень ценю людей, которые могут сами сделать что-то руками. Очень полезно, когда менеджер может не только рассказать о задаче, но и, например, нарисовать свою идею или поправить верстку со стилями, потому что часто так быстрее и понятнее.

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

Сейчас такое разнообразие образовательных материалов, что разобраться, как именно стоит подойти к изучению чего-то нового, - это уже задача. К счастью, и ее уже решили. Вот, например, дорожная карта по правильному изучению JavaScript. Здесь автор комбинирует классические книги о языке с современными интерактивными онлайн-курсами и статьями в вебе. Мне лично сложно найти мотивацию в выполнении теоретических примеров, поэтому я старался как можно быстрее перейти к практике и параллельно чтению сразу же пытался делать небольшие проекты (которые мне действительно хотелось увидеть готовыми).

Наверное, нельзя сказать, что я научился программировать, но горизонт теперь шире - какие-то простые идеи можно сразу сделать, а не ходить вокруг да около, да и своих коллег стал лучше понимать.
Когда моя семилетняя дочь заинтересовалась игрой на губной гармошке, она не думала о том, как правильно нужно играть, и ее не заботило, как именно это будет звучать. Она просто взяла гармошку и начала каждый вечер выдувать из нее звуки. Главное - это не бояться и получать удовольствие".
 
Аюна Вогель, журналист из Москвы, несколько лет назад переехавшая в Нью-Йорк:


Год назад Аюна решила поменять все и приступила к изучению программирования, о чем она недавно рассказала в своем блоге.

"Что я впервые сделала в 2015:

Начала учиться кодить. Мое погружение началось с запроса в Google "learn to code". Я прошла CodeCademy, курс Make a Website  и написала свою первую строчку кода 18 марта 2015 г.

1. Я вошла в число 30 поступивших на программу C4Q (coalition for Queens) изучения языка мобильной разработки приложений для iOS (из 600 подавших заявку). Access Code предоставляют полные стипендии способным взрослым людям, стремящимся научиться программировать и стать iOS/Android разработчиками. Миссия C4Q – принести больше разнообразия в технологическую индустрию Нью-Йорка.

2. Я кардинально изменила свой график. Мои занятия проходят по вечерам с 19 до 22 и по выходным с 10 до 18. Кроме того, у меня очень много работы вне класса. У меня нет выходных уже в течение 9 месяцев. Но это стоит того. Я получаю огромное удовольствие от учебы. Впрочем, пару раз я плакала.

3. Я разработала несколько приложений под iOS!

4. Я представила одно из приложений 200 слушателям в офисе Google в Нью-Йорке.

5. Я, на самом деле, использую приложение, которое создала. Это самое лучшее чувство.

6. Побывала на моем первом митапе. Я была настолько сильно испугана, но пошла туда, и мне очень понравилось!

7. Побывала на своем первом хакатонеи наша команда выиграла! На моем втором хакатоне наша команда выиграла приз Кейт Спейд (дизайнер сумок – прим.) за лучшее приложение, поощряющее женщин присоединяться к техиндустрии.

8. Получила преподавательский опыт. Так, единственные свои выходные я провела на Coder Dojo, бесплатном мастер-классе для детей в возрасте 7-17 лет, которых обучала писать код. Я очень нервничала, что не смогу ответить на вопросы студентов. Но все прошло хорошо, и я сама многому научилась. Я помогла нескольким детям создать их первые веб-страницы на HTML и CSS, мы вместе гуглили, если у них возникали какие-то вопросы, и я показала им несколько удобных сочетаний клавиш (⌘C, ⌘X и ⌘V). Это было, возможно, самое важное, чему я научила в тот день!

9. Я подала заявку для участия в демо  NYTM, крупнейшем митапе в мире, и получила приглашение представить мое приложение! Я не думала, что они могут когда-нибудь выбрать мой проект, но… 

10. Я встретила столько потрясающих людей в 2015 г., которым безумно благодарна за то, что они делятся своими знаниями со мной. Урок, который я усвоила за это время, - просто делай. Никогда не говорите "нет" самим себе.

Сейчас я в поисках моей первой работы разработчика в компании своей мечты - хочу работать с людьми, которые страстно увлечены своим делом".


Комментарии


Подпишитесь на рассылку RUSBASE

Мы будем вам писать только тогда, когда это действительно очень важно