Blog'a Dön

KAPiTaN OS: Linux Üzerinde Türkçe Bir Komut Katmanı

KAPiTaN OS, Türkçe komut katmanı olan açık kaynak bir Linux dağıtımı. Onu yeni geliştiriciler için dil engelini azaltmak amacıyla neden inşa ettim ve neden duvarlarla çevrili bir bahçe yerine ince, dürüst bir katman olarak tuttum.

Umut Korkmaz

Yayın tarihi: 6 dk okuma

Terminal, bir geliştiricinin sahip olduğu en güçlü araçlardan biridir ve aynı zamanda en az davetkâr olanlardan biridir. Her komut bir İngilizce kelimenin kısaltmasıdır. List, ls olur; remove, rm olur; change directory, cd olur. Ana diliniz İngilizceyse, bunu fark etmeden özümsersiniz. Değilse, terminal zaten dik olan bir kavramın üzerine ikinci bir çeviri katmanı ekler. KAPiTaN OS'u Türkçe konuşanlar için o engeli azaltmak amacıyla inşa ettim ve bana bir dil katmanının nerede durması gerektiği hakkında çok şey öğretti.

KAPiTaN OS açık kaynak bir proje; tanıdık bir Linux tabanının üzerinde oturan Türkçe komut katmanı olan bir Linux dağıtımı. Hedef dar ve bilinçli: Türkçe konuşan bir öğrencinin veya yeni bir geliştiricinin, altta yatan sistemi olmadığı bir şeymiş gibi göstermeden, ana dildeki komutlarla shell'i kullanmasına izin vermek.

Dil Engeli Neden Gerçek

Bu yolculuğun başındaki insanlarla konuştuğumda, sürtünme nadiren mantıktır. Dosyaları ve klasörleri, süreçleri ve izinleri anlıyorlar. Onları yavaşlatan şey, her etkileşimin hâlâ edinmekte oldukları bir kelime dağarcığıyla aracılı olması. Problem hakkında düşünmeye başlayamadan önce kafalarında çeviri yapıyorlar. O bilişsel vergi, hiç ödemek zorunda kalmamış birine görünmezdir ve bazı insanların ilginç kısımlara gelmeden sessizce vazgeçmesini sağlayacak kadar büyüktür.

KAPiTaN OS, o ilk vergiyi kaldırmak için var. Bir acemi bir Türkçe fiil yazıp sistemin yanıt vermesini izleyebilirse, terminal yabancı bir ülke gibi hissettirmeyi bırakır ve bir araç gibi hissettirmeye başlar. Kazanç, uzmanlar için verimlilik değil. Birinin devam etmesi ile birinin çekip gitmesi arasındaki fark.

İnce Bir Katman, Duvarlarla Çevrili Bir Bahçe Değil

Temel tasarım kararı, Türkçe komut katmanını ince ve dürüst tutmaktı. Türkçe fiiller, altta yatan Linux komutlarına eşlenir ama onları gizlemez. Bir Türkçe komut çalıştırdığınızda, altta aynı davranış, aynı bayraklar, aynı çıktıyla yine gerçek sistemi çalıştırıyorsunuz. Katman bir çeviridir, bir yedek değil.

Bu, taviz vermeyi reddettiğim bir ilkeydi. Linux'un pürüzlü kenarlarını yumuşatan ve kendi icat ettiği dünyayı sunan daha dostane, basitleştirilmiş bir shell inşa etmek kolay olurdu. Ama o yol bir tuzak yaratır. İnsanlar KAPiTaN'ı öğrenir ve Linux'u öğrenmez ve normal bir makinenin başına oturdukları an — işte veya bir sunucuda — yine kaybolurlar. Duvarlarla çevrili bir bahçe size bahçeyi öğretir, dışarıdaki dünyayı değil.

Bu yüzden katman kasıtlı olarak şeffaftır. Gerçek komutlar her zaman görünür ve her zaman erişilebilirdir. Türkçe kelimeler, yürümeyi seçebileceğiniz bir köprüdür; sizi bir tarafta hapseden bir duvar değil.

Yalan Söylemeden Fiilleri Eşlemek

Türkçe fiilleri komutlara eşlemek, deneyene kadar önemsiz görünür. Doğal dil belirsizdir ve Linux komutları kesindir ve temiz bir eşleme her ikisine de saygı göstermelidir. İyi bir eşleme, bir Türkçe konuşanın doğal olarak başvuracağı fiili kullanır, onu gerçekten o şeyi yapan komutla hizalar ve zekice olma dürtüsüne direnir. Mesele tanıma, şiir değil.

