Изначально хотел назвать статью «Почему у айтишников большие зарплаты и когда это закончится». Статья создана по мотивам внутренних митапов и докладов.
Привет! Меня зовут Игорь Симдянов, я работаю архитектором решений в Нетологии, пишу книги, читаю курсы. Часто студенты, коллеги, знакомые задают вопрос о том, куда будет развиваться IT, не закончится ли оно завтра. Есть модные темы, которые не успев начаться сразу заканчиваются. IT у нас работает с прошлого столетия. Видимо, есть какой-то источник, который подпитывает интерес, может ли он исчерпаться и когда? Попробуем найти топливо IT, промоделировать развитие индустрии и предсказать признаки, по которым можно будет определить, что отрасль движется к стабилизации или деградации.
Иными словами, попробуем заглянуть в будущее. Однако для этого надо слегка откатиться назад, чтобы посмотреть, как IT-отрасль развивалась. Тогда будет проще оценить, что нас ждёт впереди.
Да, нам нужно IT
Основа нашей цивилизации — инструменты. Мы не просто эволюционировали до состояния, которое позволило нам их использовать, мы сами стали их совершенствовать. Инструменты становятся всё замысловатее, эффективнее и совершеннее. Это может быть молоток, промышленный робот или денежные отношения.
Некоторые из наших инструментов трудно охватить взглядом или осмыслить, они больше напоминают стихию или предмет изучения: интернет, СМИ, транспортная система. Их даже трудно назвать инструментами, скорее — это отражение нашей деятельности. Для простоты всё, что делают люди своими руками, мы будем называть инструментом, имея в виду, что они нас ускоряют, делают нашу жизнь проще и комфортнее.
Зачем же нам нужны инструменты? С одной стороны, они помогают решать возникающие проблемы, с другой — повышают уровень жизни. Мы получаем удовольствие от создания инструментов. Я бы сказал, это один из наших инстинктов.
Для функционирования нашего организма нужно какое-то количество математики. Процессы в нашей голове отражают эту математику на наш язык. Язык мы можем записать в виде символов. С помощью символов мы можем передать открытие одного человека другому или тысяче других. Это позволяет нам строить всё более сложные инструменты. А главное — нам это очень нравится: мозг поощряет нас каждый раз, когда мы что-то изобретаем или добиваемся. Поэтому наши инструменты развиваются вместе с нами. В нас зашиты механизмы их развития и совершенствования.
Перелётные птицы летят осенью на юг, весной — на север. Это их инстинкт. Муравьи строят муравейник — это их инстинкт. Если людей оставить в сытости и покое, они начинают кодировать секретные послания в Библии, создавать сложный этикет, формировать математику, экспериментировать с материалами.
Стивен Пинкер в своей книге «Язык как инстинкт» развивает идеи Ноама Хомского, что язык является инстинктом нашего вида. Люди за два поколения формируют язык — это зашито в мозге. Идея tabula rasa (чистая доска) не работает: мы не изобретали тысячелетиями наши языки, просто по факту рождения мы можем пользоваться языковыми структурами почти в готовом виде. Первые три года у человека включается «программа» на адаптацию к текущему языковому окружению. Многообразие языков обусловлено как раз тем, что люди не могут контролировать язык. Он постоянно изменяется, но это не является проблемой для вновь рождающихся, так как правила использования языков, программа развития у всех людей одна и та же. Главная особенность нашего вида: мы извлекли эволюцию из ДНК, так как научились кодировать и передавать информацию и передавать её не генетически, а в виде символов. Мы разговариваем на языках, делаем инструменты не потому, что нас к этому подталкивают обстоятельства, а потому что мы не можем этого не делать. Как перелетные птицы не могут не лететь осенью на юг, а весной — на север.
Но давайте вернёмся к IT-отрасли. Зачем нам компьютеры и что это? Очень долго инструменты были статичными: палкой-копалкой расковыряли землю, дубинкой ударили дичь. Всё это требовало живого участия человека и его мускульной силы. С пониманием природы энергии и её обузданием у человека появились инструменты, которые могли работать почти без его участия. Водяная мельница, пар, энергия сгорания, а затем и электричество дало совершенно другой тип инструментов — машины. Теперь нет необходимости сгонять кучу народу в одно место, чтобы построить что-то большое. Машины по сравнению с человеком гораздо производительнее и обладают бОльшей силой.
Однако машины не адаптируются. Один раз построенный водяной молот будет под действием соседней реки подниматься и опускаться. Превратить его в сверлильный станок на полчаса не получится, даже если очень надо. Ответом на это неудобство стали компьютеры — программируемые машины, поведение которых можно модифицировать. Программисты нужны, чтобы изменять поведение машин.
Разработчики компьютеров или программ составляют рабочую силу IT-отрасли. Когда мы говорим про востребованность и заработные платы айтишников, речь идёт о разработчиках компьютеров и программ для этих компьютеров.
Вместо того чтобы строить дома, варить нитробензол, работать на сухогрузе, или заниматься каким-то другим полезным и оплачиваемым занятием, разработчики возятся с компьютерами. Почему? Потому что на их услуги есть спрос.
Если человечество найдёт другие способы справляться с проблемами, которые решают компьютеры, вся история с программированием и IT закончится, потому что оплачивать это будет некому и незачем. Почти все разработчики займутся другими делами, которые будут востребованы обществом. Айтишники не могут быть движущей силой сами по себе, результат их труда нужен людям. Это желание платить за компьютеры и программы порождает мощную IT-отрасль.
Почему заработные платы у них выше, чем у других инженеров? Проектировать суда или электроподстанции не проще, чем создавать веб-формы и обслуживать CRUD-запросы. За IT-кадры идёт конкуренция, их не хватает. А как так получилось, что за 70 лет не было подготовлено нужного количества разработчиков? Для проектирования подстанций инженеров хватает, а куда деваются разработчики? Маловероятно, что в определённый период жизни им резко перестают быть нужны деньги, которые бизнес вливает в IT-сферу многие десятилетия. Как долго может продлиться такой период и что будет служить признаками перехода IT-отрасли в обычную не разогретую инженерную специальность? Попробуем ответить на эти вопросы ниже.
Топливо для IT
Мы живём в уникальное время фактически взрывообразного развития компьютерной отрасли. На протяжении одного поколения у нас кардинально меняются технологии и языки. Жизнь IT-специалиста похожа на жизнь белки в колесе. Приобретаемые знания и опыт быстро устаревают: гораздо быстрее, чем это происходит в других профессиях.
Мне кажется, что топливом, при помощи которого движется IT-отрасль, долгое время был закон Мура. Гордон Мур, основатель компании Intel, в 1970-х годах сформулировал эмпирическое правило. Оно гласит, что каждые 18 месяцев количество транзисторов в интегральных схемах удваивается. Обычно его отображают в логарифмической форме:
Если мы отобразим его не в логарифмической шкале, а честно в штуках, то у нас получится экспонента.
С 70-х годов прошлого столетия в IT-отрасли наблюдается экспоненциальный рост. Именно так происходит взрыв. Следствием этого является взрывообразное развитие всей компьютерной отрасли. Только мы какую-то технологию начинаем отрабатывать, совершенствоваться в ней, у нас появляются более мощные компьютеры, процессоры, видеокарты, и нам нужно переключаться на другую технологию — использовать подход, учитывающий возросшие возможности. Начинаем разрабатывать новую технологию, происходит что-то ещё: компьютеры объединяются в сети, появляется интернет, образуется новая отрасль. Выясняется, что интернетом пользуется множество людей, туда проваливаются целые страны. И вот у нас уже большие данные, с ними надо что-то делать, появляется ещё одна отрасль по их обработке. Не справляемся с большими данными — нужно подключать какие-то математические модели, нейросети, и вот у нас уже формируется направление искусственного интеллекта.
Закон Мура выступает двигателем этого взрывообразного процесса, но именно со стороны железа, вычислительных возможностей. Человеческое сознание не может развиваться экспоненциально. В лучшем случае оно развивается линейно: прорывы и открытия нарабатывают очень медленно, и они никак не хотят удваиваться каждые 18 месяцев. В IT-отрасли мы вынуждены жить в этой революционной ситуации десятилетиями. То есть растущая аппаратная часть постоянно меняет правила игры в отрасли. Меняется не просто язык, меняется подход к тому, как разрабатывать программы.
Это приводит к тому, что концепции в языках программирования меняются скачками, примерно как у Томаса Куна в его «Структуре научных революций». Только здесь не нужно ждать, когда вымрут поколения учёных, действующих в старой парадигме. Здесь «умирает», точнее, устаревает железо. Для программирования нового железа приходит молодое поколение разработчиков с альтернативным подходом, часто с другими языками программирования и инструментами.
Эта гипотеза отчасти объясняет, почему разработчиков не хватает: сосредоточившись на старых технологиях, не все успевают оперативно переключиться на новые. В свежих отраслях образуется дефицит, но молодые разработчики его закрывают: им не нужно забывать старые подходы, они сразу могут начать работать с последними технологиями.
Поэтому законодательство не смогло загнать многие области IT под жёсткие лицензии. Такие попытки были, однако, на рынок постоянно выходят прорывные решения, которые отменяют старые. Если кто-то захочет прописать в законе, на каком ПО и как следует вести ту или иную деятельность, рост аппаратных возможностей может привести к тому, что конкуренты решат проблемы людей более эффективно (заменят обычную почту электронной). В результате законы становятся мертворождёнными. Например, прямо сейчас действует закон, что доставка писем разрешена только государству. Можно создать коммерческую службу доставки грузов, но не писем в конвертах.
Вехи в IT
Для того чтобы предсказывать будущее, нужно знать, где мы находимся сейчас. Пробежимся по основным вехам, чтобы понимать, где мы оказались.
Вернёмся в середину прошлого века и посмотрим, как работали программисты. Вам вручают процессор, в котором все команды пронумерованы. Комбинация номеров команды и адресов — это программирование в кодах. Фактически такая программа — это готовый исполняемый файл, который процессор может исполнять напрямую. Например, 44-я команда складывает, а 23-я вычитает. Ячейки памяти тоже пронумерованы. Вот вы начинаете их комбинировать, и у вас получается длинная цепочка из цифр.
cffa edfe 0700 0001 0300 0080 0200 0000
0f00 0000 5007 0000 8500 0000 0000 0000
1900 0000 4800 0000 5f5f 5041 4745 5a45
524f 0000 0000 0000 0000 0000 0000 0000
0000 0000 0100 0000 0000 0000 0000 000
Программировать в кодах довольно утомительно, люди плохо запоминают числа. Кроме того, с выходом нового процессора номера команд изменяются, и программу приходится составлять заново. Поэтому разработчики создали ассемблер. Коды команд заменили на мнемоники — короткие буквенные сокращения, которые запоминать гораздо проще.
setcom proc far
push ds
push es
mov ax,cs
mov ds,ax
mov es,ax
pop ax
Ассемблер позволил создать долгоиграющие программы, такие как операционные системы. Но если архитектура процессора менялась, программу можно было выкидывать, потому что адаптировать её очень сложно.
Все усилия и работа над программами идёт за счёт бизнеса, который извлекает прибыль. Задача коммерции считать деньги и оптимизировать расходы. Первый вопрос, который возникает у бизнеса: «Почему мы каждый раз переписываем программы? Давайте сделаем возможность переносить их с одного компьютера на другой».
Так появились языки высокого уровня. Конечно, языки высокого уровня возникли не как требование коммерческих структур, но своё распространение они получили во многом благодаря бизнесу. С помощью языков высокого уровня можно написать программу один раз. Дальше, вне зависимости от того, какие новые процессоры у вас будут появляться, эта программа будет переносима.
#include <stdio.h>
int main()
{
printf("hello world!");
return 0;
}
Можно писать операционные системы, игры, офис, и эти программы начинают жить годами. Они растут в объёмах, в них становится трудно разбираться, и следующим этапом становятся специализированные языки. Последние оперируют не компьютерными терминами, а сущностями предметной области. Вместо адресов, указателей и файлов, вы можете оперировать учётной ставкой, налогом, счётом, сотрудником. Составлять программы на языке предметной области гораздо удобнее.
Список = Новый СписокЗначений();
Список.Добавить("ВвестиСчетФактуру", "Счет-фактура");
Здесь ↑ я в качестве примера привёл кусочек 1С. Идея такая: зачем мы вообще говорим на языке компьютера, используем файлы, переменные, сокеты? Это сложно. Давайте создадим язык, где сразу будут счета-фактуры, пользователи, заработные платы — так проще выражать свою бизнес-идею. Там будет меньше ошибок, нам потребуется меньше программистов.
Разработать специализированный язык — это очень дорого. На это требуется несколько лет. Более того, необходимо создать сообщество вокруг языка, чтобы был кадровый резерв, энтузиасты, которые будут обучать языку других разработчиков. Собственный язык вообще для всех видов деятельности — это нереальная задача.
Поэтому следующим этапом стало создание объектно-ориентированных языков программирования. Когда вы сначала строите язык предметной области, а затем используете его для решения прикладной задачи. Например, в случае игры: сначала создаём объекты игрового мира, а потом собираем из них саму игру.
Если с игровой тематики переводить на язык программистов, получается, что мы сначала в рамках универсального объектно-ориентированного языка можем создать любой другой язык в предметной области и уже на нём разрабатывать нужную нам программу.
В конце 1980-х — начале 1990-х годов было создано много языков. Сейчас живых языков программирования на порядок меньше. Всё это благодаря объектно-ориентированным языкам. Мы можем изучить Python или С++, а написать на них всё что угодно.
Процесс продолжается до сих пор: появляются и будут появляться новые языки, потому что люди даже свои языки постоянно меняют, не говоря уже про компьютерные. Особенно если для создания новых языков программирования есть повод: например, появление многоядерных процессоров или распределённых систем.
А что произойдёт, если закон Мура остановится? Кто-то говорит, что он уже остановился. Кто-то считает, что этого ещё не произошло. Почему возникла проблема остановки закона Мура, и есть ли она вообще? Давайте попробуем разобраться.
Остановка закона Мура
Допустим, что закон Мура прекратил работать. У IT-отрасли не было десятков и сотен лет, как у других инженерных специальностей, на то, чтобы отточить компьютерные технологии, сделать их совершенными. Развитие IT вызвано не подъёмом человеческого сознания, а взрывообразным ростом микроэлектронной промышленности: массовостью, миниатюризацией, снижением цены. Человеческое сознание со скрипом успевает перестраиваться. Приходится отказываться от старых достижений, так и не доведя их до совершенства.
Наши программы потребляют на порядок больше памяти и ресурсов, чем могли бы. Мы вынуждены разменивать скорость разработки на избыточное потребление памяти и процессора. Тем более, закон Мура обеспечивает постоянный рост их возможностей.
Если закон Мура останавливается, IT-отрасль продолжает развиваться по инерции. Да, нет топлива для движения вверх по экспоненте. Но есть набранная скорость и инерция отрасли. Скорее всего, мы выходим на S-образную кривую, а в конце неё — на плато.
S-образная кривая — судьба почти всех взрывов. Если что-то резко растёт, рано или поздно это заканчивается выходом на плато. Перерождение в S-образную кривую почти неизбежно. Вопрос только в том, где мы находимся: в рамках закона Мура, в точке перелома или уже прошли перелом?
Ответа на этот вопрос пока нет. Это примерно как с биржевыми графиками: просматривая исторические котировки, очень легко понять, где минимумы и максимумы, где нужно было покупать, а где продавать. В реальности у вас есть лишь начало графика и неизвестное будущее, предсказать которое непросто. По некоторым данным, перелом произошёл уже в 2010 году, по другим — произойдёт в ближайшее время. Главный вопрос: что нас ждёт там, в будущем, когда мы начнём выходить на плато S-образной кривой?
Почему закон Мура должен остановиться
Распространённая шутка: количество предсказателей остановки закона Мура удваивается каждые 18 месяцев. На чём же эта армия предсказателей основывает свои выводы? Если посмотреть на микросхемы под увеличением, можно увидеть что-то похожее на картинке ниже.
Толщина стенки диэлектрика в наших микросхемах достигает 5 нм, это 50 ангстрем. Обещают 3 или 2 нм, то есть 20–30 ангстрем. Для сравнения длина молекулы воды — 1.5 ангстрема. Если мы станем уменьшать стенку диэлектрика, у нас начнутся квантовые туннельные эффекты. Электроны будут бегать там, где им не положено. Это не значит, что нельзя строить процессоры на туннельных эффектах, но свежих идей для реализации в ближайшие 18 месяцев не видно.
Более того, нам стало очень трудно делать даже современные процессоры. Медь, которая используется в качестве проводника, начинает диффундировать через стенку диэлектрика. Появляется брак.
Для создания рисунка микросхемы на подложке используется технология литографии. Негатив слоя микросхемы наносится на прозрачную плёнку, через которую на подложку светят излучением, например, видимым или ультрафиолетовым светом. Связи диэлектрика разрушаются, и если обработать его кислотой, можно выжечь в нём заданную на негативе микросхему. Далее наносится ещё один слой, и операция повторяется до тех пор, пока задуманная микросхема не будет готова.
Видимый свет начинается с 380 нанометров. Если мы используем ультрафиолет, то предел это — 100 нанометров. Для рентгена и гамма-излучения уже вряд ли получится подобрать материал шаблона. Да, и работать с ними непросто. Дополнительная неприятность заключается в том, что свет — это волна, — после мелкого рисунка он ещё интерферирует на полуволну. То есть в реальности типоразмеры, которых можно добиться при помощи такой длины волны, ещё меньше. А нам нужно разрешение в 3 или даже 2 нанометра.
Как выкручиваются? Вместо того чтобы светить светом, начинают по плате бегать пучком электронов. Проблема в том, что на это нужно время. Если в этот момент произойдут вибрации, пучок может расчертить всю плату и наделать брака.
В современном технологическом процессе чудовищное количество брака. Выход составляет только 5%. Например, когда вы покупаете процессор с 4 ядрами, в нём может быть 16 ядер, просто 12 из них бракованные и отключены.
Для уменьшения количества брака идут на различные ухищрения: размещают заводы в пустынях и болотах, перестраивают трассы самолётов, чтобы отвести их от производства, технологический цикл согласуют с движением поездов, а литографические установки делают плавающими в бассейне с маслом.
В любом случае можно констатировать, что мы подходим к пределу нашей технологии. Даже если мы сможем двигаться дальше, то это движение перестаёт быть экономически выгодным. Наверное, вы заметили, что вместо того, чтобы увеличивать частоту процессора, сейчас рядом ставят другие процессоры, делают многоядерные процессоры.
Нужны новые принципы и подходы, в рамках которых уже вряд ли будет действовать закон Мура. Будет другая скорость разработки. Учитывая, что вся экономика планеты не вовлечена в этот процесс, не факт, что она будет экспоненциальная.
Мне кажется, что закон Мура, если и не остановился, то очень близок к этому. То есть мы находимся где-то на S-образной кривой и можем пофантазировать, а что же нас ждёт, когда закон Мура перестанет двигаться.
Что дальше: можем ли мы предсказать, как изменится IT
Конечно, мы далеко ещё не исчерпали возможности текущих технологий. Нельзя увеличивать частоту (скорость) процессора за счёт уменьшения стенки диэлектрика? Можно рядом на кристалле расположить несколько ядер. Ядра слишком большие и много не разместить? Можно их упростить (RISC), специализировать, как в случае видеокарт, на которых уже размещаются тысячи ядер.
Думаю, мы ещё увидим настольные решения, в которых десятки и сотни тысяч ядер. Поэтому экспоненциальный рост не сразу упирается в потолок. Скорее всего, он будет продолжаться в виде замедленного подъёма, пока мы не выйдем на плато.
Можно попробовать предсказать, как мы будем жить в мире после остановки закона Мура, опираясь на инженерные области, которые точно так же взлетали: пар, электричество, самолётостроение, космос, строительство. Большинство из них вышли на плато и продолжают размеренно развиваться, часть — вышли на пик или даже деградировали (пар, отчасти космос).
Понять, выходим мы на плато или действуем в рамках закона Мура, можно по ряду признаков.
Навёрстывание разрыва между аппаратной и программной частями
После окончания действия закона Мура нас ещё ждёт период сокращения между аппаратной и программной частью. Если сейчас написать на ассемблере обычный калькулятор для Windows, его размер можно довести до 14 Кб (я пробовал). Да, конечно, он будет не таким красивым, а графика будет потреблять память, плюс мы опираемся на библиотеки Windows. Но калькулятор сейчас занимает 280–500Кб. Это в 20–40 раз больше, чем мог бы. Причём калькулятор Windows это небольшая, оптимизированная программа.
Повальное увлечение пакетами и пакетными менеджерами приводит к гигантскому объёму всего программного обеспечения. Подобные примеры может привести любой разработчик: множество npm-пакетов, зачастую выполняющих дублирующие функции в проекте и приносящих зависимости, проекты на Ruby on Rails, которым тесно в 2 Гб памяти, даже если выводят лендинг.
У нас есть куда оптимизировать программное обеспечение: «допекать» слои пирога, на подготовку которых не было времени во времена работы закона Мура. Такая ситуация сложилась, потому что время разработчика стоит дороже, чем память. Мы очень долго разменивали память и процессор на скорость разработки.
Если вы замечаете, что на работе требуется всё больше и больше математики или алгоритмов, если вы задумываетесь о том, чтобы не нарастить, а сократить количество серверов, — возможно, это один из признаков остановки закона Мура.
Типовые проекты
Если посмотреть на соседние инженерные специальности, нас с высокой долей вероятности ждут типовые проекты, когда со школьной скамьи вам говорят, какие базы данных использовать, как программировать, вот готовые библиотеки. Это уже есть, но не в таком виде. Например, мы в Нетологии можем прийти и сказать: «Так, нам нужна MongoDB, давайте попробуем. Ну, не получилось, уберём». В случае типовых проектов этого сделать будет уже нельзя, чуть ли не на законодательном уровне, на уровне министерства будет прописано: мы в отрасли используем такую-то базу данных, ничего больше. То есть нас ждут не просто известные алгоритмы или паттерны, а прямо сертифицированные базы данных, сервера, программное обеспечение, без использования которых продать программу будет невозможно.
Падение заработных плат
Так как не будет креативности, не будет этой огромной маржи, которую даёт экспонента, то и заработные платы будут падать. А с чего они будут большими, если и бизнес мало зарабатывает?
Выравнивание гендерного состава
Несмотря на то что первым программистом считается Ада Лавлейс, в честь которой назван язык программирования «Ада», в IT-отрасли до недавнего времени был большой перекос в мужскую сторону.
Дело в том, что природа экспериментирует на мужских особях. Считается, что даже отклонения в генотипе мужчин происходят чаще, чем в генотипе женщин. Женщин нужно беречь — им вынашивать потомство, а мужчины идут убивать мамонта — их затопчут или они друг друга по дороге перебьют. Вот на последних и поэкспериментируем.
В результате эволюционно сложилось, что мужчины более склонны к риску, а девушки — к систематизации, более аккуратны и осторожны. Даже статистика вложения денег говорит, что мужчины склонны к более рискованным вложениям (акции), чем девушки (облигации, депозиты).
То есть мужское население чаще склонно к авантюрным областям, чем женское. Скорее всего, этим и объясняется малое количество девушек в IT в период действия закона Мура: когда полученные навыки и знания обнулялись слишком быстро, а правила игры менялись слишком часто.
Те из вас, кто работал в отрасли 20 лет назад, могут вспомнить, что среди программистов практически не было девушек. Я заметил, что в последнее время начал нанимать 50 на 50 девушек и парней. В том числе анализ этого изменения меня натолкнул на создание этой статьи. Почему-то упорно кажется, что это один из признаков прохождения точки перелома. Так как спокойное проектирование программного обеспечения по хорошо прописанным правилам больше подходит аккуратным девушкам, чем агрессивным парням.
Точки роста
Что будет, если у нас всё-таки закон Мура остановится, и мы выйдем на S-образную кривую? Жизнь не прекратится, деньги никуда не денутся, бизнес будет по-прежнему креативен и искать точки приложения. Например, такие как:
космос;
термоядерная энергетика;
биотехнологии;
квантовые компьютеры.
Уверен, что точки роста есть ещё, но либо я персонально их не вижу, либо об этом пока подозревают лишь единицы в научной сфере.
Космос
Космос долго рассматривался, как источник бесконечной экспансии человечества, в том числе экономического роста и расширения. На космическую гонку выделялись гигантские бюджеты, привлекались лучшие кадры. Ровно до того момента, пока не выяснилось, что Солнечная система состоит из того же, из чего состоит Земля. Нет экономической выгоды от полётов в космос.
Мы уже говорили, что движущей силой инженерных направлений является экономика. Люди хотят повышать свой уровень жизни. Но на идее, что это просто нужно делать, чтобы делать, — долго не протянуть. Интерес будет потерян, и люди займутся тем, что приносит выгоду, улучшает жизнь прямо здесь и сейчас.
Это большая проблема, которую решают чуть ли не искусственно: создают небывалую группировку спутников для раздачи интернета, добывают 3He (гелий-3), из которого мы ещё толком не умеем извлекать энергию, формируют нишу космического туризма. Складывается впечатление: нужно придумать что угодно, лишь бы не потерять те технологии, которые были получены во время космической гонки.
Потенциально надежда на космос, как на источник очередного инженерного взрыва остаётся. С позиции человека — это почти бесконечные пространства и ресурсы. Однако «бесконечные» расстояния не дают воспользоваться результатами вложений в течение жизни. Последнее не даёт вовлечь в космическую экономику много людей. Если в IT-отрасли мы говорим про S-образную кривую с выходом на плато, то в космосе можно говорить, что наблюдается даже некоторый регресс.
Термоядерная энергетика
Термоядерная энергетика может увеличить количество вырабатываемой электроэнергии и одновременно удешевить её стоимость на порядки. Это очень похоже не условия работы закона Мура и может вывести человечество на новый уровень развития.
Источником энергии в атомной и ядерной энергетике служит преобразование вещества в энергию по знаменитой формуле Эйнштейна:
При прочих равных условиях насколько у вас уменьшится масса исходного топлива, столько энергии вам удастся извлечь из этого процесса. Скорость света — очень большая величина, поэтому уничтожение даже небольшого объёма вещества приводит к высвобождению большого количества энергии.
В настоящий момент в атомных электростанциях мы сжигаем уран 235U. Содержание этого изотопа в природном уране — 0.7%, остальное составляет 238U, из которого за ненадобностью делают броню танков и сердечники снарядов. Изотопа 235U на рынке не хватает, в том числе поэтому количество новых атомных электростанций не велико — на всех правильного урана не хватит. Немного спасает ситуацию наработка плутония в ходе распада 235U. Его можно использовать не только для создания ядерного оружия, но и как топливо в атомных электростанциях.
Переход на реакторы на быстрых нейтронах позволит задействовать всю массу природного урана, в том числе накопленного за предыдущие годы. Этот проект называется «замкнутым ядерным топливным циклом» и в настоящий момент реализуется только в Российской Федерации. Все остальные страны заморозили развитие реакторов на быстрых нейтронах. В немалой степени из-за катастроф на атомных электростанциях и сложности устранения последствий. Реакторы на быстрых нейтронах предполагают гораздо более высокую температуру в реакторе, и обычная вода в первом контуре охлаждения не подходит. До недавнего времени в них использовался сплав калия и натрия в качестве охладителя. Учитывая, что они активно взаимодействуют с водой, авария на таком объекте скорее закончится грандиозным взрывом. Поэтому в качестве теплоносителя планируется использовать свинец.
Фактически в настоящий момент мы можем добывать тяжёлые атомы и получать энергию на их распаде, который протекает с потерей массы. Нас окружают в основном атомы с небольшой массой, и гораздо перспективнее проводить ядерную реакцию между двумя лёгкими ядрами и получать более тяжёлые атомы. Если такая реакция будет осуществляться с потерей массы, мы опять можем получить много энергии. Этот процесс миллиарды лет протекает в звёздах, включая Солнце, где происходит термоядерная реакция превращения водорода в гелий.
По идее термоядерная реакция может идти и дальше, вплоть до образования атомов железа, наиболее стабильного элемента в нашей Вселенной. При больших энергиях возможно образование и более тяжёлых ядер, когда ядерная реакция идёт с поглощением избыточной энергии. Именно так образовалось вещество, из которого состоит наша планета, включая небольшое количество урана, который мы добываем и сжигаем в атомных станциях. Считается, что это вещество было образовано в результате взрыва сверхновой звезды и затем захвачено Солнцем.
Ядерные реакции синтеза постоянно идут в природе. Осталось их только воспроизвести, попутно извлекая пользу для людей. Почему до сих пор этого не делаем? Проблема в чудовищных температурах, при которых они протекают: ни одно вещество в наших условиях не может их выдержать. Поэтому плазму, где протекает ядерная реакция синтеза, приходится держать в электромагнитных полях, на поддержание которых тратится электроэнергия. Пока энергии мы затрачиваем больше, чем можем извлечь. Для получения пользы нужно, чтобы было наоборот. Причём пытаемся мы это сделать уже 70 лет. Если получится, цивилизация скакнёт на новый уровень развития. Возможно, даже удастся сдвинуть и космическую программу.
Биотехнологии
Потенциал этой сферы понятен почти всем, потому что мы сами являемся продуктом биотехнологий. Созданным людьми технологиям десятки тысяч лет, биотехнологиям — миллиарды. С точки зрения современной науки они отточены до совершенства, так как у них на это было время.
КПД биопроцессов достигает 80–100%, в то время как наши двигатели внутреннего сгорания достигают всего лишь 40%. Нам ещё очень далеко до реакций, которые протекают со 100% селективностью. Ферментативным катализом мы можем только пользоваться, создавать катализаторы такого класса нам пока не под силу.
Про то, как бы мог выглядеть мир с биотехнологиями, рассказывает каждый первый фантаст: Станислав Лем, Гарри Гаррисон, Уильям Гибсон, Сергей Лукьяненко. Список можно продолжать бесконечно. Тема биотехнологий часто поднимается в компьютерных играх: Fallout, Deus Ex, Cyberpunk 2077. Уверен, что и тут полный список тоже очень внушителен. Почти ни у кого не возникает сомнений в огромном потенциале технологий, развивающихся в течение времени, которого у человечества нет. В случае успеха здесь аналог закона Мура мог бы действовать гораздо дольше. Человечество вышло бы на новый уровень жизни, экономики, появились бы новые профессии и развлечения.
Квантовые компьютеры
В последнее время много разговоров о квантовых компьютерах. Фактически это аналоговый компьютер, позволяющий моделировать квантовые процессы. Когда заходит речь о квантовых компьютерах, часто упоминается криптография, так как квантовые алгоритмы позволяют понизить криптостойкость существующих алгоритмов шифрования. Однако создавались они совершенно не для этих задач.
Чтобы погрузиться в них, можно обратиться к аналогии. В астрономии существует проблема трёх тел. Мы можем аналитически, в формулах, выразить гравитационное взаимодействие двух массивных тел, абсолютно точно предсказать траекторию их движения. Если в систему добавить третье тело, то аналитически задача не решается, придётся решать её численно.
В квантовой механике мы можем аналитически решить задачи для систем с одной частицей. В случае нескольких частиц уравнение Шрёдингера решается только численно, приближённо. Это не проблема, когда частиц мало: например, при обсчёте первых трёх периодов периодической таблицы без учёта релятивистских эффектов и того, что ядра атомов ведут себя как квантовые объекты. Точность вычислений страдает, но более или менее бьётся с экспериментальными данными. Если мы спускаемся ниже по таблице Менделеева, атомы элементов обрастают «шубой» электронов. Наши приближённые модели рассыпаются. В сложной молекуле не просто много электронов, они ещё обобщены. В металле та же история. Кроме того, в реальности у нас не один-два атома, а порядка 1023.
Моделирование систем с множеством квантовых частиц превращается в неподъёмную задачу. У нас нет подходящей модели и математики. Ищем их около 100 лет и фундаментально сдвинуться не можем. Эта задача нужна в том числе для прорыва в квантовой электродинамике для проектирования микросхем субнанометрового уровня.
Создание квантовых компьютеров — это попытка сдвинуть проблему фактически аналоговым способом. Если мы получим спецфункции из квантовой механики, которые сможем вычислять так же легко, как синус или косинус, мы продвинемся в познании и точном моделировании в квантовом мире. Сейчас мы легко вычисляем синус угла в калькуляторе или телефоне, даже не задумываясь о том, что за этим стоит. А за этим стоят десятки диссертаций.
Сам долго отказывался рассматривать квантовые компьютеры как компьютеры — для меня это физический прибор вроде ЯМР-спектрометра. Но всё-таки это программируемая машина, а значит — компьютер. Мне кажется, что их потенциал огромен, как у массового внедрения электричества или первой интегральной микросхемы.
На базе первого процессора Intel создали калькулятор. Никто тогда не видел огромного массового рынка персональных компьютеров, и во что это вылилось в XXI веке. Точно так же и сейчас мы не знаем, что нам даст более высокая скорость моделирования квантовых систем: новые катализаторы, лекарства, имплантаты, экономику, развлечения и профессии. Но это точно новый уровень жизни для всех людей на земле, новый скачок научно-технической революции. Это новый взрыв.
Вывод
Любая из потенциальных точек роста, описанных выше, может стать новым топливом для экспоненциального роста, по аналогии с IT. Туда, кстати, уйдут деньги и кадры из IT. Поэтому важно понимать, где вы находитесь и какая впереди вас ждёт динамика развития отрасли.
Высокие зарплаты в IT, приятные образованные коллеги, внимание всего мира — это не бесконечный Клондайк. Так получилось, что мы сейчас находимся около точки максимальной скорости «компьютерного взрыва». Топливо этого взрыва работало с середины прошлого века и с довольно высокой вероятностью закончилось в 2010 году. Плюс-минус ещё 30–60 лет IT-сфера будет расти и развиваться, потом выйдет на плато и станет обычной инженерной отраслью.
У тех, кто учится на айтишника, есть время состояться в профессии. Но уже не стоит бегать от математики — её в индустрии будет становиться всё больше и больше. В любом случае рядом есть ещё более удивительные и мощные инженерные задачи и отрасли. Когда проснутся эти спящие вулканы? Неизвестно.