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

Настало время разобраться, что представляет собой Riak, как установить и настроить его в Ubuntu Linux, а также узнать, как использовать некоторые его возможности через REST API. Эта памятка не заменит вам чтения книг по Riak, но поможет составить общее впечатление об этой СУБД.

В этом выпуске: как в Ubuntu установить Oracle JDK, что делать, если в Erlang возникает ошибка emfile, как собрать PDF с помощью ImageMagick, и не только. Предыдущие выпуски мини заметок: четырнадцатый, тринадцатый, двенадцатый, одиннадцатый.

В последнее время все больше людей выбирают языки программирования с динамической типизацией. Сторонники динамической типизации утверждают, что на изучение Erlang’а требуется две недели, после чего можно сразу начать писать боевой код. Что все равно интернеты динамически типизированы, что ошибки типизации быстро находятся и легко устраняются, а настоящую проблему представляют сложные логические ошибки, где статическая типизация все равно не помогла бы. Что статическая типизация — это медленно и скучно, а на Clojure можно легко написать свой Mortal Kombat за два вечера. Давайте же выясним, почему на самом деле вы не должны хотеть динамической типизации.

MessagePack — это формат, напоминающий JSON, только более быстрый и более компактный. Например, {"a":1,"b":2} занимает 13 байт в JSON, 19 байт в BSON и всего лишь 7 байт в MessagePack. MessagePack RPC представляет собой протокол удаленного вызова процедур, основанный на MessagePack. Полная реализация MessagePack RPC предоставляет синхронный и асинхронный обмен сообщениями по TCP, UDP или через Unix-сокеты. Давайте выясним, как работать со всем этим хозяйством в Haskell.

В минувшую субботу «Запискам программиста» исполнилось четыре года. По уже сложившейся традиции, в честь этого события я вкратце расскажу, какие изменения претерпел блог за прошедший год, и сделаю несколько скриншотов на память.

В этом выпуске: P2P сети для безопасного обмена сообщениями, разработка игрушек, в том числе на Haskell, скандальная правда о будущем Perl, и не только. Предыдущие выпуски: август 2013, июль 2013, июнь 2013, май 2013.

Недавно мне пришло письмо от одного из посетителей с просьбой помочь решить небольшую проблему с OCaml‘ом. И как-то между делом он поинтересовался, почему я отказался от OCaml в пользу Haskell. После небольшого раздумья я ответил, что это сложный вопрос и что я не готов вот так сразу на него ответить, а также пообещал когда-нибудь написать пост на эту тему. И вот, я наконец-то собрал свои мысли в кучку.

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

Сказать по правде, я долгое время не понимал, для чего нужны DSL. В конце концов, всю жизнь без них как-то обходился, и нормально. Какую проблему, спрашивается, они решают? И вообще, у нас тут безо всяких DSL сплошь и рядом зоопарки языков программирования, а вы предлагаете ввести еще один язык!? Но, подумав, поспрашивав людей и погуглив немного, я пришел к выводу, что в ряде случаев создание собственных DSL может быть хорошей идеей. Проще всего убедиться в этом, рассмотрев несколько практических задач и как они решаются с использованием DSL.