13 puan yazan GN⁺ 19 시간 전 | 1 yorum | WhatsApp'ta paylaş
  • Doom/Quake'in yaratıcısı John Carmack, Fabrice Bellard'a hayran olduğunu söyledi

    "Muhtemelen genel programlama becerileri benden çok daha iyidir"

  • Birinin Fabrice Bellard'ın wiki sayfasını paylaşırken yazdığı metni alıntılayarak bunu belirtti

Paris'te sessizce yaşayan bir Fransız mühendis, 30 yıldır adı bilinmeden bugün tüm internetin dayandığı yazılımları yazıyor

  • Küresel video akışı ve bulut sanallaştırmasını ayakta tutan çekirdek kodların önemli bir bölümü, Silikon Vadisi dışında, Parisli bir mühendisin tek başına geliştirdiği açık kaynak projelere dayanıyor
  • Video ve ses formatlarını işleyen FFmpeg, YouTube, Netflix, VLC ve daha fazlasında çalışan internetin görünmez motoru işlevini görüyor
  • Makine emülatörü QEMU, modern sanallaştırmanın temeli; Linux hypervisor'ü KVM onun üzerinde çalışıyor ve büyük bulut sağlayıcılarının VM altyapıları bunun üzerine kuruluyor
  • Bunların dışında TCC, JSLinux, QuickJS, NNCP gibi birçok projeyi de tek başına geliştirdi; ayrıca o dönemin ölçütlerine göre tarihteki en fazla basamağa sahip pi sayısını, kendi türettiği bir formülle hesapladı
  • Pazarlama ya da sosyal medya olmadan telekom şirketi Amarisoft'ta CTO olarak görev yaparken bugün de kişisel projelerini yayımlamayı sürdürüyor

Kişi özeti

  • Adı Fabrice Bellard, 1972'de Fransa'nın Grenoble kentinde doğdu
  • Fransa'nın en seçkin mühendislik okullarından École Polytechnique'te okudu
    • Ne Silikon Vadisi'ne taşındı ne de bir startup imparatorluğu kurdu; odağını kod yazmaya verdi
  • Twitter ve Instagram kullanmıyor, röportaj da neredeyse hiç vermiyor
    • Kişisel sitesi, stil, font ya da pazarlama cümleleri olmadan yalnızca proje başlıkları ve bağlantılardan oluşan basit bir liste şeklinde

FFmpeg — internetin görünmez motoru

  • 2000 yılında, 28 yaşındayken başlattığı kodlama, kod çözme ve akış için açık kaynak multimedya framework'ü
    • Var olan neredeyse tüm video ve ses formatlarını tek bir kütüphane ile tüm işletim sistemlerinde işleyebilmeyi tek başına hayata geçirdi
    • Projeyi yıllarca doğrudan kendisi yönetti
  • Bugün YouTube, Netflix ve VLC tarafından kullanılıyor; Chrome ve Firefox da bazı kısımlarını kullanıyor
    • Her Android telefon, iPhone, akıllı TV ve video düzenleme aracının içinde FFmpeg çalışıyor
    • Son 20 yılda ekranda video izlediyseniz, büyük olasılıkla bu kod o videoyu işlemiştir

QEMU — modern sanallaştırmanın temeli

  • 2003'te başlayan bir makine emülatörü ve sanallaştırma aracı; 2005'teki 0.7.1 sürümüne kadar tek başına yazıldı
    • Rastgele bir işletim sisteminin başka bir işletim sistemi üzerinde çalışmasını mümkün kılar
  • Linux kernel hypervisor'ü KVM, QEMU üzerinde çalışır
    • AWS, Google Cloud, Microsoft Azure, IBM Cloud gibi tüm büyük bulut sağlayıcıları, VM'lerini bunun temel alındığı altyapılarda çalıştırır
    • Dünyadaki en çok atıf alan bulut altyapı kodlarından biri olarak değerlendirilir

