2 pontos por GN⁺ 2023-08-11 | 1 comentários | Compartilhar no WhatsApp
  • Bram Moolenaar deixou no código-fonte, na documentação e na lista vim_dev do Vim uma postura centrada na resolução de problemas, e o Neovim se vê como um projeto que dá continuidade ao legado do Vim e de Bram
  • A força de Bram se revelava mais em formas de avançar a compreensão do problema do que em respostas ríspidas ou julgamentos pessoais, e ele é lembrado como alguém que criou valor silencioso, mas profundo
  • O princípio Problem/Solution nas mensagens de commit do Vim é simples, mas eficaz, e também se refletia em sua atitude no apoio a Uganda, gerenciando recursos diretamente em vez de tratá-los de forma abstrata
  • Como derivado do Vim, o Neovim aceita ao mesmo tempo a continuidade e a divergência, tomando manutenção, documentação, extensibilidade e embedding como eixos centrais a serem levados adiante
  • A direção que o Neovim busca herdar não é a novidade por si só, mas algo mais próximo do pragmatismo: não esquecer o objetivo e comparar as ações com os resultados

A forma de Bram resolver problemas

  • Bram demonstrou, além de habilidade técnica artesanal, uma atitude humilde e uma forma de resolver problemas ancorada na realidade
  • Em vim_dev, no código-fonte e na documentação do Vim, permanecem não apenas as palavras e decisões de Bram, mas também as escolhas que ele deixou de fazer
    • Ele não se apoiava em expressões sensacionalistas nem em julgamentos pessoais
    • Mesmo quando era tratado com grosseria, muitas vezes respondia de um modo que ajudava a entender melhor o problema a ser resolvido
  • O lema Problem/Solution nas mensagens de commit do Vim funciona como um princípio de trabalho simples, mas poderoso
  • Bram também escolheu, em seu trabalho de ajuda às pessoas de Uganda, gerenciar recursos diretamente em vez de tratá-los de forma abstrata
  • A humildade é uma forma de pensar que faz as tentativas passarem por restrições voluntárias, como uma “cintura estreita”, e pode produzir resultados mais componíveis e poderosos
    • Plugins como unimpaired são exemplos de variações desse fluxo
  • A utilidade de softwares de estilo de vida como Emacs e Vim está menos na ideologia e mais em um ecossistema vivo e em um impulso que se sustenta por conta própria

O que o Neovim herdou e onde ele se separa

  • Desde o início, o Neovim se posicionou como um derivado do Vim, tendo ao mesmo tempo a característica de continuar o Vim e de se diferenciar dele
  • Do ponto de vista de que um fork cria energia em vez de destruí-la, mesmo que não seja possível transmitir o próprio Vim sem Bram, alguns elementos essenciais podem continuar sendo levados adiante
  • Manutenção e documentação

    • Maintenance: experimentação é necessária, e a destruição criativa e os fracassos brincalhões também têm valor, mas o Neovim não representa a “neomania”, isto é, o desejo pelo novo
    • Documentation: o hábito de documentação do Vim é evidente e é uma das grandes vantagens que o Nvim obteve ao ser construído sobre o Vim
  • Extensibilidade e embedding

    • Extensibility: o projeto Agide de Bram também buscava uma extensibilidade semelhante à do Neovim, defendendo a abordagem de conectar ferramentas separadas, em vez de uma aplicação única
    • Embedding: :help design-not do Vim aponta para usar o Vim como componente em um shell ou IDE, em vez de transformá-lo em um shell ou sistema operacional
    • Bram não se levava a sério demais e também tinha seu próprio senso de humor
    • O Neovim deve permanecer como um monumento ao Vim e a Bram, mas escolher a praticidade em vez do dogmatismo e revisar suas ações com base nos objetivos e resultados

