Articles tagged #haskell
-
&english @shorts % August 12, 2026
Hardcoding in structural way
-
&english @code % August 8, 2026
Three strategies for using custom Prelude
There are several packages to replace haskell’s built-in
Preludemodule. Each has own reasoning and underlying philosophy. The point is – customPreludes are a popular things. Lets discuss several ways to bring them into your project. -
&english @shorts % July 29, 2026
Creating shell completions and man pages with opt-env-conf
-
&english @shorts % July 28, 2026
Re-using common parts of the Cabal configuration
-
&english @shorts % July 27, 2026
Collecting all dependencies for haskell nix project
-
&english @code % July 26, 2026
Actually useful implicit arguments
Implicit parameters is an underrated feature of haskell. Many programmers avoid it as it reminds of or somehow is associated with global state in the minds. In this article I’ll try to demonstrate how implicit parameters can reduce boilerplate in the code, acting like a
ReaderTwithout the need of usingask. -
&english @code % November 24, 2024
Little handy QuasiQuoters
List of very handy QuasiQuoters in Haskell, that makes routine programming tasks easier.
-
&english @shorts % November 12, 2024
HLS support for multi-target Cabal projects
-
&english @projects % June 11, 2021
People membership validation in JIRA fields against Active Directory
Current version of JIRA inside Itransition does not allow to validate “whether a person belongs to a certain group” for multi-people fields, only for single-user fields. Coorish – is a small utility to determine ineligible people being specified in JIRA tickets.
-
&russian @code % February 4, 2021
FP effects systems vs OOP interfaces
С большим опозданием, продолжаю цикл статей про Workplace бота. Ссылки на предыдущие части: 1, 2, 3 и 4. Сегодня, впрочем как обычно, речь пойдет про очедную функциональную дичь ;).
-
&russian @code % May 11, 2020
Size does matter
Возможно я в этом не одинок, но меня сильно разочаровывают размеры современных приложений. Сейчас считается нормой создавать сайты, скачивающие десятки мегабайт при первой загрузке, иметь приложения для телефонов размером в несколько сотен мегабайт, базовые образы
dockerконтейнеров занимают гигабайты… Ситуация парадоксальная – “дешевле” не заботиться о размере, так как усилия, потраченные в этом направлении будут стоить компании-разработчику дороже. -
&russian @code % March 23, 2020
Parsing environment variables with reverse tests
Тема сегодняшней статьи – чтение конфигурационных значений из переменных окружения и связанные с этим процессом трудности. В небольших системах, где нет необходимости в полноценном конфигурационном файле, принято брать настройки из переменных окружения, это один из ключевых моментов 12 factor app манифеста. Это надежный и относительно безопасный способ конфигурации, он отлично поддерживается всеми операционными системами, облачными платформами и средствами контейнеризации.
-
&russian @code % March 9, 2020
Type-safe API for server endpoints and clients
Итак - подошло время очередной технической статьи. На этот раз речь пойдет про API-over-HTTP. Вроде банальнейшая вещь, каждый так “сто раз делал” и чего вообще можно было на эту тему необычного придумать… Действительно, практически в любом backend-е есть слой “контроллеров”, который отвечает за то, чтобы функции приложения были доступны извне по протоколу
http. Кто-то используетjson, кто-тоxml, но общий знаменатель всегда -http. -
&russian @code % February 27, 2020
Parsing different JSON payloads into a single data structure
Что-то давно не видно технических статей, спешу исправиться. В связи с задержкой, “градус гиковости” будет временно значительно повышен. В публикации на прошлой неделе я рассказал про новый бот для Workplace, который помогает управлять проектными (и не только) группами не прибегая к помощи
HelpDesk. Он написан на языке программированияHaskell, что для нашей компании выбор не совсем типичный (хотя с RFX-ами на эту тему к нам обращались). Знаниями надо делиться, так что запланировал несколько статей по мотивам написания этого бота. Статьи будут раскрывать некоторые интересные аспекты реализации, которые, на первый взгляд, могут показаться странными или неочевидными, но все же позволяют по новому взглянуть на типовые задачи, возникающие при разработке ПО. -
&english @projects % February 7, 2020
Workplace bot for managing Active Directory groups
Here is a facebook bot (we use facebook’s Workplace product as an intranet collaboration point) to manage AD groups. There are number of articles about the creation process.