10 опенсорсных инструментов в помощь разработчику

“Индустрия цветет, а программисты живут все лучше, как говорит статистика, по крайней мере американская. Бюро по рабочей силе США предполагает, что в ближайшие годы в индустрии программного обеспечения (куда, естественно, причислены и программисты) наймов будет на 22% больше. Это резко контрастирует с общей ситуацией на рынке труда США. Ведь в других профессиях количество наймов вырастет лишь на 4%.

Так как людей в ИТ все еще не хватает, и не только в США, нагрузка на одного разработчика остается большой. Невозможные дедлайны, задачи по продуктивности не учитывающие наличие лишь 24 часов в сутках, и при этом они хотят, чтобы ни одного бага. Что поможет разработчику в этой потогонке? Опыт говорит, что помогут хорошие инструменты.

Что делает тулзы хорошими?

Давайте напишем признаки хороших “тулзов”, увидев которые, признаем – инструменты хорошие. Любой хороший рабочий инструмент программиста:

  • экономит его время
  • хорошо документирован
  • “бесшовно” интегрируется с остальными инструментами
  • имеет доброжелательное комьюнити
  • регулярно получает обновления

VS Code

Итак, начнем с Visual Studio Code. Это нетяжеловесный но мощный редактор для Windows, MacOS и Linux. Из коробки поддерживает JavaScript, TypeScript, Node.js, есть большая экосистема расширений и для других языков (C++, C#, Java, Python, PHP, Go).

А почему VS Code здесь в рейтинге Топ-10 опенсорсных инструментов?

Потому что это заслужено опытом трех лет, когда автор статьи, работающий на платформе Budibase, перешел с хайпового Sublime на Atom, а затем на VS Code, и не пожалел. Редактор богат функциями, дружелюбен к разработчику, есть много расширений. Группа, занимающаяся редактором, выпускает новые функции практически каждый месяц. Автору нравится, что редактор обрастает полезнейшей функциональностью с каждым новым релизом, и кажется это заслуживает благодарности. Поэтому автор считает VS Code лучшим IDE, особенно для новичков.

Экономия времени: 8/10
Документирование: 9/10
Интеграция: 10/10
Комьюнити: 8/10
Релизы и обновления: 10/10

Гитхаб

Budibase

Платформа с открытым исходным кодом, для создания инструментов и кастомных бизнес-приложений: борды, админки, порталы клиентов, приложения для малого бизнеса, и подобное.

Почему Budibase в Топ 10

Потому что это лидирующая платформа среди так называемых “low-code platform”. Такие платформы сейчас “набирают тренд”. Как уже говорилось, сейчас идет активный рост востребованности кастомных бизнес-приложений, и похоже что это будет продолжаться долго. Low-code-платформы частично решают проблему быстрого создания “модельных” CRUD-приложений (Create, Read, Update, and Delete). На таких платформах устраняется часть рутинной работы разработчика, который тратит время на написание простейших вещей, это здорово упрощает работу.

  • клиенты платформы хранят свои приложения на своей инфраструктуре
  • клиенты могут писать “внутренние” и “внешние” инструменты
  • есть “слой автоматизации” (automation layer), клиенты автоматизируют задачи типа мэйл-уведомлений, триггеров, отправки отчетов
  • можно писать “одностраничные” приложения, вполне функциональные.

Экономия времени: 10/10
Документация: 10/10
Интеграция: 8/10
Комьюнити: 7/10
Релизы/апдейты: 10/10

Ссылка на сайт
Ссылка на Гитхаб

Posthog

Аналитическая платформа для крупных компаний, однако с открытым кодом и с множеством инструментов, улучшающих продукт.

Почему он в “десятке”

Будучи внедренным в инфраструктуру компании, дает большой набор инструментов: запись сессий, “карты загруженности” типа heatmaps, или feature flags.

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

Экономия времени: 6/10
Документация: 7/10
Интеграция: 6/10
Комьюнити: 8/10
Релизы/апдейты: 7/10

Гитхаб

Snyk

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

Почему в “десятке”

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

Экономия времени: 7/10
Документация: 9/10
Интеграция: 9/10
Комьюнити: 8/10
Релизы/апдейты: 7.10

Гитхаб

Prisma

Открытая платформа для ORM (объектно-реляционного отображения). Создатели называют свою платформу “следующего поколения”, что в принципе соответствует. Она состоит из:

Prisma Client: автогенерация и отрисовка запросов в Node.js и TypeScript
Prisma Migrate: как понятно, подсистема миграции
Prisma Studio: GUI-интерфейс для просмотра и корректирования данных в базах

Клиентское приложение (Prisma Client) работает с любым бэкэнд-приложением Node.js или TypeScript. Другими словами, это ORM-отображение, которое превращает вашу базу данных в API REST/GraphQL.

Почему Prisma в десятке

Она в десятке потому, что дает type-safe API, которое прекрасно работает и в фронтэнде, и в бэкэнде. Все в платформе ориентировано на удобство и с опорой на SDL (то есть язык SDL, Schema Definition Language), все просто и понятно, как мы любим.

Экономия времени: 6/10
Документация: 8/10
Интеграция: 8/10
Комьюнити: 9/10
Релизы/апдейты: 8/10

Гитхаб

Storybook

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

Почему в Десятке

Потому что есть интеграция с популярными фронтэнд-фреймворками, как-то React, Vue, даже Svelte. Большая библиотека плагинов, доброе комьюнити, всегда спешащее на помощь. Инструмент хорош именно тем, что позволяет выделять компоненты в изолированную среду разработки. Работая в Storybook, замечено, что разработчики внимательнее относятся к UI-компонентам, реже допускают баги.

Экономия времени: 4/10
Документация: 8/10
Интеграция: 9/10
Комьюнити: 9/10
Релизы/обновления: 7/10

Гитхаб

Vercel

Платформа для коллаборации фронтэнд-разработчиков. Дает довольно плотные инструменты для написания надежных сайтов и приложений.

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

Почему Vercel в Топ 10

Потому что им очень удобно пользоваться. Улучшается продуктивность, внимательность к UI. Комьюнити одна из лучших на Гитхабе, форумы огромные и добрые. Эти ребята написали также Next.js, второй по качеству генератор статических сайтов после Hugo.

Экономия времени: 7/10
Документация: 8/10
Интеграция: 8/10
Комьюнити: 10/10
Релизы/обновления: 10/10

Гитхаб

Oh My Zsh

Опенсорсный комьюнити-фреймворк для конфигурации Zsh. Считается, что для любителей командной строки.

Почему в списке

Превращает командную строку в новое явление. В этом фреймворке – 275 (двести семьдесят пять) плагинов. Естественно, они написаны, чтобы сделать лучше жизнь программиста. Для дизайн-фриков есть кастомные темы оформления.

Экономия времени: 1/10
Документация: 6/10
Интеграция: 10/10
Комьюнити: 10/10
Релизы/апдейты: 9/10

Гитхаб

GitLab

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

Почему в десятке

Здесь был бы GitHub, если бы наш список не был посвящен открытому ПО. Вообще, управление версиями в GitHub лучше чем в GitLub. А так-то Gitlab не очень уступает, есть хорошие функции которых на GitHub нет. Аналитика кода, Service Desk, Design Management, Secrets и тайм-трекинг. В целом Gitlab лучше ориентирован на полный DevOps-цикл, это хорошо работает, когда любишь работать только на одной платформе с качественными инструментами.

Gitlab силен, когда нужно хорошее управление пакетами (packages). Команды упаковывают в пакеты свои зависимости, лихо управляются с контейнерами, этот процесс простой. В фреймворк встроен реестр privates, контейнеров и пакетов, он хорошо и “бесшовно” работает с системой код-менеджмента Gitlab и пайплайнами CI/CD. Gitlab хорош, когда все его инструменты работают в связке, но иногда бывает тяжело “переключить” процессы. Gitlab это монстр в мире opensource, и если ты там не регистрирован…

Экономия времени: 9/10
Документация: 10/10
Интеграция: 9/10
Комьюнити: 9/10
Релизы/апдейты: 8/10

Supabase

Опенсорсная альтернатива Firebase. Не является единой платформой, а скорее набор тулзов, ориентированных на быструю “бесшовную” разработку.

Почему в десятке

Это полный набор функций, включая аутентификацию, хранение и функции, дополняющие к этому. В Десятку Полезных включена, потому что имеет бесплатную, при том сравнимую с Firebase функциональность API-вызовов, “и в конце месяца не падаешь в обморок получив счета”.

Экономия времени: 5/10
Документация: 6/10
Интеграция: 6/10
Комьюнити: 10/10
Релизы/апдейты: 9/10

Гитхаб


Как видишь, опенсорс может быть всех видов и расцветок, так же как и степени полезности.”

Dev.to

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Scroll to Top