Найти в Дзене

На стыке науки и бизнеса

На стыке науки и бизнеса. Некрасов Иван, Директор по развитию компании Flexites
На стыке науки и бизнеса. Некрасов Иван, Директор по развитию компании Flexites

Первая статья.

Когда я пришёл в айти во второй раз с перерывом в три года из мира FMCG, из мира продаж, из мира «дикого» бизнеса и предпринимательства, то, как будто заново вошёл в одну и ту же реку. Но, как подразумевал Гераклит, это уже была совсем другая река, и я был уже не тот, что в первый раз. За три года мир прошёл через страшный ковид; экономика, политика, военная обстановка наложили свой отпечаток на жизнь вокруг и как следствие на каждого из нас. Тогда это (отпечаток хаоса на коллективном бессознательном) было ещё не так заметно, как сейчас после двух лет СВО. Однако я почувствовал, что оказался совершенно в другой среде, где во главе угла стоит исключительно ментальная составляющая, твой мозг, твои знания русского и английского языка, твоя образованность, эрудиция и знание предмета – IT. То, что делали и делают эти парни и девчонки в мире цифр и информации (а меня позвали на должность менеджера по продажам в самом широком смысле этого понятия) вызывает восхищение и радость за их мозги, мышление и идеи.
Для меня и для большинства из моего поколения сорокалетних и старше IT – это тёмный лес и магия (нужно было назвать статью «На стыке магии и бизнеса» или «На стыке магии и тёмного леса»). До сих пор с вордом и икселевскими таблицами не все могут справиться. Хотя сейчас я понимаю, что это не только для нас непонятно. Это для большинства людей на планете непонятно, это из разряда «так, а что там делать – нажал две кнопки и всё. И получил стопятьсот тысяч рублей и сидишь себе на удалёнке в Тайланде на пляже, пьёшь сок из кокосового ореха». Но я здесь подразумеваю, что тогда когда мы росли компьютеры-то не у всех были, сотовые телефоны только-только появлялись, о смартфонах ещё речи не было. А о перспективах компьютерных технологий, информатики и цифровизации знали, наверное, только в Москве и где-то в высших элитных слоях общества. Интернет мы получали по городской линии телефонной стационарной связи через дисковые телефонные аппараты. Не было такой истерии и такого широкого освещения этой темы.
Мы работали в продажах, уезжали в столицы, искали себя в той среде, которая была понятна, которая уже была популярна, которая развивалась дикими темпами и которая вовлекала в себя всё новые сотни и тысячи людей. Я говорю про ритейл, гостиничный бизнес, FMCG, дистрибуцию самого разного толка, продажи. Только бы не на завод. Хотя я, например, проработал на заводе почти пять лет. В общем, с таким бэкграундом не должен был я оказаться здесь. Не должна была меня принять эта среда. Но мне повезло. И глядя на то, какие продукты делают коллеги и как они это делают, понимаю, что это сильно недооценено. Воспринимается, как должное. И в то же время, как бы это странно ни звучало, брошено на произвол судьбы – выплывет проект, значит, будет жить, не выплывет, так никто и не заметит и скорбеть никто не будет (кроме самих разработчиков). А меж тем, «банк идей и проектов», которые недопоняли, похоронили, недоделали, слили, он колоссален. Там столько прорывных задумок, что говорить об их пользе бессмысленно – нет таких эпитетов для описания их ценности и пользы. Постараюсь объяснить, что я имею в виду.
Самой айтишной отрасли в том виде, в каком мы понимаем (быстрый интернет, социальные сети, мессенджеры, куда же без них, вездесущие сайты, интернет-магазины, приложения, ПО и т.д.) всего двадцать лет (оптимистично, конечно, но пусть дует так. Правильнее сказать, конечно, тридцать с лишним лет, но в период с
1990 по 2000 гг там совсем был дикий запад и ничего общего с современностью там не было. Утрирую, конечно, но выше я немного описал условия, в которых всё жило. И, да, я помню про игропром, который с 80-х годов рос буйным цветом. Кстати, это же тоже IT?). Сейчас всем уже очевидно, что за цифровыми технологиями будущее. Но то, что стоит за ними покрыто мраком. Ведь нельзя пощупать руками сайт, нельзя положить в коробку программный код и взвесить его на весах, на приложении для смартфона невозможно поехать в путешествие или надеть его на себя, чтобы согреться. Это всё виртуально, это «не существует», этого нет. Но это есть. (Это всё есть за частный счёт. Нет государственных заводов и фабрик по производству сайтов, ПО, контента. Нет планов, как в советское время, по производству ста тысяч сайтов за пятилетку, а ещё лучше за четыре года. Нет колхозов, трестов и артелей по изготовлению спецэффектов, 3D-моделей, игр. Нет предприятий по массовому изготовлению аккаунтов для инстаграма, ВК, Телеграма на пользу народного хозяйства. Даже сам интернет вырабатывается не генераторами, ТЭЦ, АЭС, котельными и полями солнечных батарей. Это нужно знать для понимания «дикозападности и бесконтрольности» того, что сейчас происходит в наших интернетах. Попытка запретить, закрыть и отменить не в счёт. Это не контроль). Это есть, потому что есть математика. Опять она. IT – это плоть от плоти математика.
МАТЕМАТИКА. Царица наук, которая неразрывно связана с ЛОГИКОЙ, своей матерью. Как известно, математика окружает нас везде. Она может описать вселенную. Всё, что мы видим вокруг, всё, чем мы пользуемся ежесекундно и ежедневно невозможно было бы создать без математики.
И вот ребята, пишущие код, участвующие в разработке, имеют среднее или высшее профильное образование по математике, информатике, программированию. В других науках такому не научат. Вдумаемся просто хотя бы в такое словосочетание, как «семантика языка программирования». Не многие-то знают более приземлённое сочетание «семантика русского языка», а тут «семантика языка программирования». Нужно быть, мягко говоря, очень неглупым человеком, чтобы поступить на соответствующее направление в образовательное заведение, а потом получить диплом. Например, по направлению «Математика и компьютерные науки. Профиль: Компьютерное моделирование в инженерном и технологическом проектировании». Вот описание только части испытания, которое нужно для поступления сюда.
Вступительное испытание по дисциплине «Основы программирования» проводится в форме тестирования. Тест состоит из 15 вопросов, на каждый из которых представлено 3-4 варианта ответов. Время прохождения – 60 минут. Максимальное количество баллов за тест – 100. Перечень вопросов для подготовки к тесту:
1. Основные принципы алгоритмизации и программирования.
1.1. Понятие алгоритма и его свойства. Типы алгоритмов. Способы описания алгоритмов. Базовые алгоритмические структуры: линейные, разветвляющиеся, циклические.
1.2. Основные базовые типы данных и их характеристика. Основы алгебры логики. Логические операции и логические функции.
1.3. Принципы построения алгоритмов: использование базовых структур, метод последовательной детализации, сборочный метод.
1.4. Разработка алгоритмов: линейные алгоритмы, алгоритмы ветвления, циклические и рекурсивные алгоритмы.
1.5. Классификация языков программирования. Понятие интегрированной среды программирования. Способы классификации систем программирования. Перечень и назначение модулей системы программирования.
1.6. Этапы разработки программ: системный анализ, алгоритмизация, программирование, отладка, сопровождение. Характеристика и задачи каждого этапа.
1.7. Принципы структурного программирования: использование базовых структур, декомпозиция базовых структур.
1.8. Понятия основных элементов объектно-ориентированного программирования (ООП): объекты, классы, методы. Свойства ООП: наследование, инкапсуляция, полиморфизм.
1.9. Принципы модульного программирования. Компонентно-ориентированный подход. 1.10. Принципы отладки. Принципы тестового контроля и набора тестов. Проверка граничных условий, ветвей алгоритма, ошибочных исходных данных.
2. Язык программирования
2.1. История и особенности языка программирования. Области применения. Процесс трансляции и выполнения программы.
2.2. Элементы языка: алфавит и лексика, структура программы, типы данных, переменные, операции.
2.3. Организация консольного и файлового ввода-вывода.
2.4. Организация ветвлений. Операторы циклов (с предусловием, с постусловием, с параметром). Операторы передачи управления.
2.5. Одномерные и многомерные массивы, их формирование, сортировка, обработка. Строковые типы данных. Указатели и операции над ними.
2.6. Пользовательские типы данных. Структуры и объединения, перечисления.
2.7. Определение процедур и функций. Области видимости. Глобальные и локальные переменные.
2.8. Стандартная библиотека языка программирования. Использование библиотечных функций.
3. Основы объектно-ориентированного программирования
3.1. Понятия класса, объекта, свойства объекта, метода. Понятия деструктора и конструктора
3.2. Спецификаторы доступа в классах, принцип инкапсуляции.
3.3. Принципы наследования и полиморфизма. Механизм наследования для формирования иерархии классов. Переопределение методов в дочерних классах.
4. Модульное программирование
4.1. Модульное программирование как метод разработки программ. Программный модуль и его основные характеристики. Типовая структура программного модуля. Инкапсуляция в модулях.
4.2. Порядок разработки программного модуля. Связность модулей через глобальные переменные и функции.
4.3. Интегрированная среда разработки приложений, возможности среды и ее конфигурирование. Создание проекта, отладка и тестирование проекта.
А потом нужно отучиться и получить диплом. После прочтения семи предложений уже спать хочется и мозг отключается. А ребята проходят это всё от начала и до конца и выпускаются ещё с красными дипломами.
Так вот, где потом применить эти знания? Идти разнорабочим на стройку, как герой Мэта Деймона в прекрасном фильме «Умница Уилл Хантинг»? Так это, как забивать гвозди микроскопом. Собственно об этом весь фильм и снят. За этот сценарий, кстати, Деймон со своим другом Беном Аффлеком получили Оскара. Все работы нужны, все работы важны. Но не пойдёт профессор из Стэнфорда работать пастухом. Хотя он же с удовольствием съест прекрасный стейк из коровки, которую выпасет этот самый пастух.
И пойдут и идут эти ребята в IT. И находят себя там. Пятьдесят лет назад пошли бы в НИИ. В секретные и не очень. А сейчас в большинстве своём стараются идти в IT. И по большей части в частный сектор бизнеса. Кто-то пилит машинное зрение и искусственный интеллект. Кто-то сервисы и ПО. Кто-то сайты и лендинги. И почти все они выполняют задачи от частного бизнеса. Зачастую имеющего средние или, что чаще, сильно ниже среднего компетенции в разработке и программировании. И требования к цене, скорости и качеству производимых работ, как к установке пластиковых окон. Да простят меня установщики окон. Не в обиду сказано. Но есть разница. А фирмам ничего не остаётся, как подгонять всю эту кухню с математикой и логикой под условия и логику бизнеса с его договорными обязательствами и сроками исполнения, потому что иначе деньги тупо неоткуда будет брать и коллектив просто не выживет. Он будет нежизнеспособен. Никто в бизнесе не будет ждать, как в науке годы исследований и расчётов, не будет бизнес ждать пока всё будет доведено до идеала, пройдёт все испытания и будет готово к выпуску. Государство может себе такое позволить – у него очень много ресурсов для этого. Крупные фармацевтические компании со своими исследовательскими лабораториями тоже могут себе такое позволить. А мелкий и средний бизнес на 99.9% не может. Он сам умрёт пока дождётся и начнёт окупаться результат разработки и исследований.
Для исправления ситуации и существуют разработанные очень умными, терпиливыми и удачливыми людьми CMSдля разных разработок, конструкторы и CRM системы. И опять-таки, частным бизнесом они разработаны. Чтобы все остальные не писали чистым кодом каждый раз заново страшно, сложно и долго.
Ситуация, на мой взгляд, повторяется. Это уже было, например, с инженерной наукой и изобретениями, которые инициировали промышленную революцию в семнадцатом веке. За четыре с лишним столетия инженерия прошла все этапы подгонки своих особенностей под требования общества, его возможностей и попыток осмыслить что же это такое. Что это привносит в нашу жизнь и как оно эту жизнь меняет. За это время к инженерам и инженерии привыкли. Процессы обкатали. Инженерные школы созданы. Производства работают. Поставлена ресурсная база. Хотя в том же 18 веке в Великобритании, как в стране, откуда и началась первая промышленная революция, зародилось движение луддитов. Её члены, будучи работниками на вновь созданных фабриках и производствах, считали, что машины и механизмы - причина всех беды. Обосновывалось это тем, что люди по незнанию калечились на производствах, многих выгоняли за забор, так как механизмы могли работать за десятерых и «лишние» работники никому не нужны были. Заниматься безработицей тогда никто даже не думал на государственно уровне и люди шли по миру, жизни у них рушились. Суровые тогда были времена. Простые рабочие были бесправны. И в свою очередь, поджигали машины и механизмы, сжигали фабрики и этим хотели остановить массовые увольнения. Они так боролись. Социальная сфера и защита прав человека, в привычном виде появилась только в двадцатом веке. Общественное сознание должно было пройти через революции в головах и на полях сражений, чтобы мысль сформировалась в философию справедливого отношения ко всем слоям человечества, и выработало законы и механизмы их исполнения.
Всё новое всегда сталкивается с сопротивлением среды и пробивает себе дорогу в жизни, занимая своё место и нишу. При этом оно может ненароком что-то лишить жизни или низвергнуть в бездну, пошатать устои привычного и открыть новые горизонты, как, например, успешные исследования в области разделения атомного ядра и появления атомной энергетики и оружия.
Вывод сегодня будет такой: мы в начале пути IT. Надежда есть только на себя. Как в Северной Корее, которая всю жизнь под санкциями. У них есть принцип Чучхе – надеяться только на свои силы. Мы айтишники со всеми своими знаниями и умениями должны использовать чучхе, потому что находимся в начале борьбы за существование в прямом смысле этого слова. Мы бьёмся за денежку. Чтобы купить покушать и прокормить себя и свои семьи. Полагаться можно только на свои силы и совместно строить эту отрасль, законодательное регулирование, ресурсную базу, образование, методики преподавания и внедрения, может быть, строить IT-заводы. А начать нужно, как мне кажется, с определения, а кто же такие айтишники? Но это уже тема для другой статьи.
P.S. Хоть инженеры уже давно завоевали своё место под солнцем, но до сих пор остаётся вопрос: почему Россия не может переплюнуть Тойоту, БМВ и Корейский автопром? Шутка.
Автор: Некрасов И.В. Один из директоров.