Хороший инструмент должен быть незаметен, и разработчикам следует к этому стремиться.

На деле же я нередко встречаю у них вредную привычку, с которой приходится бороться. Дело в том, что они преподносят недостатки инструмента как «увлекательные» головоломки, решение которых приносит удовольствие.

Я же хочу, чтобы мои инструменты не создавали для меня «увлекательные» головоломки, а просто незаметно делали своё дело.

Война текстовых редакторов

Возьмём в качестве примера Vim1. Я постоянно вижу, как некоторые хвалят его не за реальные достоинства, а за недостатки, которые человек воспринимает как загадку, которую ему интересно решить.

Не один человек рассказывал мне, каким увлекательным для него было создание макроса для решения какой-то разовой задачи по рефакторингу текста. Но когда я смотрел на то, что они делают, и как много времени это занимает, то искренне недоумевал: «Да я бы сделал всё это в Sublime за минуту с помощью мультикурсоров или просто написал короткий скрипт».

Я не хочу сказать, что редакторы не играют важной роли для вашего рабочего процесса. Я лишь ставлю под вопрос ту преданность, с которой люди относятся к инструменту только потому, что он дарит им некий «хакерский вайб». А ведь именно это, по сути, и затягивает новичков в vim или emacs.

Собственно, это я и подразумеваю под «незаметностью инструментов». Когда ты профессионально осваиваешь некий редактор, он отходит на задний план. Но как только у тебя вдруг возникает сложность с решением какой-то задачи, его незаметность улетучивается. Меня озадачивает тот факт, что многие воспринимают эти препятствия, требующие преодоления ограничений инструмента, как «увлекательный» квест, после чего преподносят это как свидетельство крутизны инструмента.

Я осознаю, что и в моём любимом Sublime есть немало проблем, но я не пытаюсь выставить их как увлекательные головоломки. Меня просто раздражает отсутствие реально нужных мне инструментов, из-за чего приходится писать плагины или использовать отдельную программу для преобразования текста нужным мне образом.

Этим редактором я пользуюсь уже 15 лет и выбрал его по нескольким причинам. Его хоткеи включают в себя все стандартные комбинации из ОС (что снижает мыслительную нагрузку при переключении между приложениями). Ещё в нём есть мультикурсоры, которые в 99,999% случаев удобнее макросов2, поскольку дают прямую обратную связь. Да и в целом Sublime не создаёт мне лишних загадок, которые приходилось бы решать.

По моему опыту, редакторы вроде vim лучше подходят для простого редактирования, но хуже справляются с масштабными операциями — и я не имею в виду операции типа grep. Поэтому я и прикипел к Sublime. Сколько работал с vim, никогда не получал той же продуктивности от его системы vim motions, какую мне обеспечивает Sublime. И дело здесь не в недостатке опыта.3 Поскольку я практически никогда не пишу код в терминале, потребности в заточенном под него редакторе у меня нет.

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

Инструменты как часть идентичности

И эти споры о предпочтительном редакторе становятся религиозными отчасти потому, что своим выбором вы как бы водружаете флаг, отражающий вашу идентичность. «Хакерский вайб» здесь оказывается уже не просто эстетическим штрихом. Это племенной сигнал, и он является реальной ловушкой. Как только вы начали ассоциировать себя с инструментом, признание его недостатков становится признанием собственных. Поэтому люди не просто терпят эти недостатки, они их защищают и в конечном итоге чествуют как достоинства. Невозможно вести объективный диалог об инструменте с человеком, который сделал этот инструмент частью своей идентичности.

Ощущение продуктивности не равно реальной продуктивности

Шутка про разовый макрос в текстовом редакторе, о которой я упоминал, на самом деле иллюстрирует разрыв между ощущением продуктивности и реальной продуктивностью. Когда решаешь какую-то мудрёную задачу, возникает приятное чувство собственной сообразительности, и это ощущение легко принять за реальный результат. Инструмент, который превращает трудности в героический поступок, а банальную смекалку — в достижение, может казаться «мощным», хотя на деле он просто медленный. Честная проверка заключается не в том, насколько увлечённым или умным вы себя почувствовали, а в реально затраченном времени и количестве совершённых в процессе ошибок. И многие инструменты, которые люди так яростно восхваляют, эту проверку бы не прошли.

Если вашей целью действительно является продуктивность, то нужно пересмотреть собственный взгляд на эти вещи и постараться понять, что именно её вам даёт. Уверен, вы удивитесь, когда откроете глаза.

Терминал против графического интерфейса

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

Один из аргументов тех, кто заявляет о превосходстве TUI над GUI, звучит как: «В них нет навигации с клавиатуры».

Хорошо. Но это не делает приложения с GUI по определению плохими. Это лишь означает, что им недостаёт возможности перемещения с помощью клавиатуры. И нет ничего архисложного в том, чтобы восполнить этот недостаток. Просто большинство разработчиков этим не заморачиваются, зачастую потому, что просто не осознают, насколько эффективнее такая навигация в сравнении с постоянным перекладыванием руки на мышку. Если бы в качестве аргумента звучало, что конкретное приложение с TUI лучше своих GUI-альтернатив, то это уже ближе к истине. Но вот утверждать, что TUI по своей природе лучше GUI, это всё же заблуждение.

