1 puan yazan GN⁺ 21 시간 전 | 1 yorum | WhatsApp'ta paylaş
  • Emacs, yalnızca bir editör ya da IDE olmanın ötesinde; bildirimler olmadan sakince açılan, takvimleri, işleri ve kayıtları bir araya toplayan dijital bir ana üs olabilir
  • Günlük ajandada Google Calendar etkinlikleri, bugünün işleri, tamamlanmamış işler, notlar ve GTD inbox birlikte görülebilir; öğe bazlı sayfalar ve zaman takibiyle işe kaldığınız yerden devam edilebilir
  • Karmaşık işler, görev sayfasında gereksinimler, bağlantılar, beyin fırtınası, TODO’lar ve tahminler düzenlenerek ele alınır; aynı akış içinde LLM sohbeti, terminal, magit ve dosya yöneticisi kullanılır
  • Emacs’a “işletim sistemi” demektense onu Fortress of Solitude gibi kişisel bir sığınak olarak görmek daha doğal ve 50 yıllık sürekliliği ile genişletilebilirliği bu ana üs hissini güçlendirir
  • Org mode, bir Markdown alternatifinden çok daha geniş bir platform gibi çalışır; blog, yapılandırma, üretkenlik sistemi, notlar, AI sohbeti ve literate programming arasında köprü kurar

Emacs’ı dijital bir ana üs olarak kullanmak

  • Emacs, bilgisayar açıldığında ilk açılan dijital ana üs haline gelebilir
    • Koyu mor boş bir ekran ve rastgele bir motivasyon sözü görünür
    • Tepki verilmesi gereken bildirimler ya da dikkati dağıtan unsurlar olmadığı için tanıdık ve sakin bir çalışma alanı sunar
    • Varsayılan olarak açılan scratch buffer, yeni bir belge için boş bir sayfadan çok, kullanıcının kendi anlamını yüklediği özgür bir tuvale benzer
  • Bu kullanım biçimi, kalıplaşmış “takıntılı Emacs kullanıcısı” imajından farklıdır
    • Uzun süredir C kullanmıyor; son dönemde çoğunlukla TypeScript ve biraz da Haskell kullanıyor
    • Bir startup’ın founder/CTO’su olarak zamanının büyük kısmını kodlamadan çok işe alım, yönetim, inceleme, e-posta, pazarlama ve stratejiye ayırıyor
    • E-posta ve web gezinmesini Chrome’da yapıyor; Notion, G Suite, Discord ve LLM de kullanıyor; IRC’ye ise hiç alışamamış

Takvim, işler ve kayıtları tek yerde yönetmek

  • Emacs açıldıktan sonra <space> o d ile doğrudan günlük ajanda açılabiliyor
    • Günlük kontrol listesi gösteriliyor
    • Google Calendar ile senkronize edilmiş günün etkinlikleri gösteriliyor
    • Bugün planlanan işler ile önceki günlerden bitirilemeyen işler birlikte gösteriliyor
    • Genel notlar ve GTD tarzı bir iş inbox’u da yer alıyor
  • Bir işin ya da etkinliğin üzerindeyken e tuşuna basıldığında ilgili öğenin sayfası açılıyor
    • Bu sayfada not alınabiliyor ve iş ilerletilebiliyor
    • O anda üzerinde çalışılan işe “clock in” yapılarak süre takibi başlatılıyor
    • Bu süre takibi odaklanmayı korumada etkili olmuş ve sonrasında zaman raporları üretmeyi mümkün kılmış
  • İş günü bittiğinde <space> o c w j ile günlük yazılıyor
    • Bu, iş gününü birkaç cümleyle geriye dönük değerlendirme biçiminde kullanılıyor