Kendime tuttuğum kural, katmanın sistemin ne yaptığı konusunda asla yalan söylememesiydi. Bir Türkçe komut, daha dostane görünmek için sessizce bayraklar ekler veya varsayılanları değiştirirse, yanlış bir zihinsel model öğretir ve kullanıcı ham Linux'a dokunduğu an şaşırır. Bu yüzden eşleme sadık kalır. Türkçe fiil, bir kapıdaki bir etikettir ve kapının arkasında tam olarak beklediğiniz oda, değişmeden, vardır.

Eğitim Açısı

KAPiTaN OS ile gerçekten önemsediğim şey eğitim yolu. İdeal yörünge şu: bir acemi engeli düşürdüğü için Türkçe komutlarla başlar, terminalde rahatlar ve sonra, gerçek komutlar her zaman görünür olduğu için, onları kademeli olarak özümseyerek (osmosis) edinir. Türkçe katman, çıkarılmak üzere tasarlanmış destek tekerlekleridir, kalıcı bir koltuk değneği değil.

Şeffaflığın bu kadar önemli olmasının nedeni bu. Gerçek sistemi gizleyen bir öğrenme aracı, iyi bir ilk saat ve kötü bir ilk yıl için optimize eder. İlk saatin biraz daha zor olmasını, gerçek komutlar her zaman görünürken tercih ederim; böylece gerçek akıcılığa giden yol açık kalır. Hedef hiçbir zaman insanları KAPiTaN'da tutmak değildi. KAPiTaN'ı, onları kendi yollarından çıkarmak için kullanmaktı.

Benzer Bir Şey İnşa Eden Birine Söyleyeceklerim

Mevcut bir sistemin üzerine bir erişilebilirlik veya yerelleştirme katmanı inşa ediyorsanız, her şeyi soyutlama cazibesi güçlüdür ve genellikle yanlıştır. Bir öğrenen için yapabileceğiniz en saygılı şey, tavanı düşürmeden engeli düşürmektir. Girişi nazik yapın, gerçek şeyi görünür tutun ve insanların ona doğru büyümesine güvenin. KAPiTaN OS tam da bu nedenle açık kaynaktır: katman incelenebilir, fork'lanabilir ve dürüst olmalı çünkü öğrettiğini iddia eden bir aracın bunu gerçekten yapacağına güvenilmesinin tek yolu budur.

Yazar hakkında

Umut Korkmaz

Lead Yazılım Mühendisi

İstanbul'da kıdemli yazılım mühendisi olarak çalışıyorum. Burada, bizzat canlıya aldığım araçları ve sürümleri, sahada öğrendiklerimle birlikte yazıyorum.

Ortak konulara göre seçildi.

  • 7 dk okuma

    re-shell cli'ı 0.29'a Göndermek - Hızlı Yinelemeden Dersler

    Tek bir bakımcı olarak bir geliştirici CLI'ını hızlı göndermekten dersler: 1.0 öncesi sürümlemenin gerçekte ne yapmanıza izin verdiği, kırıcı değişiklikleri dürüst tutmak, küçük sık yayınların disiplini, dogfooding ve kaliteyi düşürmeden yapay zekâ ajanlarını kullanmak.

    • CLI
    • Açık Kaynak
    • Sürümleme
  • 7 dk okuma

    Quorate: Kodunuz İçin Bir Yapay Zekâ Gözden Geçirenler Konseyi

    Aynı farkı bağımsız gözden geçirenler olarak birkaç yapay zekâ modeline çalıştıran, sonra verdikleri kararları sentezleyen açık kaynak bir CLI olan Quorate'i inşa ettim. Bir konsey, tek bir modelin kaçırdığını yakalar ve yanlış güveni deler.

    • Yapay Zekâ
    • Kod İncelemesi
    • Açık Kaynak
  • 4 dk okuma

    Linux 7.2 ve "Yeni Normal": Tarihi Koru, Revert'i Ucuzlat

    Son haftası yoğun geçse de Linux 7.2 planlanan günde çıktı. Torvalds, yapay zekânın artırdığı yama hacmine sabit bir tarih ve sıradan hale gelmiş revert'lerle karşılık veriyor. Ürün ekipleri de bu ikisini örnek almalı.

    • Linux
    • Açık Kaynak
    • Yapay Zekâ