Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

История развития программирования в России (Начало развития программирования в СССР)

ВВЕДЕНИЕ

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

Первые этапы развития программирования были заложены в 50-х годах прошлого века, когда основной индустрией применения являлись задачи промышленного и военного характера. К примерам таких задач можно отнести расчеты, выполняемые с применение систем программирования, которые были необходимы для расчета и определения места посадки корабля Юрия Гагарина, совершившего первый полет в космос на космическом корабле «Восток».

С течение времени системы программирования развивались и начинали применяться в новых отраслях. Связующим звеном в этом послужили такие факторы как: развитие языков программирования, усовершенствование структур ЭВМ[1] и обширная заинтересованность людей в данной сфере. Но к началу 70-х годов стал наблюдаться застой в данной сфере, в виду того, что официальная политика того времени была ориентирована на копирование аппаратной базы стран запада с целью экономия средств для дальнейшего скачка. Но этого не произошло.

Новое дыхание отрасль программирования получила в начале 90-х годов, чему послужили новые возможности в следствии перехода к рыночной модели экономики. Согласно отчету Российского отделения исследовательской компании IDC, рекорд продаж ПК в стране пришелся на 4 квартал 1997 года и составил 483000 компьютера.

1. Начало развития программирования в СССР

Первые электрические и электронные устройства начали заменять вычислительные машины на механической элементной базе в начале 1940 г. XX в. Первыми такими электромеханическими машинами стали созданная Конрадом Цузе[2] «Ц-3» в 1941 г. Позже в 1944 г. в США под руководством профессора Гарвардского университета Г. Айкена[3] была создан машина с названием «МАРК-1». В 1949 г. в Англии была построена EDSAC (англ. Electronic Delay Storage Automatic Calculator), которая являлась первой машиной, обладающей автоматическим программным управлением, внутренним устройством хранения данных и другими необходимыми элементами современных ЭВМ.

В СССР также шло развитие в сфере создания электронных вычислительных машин и первыми авторами ЭВМ, изобретенной в декабре 1948 г., стали И. С. Брук и Б. И. Рамеев. Первая советская ЭВМ с сохраняющейся программой создана в 1951 г. под руководством Сергея Алексеевича Лебедева и имела название «МЭСМ» - малая электронная счетная машина. С 1953 г. в Советском Союзе начался серийный выпуск ЭВМ, первыми из которых были БЭСМ-1, «Стрела».

С появлением цифровых программно-управляемых машин появилась новая область прикладной математики под названием программирование. Как область науки и профессия она возникла в 1950-х гг. Изначально программы составлялись вручную по средствам машинных кодов, которые являлись машинным языком. Программы были очень большие, а их отладка являлась очень трудозатратным процессом. Дабы упростить прием и метод составления и отладки программ были созданы мнемокоды, которые по своей структуре были близки к машинному языку и использовавшие символьную адресацию. Ассемблеры, которые переводили программу, записанную в мнемокоде, на машинный язык и расширенные макрокомандами, применяются и в наше время. Далее были созданы автокоды, которые можно применять на различных ЭВМ, и которые позволили обмениваться программами. Автокод представляет собой набор псевдокоманд для решения специализированных задач, например, для научных или инженерных. Была создана развитая библиотека стандартных программ для выполнения задач подобного рода.

В 1953 г. Алексей Андреевич Ляпунов[4] предложил операторный метод программирования, суть которого заключалась в автоматизации программирования, а алгоритм представлял собой вид совокупности операторов, которые образовывали логическую схему задачи. Данные схемы позволяли разделить на отдельные члены громоздкий процесс создания программы, части которой составлялись по формальным правилам, а после соединялись в единый процесс. Чтобы проверить идеи операторного метода в СССР в 1954 г. была разработана первая программирующая программа «ПП-1», позже в 1955 г. более совершенная «ПП-2». В 1956 г. разработана «ПП БЭСМ», в 1957 г. – «ППСВ», в 1958 г. для машины «Стрела».

С мая по июнь 1954 А.И.Китов[5] завершает строительство первого в стране вычислительного центра «ВЦ-1 МО СССР». В 1950-е годы ВЦ-1 был центром информационно-кибернетической мысли, на постоянной основе издававшим свой сборник научных трудов и организующем конференции всесоюзного значения. В это время происходит создание программной системы расчета термоядерных взрывов на ЭВМ «Стрела», созданием которой руководил М.Р. Шура-Буры.

Двумя годами позже выходит в свет первая отечественная монография по ЭВМ и программированию, автором которой является А.И. Китов «Электронные цифровые машины». Данный труд был признан за границей, так профессор Дж. Карр (США) в своей книге «Lectures of programming» (1958 г.) изложил следующее: «По-видимому, в настоящее время наиболее полное изложение вопросов программирования для ЭВМ, содержащее подробные примеры и их анализ как ручного, так и автоматического программирования, даётся в книге А. Китова. Некоторые разделы этой книги переведены на английский язык и могут быть получены в Американской ассоциации по вычислительной технике».

В январе 1959 г. А.И. Китов посылает первое написанное им письмо «О создании автоматизированной системы управления народным хозяйством», адресатом которого является ЦК КПСС[6] (на имя Н.С. Хрущёва). В данном письме было предложено создать общенациональную компьютерную сеть многоцелевого назначения, в первостепенную очередь для управления национальной экономикой, не в локальном сегменте, а в масштабе всей страны. Это было предложение первым не только на территории СССР, но и в мире не имело аналогов. Высшим руководством страны частично было решено поддержать содержавшиеся в письме А.И. Китова предложения, и было принято в мае 1959 года Совместное Постановление ЦК КПСС и Совета Министров СССР об ускоренном создании новых ЭВМ и широком использовании автоматизации и механизации промышленного производства на их основе. Но основные идеи и предложения, которые были изложены в письме А.И. Китова, затрагивающие управления экономикой Советского Союза на базе создания Единой государственной сети вычислительных центров страны, в этом Постановлении учтены не были.

