2 puan yazan GN⁺ 2023-08-11 | 1 yorum | WhatsApp'ta paylaş
  • Bram Moolenaar, Vim'in kaynak kodu, belgeleri ve vim_dev içinde sorun çözümüne odaklı bir tutum bıraktı; Neovim ise kendini Vim'in ve Bram'ın mirasını sürdüren bir proje olarak görüyor
  • Kaba tepkiler ya da kişisel yargılardan çok, sorunun anlaşılmasını ilerleten yaklaşım Bram'ın güçlü yanı olarak öne çıktı; sessiz ama derin bir değer üretmiş biri olarak hatırlanıyor
  • Vim commit mesajlarındaki Problem/Solution ilkesi basit ama etkili; Uganda'ya destek verirken de kaynakları soyutlamadan doğrudan yönetme tutumuna uzanıyor
  • Neovim, Vim'in bir türevi olarak sürekliliği ve ayrışmayı aynı anda kabul ediyor; bakım, belgeleme, genişletilebilirlik ve gömülebilirliği sürdürecek temel eksenler olarak benimsiyor
  • Neovim'in devralmak istediği yön, yenilik uğruna yenilik değil; hedefi unutmadan eylemleri sonuçlarla karşılaştıran bir pragmatizme daha yakın

Bram'ın bıraktığı sorun çözme biçimi

  • Bram, teknik ustalığın ötesinde alçakgönüllü bir tavır ve gerçeğe bağlı bir sorun çözme yaklaşımı gösterdi
  • vim_dev, Vim kaynak kodu ve belgelerde yalnızca Bram'ın sözleri ve kararları değil, yapmamayı seçtiği şeyler de iz bırakmış durumda
    • Sansasyonel ifadelere ya da kişisel yargılara yaslanmıyordu
    • Kaba muamele gördüğünde bile çoğu zaman, çözülmesi gereken sorunu daha iyi anlamaya yardımcı olacak şekilde karşılık veriyordu
  • Vim commit mesajlarındaki Problem/Solution sloganı, basit ama güçlü bir çalışma ilkesi olarak işliyor
  • Bram, Uganda'daki insanlara yardım etme işinde de kaynakları soyut biçimde ele almak yerine doğrudan yönetmeyi seçti
  • Alçakgönüllülük, girişimleri “dar bel” gibi gönüllü kısıtlamalardan geçiren bir düşünme biçimi; bu da daha birleşebilir ve daha güçlü sonuçlar üretebilir
    • unimpaired gibi eklentiler bu akışın farklı bir yorumu sayılabilir
  • Emacs ve Vim gibi yaşam tarzı yazılımlarının faydası, ideolojiden çok yaşayan ekosistemlerde ve kendi kendini sürdüren itici güçte yatıyor

Neovim'in devraldıkları ve ayrıştığı noktalar

  • Neovim başından beri Vim'in bir türevi olarak konumlandı; hem Vim'in devamı niteliği taşıyor hem de ondan farklılaşan bir karaktere sahip
  • Fork'un enerjiyi yok etmekten çok ürettiği görüşüyle, Bram olmadan Vim'in tamamını aktarmak mümkün olmasa da bazı temel unsurlar sürdürülebilir
  • Bakım ve belgeleme

    • Maintenance: Deney yapmak gerekli; yaratıcı yıkım ve oyunbaz başarısızlıklar da değerli, ancak Neovim, “neomania” denen sırf yenilik arzusunu temsil etmiyor
    • Documentation: Vim'in belgeleme alışkanlığı belirgin ve bu, Nvim'in Vim üzerine inşa edilerek kazandığı en büyük avantajlardan biri
  • Genişletilebilirlik ve gömülebilirlik

    • Extensibility: Bram'ın Agide projesi de Neovim'e benzer bir genişletilebilirliği hedefliyordu; tek bir uygulama yerine ayrı araçların takılıp kullanılmasını öne çıkarıyordu
    • Embedding: Vim'in :help design-not bölümü, Vim'i bir shell ya da işletim sistemine dönüştürmektense shell veya IDE içinde bir bileşen olarak kullanma yönünü anlatıyor
    • Bram kendisini gereğinden fazla ciddiye almıyordu ve kendine özgü bir mizah anlayışına sahipti
    • Neovim, Vim ve Bram için bir anıt olarak kalırken, dogmatizm yerine pratikliği seçmeli ve eylemlerini hedefler ile sonuçlara bakarak yeniden değerlendirmeli

