Чтобы раскрыть свои конкретные знания, проявите искреннее любопытство

«Почему вы решили стать веб-разработчиком?»

Это был вопрос, который мне недавно задал один из моих коллег.

«Мне нравится создавать удобный пользовательский интерфейс», - ответил я. И как только я сказал это вслух, я понял, что это звучит немного банально.

Другой мыслью было: «Я стал разработчиком, потому что им хорошо платят», но это всего лишь внешняя мотивация, и я хотел понять свою внутреннюю мотивацию.

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

Где все началось

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

Зачем мне играть с ними в футбол, когда впереди меня ждет масса фантастических приключений? - подумал я.

Я был очарован компьютерами даже без Интернета, потому что мой первый компьютер у меня появился в то время, когда не было домашнего Интернета (или он был очень дорогим и очень медленным). Но у него были курсор и мышь. В играх была возможность сохранять ваш прогресс и продолжить позже. Это все изменило.

Я любил стратегии и особенно экономичные игры (в основном магнаты). Мне нравились такие игры, как RollerCoaster Tycoon или SimCity 3000. Вы что-то строите - вы это развиваете - вы зарабатываете деньги. Никакой войны, никакой необходимости убивать виртуальных врагов, только мир и деньги - я рос хорошим пацифистом, мои родители должны гордиться. Но особенно мне понравились интерфейсы в этих играх: все меню, кнопки, окна - все они выглядели так интересно.

Дача

Что такое лето для типичного школьника? Три месяца свободы, больше никаких скучных занятий, не нужно рано вставать. Сладкая сделка.

Но также было время, когда мой компьютерный приятель говорил мне: «Увидимся в сентябре, до свидания!» Потому что, как и большинство детей в России в то время, я все лето проводил на даче (специальное русское слово для этого типа дома означает небольшой загородный дом где-то вдали от следов цивилизации) с другими отчаявшимися детьми. которые не понимали, зачем они там все лето.

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

Но эти милые ребята не могли заменить мне компьютерные игры.

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

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

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

Что-то пошло не так

Я этого не ожидал. Я не знал, что делать игры чертовски сложно! Я был слишком молод и слишком наивен.

Но я не хотел просто разрабатывать интерфейсы; Я хотел оживить их.

Я даже не знал, как начать разрабатывать игру. Все, что я видел, выглядело таким скучным и таким сложным. Мне пришлось выучить какой-то язык программирования («почему я не могу просто перетащить все компоненты и оживить их?»), Использовать некрасивую IDE, которая выглядела как продвинутый Word с множеством инструментов. Это обескураживало.

Единственным человеком, который что-то знал о программировании, был коллега моего отца. Он сказал мне изучать язык дельфи и дал мне огромный учебник (буквально больше, чем все мои школьные учебники вместе взятые). Я действительно хотел прочитать это и попробовать, но я не нашел в книге раздела, который бы учит меня «Как создавать игры», поэтому я отказался от этого.

Когда я подключился к домашнему Интернету, я обнаружил, что существуют эмуляторы игровых консолей, и скачал эмулятор SNES. После того, как я поиграл во все игры, о которых мечтал, я нашел новый жанр - JRPG (например, Final Fantasy) и влюбился. Больше никаких магнатов и убийц SimCity - спаслись EA и Maxis.

Как ролевые игры сделали меня веб-разработчиком

Я нашел эту удивительную программу - RPG Maker - и смог создавать игры без навыков программирования, просто используя приятный и дружелюбный интерфейс. Больше никаких учебников размером с кирпич. Больше никаких уродливых текстовых редакторов! Это был просто сон.

Сообщество Russian RPG Maker было небольшим, буквально два сайта и один форум, не более того.

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

У меня уже был некоторый опыт создания веб-сайтов, и я очень этим гордился. Он был похож на продукт Wix (конструктор веб-сайтов), и я делал фан-сайт о Симпсонах. И было весело создавать этот веб-сайт, хотя он был очень глупым.

Возвращаясь к сообществу RPG Maker. Естественно, я занимался технической частью нашего сайта и нашего форума (на основе vBulletin). Поскольку у меня не было никаких знаний о HTML или CSS, я начал читать об этом и пробовать. Я хотел иметь уникальный интерфейс для нашего сайта.

Проблемой в то время было отсутствие информации и актуальных руководств. Мои базовые знания о веб-интерфейсе были очень запутанными и хаотичными. У меня не было никого, кто мог бы мне помочь, еще не было онлайн-курсов. JavaScript был для меня самым необъяснимым, но я мог делать некоторые базовые вещи, например, проигрывать фоновую музыку.

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

Моя первая настоящая работа

Я поступил в технический университет и получил реальные знания. Я много учился один, так как наши уроки в университете не охватывали никаких актуальных современных знаний. Вместо того, чтобы изучать JavaScript как язык, мы делали бессмысленные анимации (например, буквы, следующие за курсором). Я нашел свою первую работу младшим разработчиком и совмещал ее с учебой.

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

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

Что дальше?

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

После 8 лет работы фронтенд-разработчиком я все еще люблю создавать красивые удобные интерфейсы.

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

Игры сделали меня веб-разработчиком.

И, ну, у меня все еще есть мечта разработать собственную игру.

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