Причём заблуждение общее. Люди смотрят на текущее положение дел в той или иной категории инструментов и предполагают, что их текущие недостатки являются неотъемлемыми, хотя на деле никто просто не брался эти инструменты доработать.

Недостаток популярности Linux в качестве десктопной системы

«Год Linux на десктопе всё ещё не наступил4 (а на дворе уже 2026)», и отчасти это объясняется фундаментальной причиной: многие пользователи этой ОС любят ковыряться в конфигурационных файлах, подстраивая систему под себя — это их личная «увлекательная» загадка.

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

Максимальная гибкость настроек должна быть не главной задачей инструмента, а лишь возможностью для случаев, когда это действительно необходимо. Суть создания эргономичного инструмента как раз в том, чтобы предложить удачные предустановки и сохранить лазейки для кастомизации там, где это возможно или необходимо.

Вся эта излишняя сложность5 характерна для большинства программистов и технарей, так как придаёт им странное ощущение безопасности.

Закладывание в продукт грамотных базовых настроек является прямой обязанностью разработчика. Вот только мы, являясь теми самыми разработчиками, почему-то склонны перекладывать эту заботу на пользователя, который должен всё настроить, причесать и заучить. Значительная часть этой заботы в реальности происходит из того, что разработчик просто не желает брать на себя принятие решений. «Гибкая настройка» зачастую оказывается лишь оправданием для поставки продукта без собственного видения и взваливания всех последующих хлопот на ваши плечи. Проработка базовых настроек — это определённая форма уважения ко времени конечного пользователя. Разработчик в этом случае дважды осмысляет свои решения, чтобы это не пришлось делать тысячам будущих пользователей. При этом в структуру инструмента также нужно закладывать лазейки для кастомизации. Они как раз и пригодятся тому меньшинству, которое ищет что-то необычное. В то же время, они не должны подменять собой грамотную реализацию базовых сценариев.

Высокий порог освоения как «фича»

В качестве ещё одного аргумента часто звучит то, что сложность — это намеренный критерий. Предполагается, что она отфильтровывает тех, кто настроен несерьёзно, и когда вы осиливаете этот барьер входа, то оказываетесь вознаграждены на всю оставшуюся жизнь. Но барьер входа — это лишние затраты для пользователя, а не заслуга разработчика. В теории эти затраты вполне могут оказаться оправданными, но результатом должна быть истинная продуктивность, а не просто удовлетворение от преодоления. Зачастую же такие невосполнимые затраты преподносятся как заслуга: «Я потратил месяцы на освоение этого инструмента, и теперь вы должны проследовать по моим стопам». Здесь мы снова ввязываемся в игру-загадку, только на сей раз разгадываем сам инструмент.

Заключение

В этой статье я высказался не против каких-то отдельных инструментов, а против модели мышления. Можете использовать хоть vim, хоть emacs, хоть Sublime — главное, чтобы этот инструмент незаметно растворялся на заднем плане, не отвлекая вас от основной работы. В этом и заключается весь тест, и он у каждого свой. Я критикую не конкретный выбор, а те мифы, которыми он обрастает: когда люди преподносят недостатки как фичи, вложенные усилия по преодолению проблем — как заслугу, или даже делают инструмент частью самих себя.

Самый очевидный признак того, что инструмент действительно вам служит — это когда вы перестаёте его замечать. Тогда вам уже не нужно чествовать его недостатки, потому что вы не превращаете их преодоление в своё увлечение. Вместо этого вы лишь слегка раздражаетесь и находите обходные пути. Вы не бросаетесь слепо на его защиту, потому что на кону не стоит часть вашей личной идентичности. И вы не принимаете ощущение собственной смекалки за показатель продуктивности, потому что на личном опыте ощутили разницу.

Так что наслаждайтесь вашими инструментами всеми возможными способами. Главное — будьте честны насчёт того, что в них действительно хорошо, а что вы сами себя уговорили полюбить. Лучший инструмент — это не тот, вокруг которого сложилась красивая история, а тот, про который вы забываете в процессе работы.

Хороший инструмент должен быть незаметным, и создание таких инструментов является главной задачей разработчика.

Сноски

1. Это лишь пример, который применим и к другим редакторам.

2. За последние лет десять макрос мне понадобился всего пару раз. Причём в обоих случаях его настройка заняла больше времени, чем я бы потратил на написание скрипта.

3. Хотя с годами я многое из vim motions позабыл, потому что пользуюсь этими командами редко, да и не пригождаются они.

4. Я понимаю, что здесь обязательно возникнут реплики в духе «Linux — это ядро, а ОС — это [вставьте имя дистрибутива]». Простите, но большинство людей рассуждают о Linux не так, и меня не волнует ваше буквоедство, от которого нет толку. Особенно с учётом того, что для критики этого тезиса вам сначала следовало бы понять, о чём вообще идёт речь.