Осень 1959 г. второе письмо в ЦК КПСС на имя Н.С. Хрущёва, в котором предложен инновационный проект «Создание национальной сети вычислительных центров для совершенствования управления в вооруженных силах и народном хозяйстве». В данном письме было изложено предложение, как можно существенно сократить государственные затраты при создании общенациональной сети вычислительных центров страны. Ко второму письму был приложен проект «Красная книга», данный проект состоял более чем из двух сотен страниц и содержал информацию и рекомендации по созданию всесоюзной сети ЭВМ имеющей, как и военное, так и гражданское назначение. Мощностей этих центров должно было хватать с большими запасами и резервами на случай пиковой нагрузки решения военных задач. В мирное же время, задача этих центров заключалась бы в решении народно-хозяйственных и научно-технических задач как для центральных органов, так и для региональных предприятий и учреждений. Формулировка письма А.И. Китова была следующей «Реализация данного проекта позволит обогнать США в области разработки и использования ЭВМ, не догоняя их»

Предложенная идея А.И. Китова была великолепна и актуально в тот период времени. На тот период отставание от США в области разработки и использования ЭВМ ещё не обрело фатальной необратимости.

Второе обращение А.И. Китова к высшему руководству СССР имело, к сожалению, радикально иные последствия, по сравнению с «Первым письмом в ЦК КПСС Хрущеву[7]». Критика, изложенная А.И. Китовым во втором письме о состояние дел с использованием вычислительной техники в стране, в частности в армии, вызвала гнев верховного руководства страны. Проект был отвергнут, а сам А.И. Китов был исключен из членов КПСС, снят с престижной генеральской должности 1-го заместителя начальника ВЦ-1 МО СССР, отвечавшего за все научные проекты этого вычислительного центра. Он практически был удален из армии, откомандировав в начале в распоряжение Главного управления кадров, а через короткое время прикомандировали на работу в НИИ-5, переподчинённого Государственному комитету по радиоэлектронике при СМ СССР (ГКРЭ при СМ СССР). Причём в партийно-служебной объективке А.И. Китова, составленной в то время Главным политическим управлением Министерства обороны СССР (ГлавПУР), прямо декларировалось запрещение назначать А.И. Китова на руководящие должности.

К концу 1950-х годов персональных компьютеров было довольно мало, а в 60-е программирование приобретает доступных характер для масс. Университеты стали вводить учебные программы по изучению новой технологии, следствием этого стало то, что число производителей аппаратного обеспечения быстро росло. В короткий промежуток времени компьютеры, и посвященные им учебные материалы, и курсы, стали доступны тем, кто этого желал, или, по крайней мере, тем, кто посещал колледж.

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

70-е годы были не лучшим временем для искателей качества программного обеспечения. Проблемы 60-х годов связанные с более сложными задачами и менее квалифицированными программистами — в 70-х годах только усугубились. Правда проблема недоступности и трудоемкости компиляции ушла в прошлое. Появление ПК[8] изменило правила игры, сняв ограничения, которые заставляли добиваться высокого качества программ в 60-е годы.

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

Изменился в вид поставленных задач для создаваемых программных обеспечений. Программистам более не надо было заниматься кодированием математических алгоритмов. Они создавали системы, которые позволяли работать быстрее и эффективнее. Создавались программы, которые ранее были за границей мечты.

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

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

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

На данном временном этапе развития программирование в большей степени начинает приобретать характер копирования технологий запада, в попытке не тратя ресурсы страны следовать за нововведениями в программировании. Но данная стратегия не была реализована и как следствие не стала «Гигантским скачком» в развитии отрасли, как на это рассчитывали организаторы данной идеи. В одной из своих лекций прочитанной на территории России, Эдгар Дейкстра называл данное решение правительства СССР одной из причин победы Запада в «холодной войне».

На протяжение 50-х и 60-х годов было создано много основополагающих технологий в сфере программирования, которые способствовали развитию новых направлений и сфер применения их. Многие достижения в области электроники и микроэлектроники позволили осуществить заменить элементную базу ЭВМ на более продвинутую и новую. Так громоздкие электронные лампы заменяют полупроводниками (миниатюрными транзисторами).

Развитие языков программирования СССР

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

Ляпунов предложил называть «этап» оператором, а схемой счета — совокупность операторов и логических условий. Схема и совокупность спецификаций каждого оператора — это программа. Данная точка зрения на программу в таком ключе стал революционной и сразу легла в основу первых компиляторов или программирующих программ, так их называли в тот промежуток времени.

Первым в мире транслятором языка высокого уровня является ПП (Программирующая Программа[9]), он же ПП-1, успешно испытанный в 1954 году. Транслятор ПП-2 (1955 год, 4 в мире транслятор) уже был оптимизирующим и содержал собственный загрузчик и отладчик, библиотеку стандартных процедур.

Первыми программами, принадлежащими системному программному обеспечению, были трансляторы — ассемблеры и автокоды на Западе, программирующие программы (ПП) у нас.

Сотрудники отдела программирования исследовали реализуемость операторных схем и определили основные типы операторов, соответствующие решаемым задачам: Ai — арифметические операторы, Pi — логические операторы, управляющие счетом, Fi — операторы переадресации, позволяющие переходить к следующему значению индекса. Первые трансляторы отечественного производства имели мнемоническое именование программирующих программ. В основе входящего языка каждой из программирующих программ лежал общий концептуальный базис, функцией которого была фиксация типов операторов и общую идею их спецификации. Унификация языков не ставилась как задача первостепенной реализации.