Karmaşık işleri açıp geliştirmek için bir ortam

  • Karmaşık işler, Emacs içinde görev sayfası açılıp düzenlenerek başlatılıyor
    • Kodlama işi, işe alım stratejisi, landing page içeriğini gözden geçirme, sonraki sprint’i planlama ya da uzun bir e-posta veya Discord mesajı yazma gibi işler için kullanılıyor
    • Bilinenler yazılıyor, gereksinimler tanımlanıyor ve ilgili kaynak bağlantıları toplanıyor
    • Beyin fırtınası, alt görev oluşturma, TODO durumu atama ve zaman tahmini tek bir yerde yapılıyor
  • Emacs içinde farklı araçlar aynı akışta birbirine bağlanıyor
    • <space> i c, seçilen LLM modeliyle sohbeti açıyor; bu sohbet açık buffer’lara ve kullanıcının tanımladığı araçlara erişebiliyor
    • <space> ' terminal açıyor ve terminal içinde Claude Code ya da OpenCode gibi araçlar da çalıştırılabiliyor
    • <space> d d dosya yöneticisini açıyor; <space> g g ise Git işleri için Emacs arayüzü olan magit’i mevcut proje ya da buffer bağlamında açıyor
    • <space> a w, yazmaya odaklanabilmek için tek pencere bırakıp metni ekranın ortasına yerleştirerek Zen mode benzeri bir duruma geçiriyor
  • Gezinme, metin düzenleme, arama ve pencere yönetimi; aynı tuş atamaları ve komut sistemi içinde sürdüğü için, farklı iş akışları tek bir birleşik ortamda akıcı biçimde bağlanıyor

“İşletim sistemi”nden çok “Yalnızlık Sığınağı”

  • Emacs’a “işletim sistemi” denmesi, onu gereğinden fazla karmaşık ve gereksiz bir araç gibi gösterebilir
    • Zaten bir işletim sistemi üzerinde Emacs çalışırken neden bir işletim sistemine daha ihtiyaç duyulsun sorusu doğabilir
    • “Hesaplama ortamı” ifadesi de Emacs’ı derinlemesine kullanmadan önce yeni kullanıcılara pek bir şey hissettirmeyebilir
  • Emacs, Superman’in Fortress of Solitude’u gibi düşünülebilir
    • Toparlanılan, iyileşilen, düşüncelerin bir araya getirildiği ve bir sonraki adımın planlandığı yer benzetmesi iyi oturur
    • Donanımın, hatıra eşyalarının ve laboratuvarın tamamen kişiye göre düzenlendiği kişisel bir alan ve sığınak olması bakımından Emacs’a benzer
  • Emacs’ın bir ana üs gibi işlemesinin nedeni esnekliği ve kalıcılığıdır
    • Son derece esnek ve genişletilebilir olduğu için kişisel ve benzersiz bir alana dönüştürülebilir
    • 50 yıldır varlığını sürdüren, bağımsız ve uzun ömürlü bir teknolojidir; modaların ya da tek bir şirketin hâkimiyetinin etkisine fazla açık değildir
    • Düşünceleri toplamak, plan yapmak, yazmak, bir bilgi tabanı oluşturmak ve üretmek için alan sağlar
    • Kişiye uygun araçlar ve iş akışları doğrudan kullanıcı tarafından inşa edilebilir
  • Kullanıcının biçimi ve anlamı bizzat verebilmesi esas noktadır
    • İstediği gibi yapabilme özgürlüğü ve kaybolmayacağına dair beklenti, ona bir ana üs hissi kazandırır
    • İlham geldiğinde Emacs’ta yazılır ya da kodlanır; yön kaybedildiğinde veya bunaltıcı bir durum oluştuğunda yine Emacs’ta toparlanıp plan yapılır
    • Dinlendirici ve eğlenceli bir uğraş olarak Emacs yapılandırmasıyla oynanır; değerlendirmeler günlüğe yazılır ve sonra tekrar gözden geçirilir

Bakış açısının değişmesine yol açan şey

  • Emacs ilk kullanılmaya başlandığında, havalı bir kod editörü ve bir meydan okuma olarak görülüyordu
    • Üniversite yıllarında kullanılmaya başlandı ve kardeşinin Vim’i seçmesine karşı yapılmış bir tercih gibi hissedildi
    • Sonraki birkaç yıl boyunca çoğunlukla sadece bir kod editörü olarak kullanıldı; daha fazlası olabileceği fark edilmedi
  • Emacs’ı daha geniş kapsamda kullanmaya başlamanın tetikleyicisi kodlamanın azalması ve yönetim işlerinin artması oldu
    • Kodlama azalırken yönetim işleri arttıkça, klavye merkezli UX’in akıcı deneyimi kod dışı işlerde de aranır oldu
    • Bu süreçte Emacs ve Org mode daha fazla öğrenildi, toplulukla daha fazla etkileşime girildi
    • Emacs’ın sunduğu potansiyel çok daha geniş görülmeye başlandı