5. Характеристики, которые проявляются у объекта условно и могут меняться без изменения его основной сути.

Комментарии (46)


  1. mikhailgames
    26.07.2026 11:06

    Полностью согласен. Я пишу в VS Code: написал код, нажал Ctrl+S и готово. Зачем вообще добровольно выбирать программы, которые усложняют работу на ровном месте, если инструмент должен просто помогать?


    1. ImagineTables
      26.07.2026 11:06

      А кто-то может спросить: зачем VS Code с его command palette вместо меню и тулбаров (как у VS) усложняет работу на ровном месте? Меню и тулбары проще. Хотя бы тем, что всё на них видишь сразу, и они не заставляют запоминать вообще ничего, даже первые буквы команд. А Ctrl + S работает и там, и там, и много где ещё, это не показатель.


      1. RulenBagdasis
        26.07.2026 11:06

        Не проще, а привычнее конкретно вам. Развесистые многоуровневые меню, это крайне неудобно, приходится запоминать, где что нахонится. Это поняли даже в майкрософт, отказавшись от кустистых меню в офисе, но и там получилось не очень. Нажать хоткей, начать набирать что ты хочень и сразу получить искомое - вот это, действительно, просто и удобно.


    1. krendelbok
      26.07.2026 11:06

      А зачем делать работу? Мне вот непонятно совсем эта дурацкая мантра. Мне вот работа скучная до скрипа зубов. Одни и те же задачи и так по кругу. Вот пока такие “погромисты” пишут код, я успею за 5 минут сделать ту же работу и остальное время поделаю что-то интересное для себя.


  1. JBFW
    26.07.2026 11:06

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

    TUI удобен не потому, что он хакерский, а потому что в большинстве случаев быстрее и достаточен. Настройки ОС, скрипты , ssh и тот же vim живут в терминале. А вот терминалы прекрасно живут в окошках.

    Линукс удобнее не потому что он хакерский, а потому что он лучше настраивается под задачи. Единственный нюанс - это надо уметь )

    А в целом статья похожа на ии-пересказ "приглашения к флуду" из RU.OS.CMP одного популярного когда-то автора.


    1. vorant
      26.07.2026 11:06

      Автор не смог освоить вим и вместо того чтобы просто с этим смириться и забыть, он написал простыню о том что вим «плохой».

      Но так как автор довольно образован и воспитан, то сделал это иносказательно))


      1. Imaginarium
        26.07.2026 11:06

        Нет. Он не критикует vim. Он критикует вот этот вид подход "фу, ниасилил", свойственный людям, которым нечем заняться у которых слишком много свободного времени и трату которого на бесконечное полирование конфигов они почему-то почитают за высшую доблесть.


        1. vorant
          26.07.2026 11:06

          Т.е. завидует людям у которых есть время и желание этим заниматься?)


      1. Fedorkov
        26.07.2026 11:06

        Автор не смог освоить вим

        Это аргумент про истинного шотландца.

        Я тоже несколько месяцев пользовался исключительно вимом, выучил несколько десятков команд и настроил несколько плагинов, но в конечном счёте вся польза свелась к возможности править конфиги по ssh без переключения на nano.

        Этого тоже недостаточно, чтобы сказать, что я освоил vim? Если нет, то это как раз аргумент в пользу всего, сказанного автором.


    1. timon_18
      26.07.2026 11:06

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


      1. Imaginarium
        26.07.2026 11:06

        Настроить правильно и хорошо инструмент – это очень нетривиальная задача, которую можно решить, когда есть большой опыт в использовании разных инструментов на различных, но похожих/смнжеых задачах. А откуда он возьмётся, если человек первый раз начинает заниматься темой или только что пришел в профессию? Или просто привык к другому ккладу работы?

        И кто сказал, что сам справишься лучше, чем человек, который потратил тысячи часов на изучение пользовательского опыта, эргономику и планировании настроек на основе них?

        Это всё равно, что сказать пианисту, что плевать как он там играет, и он ненастоящий пианист, если сам не может себе собрать и настроить рояль перед выступлением. Это ж бред.


        1. timon_18
          26.07.2026 11:06

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

          Мне в vscode было неудобно пользоваться древом папок и файлов, а также было неудобно переключаться между кучей разных репозиториев - а по работе это приходилось делать, когда задача затрагивает несколько реп. В том же nvim я смог настроить всё так, чтобы древо папок у меня было не отдельным, а вызывалось нажатием клавиш в том же окне либо просто через поиск по названиям файлов. Также сочетанием клавиш настроил переключение между репозиториями. И для меня это оказалось удобнее, и этого я не смог нормально настроить в vscode. Не то чтобы я прям собрал рояль с нуля, я просто установил дополнения, сделанные другими людьми.

          Для одних удобно одно, для других - другое. Так что не вижу проблем в том, что кому-то удобнее работать в vscode, а кому-то - в vim или emacs, да хоть ed.


          1. timon_18
            26.07.2026 11:06

            Настоящие программисты
            Настоящие программисты


    1. Astrowalk
      26.07.2026 11:06

      Мне кажется, бесконечные споры между вимерами и остальными проистекают от того, что все люди разные. Джеф Раскин в своей книге «Интерфейс» обосновал фундаментальный недостаток модального интерфейса (когда нажатие одной и той же клавиши может вызвать радикально разные действия) тем, что он непрозрачный, считая прозрачность важнейшим достоинством любого интерфейса. Но существование множества людей, использующих Vim, доказывает, что модальность многим не мешает, а помогает.

      Лично я, задолго до прочтения книги Раскина, перешёл на Emacs с Vim, обнаружив, что имею тенденцию работать только в Insert-режиме, перенося туда многие биндинги из модального. То есть модальность мне оказалась чужда.


    1. viktorov_aa
      26.07.2026 11:06

      Но можно же почти в любой современной IDE выбрать vim like режим работы с текстом и наслаждаться. Обязательно ли использовать именно Vim и терминал ?)


  1. eimrine
    26.07.2026 11:06

    Один из аргументов тех, кто заявляет о превосходстве TUI над GUI, звучит как: «В них нет навигации с клавиатуры».

    Хорошо. Но это не делает приложения с GUI по определению плохими. Это лишь означает, что им недостаёт возможности перемещения с помощью клавиатуры. И нет ничего архисложного в том, чтобы восполнить этот недостаток. Просто большинство разработчиков этим не заморачиваются, зачастую потому, что просто не осознают, насколько эффективнее такая навигация в сравнении с постоянным перекладыванием руки на мышку. Если бы в качестве аргумента звучало, что конкретное приложение с TUI лучше своих GUI-альтернатив, то это уже ближе к истине. Но вот утверждать, что TUI по своей природе лучше GUI, это всё же заблуждение.

    Ну, и как вы сделаете в GUI создание новой строчки при помощи команды o? Кнопка Enter разорвёт текущую строку если курсор не строго на последнем символе. На ум приходят только Ctrl-Shift-o, которое в вашем любимом Sublime, кстати, незанято, и как логичное продолжение идеи Alt-Ctrl-Shift-o для более редкого кейса создания строчки не ниже строчки с курсором, а выше (аналог вимовского O). А если хочется начать строчку не на сразу следующей строке, а через 10 строчек снизу? Получается, нужно двойное кастование а-ля Ctrl-k Ctrl-b для того чтобы убрать боковую панель в Sublime. Реализовать не архи-сложно, вот только пользоваться этим не будет ни один мышевоз - они кликнут мышкой и нажмут Enter.

    А вимер сделает это одним из нескольких способов которые прошиты в том же хранилище мышечной памяти, где у вимера хранятся навыки слепой 10-пальцевой печати. Поэтому, конкретное "приложение с TUI" Vim лучше своих GUI-альтернатив.


    1. elnihilis
      26.07.2026 11:06

      Ну, и как вы сделаете в GUI создание новой строчки при помощи команды o?

      А в чём сокровенный смысл делать это именно “при помощи команды o”? В IDE от JetBrains это делается на Shift-Enter, в Sublime и VSCode на Crtl-Enter

      для более редкого кейса создания строчки не ниже строчки с курсором, а выше

      Во всех трёх вышеуказанных это Shift-Ctrl-Enter

      если хочется начать строчку не на сразу следующей строке, а через 10 строчек снизу?

      Очень много раз слышал этот аргумент, но на практике ни разу мне почему-то этого не хотелось. Даже в Vim, который я тоже использую. “После текущего блока” ещё возможно (для этого есть переход к концу блока, и нужно оно очень эпизодически), но никогда “через N строк”


      1. eimrine
        26.07.2026 11:06

        А в чём сокровенный смысл делать это именно “при помощи команды o”?

        Не знал что эту киллер-фичу таки имплементировали в GUI, спасибо за уточнение.

        Сокровенный смысл в том чтобы пальцы не покидали home row. Я изучил слепую печать когда узнал про vim, ведь я привёл только одну команду которую вы вызываете через контролы и шифты, а они там все такие - заточены на запоминание не через визуал, а тактильное. Часто используемые команды сидят в подкорке, для редкоиспользуемых всегда есть какая-то мнемоника-зацепка.

        Дополнительный смысл в том что есть возможность писать макросы которые будут использовать редактор ровно на том же языке, что и юзер. То есть,человек написавший макрос в vim не просто написал макрос - он ещё и расширил своё владение редактором.

        Ещё один дополнительный смысл в том что команды vim не поменяются даже когда конкретно имплементация от покинувшего нас Bram Moolenaar перестанет развиваться - это вполне считается за полноценный ЯП узкого назначения.

        Очень много раз слышал этот аргумент, но на практике ни разу мне почему-то этого не хотелось.

        никогда “через N строк”

        Не может быть чтобы вам никогда не хотелось применить какую-либо команду N раз, я просто в это не верю. То что в других редакторах делается через макросы или просто многократное тыканье, здесь делается по-программистски. Работа в GUI текстовых редакторах для меня выглядит как воплощение такой известной шутки как "китайский код" именно из-за отсутствия функционала который вам не нужен.

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


        1. elnihilis
          26.07.2026 11:06

          Честно, не хочется уходить в споры про подходы, я лишь указал, что пример с o неудачный. Когда-то пробовал Vim использовать в качестве основного редактора, но всё-таки работа с кодом как с кодом, а не текстом, мне ближе

          Сокровенный смысл в том чтобы пальцы не покидали home row

          Но на это я таки отвечу. Всё-таки сам из консольных редакторов до сих пор предпочитаю Vim. Вимеры как правило не замечают, и затем не учитывают в своих рассказах, но самая часто используемая клавиша в Vim — это Esc. Не знаю, как у тех, кто приловчился использовать Vim для кодинга, но у меня в нём левая рука home row покидает постоянно. Т.е. у меня переход на новую строку в Vim это зачастую Esc,o, а не просто o, в то время как Shift-Enter нажимается одними мизинцами не уводя никуда руки

          Не может быть чтобы вам никогда не хотелось применить какую-либо команду N раз

          А, я просто не отобразил, что “начать строчку через 10 строчек снизу” было про повторение команд. Хотелось, конечно. В большинстве случаев это решается через мультикурсоры, которые и в статье упоминаются. В частных случаях удобны средства рефакторинга (для переименования сущностей). Несколько раз бывали мысли, что что-то в виме было бы удобнее сделать, но уже не вспомню уже что именно было, с последней такой мысли прошли годы


          1. Sitro23
            26.07.2026 11:06

            С Esc метко подмечено. Действительно испытываешь дискомфорт при покидании home row. Поэтому хочу приобрести сплит-клавиатуру поменьше.


          1. black_warlock_iv
            26.07.2026 11:06

            У меня Escape на месте Caps Lock. Думаю так многие делают.


            1. Sitro23
              26.07.2026 11:06

              У меня там смена языка…


              1. vesper-bot
                26.07.2026 11:06

                а у меня выломанная кнопка. Suum cuique однако.


          1. mike_pol
            26.07.2026 11:06

            это у вас просто кнопка esc не там расположена ) Сплит и 3 кнопки на нем под большими пальцами решают эту проблему (и еще необходимость переносить руку на клавиши курсора, что было самой бесячей штукой для меня в стандартных клавиатурах)


          1. krendelbok
            26.07.2026 11:06

            но самая часто используемая клавиша в Vim — это Esc. Не знаю, как у тех, кто приловчился использовать Vim для кодинга, но у меня в нём левая рука home row покидает постоянно

            Зачем? Есть спец программы для любых ОС, чтобы макросы, комбо вводить. Есть сплит клавиатуры в конце концов. У меня Esc и отдельно кнопкой, отдельно комбинацией V+O(там где у меня большие пальцы) а так же на тап-денс на даблклике. Кто ищет - тот найдет, кому мешает, способ найдется


    1. JBFW
      26.07.2026 11:06

      Vim - зло )

      Когда к нему привыкаешь - все остальные редакторы кажутся жутко неудобными.
      Даже такой как nano, который сейчас суют в каждый "пример правки конфига для начинающих".

      А вот как начать строчку на 10 строк ниже несколькими способами - кроме 10jo ничего не приходит в голову.
      Ну или 10-стрелка-o, что то же самое.


      1. randomsimplenumber
        26.07.2026 11:06

        А вот как начать строчку на 10 строк ниже

        Обычно нужно начать строчку в нужном месте. Сосчитать заранее сколько до того места строк/слов/символов .. серьезно?? О_о


        1. JBFW
          26.07.2026 11:06

          Это да, обычно полезнее что-то типа %o - начать строку после блока, функции, или %O - дописать внутри

          А вот "перейти на 10 строк ниже" - само по себе удобно. Не на page, не на 1 - а на 10.


      1. SabMakc
        26.07.2026 11:06

        Ну да. А vim в качестве “редактора для правки конфига для начинающих” - это прям эталон. Нашел выход - уже молодец. А если при этом еще и файл сумел сохранить непокореженным…


        1. JBFW
          26.07.2026 11:06

          Если при этом не начинать паниковать и лупить по клавиатуре всеми 10 пальцами в попытке выбраться из западни - то покорежить файл не так уж и просто


          1. SabMakc
            26.07.2026 11:06

            Это скорее заслуга того, что сохранить все-таки сложнее, чем выйти )))

            Выход можно нагуглить, можно Ctrl-Z нажать, можно в соседнем терминале kill сделать или просто ребутнуться, в конце концов.

            Т.е. даже для неопытного пользователя доступны разные пути выхода.


      1. vesper-bot
        26.07.2026 11:06

        мда, я в vim’е пользуюсь всего тремя командами - i, dd и esc:wq или esc:q! если что-то запорол. про повтор и hjkl вроде помню, но не пользуюсь, а про “о” вообще первый раз слышу. А, ну ещё “a” - добавить в конец строки, которую кстати вполне легко использовать вместо о - a(enter) поехали. Vim - зло. :)


    1. viktorov_aa
      26.07.2026 11:06

      Почти все популярные ide позволяют использовать Vim like редактирование текста или из коробки или через плагин. Так что, в VS Code создание новой строчки при помощи команды o работает точно так же, как в Vim без всяких проблем. Как и почти все популярные vim команды. А уж если прям надо 100%vim, то можно поднять vim сервер который будет редактировать код, а дальше все тот же красивый и удобный GUI


  1. Cheater
    26.07.2026 11:06

    Ещё в нём есть мультикурсоры, которые в 99,999% случаев удобнее макросов, поскольку дают прямую обратную связь

    Ложная дихотомия. Мультикурсоры не выступают конкурентом ни макросам, ни модальному редактированию. Это просто механизм позиционирования курсора (курсоров). Они есть в модальных редакторах, например kakoune, и в виде вим плагинов. Вот видео где человек применяет мультикурсоры в kakoune:

    https://www.reddit.com/r/kakoune/comments/io80xt/i_like_multiple_cursorsselections/

    Ну и макросы (и их более простая и распространённая форма, команда “.”) умеют не только вводить один и тот же текст во многих местах, но и повторять любое изменение. Вставку из буфера, редактирование слова, что угодно. С обратной связью тоже не вижу большой проблемы, мне лично проще например 10 раз переместиться в файле и нажать точку (как правило это тупо A "new text" esc j . j . j . j …), даёт полный контроль над изменением на каждом шаге и делается ненамного медленнее.


  1. RulenBagdasis
    26.07.2026 11:06

    отчасти это объясняется фундаментальной причиной: многие пользователи этой ОС любят ковыряться в конфигурационных файлах, подстраивая систему под себя — это их личная «увлекательная» загадка. Я и сам прошёл через этот этап. Но со временем для меня стало важнее, чтобы система просто работала. Тратить часы (а то и дни) на настройку я больше не желаю. Мне нужно, чтобы базовые установки были достаточно хороши и просто работали. А когда мне вдруг нужно подстроить какую-то деталь, на это должны уходить считаные секунды.

    20 лет сижу на линухе и не понимаю этих аргументов из 2005. Уже давно не надо ни в каких конфигурационных файлах ковыряться. Линух просто ставится и работает. Это винду надо после установки настраивать, линух не надо.

    Ковыряются в файлах в 2 случаях:

    1. Человек сам этого хочет.

    2. Человек купил несовместимое оборудавание и пытается теперь со всем этим взлететь.


    1. Newbilius
      26.07.2026 11:06

      1 - аналогичен для Винды. Большинство пользователей просто установило и работает)

      2 - актуально для Линукса только - на винде купить "несовместимое" оборудование довольно сложно, если оно было выпущено хотя бы в последние 10-15 лет - проблем не будет)


      1. JBFW
        26.07.2026 11:06

        Тут просто вопрос восприятия компьютера:

        Для кого-то это личный автомобиль: вот у него есть руль, педали, может даже ручная коробка скоростей, если сделать вот так - он едет так, если иначе - то по-другому.
        Минусы: надо уметь ездить, знать ПДД, желательно понимать режимы работы двигателя (и чем бензиновый отличается от дизельного, гибрида и электрички, кроме топлива).

        Для кого-то это такси: "едем в магазин!" - а как едем, сколько по времени, по какой дороге, приедем туда или в другое место - это уже пусть водитель такси решает, у меня лапки.
        Минусы: неконтролируемое поведение, неожиданные отказы, возможные непрошенные рассуждения водителя за ваши же деньги.


      1. RulenBagdasis
        26.07.2026 11:06

        Когда я прошлый раз пожаловался на то, что винда после установки нещадно лагает и даёт задержку в 1-2 секунды при открытии окна браузера или картинки, мне долго объясняли что я ламер, винду надо настраивать, что-то там с индексированием делать, отключать телеметрию, отключать раздражающие требования создать облачный аккаунт, идти перенастраивать обновления, чтобы они не мешали работать и т.д.

        В линухе всё работает из коробки, обновления не мешают жить, ставятся в фоне, браузеры и картинки открываются мгновенно без бесячих лагов и доп настроек. Комп один и тот же, дуалбут. Компу год, не супертоп, но сиииильно выше среднего. А самое смешное, что когда я позвал виндоюзера посмотреть и дать совет, он сказал: ты выдумываешь, ничего не лагает, всё летает. Вы просто привыкли к этим лагам, смирились с ними и научились их незамечать. А мне после нормальной ОС тяжело с таким работать. Я не могу привыкнуть к лагам, у меня в голове не укладывается, как это я включаю (или выключаю) комп, а ОС мне говорит, чтобы я пошёл погулял, потому что она будет обновления ставить, криворукие разрабы за 30 лет не осилили научить её это в фоне делать и т.д.

        актуально для Линукса только - на винде купить “несовместимое” оборудование довольно сложно

        Да ладно. Вчера на реддите читал жалобы человека, который установил на ноут вин10, у него отвалился вайфай и мышка (!). И этот гемор в винде всю дорогу, старое оборудование не работает на новых виндах, новое на старых, копроэкономика требует обновлять всё оборудование вместе с ОС.


    1. SabMakc
      26.07.2026 11:06

      Да, “поставил и работает” - в абсолютном большинстве случаев именно так. Но и в абсолютном большинстве случаев найдется железка, которая просто не заработала как надо “из коробки”.

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

      И настроить эти вещи может быть достаточно нетривиально лаже для достаточно опытного linux-пользователя.


      1. RulenBagdasis
        26.07.2026 11:06

        Ни разу за 20 лет у меня не было железок, которые не задаботали. Потому что я при покупке любой железки иду и проверяю совместимость. Это очень просто. Это как с машиной, если ты планируешь лить в бак дизель, нужно просто купить авто с дизельным двигателем. Не надо покупать с бензиновым и писать потом в энторнетах, какой кал это ваше дизтопливо.


        1. SabMakc
          26.07.2026 11:06

          “железка не заработала” это далеко не тоже самое, что “заработала сразу”, и не пришлось шаманить.

          И да, можно проверять совместимость. Но даже если совместимость официально заявлена, иногда оказывается, что это “работает только вон в том кастомном дистрибутиве 5-летней давности” или “вот софт для linux, про который мы лет 10 не вспоминали, развлекайся”.

          Так что тут очень важно именно реальное положение дел и личный опыт, а не заявления производителя. Отзывы помогают, но тоже надо осторожно к ним подходить - “все работает” и “ничего не работает” могут означать от “что-то не завелось сразу” до “завелось хоть что-то”.


    1. Fedorkov
      26.07.2026 11:06

      Линух просто ставится и работает. Это винду надо после установки настраивать, линух не надо.

      Я бы сказал, что к 2026 году винда и мейнстримный линукс достигли паритета в этом аспекте.

      Win 11 напоминает мне живой организм, эволюционировавший до состояния, который никто не в состоянии понять, но за счёт многократного резервирования всех точек отказа его очень сложно сломать случайно.


  1. Jijiki
    26.07.2026 11:06

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

    *поидее можно забыть название сниппета, ну тогда можно сделать сниппет на создание файла где сверху, будут продублированы названия сниппетов и их функционал, поидее норм(как типо твой личный кор концепт к файлам и организации, типо тут так, тут так, там так).


  1. nomorewar
    26.07.2026 11:06

    только потому, что он дарит им некий «хакерский вайб».

    Я сейчас страшную вещь скажу: есть люди, я подозреваю, что их больше единицы, которым просто нравятся вайбы программирования. Хакерские или еще какие. И им насрать на продуктивность, на деньги, на бизнесовый value. Они просто кайфуют когда кодят, особенно используя свои любимые инструменты. И поэтому тейк: «ощущать продуктивность != быть продуктивным» на 100% верный и на те же 100% нерелевантный в данном вопросе. Продуктивность - пусть менеджеры заботятся об этом. Ощущения - вот что я ищу и получаю от программирования.

    ПС: чем дольше живу, тем больше размышляю на тему того, что ощущения могут быть важнее артефактов реальности. Взять Мерседес. Хорошая машина. Один в ней будет счастлив, другой - плеваться на ширпотребский уровень после Феррари. Получается, что ощущения от машины важнее, чем сама машина в вакууме.


  1. zgwerby
    26.07.2026 11:06

    А вместо манифеста получились отрывки из «Хроники оскуфения» (том 1 641 640, страница 2–730) и «Как я полюбил продукцию Эппол и начал жить» (стр 5–29 и 34–35) в переводе нытья, написанного в бложеке «для себя». Это нормально, это у всех с возрастом так, появляются сложности с освоением нового, мышечная память закостеневает на «Альт‑Шифт» или «Шифт‑Контрол», нейронные связи вырождаются и плохо перестают обрабатывать различие между привычным поведением и новым, но автор явно решил поиграться в ментора там, где это делать не стоит. По большей части для себя разберу это нытьё.

    Хороший инструмент должен быть Х

    Инструмент {вещь, навык, программа} никому в этой жизни ничего не должен, кроме решения задачи, заложенной разработчиком. Хороший инструмент (в заданных условиях) решает задачу хорошо, плохой — плохо или создаёт тучу других проблем («здравствуйте, меня зовут капитан Очевидность и сегодня я буду рассказывать вам...»), а отличный — ещё бонусом может решить пачку других задач, при этом не убив никого.

    Дядя сравнивает взятый по другому критерию vim и свой саблайм

    «Хроники», глава 2: «Что такое неправильное?». Или „как я начал ворчать на тех, кто использует „неправильный“ инструмент“.
    И нет, подчёркнутое в конце „Используй что хочешь, мне все равно“ не снимает ворчания, что „ууух, маладёшь, в хакиров играется“ и „это не я не смог освоить вим, это программа требует игр“. Самое смешное, что саблайм требует буквально таких же игрищ, когда требуется что‑то нестандартное, но привыкнув к инструменту дядя убрал это на уровень ниже радаров и почему‑то молчит

    Дядя открывает для себя явление неприятия чужок крЫтики.

    «Хроники», глава 3: «Почему они используют неправильное?».
    Ужос! Оказывается если со стороны Y начать критиковать Х, то они, пользователи Х, меж собой критикуя недостатки Х, начнут защищать Х! Что деется, бабоньки! Как это не называй, хоть «защитой части идентичности», хоть «племенным сигналом». Смешнее всего, что пользователи, выбравшие Х самостоятельно и закрывающие глаза на недостатки ради некоторого набора уникальных фич у таких людей идут в первых рядах, обгоняя даже реальных wannabe, которые если и ставят, то ради красивых скриншотов и «невзначай открытого в фоне».

    Дядя объясняет что ваша продуктивность - не продуктивность, а вот его “продуктивность” - откройте глаза, люди! - это кого надо продуктивная продуктивность,

    «Хроники», глава 8: «Продуктивность, пиво и ты».
    «Ты не должен чувствовать удовлетворение от решённой задачи — удовольствие это грех, ты должен максимально быстро решать задачи в своём кьюбикле, горит KPI!» — кричит автор текста, если слить всю воду. Ну что сказать, тут уже видно начало отмирания нейронов в головном мозге субъекта: обучение с подкреплением (то есть добавление новых сценариев использования инструмента), положительная обратная связь (с выбросом реально правильного дофамина) и обогащение пользовательского опыта объявляются плохими и недостойным «правильной» (механистической, количественной) продуктивности. Продуктивность в чем меряешь, джинджерБилл, в line of code или в количестве знаков в минуту?

    Дядя философствует о “а не все ли равно” с припиской “а вот если к гую прикрутить клавиши, то начнется благорастворение воздусей…”

    «Хроники», глава 7: «Как сохранить ЭГО там, где трудно».
    «Все ваши игрушки точно такие же, как и мои, только мне нужно на изоленту посадить эту педаль, диммер, три геркона и вывести динамик» — угу, да. А я задам встречный вопрос: а точно ли никто не брался, или брался, но для GUI это оказалось ненужной опцией, когда в TUI — основной способ интеракции?

    Дядя с видом гуру лезет в десктопный линукс и объясняет неофитам, что линукс нужно было делать с одной кнопкой “Зделоть зашебесь”, и тогда бы его доля была бы 145.9%

    «Хроники», глава 12: «Почему я прав: практические примеры.» и «Как я полюбил…» (все страницы).
    Здесь дядя путает причину, следствие, здравый смысл и пугает этим логику. Линукс — это про опенсорц, тут тебе вообще в принципе никто ничего не обязан, особенно делать «зашибись из коробки». Для зашибись‑из‑коробки есть макос и две особых сборочки линукса от гугла: андроид и хромос. Там ты избавлен от (любых) мук настройки (в двух последних — даже рут для тебя недоступен, чтобы точно ничего не настроил, а для лазейки — нужно взламывать устройство и рутовать его, что обычно обнуляет любую гарантию и даёт повод поддержке слать в далёкие дали). Вот только за первую надо платить, в том числе и железом и экосистемой (а это куда дороже самой ОС), а вторые специально ради таких как ты урезаны.

    Дядя выступает категорически против любого порога вхождения, ведь ему уже тяжело его преодолевать

    «Хроники», глава 16: «В смысле „не любят“?».
    И правильно делают, что ставят высокие пороги вхождения. Вернее даже не так — пороги вырастают сами, по мере увеличения количества возможностей: однооконная утилита с кнопкой «КликМи» куда как легче для освоения терминала для работы с RS-232 портом, но ограничена одним, максимум двумя сценариями, в то время как терминал, умеющий работать со всеми устройствами на этом порту (как минимум — дающий возможность ввода и правильной отправки команды из строки с учётом скоростей и проверок) — уже покрывает тысячу сценариев: от простого пинга, до полноценного обмена данными. Но сам требует по себе знаний о работе порта, о системе команд, о шестнадцатеричной системе счисления, в конце‑концов. Это нормально. Ненормально, что скуфоиды требуют его постоянно понизить, ибо им сложна — от этого софт деградирует до однокнопочной, ненужной ни для чего однооконной утилиты с кнопкой «КликМи».

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

    Ну что сказать, делайте хорошо - хорошо будет, плохо не делайте - плохо не будет. Как хорошо, что разрабы редко когда слушают подобное и у нас всё-таки появляется что-то, кроме клона “Лексикона”, Ворда 6.0 и прочего любимого этой аудиторией софта.


  1. makornobbe
    26.07.2026 11:06

    Мне при работе необходимо менять отдельные сегменты или строки кода, пока я ещё помню, что хотел сделать. Vim помогает сделать именно это гораздо быстрее, незаметнее и безболезненно. Не скажу что часто, но в том же VS Code я бывало не реализовывал задуманное из-за сложности редактирования, останавливаясь на полпути и возвращая всё обратно, поскольку терял идею пока кликал по стрелочкам. Это мой личной опыт и мои особенности.

    Если инструмент нужен только один раз, то не согласиться с автором сложно. Планируете использовать по восемь часов в день - извольте прочитать инструкцию.