Типы операторов по своей функциональности соответствовали подавляющему большинству решаемых тогда задач, а именно — вычислительным задачам. Выделялись арифметические операторы Аi, ведущие вычисление по формулам, логические операторы Рi, осуществляющие управление счетом, операторы переадресации Fi, позволяющие переходить к следующему значению индекса (и обратные им операторы восстановления), все же неарифметические вычисления объединялись в группы, которые имели название нестандартные операторы Hi, для которых спецификацией был их машинный код. Специального подъязыка описания данных, зачатки которого появились в более поздних ФОРТРАНе[10] и Алголе, не существовало.

Программирующая программа ПП-1 являлась одним из первых в мировой практике трансляторов и, по-видимому, имела самый высокий уровень входного языка.

Программирующая программа ПП-2, была создана под руководством М. Р.Шура-Буры в 1955 году для машины Стрела-1, основывалась на ПП-1 как прототипе. По своей сути ПП-2 являлся первым оптимизирующим транс тором, в виду того, что у него были усовершенствованы алгоритмы трансляции и было уделено заметное внимание оптимизации программ — экономии выражений, оптимальному сочетанию переадресации и восстановления (иначе говоря, наилучшей реализации вычисления индексных выражений), оптимальному отведению памяти для так называемых рабочих ячеек.

ПП для БЭСМ[11] создавала входной язык программирующих программ. Ее задачей было объединение схемы и спецификаций операторов в одном тексте, был введен первый структурный оператор — оператор цикла (соответствующий современным циклам с параметром).

ПП-2 послужила в качестве идеи для основания других двух проектов — ПП для Стрелы 4 и ПП для Стрелы 7. Первая из них представляла собой зачаток настоящей системы программирования: кроме самого транслятора она содержала систему сборки модулей и некоторые средства отладки. Транслятор получал такие фрагменты объектной программы, которые потом назовут модулями, а система сборки создавала программу из оттранслированных модулей и библиотечных программ.

В ПП для Стрелы 3 был реализован ряд идей — табличный подход к синтаксическому анализу, число рабочих переменных было оптимизировано для программирования арифметических выражений. Был создан метод хеширования, который применялся к экономии арифметических выражений.

С трансляции начиналось не только системное, но и теоретическое программирование. Именно работы по входным языкам (операторным схемам) и трансляторам (программирующим программам) послужили толчком к созданию первой математической модели программ — схемам Янова.

В конце пятидесятых прошлого столетия развивался и подход к автоматизации программирования с помощью сторонних библиотек стандартных программ. Были разработаны — стандартная составляющая программа — ССП (осуществляла статическую загрузку и связывание стандартных программ из достаточно обширной библиотеки), интерпретирующая система (ИС), ИС-2 уже воплотила в жизнь некоторые функции будущих операционных систем, осуществляя динамическое связывание, подкачку и смену используемых подпрограмм, причем все это делалось с небольшими накладными расходами и весьма скромными запросами на память. За счет высокой эффективности ИС-2 и хорошо продуманного интерфейса с основной программой сделали ее неотъемлемой частью комплекта поставки ЭВМ, что и является требованием в работе операционной системы.

Не взирая на все свои положительные качества, программирующие программы широкого практического использования не приобрели, даже при их наличии почти во всем множестве архитектур, существовавшем в стране, доля программирования непосредственно в машинном языке была доминирующей. Переход к современному стилю программирования на языках программирования высокого уровня был осуществлен по средствам создания первых алголовских трансляторов. Произошло так, что первая тройка отечественных алголовских трансляторов, созданная для наиболее массовой в то время ЭВМ М-20[12], различалась по своим потребительским возможностям так, что своей совокупностью они удовлетворяли практически все категории пользователей.

Создание системного программирования привело к необходимости создания адекватных языков программирования. Все языки, появившиеся к началу 60 годов — Фортран, Кобол, Алгол-60 и другие, — не учитывали этой области программистской деятельности, и алголовские системы, будучи достаточно громоздкими программными системами, писались еще в машинных кодах вручную. Адекватные языки нужны были не только для трансляторов, но и для всей возникающей области системного программирования: начали появляться и другие языковые процессоры, и первые операционные системы, и информационные системы, в дальнейшем это все приобретет название базового программного обеспечения.

Единственным языком программирования отечественного происхождения, получивший общемировую известность, стал язык Рефал. Однако распространённость этого языка незначительна. Первая версия Рефала была создана в 1966 году Валентином Турчиным в качестве метаязыка для описания семантики других языков. В будущем, за счет появления достаточно эффективных реализаций на ЭВМ, он стал находить практическое использование в качестве языка программирования. В текущее время основными диалектами языка являются такие его формы как: Рефал-2 (1970-е), Рефал-5 (1985) и Рефал+ (1990), отличающиеся друг от друга деталями синтаксиса и набором дополнительных средств, расширяющих первоначальный вариант.

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

Рефал — язык бестиповый. В его основе лежит понятие объектного выражения как универсального типа данных. Все аргументы и результаты всех функций являются объектными выражениями.

Объектное выражение определяется таким образом, что операция конкатенации делается неявной, скрытой. Точнее сказать, что конкатенация на уровне значений выражается конкатенацией на уровне имен. Это свойство вытекает из основной цели Рефала как метаязыка для описания разных языковых объектов. Оно придает особую выразительную силу и остальным средствам языка, таким как результатные выражения и образцы.

Образцы — мощное изобразительное средство. Они в сжатой и доступной форме обеспечивают как запись условий на вид аргумента, так и разбиение аргумента на составные части. Язык образцов Рефала лишен каких-либо «упрощающих» ограничений, свойственных другим языкам, что делает его очень простым для освоения и использования.

Язык определения функций Рефала, основанный на понятиях образца и результатного выражения чрезвычайно прост и компактен. Его минимальная версия получила название Базисный Рефал. Диалект Базисного рефала под названием Рефал-2 был реализован на многих типах отечественных ЭВМ и долгое время играл роль де-факто стандарта языка Рефал.

