Skip to main content

Back-end разработка на Haskell

Влюблены в язык с 2018 года: делаем проекты и обучаем хаскеллистов.

Каким проектам подходит Haskell?

Долгосрочным проектам со сложной предметной областью и бизнес-логикой, для которых нет готовых библиотечных решений и критична надёжность работы.

LogisticsFinTechBlockchainMedTechBiotechMarTechFinancial modeling Concurrent and parallel programming AnalyticsCompilersScientific modeling Type-checkers Cluster computing Parsers

Типовые проекты типа интернет-магазина или медиа эффективнее делать на других языках, где готовых шаблонов, библиотек больше.

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

Так, во время работы над собственным стартапом курьерской доставки «Ptichka.moscow» мы перешли с Python на Haskell, что позволило нам в течение последующих 2 лет сильно масштабировать функциональность живого сервиса.

Как Haskell экономит время, деньги и нервы

У него самая продвинутая система типов среди всех языков для коммерческой разработки. Система типов контролирует логику программы, ограничивает заведомо неправильное её поведение, не позволяет реализовать заведомо неправильную логику. За счёт этого разработка:

  • Надёжная: меньше багов, потому что найти их проще
    Умный компилятор заранее сообщает о многих потенциальных багах, которые необходимо поправить, иначе приложение просто не попадёт в продакшн.
  • Быстрая: меньше времени на тестирование
    В 95% всего времени разработчику не нужно даже покидать редактор кода, чтобы убедиться, что всё работает так, как ожидается. Компилятор за него «держит в голове» все проблемные места, из-за чего отпадает нужда тестировать каждое изменение. Меньше переключения контекстов — большая сосредоточенность на задаче.
  • Без рисков при рефакторинге

    Добавление новой функциональности в проект — лишь 10–15% разработки. Чаще это либо добавление чего-то к уже имеющимся частям проекта, либо переработка того, что в работе сервиса потребовало изменений — рефакторинга. После внесения изменений в одном месте компилятор Haskell напомнит нам исправить другие зависимые места в проекте.

    Рефакторинг обязателен при разработке MVP стартапов, когда активно изменяется имеющаяся и добавляется новая функциональности.

Как мы применяем Haskell?

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

    Разрабатываем проекты на блокчейн-платформе Cardano с использованием платформы Plutus, написанной на Haskell

  • Обучаем языку сотрудников и всех желающих

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

Какие услуги на Haskell мы оказываем