1 puan yazan GN⁺ 2023-12-11 | 1 yorum | WhatsApp'ta paylaş

Emacs 30 sürümündeki sorunlar ve bir fork sürümünün ortaya çıkışı

  • Emacs'in master branch'i, kullanıcılar ve geliştiricilerin endişelerine rağmen büyük bir değişiklik nedeniyle bozuldu.
  • Bu değişiklik, Emacs register'larıyla etkileşimi kullanışsız hale getiriyor ve basit işler için bile ek tuş vuruşları gerektiriyor.
  • Daha iyi bir fork sürümü oluşturulup kullanılmakta ve geliştirilmektedir; ilgilenen herkesin katılımı memnuniyetle karşılanır.

Emacs master branch'inin kararlılığı ve son değişiklikler

  • Emacs master branch'i, en son geliştirmeleri deneyimlemek isteyen kullanıcıların takip ettiği geliştirme sürümüdür.
  • Son birkaç yılda Emacs bakımcılarının çabaları sayesinde master branch oldukça kararlıydı.
  • Ancak son değişiklik nedeniyle kullanıcılar hoş olmayan bir sürpriz yaşadı.

Kullanıcı deneyimindeki kötüleşme ve topluluğun tepkisi

  • Yeni değişiklik kullanıcı deneyimini kötüleştirdi ve önceki verimli davranışın isteğe bağlı olarak geri getirilmesini talep eden sesler yükseldi.
  • Topluluk üyelerinin net görüşlerine rağmen, değişikliği savunan geliştiricinin tavrı nedeniyle sorun çözülmedi.
  • Bakımcılar, kullanıcı deneyimini feda etme pahasına da olsa değişikliği sürdürme eğilimi gösterdi.

Yeni fork sürümünün geliştirilmesi ve kullanıcının özgürlüğü

  • Kullanıcı özgürlüğüne önem veren yazar, mevcut Emacs'teki garip değişikliklerin dayatılmasını reddederek yeni bir fork sürümü oluşturdu.
  • Bu fork sürümü, master branch'teki iyi değişiklikleri seçerek alıyor ve yazarın geliştirmeleriyle de iyileştiriliyor.
  • Fork sürümüyle ilgilenenler, yazarın deposundan clone edebilir; iş birliği ve öneriler memnuniyetle karşılanır.

GN⁺ görüşü

Bu yazıdaki en önemli nokta, Emacs 30 sürümünde yaşanan kullanıcı deneyimi kaybı ve buna topluluğun verdiği tepkidir. Emacs uzun süredir geliştiriciler arasında özelleştirilebilirliği ve genişletilebilirliğiyle sevildiği için, bu tür değişikliklerin kullanıcıları nasıl etkileyeceğine yönelik ilgi yüksektir. Ayrıca, bir geliştiricinin topluluğun görüşlerini göz ardı edip kendi değişikliğini dayatması süreci, açık kaynak projelerde karar alma ve iş birliği kültürü açısından ilginç bir örnek sunuyor. Yazı, kullanıcıların yazılımdaki değişimlere nasıl tepki verdiğini ve gerektiğinde kendi çözümlerini nasıl geliştirdiğini iyi gösteriyor.

1 yorum

 
GN⁺ 2023-12-11
Hacker News görüşü
  • Emacs geliştirme dalında önemli bir değişiklik olduğunda ve bazı kullanıcılar endişelerini dile getirdiğinde, bu değişiklik hemen geri alınmıyor. Artıları ve eksileri tartışılıyor, çeşitli çözümler uygulanıp iyileştiriliyor ve sonunda bir uzlaşma noktası bulunuyor.

    • Kullanıcıların endişelerini dile getirmesi 3 gün önce başladı ve bu süreç zaten sonuçlanmış değil.
    • Eli'nin son mesajı, yeni davranışın eskisinden çok daha makul olduğunu söyleyen iki kişi arasındaki ilk tartışmaya değiniyor ve davranış standardının ancak şimdi, farklı görüşler ortaya çıktıktan sonra tartışıldığını belirtiyor.
  • Emacs'te kopyalama işlevinin (veya daha genel adıyla "register" olarak bilinen özelliğin) çalışma şeklini değiştiren bir commit kısa süre önce kabul edildi. Artık Emacs, neler olduğunu gösteren minibuffer'ı açıyor ve kullanıcının değişikliği kabul etmek için Enter tuşuna basmasını istiyor.

    • Bu, varsayılan davranışı değiştiriyor, kolayca yapılandırılamıyor olabilir ve yeterli tartışma olmadan yapılmış gibi görünüyor.
    • Vim kullanıcılarına yapılan bir benzetmeyle bu değişikliğin ne kadar rahatsız edici olduğu anlatılıyor ve OP'nin bu sorunu gündeme getirme çabası ile geliştirici Thierry'nin tepkisi aktarılıyor.
  • E-posta listesinin incelenmesi, bu davranışı geri alabilecek bir seçeneğin olacağını gösteriyor.

    • Bu seçenek, asıl yazı yayımlanmadan önce anılmıştı, ancak yazıyı yazan kişi bunu görmemiş olabilir.
    • Bu seçeneğin sorunu çözmesi bekleniyor, ancak ginko'nun yanıtına göre yine de Enter tuşuna basmak gerekebilir.
  • Emacs'te kas hafızası önemli bir unsur olarak görülmeli.

  • Geliştirici açısından bakıldığında, kararlılık isteyen kullanıcıların release branch kullanması veya master'da belirli commit'lere sabitlemesi gerekir. Geliştirme dalı, devam eden özellikleri geliştirmek için kullanılır ve zaman zaman bu tür değişiklikler sık yaşanabilir.

  • Yazının sahibinin tavrı biraz inatçı görünüyor ve bu özelliği kullanan kişi sayısının çok az olduğu belirtiliyor. Ücretsiz çalışan bir bakımcının önce danışmadan küçük bir değişiklik yapması, master branch'i "bozmak" olarak görülmemeli.

  • Emacs'ten ayrılalı 20 yıl olmuş olsa da, bu değişikliğin oldukça kafa karıştırıcı olduğu anlaşılıyor. Kendini "kitchen sink" olarak tanımlayan Emacs'in neden eski davranışa dönmeyi sağlayan bir seçenek eklemediği anlaşılamıyor.

  • Emacs'in özü, son derece özelleştirilebilir bir platform olmasıdır; bir özelliğin davranışı hoşunuza gitmiyorsa bunu birkaç satır Lisp koduyla kendiniz düzeltebilirsiniz. Tek bir özellik değişikliği yüzünden tüm projeyi fork etmek mantıklı değil.

  • Görünüşe göre tek çözüm Emacs'in bir başka fork/reimplementation girişimini denemek. Bu kez kesinlikle başarılı olacaktır ve diğer her şey gibi tamamen alakasız olmayacaktır.

  • Bu değişikliğin "diğer tarafı" ne diyor? Bu kadar görüş ayrılığı yaratan değişikliklerin arkasında genellikle makul bir gerekçe olur. Ya da olmayabilir.