Язык Рефал-5 содержит Базисный Рефал в качестве подмножества. Расширения языка Рефал-5 качественно меняют стиль программирования.

В настоящее время существует две реализации языка Рефал-5: одна выполнена Д. Турчиным, другая — Н. Кондратьевым и Арк. Климовым. Обе имеют практически один и тот же входной язык, но отличаются рядом особенностей выполнения поствоенных задач. Вторая известна также под названием Рефал-6, однако следует помнить, что это название не языка, а его реализации.

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

1997 год. Рефал прочно занял свою нишу, не имея никаких конкурентов и опасностей. Например, он успешно используется физиками Обнинска, многими математическими центрами в России. Одно из основных применений Рефал – разработка трансляторов с языков программирования, когда сам Рефал используется как метаязык. В ИПМ[13] на нем был очень быстро написан высокоэффективный транслятор Cern Fortran.

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

Язык системного программирования (машинно-ориентированный язык), задумывался как язык-посредник при трансляции с различных языков. Для каждой аппаратной платформы достаточно было написать транслятор Алмо — и появлялась возможность работать с множеством языков программирования, которые имели трансляцию в Алмо. Были созданы реализации языка для основных отечественных машин того времени (М-20, БЭСМ-6, Минск 2, Урал 11) и трансляторы с Алгола-60 и ФОРТРАНа в Алмо, причем все трансляторы также были написаны на Алмо и “раскручены” на всех этих машинах. Язык Алмо имел в своей основе некоторую абстрактную машину, отражавшую особенность существовавшего тогда класса машин, и в этом отношении Алмо-подход предвосхищал появившиеся позже Р-код, М-код и прочие подобные подходы. Машинная ориентированность явно прослеживалась в языке — регистровые объекты, постфиксная запись выражений, оперсации с битами машинных слов и т.д.

Сигма — СИмвольный Генератор и МАкроассемблер — обладал двумя на то время новыми и важными особенностями. Синтаксически ограничиваемый макросами, генеральную линию создания программ — подстановку описанных макросов. Язык содержал средства формального описания конкретной архитектуры: была создана система параметров, в терминах которой фиксировалось представление языка для конкретной ЭВМ. Таким образом, общая Сигма-программа вместе с описанием архитектуры ЭВМ транслировалась на данную ЭВМ. Параметрами архитектуры были длина слова, представление значений типов в машинном слове и т.п., так и правила заполнения шаблонов машинных команд.

Элементарный Преобразователь символьной информации — считался исключительно простым языком. Переменные в нем не имели типа и не описывались, идентификатор переменной просто обозначал содержимое ячейки, отведенной для этой переменной. Константы в языке могли быть либо натуральными числами, либо восьмеричными числами, либо — наборами двоичных цифр. Выражения были только двуместные; арифметические выражения обращались со значениями операндов, как с представлениями натуральных чисел; были еще поразрядные операции, операции сдвига и операция извлечения адреса данного объекта (позволяющая программисту управлять до некоторой степени распределением памяти). Объектами языка были упакованные массивы или по-другому называемые списки и слова (умещающиеся в одном машинном слове последовательности элементов разной длины). Программист мог задать двоичную кодировку для символа или множество двоичных кодировок для класса символов. Существовали переходы на метку условные и безусловные, а также процедуры, замкнутые и открытые.

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

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

Но тем не менее, остались представители языков программирования, созданного десятки лет назад, но которые и по сей день используются или имеют видоизменений аналог на своей основе.

Становление программирования в России

Новый этап развития в сфере программирования был положен в начале 90-х годов. Стимулом для развития стал переход к рыночной модели экономики, которая предоставила много возможностей для поступления новых ЭВМ из других стран, приобретение которых в советское время было затруднительным процессом.

Так же не маловажным новшеством того времени стал интернет[14] (World Wide Web) в его привычном для современного человека виду. До этого времени языки и идеи программирования получали огласку через отдельные дистрибутивы или журналы по программированию, то теперь появился глобальный канал получения и передачи информацией, доступный всем, у кого имелся доступ в сеть. Для примера, любой язык программирования, созданный неизвестным человеком на другом уголке планеты, мог стать международным языком в виду своего новшества, удобства и доступности.

Одновременно появление интернета открыло новые возможности для развития языков программирования. Интернет стал полем для создания всевозможных сценариев, создания протоколов обмена информацией и различных интерактивов – благодатной почвой, где используемые до сего момента языки не имели власти. В этой ситуации вторую жизнь обрели функциональные языки программирования.

В короткий промежуток времени мэйнфреймы были оттеснены мощным потоком персональных компьютеров; так, согласно оценке IDC, в 1997 году в России было продано 1,4 млн. персональных компьютеров. Новая платформа создала потребность в целом ряде новых и ранее не столь востребованных услуг, например, в разработке программного обеспечения и системной интеграции, которые стали предоставляться новыми и молодыми частными компаниями. Многие современные лидеры в компьютерном бизнесе России являются представителями этой «новой волны»; на сегодняшний день такие компании вполне могут называть себя ветеранами рынка, невзирая на скромный возраст от 8 до 12 лет.

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

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

Платное образование приобретает все большую популярность; по данным Госкомстата, в 2001 году более трети студентов в России оплачивали свое образование. Но стоит обратить внимание, что программы обучения всех университетов, как государственных, так и частных, подвергается контролю государством с помощью набора стандартов, гарантирующих единый уровень обучения. Данный подход создает ряд специфических для России моментов. Например, в стандарте на программистские специальности традиционно очень велик процент обязательных дисциплин по математике и прочим основополагающим наукам. В следствии чего, первые два с половиной года самой распространенной программистской специальности почти полностью посвящены математическим предметам; это означает, что студенты лишены необходимой практики в программировании до третьего или даже четвертого курса. У такого подхода к делу есть и преимущества: отечественные программисты получают базовые знания, которые могут быть применены в самых разных исследовательских задачах. Данный факт регулярно подтверждается победами российской молодежи на различных международных соревнованиях. Например, команда Санкт-Петербургского государственного университета два года подряд становилась победителем международной олимпиады по программированию, проводимой под эгидой ACM (2000 и 2001 годы), а также входила в десятку победителей в течение пяти лет. Следующее поколение также подает большие надежды: в 2000 году представители школ России победили на международной олимпиаде по информатике в Китае.

