gds

год

Aug 28, 2012 17:36

Интересно просуммировать, что же я сделал за год. (дата выбрана совершенно случайно, но "новый год" выбирать как-то неоригинально.) Не упорядочено никак. И не пишу, благодаря кому это делал -- слишком многих перечислять придётся.

- размножился, дочь, полгода сейчас

- разобрался с postgresql в достаточной степени, чтобы использовать его, но в недостаточной, чтобы предвидеть неочевидные грабли. Но использую, скорее нравится.

- разобрался с монадными трансформерами настолько, что налепил их на coq с доказательствами монадных законов, законов трансформеров, реализовав нужные мне монады identity, state, error и их трансформеры. Однако, без успеха, из-за излишней гибкости coq typeclasses и неюзабельности результата на практике.

- сделал тупую гидропонную систему "периодического затопления", где из хайтек-вещей только таймер и компрессор (чисто удовлетворить минимализм). Однако, на практике накосячил кое с чем другим, поэтому результата почти нет.

- доделал до применимого вида "динамическую типизацию" на окамле, с возможностью как угодно расширять "описания типов" (например, добавлять туда сериализацию или использовать сериализацию, основанную на "структуре" значения (т.е. рантайм-интроспекция)), с возможностью не тащить в общую либу ненужные зависимости (например, если не используется сериализация в json -- json-wheel не будет обязательным для линковки) -- проект cadastr

- поучаствовал в разработке "пакетного менеджера" для окамла, а потом понял, что именно мне надо, и "переебал по-своему", до уровня виртуальных окружений, грязно, но работает (даже в продакшоне111) -- проект rebildol

- coq:
-- разобрался в достаточной мере с зависимыми типами и вообще с типами
-- надрочился использовать coq для доказательств утверждений о программах
-- понял, как генерить нормальный код оттуда
-- сделал "мировую манатку" для написания кода с обработкой ошибок и сайдэффектами (но с непростым доказательством кода, если это вдруг понадобится; с почти нереальным, имхо)

- надрочил какой-то туториал по итератам на русском, объясняющий самые низы/азы этого дела, однако кому оно надо -- проект ocaml-iteratees-tutorial-rus

- вспомнил старый проект "biobin", упростил его, сделал "biobin2", раз в полгода вспоминаю и редактирую-дописываю спеку. Раз уж времени+мозга на реализацию нет пока, хоть что-то. Вкратце -- симуляция тварей от момента "днк + белки" до простых поведений клеток на дискретной плоскости.

- поучаствовал в социальных движухах с анусом и псом (не спрашивайте, если не понимаете)

- поменял в итератах самое ядро, которое было stream+iteratee, а стало stream+streamlist+iteratee, исключительно для практических нужд, и долго ссался перед этим. И вообще, излишне много ебался с итератами. Аж не понравилось. Однако, результаты есть, работает хорошо.

- изредка пишу дальше спеку по ocaml actors library, в том числе по раскидке на много хостов. Куча гадких деталей возникает, если обдумывать всё и сразу. Закопался в деталях, можно сказать. Проект parvel.

- по работе-как-процессу:
-- понял, как плохо жить без трекера багов/задач и как хорошо жить с ним
-- понял, что работать без выходных и с максимальной эффективностью (максимизируя количество кода за единицу времени) -- не так-то просто, и ещё непросто придумать, как работать подобным образом, чтобы моск не слишком выедался, а за несколько месяцев продуктивность не падала.
-- понял, что это бывает нужно, и понял, как-зачем
-- понял, что от этого кое-что в человеке меняется от такого режима, и мне это не по нраву, но при оптимизации общего дела иногда можно кое-что поменять в себе

- научился курить трубочный табак

- купил ноут, теперь работаю там, перемещаемость рулит, экран 1600×900 хорош

- в связи с предыдущим пунктом, я таки нашёл свою compose key

- хожу в автошколу, и, вероятно, месяца через 2..3 буду рулить в прямом смысле слова

upd1/

- довёл до воспроизводимости рецепт годного кваса (публиковал тут недавно)

- научился хорошо готовить "плов по-фергански" от сталика

- моим кошкам уже по 8 лет и они живы, здоровы, активны

upd2/

- сделал edsl для окамла, который либо исполнялся как есть, либо компилировался posix shell script (это было главной целью). Поддерживал строки, проверки на -f/-e, запуск команд, выражения if-then-else, списки строк, последовательное выполнение команд, комбинаторы with_chdir, with_env, пользовательские переменные.

upd3/

- научился делать кимчхи (ещё называют "кимчи") -- острая пекинская капуста, одно из главных блюд корейской кухни.
Previous post Next post
Up