Мы с вами уже перестали бояться монад, но всякие непонятные стрелочки в коде типа <>, <$>, <*> и <|> по-прежнему повергают нас в ужас. Сегодня мы выясним, что и здесь бояться особо нечего. Как и в случае с монадами, здесь имеют место быть обыкновенные классы типов и функции для работы с ними. Все просто.

Есть два взгляда на распределенные отказоустойчивые системы — теоретический и практический. В то время, как теоретики (a.k.a distributed systems nerds) пиарят так называемые NewSQL базы данных, рассуждают о Paxos и векторных часах, большинство практикующих программистов относятся к подобным решениям с некоторым скепсисом. Ведь инженерия — это штука про компромиссы. У любого решения всегда есть плюсы и минусы, не исключая NewSQL. Так или иначе, в реальных системах, как правило, все еще используется PostgreSQL и другие традиционные реляционные СУБД.

Темы седьмого выпуска: Erlang R17, GHC 7.8.1, MongoDB 2.6, все о модели акторов, транзакционной памяти и девушках в белорусском геймдеве, зачем Валера заставил себя пощупать Scala с Rx и почему он осуждает Akka, как учить Java в третьем тысячелетии, битва не на жизнь, а на смерть между Akka и Erlang, и не только. Предыдущие выпуски: шестой, пятый, четвертый, третий.

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

Я не мог не обратить внимание на интерес читателей этого блога к теме поиска работы, прохождения собеседований, карьерного роста и так далее. Ну а раз эти вопросы так актуальны, нет повода не написать еще одну заметку на смежную тему. Вы никогда не задумывались, почему мы хотим работать в одних компаниях и не хотим работать в других? Почему из одних хочется свалить уже в первую неделю, а из других нас ни за какие коврижки никуда не переманишь? Здесь я поделюсь своим субъективным мнением по этому поводу.

В 99% случаев если вам требуется компилятор Haskell, то Haskell Platform решит все ваши проблемы. В платформу входит не только непосредственно стабильная версия компилятора GHC, но и такие утилиты, как cabal и haddock, а также некоторые часто используемые библиотеки. При этом с помощью cabal можно обновить, пожалуй, всю платформу, не считая разве что самого GHC. Но иногда хочется поиграться с версией GHC посвежее. Вот тому, как это сделать, и посвящена сия заметка.

Темы шестого выпуска: Эльбрусы, VLIW, FPGA и многие другие страшные слова, скандальная правда о том, как ведется разработка компиляторов в России, о том, что на самом деле любой рубист может запросто переквалифицироваться в разработчика ядра OpenBSD, а также ужасы написания серверных приложений на Haskell. Предыдущие выпуски: пятый, четвертый, третий, второй.

В этом выпуске: есть ли достойная альтернатива Total Commander для Linux, где можно скачать тонны видеоматериалов по Erlang, что быстрее — передать пакет из Европы в Америку, или нарисовать писель на экране, а также другие занятные вопросы и ответы на них. Предыдущие выпуски: февраль 2014, январь 2014, декабрь 2013, ноябрь 2013.

Недавно я залил на Hackage свой первый пакет. Тот самый, с параллельной реализацией генетического алгоритма. В действительности, пакеты на Hackage заливаются очень просто. Но все же я хотел бы сделать небольшую напоминалку касательно того, что нужно сделать перед тем, как выкладывать свой пакет.

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