Количество обучающихся в России студентов также растет. В 2001 году в стране насчитывалось 4,7 млн. студентов, почти вдвое больше, чем в 1995 году. В частности, растет и число студентов, обучающихся программированию: количество тех, кто ежегодно поступает на связанные с программированием или компьютерными технологиями специальностями выросло за последние пять лет с 8 до 25 тыс. студентов. В связи с возможностью найти по окончании вуза высокооплачиваемую работу программирование становится все более и более заманчивой специальностью.

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

Некоторый процент программистов эмигрирует из России, и все же проблема покидания страны специалистами уже не так глобальна, как в начале 90-х годов, когда программисты тысячами эмигрировали, опасаясь неясного положения и туманных перспектив развития России.

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

Одним из представителей в Российском сегменте создания программ является, Игорь Анатольевич Данилов. Российский программист, автор популярного антивирусного обеспечения Dr. Web[15], технический директор и основатель компании «Доктор Веб». После обучения в Ленинградском институте авиационного приборостроения проработал инженером по авиационным оборонным проектам в ЦНПО «Ленинец». С 1990 года занялся разработками в области антивирусной защиты. Свой первый вирусный анализатор Игорь Данилов написал на основе энтузиазма в желании избавить свой НИИ от вирусных угроз. В 1992 начал разработку антивируса Dr.Web. В 2003 основал компанию «Доктор Веб».

Другим представителем данного сегмента является, также создатель антивирусного ПО, Евгений Валентинович Касперский. Российский программист, один из ведущих мировых специалистов в сфере информационной безопасности. Один из основателей, основной владелец и нынешний глава АО «Лаборатория Касперского» — компании международного уровня, которая занимается разработкой решений для обеспечения IT-безопасности, имеющей более 30 региональных офисов и ведущей продажи в 200 странах. Е.В. Касперский является лауреатом Государственной премии в области науки и технологий за 2008 год. В прессе характеризуется как «гроза компьютерной преступности».

Кроме «охранных» сфер программного обеспечения, представители России в сфере программирования произвели не малый вклад в развитие и крупных международных проектов. Так, Александр Александрович Степанов, является Русско-американским учёным в области информатики и вычислительной техники. Был топ-менеджером компаний SGI, AT&T и Compaq. Большую известность приобрел как создатель STL[16] (англ. Standard Template Library), которая стала частью стандартной библиотеки языка C++. Свою очередь C++ является одним из самых распространённых языков программирования современности.

Кроме C++ на просторах России получили широкое распространение и другие языки программирование со всевозможными расширениями. Основными предстателями аналогов являются: java, python, PHP, ruby, C# и многие другие.

Среди множества языков можно выделить один, который получил масштабное применение в среде Android. Данным языком является Kotlin. До этого времени таким статусом обладали только Java и C++.

Язык программирования Kоtlin стал новым официальным языком для создания и разработки приложения на базе Andrоid. Об этом Goоgle объявил на конференции для разработчиков, в ходе которой был представлен выпуск публичной бета-версии мобильной платформы Andrоid O. В официальный инструментарий будет включена поддержка приложений, разработанных на Kotlin. Представитель JetBrаins подтвердил данную информацию. Kotlin преобрел статус официального языка разработки приложений под ОС Android в дополнение к существующим Jаva и C++.

«Хотелось сделать лаконичный язык», – говорил директор департамента инвестиций (на тот момент операционный директор) JеtBrаins Андрей Иванов о разработке Kotlin в интервью журналу «Хакер» в 2013 г. Программисты затрачивают много времени на чтение кода, поэтому конструкции языка должны позволять писать программы кратко и ясно. Java считается многословным языком с большим количеством синтаксисов, Kotlin призван улучшить ситуацию, пояснил Иванов.

Разработкой Kоtlin занимается компания JetBrains, основанная в 2000 г. российскими разработчиками Сергеем Дмитриевым, Евгением Беляевым и Валентином Кипятковым. Первый показ продукта был в феврале 2016 г. Kotlin полностью совместим с Java, что позволяет разработчикам постепенно переходить с Javа на Кotlin и безболезненно интегрировать систему. Язык назван в честь острова Котлин в Финском заливе, на котором расположен Кронштадт.

В 2016 г. оборот JetBrains составил $176 млн (около 10,2 млрд руб.), ее продуктами активно пользуется 4 млн человек, а количество сотрудников – более 600 человек, рассказывает представитель компании. Разработкой Kotlin занималось чуть более 40 специалистов.

Сейчас JetBrains – международная компания с головным офисом в Праге, поэтому формально это чешская компания с русскими корнями, рассказывает ее представитель. Ее основные центры по разработке находятся в Санкт-Петербурге и Мюнхене, уточняет она, добавляя, что большинство сотрудников, включая руководство, – русские.

В своем продуктовом коде Kotlin уже используют такие крупные кампании как: Amazon Wеb Services, Pinterest, Cоursera, Netflix, Uber, Square, Trеllo, Basecamp, говорится в материалах разработчика. Kotlin также используют и в российских компаниях Avito, «Рокетбанк» и Aviasales. Kotlin не первый опыт использования разработок JetBrains в Google. В 2014 г. корпорация представила новую среду разработки Android Studio, основанную на IntelliJ IDEA – интегрированной среде разработки от той же JetBrains.