1 comentários

 
GN⁺ 2023-08-11
Opiniões no Hacker News
  • Agradecimento a Bram
    Uso Vim há mais de 30 anos e, mais recentemente, às vezes também uso Neovim; na faculdade, usei vi em vários sistemas BSD. Usei quase todos os dias úteis ao longo de toda a minha carreira, mas nunca entrei na lista de discussão do Vim, nunca fiz uma pergunta nem enviei um bug report
    Porque nunca precisei. Nunca encontrei um bug, e as dúvidas sempre foram resolvidas com a documentação integrada. Foi um excelente projeto de software liderado por uma pessoa excelente, e uma grande inspiração

    • Há 25 anos, no outono, quando consegui um emprego no departamento de TI da universidade, meu chefe me deu os livros da O'Reilly de Perl e vi, e comecei a programar em servidores Unix. Desde então, usei vi e Vim todos os dias durante toda a minha carreira
    • Já lidei com sistemas de controle complexos, e a documentação era tão boa que sempre era fácil encontrar as informações de que eu precisava
      Em contraste, também houve sistemas relativamente simples sem documentação, ou uma vez em que tive de perguntar e investigar muito mais por causa de uma documentação horrível
  • O Vim tem alma. É uma ferramenta que você continua usando, como um formão herdado do avô
    Mesmo sem o cabo de borracha macio de um produto novo, ele encaixa bem na mão e é confortável. É uma ferramenta com sua própria história
    Lendo estes comentários, parece que o espírito hacker ainda está vivo. As novas empresas jovens avaliadas em dezenas de bilhões de dólares serão substituídas por outras em 10 ou 20 anos, mas o Vim continuará sobrevivendo. Um dia quero criar algo como o meu próprio Vim

    • Só há uma pequena diferença. Se um iniciante pega o formão do avô, ele não fica grudado na mão, exigindo que a pessoa pesquise no Google três palavras mágicas para conseguir soltá-lo
    • Como o frasco de Galadriel, é como uma luz que ilumina lugares escuros quando todas as outras luzes se apagam
  • Depois que Bram faleceu, olhei para trás na minha jornada com o Vim. Nos últimos 10 anos, de projetos universitários à FAANG e a startups onde tudo estava pegando fogo, ele foi o único companheiro profissional que não mudou
    Trabalhos de que me orgulho, trabalhos de que me envergonho, trabalhos que levaram a promoções e trabalhos que levaram a incidentes de milhões de dólares: fiz tudo isso no Vim. Sistemas operacionais, bancos de dados, linguagens de programação, empresas e colegas vêm e vão, mas o Vim sempre ficou
    Agradeço a Bram

  • O texto linkado [0] tem uma captura de tela da atividade de Bram no GitHub e este trecho
    “Talvez o motivo de a notícia da morte de Bram ter me atingido tanto tenha sido o acúmulo de tudo isso. A mensagem da família deixava claro que Bram estava doente. Era uma ‘condição médica que progrediu rapidamente nas últimas semanas’. A maioria das pessoas não sabia disso, e por isso a notícia foi ainda mais surpreendente.”
    “E fiquei ainda mais triste quando alguém apontou a atividade recente de Bram no GitHub.”
    https://github.com/brammool
    [0] https://j11g.com/2023/08/07/the-legacy-of-bram-moolenaar/
    Além disso, olhando a lista de BDFLs na Wikipedia, Bram parece ser a primeira pessoa marcada com †
    https://en.wikipedia.org/wiki/Benevolent_dictator_for_life

  • Hoje vi algo especial na estação de trem de Utrecht, nos Países Baixos. No painel informativo, as letras hjkl apareciam em ordem inversa
    Essas letras indicam em qual área da plataforma você deve entrar. As letras são exibidas de acordo com o comprimento da plataforma e a posição das portas do trem
    https://postimg.cc/mcCWhMXw
    Pareceu uma coincidência enorme, ou talvez haja um fã de Vim na companhia ferroviária holandesa NS que fez essa homenagem a Bram dessa forma

    • Pensando bem, essas letras são consecutivas no alfabeto. Mas falta o I entre H e J, talvez porque pudesse ser confundido com o l minúsculo e por isso tenha sido omitido de propósito
      No fim, pode ter sido coincidência, mas ainda assim foi especial para mim. Nunca tinha visto algo assim numa estação de trem, e de repente apareceu logo na semana seguinte à morte de Bram
    • Não é coincidência nem homenagem. No Reino Unido também é assim há anos. A letra i é facilmente confundida com o número 1 ou com a letra l, então normalmente não é usada para esse tipo de finalidade
    • Eu uso Vim, mas essas letras me fazem pensar antes na home row da digitação por toque do que no Vim
    • Essa sinalização é um indicador de posição que mostra onde o trem vai parar na plataforma
      Vídeo em holandês: https://www.youtube.com/watch?v=JPvh9SaQbUY
  • Uma vez entrevistei um candidato a estágio que se gabou de ter discutido com Bram numa lista de discussão sobre uma possível vulnerabilidade. Bram dizia que não era importante, e esse jovem insistia que era
    Não o contratamos. Lendo os textos em memória de Bram, parece que o Bram de que as pessoas falam era, no bom sentido, o oposto daquele rapaz

    • Fico me perguntando se aquela discussão era sobre o recurso de criptografia/descriptografia automática de arquivos e o fato de Bram não querer usar um algoritmo criptograficamente seguro. Foi uma thread longa e bem acalorada
      Mesmo assim, eu estava do lado de Bram. Esse recurso nunca teve como objetivo oferecer segurança em sentido criptográfico
  • https://en.wikipedia.org/wiki/Benevolent_dictator_for_life tem uma lista de BDFLs. Bram é o primeiro BDFL dessa lista a falecer
    Nos próximos 10 anos, ou depois disso, haverá uma troca de gerações. Faz sentido se preparar; é assim que se preservam o legado e a comunidade
    Fiquei impressionado com a forma como a família e os amigos de Bram estão lidando com isso, respeitando o legado dele e o futuro do Vim

    • Depois que escrevi isto, John Gruber foi adicionado como BDFL do Markdown. É verdade que ele é o criador, mas chamá-lo de BDFL parece um pouco exagerado
  • Entre os textos linkados, gostei mais deste, escrito por Jan van den Berg
    https://j11g.com/2023/08/07/the-legacy-of-bram-moolenaar/
    Uma frase marcante foi: “O Vim é uma obra-prima, uma ferramenta de usinagem brilhante e precisa da qual muito do que é moderno foi talhado”
    E há também este link
    https://m.youtube.com/watch?v=eX9m3g5J-XA
    “7 Habits for Effective Text Editing 2.0”
    Tem 1h20, então seria bom se alguém tivesse uma transcrição ou um resumo. O primeiro comentário foi engraçado: “deixei a reprodução automática ligada enquanto dormia por 7 horas, e fui de Billie Eilish até este vídeo”
    A vida é estranha, mas é por isso que é boa
    Como observação, eu não uso nem (Neo)vim nem Emacs. No momento em que leio a palavra “programável”, eu me afasto. Prefiro configurar por alguns minutos um editor de funções fixas que combine com meu gosto e começar a usar imediatamente. É só uma preferência minha
    Ainda assim, uma boa ferramenta cumpre bem seu propósito. Um mundo com boas ferramentas e com as pessoas que as criaram é um mundo melhor. Às vezes, esse legado, essa filosofia e esse modo de trabalhar continuam vivos no código e na comunidade que ficam. Meus elogios a Bram

    • Não sei se faz sentido competir em torno de textos de homenagem, mas o texto que você postou também foi emocionante. A foto do gráfico de contribuições no GitHub de Bram é inesquecível
    • Se você não gosta da palavra “programável” e quer um editor de funções fixas que combine com seu gosto, talvez o Helix seja o ideal
      Ele usa os atalhos do Kakoune, e para mim faz muito mais sentido do que Vim ou Emacs. Já vem bem configurado por padrão e tem muitos recursos úteis. Uso todos os dias, e é rápido e bom
      Se houver um LSP no PATH, ele o usa automaticamente, então exige pouquíssima configuração. Minha configuração é só o tema e algumas mudanças de estilo; se quiser, pode vê-la aqui: https://github.com/RGBCube/NixOSConfiguration/blob/master/ma...
    • O Vim quase não precisa ser “programado” além de escolher coisas como set nocompatible, set ruler, backspace, indentação e talvez um dos esquemas de cores padrão
      No Neovim, instalei lightline, pathogen, o esquema de cores monokai e mais alguma coisa, provavelmente realce de sintaxe para alguma linguagem um pouco mais incomum
      O ponto central é que o Vim é um editor de funções fixas até você começar a pendurar um monte de coisas nele
    • O material de “7 Habits for Effective Text Editing 2.0” está aqui: https://moolenaar.net/habits_2007.pdf
      Graças a tlamponi [1]: https://news.ycombinator.com/item?id=37013315
  • O Vim realmente teve impacto na minha vida. Usei-o nos últimos 15 anos e, quando recebo um novo host, quase imediatamente coloco set -o vi ou configurações parecidas do psql/ipython nos arquivos rc
    As inúmeras horas que passei no shell ficaram muito mais agradáveis graças ao trabalho de Bram
    Obrigado por postar isto, e que ele descanse em paz

    • Aprender comandos do Vim foi uma das coisas com maior retorno sobre investimento entre tudo que conheço. Foi valioso por anos e provavelmente me economizou centenas de horas de interação com o computador
      Há muito tempo virou memória muscular, e editar texto e mover o cursor na tela agora não exigem nenhum esforço
      É uma das coisas que sempre recomendo a novos programadores. Pode-se dizer que a curva de aprendizado do Vim é íngreme, mas ele faz você enxergar de forma mais eficiente a interação com texto, algo que programadores fazem o tempo todo
      Ativo o modo Vi(m) em todo lugar onde há suporte: no shell e em tudo que usa Readline, no Emacs mudando o padrão com evil-mode etc.
      Interfaces baseadas em modos e comandos mnemônicos combináveis são muito superiores e intuitivos em comparação com a UI de combinações de teclas ao estilo Emacs. Amo o Vim. Foi a ferramenta que me colocou nesse caminho há mais de 20 anos, e ainda a uso todos os dias para edições rápidas. Mas, como IDE, prefiro o Emacs, um ambiente mais extensível. Graças ao evil-mode, tenho o melhor dos dois mundos
      Bram melhorou a vida de inúmeras pessoas e deve ser reconhecido entre os grandes nomes da nossa área. RIP
  • No mundo do software efêmero, o Vim é uma obra-prima atemporal
    Gostaria de ter tido a oportunidade de agradecer diretamente a Bram pelo impacto que ele teve na minha vida e carreira. Acho que eu não teria chegado até aqui sem o Vim

    • Acho que este é um dos pontos importantes do Vim. Quanto mais tempo ele existe, maior a probabilidade de continuar existindo. Ele sobreviveu por mais tempo do que inúmeros editores de texto modernos
      Espero que continue vivo enquanto eu estiver vivo, e também depois disso