# Ит отрасль в России

Виталий Яковлевич Лившиц

Мой взгляд на возможность развития ИТ в нашей стране

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


Итак, ИТ отрасль в стране распадается на несколько больших потоков. Они неравноценны. Существуют более мелкие направления, но они погоды не делают.


* Коммерческое программирование на заказ. Обслуживание бизнеса.

* Программирование встроенных систем.

* Игры.

* Участие в Open-source проектах.

* Инженерно-научное ПО.


Разработка мобильных приложений, в основном, попадает в коммерческое программирование, поэтому выделять её не стал. Государственные разработки ничтожны по массе, редко применяются даже государством. Однако, государство является крупнейшим заказчиком коммерческих фирм. Как правило, государственные разработки либо сферический конь в вакууме (институт системного программирования, к примеру), либо мелкие доработки американского софта(разного рода "русские" ОС), либо узко специализированные решения (например, программа управления ж.д. стрелками на станции). С последними государство борется, отдает на откуп различным частникам.


Объединяет все более менее денежные направления базирование на американском программном обеспечении, реже немецком, использование аппаратуры made in China. Cделанной на основе американских разработок. Существуют российские переделки американских процессоров, которые выпускаются в Китае. Спросом они пользуются только у Минобороны, поскольку серьёзно уступают более свежим разработкам оригинальных фирм.

Как правило, это модный в 80-90х MIPS, более современные SPARC или ARM. Используются четыре основные ОС, все американские: Windows/Linux/Android/IoS. Во встроенных системах иногда применяются более редкие QNX, EROS и т.д. Они тоже имеют происхождение на Западе. В России выпускаются гордо называемые "русскими" ОС. Это слегка подкрашенный Linux. Все языки программирования используемые сейчас в России пришли с Запада: Java, C#, C/C++, ABAP, Pascal, Python, PHP и т.д.


Разработка новых языков в России, слава богу, все-таки ведется. На основе западных и тесной связи с ними. Например, Kotlin. Созданный на инфраструктуре Java он улучшает его и постепенно распространяется. Вне экосистемы Java он не работает. Однако, это исключение из правил. Создание новых языков идет в основном в Америке, в меньшей степени на Западе.


Основа коммерческой деятельности: СУБД. В России есть лишь одна СУБД разрабатываемая в России и имеющая более менее широкое распространение: Firebird. Это международный проект базирующийся в основном у нас. Но имеющий деятельных поклонников в других странах. Занимает не более 5-10% рынка. Остальные СУБД принадлежат Западу.


Важное место в разработке занимают библиотеки (готовые решения типовых вопросов). Подавляющее большинство является либо продукцией американских компаний (Apple, Microsoft,...), либо международными проектами курируемыми западными фондами (Apache Foundation). Проектные площадки для международных проектов также в России используются западные (github, bitbacket, sourceforge,...). Внутренних проектов крайне мало, наши люди участвуют в международных.


Российские игры, в подавляющем большинстве, калька с западных. Те же жанры, те же приемы, иногда ещё и копирование западных мифов о нашей стране. Для примера возьмем старую уже игру Блицкриг II компании Nival. Изображение блаародного англичанина и красного командира с выражением лица пропитого гопника отбивают уважение к разработчикам напрочь. Особенно неприятны ролевые игры, которые в угоду модной "свободе действия" заставляют выбирать игрока между отсутствием развития и поведением свиньи. Развивать у игрока качества серийного убийцы, вора или просто невменяемого идиота считается нормальным. Все это идет с Запада, а наши отражают как зеркало.


Методики разработки приходят исключительно с Запада. Scrum, Agile пишутся латинскими буквами и на русский язык не переводятся. Засилье западной мысли абсолютно. С одной стороны это помогает преодолеть бардак самоделкиных и улучшить качество. С другой стороны люди разучились думать творчески и свои методы старательно подгоняют под мысли американцев. Надо сказать, что на самом Западе эти методики встречают массу возражений. Во множестве случаев они серьезно затрудняют разработку лишними действиями, лишают программистов интереса к работе. Теперь там наметилась тенденция к "легковесным" решениям.

Примером умственной болезни может служить так называемый code review. На русский язык можно перевести как "взаимопроверка кода". Один программист проверяет труд другого и высказывает сомнения и пожелания. В официальном комментарии видимом начальству.

