Как изменится программирование за следующее десятилетие

0
1302
views

Перевод статьи Элисон ДеНиско Рейом «How programming will change over the next 10 years: 5 predictions».

Как изменится программирование в будущем

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

Вот пять предсказаний относительно того, каким будет программирование через десяток лет.

1. Программирование будет абстрактным

Такие тенденции как serverless-технологии, контейнеры, платформы для Low-code разработки предполагают, что многие разработчики будут заняты на более высоких уровнях абстракции, не затрагивая детали кода более низкого уровня. Таково мнение вице-президента и главного аналитика Forrester – Джеффа Хаммонда.

«Предположительно, мы меньше будем заботиться об инфраструктуре создания изначально облачных приложений», – говорит Хаммонд.

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

«Сегодня мы занимаемся пиксель-ориентированной разработкой и создаем мобильные и веб-приложения на привычных фреймворках. В будущем это изменится и нам придется к этому привыкнуть», – полагает Хаммонд.

2. ИИ станет частью рабочих инструментов разработчика, но людей не заменит

По словам Хаммонда, в настоящее время ИИ постепенно проникает в набор инструментов разработки. Например, компания Microsoft добавила ИИ-платформу в обновление Windows 10. Таким образом каждый программист, работающий на этой OS, сможет использовать заранее подготовленные модели машинного обучения.

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

«Я полагаю, мы увидим много примеров инструментов разработки, которые будут стараться предсказать намерения программиста и ускорить выражение этого намерения. В результате это станет еще одной формой абстракции», – сказал Хаммонд.

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

«Я думаю, что они сделают возможной более быструю, чем сейчас, разработку решений. Это хорошо, потому что не заметно, чтобы количество людей, желающих получить новое ПО и приложения, снижалось, – говорит он. – Я довольно оптимистичен и считаю, что подобные инструменты будут помогать разработчикам, а вовсе не послужат их заменой. Всегда есть достаточно того, что нужно делать на низком уровне, а на работу на высоком уровне не хватает времени. Возможно, новые технологии позволят нам освободить время для тестирования того, что мы напрограммировали».

Изменения, которые ожидаются в программировании

3. Восход универсального языка программирования

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

«Вероятно, мы будем вспоминать о Python как о пра-пра-пра-прадедушке языков будущего. Эти языки по своей сути будут похожими на английский язык, но при этом будут проще в использовании, – предсказывает Панетта. – Программы будут создаваться из блоков кода. Это будет напоминать составление детьми слов из кубиков. Разработчики будут объединять эти блоки, чтобы реализовать необходимый функционал, а сами блоки даже могут и не быть в текстовой форме».

По словам Панетты, языки будущего могут включать визуальные изображения изменений данных. Примером может служить изображение календаря, как бы говорящее: «Этот блок дает возможность юзеру выбирать и устанавливать даты». Также могут быть блоки, позволяющие использовать тактильные сенсорные устройства. Это поможет людям с нарушениями зрения заниматься программированием.

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

4. Каждый разработчик будет работать с данными

Разработчикам будущего потребуется приобрести больше навыков, в частности, в анализе данных, – полагает Кристен Сосульски, адъюнкт-профессор в школе бизнеса Стерна при университете Нью-Йорка, автор книги «Data Visualization Made Simple».

«Это касается всех сфер, от статистического анализа данных до нелинейного и линейного анализа данных, до машинного обучения и даже до искусственного интеллекта, – говорит Сосульски. – Это действительно не просто изучение того, как писать код, это также изучение того, как анализировать данные и популяризировать другие модели».

5. Программирование будет основным принципом системы образования

Программирование будет таким же основным навыком, как чтение, письмо и счет, – считает Панетта. «Чем бы вы ни занимались на профессиональном уровне, вам для этого потребуется умения анализировать большие объемы данных, разбираться в машинном обучении и использовать симуляторы для уменьшения стоимости тестирования и производства».

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

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

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



ОСТАВЬТЕ ОТВЕТ

Please enter your comment!
Please enter your name here