В среде бизнесов, создающих инструменты разработки, не много компаний, которые могут так заявить о себе и стать по факту стандартом благодаря Google, говорит о JetBrains управляющий партнер Almaz Capital Partners Александр Галицкий. За последние десять лет такого громкого события в индустрии, связанной с созданием инструментария для разработок софта, еще не было, признает он. Данный факт неоспоримо подтверждает качество питерской школы программирования языков. Венчурных инвесторов у компании не было, знает Галицкий. «Я к ним стучался, но меня не пустили», – вспоминает он. JetBrains – прибыльная компания, которая не вкладывается в маркетинг, что говорит о том, что они создали хороший инструмент, рассуждает Галицкий.

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

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

Развитие российской индустрии программирования и информационных технологий затруднено целым рядом проблем. Одной из самых трудных и весомых проблем современности является компьютерное пиратство. 88% используемых в России программ являются пиратскими и не имеют лицензий (по миру эта цифра является равной примерно 36%). Только в небольшом ряде стран, данная проблема имеет более худшие показатели, это страны: Вьетнам, Китай и ряд стран бывшего СССР. Ряд компаний пытается избежать столкновения с этой проблемой путем ориентации создаваемых продуктов на западный рынок. Этот подход представляется очень многообещающей, так как из-за разницы в уровне цен на исходном и целевом рынке финансовый результат может многократно превышать затраты. Основная проблема заключается в том, что требуются значительные начальные финансовые вложения, отсутствующие у большинства компаний российского сегмента. Финансовый рынок в России также недостаточно развит для того, чтобы поддерживать подобные проекты. Хотя данная модель и имеет ряд успешных (например, антивирусная система AVP или графические средства, разработанные компанией ParaGraph), все еще видно, станет ли эта модель массовой в России и приживется ли.

Следующая проблема, затрагивает все отрасли России, — неразвитая инфраструктура. Почта, транспорт, сервисные услуги либо ненадежны, либо просто плохи в большинстве регионов, может быть, за исключением отдельных крупных городов. Естественно, это затрудняет работу всех предприятий, зависящих от инфраструктуры. Например, расцвет электронной коммерции во всем мире практически не затронул России: очень малое количество людей владеют и используют кредитные картаме, лишь 6,3% от всего населения имеют доступ к Сети, и, наконец, почта крайне ненадежна. Как завершающий параметр, российская индустрия глобального программирования страдает от неадекватного имиджа России за рубежом. В погоне за сенсациями ряд статьей в западной прессе освещает такие «неаппетитные» темы: коррупция с отмывание денежных средств, природные и техногенные катастрофы или самое распространённое, русская мафия. В следствие чего, российские компании вынуждены начинать свой маркетинг с нейтрализации бытовых мифов.

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

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

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

Конкурентная корреляция программирования

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

В последние годы можно наблюдать положительную тенденцию роста объема рынка. Согласно данным IDC[17], в 2016 голу объем рынка был равен 17 млрд. $, а в 2019 уже равнялся 24,18 млрд. $. Данная тенденция безусловно говорил о росте рынка программирования и IT сферы в целом, что ведет к увеличению спроса на специалистов данной отрасли.

2 августа 2019 года стало известно о том, что объем ИТ-рынка России в рублях в 2018 году увеличился на 18,7%, а если взять в сачет инфляцию, то на 13,8%. Согласно бивалютному индексу РУССОФТ, по результатам 2018 г. российский рынок ИТ увеличился на 10%. Этот прирост оказался больше, чем в предыдущем 2017 г. (+9,5%) и превысил прогнозируемую год назад величину (+7,5%). Соответствующие расчеты сделала Ассоциация «РУССОФТ» в рамках собственного ежегодного исследования.

Как сообщалось, при использовании дефлятора в расчетах, явный рост ИТ-рынка России, измеряемый в рублях, зафиксирован впервые с 2012 г. В 2013-2015 годы наблюдалось сокращение ИТ-рынка, а в 2016-2017 годы его объем оставался стабильным.

Важно указать, что Ассоциация «РУССОФТ» не проводит собственного исследования ИТ-рынка, а только анализирует данные о нем из многочисленных источников. Источниками для этого анализа являются рейтинги ИТ-компаний CNews100 и TAdviser100; результаты исследований IDC, Gartner, ITResearch, J’son & Partners Consulting, iKS-Consulting; данные крупных отечественных софтверных компаний, дающих оценки отдельных сегментов рынка ПО; а также официальные итоги работы российских и зарубежных ИТ-компаний, занимающих лидирующие позиции на рынке России.

Россия занимает 25-е место среди 180 стран мира по привлекательности для специалистов по цифровым технологиям как место работы, показало совместное исследование BCG[18], The Network и HeadHunter (Decoding Digital Talent). В исследовании в 2018 г. приняли участие 26 800 IT-специалистов из 180 стран, в том числе более 1600 человек из России. Их спрашивали, в какой стране они хотят работать.

Как и следовало ожидать, почетным 25-м местом Россия обязана лояльности сотрудников из стран СНГ и Балтии. Больше всего стремятся переехать в Россию специалисты из Казахстана (38%), Белоруссии (27%), Турции (9%) и Анголы (8%). Как правило, люди стремятся перебраться либо в соседние страны, либо в страны, где люди говорят на таком же языке и имеют родственную или схожую культуру, отметил Райнер Штрак, старший партнер BCG. Самыми популярными странами и направлениями для переезда в мире стали США, Германия и Канада, а наиболее популярными городами – Лондон, Нью-Йорк, Берлин, Амстердам и Барселона.

Специалисты из развивающихся стран смотрят в строну России и считают очень неплохим местом жизни и для работы как по оплате труда, так и по возможности получения незаменимого опыта и знаний, говорит Евгения Дельнова, директор отделений Kelly Services по подбору IT-персонала. Уровень заработной платы специалистов по цифровым технологиям в России в наши выше, чем в ряде Азиатских стран и Африки. Имеется одно сдерживающее обстоятельство в виде оформления разрешения на работу и документальная сложность оформления иностранных работников, в случай решения данных вопросов, Россия сможет рассчитывать на приток специалистов в сфере IT из таких стран как Китай, Африка и Индия.