Diğer önemli tek kişilik projeleri

  • 2001'de International Obfuscated C Code Contest kazanan küçük bir C derleyicisi, daha sonra TCC (Tiny C Compiler) haline geldi
    • TCC, Linux kernel'ini kaynak koddan 15 saniyeden kısa sürede derleyip başlatabiliyor
  • 2004'te kişisel masaüstü bilgisayarı ve kendi türettiği Bellard's formula algoritmasıyla, dönemi için en fazla basamaklı pi sayısını hesapladı
  • 2011'de tamamen JavaScript ile yazılmış, tarayıcı içinde Linux çalıştıran PC emülatörü JSLinux'u yayımladı
  • 2019'da V8'in sığamadığı ortamlar için uygun, küçük ve tam özellikli JavaScript motoru QuickJS'i yayımladı
  • 2021'de sinir ağı tabanlı kayıpsız veri sıkıştırıcısı NNCP'yi yayımladı; Large Text Compression Benchmark'ta anında zirveye çıktı

LLM ile ilgili projeler

  • LLM'leri yerelde çalıştıran REST API web sunucusu TextSynth Server'ı geliştirdi
  • Dil modellerini kullanarak mevcut algoritmaların ulaşamadığı sıkıştırma oranlarıyla metin ve kısa mesaj sıkıştıran ts_zip, ts_sms'i yayımladı
  • Çok düşük bitrate'li bir ses sıkıştırma sistemi olan TSAC'ı yayımladı
  • 2025 Aralık'ta, neredeyse hiç belleği olmayan ortamları hedefleyen ve QuickJS'ten ayrı geliştirilen mikrodenetleyicilere yönelik JavaScript motoru Micro QuickJS'i yayımladı

Amarisoft ve çalışma tarzı

  • 2012'de telekom şirketi Amarisoft'u ortak kurdu ve CTO olarak görev yapıyor
    • Amarisoft, dünya çapında operatörler ve araştırma kurumları tarafından kullanılan 4G ve 5G baz istasyonu yazılımları geliştiriyor
  • 10 yılı aşkın süredir şirketi yönetirken kişisel ana sayfası (bellard.org) üzerinden kişisel projelerini yayımlamayı sürdürdü
    • Silikon Vadisi'ne taşınmadan, bugün de interneti sessizce ayakta tutan kodları yayımlamaya devam ediyor

