Обычно так и бывает: чтобы выйти на новый уровень развития в какой-то области, надо приложить определенные усилия, поначалу это неприятно и немного страшно. Если усилий будет достаточно и обстоятельства сложатся удачно, придет результат, а с ним и удовлетворение. Сверхспособности и гениальность не гарантируют успеха: без упорного труда не получится достичь больших высот в профессии. Даже Моцарт потратил тысячи часов на обучение музыке, а историки утверждают, что ноты он выучил раньше букв.
Более-менее освоив HTML, CSS и JavaScript, я наивно решил, что готов к работе. Как раз в это время подвернулась возможность сделать сайт для стоматологической клиники, в которой я проходил лечение. Жизнь часто подбрасывает шансы проявить себя, важно уметь их замечать. В общем, мы договорились о небольшой цене за сайт, и я приступил к работе. На тот момент я обладал примерно половиной знаний, необходимых даже для такого маленького проекта, но моя сила была в том, что я этого не осознавал и был готов работать над сайтом, пока он не запустится.
Это был своего рода процесс Learning by Doing (изучение во время исполнения). Оказалось, что, помимо непосредственно разработки, надо зарегистрировать доменное имя (название сайта), где-то этот сайт развернуть, соединить доменное имя с физическим сервером и предоставить клиенту возможность редактировать данные. А для этого их надо хранить в базе данных, а для этого нужно… еще то, это, пятое, десятое. Подобно матрешке, большая и вроде бы понятная задача распадалась на множество мелких, решение которых уже не было столь очевидно новичку. Никакого ChatGPT тогда не было, всю информацию я получал в основном из книг и своих ошибок.
Получилось ли у меня в итоге выполнить работу? Конечно. Понравился ли клиенту сайт? Несомненно. Понравился ли сайт мне? И да, и нет. Он точно был неидеален, но я вложил в него всю душу.
Три урока было усвоено:
1. Чтобы сделать проект, не обязательно знать все необходимое на старте. Многие вещи можно будет доучить позже при наличии готовой базы.
2. Если клиенту все нравится, не стоит его в этом переубеждать. В будущем я узнаю, что это является одной из заповедей консалтинга.
3. Прыгать в незнакомые воды страшно, но это самый быстрый путь к получению знаний и навыков. Финансовая и личная ответственность в сто раз сильнее мотивирует к действию, чем самодисциплина. Правда, такая ответственность заставляет по-настоящему нервничать и легко вгоняет в стресс.
Стресс – неотъемлемая часть жизни. Чем выше уровень, тем больше будет стресса. Создание сайта за 150 долларов не сравнится по силе нервного напряжения с разработкой системы за десять миллионов долларов. Необходимо учиться самоконтролю, это позволит проживать сложные рабочие моменты без потерь для здоровья. Чтобы творить всю жизнь и делать классные проекты, нужно найти собственные приемы для восстановления. Я борюсь со стрессом с помощью музыки, чтения, танцев и спорта. Особенно хорошо подходит теннис: тут и гимнастика для глаз (фокус переключается с мяча вблизи и на сторону противника вдалеке), и психологическая разрядка (во время удара ракеткой можно представлять, что бьешь особенно раздражающего клиента или своего рассеянного коллегу). Великолепно работает, когда именно с таким коллегой и играешь.
Итак, первый сайт запущен, первые деньги на этом заработаны, но теперь хочется большего. Работая над тем проектом, я осознал, что мне не хватает глубокого понимания технологий. Поэтому первый гонорар был реинвестирован в себя. Я записался на курсы по веб-разработке. Это было правильное решение: за пятнадцать учебных часов с преподавателем я получил столько знаний, на самостоятельное освоение которых понадобилось бы минимум в десять раз больше времени. Когда есть возможность, фундамент надо строить с профессионалом. Это касается любой области, будь то музыка или стендап-выступления. Так вы потратите меньше времени и сразу научитесь делать правильно. Зачастую переучиваться куда сложнее, чем учиться.
Что есть фундамент в IT? На этот вопрос нет однозначного ответа. Математика или низкоуровневый язык программирования? А может, достаточно новомодного Питона и пары библиотек искусственного интеллекта? Я ответил бы на этот вопрос так: фундамент – это навыки и знания, которые позволят на протяжении всей карьеры изучать, применять и создавать новые технологии.
Где и как построить IT-базу? Тут можно вести долгие дискуссии относительно необходимости высшего образования, преимуществ онлайн-курсов и реальной практики. Я же в этом вопросе категоричен: надежный IT-фундамент можно создать только одним способом. В университете.
Университет