4 как программное обеспечение изменилось с развитием компьютеров
Обновлено: 21.11.2024
Разработка программного обеспечения сильно изменилась за последние 10 лет. Практически каждая компания сегодня занимается разработкой программного обеспечения. Прогнозируется, что в следующие 10 лет изменения произойдут в 10 раз больше.
Итак, что именно произойдет в будущем разработки программного обеспечения?
Какое будущее у разработки программного обеспечения?
Будущее разработки программного обеспечения уже наступило. Это уже происходит в исследовательских лабораториях. И это только вопрос времени, когда он будет повсюду.
Это означает, что будущее разработки программного обеспечения уже наступило. И будущее за текущими тенденциями, принятыми командами разработчиков программного обеспечения.
Современные тенденции в разработке программного обеспечения
Сегодня существует множество тенденций, которые определят будущее разработки программного обеспечения. Но то, где находятся тенденции — с точки зрения внедрения — различается между новаторами, которые опережают кривую, ранними последователями, которые идут следующими, и ранним большинством, которые принимают тенденции.
Новаторы внедряют:
- Глубокое обучение: разновидность машинного обучения на основе искусственных нейронных сетей.
- Блокчейн: растущий список записей, связанных с криптографией.
- ИИ: искусственный интеллект, используемый при разработке программного обеспечения (например, ИИ при написании кода или ИИ при тестировании программного обеспечения).
Первые пользователи принимают:
- Бессерверные/лямбда-выражения: способ создания бессерверных приложений (например, AWS Lambda).
- Реактивное программирование: модель, построенная вокруг асинхронных потоков данных (например, Java Completable Future).
- Оркестрация: способ автоматической настройки, координации и управления системами (например, облачная оркестрация).
- GraphQL: язык запросов данных и манипулирования с открытым исходным кодом для API. Сегодня GraphQL — одна из главных тенденций открытого исходного кода.
Раннее большинство приняло:
Что дают эти тенденции? Они помогают командам разработчиков программного обеспечения достичь будущего уже сегодня. Например, у NVIDIA есть карты, достаточно мощные для автономных транспортных средств, с 320 триллионами операций в секунду на карте.
Итак, что будет дальше в разработке программного обеспечения?
Прогнозы развития программного обеспечения
В следующем видео я делюсь своими прогнозами относительно будущего разработки программного обеспечения. (Или ознакомьтесь с обзором 6 прогнозов ниже.)
1. Инновации будут множиться
На создание первых 500 миллионов приложений ушло 40 лет. Чтобы создать следующие 500 миллионов, потребуется всего 4 года.
К 2025 году количество интернет-пользователей увеличится более чем вдвое. И им будет проще изобретать и с меньшими затратами, чем раньше. Стоимость создания стартапа сейчас в 1000 раз меньше, чем 20 лет назад. Вместо того, чтобы покупать компьютеры, они будут использовать облако. Также будет задействован краудфандинг.
Это означает, что в процессе разработки программного обеспечения будет много инноваций.
2. Приложения станут меньше
Приложения становятся меньше. Вместо традиционных приложений с большими, тяжеловесными пакетами есть более маленькие приложения. Эти приложения используют такие вещи, как микросервисы, которые взаимодействуют через API.
Это означает, что командам придется решать проблемы перехода на микросервисы. (В противном случае они могут вернуться от микросервисов к монолиту или минисервисам).
«К 2019 году более 90 % организаций, пробующих микросервисы, сочтут эту парадигму слишком разрушительной и будут использовать вместо нее минисервисы». — Гартнер
Кроме того, в приложениях будет использоваться 1 000 API вместо 1 или 2, используемых в традиционных приложениях. Будет еще важнее иметь управление API.
3. Оборудование исчезнет
В будущем аппаратное обеспечение будет не так часто встречаться. Он исчезнет на заднем плане.
Таким образом, аппаратное обеспечение будет использоваться в таких вещах, как беспилотные автомобили и беспилотные такси, но оно будет оболочкой для программного обеспечения.
4. Квантовые вычисления изменят правила игры
Квантовые компьютеры уже появляются. Но они изменят жизнь, какой мы ее знаем, в ближайшие 10 лет.
С квантовым компьютером в определенных приложениях можно сделать гораздо больше, чем с обычными вычислениями. И даже изобретаются новые языки программирования, помогающие программировать квантовый компьютер (например, QDK от Microsoft).
Квантовые вычисления уже используются. Volkswagen работает над управлением дорожным движением в масштабах города, используя квантовые вычисления для каждого автомобиля, пешехода и светофора.
5. Программное обеспечение будет активным
Программное обеспечение будет быстрее, чем мгновенное. Это будет активно.
Искусственный интеллект заставит программное обеспечение предвидеть, чего хочет пользователь, основываясь на том, что оно знает о нем и его предпочтениях.
ИИ становится умнее.И мы уже видим, как ИИ делает много вещей. Например, искусственный интеллект обеспечивает автоматизацию тестирования. И это в более чем 9000 пакетов с открытым исходным кодом.
Чтобы обеспечить будущее разработки программного обеспечения, очень важно нанимать недавних выпускников, специализирующихся на искусственном интеллекте.
Разработка программного обеспечения сильно изменится в будущем. Вам придется специализироваться, чтобы выделиться. И такие вещи, как ИИ, будут важны для этого.
Подготовьтесь к будущему разработки программного обеспечения уже сегодня
Пришло время подготовиться к будущему разработки программного обеспечения уже сегодня.
Вы должны быть в 10 раз быстрее, чем сегодня. Итак:
- Инвестируйте в свое будущее и узнавайте новое.
- Не отставайте и не изобретайте велосипеды.
- Используйте все — с открытым исходным кодом, коммерческие, службы и корпоративное облако.
Помните: у вас будет больше программного обеспечения и более масштабное программное обеспечение. Это означает больше строк кода, больше файлов, больше разработчиков, больше географических регионов, больше API, больше мобильных приложений и больше открытого исходного кода.
Используйте инструменты, которые помогут вам достичь этого, чтобы помочь справиться с этой DevOps в масштабе — и сделать быстрее и лучше.
Как помогут решения Perforce
Решения Perforce могут помочь вам подготовиться к будущему разработки программного обеспечения уже сегодня.
Наши решения включают:
- Контроль версий
- Управление жизненным циклом приложения
- Гибкое управление проектами
- Автоматическое тестирование
- Статический анализ
- Инструментарий разработчика Java
- Поддержка с открытым исходным кодом
- Управление API
- Платформа приложений PHP
- Встроенные компоненты
Убедитесь сами, как мощь решений Perforce может помочь вам в разработке программного обеспечения будущего. Получите бесплатные пробные версии и начните работу уже сегодня.
Разработка программного обеспечения сильно изменилась за последние 10 лет. Практически каждая компания сегодня занимается разработкой программного обеспечения. Прогнозируется, что в следующие 10 лет изменения произойдут в 10 раз больше.
Итак, что именно произойдет в будущем разработки программного обеспечения?
Какое будущее у разработки программного обеспечения?
Будущее разработки программного обеспечения уже наступило. Это уже происходит в исследовательских лабораториях. И это только вопрос времени, когда он будет повсюду.
Это означает, что будущее разработки программного обеспечения уже наступило. И будущее за текущими тенденциями, принятыми командами разработчиков программного обеспечения.
Современные тенденции в разработке программного обеспечения
Сегодня существует множество тенденций, которые определят будущее разработки программного обеспечения. Но то, где находятся тенденции — с точки зрения внедрения — различается между новаторами, которые опережают кривую, ранними последователями, которые идут следующими, и ранним большинством, которые принимают тенденции.
Новаторы внедряют:
- Глубокое обучение: разновидность машинного обучения на основе искусственных нейронных сетей.
- Блокчейн: растущий список записей, связанных с криптографией.
- ИИ: искусственный интеллект, используемый при разработке программного обеспечения (например, ИИ при написании кода или ИИ при тестировании программного обеспечения).
Первые пользователи принимают:
- Бессерверные/лямбда-выражения: способ создания бессерверных приложений (например, AWS Lambda).
- Реактивное программирование: модель, построенная вокруг асинхронных потоков данных (например, Java Completable Future).
- Оркестрация: способ автоматической настройки, координации и управления системами (например, облачная оркестрация).
- GraphQL: язык запросов данных и манипулирования с открытым исходным кодом для API. Сегодня GraphQL — одна из главных тенденций открытого исходного кода.
Раннее большинство приняло:
Что дают эти тенденции? Они помогают командам разработчиков программного обеспечения достичь будущего уже сегодня. Например, у NVIDIA есть карты, достаточно мощные для автономных транспортных средств, с 320 триллионами операций в секунду на карте.
Итак, что будет дальше в разработке программного обеспечения?
Прогнозы развития программного обеспечения
В следующем видео я делюсь своими прогнозами относительно будущего разработки программного обеспечения. (Или ознакомьтесь с обзором 6 прогнозов ниже.)
1. Инновации будут множиться
На создание первых 500 миллионов приложений ушло 40 лет. Чтобы создать следующие 500 миллионов, потребуется всего 4 года.
К 2025 году количество интернет-пользователей увеличится более чем вдвое. И им будет проще изобретать и с меньшими затратами, чем раньше. Стоимость создания стартапа сейчас в 1000 раз меньше, чем 20 лет назад. Вместо того, чтобы покупать компьютеры, они будут использовать облако. Также будет задействован краудфандинг.
Это означает, что в процессе разработки программного обеспечения будет много инноваций.
2. Приложения станут меньше
Приложения становятся меньше. Вместо традиционных приложений с большими, тяжеловесными пакетами есть более маленькие приложения.Эти приложения используют такие вещи, как микросервисы, которые взаимодействуют через API.
Это означает, что командам придется решать проблемы перехода на микросервисы. (В противном случае они могут вернуться от микросервисов к монолиту или минисервисам).
«К 2019 году более 90 % организаций, пробующих микросервисы, сочтут эту парадигму слишком разрушительной и будут использовать вместо нее минисервисы». — Гартнер
Кроме того, в приложениях будет использоваться 1 000 API вместо 1 или 2, используемых в традиционных приложениях. Будет еще важнее иметь управление API.
3. Оборудование исчезнет
В будущем аппаратное обеспечение будет не так часто встречаться. Он исчезнет на заднем плане.
Таким образом, аппаратное обеспечение будет использоваться в таких вещах, как беспилотные автомобили и беспилотные такси, но оно будет оболочкой для программного обеспечения.
4. Квантовые вычисления изменят правила игры
Квантовые компьютеры уже появляются. Но они изменят жизнь, какой мы ее знаем, в ближайшие 10 лет.
С квантовым компьютером в определенных приложениях можно сделать гораздо больше, чем с обычными вычислениями. И даже изобретаются новые языки программирования, помогающие программировать квантовый компьютер (например, QDK от Microsoft).
Квантовые вычисления уже используются. Volkswagen работает над управлением дорожным движением в масштабах города, используя квантовые вычисления для каждого автомобиля, пешехода и светофора.
5. Программное обеспечение будет активным
Программное обеспечение будет быстрее, чем мгновенное. Это будет активно.
Искусственный интеллект заставит программное обеспечение предвидеть, чего хочет пользователь, основываясь на том, что оно знает о нем и его предпочтениях.
ИИ становится умнее. И мы уже видим, как ИИ делает много вещей. Например, искусственный интеллект обеспечивает автоматизацию тестирования. И это в более чем 9000 пакетов с открытым исходным кодом.
Чтобы обеспечить будущее разработки программного обеспечения, очень важно нанимать недавних выпускников, специализирующихся на искусственном интеллекте.
Разработка программного обеспечения сильно изменится в будущем. Вам придется специализироваться, чтобы выделиться. И такие вещи, как ИИ, будут важны для этого.
Подготовьтесь к будущему разработки программного обеспечения уже сегодня
Пришло время подготовиться к будущему разработки программного обеспечения уже сегодня.
Вы должны быть в 10 раз быстрее, чем сегодня. Итак:
- Инвестируйте в свое будущее и узнавайте новое.
- Не отставайте и не изобретайте велосипеды.
- Используйте все — с открытым исходным кодом, коммерческие, службы и корпоративное облако.
Помните: у вас будет больше программного обеспечения и более масштабное программное обеспечение. Это означает больше строк кода, больше файлов, больше разработчиков, больше географических регионов, больше API, больше мобильных приложений и больше открытого исходного кода.
Используйте инструменты, которые помогут вам достичь этого, чтобы помочь справиться с этой DevOps в масштабе — и сделать быстрее и лучше.
Как помогут решения Perforce
Решения Perforce могут помочь вам подготовиться к будущему разработки программного обеспечения уже сегодня.
Наши решения включают:
- Контроль версий
- Управление жизненным циклом приложения
- Гибкое управление проектами
- Автоматическое тестирование
- Статический анализ
- Инструментарий разработчика Java
- Поддержка с открытым исходным кодом
- Управление API
- Платформа приложений PHP
- Встроенные компоненты
Убедитесь сами, как мощь решений Perforce может помочь вам в разработке программного обеспечения будущего. Получите бесплатные пробные версии и начните работу уже сегодня.
В 2005 году Людвиг Стригеус, шведский программист, в свободное время в одиночку совершил революцию в Интернете.
Вы, наверное, слышали о uTorrent, у которого сегодня около 150 миллионов пользователей.
Интересно, что это тот же парень, который позже создал Spotify.
Но uTorrent попал в центр внимания только после того, как был куплен BitTorrent Inc, а Spotify прославился, когда проект начала поддерживать команда разработчиков программного обеспечения. Это верно для всех видов программных продуктов, представленных сегодня на рынке.
Успех индустрии программного обеспечения во многом объясняется эффективностью и сотрудничеством, достигнутым за последние 10 лет. Процесс разработки программного обеспечения претерпел серьезные изменения, которые определяют сегодняшнюю экономику программного обеспечения.
Факты разработки программного обеспечения
Следующие пункты кратко суммируют это изменение.
- Программное обеспечение больше не является коммерческим товаром. Все, от малышей до бабушек и дедушек, используют программные продукты.
- Для создания необходимого программного обеспечения используется более 700 языков программирования.
- Время, необходимое для создания и выпуска приложения, сократилось с нескольких лет до нескольких месяцев.
- Только в 2018 году в Индии было запущено около 1 200 стартапов программного обеспечения.
- Самая дорогая компания в мире, Amazon, обязана 71 % своей прибыли бизнесу, связанному с программным обеспечением.
Итак, как все это произошло? Как мы перешли от вопроса «Куда мне вставить этот компакт-диск?» на «Дайте мне ссылку для скачивания?»
6 основных изменений, произошедших с разработчиками программного обеспечения
6 основных изменений в разработке программного обеспечения
Ответ заключается в методах, используемых для разработки и запуска программного обеспечения. Давайте посмотрим, что изменилось за последнее десятилетие.
1. Собственность программного обеспечения с открытым исходным кодом
Принадлежит программному обеспечению с открытым исходным кодом
Программное обеспечение с открытым исходным кодом распространяется бесплатно с разрешением на изменение кода. Это может показаться антикапиталистическим, но современное программное обеспечение больше связано с коллективным развитием технологий, а не с прибылью одного человека.
От ОС, на которой работают телефоны Android, до платформы, управляющей внешним видом Facebook, большое количество программных продуктов имеют открытый исходный код.
Ведущие организации, такие как Microsoft, Google, IBM, Adobe и другие, активно делают свои изобретения открытым исходным кодом, чтобы ускорить разработку программного обеспечения.
В результате затраты и усилия, необходимые для создания нового программного обеспечения, уменьшились, а масштаб инноваций увеличился. Это позволяет такой компании-разработчику программного обеспечения, как мы, предлагать нашим клиентам лучшие продукты.
2. Водопад к Agile-методологии
Водопад к гибкой методологии
Большая часть раннего программного обеспечения разрабатывалась как длинный марафон с заданными шаблонами и линейным подходом. Модель водопада.
Но сегодня новый подход заключается в беге более коротких спринтов на 100 м, которые позволяют повторять итерации и создают более совместную среду. Методология Agile.
Современное программное обеспечение разделено на несколько более мелких компонентов, которые разрабатываются поэтапно, а не на один гигантский блок. Этот новый сдвиг парадигмы сделал разработку программного обеспечения намного более надежной, адаптируемой и эффективной.
К счастью, наша компания по разработке программного обеспечения также использует методологию Agile во всех своих проектах.
3. Разрозненность философии DevOps
Прошло много времени, прежде чем мы поняли, что люди, разрабатывающие программное обеспечение, и люди, управляющие его работой, должны работать вместе. Результатом стал DevOps.
Первоначальная идея заключалась в том, чтобы разрознить разработчиков и инженеров по эксплуатации. Но DevOps объединил, казалось бы, разрозненные процессы жизненного цикла разработки программного обеспечения. Инженеры, которые кодируют программное обеспечение, тесно сотрудничают с инженерами, которые тестируют его, что позволяет им вносить свой вклад друг в друга.
Философия DevOps изменила отрасль разработки программного обеспечения несколькими способами. DevOps особенно применим к компаниям-разработчикам программного обеспечения, которые несут ответственность за создание эффективного программного обеспечения. DevOps обеспечивает следующие преимущества.
- Ускорение разработки и развертывания приложений.
- Повышение надежности приложений в различных обстоятельствах.
- Повышение производительности приложений для 10 или 10 000 пользователей.
- Повышение безопасности в сфере бизнеса.
4. От локальных до облачных вычислений
Локальные вычисления для облачных вычислений
Облачные вычисления – это перенос рабочих нагрузок программного обеспечения на виртуальные серверы, размещенные в Интернете (или в облаке). До облачных вычислений возможности интернет-приложений были крайне ограничены.
Появление облачных вычислений стало катализатором разработки программного обеспечения. По мере того, как становится проще предлагать свое программное обеспечение большему количеству людей по более низкой цене, повышается и коммерческая жизнеспособность программного обеспечения.
Сегодня 90 % компаний по всему миру размещают свое программное обеспечение в облаке, в том числе и мы!Облачные вычисления значительно улучшают инфраструктуру, необходимую для запуска программного обеспечения в Интернете.
Доказать, насколько выгодны облачные вычисления, очень просто.
Если вы хотите поделиться 15 ГБ данных с другом в другом городе, вам придется купить флешку стоимостью 10-20 долларов и потратить деньги на дорогу.
В то время как публикация на Google Диске на самом деле бесплатна.
5. Изолированные модели для подключенных API
Этот термин часто используется, потому что он очень важен в современной среде разработки программного обеспечения.
API (интерфейс прикладного программирования) – это метод, с помощью которого две несовместимые системы могут обмениваться данными и функциями. API имеют решающее значение для соединения разнообразных программных продуктов, упрощая интеграцию.
API существуют с 2000 года, но только в последнее десятилетие их истинный потенциал был реализован. Типичным примером является Google Cloud Vision API, с помощью которого вы можете включить интеллектуальные функции изображений в своих программных продуктах.
Вам не нужно создавать для этого необходимые алгоритмы искусственного интеллекта. Просто подключите API и используйте его в своей реализации. Концепция API превратила Интернет в высоко связанную среду, которая приносит пользу всем, от разработчика программного обеспечения до конечного пользователя.
6. С внутренних ресурсов на аутсорсинг
От внутреннего до аутсорсинга
Последний фактор, существенно изменивший разработку программного обеспечения, — это модель аутсорсинга. Вот как ведущие американские организации получают свое программное обеспечение от инженеров, сидящих в Индии.
По состоянию на 2019 год мировая индустрия аутсорсинга ИТ и программного обеспечения оценивается в 92,5 млрд долларов США. Она позволяет компаниям приобретать лучшее программное обеспечение по более низким ценам, поскольку она продолжает создавать рабочие места в странах-поставщиках. Такое совместное использование человеческих ресурсов через границы фактически способствовало инновациям и беспрецедентному росту разработки программного обеспечения.
Заключение
Программное обеспечение становится проще создавать, с ним удобнее работать и оно становится все более эффективным благодаря новым методологиям разработки программного обеспечения.
Нет сомнений в том, что успех программного обеспечения зависит от того, как оно разработано. Потому что от того, как зависит, будет ли это экономически целесообразно и технически осуществимо. Еще более важный вопрос: правильно ли вы его разрабатываете?
Мы в Techtic Solutions уверенно и определенно отвечаем на этот вопрос. От открытого исходного кода до аутсорсинга, мы даем вашей идее ведущее в отрасли преимущество, в котором она нуждается, чтобы летать. По крайней мере, так утверждают наши клиенты из 15+ отраслей. Убедитесь в этом сами, связавшись с нами по адресу [email protected], чтобы узнать о следующей крупной идее, которую вы хотите поддержать с помощью выигрышного программного обеспечения.
Проект разработан компанией Techtic
План-Профессиональный
Одна из основных функций технологий — упростить утомительные процессы и улучшить жизнь людей, с ними связанных.
С тех пор, как в конце 1990-х годов Интернет стал популярным и нашел свое применение почти в каждом доме и офисе на Земле, мир разработки программного обеспечения вращается вокруг него. Он переместил то, что раньше было приложениями только для настольных компьютеров, в облако. Это позволило разработчикам устанавливать обновления безопасности и функций на устройства, продлевая жизненный цикл программного обеспечения. Ей даже удалось положить конец доминированию Microsoft в большей части технологического мира.
С началом 2020-х годов ландшафт разработки программного обеспечения претерпевает еще большие изменения. Благодаря дальнейшему развитию интернет-технологий и продолжающейся революции в области мобильных вычислений нет никаких сомнений в том, что разработка программного обеспечения и все, что с ней связано, выйдет из 2020-х годов совершенно иначе, чем в прошлые итерации.
Чтобы получить представление о том, как будет выглядеть это будущее, вот четыре основные тенденции, которые изменят разработку программного обеспечения в 2020 году и позже.
Восхождение ИИ-программистов
За последние несколько лет искусственный интеллект (ИИ) развивался такими темпами, которых мало кто ожидал. Технология зашла так далеко, что теперь она встроена во все виды продуктов, от умных домашних устройств до потоковых медиасервисов и практически во все, что между ними. Однако на этом мы не остановимся.
В 2020 году большая часть работы современных разработчиков программного обеспечения будет выполняться платформами искусственного интеллекта следующего поколения. На самом деле переход уже начался. Такие системы искусственного интеллекта, как Bayou, уже помогают разработчикам, предоставляя функцию автозаполнения, помогающую кодировать с использованием сложного подхода к глубокому обучению. А такие платформы, как Deep Code, используют искусственный интеллект для сканирования и упреждающего исправления ошибок и уязвимостей безопасности в новых коммитах программного обеспечения.
Учитывая эти достижения, почти неизбежно, что искусственный интеллект вскоре совершит прыжок в автономную разработку кода с нуля, положив начало новой эре в разработке программного обеспечения.
5G даст волю мобильным разработчикам
Большую часть последнего десятилетия беспроводные системы 4G были самыми передовыми в области мобильной передачи данных и связи. Хотя это был большой шаг вперед по сравнению со старыми типами беспроводных сетей, у него были некоторые ограничения. Одним из них является тот факт, что он не очень хорошо справляется с высокой плотностью соединений, достигая нескольких тысяч устройств на квадратную милю (в реальных условиях). Это означает, что технология с трудом приспосабливается к массовому увеличению количества смартфонов, планшетов и подключенных устройств, которые сегодня стали нормой.
В 2020-х годах беспроводные системы 4G должны быть заменены сетями 5G, которые могут поддерживать миллионы устройств на квадратную милю со скоростью соединения в десять раз выше, чем 4G. Эта возможность откроет перед разработчиками мобильных устройств возможность создавать более мультимедийные приложения на множестве подключенных устройств. Такие вещи, как дополненная реальность (AR) и виртуальная реальность (VR) перенесутся с чертежных досок в реальный мир. Это также, вероятно, будет стимулировать развитие различных автономных транспортных систем, предоставляя разработчикам программного обеспечения еще одно поле деятельности.
Аналитика повсюду
Одним из основных последствий развития Интернета является то, что в настоящее время в мире постоянно генерируется почти абсурдный объем данных. Эксперты считают, что к 2025 году эта цифра достигнет примерно 463 миллиардов ГБ новых данных, создаваемых каждый день. Эти данные уже привели к революции в области аналитики, которая уже изменила множество отраслей.
В начале 2020-х годов аналитика данных теперь лежит в основе продуктов, начиная от программного обеспечения для подбора персонала и новейших инструментов цифрового маркетинга и заканчивая планировщиками маршрутов авиакомпаний и платформами управления больницами. Короче - везде. По прошествии десятилетия эта тенденция будет усиливаться, поскольку все больше и больше устройств увеличивают скорость и разнообразие доступных данных. Для разработчиков программного обеспечения это означает, что вскоре каждый проект будет включать аналитику данных, если они еще этого не сделали.
Граница между мобильным и настольным компьютером исчезла навсегда
По мере того, как мобильные устройства начали завоевывать мир технологий, многие разработчики начали переключать свое внимание на разработку мобильных приложений. В процессе возникла совершенно новая программная экосистема, мало похожая на экосистему традиционного рынка настольных компьютеров. Однако по мере того, как 2010-е подходили к концу, появилась новая тенденция, которая обещает раз и навсегда воссоединить мир настольных и мобильных компьютеров: разработка прогрессивных веб-приложений (PWA).
PWA представляет собой нечто вроде гибрида веб-страницы и мобильного приложения, но оно не зависит от платформы и обеспечивает одинаковое взаимодействие с программным обеспечением на любом устройстве. Ожидается, что они заменят большинство настольных программ и мобильных приложений, предоставив одни и те же нативные функции для всех форм-факторов. По словам OutreachPete, они также произведут революцию в SEO и веб-поиске, потому что, в отличие от традиционных приложений, их содержимое можно индексировать напрямую. В знак того, что грядет, Microsoft уже превратила версию своей почтенной почтовой программы Outlook в PWA, и она уже доступна для всех.
Что будет дальше
В будущем эти четыре основные тенденции изменят статус-кво в сфере разработки программного обеспечения. Они многое изменят в том, как работают разработчики, от их приоритетов до платформ, на которых они работают. В конце концов, мы останемся с программным ландшафтом, перегруженным мультимедиа и данными, с программами, которые запускаются по запросу на всех платформах, независимо от производителя. И это будущее должно быть более безопасным и свободным от ошибок благодаря вкладу инструментов разработки на основе ИИ. В общем, в мире разработки программного обеспечения нас ждет много хорошего, а грядущее десятилетие обещает быть фантастическим.
Андрей — эксперт по цифровому маркетингу, редактор TechLoot и автор множества других интернет-изданий, посвященных технологиям. В течение нескольких лет он занимается вопросами маркетинга и технологий и постоянно стремится делиться своим опытом с лидерами бизнеса и профессионалами в области маркетинга по всему миру.
Джастин Зобель не работает, не консультирует, не владеет акциями и не получает финансирования от какой-либо компании или организации, которые могли бы извлечь выгоду из этой статьи, и не раскрыл никаких соответствующих связей, кроме своей академической должности.
Партнеры
Университет Мельбурна предоставляет финансирование в качестве партнера-основателя The Conversation AU.
В этом месяце исполняется 60 лет с момента появления первого компьютера в австралийском университете. Мельбурнский университет получил машину от CSIRO, и 14 июня 1956 года вновь введенный в эксплуатацию CSIRAC был официально запущен. Шестьдесят лет спустя наша серия «Компьютингу исполняется 60» рассказывает о том, как все изменилось.
Это общеизвестный факт, что компьютеры продолжают менять наш мир. Он определяет, как проектируются объекты, какую информацию мы получаем, как и где мы работаем, с кем мы встречаемся и с кем ведем дела. А компьютеры меняют наше представление об окружающем мире и Вселенной за его пределами.
Например, хотя изначально компьютеры использовались для прогнозирования погоды не более чем как эффективный способ сбора наблюдений и выполнения расчетов, сегодня наше понимание погоды почти полностью определяется вычислительными моделями.
Еще один пример – биология. Если раньше исследования проводились полностью в лаборатории (или в естественных условиях), а затем отображались в модели, то теперь они часто начинаются с прогностической модели, которая затем определяет, что можно исследовать в реальном мире.
Преобразование, вызванное вычислениями, часто называют цифровой революцией. Но аспект этой трансформации, который легко упустить из виду, заключается в том, что компьютеры разрушают сами себя.
Эволюция и революция
Каждая волна новых вычислительных технологий, как правило, приводит к появлению новых видов систем, новых способов создания инструментов, новых форм данных и т. д., которые часто отменяют своих предшественников. То, что казалось эволюцией, в некотором смысле является серией революций.
Но развитие вычислительных технологий — это больше, чем цепочка инноваций. Это процесс, который является отличительной чертой физических технологий, формирующих наш мир.
Например, существует цепочка вдохновения от водяного колеса к паровому двигателю и двигателю внутреннего сгорания. В основе этого лежит процесс включения. Индустрия паровозостроения дала навыки, материалы и инструменты, используемые при строительстве первых двигателей внутреннего сгорания.
В компьютерных технологиях происходит нечто большее, когда появляются новые технологии, не только заменяющие предшественников, но и охватывающие их. Вычисления создают платформы, на которых они заново изобретают себя, достигая следующей платформы.
Подключение
Возможно, наиболее впечатляющим из этих нововведений является Интернет. В 1970-х и 1980-х годах произошел независимый прогресс в доступности дешевых и быстрых вычислений, доступных дисковых хранилищ и сетей.
Рон Боулз у IBM 7044, машины для пакетной обработки данных с накопителем на магнитной ленте, около 1969 года. Мельбурнский университет, предоставлено автором
Вычислительные ресурсы и хранилище были заняты персональными компьютерами, которые на тот момент были автономными и почти полностью использовались для игр и обработки текстов. В то же время сетевые технологии получили широкое распространение на факультетах компьютерных наук университетов, где они впервые позволили осуществлять совместную разработку программного обеспечения.
Это было появлением культуры разработки с открытым исходным кодом, в рамках которой широко разбросанные сообщества не только использовали общие операционные системы, языки программирования и инструменты, но и совместно вносили в них свой вклад.
По мере распространения сетей инструменты, разработанные в одном месте, можно было быстро продвигать, распространять и развертывать в других местах. Это кардинально изменило представление о праве собственности на программное обеспечение, о том, как оно проектировалось и создавалось, и о том, кто контролирует используемую нами среду.
Сами сети стали более унифицированными и взаимосвязанными, создав глобальный Интернет, инфраструктуру цифрового трафика. Увеличение вычислительной мощности означало наличие резервных мощностей для удаленного предоставления услуг.
Снижение стоимости дисков означало, что системные администраторы могли выделить хранилище для размещения репозиториев, к которым можно было получить глобальный доступ. Таким образом, Интернет использовался не только для электронной почты и чатов (известных тогда как группы новостей), но и все чаще как механизм обмена данными и кодом.
Это резко контрастировало с системами, использовавшимися в бизнесе в то время, которые были индивидуальными, изолированными и жесткими.
Оглядываясь назад, можно сказать, что слияние сетей, вычислений и хранилищ в начале 1990-х годов в сочетании с культурой совместного использования открытого исходного кода кажется почти чудом. Среда, готовая к чему-то выдающемуся, но без даже намека на то, что это может быть.
Супершоссе
Именно для улучшения этой среды тогдашний вице-президент США Эл Гор предложил в 1992 году "информационную супермагистраль" еще до того, как появилось какое-либо крупное коммерческое или социальное использование Интернета.
Тим Бернерс-Ли изобрел всемирную паутину как важный инструмент для физики высоких энергий в ЦЕРН с 1989 по 1994 год. Flickr/ITU Pictures, CC BY-NC-ND
Тем временем в 1990 году исследователи ЦЕРН, в том числе Тим Бернерс-Ли, создали систему для хранения документов и их публикации в Интернете, которую они назвали всемирной паутиной.
По мере распространения информации об этой системе в Интернете (передаваемой новой моделью программных систем с открытым исходным кодом) люди начали использовать ее через все более сложные браузеры. Они также начали писать документы специально для публикации в Интернете, то есть веб-страницы.
Поскольку веб-страницы стали интерактивными, а ресурсы переместились в Интернет, Интернет стал платформой, которая изменила общество. Но это также изменило вычислительную технику.
С появлением Интернета уменьшилось значение автономного компьютера, зависящего от локального хранилища.
Мы все связаны
Ценность этих систем обусловлена еще одним совпадением: появлением в Интернете огромного числа пользователей. Например, поисковые системы не могли бы работать без поведения, на котором можно было бы учиться, поэтому действия человека стали частью системы.
Существуют (спорные) рассказы о постоянно совершенствующихся технологиях, а также совершенно бесспорные утверждения о том, что компьютеры сами по себе трансформируются, так глубоко внедряясь в нашу повседневную жизнь.
Во многом это суть больших данных. Вычисления подпитываются потоками данных, поступающих от человека: данные о трафике, авиарейсах, банковских транзакциях, социальных сетях и т. д.
Эти данные, а также тот факт, что продукты данных (такие как контроль трафика и целевой маркетинг) оказывают непосредственное влияние на людей, резко изменили задачи дисциплины.
Программное обеспечение, надежно работающее на одном компьютере, сильно отличается от программного обеспечения с высокой степенью быстрого взаимодействия с человеческим миром, что порождает потребность в новых видах технологий и экспертов, чего исследователи даже отдаленно не ожидали. создали технологии, которые привели к этой трансформации.
Решения, которые когда-то принимались с помощью программируемых вручную алгоритмов, теперь принимаются исключительно на основе данных. Целые области обучения могут устареть.
Дисциплина действительно разрушает саму себя. И когда появится следующая волна технологий (окружающая среда с эффектом погружения? цифровые имплантаты? осознанные дома?), это произойдет снова.
Читайте также: