Вы действительно хотите заниматься этим в 50?
Что ж, мне не очень то хотелось заниматься этим, когда мне было 20. Я занимаюсь этим ради денег. И пока есть деньги в программировании, я, по всей вероятности, продолжу.
Чем еще вы бы хотели заниматься в 50? Назовите профессию хотя бы примерно похожую на программирование в следующем:
• Требования к формальному образованию базовые или отсутствуют
• Хорошая компенсация, даже для посредственных работников
• Миллионы рабочих мест
• Никаких физических усилий
• Никаких рисков здоровью или юридических рисков
Программирование – это деньги ни за что. Начать программировать очень просто, но крайне сложно бросить. Чем другим вы бы занимались?
Я работаю с тремя юристами – двое стали программистами, а третий – менеджером проекта. Я не встречал программистов, ставшими юристами. Но я знаю инженера – не программиста – который стал патентным адвокатом (его словами: «однажды, тебя начинает возмущать, что твой менеджер ровесник твоим детям»). Вы бы хотели стать патентным адвокатом в 50?
У меня был менеджер, который решил, что он лучше будет школьным учителем, думая, что этот род занятий более полезен обществу. Он уволился через 8 месяцев, сказав в своем прощальном интервью известной газете: «Иногда мне просто хочется войти в класс с пулеметом и открыть огонь.» Сейчас он работает в Samsung и чувствует, что его вклад в создание визуализаторов для смартфонов приносит достаточно существенную пользу обществу.
Один из моих коллег на работе уже давно изучает целую кучу вещей. У него есть ученая степень в психологии и в чем-то под названием Visual Theater. Он занимался программированием на полставки все это время, чтобы финансировать свою учебу. Программирование – часть его визуальных представлений (в которых участвует компьютерная музыка). Скорее всего, он будет программировать чтобы обеспечить свои занятия искусством. Не думаю, что у него есть план бросить программирование в какой-то определенный момент.
Я видел много людей, которые «увольняются», чтобы начать учить что угодно – от физики до философии, но возвращающихся обратно к программированию. Деньги вызывают привыкание. Конечно, существует много других источников удовлетворения – почему я и веду этот блог бесплатно – но существенная часть этого удовлетворения вызвана спросом, прямо или косвенно, и поэтому очень тесно связана с деньгами. «Создавать что-то полезное» и «делать деньги» — близкие родственники.
Вы, конечно, могли бы заработать столько, чтобы не нуждаться в работе. Но, скорее всего, не заработаете, и потому программирование ваш план Б. Кроме того, у материальных благ есть одно качество – их легко отнять. Я из советской России, поэтому мне свойственно преувеличивать вероятность этого, но в действительности, собственность легко конфисковать и сегодня бумажные деньги завтра могут стать бумагой. И CCCР в этом не уникален; США конфисковали золото у своих граждан примерно в то же время, что и СССР. Однако профессиональные навыки не могут быть конфискованы. Поэтому предусмотрительный программист (параноик?) будет прилагать некоторые усилия, чтобы продолжать оставаться в хорошей форме, даже если обеспечен настолько, что может позволить себе не работать.
Говорят, что профессиональное программирование вызывает стресс. Но, опять же, по сравнению с чем? Работой врача? Работой юриста? Отвечать на звонки взбешенных заказчиков, в то время как ваши ответы записываются для последующей проверки?
Какой стресс? Программисты, которые хоть как-то умеют программировать – например, могут корректно распечатать двоичное дерево – в большом дефиците. Этот дефицит не позволяет так просто командовать программистами. Вы можете попытаться запугать их на неолачиваемые сверхурочные, но они быстро понимают, что это рынок продавцов, и что вы, в сущности, блефуете. У вас некем их заменить.
Со спросом превыщающим предложение, в программировании хватает места для каждого. Это приводит к не такой конкурентной среде, как, скажем, в финансовых/инвестиционных услугах. Также, программисты обычно ограждены от заказчиков и высшего руководства – людей всегда правых, что делает общение с ними слегка утомительным.
Сроки? Конечно, у нас они есть, как и у всех остальных. Но давайте признаем – у нас есть склонность их нарушать, и это не так уж напряжно для нас, если только мы сами не паримся. Если вам отвели нереальные сроки, и вы стараетесь изо всех сил, и не успеваете, вы можете глубоко страдать или оставаться в гармонии с собой. Факт в том, что ваше материальное благополучие редко находится под угрозой из-за того, что вы не успели вовремя, поэтому ваша реакция зависит полностью от вас.
Говорят, что программисты не могут полностью понимать, что происходит, со всеми этими API и прослойками и прочим. И если вы не понимаете среду в которой работаете, то это вызывает стресс и просто не прикольно. Вполне справедливо; но опять же – кто понимает свою среду лучше, чем программист? Доктор, копающийся во внутренностях пациента? Юрист, перелопачивающий правовые документы? Инвестор, торгующий производными ценными бумагами? Менеджер, конроллирующий работу 10 или 20 программистов? Со всей самостоятельно внесенной сложностью, мы все равно в лучшем положении, чем большинство.
Факт в том, что вокруг довольно таки мало пятидесятилетних программистов. Но значит ли это то, что люди не выживают в этой отрасли? Более вероятно, что это просто результат роста. 30 лет назад было немного 20-летних программистов, если сравнивать с ситуацией 10 лет назад. Поэтому сегодня 50-летних программистов меньше, чем 30-летних. Через 20 лет ситуация будет другой, пропорциально замедлению роста в программировании.
Поэтому я не планирую бросить программирование, не потому, что это такой огромный источник счастья сам по себе, но потому что оно выглядит так хорошо на фоне почти всего остального. Возможно, не самое «страстное» заявление, но страсть перегорает, в то время как жадность устойчива. И если вы планируете бросить программирование, мне интересно что вы выбрали в качестве альтернативы, и я не удивлюсь, если вы вернетесь к программированию через несколько лет.