Нет идеальных технологий, но большинство популярных технологий весьма достойны. Дело в том, что плохая технология вряд ли станет распространенной и успешной. Конечно, обстоятельства и условия постоянно меняются, но важно понимать, что в какой-то определенный момент каждая технология была или просто хорошей, или даже идеальной.
Разные взгляды на этот вопрос помогут понять, что не существует единственного верного или лучшего решения проблемы. Нет того самого, лучшего языка программирования, фреймворка, операционной системы и… да, даже текстового редактора. Конечно, тебе может нравиться определенная технология больше других, возможно, ты становишься продуктивнее, когда пользуешься определенным языком программирования, но это не означает, что теперь эта технология или язык лучшие.
Довольно долгое время я относился к технологиям с большой религиозностью. Я мог тратить бессчетное количество времени на споры о том, почему Windows лучше MacOS. Я возмущался и пытался всем доказать, что C# и остальные статически типизированные языки намного лучше динамически типизированных языков, например Perl и Ruby. Иногда я – мне стыдно в этом признаваться – проклинал других разработчиков, считавших иначе. Да как они посмели верить во что-то другое и не соглашаться со мной?
Поучительный опыт я получил, когда меня попросили стать тимлидом для проекта, написанного на Java. До этого я был разработчиком. NET и специализировался на работе с C#. Ладно, не совсем так. Я превозносил С++ еще до того, как появился. NET. Честно говоря, мне не нравилось работать с Java. Он мне казался каким-то грязным и несуразным, особенно в сравнении с аккуратным С#. Как мне могло понравиться писать на Java, если я даже не мог использовать лямбда-выражения?
В конце концов я принял предложение о работе. Это было довольно выгодное предложение, и я подумал, что я могу потерпеть год, тем более что это была работа по контракту. И знаешь что? Решение принять эту работу было одним из лучших за всю мою карьеру. Работа с языком, который я ненавидел, помогла мне открыть глаза на остальные технологии. Оказалось, что Java – вполне себе нормальный язык программирования. И я понял, почему некоторые разработчики предпочитают использовать Java вместо C#.
За несколько лет работы над этим проектом я узнал больше, чем за весь отрезок карьеры перед этим. Я открыл для себя множество новых возможностей решать задачи, которые до этого были для меня невыполнимы.
С тех пор я начал мыслить шире, и после опыта с Java я даю шанс каждому языку программирования, даже динамическим языкам, и это помогло мне стать лучшей версией себя. Я отказался от привычного мнения об операционных системах, фреймворках… Сначала я пробую что-то новое, а потом уже составляю мнение. Если бы не этот полезный опыт, то, быть может, я даже не написал бы эту книгу, а если бы и написал, то ее название было бы «Почему С# – самый крутой язык, а все остальное – полный отстой».
Основная идея, которую я хочу донести, заключается в том, что не нужно заключать себя в определенные рамки. Нет никаких причин отстаивать свою точку зрения и не пробовать что-то новое. Такая точка зрения приведет к негативным последствиям. Если ты начнешь пробовать что-то новое и перестанешь держаться за что-то знакомое и надежное, то перед тобой откроется множество новых возможностей.
• Составь список любимых технологий.
• Почему ты выбрал именно эти технологии? Обоснуй свой выбор. С какими продуктами ты сравниваешь свои любимые технологии? Пользовался ли ты ими когда-нибудь?
• Выбери одну технологию, которая тебе не нравится, и найди человека, который ее любит. Выясни, почему этот человек любит именно эту технологию. Чтобы заработать дополнительные баллы, попробуй сам использовать ее.
14
Как уйти с работы и начать работать на себя
Долгое время у меня была мечта – уйти с работы и начать работать на себя. В корпоративном мире мне было некомфортно, и я понимал, что в одиночку я буду намного продуктивнее. Но была одна проблема: как именно это сделать?
Я не был знаком с людьми, прошедшими такой путь, так что у меня не былого четкого представления, что делать. Все, что я понимал, – что я глубоко несчастен, если работаю на другого человека.
Возможно, тебе не хочется работать на себя. Возможно, тебе нравятся преимущества работы в компании, и это совершенно нормально. Но если ты, как и я, всегда мечтал работать на себя, то продолжай читать.