1 yorum

 
GN⁺ 2023-08-11
Hacker News yorumları
  • Bram’a minnettarım
    30 yılı aşkın süredir Vim kullanıyorum; son zamanlarda ara sıra Neovim de kullanıyorum, okulda ise çeşitli BSD sistemlerinde vi kullanmıştım. Kariyerim boyunca neredeyse her iş gününde kullandım ama Vim posta listesine hiç katılmadım, soru sormadım, hata raporu göndermedim
    Çünkü buna gerek olmadı. Hiç bug’la karşılaşmadım ve merak ettiğim şeyler her zaman yerleşik dokümantasyonla çözüldü. Harika bir insanın yönettiği harika bir yazılım projesiydi; büyük bir ilham kaynağı oldu

    • 25 yıl önce sonbaharda, üniversitenin IT departmanında işe girdiğimde yöneticim bana Perl ve vi için O'Reilly kitaplarını verdi; Unix sunucularda programlamaya böyle başladım. O zamandan beri vi ve Vim’i kariyerim boyunca her gün kullandım
    • Karmaşık kontrol sistemleriyle çalıştım; dokümantasyon o kadar iyiydi ki gereken bilgiyi her zaman kolayca bulabildim
      Buna karşılık, nispeten basit sistemlerde bile dokümantasyonun olmadığı ya da bir keresinde berbat dokümantasyon yüzünden çok daha fazla sorgulayıp didik didik etmek zorunda kaldığım oldu
  • Vim’in bir ruhu var. Dedenizden kalma bir keski gibi, kullanmayı sürdürdüğünüz bir araç
    Yeni ürünlerdeki gibi yumuşak kauçuk sapları olmasa da ele iyi oturuyor ve rahat. Kendi geçmişi olan bir araç
    Buradaki yorumlara bakınca hacker ruhunun hâlâ yaşadığını düşünüyorum. Yeni parlayan milyarlarca dolarlık genç şirketler 10-20 yıl sonra başka şeylerle yer değiştirecek, ama Vim yaşamaya devam edecek. Bir gün kendi Vim’im gibi bir şey yapmak istiyorum

    • Ama küçük bir fark var. Acemi biri dedesinin keskisini eline aldığında, o keski eline yapışıp da ancak üç kelimelik sihirli büyüyü Google’da arayınca çıkmaz
    • Galadriel’in şişesi gibi; diğer tüm ışıklar söndüğünde karanlık yerlerde yol gösteren bir ışık sanki
  • Bram’ın vefatından sonra kendi Vim yolculuğuma dönüp baktım. Son 10 yılda üniversite projelerinden FAANG’e, her şeyin alev aldığı startup’lara kadar değişmeyen tek profesyonel yoldaşım oydu
    Gurur duyduğum işler, utandığım işler, terfi getiren işler, milyonlarca dolarlık kesintilere yol açan işler; hepsini Vim’de yaptım. İşletim sistemleri, veritabanları, programlama dilleri, şirketler, iş arkadaşları gelip geçiyor ama Vim hep orada kaldı
    Bram’a teşekkürler

  • Bağlantı verilen yazıda [0] Bram’ın GitHub aktivitelerinin ekran görüntüsü ve şu ifadeler var
    “Bram’ın vefat ettiğini okuduğumda bunun neden beni bu kadar etkilediğini düşündüm; muhtemelen tüm bunların birikmesindendi. Ailesinin mesajında Bram’ın hasta olduğu açıkça yazıyordu. ‘Son birkaç hafta içinde hızla ilerleyen tıbbi bir durum’ deniyordu. Çoğu kişi bunu bilmiyordu; bu yüzden haber daha da şaşırtıcıydı.”
    “Ve biri Bram’ın son GitHub aktivitelerine dikkat çektiğinde daha da üzüldüm.”
    https://github.com/brammool
    [0] https://j11g.com/2023/08/07/the-legacy-of-bram-moolenaar/
    Ayrıca Wikipedia’daki BDFL listesine bakınca Bram, † işareti eklenen ilk kişi gibi görünüyor
    https://en.wikipedia.org/wiki/Benevolent_dictator_for_life

  • Bugün Hollanda’daki Utrecht tren istasyonunda özel bir şey gördüm. Bilgi panosunda hjkl harfleri ters sırayla yazıyordu
    Bu harfler peronda hangi bölgeye girmeniz gerektiğini gösteriyor. Peron uzunluğuna ve tren kapılarının konumuna göre harfler gösteriliyor
    https://postimg.cc/mcCWhMXw
    Ya inanılmaz bir tesadüftü ya da Hollanda demiryolu şirketi NS’de bir Vim hayranı vardı ve Bram’ı bu şekilde anmıştı

    • Düşününce bu harfler alfabede ardışık sayılır. Yalnız H ile J arasındaki I yok; muhtemelen küçük harf l ile karışabileceği için bilerek çıkarılmış olabilir
      Sonuçta tesadüf de olabilir ama yine de benim için özeldi. Daha önce bir tren istasyonunda böyle bir şey görmemiştim; Bram’ın vefatından hemen sonraki hafta birden karşıma çıktı
    • Ne tesadüf ne de anma. Birleşik Krallık’ta da yıllardır aynı şekilde. i harfi 1 rakamı veya l harfiyle kolayca karıştığı için bu tür kullanımlarda genellikle kullanılmaz
    • Vim kullanıyorum ama bu harfler bana Vim’den önce dokunarak yazmanın ana sırasını hatırlatıyor
    • Bu işaret, trenin peronun neresinde duracağını gösteren bir konum göstergesi
      Hollandaca video: https://www.youtube.com/watch?v=JPvh9SaQbUY
  • Bir keresinde stajyer adayıyla mülakat yapmıştım; posta listesinde olası bir güvenlik açığı konusunda Bram’la tartıştığını söyleyerek övünmüştü. Bram bunun önemli olmadığını söylemiş, bu genç arkadaş ise önemli olduğu konusunda ısrar etmişti
    Onu işe almadık. Bram için yazılan anma yazılarına bakınca, insanların anlattığı Bram’ın iyi anlamda o arkadaşın tam tersi olduğunu düşünüyorum

    • Merak ediyorum, o tartışma otomatik dosya şifreleme/şifre çözme özelliğiyle ve Bram’ın kriptografik olarak güvenli bir algoritma kullanmak istememesiyle mi ilgiliydi. Uzun uzun süren ve epey hararetli bir başlıktı
      Yine de ben Bram’ın tarafındaydım. O özellik en başta kriptografik anlamda güvenlik hedeflemiyordu
  • https://en.wikipedia.org/wiki/Benevolent_dictator_for_life adresinde bir BDFL listesi var. Bram, o listede hayatını kaybeden ilk BDFL
    Önümüzdeki 10 yılda, ya da daha sonra, kuşak değişimi gelecek. Hazırlanmak doğru olan; mirası ve topluluğu korumanın yolu da bu
    Bram’ın ailesi ve arkadaşlarının onun mirasına ve Vim’in geleceğine saygı göstererek bu işi ele alış biçimi etkileyiciydi

    • Bunu yazdıktan sonra John Gruber, Markdown’ın BDFL’i olarak eklendi. Yaratıcısı olduğu doğru ama BDFL demek biraz abartı gibi
  • Bağlantı verilen yazılar arasında Jan van den Berg’in yazdığı bu yazıyı daha çok beğendim
    https://j11g.com/2023/08/07/the-legacy-of-bram-moolenaar/
    Etkileyici cümlelerden biri şuydu: “Vim bir başyapıttır; modern olan birçok şeyin yontulup çıktığı parlak ve hassas bir takım tezgâhıdır”
    Bir de şu bağlantı var
    https://m.youtube.com/watch?v=eX9m3g5J-XA
    “7 Habits for Effective Text Editing 2.0”
    1 saat 20 dakikalık; keşke birinin elinde dökümü ya da özeti olsa. İlk yorum komikti: “7 saat uyurken otomatik oynatmayı açık bırakmıştım; Billie Eilish’ten bu videoya kadar gelmiş”
    Hayat tuhaf ama bu yüzden güzel
    Bu arada ben ne (Neo)vim ne de Emacs kullanıyorum. “Programlanabilir” sözünü okuduğum anda uzaklaşıyorum. Zevkime uygun sabit işlevli bir editörü birkaç dakika ayarlayıp hemen kullanmayı tercih ediyorum. Sadece benim tercihim
    Yine de iyi araçlar amaçlarını iyi yerine getirir. İyi araçların ve o araçları yapan insanların olduğu bir dünya daha iyi bir dünyadır. Bazen o miras, felsefe ve çalışma biçimi geride kalan kodda ya da toplulukta yaşamaya devam eder. Bram’a saygılar

    • Anma yazıları arasında rekabet etmeye gerek var mı bilmiyorum ama paylaştığın yazı da duygulandırıcıydı. Bram’ın GitHub katkı grafiği fotoğrafı unutulacak gibi değil
    • “Programlanabilir” sözünden hoşlanmıyor ve zevkine uygun sabit işlevli bir editör istiyorsan Helix sana uygun olabilir
      Kakoune tuş bağlarını kullanıyor; Vim ya da Emacs’tan çok daha anlaşılır geliyor. Varsayılan ayarları zaten iyi ve kullanışlı birçok özelliği var. Her gün kullanıyorum; hızlı ve iyi
      PATH içinde LSP varsa otomatik olarak kullanıyor, bu yüzden çok az yapılandırma gerekiyor. Benim ayarım yalnızca tema ve biraz stil değişikliğinden ibaret; istersen buradan görebilirsin: https://github.com/RGBCube/NixOSConfiguration/blob/master/ma...
    • Vim’de set nocompatible, set ruler, backspace, girintileme ve temel renk şemalarından birini seçmek dışında pek “programlama” yapmaya gerek yok
      Neovim’de lightline, pathogen, monokai renk şeması ve bir şey daha kurmuştum; muhtemelen biraz daha az yaygın bir dil için sözdizimi vurgulamasıydı
      Asıl nokta şu: Vim, üzerine bir sürü şey takıp doldurana kadar sabit işlevli bir editördür
    • “7 Habits for Effective Text Editing 2.0” materyali burada: https://moolenaar.net/habits_2007.pdf
      tlamponi [1] sayesinde: https://news.ycombinator.com/item?id=37013315
  • Vim hayatımı gerçekten etkiledi. Son 15 yıldır kullanıyorum; yeni bir host aldığımda set -o vi ya da psql/ipython’daki benzer ayarı neredeyse hemen rc dosyalarına ekliyorum
    Shell içinde geçirdiğim sayısız saat, Bram’ın çalışması sayesinde çok daha keyifli hale geldi
    Bu yazıyı paylaştığın için teşekkürler; huzur içinde yatsın

    • Vim komutlarını öğrenmek, bildiğim şeyler arasında yatırım getirisi en yüksek işlerden biriydi. Yıllar boyunca çok değerli oldu ve bilgisayarla etkileşimde geçirdiğim süreyi muhtemelen yüzlerce saat azalttı
      Uzun zaman önce kas hafızasına dönüştü; metin düzenlemek ve ekranda imleci hareket ettirmek artık hiç çaba gerektirmiyor
      Yeni programcılara her zaman önerdiğim şeylerden biri. Vim’in öğrenme eğrisinin dik olduğu söylenebilir ama programcıların sürekli yaptığı metinle etkileşime daha verimli bakmayı sağlıyor
      Shell ve Readline kullandığım her yerde, Emacs’te evil-mode ile varsayılanı değiştirmek dâhil, desteklenen her yerde Vi(m) modunu açıyorum
      Mod tabanlı arayüz ve birleştirilebilir, anımsatıcı komutlar Emacs tarzı tuş kombinasyonu arayüzünden çok daha üstün ve sezgisel. Vim’i seviyorum. 20 yılı aşkın süre önce bu yolculuğa başlamamı sağlayan araç oydu ve hızlı düzenlemeler için hâlâ her gün kullanıyorum. Ancak IDE olarak daha genişletilebilir bir ortam olan Emacs’i tercih ediyorum. evil-mode sayesinde ikisinin de en iyi yanlarını alıyorum
      Bram sayısız insanın hayatını iyileştirdi ve sektörümüzün büyükleri arasında anılmayı hak ediyor. RIP
  • Geçici yazılım dünyasında Vim zamansız bir başyapıt
    Bram’a hayatım ve kariyerim üzerindeki etkisi için doğrudan teşekkür etme fırsatım olsaydı keşke. Vim olmasaydı buraya kadar gelemeyebilirdim

    • Bence Vim’in önemli noktalarından biri bu. Ne kadar uzun süre var olursa, hayatta kalma olasılığı o kadar artıyor. Pek çok modern metin editöründen daha uzun dayandı
      Ben yaşadığım sürece ve sonrasında da yaşamaya devam etmesini umuyorum