Org mode

  • Org mode, Emacs’ın en bilinen major mode’larından biridir ve Emacs’ı bir ana üs olarak denemek isteyenlerin derinlemesine incelemesi gereken bir yapıdır
    • İlk bakışta biraz ek özellik içeren bir Markdown alternatifi gibi görünebilir
    • Gerçekte ise Emacs topluluğunun zaman içinde yakınsadığı bir platforma daha yakındır ve Emacs’ın genişletilebilirliğiyle birleşerek çeşitli iş akışları ve araçlar üretmenin temelini oluşturur
  • Org mode, yazı yazmanın ve yapılandırmanın temeli olarak kullanılır
    • Bu blog yazısı Org mode ile yazılmıştır
    • Tüm blog Emacs Lisp ile uygulanmış ve Org mode ile çalıştırılmaktadır
    • Tüm Emacs yapılandırması da Org mode ile yazılmıştır
  • Org mode ile yapılabileceklerin kapsamı geniştir
    • Sunum hazırlanabilir
    • Jupyter Notebook’u andıran literate programming için kullanılabilir
    • GTD benzeri üretkenlik sistemleri olarak kullanılabilir
    • org-roam, denote gibi not sistemleriyle entegre olabilir
    • gptel üzerinden AI sohbet arayüzü olarak kullanılabilir
    • Elektronik tablo ve Notion benzeri veritabanı sistemleri olarak da değerlendirilebilir

AI çağında Emacs

  • Ajan türü AI nedeniyle editörlerin devrinin geçtiği ve yalnızca CLI’ın yeterli olduğu söylense de Emacs’ın rolü bir editörle sınırlı değildir
    • Emacs bir editör değil, bir ana üs ve komuta merkezi olarak kullanılır
  • Üretken AI’ın yükselişi, tam tersine Emacs’ı daha çok kullanma isteği doğuruyor
    • Hızla değişen teknolojiler ve en yeni araçları kaçırmama baskısı içinde istikrarlı bir zemin gibi hissettiriyor
    • Kendi düşüncelerini duyabildiğin ve elindekilerin şimdilik yeterli olduğunu hissedebildiğin bir yer oluyor
    • AI sayesinde Emacs’ı istenildiği gibi yapılandırmak da daha kolay hale geldi

1 yorum

 
Lobste.rs görüşleri
  • “Tipik çılgın Emacs kullanıcısı” demek fazla varsayım. Benim bodrumum bile yok

    • Bu ekonomide bodrum mu?
  • Ölürken son sözlerimin C-x C-c olmasını isterdim

    • M-x close-coffin-and-bury
  • Bilgisayarı açtığımda ilk iş Emacs’i açmıyorum; ancak Emacs’i açınca bilgisayarın gerçekten açılmış sayılabileceğini düşünüyorum

  • Bu aralar Emacs topluluğunu takip etmek için rms ile karşılaşmanın kaçınılmaz olup olmadığını merak ediyorum

    • E-posta listelerini okumuyor ya da özellikle aramıyorsanız şart değil. Ben çoğunlukla /r/emacs’e bakıyordum ve eskiden GitHub’ın keşif özelliğini kullanıyordum; oralarda rms görünmüyordu
      Bugünlerde Lobsters’ın emacs etiketi de fena bir yer değil
    • Sadece takip ediyorsanız muhtemelen hayır. Ama paketlere katkı veriyorsanız karşılaşabilirsiniz. Benim durumumda buradaydı: https://lists.gnu.org/archive/html/emacs-devel/2023-05/msg00295.html
      Tüm başlık burada: https://lists.gnu.org/archive/html/…
    • En azından reddit veya mastodon’da rms’yi hiç görmedim. Ama emacs-devel listesinde ara sıra ondan gönderiler görüyorum
  • İnternetsiz geçirdiğim bir hafta olmuştu ve o sırada Emacs öğrenmeye başladım. Kılavuzu okuyup etrafı kurcalamak oldukça büyülü bir zamandı