Тем не менее, никто не пытается перевести на русский. Орда начальства и продвинутых внедряет практику в массы. Вместо полезного обмена опытом на людей обрушивается поток мелких придирок. Что вызывает потерю интереса к работе в лучшем случае и желание отлупить коллегу в худшем. Сами американцы подчеркивают необходимость тонкого и уважительного подхода. Ну и что, что в российской культуре доносительство - грех. Ну и что, что в любой культуре поток мелких придирок вызывает ярость или апатию. У нас же безо всякой критики или обдумывания внедряется освященный янки подход. В полном объеме, без всякого уважения, снисхождения. Раз надо проверить коллегу, недостатки должны быть найдены!

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

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

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


Очевидно, заокеанская идея - это точный аналог "товарищеской критики" времен развитого социализма на парткоме. Покайся, сука, а не то! Реальное товарищество никак не желает озвучивания промахов соседа всем и вся. Лентяй не ошибается, ибо только пишет замечания. Увлеченные своим делом люди обмениваются своими идеями, кодом без какого-либо давления, но как только это становится официально принудительно все немедленно скатывается в застойное болото. В былые времена там же какой-нибудь заслуженный работяга мог словить инфаркт. Увы, наши очарованные американским "гением" люди, не замечают ни скатывания, ни проблем со здоровьем. Америка - ум, честь и совесть нашей эпохи!


Итак, подведем итог: в РФ отсутствует какая-либо самостоятельность по отношению к Западу. Начиная от отсутствия выбора аппаратуры и системного ПО иначе как там, до образа мыслей.


Теперь выводы.

1. Отсутствие самостоятельности означает жестокий удар по ИТ сфере в случае сокращения сотрудничества с Западом. Поскольку никакого реального замещения нет в важнейших сферах, то любое закрытие означает многомиллиардные потери. На создание сложных производств требуются годы, скорее десятилетия.

2. Из страны ежегодно вытекают миллиарды $. И чем больше развивается ИТ, тем больше и вытекает.

3. Вытекает, но не втекает. Из-за следования в кильватере западной мысли сливки снимают они. Первопроходцы.

4. Вторичность нашей мысли означает, что наиболее творческие люди трудятся на обогащение Запада. Даже если они остаются у нас. Поясню: они либо переходят на работу в представительства западных фирм, либо творят в рамках западных идей. Яркий пример - создатели языка Kotlin. С одной стороны, язык наш, с другой существенный вклад в экосистему Java (США), которая в нашей стране захватила не менее 50% рынка. Т.е. эти проценты, в конечном итоге, создают поток от нас в США существенно больший обратного.

5. Проект цифровой экономики увеличивает потери страны. Взамен? Да, автоматизация процессов нужна. Однако видится, что Запад от этого выиграет, а мы нет.

6. Ну просто скучно глядеть в рот янки или добровольным верующим. :) Сколько ж можно вести себя как негры в Африке?


Что же делать?


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


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


Второй шаг - системное ПО. В первую очередь ОС, но есть масса других важных применений. Если мы опираемся на свои системные разработки, то можем направлять их куда нам надо и насколько надо. Копирование западных решений опять вынуждает копировать с отставанием и их подходы. Опять воспитание кадров, рабочие места, снижение издержек и возможность продать другим. Да, есть бесплатный Linux. Он сильно снижает издержки, но не исключает их совсем. Чем больше масштаб, тем меньше доля бесплатного. Зато он вытесняет с рынка всех, кто попытается создать ему альтернативу. Как ранее пиратский MS Office/Windows разгромили наших производителей прикладного ПО общего назначения, так и Linux делает коммерчески бессмысленным разработку альтернатив на серверах. Хотите заменить Windows? Только Linux. Без миллиардных вложений подняться до уровня мини-ЭВМ, мейнфреймов, где снова начинается коммерческий софт нельзя.


Оба шага сделать без покровительства государства почти невозможно. То что выгодно в масштабах страны, для отдельной коммерческой фирмы самоубийство. Работать можно лишь в рамках идеологии Open Source, но это лишь для ПО. Аппаратура требует завода. Даже устаревшие подержанные линии стоят миллионы. Кроме того, при санкциях затруднительно тащить через границу. Софт требует только головы и дешевого компьютера. Однако, софт требует ещё большего вложения в науку. Для создания ОС, а тем более новой по концепции ОС, требуются серьезные теоретические наработки.


Пример создателя Linux лишь подтверждает правило. Сначала он учился созданию операционных систем непосредственно. Затем, основываясь на ранее существовавших наработках с открытым кодом, реализовал свой вариант (Linux - это вариант ранее существовавшей ОС UNIX). Любительская система была замечена и теперь, кроме труда энтузиастов, туда вливаются миллионные суммы со стороны коммерческих гигантов Запада. Обратите внимание: была научная школа, были общеизвестные наработки и на их основе... Linux - это вариант UNIX. А UNIX появилась полвека назад. Т.е. ничего принципиально нового в ней нет. Отсюда следует простой вывод - новое потребует больше. Лепить клоны бессмысленно.