Аналитический отдел BCG особенно выделяют вклад Москвы. По данным BCG, Москва входит сейчас в лидирующую группу среди 12 мегаполисов мира по обеспеченности ресурсами для новой экономики: талантами, инфраструктурой, финансированием. И развивается быстрее: Москва опережает все другие мегаполисы по росту доли рабочих мест категории «Знание» – с 22% в 2010 г. до 26% в 2016 г. У Лондона за семь лет доля таких рабочих мест выросла с 31 до 33%. Категория «Знание» означает, что более половины задач сотрудника – аналитические, творческие, требующие наличие хорошего образования и периода длительной подготовки. Примеры профессий: врачи, преподавательский состав, инженеры, руководители подразделений.

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

Наши цифровые кадры имеют лучшее образованние, чем зарубежные коллеги, показало исследование: более 90% респондентов в России имеют высшее образование (против 80% в мире). Среди них меньше начальников. У 47% вообще нет никаких руководящих обязанностей (в мире таких 41%).

Почти половина респондентов считает себя экспертами по анализу больших данных, 30% – по веб-разработке и в сфере программирования, а 29% – по разработке мобильного программного обеспечения и софта. Но доля наиболее современных специальностей меньше, чем в мире в целом: лишь 14% респондентов в России заявили, что являются экспертами по гибким методам управления проектами agile и scrum (в мире – 18%), 8% – по искусственному интеллекту и машинному обучению (в мире – 14%).

В России мало стартапов или крупных компаний в сфере машинного обучения, искусственного интеллекта, робототехники и кибернетики, поэтому российские специалисты лишены возможности получения необходимых навыко и опыт, говорит Надежда Стяжкина, руководитель сектора IT, интернета и телекома кадровой компании Antal Russia.

Предпочтение в работе цифровые кадры отдают крупным компаниям, а не начинающим стартапам и малым организациям, их привлекает также государственная служба. Судя по данным отчета BCG, российские кадры, выбирая место работы, гораздо больше, чем зарубежные коллеги, оценивают высокую зарплату и условия работы. На втором месте – креативные и интересные задачи, на третьем – возможность развиваться, повышать квалификацию и учиться. Их мало волнует оптимальное соотношение работы и личной жизни, тогда как для специалистов из других стран это важнейший фактор мотивации.

Цифровые кадры мобильнее нецифровых. 58% российских экспертов по цифровым технологиям хотят переехать в другие страны (прежде всего в Германию, Великобританию и США), тогда как из представителей нецифровых специальностей работать за границей хотят 45%. Но исследование показало, что чемоданные настроения российских специалистов по цифровым технологиям ослабевают: за год доля российских специалистов по цифровым технологиям, желающих переехать в другие страны, снизилась на 7 п. п.

Наталья Домашенко, партнер агентства NGRS[19] по поиску IT-специалистов, поясняет, что основная волна миграции IT-специалистов за рубеж прошла в 2014–2016 гг. – многие решили уехать из-за падения рубля и санкционных войн с США. Все, кто действительно хотел покинуть страну, уже живут и работают за границей, говорит она.

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

Борис Вольфсон, директор по развитию HeadHunter, говорит, что многие российские предприятия, в том числе из госсектора, показали намерение и умение адаптировать корпоративную культуру и бизнес-процессы под интересы и стиль нового поколения цифровых кадров.

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

По данным HeadHunter, число вакансий для IT-специалистов в январе – мае 2019 г. выросло на 14% по сравнению с тем же периодом прошедшего года. Сейчас на портале HeadHunter открыто более 61 000 вакансий. Конкуренция за кадры очень высока: на одну вакансию в мае приходилось лишь 2,8 резюме. Для сравнения: по всем профессиям в России на одну вакансию приходилось в среднем семь резюме.

Средняя предлагаемая зарплата IT-специалиста и ведущего IT-специалиста по России в I квартале 2019 г. составляла 88 175₽руб., по данным HeadHunter.

Специалисты по цифровым технологиям, говорит Василий Воропаев, основатель платформы по подбору фрилансеров Rubrain, получают предложения от работодателей из всех отраслей, потому что даже в относительно консервативных отраслях, как пример в машиностроении, предприятия активно внедряют информационные системы. Для многих компаний вопрос цифровизации является критерием выживания на рынке. По его словам, айтишников в России настолько не хватает, что даже крупные компании, такие как «Яндекс», могут искать нужного IT-специалиста месяц, а то и дольше.

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

Наталья Анохина, менеджер отделения по подбору IТ-персонала Kelly Services, указывает на высокий уровень подоходного налога и дороговизну проживания за границей, а также недостаточное знание английского языка. Это является препятствием для переезда. По словам Домашенко, зарплата разработчика в Москве – $30 000–60 000 в год, а в Калифорнии программист получает $85 000–180 000. Как правило, специалист за рубежом после вычета налогов и расходов на жилье получает столько же, сколько ему платили в России, но при этом может испытывать больше трудностей в связи с переездом и культурным барьером.

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

Российские компании тоже стараются расширить географию. У провайдера платежных сервисов Qiwi есть представительства в нескольких странах СНГ, в каждом свое IT-подразделение, говорит Мария Панферова, отвечающая за HR-бренд и стратегические коммуникации в компании.

«Тинькофф банк» так к примеру, нанимает IT-специалистов и из стран СНГ и ближнего зарубежья, и из российских городов, берет стажеров из стран СНГ. Банк открыл 11 центров разработки в крупных регионах и запустил виртуальный центр разработки, в котором могут удаленно трудиться программисты из России и СНГ, рассказал представитель банка.

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

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

