to post messages and comments.

← All posts tagged ?

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

А где у нас сейчас модно хранить большие жирные логи с полными или частичными кусками запросов в сервисы и всем таким? Плюс нужен удобный способ поиска по разным параметрам, таким как uuid запроса, уровень ошибки, и прочее. В идеале, чтобы запись в логе была JSON документом.

Хочу хранить список разно структурированных документов (разные документы могут иметь разную структуру) в некотором текстовом формате так, чтобы это можно было потом редактировать руками и хранить в гите, а главное — мержить. Каждый документ должен храниться как минимум в своей строчке, либо в нескольких строках, чтобы можно было мержить изменения в одних и тех же документах, сделанные в базе в разное время. Какие у нас есть варианты? pretty-printed JSON, YAML ... что ещё? Желательно, чтобы была библиотека работы с этим в Haskell.

Довелось тут по случаю около дня пользоваться вейпом, парил жижу с никотином, трешку. Эффекты никотина понравились: спокойствие и концентрация, плюс повышается настроение. Почитал за никотин: вред не доказан, показана канцерогенность in vitro, но in vivo убедительная канцерогенность не была показана. Думаю подсесть, парить базу трешку 2-3 раза в неделю. Какие подводные камни?

gist.github.com
Как бы мне вот такой псевдокод писать более красиво и композабельно? Можно взять ResourceT вместо Trans, но он при выходе из монады запустит мне `cleanupRes` а мне этого как раз не надо, поскольку я тут не ресурсы выделяю, а делаю serious business штуки, которые хочется безопасно отменить в случае любых фейлов, а если фейлов не было, то не чистить. И желательно в обратном порядке (последнее cleanup action вызвается первым). Ситуация осложняется большой вложенностью вызовов функций и невозможностью в одном месте сделать такое вот дерево из `catchAll`.

Есть ленивый список значений `list :: [Maybe a]` в котором элементы не зависят друг от друга по данным. Есть функция `findGrail :: [Maybe a] -> b` которая внутри делает `foldl . catMaybes'` . Хочу получить `b` так, чтобы элементы `Maybe a` исходного списка `list` вычислялись параллельно в разных потоках на всех доступных ядрах автоматически. Как максимально просто по-бомжвею это сделать?

Дворак или колемак? По заявлениям, колемак, якобы, более эффективен. Попробовал уроки на том и на другом, в двораке сделан упор на чередование рук, в колемаке на "rolling typing" типа когда последовательно нажимаешь одной рукой несколько клавиш из одного ряда. И вот эти "rolling strokes" в колемаке мне сильно не нравится, поскольку такие нажатия довольно трудны, особенно с мизинца на безымянный и обратно (особенно на правой, после многих лет работы на кверти), а таких диграмм в колемаке много, "io oi ra ar rs sr". Я бы вот хотел пользоваться самой типа эффективной раскладкой, но по первым впечатлениям дворак палущ, чередование рук тупо проще, пусть даже пальцы надо чаще двигать. Но я ещё не умею нормально печатать ни на том ни на другом, так что, судить нормально не могу.
Кто пробовал? Чо как?