Предыстория. Некоторое время назад в комментариях к заметке Работа с нитями/потоками в Haskell Роман совершенно справедливо заметил, что задачу перебора хэшей было бы куда правильнее решать, используя, например, пакет parallel. Перебор хэшей был выбран мной, как универсальная задача, с помощью которой можно продемонстрировать работу и с MVars, и с транзакционной памятью, и с монадами Par/Eval. Чтобы не приходилось придумывать новую задачу для каждого нового поста.
Находки в сети за февраль 2014
3 марта 2014
В этом выпуске: сетевое программирование на Idris, Haskell на Xen, подборка правильных подкастов о программировании на английском языке, и не только. Предыдущие выпуски: январь 2014, декабрь 2013, ноябрь 2013, октябрь 2013.
Мини заметки — выпуск 17, полностью посвященный Haskell
24 февраля 2014
Этот выпуск мини змаеток полностью посвящается замечательному языку программирования Haskell. Сегодня мы узнаем, что в ghci можно просматривать документацию, что в Haskell есть глобальные переменные и интерполяция строк, а также о других интересных вещах. Предыдущие выпуски: шестнадцатый, пятнадцатый, четырнадцатый, тринадцатый.
EaxCast S01E03, говорим о NewSQL базах данных
19 февраля 2014
Запись метрик в Graphite, Ganglia и StatsD на Haskell
17 февраля 2014
Ранее мы выяснили, как на Haskell работать с базами данных, писать REST API, генерировать и читать JSON-стримы, работать с конфигами и писать логи. Для полного счастья осталось разве что научится ходить в Graphite. После этого можно спокойно протаскивать Haskell в продакшн, пописывая на нем небольшие RESTful сервисы. Так чего же мы ждем?
Легкая и непринужденная установка Graphite в Ubuntu Linux
14 февраля 2014
Чем больше метрик вы пишите, тем лучше. Метрики помогают найти в программе места, нуждающиеся в оптимизации. По метрикам вы можете понять, что именно послужило причиной сбоя в ночь с субботы на воскресенье. Если в очередном билде имеется баг, который не удалось найти в тестовом окружении, вы сразу же узнаете об этом во время выкатки. Одним из наиболее распространенных решений для сбора метрик является Graphite.
Умение находить интересные задачи
12 февраля 2014
Суровая действительность такова, что, начиная с какого-то момента, программист не может так просто взять и покинуть некогда выбранную им нишу. Дело тут не в том, что веб-разработчика ни за что не возьмут в геймдев. Взять-то возьмут, но, за неимением соответсвующего опыта, платить будут ощутимо меньше. Даже разница в 10к рублей — это не так уж и мало, если умножить на 12 месяцев. И вот, бедный программист вынужден всю жизнь заниматься примерно одними и теми же задачами. Не удивительно, что рано или поздно к нему в гости приходят тоска и безысходность, типа «я занимаюсь всякой рутиной, а настоящие пацаны где-то пишут игровые движки и ПО для управления шаттлами».
Как в Haskell сделать пул соединений к базе данных
10 февраля 2014
Помните, мы когда-то писали телефонную книгу на Haskell и прикручивали к ней веб-интерфейс? У этой телефонной книги есть существенный недостаток. Дело в том, что соединение с базой данных устанавливается только один раз, при запуске приложения. Если во время работы программы соединение порвется, для его восстановления телефонную книгу придется перезапустить. Кроме того, наличие всего лишь одного соединения делает параллельную обработку нескольких запросов в лучшем случае невозможным, а в худшем — чреватой ошибками. Сегодня мы этот ужасный недостаток устраним!
Темы второго выпуска: отвечаем на комментарии к пилотному выпуску, что не так с нынешними интернетами, зачем программисту на Java учить Erlang или Haskell и что может предложить Idris вместо трансформаторов монад. Первый, пилотный, выпуск можно послушать здесь.
Находки в сети за январь 2014
3 февраля 2014
В этом выпуске: как убедить свое руководство переписать все на Haskell, пишем свою операционную систему, не пускаем на сайт пользователей, сидящих через Tor, и не только. Предыдущие выпуски: декабрь 2013, ноябрь 2013, октябрь 2013, сентябрь 2013.