Перед программистом более не стоит задача отсидеть свой рабочий день и почти домой, при новой модели работы сотрудник понимает, что его основным требованием стоит выполнение поставленной задачи и оценка его работы будет проводиться по выполненной работе, а не по затраченному времени на ее выполнение. Как следствие из этого следует более грамотное распределение ресурсов и расставление необходимых приоритетов.

Как следствие из выше сказанного можно сделать вывод что для программирования и IT сферы в целом, Россия становится более привлекательным объектов. Молодые специалисты получают больше возможностей после окончания ВУЗов приобрести необходимый опыт и повысить свой уровень знаний, а предприятия в свою очередь будут получать новых специалистов, заточенных под свои проекты и вид деятельности.

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

Заключение

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

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

Библиография

1. Немнюгин С.А. Turbo Pascal (практикум): СПб.: «Питер», 2003. – 475с.

2. Д.А. Поспелов, «Становление информатики в России», в сб. «Очерки истории информатики в России», под ред. Д.А. Поспелова и Я.И. Фета. Новосибирск, Научно-издательский центр ОИГГМ СО РАН, 1998

3. 1998-99 Occupational Outlook Handbook. Washington, DC: Bureau of Labor Statistics, 1999

  1. Д. Мойтра, «Программная индустрия Индии». «Открытые системы», 2001, № 11

5. James A. Whittaker, Jeffrey M. Voas, 50 Years of Software: Key Principles of Quality. IEEE IT Pro, November-December 2002. IEEE Computer Society, 2002, All rights reserved. Reprinted with permission.

6. М. Кузьминский, «Распараллеливание по-нижегородски». «Открытые системы», 2001, № 1

7. Йенсен К., Вирт Н. Руководство для пользователя и описание языка. – М.,1982. 151 с.

8. Епанешников А. М., Епанешников В. А. Программирование в среде Turbo Pascal 7.0.- 1995.-278с.

9. https://24smi.org/celebrity/1074-evgenii-kasperskii.html

10. Роберт У. Себеста. Основные концепции языков программирования. — 5-е изд.. — М.: Вильямс, 2001. — 672 с. — ISBN 5-8459-0192-8.

11. https://www.vedomosti.ru/management/articles/2019/06/18/804488-rossiiskie-it-spetsialisti

12. https://www.tadviser.ru/index.php/%D0%A1%D1%82%D0%B0%D1%82%D1%8C%D1%8F:%D0%98%D0%A2-%D1%80%D1%8B%D0%BD%D0%BE%D0%BA_%D0%A0%D0%BE%D1%81%D1%81%D0%B8%D0%B8

  1. Электро́нно-вычисли́тельная маши́на — комплекс технических, аппаратных и программных средств, предназначенных для автоматической обработки информации, вычислений, автоматического управления. 

  2. Доктор Ко́нрад Эрнст О́тто Цу́зе — немецкий инженер, пионер компьютеростроения.

  3. Го́вард Ха́тауэй Э́йкен — американский пионер компьютеростроения. В должности инженера IBM руководил работами по созданию первого американского компьютера «Марк I»

  4. Алексе́й Андре́евич Ляпуно́в — советский математик, один из основоположников кибернетики, член-корреспондент АН СССР.

  5. Анато́лий Ива́нович Кито́в — выдающийся советский и российский учёный, пионер отечественной кибернетики и информатики,

  6. Центральный комитет Коммунистической партии Советского Союза — высший партийный орган в промежутках между съездами партии. Наибольший по численности состав ЦК КПСС был избран на XXVIII съезде КПСС.

  7. Ники́та Серге́евич Хрущёв — советский государственный деятель. Первый секретарь ЦК КПСС с 1953 по 1964 годы, Председатель Совета министров СССР с 1958 по 1964 годы.

  8. Персона́льный компью́тер, ПК (англ. personal computer, PC), ПЭВМ (персональная электронно-вычислительная машина) — настольная микро-ЭВМ, имеющая эксплуатационные характеристики бытового прибора и универсальные функциональные возможности

  9. ПРОГРАММИРУЮЩАЯ ПРОГРАММА — программа, предназначенная для перевода (трансляции) описаний алгоритмов с одного формального языка на другой.

  10. Фортра́н — первый язык программирования высокого уровня, получивший практическое применение, имеющий транслятор и испытавший дальнейшее развитие. Создан в период с 1954 по 1957 год группой программистов под руководством Джона Бэкуса в корпорации IBM.

  11. БЭСМ — серия советских электронных вычислительных машин общего назначения, предназначенных для решения широкого круга задач. Разработка Института точной механики и вычислительной техники АН СССР.

  12. M-20 — советская ламповая электронная вычислительная машина. Разработана в Институте точной механики и вычислительной техники (ИТМиВТ) и СКБ-245 под руководством С. А. Лебедева.

  13. ИПМИПМ РАН — Институт прикладной математики им. М. В. Келдыша в Москве.

  14. Интерне́т (англ. Internet, МФА: [ˈɪn.tə.net]) — всемирная система объединённых компьютерных сетей для хранения, обработки и передачи информации.

  15. Dr.Web — общее название семейства антивирусного ПО для различных платформ и линейки программно-аппаратных решений, а также решений для обеспечения безопасности всех узлов корпоративной сети. 

  16. Библиотека стандартных шаблонов (STL) (англStandard Template Library) — набор согласованных обобщённых алгоритмов, контейнеров, средств доступа к их содержимому и различных вспомогательных функций в C++.

  17. International Data Corporation (IDC) — американская аналитическая компания, специализирующаяся на исследованиях рынка информационных технологий. Является подразделением International Data Group IDG. Штаб-квартира — Framingham (Массачусетс).

  18. BCG — международная компания, специализирующаяся на управленческом консалтинге, входит в «большую тройку управленческого консалтинга».

  19. NGRS (Next Generation Recruitment Services) — лидер российского рынка RPO (Recruitment Process Outsourcing).