Нынешние методы, языки и инструменты разработки не готовы к тому, что в окружающем мире появятся миллионы программируемых вещей. Путь в Программируемый мир будет сопровождаться рядом проблем, решение которых заслуживает более глубокого изучения, чем связанные с Интернетом вещей темы, пользующиеся сегодня наибольшим вниманием. Будущее Интернета вещей зависит от появления возможностей дистанционной оркестровки и программирования обширных топологически сложных сетей устройств.
Ошибки в системном ПО непременно будут использоваться для атак, поэтому критические приложения не должны зависеть от корректности ПО низкого уровня. Применение микросервисов и защищенных областей памяти, таких как Intel Software Guard Extension, минимизирует доверенную вычислительную базу и обеспечивает требуемую надежность приложений без ущерба производительности.
Роль архитектора сегодня сильно изменилась, и для успеха проекта потребуется уйти от традиционных методов работы. Современный архитектор должен ориентироваться на продукты, участвовать в принятии решений, фокусироваться на всем цикле выпуска ПО, понимать код, который создают программисты, и работать децентрализованно.
Сегодня любая отрасль неизбежно связана с индустрией программного обеспечения, поэтому пути ее развития на ближайшее будущее в той или иной степени касаются всех.
Гибкие, или скорые, методики разработки программного обеспечения потеснили сегодня традиционные подходы к ведению проектов. Разработчики, уставшие от ожидания четких постановок задач и от неспособности заказчиков сформулировать свои пожелания, делают ставку на организацию работы, которая, как показывает практика, зачастую позволяет добиться результатов, даже если цель не видна на старте. Однако распространение такого рода методик разработки закономерно приводит к необходимости ответить на вопрос, как должно быть организовано сопровождение созданного в соответствии с подобными методиками ПО?
Как сообщают авторы, в результате обработки системой пяти популярных программ с открытым кодом, в которых раньше были найдены три ошибки переполнения, помимо тех же удалось обнаружить еще 11.
Взаимодействие географически распределенных команд стало нормой, применяемой повсюду, от глобальных проектов разработки программного обеспечения до исследований и поддержки бизнес-процессов в компаниях различных отраслей. Однако у глобальных проектов разработки ПО неоднозначная репутация. Как повысить эффективность распределенной разработки?
По аналогии с уже давней практикой извлечения полезных знаний из протоколов веб-трафика, в организациях, предоставляющих онлайн-сервисы, могли бы черпать новую информацию о потенциальных заказчиках, анализируя статистику использования интерфейсов программирования этих сервисов, подчеркнул на недавней конференции Intel Business of APIs Джон Массер, директор консалтинговой компании API Science.
Для тестирования современных сайтов уже недостаточно лишь функционального и простого нагрузочного тестирования, не позволяющего получить уверенность в работоспособности приложений в реальных условиях — сегодня требуются более изощренные средства.
Чаще всего под DevOps понимают методологию разработки и эксплуатации программного обеспечения, основной идеей которой является сосредоточение на коммуникации, сотрудничестве и интеграции между командами разработки и эксплуатации, однако DevOps — это прежде всего культура, а уже потом практическая деятельность.
Аналитики прогнозируют лавинообразный рост числа предметов, способных подключиться к Интернету, активно передавать и получать данные, а заодно и обмениваться ими между собой — их скоро будет уже более 200 млрд. Пока объем данных от этих устройств-вещей составляет несколько процентов потока, генерируемого во всем мире, однако уже через несколько лет он будет на порядок больше. Как организовать надежное взаимодействие между подключенными к Сети устройствами, а заодно и людьми?