На всех парах Ergo Framework движется к релизу 3.0. На экране кипит работа над сетевым стеком. Планы были выпустить релиз в конце осени, но реальность их перекроила. Теперь ближе к весне только получится.
Из того что на экране. Набор инструментов все тот же – nvim, tmux, zsh, vifm, tig. Не так давно, правда, переехал с nixos на arch. Ну и конфигурацию neovim’a переделал – взял nvchad. То, что нужно.
Практически все из коробки, работа напильником сведена к минимуму. Доволен. Раньше юзал vim-go. Но это вещь в себе без оглядки на экосистему lsp в neovim. Сейчас и erlang, и golang, и пара других языков – без костылей, каждый со своим lsp. Ну не счастье ли? :)
PS тема в большинстве используется catppuccin (жаль, для vifm ее нет).
будет переработан сетевой стек. (сейчас он дает около 1 млн сообщ/сек между нодами по сети. ожидается улучшение до 15-20 млн);
работа с процессами будет проще и понятней;
вся эрланговская специфика будет вынесена в отдельный пакет (собственно она и была главным шоу-стопером в перформансе).
На скриншоте творческий момент редизайна внутренностей. Сложно удерживать в голове сразу кучу связанных сущностей, посему приходится держать их на виду. Благо экран широкий, позволяет.
Из инструментов — NixOS, NeoVim, Tmux, ViFM, Zsh.
На остальных экранах — всякие браузеры со спотифаями.
Пришло время вспомнить, как слова в предложения складываются и чтобы еще со смыслом получалось. В общем, написание документации - процесс крайне утомительный, если в этом нет опыта. А у меня его не было и нет :)
На экране, собственно, сам процесс. Гитбуку отдельное спасибо за «community» тариф, который открывает весь функционал платного сервиса, но за бесплатно. Возможно не лучший сервис, но для моих нужд пришелся весьма ко двору.
В остальном - urxvt с tmux’ом и остальными neovim’ами vifm’ами. К слову, отдельная благодарность xaizek за vifm. Это лучший файловый менеджер по моему опыту.
В левом верхнем - cava. Просто красиво под музыку «столбики» прыгают. Должен отметить, только в urxvt нормально работает - очень быстро отрисовывает, цпу не ест. Тот же alacritty от cava с ума сходит - течет по памяти, цпу как не в себя.
До этого рабочим терминалом был gnome-terminal. Он вполне себе справляется со всеми моими задачами. На urxvt перешел недавно, как только разобрался, почему не рисовал нормально некоторые utf-символы (оказалось, нужно было просто правильно шрифт указать) и из желания некоего однообразия.
Окружение: NixOS (unstable channel), Gnome 42.3 (полный дефолт кроме обоины и шрифта - везде использую Iosevka)
После переезда на 38" работать стало комфортней на порядок.
Когда-то не понимал всех радостей от vim, от связки с tmux, но после боли в запястьях прошел процесс переосмысления эргономики - теперь работаю на ergodox, в vim+tmux, попутно оценил все прелести vim-like хоткеев стараюсь использовать их везде. как результат:
в рабочем окружении добавился vifm (как же я раньше без него жил).
в firefox начал пользоваться trydactil (до него использовал vimium)
в zsh стал активнее использовать vim-mode
потихоньку начал использование tig (гитовый консольный клиент). не могу сказать, что активно, но иногда с ним интересней пробежаться по коммитам
изменил дефолтные хоткеи гнома управления окнами на win-[h,j,k,l], а также переключение между приложениями стало удобней с помощью win-[1,2,3…]
если резюмировать - инвестиции в эргономику стоили потраченного времени и на выходе получил невероятно бОльший уровень комфорта.
на экране, кроме браузера со спотифаем и всем привычным htop еще можно увидеть cava - просто нравятся прыгающие «столбики» частот под музыку.
в остальном: Gnome 3.38. Для него установил тему Materia. Шрифт Iosevka везде, не только в терминале.
OS: NixOS. посоветовал на нее посмотреть знакомый еще в прошлом году. проникся. непривычно с первого взгляда, но невероятно крутая по своей идеологии - воспроизводимость конфигурации. теперь установка на другой комп/ноут сводится лишь в git checkout конфигурации и одной командой воспроизводится абсолютно все окружение, автоматически, без лишних копипаст. Если кому будет интересно - https://github.com/halturin/nixos-config/.
На экране - кипит работа над новой фичей, чтобы выпуститься с ней в предстоящем релизе. Надеюсь в феврале. Что это и для чего? это фреймворк, на Golang. Он реализует все дизайн паттерны OTP Erlang , а также его сетевой стек, который дает сетевую прозрачность для общения между процессами с возможностью линковки (когда два процесса связываются и если один умирает, то второй автоматически умирает за ним), мониторинга (когда один процесс хочет получить уведомление, если другой процесс умер), супервизор (когда из процессов выстраивается дерево супервайзинга с разными стратегиями перезапуска). В общем, много чего крутого, что было упущено индустрией в пользу ущербному HTTP. Любопытствующим сюда - https://github.com/halturin/ergo
PS: (для тех, кто в теме) после релиза есть желание взяться за реализацию BEAM виртуальной машины. если есть предложения или желание обсудить https://github.com/halturin/ergo/discussions/28