Иностранные рейтинги ПО – хороший способ найти что-то новое и полезное. Старый добрый американский IT-портал Infoworld каждый год публикует подборку «лучших продуктов года» в сфере разработки ПО, облачных решений, ML и обработки данных. Наверняка в него затесались «засланные казачки», проплатившие свое размещение, но есть и по-настоящему перспективные решения, о которых в Рунете еще не известно.
На 2022 год в топ попали аж 22 продукта, и по ним можно понять, что сейчас находится на острие развития технологий. Посмотрите, возможно, здесь есть то, что вам пригодится. Мы для себя нашли парочку нужных вещиц, поэтому и решили опубликовать пост с сильно вольным переводом.
CodeSee Maps – программа, которая позволяет понять, что вы вообще напрограммировали. Она создает визуальные карты, отображающие компоненты кода и их взаимосвязи. Это полезно при адаптации новых разработчиков, тестировании кода и оценки того, как изменения могут повлиять на проект в целом.
CodeSee Maps связывается с репозиториями GitHub и автоматически строит свои визуализации. Среди них: Explore and Learn, Feature Planning, Ownership, Review, Onboarding и очень нужная карта технического долга. В бесплатной версии Community доступны все виды карт.
Weave GitOps построен на опенсорсном Flux 2.0. Первоначально продукт позволял хранить конфигурации и политики в Git и применять их в инфраструктуре Kubernetes с помощью агентов. Это сейчас доступно в бесплатной Core версии.
GitOps Enterprise же обзавелся кучей нового функционала, который позволяет по сути следить сразу за несколькими кластерами Kubernetes, разбросанными по любым облакам, и легко управлять ими из одной панели, а также развертывать приложения, в общем, полный DevSecOps.
Как этот продукт класса CI/CD, которому 10 лет в обед, попал в топчик? Все дело в поглощении разработчиком CircleCI компании Ponicode, владельца оригинального решения для интеллектуального тестирования приложений. ML используется для выбора тестов, которые будут выполняться на различных этапах разработки, и выявления потенциальных проблем с качеством кода. Эта функциональность стала доступна в новой версии CircleCI.
Это решение может работать в облаке или локально, поддерживает несколько сред сборки и интегрируется с множеством языков, репозиториев и инструментов сборки, тестирования, мониторинга и отчетности. Да что рассказывать, вы и сами знаете.
Анализ состава программного обеспечения (SCA) и тестирование безопасности приложений (SAST) – вещь не новая, но актуальная, особенно когда в приложение добавляются компоненты с открытым исходным кодом. WhiteSource (по мнению контор типа Forrester) лидирует среди производителей такого класса решений.
WhiteSource SCA сканирует код в программных проектах и быстро идентифицирует компоненты с открытым исходным кодом, после чего проверяет на известные уязвимости. WhiteSource SAST выявляет уязвимости безопасности в коде, написанном разработчиками. Решение интегрируется в существующие конвейеры CI/CD и поддерживает основные языки программирования, фреймворки, системы сборки и системы контроля версий.
Для управления микросервисами многие пользуются сервисными сетями (Service Mesh), например, Istio. Istio помогает наблюдать за сервисами, управлять трафиком между сервисами и применять к ним политики, например, по безопасности. Для случаев, когда проект слишком сложен, а траффик хаотичен, требуется что-то помощнее.
На самом деле Gloo – это тот же Istio, но с расширенными возможностями. Добавлены security-функции, политики безопасности, поддержка сетей с нулевым доверием, расширенные возможности мониторинга и мультитенантность. Gloo Mesh также каталогизирует API и разграничивает доступ для пользователей и групп.
Правда, опенсорсная версия Gloo вас не сильно обрадует, она почти не отличается от Istio. Все плюшки в Glo Mesh Enterprise.
Теоретически Kubernetes позволяет создавать и запускать сложные многокомпонентные бизнес-приложения с масштабированием как на локальном оборудовании, так и в удаленных облачных средах. На практике развертывание в нескольких облаках превращается в горячее знакомство с багами и фичами нескольких поставщиков облачных услуг, а перенос виртуалок из одного облака в другое - подвиг.
Google Cloud Anthos – это среда разработки приложений, которая предлагает единый интерфейс для управления рабочими нагрузками Kubernetes в Google Cloud, Amazon Web Services и Microsoft Azure, а также в локальных средах, таких как VMware vSphere или на «голом железе». Google Cloud Anthos сам объединяет сложные и порой несовместимые элементы различных облаков, такие как политики безопасности или обработка телеметрии приложений и логирование.
С помощью Migrate for Anthos рабочие среды на физических серверах и виртуальных машинах можно преобразовать в контейнеры и перенести в экземпляр Kubernetes.
Honeycomb – это платформа для автоматического мониторинга производительности микросервисной инфраструктуры, то, что по-английски звучит как observability. В ней разработчики попытались решить вечную проблему с выявлением ошибок, которые проявляются при взаимодействии нескольких сервисов. Обычно для этого приходилось смотреть одновременно за метриками в мониторинговых системах, логами в анализаторе логов и трассировкой данных в трассировщике.
Это решение анализирует все источники и сообщает не только, где возникает ошибка, но и из-за чего. Honeycomb становится подходящим инструментом для быстрого получения обратной связи при развертывании свежего кода – сразу становятся видны источники проблем.
Эта платформа предлагается как веб-сервис, есть бесплатный тариф с базовым набором функционала – все интересные фишечки можно изучить.
Обычно ИТ-специалисты, SRE и DevOps-инженеры используют не меньше шести инструментов мониторинга. В случае возникновения инцидентов много времени уходит на то, чтобы собрать и сопоставить информацию. BigPanda решила взвалить эту работу на AI. В итоге появился инструмент класса AIOps.
BigPanda помогает ИТ-специалистам агрегировать данные мониторинга и наблюдения, сопоставлять оповещения с помощью машинного обучения и иметь под рукой в одном месте все инструменты для выявления первопричин сбоя.
Это полнофункциональный поисковый сервис, предлагаемый в формате SaaS, который можно подключить к своим продуктам. Coveo использует ML при формировании подсказок в поисковой строке, умеет обрабатывать запросы на естественном языке и снабжен кучей коннекторов для простой интеграции со сторонними продуктами.
Coveo сильно подрос за год. Появилось решение для персонализации с «нуля», headless API для настройки взаимодействия с пользователем и коннектор Slack. Разработчики добавили low-code и no-code инструменты, а также JavaScript фреймворк с компонентами пользовательского интерфейса.
WalkMe Digital Adoption Platform
Система цифровой адаптации сотрудников решила проблему, которая резко проявила себя при массовом переходе людей на удаленку. Если раньше при затруднениях в работе с приложениями можно было спросить более знающего коллегу, то дома помощи ждать неоткуда. WalkMe DAP становится прослойкой между человеком и программой и следит за его действиями. Интеллектуально определяет, что человек столкнулся с проблемой, после чего направляет пользователя на путь истинный с помощью всплывающих подсказок и пошаговых инструкций. Платформа даже пытается искать ошибки в работе с приложениями (которые пользователь уверенно совершает).
Платформу можно также использовать для оценки использования B2C систем клиентами и поиска проблемных мест в UI.
Airtable за два последних года сильно изменился. Первоначально это был такой удобный построитель базы данных, не требующий навыков в программировании. Сейчас же превратился в конструктор приложений, в который встроено несколько сред разработки для разных уровней квалификации: от аналитиков до JavaScript-программистов.
Airtable поддерживает функции и скрипты, имеет несколько десятков встраиваемых инструментов и средства автоматизации для настройки бизнес-процессов. В бесплатном тарифе можно посмотреть (но не использовать) весь функционал.
Google Cloud AppSheet — это еще один No-code конструктор для создания приложений для интернета, iOS и Android. Несмотря на то, что AppSheet позиционируется как No-Code, он поддерживает формулы, настройку фильтров и триггерных ботов, что дает ему большую часть функциональности Low-code платформы.
AppSheet позволяет отлавливать события и снимать показания с множества датчиков, встроенных в смартфоны и планшеты. Он может автоматизировать процессы с помощью ботов, которые активируются при изменении данных или по расписанию. Его можно интегрировать с другими приложениями и платформами как напрямую, так и через Zapier. Но главное, AppSheet позволяет тренировать и использовать прогнозирующие модели машинного обучения и модели OCR.
Многие разработчики уже давно используют сеть доставки контента Cloudflare для ускорения сайтов. В ней статическая часть веб-контента отгружается пользователю с наиболее близкого узла. Но с Cloudflare Workers можно сделать гораздо больше, ведь теперь с «края интернета», поближе к пользователю, можно запускать собственный код. Развертывание Serverless кода занимает минуты, а «холодный старт» – миллисекунды.
Код для Workers можно писать на JavaScript, Rust, C или C++. Если ваш код должен хранить информацию, Cloudflare также проводит бета-тестирование хранилища объектов R2, в котором используется API Amazon S3.
Имеется бесплатный тариф, позволяющий обрабатывать до 100 000 запросов в день, так что технологию можно быстро и беспроблемно попробовать.
Vercel – платформа, которая пытается приблизить бессерверное будущее для разработчиков, уставших от DevOps. Платформа предоставляет готовые edge и serverless функции с набором популярных фронт-энд фреймворков, включая React/Next.js, Vue/Nuxt и Svelte/SvelteKit. Можно использовать автоматическое развертывание из репозитория, автоматическое масштабирование и готовую аналитику.
На то, чтобы необработанный исходный код проекта превратился в развернутое в глобальном масштабе приложение, нужно пять минут. Доступны интеграции со сторонним программным обеспечением, использование своих CI/CD средств.
Для желающих попробовать есть бесплатный тариф Hobby. Все возможности будут доступны, ограничения только по объему и времени использования инструментов.
Builder – это попытка переосмыслить работу с фронт-эндом. Система дает возможность визуально конструировать пользовательские интерфейсы, но это не простой WYSIWYG-редактор. Builder позволяет размещать и редактировать разрабатываемые вами компоненты практически в любом фронт-энд фреймворке, например React или Svelte. При этом они остаются «живыми», вы можете менять их код, да и в целом кастомизировать все подряд.
В Enterprise версии есть много любопытного: «безголовая» CRM, расписания для публикации контента, инструменты для контентной аналитики. Также Builder можно встроить как средство визуального редактирования в любой сайта или приложение.
Про эту облачную NoSQL СУБД особо и нечего рассказать, вы наверняка ее уже использовали в работе. Atlas удобен тем, что может использоваться в любом облаке, а в виде DBaaS снимает с разработчика все вопросы, связанные с развертыванием и управлением СУБД. Отметим, что сейчас российским разработчикам запрещено использовать Atlas по схеме DBaaS.
В целом не очень понятно, за что MongoDB Atlas включена в список лучших продуктов этого года. Только за то, что она получила добро от правительства США на использование в оборонных разработках и бурный рост доходов от подписки?
Xpand — это распределенная база данных, которая может масштабироваться до величин, недоступных обычным SQL СУБД. И все это без ущерба для реляционной модели данных и ACID-транзакций. Решение из коробки совместимо с MariaDB и MySQL, причем на очень высоком уровне: с объединениями, упорядочением, агрегатами, хранимыми процедурами / функциями, функциями JSON и многим другим.
Это решение устойчиво к сбоям инфраструктуры, так как использует параллельную потоковую репликацию - хранит несколько копий данных на разных узлах и в разных зонах доступности. Состояние узлов отслеживается автоматически, система сама балансирует нагрузку и поддерживает равномерное распределение данных.
PlanetScale — это совместимая с MySQL бессерверная платформа баз данных на базе опенсорсной версии Vitess. Она представляет собой систему кластеризации баз данных для горизонтального масштабирования MySQL с использованием шардинга. СУБД использует более быстрые и легкие соединения, чем MySQL, что позволяет ей поддерживать тысячи соединений, а также имеет настраиваемые правила для перезаписи запросов, которые могут снизить производительность базы данных.
Как правило, обновление структуры БД – непростая операция в рабочих реляционных базах данных. PlanetScale используется метод ветвления. Когда создается новая ветвь, копия схемы базы данных (без данных) добавляется в новую пустую базу данных. После изменения схемы ветка попадает в очередь на развертывание и заменяет основную производственную базу данных. Любые конфликты схем обнаруживаются еще при попытке развертывания.
Это одна из передовых систем класса CDP (Customer Data Platform), предназначенных для создания общего представления о пути клиента, а если приземленно, то для сбора, хранения и обобщения информации о клиентах с других систем: CRM, ERP, электронная коммерция, управление контентом и маркетинговые платформы.
Treasure Data обрабатывает миллион строк данных в секунду, обогащает профили клиентов сторонними данными, сегментирует их с помощью алгоритмов машинного обучения и поддерживает проведение маркетинговых кампаний на нескольких платформах.
DB SQL – облачная система хранения данных, способная управлять огромными озерами данных и давать по ним сложную аналитику. Платформа сочетает в себе эластичное масштабирование Apache Spark, гибкость уровня хранилища Delta Lake и скорость механизма исполнения Photon SQL нового поколения. Откуда такое смелое заявление? Да потому что Databricks и является основным разработчиком этих опенсорсных продуктов.
В коммерческом продукте они все объединили, добавили аналитики – и вот результат. Жаль, нет доступной бесплатной версии, только двухнедельный триал в облаках AWS, Azure и Google Cloud.
Стартап Hugging Face стремится сделать очень полезную для всех вещь - стандартизировать архитектурные решения для работы с transformer-based моделями и стать владельцем открытого хаба предобученных весов разного типа трансформеров. С их библиотеками уже многие успели поработать.
В прошлом году компания выпустила Hugging Face Infinity - контейнерное решение для запуска нейросетей типа Transformer в корпоративных масштабах. Разворачиваете контейнер в Docker без всего этого MLOps и радуетесь. Что важно, модели уже оптимизированы и выдают очень высокую скорость обработки NLP-запросов.
В марте Snowflake купил за 800 млн долларов компанию Streamlit, всего-навсего разработчика библиотеки Python. Вот только эта библиотека – находка для дата-сайентиста, которому надо как-то навести порядок с имеющимися скриптами и визуализировать данные, чтобы этими инструментами могли пользоваться простые смертные.
Превратить скрипт в нормальное приложение можно теперь вызовом парочки функций, которые построят графики, дашборды, карты и красиво отобразят датафреймы. Streamlit поддерживает такие популярные библиотеки для работы с данными, как Matplotlib, Altair, deck.gl, Pandas.
На этом список лучших приложений 2022 года у Infoworld закончился. Нашли ли вы для себя что-то интересное? Согласны ли с выбором? Давайте обсудим в комментариях.