Комментарии (54)
- Обсуждение показало, что Helix ещё не готов стать полноценной заменой Vim/Neovim для большинства пользователей из-за нехватки плагинов, отсутствия нормального дебаггера и нежелания мейнтейнеров принимать вклад.
- Участники обсуждали, что Helix всё ещё не решает «проблем 99%» пользователей, но при этом требует отказа от привычных плагинов и конфигурации.
- Несколько человек поделились личным опытом: кто-то вернулся к Vim/Neovim из-за нехватки критичных фич, кто-то не смог привыкнуть к новым биндингам, а кто-то просто не смог жить без плагинов.
- Сторонники Helix отвечают, что проект всё ещё в активной разработке и что они не хотят «распыляться» на поддержку плагинов вместо улучшения ядра.
- В итоге обсуждение свелось к тому, что Helix пока остаётся нишевым выбором для энтузиастов, которые готовы пожертвовать привычками и экосистемой Vim/Neovim paди возможности в будущем получить более современный редактор.
Tinkering is a way to acquire good taste 🔥 Горячее 💬 Длинная дискуссия
Эксперименты — основа хорошего вкуса в программировании. Автор признается, что в детстве пробовал многое (гитару, боевые искусства), но с программированием не экспериментировал, хотя и восхищался играми. Позже он понял, что эксперименты — ключевой элемент его обучения. Примеры экспериментов: настройка чувствительности мыши в играх, конфигурация Linux, кастомизация механических клавиатур. Цитируется мнение: «Когда ты экспериментируешь и выбрасываешь результаты — это практика, которая должна быть мимолетной, исследовательской и частой».
Хороший вкус формируется через использование разных инструментов, отбор подходящих и отказ от неподходящих. Автор подчеркивает, что «никакое время, потраченное на обучение, не пропало зря». Он призывает сомневаться в общепринятых нормах, экспериментировать и ломать вещи. Важно найти баланс: автор не тратит все время на настройку neovim, но регулярно пробует новые технологии (GLSL, Rust, Swift), чтобы расширить кругозор и развить способность отличать посредственность от мастерства.
Комментарии (300)
- Обсуждение свелось к тому, что «taste» и «tinkering» — это не про элитарность, а про любознательность и готовность экспериментировать.
- Участники обменялись историями о том, как раньше они тоже «игрались» с настройками, но со временем пришли к минимализму и перестали это делать.
- Поднялась тема о том, что «taste» в разработке ПО — это не про эстетику, а про умение выбирать правильные инструменты и не тратить время на бессмысленные оптимизации.
- Некоторые участники выразили обеспокоенность тем, что статья не раскрывает, что именно делает «taste» важным и почему он важен.
- В итоге обсуждение сошлось на том, что «taste» — это не врождённое качество, а навык, который развивается с опытом и вовремя отпускает человека от бессмысленных занятий.
Programming in the Sun: A Year with the Daylight Computer
Год в солнечном свете: как я год программировал на Android-планшете с экраном, который не излучает свет. Проект не рекламный, просто опыт.
Основа: Daylight DC-1 (отражающий LCD, не E-Ink), клавиатура 8BitDo, Termux, Neovim, SSH на мощный ПК. Чтение и писание в ярком свете — вот что делает день. Подсветка не нужна, батарея держится днями. Под открытым небом экран не бликует, а читать можно и код, и книги.
Boox Tab Ultra с E-Ink-дисплеем 227 ppi против 190 у Daylight, но 60 Гц против 0,5 Гц. Для чтения идеален, но писать на нём трудно. Зато в постели с лампой читать удобно. Daylight же не бликует, но и подсветкой не пользуюсь.
Итог: читать — Boox, кодить — Daylight. Оба гаджета нужны, но разные задачи.
Комментарии (52)
- Пользователи делятся опытом работы на открытом воздухе: кто-то использует MacBook в тени, кто-то собрал ноутбук с электронно-чернильным экраном, а кто-то вовсе использует iPad Pro с OLED-экраном.
- Обсуждаются технические аспекты: отсутствие цвета у e-ink-дисплеев, проблемы с отображением диффов в PR, ограничения Termux и Android-окружения, а также влияние яркости и отражающих поверхностей на работу в солнечный день.
- Поднимается вопрос о том, какие еще есть альтернативы для работы на свежем воздухе: AR-очки, проекторы, идея о ноутбуке с солнечными панелями.
- Участники обмениваются советами по оптимизации рабочего процесса: используйте тёмную тему, увеличьте яркость, используйте внешний аккумулятор, чтобы избежать перегрева и сохранить заряд.
- Поднимается вопрос о том, какие еще есть альтернативы для работы на свежем воздухе: AR-очки, проекторы, идея о ноутбуке с солнечными панелями.
Notes on switching to Helix from Vim 🔥 Горячее 💬 Длинная дискуссия
Julia Evans рассказала, как за три месяца перешла с Vim на Helix. Главное, что языковые серверы работают без настройки, а поиск показывает контекст совпадений. Минусов мало: нет автоперезагрузки файлов, не хватает приёма undo и редко падает. Но она привыкла и даже не чувствует, что потеряла 20 лет мускульной памяти Vim.
Комментарии (173)
- Пользователи обсуждают преимущества и недостатки Helix и Neovim: кто-то ценит «из коробки»-конфигурацию Helix, кто-то — гибкость Neovim; спор о том, какой редактор «лучше» ведётся в основном вокруг личных привычек и потребностей.
- Участники обмениваются советами по настройке LSP, автосохранению и другим функциям, но в целом признают, что оба редактора требуют документации и что «из коробки»-конфигурация Helix может быть проще в использовании.
- Некоторые участники подчеркивают, что Helix всё ещё молод и не реализует все функции, в то время как Neovim имеет 20-летнюю историю и большое сообщество плагинов и интеграций.
- Участники также обсуждают, что Helix требует меньше конфигурации, но Neovim требует больше настройки, чтобы достичь схожего уровня функциональности.
- Некоторые участники высказывают, что Helix не имеет столь же развитой экосистемы плагинов и интеграций, как Neovim, и что это может быть препятствием для пользователей, которые ищут расширяемость.
- Несколько участников упоминают, что Helix написан на Rust и может быть более производительным, в то время как Neovovim может быть более «гибким» в плане настройки и конфигурации.
- Участники также обсуждают, что Helix имеет встроенную поддержку LSP и tree-sitter, в то время как Neovim требует установки и настройки LSP и tree-sitter вручную.
- Некоторые участники упоминают, что Helix не имеет встроенной поддержки терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки макросов, в то время как Neovim может использовать макросы для автоматизации задач.
- Некоторые участники упоминают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для макросов, в то время как Neovim может использовать макросы для автоматизации задач.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексора для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексора для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексора для разделения окон.
- Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексора для разделения
The evolution of Lua, continued [pdf] 💬 Длинная дискуссия
Созданный в 1993 году в Бразилии, Lua стал одним из ведущих скриптовых языков, особенно в разработке игр. С 2007 года язык эволюционировал через серию Lua 5, добавив современные функции: сопрограммы для многопоточности, полную лексическую область видимости и метатаблицы для расширяемой семантики. Важные изменения включают введение целочисленного типа, улучшение сборки мусора с детерминированной финализацией и эволюцию глобальных переменных.
Lua сохраняет лёгкость и встраиваемость, будучи компактной C-библиотекой, что позволяет легко интегрировать его в хост-программы. Версии Lua 5.x несовместимы на уровне ABI, требуя перекомпиляции для встраивания, но сохраняют стабильность в рамках одной версии. Социальным маркером стало широкое принятие либеральной лицензии MIT и влияние LuaJIT, который продлил жизнь версии 5.1. Практический вывод: баланс между инновациями и стабильностью ключевой для долголетия языка.
Комментарии (161)
- Обсуждаются преимущества Lua как легкого, быстрого и удобного для встраивания языка, особенно в сравнении с JavaScript и Python.
- Упоминаются проекты для запуска Lua в браузере (например, Fengari, Nelua) и проблемы взаимодействия с DOM.
- Затрагивается история развития языков программирования в 90-х годах и место Lua среди них.
- Обсуждаются особенности Lua, такие как 1-индексация, отсутствие
continue, метатаблицы, а также новые версии (Lua 5.5, Luau). - Участники делятся ресурсами для изучения Lua и областями его применения (игры, Neovim, Roblox, скриптование в C++).
The Helix Text Editor (2024)
-
Что такое Helix
Модальный терминальный редактор, вдохновлённый Kakoune: сначала выделяем текст, потом применяем команду. Работает в окне терминала, сразу включает LSP, автодополнение и другие «плагины» без настройки. -
Запуск
brew install helix→hx файлилиhx папка(проект). Внутри:- Файлы:
Space + f→ picker. - Терминал: `Space + ``.
- Табы:
Space + w→ новый,Ctrl-w←→ переключение.
- Файлы:
-
Управление
k-j-h-l двигают курсор,xвыделяет слово,Xстроку,dудалит выделение,cизменит,pвставит. Множественные курсоры «for free»:Ctrl-xувеличивает выделение,Alt-.добавляет следующее совпадение. Отмена –u, повтор –U. -
LSP & конфиг
Установилrust-analyzer,gopls,pyright– Helix сам их подхватил. Прыжок к определениюg+d, документацияSpace+k, renameSpace+r. Конфиг~/.config/helix/config.tomlзанимает 20 строк: тема, шрифт, два ремапа. -
Минусы
Нет встроенного терминала (только pane), плагинов почти нет, вертикальный выбор мышью не работает, приходится помнить моды. Сложность окупается скоростью и удобством мультикурсора. -
Итог
VS Code отправлен в архив: Helix стартует мгновенно, не лагает на 3000-строчном файле и дарит «нерд-стрит-кред». Остаюсь.
Комментарии (39)
- Helix хвалят за «batteries-included» подход: LSP, tree-sitter и прочее работают сразу без плагинов и настройки, редактор лёгкий и отзывчивый.
- Новые пользователи находят его мягким входом в мир модальных редакторов: команды показываются на экране, не надо писать конфиг.
- Старые вимеры жалуются на несовместимые кей-бинды, отсутствие нормального поиска-замены, невозможность подсветить только trailing-space, медленное развитие и сопротивление мейнтейнеров новым фичам.
- Плагинов пока нет (но в develop-ветке уже тестируется), поэтому для markdown-заметок, продвинутого поиска и других специфических задач Helix пока не гибок; кто хочет вим-совместимость, ставит форк evil-helix.
- Большинство согласны: если нужен «IDE из коробки» без часов настройки — Helix отлично подходит; если нужна полная кастомизация, проще остаться на Neovim/Emacs.
Agent Client Protocol (ACP) 🔥 Горячее
Agent Client Protocol (ACP) — единый стандарт связи между редакторами кода и агентами-разработчиками на базе ИИ.
Протокол в разработке, но уже позволяет строить полезные интеграции.
Зачем ACP?
- Редакторы и агенты сейчас жёстко связаны: каждая пара требует собственной интеграции.
- Это → лишние затраты, ограниченная совместимость и привязка к конкретным интерфейсам.
ACP, как LSP для языковых серверов, развязывает стороны: агент, реализовав ACP, работает во всех совместимых редакторах, а редактор, поддерживающий ACP, получает доступ ко всей экосистеме агентов.
Как устроено
- Агент запускается как подпроцесс редактора.
- Обмен — JSON-RPC через stdio.
- Используются типы MCP, дополнены собственными (например, для диффов).
- Текст для пользователя — Markdown, без необходимости HTML.
Поддержка
Редакторы:
- Zed
- neovim (через плагин CodeCompanion)
Агенты:
- Gemini
- Скоро — ещё.
Комментарии (88)
- Предложен новый протокол (ACP) для связи агентов-ИИ с IDE/редакторами, плюс библиотеки на Node, Python, Rust и сайт.
- Название ACP вызывает путаницу с уже существующим agentcommunicationprotocol.dev и IBM/Google A2A.
- Некоторые считают, что достаточно расширить LSP или MCP, другие предлагают «Neovim внутри Claude Code», а не наоборот.
- Уже есть первые реализации для Claude Code и Zed, но остаются проблемы с поиском несохранённых файлов и UI-дифами.
- Обсуждают риск фрагментации стандартов и желание, чтобы любой редактор мог подключиться без переписывания под каждого агента.
VIM Master 🔥 Горячее
VIM Master — лёгкая браузерная игра, обучающая основным движениям и командам Vim.
Короткие уровни, никаких установок: просто открой index.html и тренируйся.
Комментарии (111)
- Предложили геймифицировать Vim: Guitar Hero с vim-клавишами, PacVim, Vim Snake, Vim Hero и др.
- Рекомендуют vimtutor, Neovim Tutor, Vim Golf и Vim Adventures как базовые учебники.
- Некоторые жалуются на paywall, обязательную регистрацию и баги в новых обучалках.
- Поделились лайфхаками: remapping CAPS → Esc, :xa / :qa! вместо :wq, hardtime.nvim для отслеживания эффективности.
- Сообщество делится мемами: «Vim — это образ жизни» и «8 глав о том, как выйти из Vim».
Bring Your Own Agent to Zed – Featuring Gemini CLI
Теперь в Zed можно запускать сторонних агентов. Для этого мы создали Agent Client Protocol (ACP) — открытый JSON-RPC стандарт, и первым его внедрением стал Gemini CLI от Google.
Gemini CLI в Zed
- То же CLI, что и в терминале, но с интеграцией в редактор: live-предпросмотр изменений, мульти-буфер ревью, навигация между кодом и чатом.
- Всё работает как подпроцесс, общение через ACP вместо ANSI-кодов.
Agent Client Protocol
- ACP развязывает агентов от IDE: любой клиент, поддерживающий протокол, получает готовый UI.
- Данные не уходят на серверы Zed; код остаётся локально.
- Протокол под Apache-лицензией; уже есть пример для Neovim (Code Companion).
- Внутренний агент Zed теперь тоже использует ACP, поэтому улучшения UI доступны всем.
Присоединяйтесь
ACP открыт для форков и предложений. Мы хотим видеть экосистему специализированных агентов и поддержку в других редакторах. Исходники и примеры — в репозитории Zed.
Комментарии (34)
- Zed анонсировал Agent Client Protocol (ACP), что выглядит как попытка выйти из бизнеса Cursor и дать пользователям «принести своего агента».
- Пользователи хвалят скорость и активную разработку Zed, но жалуются на ESLint-проблемы и спрашивают, насколько гибко можно перенастроить редактор.
- Некоторые готовы платить за Zed (до 79 $/год), другие опасаются VC-финансирования и предпочитают Emacs/Neovim.
- Поднимаются вопросы о поддержке ACP такими агентами, как Claude Code и Cursor-agent, а также о пересечении с IBM Agent Communication Protocol.
Website is served from nine Neovim buffers on my old ThinkPad
Кратко: плагин nvim-web-server на чистом Lua отдаёт HTTP-запросы прямо из открытых буферов Neovim, без внешних зависимостей, с нативной поддержкой Djot и быстрее Nginx.
Почему так быстро?
- Однозадачность: только статика.
- libuv + асинхронный I/O Neovim.
- LuaJIT: NaN-тегинг, отсутствие boxing чисел, allocation sinking.
- aiohttp тормозит из-за парсера на чистом Python и boxing в CPython.
Бенчмарк, RPS (среднее):
| сервер | 1 | 50 | 100 | 200 | 400 |
|---|---|---|---|---|---|
| nvim-web-server | 3981 | 15284 | 15124 | 14476 | 14446 |
| Nginx | 4451 | 11306 | 11576 | 10011 | 10461 |
| aiohttp | 6391 | 8477 | 8448 | 7696 | 7132 |
Развёртывание: живёт на старом ThinkPad, 9 буферов — весь сайт.
Безопасность: да, но мелочи мы игнорируем.
Комментарии (17)
- Пользователи в восторге от статьи: называют её «одной из любимейших» и приводят цитату «они были так заняты тем, могут ли, что не спросили себя, стоит ли».
- Кто-то отмечает, что сайт резолвится на IP Linode, но не объясняется, зачем нужен промежуточный сервер.
- Обсуждают безопасность: пример показывает, что «никогда не бывает так, чтобы код точно не запустили по сети».
- Некоторые шутят, что Neovim теперь можно считать кроссплатформенным рантаймом «ужаса», но признают крутость эксперимента.
- Предполагают, что высокая скорость может быть из-за хранения файлов в RAM, а не на диске, и что всё равно всё закешируется.
Dotfiles feel too personal to share
Я обожаю dotfiles.
“Dotfiles” — это конфигурационные файлы для программ и ОС, часто начинаются с точки: .bashrc, .tmux.conf, .zshrc. Когда софт не поддерживает настройку файлами, грустно: сложнее синхронизировать конфиги между устройствами и при настройке новых машин.
Я люблю делиться: пишу блог, веду цифровой сад заметок и выкладываю почти весь код на GitHub. И обожаю читать чужие dotfiles, учиться у них.
Но свои публиковать некомфортно: мои алиасы, кастомизации и решения кажутся слишком личными. Почему — точно не знаю.
У меня есть классный репозиторий с кучей всего: конфиг zsh и алиасы, tmux, neovim и vscode, Python startup-скрипт. Храню список пакетов Homebrew — ставлю на новый компьютер одной командой. Там же — CSS-правила для Stylus, чтобы везде получать нужный вид.
Для управления использую GNU Stow: структура папок позволяет командой stow [folder] раскидать симлинки по нужным местам, и изменения синхронизируются на всех машинах. Это очень удобно.
В сумме там 19 конфигов плюс весь мой neovim с плагинами. Но пока я «берегу их как тайну», пока не почувствую готовность делиться.
Если откликнулось — напишите на juhamattisantala at gmail dot com. В 2025 хочу больше глубоких разговоров с людьми со всего мира — буду рад вашему письму.
Комментарии (140)
- Участники разделились: одни считают дотфайлы слишком личными/уязвимыми для публикации, другие — ценным источником обмена знаниями и вдохновения.
- Главные опасения: утечки секретов и контекста (хосты, пути, IP, корпоративные детали), риски социнженерии и отпечатков, а также стыд/страх оценки «неидеальной» личной конфигурации.
- Распространенная практика — разделение на слои: публичные «универсальные» настройки, приватные оверрайды и секреты; отдельные репозитории, шифрование (age/gpg, sops), менеджеры вроде chezmoi, myba, Polykey.
- Советы по безопасности: не хранить секреты в .bashrc и подобных, исключать их через .gitignore, использовать шифрование и хранилища (1Password ссылки, отдельные файлы, приватные репо).
- Польза публикации: обучение через чужие конфиги (vim/zsh/emacs/nvim), улучшения качества жизни через алиасы/маппинги, возможность быстро делиться и переустанавливать окружение.
- Практические подходы: файл-локальные приватные настройки, employer-специфические include-файлы, документирование и чистка перед открытием, минимизация зависимостей от нестандартного софта.
- Итоговый консенсус: «делиться избирательно» — держать публичным обобщаемое и полезное, а чувствительное и слишком личное — приватным или зашифрованным.