1 yorum

 
Hacker News görüşleri
  • Bellard'ın katkı listesine bakınca, saf yeteneği elbette etkileyici ama daha da öne çıkan şey neyi seçeceğini bilme sezgisi
    Sürekli olarak çok büyük sayıda insan için faydalı olacak işleri seçip yaptı ve bu, teknik becerisinden bile daha şaşırtıcı görünüyor
    Hayatta en önemli soru, ne yapacağına karar vermek olabilir

    • Muhtemelen ölçüt şudur: Basit bir iş yapmak istiyorum ama bu neden bu kadar zor?
      Modern bilişimde geliştirici deneyimi bataklığı çok fazla ve bunu herkes yaşıyor ama gerçekten düzeltmek için harekete geçen çok az kişi var
      Özetle felsefe şu: “İyi olması gereken şeyler pek iyi değil ve ben öğrenip onları daha iyi hale getirebilirim”; daha geniş anlamda ise “Sadece yapabilirsin” yaklaşımına yakın
    • Geleneksel olarak zor olan bir şeyi çok daha kolay, hızlı ve iyi hale getirince, onun altında tıkanmış kullanım alanları da açığa çıkıyor
      Hem seçim hem uygulama önemli olsa da, birçok sektör daha önce zor olan bir şeyi birinin kolaylaştırması sayesinde açıldı
    • Araştırmada da aynı ikilem sık sık ortaya çıkıyor
      Özellikle etki yaratmak istiyorsan, hayatını hangi konulara harcayacağını seçmek önemli ve doğru problemi seçmek, uygun çözümü bulmaktan çoğu zaman daha zor
    • Böyle insanlar 10x geliştiricidir
      Bellard için bu 100x bile olabilir
      Mesele günde 19 saat çalışmak ya da kod satırı, PR sayısını artırmak değil; kimsenin düşünmediği ölçekte geniş etkili, zarif çözümler ortaya koyabilmek
    • Tersinden bakarsak, yeteneğin varsa kendi alanındaki en zor problemi seçip çözebilir, sonra bunu tekrar edebilirsin
      Her alanın zor problemleri sır değil; mesele sonuçta böyle problemlere yıllarını verecek kapasiteye, cesarete ve iradeye sahip olup olmamak
  • İlginç biçimde Bellard'ın işlerinin çoğu spesifikasyonları C'ye aktarmak gibi görünüyor
    Önemli projeler arasında ffmpeg (codec spesifikasyonları), qEmu (komut kümesi spesifikasyonları), QuickJS (EcmaScript spesifikasyonu), tinyC (C spesifikasyonu), telekom (LTE spesifikasyonu) var; pi hesaplama ve sinir ağı işleri ise daha çok istisna gibi
    Bu onların daha az etkileyici olduğu anlamına gelmiyor; yüksek performanslı codec ve emülatör uygulamaları hiç kolay değil, ama çalışmaların görece dar bir alanda yoğunlaşmış olması ilginç

    • Bir encoder/decoder çiftinin bir kanal üzerinden haberleştiği iletişim spesifikasyonlarında, çoğu zaman yalnızca encoder tanımlanır
      Standartlar, teknolojik ilerleme ve implementasyonlar arası rekabet için decoder tarafını bilerek açık bırakır; decoder ise kanalın gürültüsünü ve etkilerini ele almak zorunda olduğu için genelde daha karmaşıktır
      Bu yüzden rekabetçi, standarda uygun bir decoder implementasyonu belirlenmiş bir yolu izlemekten çok Ar-Ge'ye benzer; Bellard da saf bir programcıdan ziyade programlama yapan bir mühendis gibi görünüyor
    • Birinin codec spesifikasyonunu yazdığı, Fabrice Bellard'ın da bunu C'ye çevirdiği şeklindeki anlayış tamamen yanlış
      Codec'ler çoğu zaman tersine mühendislikle uygulanır ve bazen ortada spesifikasyon bile olmaz; belgelenmiş codec'ler bile verimli encoding/decoding yöntemlerini söylemez
      Bellard gibi insanlar tam da bu verimli algoritmaları geliştirir
    • Eskiden spesifikasyon, implementasyon ve test ayrı alanlar olarak öğretilirdi ve bazen bunları farklı kişiler üstlenirdi
      Bugünlerde üçünü karıştırarak yapmak daha yaygın ve sonuçların da gayet iyi olduğunu düşünüyorum
      Yine de bugün birçok insan sadece bunların içinden implementasyon yapıyor gibi görünüyor
    • Eskiden kodu outsource edebilmek için spesifikasyon tanımlamaya muazzam zaman harcanırdı
      Şimdi ise koda muazzam zaman harcayabilmek için spesifikasyonu outsource ediyoruz denebilir
    • ffmpeg ile gerçekten uğraşınca mimarisinin epey etkileyici biçimde takılabilir olduğu görülüyor
      Codec'lerde temel kavramlardan itibaren uyuşmazlıklar ve istisnalar çok; ses, altyazı ve video dünyasında “frame”in ne olduğu bile farklı, ayrıca frame'lerin yazılım ve donanım coder'ları arasında aktarılma biçimi de tamamen başka
      Bu kadar farklı dünyaların işlenişini neredeyse serbestçe karıştırabilmek büyük bir başarı ve bana göre libav bunu mümkün kılacak kadar iyi tasarlanmış
  • Bellard, 20 yılı aşkın süredir FFmpeg ile ilgilenmiyor; hatta gerçekte bu süre 23 yıla daha yakın
    O dönemde FFmpeg'de bileşenler ve codec'ler arasında kod paylaşımı için bir çerçeve yoktu; bu yüzden onun kodu iyi değildi, spaghetti code kokusu taşıyordu ve bugün onun kodundan neredeyse hiçbir şey kalmadı
    FFmpeg'in bugünkü hale gelmesi diğer geliştiriciler sayesinde oldu ama sanki tek ömür boyu hayırsever diktatör oydu ve diğer geliştiriciler yalnızca onun bilgece kurduğu yapının üstüne ekleme yaptı gibi davranılıyor
    Şu anda yaptığı şey, ticari markayı elinde tutup hangi proje ya da liderin FFmpeg adını kullanabileceğine karar vermekten ibaret; hatta bir keresinde libav geliştiricilerini dışlayıp başka bir diktatörün tarafını tuttuğu da oldu

    • Bağlam unutulmamalı
      FFmpeg ve Videolan birer yurt odasında başladı; öğrenciler bunları yurttan TV yayını yapmak ve film paylaşmak için kullanıyordu
      Polytechnique ve École Centrale kampüsleri birbirine yalnızca birkaç km uzaklıkta ve iki proje de yaklaşık 1997~1998 civarında başladı
      Öğrenciyken muhtemelen temiz kod yazmaktan çok bira içmekle meşguldüler
    • Burada “copyright” değil, trademark kastediliyor
      Copyright, telif devri talep edilmediği için kodun yazarında ya da işvereninde kalır
      Bu, Linus Torvalds'ın bazı yargı bölgelerinde “Linux” ticari markasına sahip olması ama telif haklarının büyük kısmının diğer katkıcılarda bulunmasına benziyor
    • 15 yıl önceki ffmpeg/libav dramı hakkında bir yorum buldum: https://www.reddit.com/r/linux/comments/vvdxn/comment/c57zdk...
      ffmpeg'i çok iyi bilmiyorum ama bu, diğer açık kaynak projelerde yaşadıklarımla örtüşüyor
    • ffmpeg artık başarıyı tek bir kişiye yazmak için fazla başarılı bir açık kaynak proje
      Bir zamanlar AviDemux'un ffmpeg'den çok daha hızlı ve daha iyi bir H.264 encoder implementasyonuna sahip olduğu günleri de hatırlıyorum
      Açık kaynak ruhuna uygun biçimde ffmpeg, AviDemux kodunu içine aldı; sonunda AviDemux da rekabet etmek yerine ffmpeg'i backend olarak kullanma yönünde pragmatik bir tercih yaptı
      Bence bu, açık kaynak anlayışını benimsemenin güzel bir örneği
    • Aklı başında hiç kimse ffmpeg'in hâlâ tek bir kişi, hele hele yalnızca Fabrice tarafından bakımı yapılıp geliştirildiğini düşünmez
      Kodun spaghetti code olup olmaması da ilk dönemde çok önemli değil
      Projenin kapsamı ve geleceği henüz bilinmiyorken, potansiyel gelecekteki sorunlara kapılmak yerine önce biraz spaghetti halde başlamak doğru olmuş olabilir; gereksinimleri daha iyi anladıktan sonra refactor edebilirsin
      Topluluğun da tam olarak bunu yapmış olması takdire değer
  • Fabrice’in web sitesi burada görülebilir: https://bellard.org/
    Tüm projelerinin listesi var

    • Harika programcıların kişisel web sitesi tasarımları da çoğu zaman iyi oluyor
      Her şey çok açık ve gereksiz tekrar hiç yok
  • Bellard’ın ts_zip adlı çok ilginç bir projesi var; bu, LLM tabanlı bir sıkıştırma algoritması
    Sadece bir “deney” ve üretim ortamında kullanılmamalı ama çok zekice
    Web sitesindeki açıklama da eğlenceli: “The ts_zip utility can compress (and hopefully decompress) text files using a Large Language Model”
    https://bellard.org/ts_zip/

    • Sıkıştırmayı açmak isteğe bağlıysa, benim de aklıma gerçekten etkileyici bir sıkıştırma algoritması geliyor
    • Aslında LLM tam olarak böyle bir şey
      Kafamdaki model ve çocuklara anlatırken kullandığım benzetme şu: “İnternetin tamamını zip benzeri bir arşiv olarak sıkıştırdılar ve içindeki veriyi bulmak için çok zeki ve verimli bir yöntem var”
      Wikipedia’yı CD ile sipariş ettiğimiz zamanları hatırlayacak kadar yaşlıyım ve o dönemle bir LLM indirmek arasında çok büyük bir fark hissetmiyorum
    • Zamanı ve hesaplama miktarını önemsemeyen yarışma sıkıştırma algoritmaları diye bir alan var
      Test külliyatını sıkıştırması saatler, hatta belki günler süren sıkıştırıcılar yapan insanlar oldu
      Bu alandaki eski, yarı şaka üst sınır şu: sıkıştırma “AI-complete”tir; örneğin Shakespeare’in tüm eserlerinin metnini sıkıştırmak yerine sadece “The Complete Works of Shakespeare” kodlanır ve bir yapay zeka sıkıştırma açıcı bu istemle çıktıyı yeniden üretir
      LLM’lerin gelişiyle Bellard bu şakayı gerçeğe dönüştürmüş oldu
  • “Fabrice Bellard” by Andy Gocke and Nick Pizzolato
    https://www.ipaidia.gr/wp-content/uploads/2020/12/117-2020-f...

    • Acaba o Nick Pizzolato, True Detective’i yazan kişiyle aynı kişi mi?
    • Sonrasında daha çok iş yaptığı için bu epey eski bir kaynak
    • Bu HN’e hiç gönderilmediyse gönderilmeye değer
  • Birine “hayattaki en zeki insan kim” diye sorup, onun işaret ettiği kişiye de aynı soruyu sormaya devam edersen sonunda aynı küçük dahi kümesine yakınsayıp yakınsamayacağını merak etmiştim
    Hayattaki en iyi kodlayıcı üzerinden gideceksek Carmack’le başlanabilir gibi geliyor, sonra da Bellard’a gitmek gerekir
    Yalnız Bellard’ın cevabının tekrar Carmack olmamasını umuyorum

    • Manhattan Project’te yer alan bilim insanları ve fizikçileri takip edince sonucun John von Neumann çıktığına dair benzer bir hikâye var
    • Apple’da çalıştığım dönemden anında seçeceğim yaklaşık on iş arkadaşım aklıma geliyor
  • Fotoğrafını ilk kez gördüm ve biraz da, mahremiyetini koruyup dikkat çekmekten kaçınan Satoshi Nakamoto’nun kimliğinin ortaya çıkması gibi hissettirdi
    Büyük internette sosyalleşmektense derin düşünmek ve zor problemleri çözmek gibi hep daha iyi işleri olan biri izlenimi veriyor
    Yaptığı işin kendisi saygı uyandırıcı ama çalışma disiplini daha da saygı uyandırıcı
    Güçlü bir vizyonun varsa, internetteki yabancılarla gün boyu tartışıp seçimlerini savunmaktansa fildişi kule tarzı geliştirme yapmak gerekir

    • Kimliğini hiç saklamadı
      Ararsan fotoğraflarını bulabiliyordun
      Satoshi ile karşılaştırılmamalı
      Bitcoin’im yok ve ilgilenmiyorum ama o isim özgün belgelerde basılı duran efsanevi bir varlık
      Fabrice Bellard ise gerçek bir insan olarak kod yayımlıyor; internet üzerindeki anonim bir kimlik değil
    • Bellard Mozart, çoğumuz ise Salieri olmayı bile zor başarırız
    • Carmack ve Bellard ikisi de mitolojik figürlere dönüştü
      İkisi de harika ama adları geçer geçmez gerçekten ne yaptıklarından çok “onlar ne düşünürdü” gibi tuhaf beklentiler konuşulmaya başlanıyor
      Böyle bir mitikleştirme, başarılarını olduğundan küçük gösteriyor
    • “Burguer” Rebecca Ann Heineman’a aynı saygıyı göstermemiş olması üzücü
    • Onu biraz sert, uzun saçlı, belki dövmeli, iri ve ağır biri olarak hayal etmiştim
      Fotoğraf o hayalimi bozdu, şimdi hayal gücümü geri istiyorum
  • “Bugün FFmpeg internetin görünmez motorudur” ifadesiyle ne denmek istendiğini anlıyorum ama bu tür abartılardan hiç hoşlanmıyorum
    FFmpeg bir anda ortadan kaybolsa bile internet gayet yoluna devam eder
    Ürünlerinin çekirdeğinde ona bağımlı şirketler zorlanabilir ama internetin kendisi ve web sitelerinin/İnternet hizmetlerinin büyük çoğunluğu çalışmayı sürdürür

    • Bu LLM’lerin yazma tarzı
      O tweet/yazı bir LLM tarafından yazıldı ve böyle yazıyorlar
    • YouTube ve porno olmadan buna gerçekten internet denir mi?
    • Bugünün internetinin büyük kısmını oluşturan şeylerin görünmez motoru olarak bakarsak bunun abartı olmadığını düşünüyorum
      Yarının interneti farklı olabilir
  • Tam bir yan konu ve eksi oy almayı göze alarak söyleyeyim, son dönemdeki X-makalesi akımı aşırı sinir bozucu
    Mobilde görmek için yazıya ulaşana kadar 3-4 adım geçmek gerekiyor ve yazılar hep dikkat süresi kısa okuyucu etkileşimine aşırı optimize edilmiş LinkedIn gönderileri gibi görünüyor
    Üstelik bu X yazısı ile Bellard’ın kendi web sitesi arasındaki keskin karşıtlık da ironik

    • Zaten teknoloji sektöründe büyük VIP olan insanların böyle tweet’ler yazmaya zaman ayırma ya da daha kötüsü bunları yazdırmak için PR şirketi tutma ihtiyacı hissetmesi biraz üzücü
      Benzer net servete sahip başka sektör ünlülerinde bu yaygın ama bana hâlâ garip geliyor