Научная школа в масштабах страны может возникнуть лишь в вузе. И она должна иметь выходы на программистов, которые реализуют её наработки в трехстороннем процессе (ученый - исполнитель - потребитель). Одного гения недостаточно, слишком уж много подсистем. Это уже организационная задача. Кроме того, надо юристов. Наезд на конкурентов с помощью всевозможных патентов, копирайтов чрезвычайно распространен. Учитывая, что копирастическое бешенство в РФ давно пришло, серьезное препятствие.


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


Теперь займемся играми. Теперешние игры используются родителями для отвлечения детей от улицы и самих себя. Польза от них мала, вреда полно. Портит осанку, зрение, потеря времени. Сюжет рассчитан на усредненные вкусы и обычно подчеркнуто мрачен. Игры способствуют развитию депрессии. Большая часть пишется под игровые консоли, которые ни для чего более непригодны. Тем не менее, игры широко распространены. Среди молодежи часто попадаются фанаты игровых вселенных, пишутся фанфики (иной раз на уровне хороших литературных произведений). Игры стали кривобоким, плохим, но все же исскуством. А исскуство воспитывает несмотря ни на что. Поэтому выпуск качественных игр важен.


Здесь внимания государства требуется мало. Можно собирать команды на существующих движках, в том числе и западных и творить. Вопрос финансирования стоит менее остро. Хотя и игры наподобие Skyrim/Ведьмак стоят миллионы, но у игр есть особенность. Главные затраты - графика, прорисованность мира. Если игра будет достаточно интересной, то графика отойдет на второй план. Многие до сих пор играют в DOS игры, ранние Windows. Т.е. это по силам относительно небольшим компаниям. Проблема издателя тоже решаема. Наконец, есть вложения в проект многих частных лиц (crowdsource) и Open Source проекты на энтузиазме. При желании можно собрать группу желающих разработки игры и нанять профессиональных программистов. Это очень интересная тематика и относительно доступная.


ПО общего назначения. Здесь с одной стороны, есть мастодонты Microsoft, Google. С другой масса Open Source программ. С коммерческой стороны создание ПООН бесполезно. Конкурировать с многомиллиардными гигантами и бесплатным ПО тяжелейшая задача. Единственное, что возможно, создание решений для специфических ниш. Например, 1С успешно сдерживает натиск внешних конкурентов за счет специфики нашего законодательства. Изредка бывают примеры успешного противодействия на открытом рынке.


Но у ПООН есть и весьма положительные черты. Оно зачастую не настолько наукоемко как построение ОС или инженерное ПО. Здесь можно интенсивно участвовать в международных проектах Open Source, в том числе одиночкам. Позже специалисты могут принять участие в проектах на базе собственной ОС. Выкатывать чисто российские решения невозможно без прямого заказа со стороны государства. Такой замечательный движок как Firebird в основном финансируется на... Западе. Дело в том, что предок Firebird - американский Interbase был временно брошен. Пользователи потребовали от компании производителя раскрыть исходники. Возникший проект Open Source Firebird сразу получил финансирование и массовую пользовательскую базу за кордоном. Таким образом, выгоднее пока вливаться в международные проекты Open Source.


Инженерное и научное ПО. Часто коммерчески успешное. Например, Компас (автоматизированное проектирование). Требуются большие затраты и научные школы. Например, ПО управления электростанцией или защитой электрооборудования. Здесь, правда, сумели частично сохранится как школы, так и созданные компании. Впрочем, иногда в них заинтересованы даже олигархи (нефтянка). Они зависят от потребности в инженерных решениях сильных мира сего. Без них они быстро завянут. Поэтому связанные с энергетикой процветают, с машиностроением так себе, а остальным плохо. Здесь вряд ли что-то поможет, кроме целенаправленного развития соответствующих отраслей и протекционизма государства.


Итог:


Главным мотором и защитником отрасли должно быть государство. Без его воли что-то делать трудно. Воли нет и в обозримом будущем не будет. Надо организовываться самим.

Одного энтузиазма недостаточно, нужно собрать средства и работать над задачей не отрываясь на хлеб насущный. Поэтому в общества, которые будут собирать средства и коллективы. Коммерчески Запад подавляет нас, поэтому надо делать в форме НКО финансирующих интересные проекты. Будет коммерчески выгодно - переделывать в компанию. Начать проще всего с игр, участия в Open Source проектах.