1 puan yazan GN⁺ 2023-09-23 | 1 yorum | WhatsApp'ta paylaş
  • Kişisel haber kaçınma deneyimi teknoloji haberlerine de taşınırken, tekrar eden olumsuz değişimler karşısında duyulan çaresizliğin sonunda kendi tarayıcısını yapmaya karar veriyor
  • Hacker News'te istenmeyen güncellemeler, abonelik ücret artışları, kişisel veri toplama, şifrelemenin yasaklanması tartışmaları ve tarayıcı ekosisteminin kontrol altına alınması gibi eğilimlerle sürekli karşılaşıyor
  • Bu kez sadece kaçınmak yerine, bir programcı olarak kod yazarak ve yayımlayarak küçük bir karşılık vermeyi deniyor
  • Projenin tamamlanma ya da ana akım bir tarayıcı olma ihtimalini düşük görüyor; yardım alamazsa yakında durabileceğini de kabul ediyor
  • Ticari olmayan ve açık bir tarayıcı projesinin başkalarına ilham vermesini ve daha fazla alternatif projeye yol açmasını umuyor

Haberlerden kaçınmanın tarayıcı geliştirmeye dönüşme süreci

  • Yaklaşık 10 yıl önce arabayla sık sık müşterilere gidip gelirken Hollanda'nın Business News Radio (BNR) ya da Radio 1 kanalını dinliyordu; ama bir gün radyoyu kapattıktan sonra haberleri bir daha dinlemek istemediğini fark etti
  • Haberlerde savaş, yolsuzluk gibi kötü olayların sürekli tekrarlandığını düşünüyordu ve birey olarak bu sorunları çözmesinin bir yolu olmadığını görüyordu
  • Sonrasında haber dinlemekten, izlemekten ve internette haber taramaktan kaçındı; saat 8 haberleri başladığında kanalı değiştiriyor ya da haberin açık olduğu odadan çıkıyordu
  • Önemli gelişmelerin insanlardan zaten bir şekilde kendisine ulaştığını düşünüyor, genel haberler yerine yalnızca bazı Reddit alt dizinleri ile teknoloji haberlerini sınırlı biçimde takip ediyordu

Teknoloji haberlerinde de tekrar eden çaresizlik

  • Teknoloji haberlerini yaklaşık %98 oranında Y Combinator'ın Hacker News'i üzerinden takip etti; ancak zamanla 10 yıl önce genel haberlerde hissettiği duygular yeniden büyümeye başladı
  • Tekrar tekrar karşılaştığı sorunlar şunlardı: istenmeyen güncellemeler, verilen sözlerin bozulması, abonelik ücretlerinin artırılması, şirket satın almaları ve daha fazla kişisel veri toplama girişimleri
  • Hükümetlerin çocuklara yönelik cinsel suçluları gerekçe göstererek şifrelemeyi yasaklamaya çalışmasını da aynı sorunun bir parçası olarak görüyor
  • Tarayıcılar, dünyanın neredeyse herkesinin zaman geçirdiği yer olduğu için özellikle önemli bir alan haline geliyor
    • Tarayıcının kendisi reklam gösterirse, site reklamlarını engelleyen reklam engelleyicilerin buna karşı koyması zorlaşabilir
    • Belirli bir tarayıcıya özel eklentiler yüzünden başka tarayıcılarda sitelerin kullanılamaz hale geldiği örnekler vardı; tekel sorununu aşmanın bir yolu bulunursa bunun yeniden tekrarlanabileceğini düşünüyor

Neden kendisi yapmaya karar verdi ve neden beklentisi düşük

  • Bu kez sadece kaçınmak yerine, bir programcı olarak tarayıcıyı doğrudan geliştirebileceğine ve kodu paylaşabileceğine karar veriyor
  • Tarayıcı yapmaya karar vermesinin iki nedeni var
    • Çok küçük de olsa geri itmeye yönelik bir deneme yapmak
    • Eskiden beri kendi tarayıcısını yapmak istemesi gibi kişisel bir neden
  • Projeden büyük beklentileri yok
    • Tamamlanacağını beklemiyor
    • Yardım edecek kimse olmazsa yakında ölebileceğini düşünüyor
    • Mevcut büyük tarayıcıları yıkacak baskın bir tarayıcı olacağını beklemiyor
  • Olmasını istediği şey, ticari olmayan bir amaçla açık olması ve başkalarına ilham vererek kendi projelerini üretmelerine imkan tanıması
  • Projenin ilerleyişi codemusings.nl'deki ilerleme yazısında görülebilir
  • Proje deposu jaytaph/gosub-browser adresinde

1 yorum

 
GN⁺ 2023-09-23
Hacker News yorumları
  • OP benim. Olumlu/olumsuz/nötr tüm yorumlar için teşekkürler; birkaç şey eklemek gerekirse, katkıda bulunulabilecek zaten çok sayıda tarayıcı projesi olduğu ve bunun daha verimli olduğu doğru, ama o zaman geriye yalnızca birkaç tarayıcı kalıyor. Ben insanların seçenekleri olması için çok sayıda tarayıcı olmasını istiyorum.
    Bu kesinlikle kişisel bir proje. Teknoloji sektöründen bıkmış olmasaydım da muhtemelen başlayacağım bir işti; ama hiçbir şeyi değiştiremeyeceğim hissinin yarattığı çaresizliğe kızgınım ve bu da benim bir şeyler yapmayı deneme biçimim. Gerçekten bir tarayıcının tamamlanmasını beklemiyorum. İnsanlar koduma bakıp ister gülsün, ister daha iyi fikirler edinsin. Örneğin whatwg sitesi gibi HTML5 tokenizer ve parser algoritmaları adım adım açıklanmış olursa, herkesin kendi HTML5 parser’ını yazması kolaylaşır. Google veya Microsoft pazar hâkimiyetine dayanarak kapalı biçimli, özel bir HTML5; örneğin ghtml gibi bir şey üretirse bunu kim engelleyebilir? Sıfırdan başlamak istememin nedeni, en alttaki teknik zorlukları daha iyi anlamak istemem.

    • “Hiçbir şey yapamamaya kızgınım ve bu, bir şeyler yapmayı deneme biçimim” tavrı altın değerinde; dünyayı gerçekten değiştiren tavır da bu.
      “Haberler”in sefaleti hakkındaki sözlere de katılıyorum. Psikolojik savaşta buna moral bozma (sapping) denir. Eskiden düşman, direnme iradesini kırıp insanları güçsüzleştiren propaganda yapardı; klasik örnek Lord Haw-Haw’du. https://en.wikipedia.org/wiki/Lord_Haw-Haw
      Günümüzde ana akım haber kanalları ve teknoloji devleri insanları kalıcı bir umutsuzluk ve kaygı içinde tutmaya çalışıyor gibi görünüyor. Teknoloji tartışması da sinizm, kaçınma, inkâr, kabulleniş ve öğrenilmiş çaresizlik çukuru gibi; son dönemde çok sayıda röportaj ve duygu analizi yaptım, sonuçlar korkunçtu. “Tech” kelimesinin kendisi “direniş boşunadır” ile eş anlamlı hâle geliyor gibi. Başarı beklediğin için değil, örnek olmak ve kendi akıl sağlığını korumak için bir şeyler yapmak, en olumlu ve en insani tepki.
    • Böyle bir cevabı ‘hacker’ news’e yazmak zorunda kalmak başlı başına tuhaf, ama yapmak istediğini yapmalısın. Kimi marangozluk yapar, arabasını tamir eder, oyun oynar; kimi de kod yazmayı sever. Ben de çeşitli nedenlerle başladığım çok sayıda yan projeye sahibim ve hepsinden keyif aldım. Bol şans, tadını çıkar. Belki daha büyük bir şeye dönüşür.
    • Kişisel proje yaklaşımıyla başlamak çok iyi.
      Linus Torvalds’ın ifadesiyle, “GNU gibi büyük ve profesyonel bir şey yapmaya çalışmıyorum, kendim için yapıyorum” tavrıyla yola çıkınca çok daha az çabayla çok şey başarılabilir. Böyle yapınca pratik tavizler verebilir, ister öğrenme amacıyla ister gerçek kullanım için olsun bir “ürün” yapmaya kıyasla çok daha az emekle kendin için yararlı bir şeye ulaşabilirsin. Benim kişisel projelerim de çoğu kez böyle küçük kişisel projeleri keşfedip parçalarını yeniden kullanırken bambaşka yönlere gitti. Devasa, özellikleri tamamlanmış bir canavarı küçültmek veya uyarlamaktansa “yeterince yakın” küçük bir projeyi alıp kullanmak çok daha kolay. Tarayıcının karmaşıklığının büyük kısmı tüm siteleri ve tüm kullanım senaryolarını desteklemek zorunda olmasından geliyor; ama kendim için yaparsam, önemsediğim sitelerin yeterince iyi çalışmasına odaklanabilirim ve sorun ciddi biçimde küçülür. Daha fazla insanın “imkânsız” projelere girişmesini isterim. Bütünü hemen başkalarına yararlı olmasa bile parçaları yararlı olabilir; bazen de Linux gibi küçük bir kişisel projeden daha büyük bir şey doğar.
    • Gürültüyü görmezden gelmek yeter. HN’de bazen çok fazla yengeç kovası psikolojisi oluyor.
      Birinin projesinin işe yaramaz bir zaman kaybı olduğunu söylemeye harcanan zamanın yarısı bile yapıcı bir şeye harcansaydı, dünyada çok daha fazla harika ve ilginç proje olurdu. Hiç denememektense cesur ve iddialı bir işte başarısız olmak daha iyidir.
    • Daha fazla insanın tarayıcı implementasyonu denemesini isterdim. Bunun muazzam bir iş olduğunu söyleyen çok yorum var ve gerçekten öyle olabilir; ama bu, o kadar da kötü olduğu anlamına gelmiyor.
      Modern web tarayıcısının tüm özelliklerini implemente etmek gerekmiyor. Battery API, Game Controller API, USB gibi şeylere gerek yok; önemli olan HTML, CSS ve JS’ye odaklanmak. En kötü durumda bile yeni bir şey öğrenirsin. Projede bol şans.
  • “Hiçbir şey beklemiyorum, bitirmeyi de beklemiyorum, yardım edecek kimse olmazsa yakında ölecek bir proje, piyasadaki dev oyuncuları devirecek baskın tarayıcı olmasını beklemiyorum” sözleri, Linus’un comp.os.minix’e gönderdiği Linux’un ilk duyurusuna benziyor.
    “Minix kullanan herkese merhaba. 386(486) AT klonları için özgür bir işletim sistemi yapıyorum. Sadece hobi, bu yüzden gnu gibi büyük ve profesyonel olmayacak…” diye başlayıp bash ve gcc’yi port ettiğini, birkaç ay içinde pratik bir şeyin ortaya çıkacağını düşündüğünü, uygulama sözü vermese de istenen özelliklerin söylenmesini istediğini yazdığı o gönderi. Sonunda da hiç minix kodu olmadığını, çok iş parçacıklı bir dosya sistemi bulunduğunu ama taşınabilir olmadığını ve muhtemelen AT sabit diskleri dışında bir şeyi desteklemeyeceğini söylemişti.

    • “Muhtemelen AT sabit diskleri dışında bir şeyi desteklemeyecek” demişti; şimdi ise uzay araçlarına Linux kuruyoruz.
      Bir projenin nereye varacağını kimse bilemez. Ve kendi nedenlerinle yaptığın bir işse, bir bakıma bunun önemi de yoktur.
    • O eski duyuruyu okuyunca insanın aklı almıyor; ama sonunda bugün buraya geldik. Linus’un hâlâ projeyi ciddi ve düzenli biçimde yönetiyor olması da şaşırtıcı; artık Linux internetin temel işletim sistemi hâline geldi. Neredeyse tüm büyük şirketlerin sunucu odaları, çoğunlukla Linux veya şirket içi türevlerini çalıştıran sunuculardan oluşuyor.
  • HN’de tarayıcılar ve açık web hakkında böylesine olumsuz bir hava olmasına alışkın değilim. Başarılı olup olmamasından bağımsız olarak bunun çok değerli bir deneme olduğunu düşünüyorum.
    Ortaya çıkan şey, büyük teknoloji şirketlerinin motivasyonları tarafından yönlendirilmeyen yarım yamalak bir tarayıcıdan ibaret olsa bile, bir gün Firefox’a bağımlı olmayı bırakmamız gereken an gelirse işe yarayabilir. Firefox’u çok sevdiğim için o günün gelmemesini umuyorum ama web’e erişirken tarayıcımın bir tür darboğaz olduğunu fark ettim. Aynı içeriği görebileceğim başka web siteleri de var, kullanabileceğim başka bilgisayar markaları da; ama arada her zaman Firefox var. Başka tarayıcılar da var ama çoğu Googlium’a, ya da bugün adı her neyse ona, dayanıyor gibi görünüyor. Bu yüzden bol şans diliyorum, başarılı olmasını umuyorum ve RSS akışına abone olup projeye ara sıra göz atmayı düşünüyorum

    • HN’de bir tarayıcı başlığı açıldığında, yeni bir tarayıcı yapmanın imkânsız olduğunu savunan, çok oy alan yaklaşık bir düzine yanıt gelmesi neredeyse değişmez bir rutin değil mi?
      Bunun gerçekten mümkün olduğuna dair kanıt da var. Ladybird sıfırdan yapıldı; hatta başlangıçta C++ standart kütüphanesini bile kendileri yazmışlardı ve 3-4 yıllık yarı zamanlı çalışmanın ardından artık Discord’u da yavaş da olsa çalıştırıyor. Şu anda tam zamanlı geliştiricileri de var. GoSub ise cargo.lock’a bakınca her şeyi sıfırdan uygulamaya çalışıyor gibi görünmüyor; görüntü çözücüleri gibi şeylerde hazır bileşenler kullanma ihtimali yüksek görünüyor, bu yüzden daha hızlı büyüme potansiyeli de var
  • Bugün “sıfırdan tarayıcı yazmak” aslında kutu içinde taşınabilir bir işletim sistemi, yani web platformunu uygulamak ve Google’ın kendi tarayıcısına eklemeye karar verdiği şeylerle uyumlu hale getirmek anlamına geliyor sayılır.
    Tarayıcılar o kadar geniş bir özellik ve API yelpazesine sahip ki, Google’ın durmaksızın yaptığı özellik değişikliklerini ve hâkimiyetini yakalamak zor; Microsoft bile bunu başaramadı. İlgili bir kişisel proje olarak Tersenet var. https://github.com/runvnc/tersenet
    Neredeyse hiç uygulaması olmayan bir kavram sayılır, ama gereksinimler insanların uygulayabilmesi için özellikle seçilmiş. Tam bir web tarayıcısından çok daha az karmaşık. GPT-4 ile ilgili bir tartışma da var. https://chat.openai.com/share/16d02b78-f876-4c87-949a-a60b4f...
    Gerçekten var olan ve pratik bir Gemini projesi de ilgili. https://geminiprotocol.net/ Tersenet fikrine ilham vermişti

    • Mutlaka öyle değil. Kapsamı hipermetin belge görüntüleyicisi ile sınırlarsanız bir anda ulaşılabilir hale geliyor. Birçok özellik kimsenin istemediği ve iyi amaçlarla da kullanılmayan PWA türü özellikler.
      WebSQL, IndexedDB, service worker’lar, WebGL, WebGPU, WebBluetooth, WebRTC gibi şeylerin hepsi yokmuş gibi davranabilirsiniz. Gerçek web sitelerinin %99’u, yani web “uygulaması” olmayan siteler, işlev kaybı yaşamaz
    • Ladybird çok genç bir proje olmasına rağmen oldukça iyi bir hızla ilerliyor. Elbette ana geliştiricinin bu alanda epey deneyimli olduğunu hesaba katmak gerekir.
      Kişisel olarak Blink ve akrabası WebKit’in tek kültürüne, ayrıca Gecko/Quantum dışında daha fazla alternatif motor olmasına sevinirim. WebKit tarafından yutulmadan önce KHTML’in tuttuğu yerin yerini alacak bir şey ya da deneyebileceğimiz başka bir açık kaynak seçenek olsa güzel olurdu
    • Google’ın kendi tarayıcısına eklemeye karar verdiği şeylerle uyumlu olmak gerektiği sözü abartılı. Çok daha basit HTML ile kişisel ana sayfasını sürdüren saygıdeğer pek çok insan var; news.ycombinator.com da klasik görünümünü koruduğu için seviliyor.
      Bu fikre büyük ölçüde katılan insanların kullanacağı bir alt küme üzerinde anlaşmasını isterdim; Google tarayıcısının yaptığı her şeyi yapmayan bir tarayıcıyla da memnun olabilirim. Ben uMatrix ile Google özelliklerinin epey bir kısmını kapatıyor, google.com alan adını asla izin listesine almıyor ve yine de dünyanın sonunun gelmediğini kanıtlar gibi kullanıyorum. Çalışmayan siteler görece az
    • Neden illa Google’ın yaptığını yapmak zorundayız? Çoğu web sitesi HTML ve ECMAScript’i izliyor. Bu projenin özü, büyük teknoloji şirketlerinin yaptıklarından ayrışmak değil mi?
      Web sitelerinin büyük çoğunluğu Google’a özel, sonradan çıkarılmış reklam teknolojileri, AMP, DRM gibi şeyleri izlemek istemiyor
    • Tarayıcı ekosisteminin zenginleşmesi için eksik olan şey, Java’ya benzer modüler ve bağımsız bir JavaScript runtime/interpreter olabilir mi? Java’da birden fazla JVM var. https://en.wikipedia.org/wiki/List_of_Java_virtual_machines
      Mozilla ve diğerlerinin, herkesin kullanabileceği bağımsız bir JavaScript “VM”i yapması gerekebilir
  • “Gerçek” bir tarayıcının nasıl çalıştığını hiç bilmezken kendi tarayıcısını yazmaya kalkmış biri olarak, üstelik özel bir layout engine de yapmış biri olarak, sadece deneyin derim.
    Kendi kodunuzla bir web sitesinin render edildiğini görmek, kod ya da çıktı ne kadar berbat olursa olsun çok tatmin edici. Benim projem yaklaşık iki buçuk yıllık ve artık HN’i ve basit blogları fena olmayan şekilde render ediyor. Başta yerine geçirmeyi düşündüğüm w3m’den nesnel olarak daha iyi mi, derseniz pek sayılmaz; hâlâ bazı işler için w3m’ye geri dönüyorum. Yine de hiç düşünmediğim işlerde faydalı oluyor, programlama hakkında çok şey öğrendim ve sonuçta çalışıyor olması harika. https://sr.ht/~bptato/chawan

  • Tarayıcı yapmak, rendering engine ve layout engine yapmak demektir. İmkânsız değil ama epey büyük bir iş
    Ama meyve verme olasılığı daha yüksek pek çok iş de var. Servo’yu Nyxt Browser’a port edebilir ya da WebKit/Servo/Gecko’yu fork’layıp reklam şirketlerinin son 10 yılda kullanıcılara zarar verecek şekilde web standartlarına enjekte ettiği istilacı şeyleri ayıklayabilirsiniz. Zaten sıfırdan yaparken yapmanız gerekecek işler bunlarsa, en dipten başlamak yerine birlikte çalışmaya istekli mevcut bir topluluktan başlamak daha iyi

    • Ben de bu yüzden WebKit ile yaptım. https://github.com/tholian-network/retrokit Çünkü Servo’nun eskisi kadar modüler olmadığı ortaya çıktı
      Gecko monolitik yapının tanımına yakın; bu yüzden saldırı yüzeyini ortadan kaldırmak imkânsız. Tor bile her iç API veya bridge değişikliğinde bozulan berbat bir stub değiştirme yöntemi kullanıyor. Ancak upstream’i tek başıma takip etmem imkânsız; katkı verenlere ve bakımcılara ihtiyaç var. Siber güvenlik açısından saldırı yüzeyini olabildiğince belgeledim, kalan işleri ve sonunda kaldırılması gerekenleri yazdım. https://github.com/tholian-network/retrokit/blob/main/SECURI...
      RetroKit’i kendi Browser Stealth’imin webview’i olarak kullanmak istediğim için bu oldukça öznel olabilir. Browser Stealth; filtreleme proxy’si, scraper ve merkeziyetsiz cache olarak çalışıyor. https://github.com/tholian-network/stealth Şu anda golang ile yeniden yazıyorum
    • Başka yazılımlara entegre edilmek üzere tasarlanmış bir web layout kütüphanesinin bakımını yapıyorum. https://github.com/DioxusLabs/taffy
      https://github.com/pop-os/cosmic-text gibi bir text layout engine ile birleştirilmesi gerekiyor ve henüz tüm özellikleri desteklemiyor. Şu anda eksik olan başlıca özellikler float, display: inline-block, box-sizing: content-box, position: static. Ama Block, Flexbox ve CSS Grid’i destekliyor; daha fazlasını da ekliyoruz
    • Ağır bir iş olduğu doğru ama bunun vazgeçme sebebi olmaması gerektiğini düşünüyorum. Bazı açılardan bugün eskisinden bile daha kolay. Çünkü artık kapsamlı standartlar var
      Büyük bir iş olduğu kesin ama kendini adamış küçük bir ekibin yapabileceği en imkânsız şey de değil
    • Rendering ve layout engine’in en baştan tüm ACID testlerinden geçmesi gerekmiyor, değil mi? Kademeli olarak inşa edilebilir
      Makul derecede basit HTML web sitelerini render etmekle başlanabilir; acele etmeye gerek yok ve standardın her köşesini uygulamak zorunda olduğunu söyleyen katı bir kural da yok. Web tarayıcıları ve web, muhteşem derecede insani şeyler
    • Rendering ve layout engine’i ancak sıfırdan yazmak istiyorsanız kendiniz yazmanız gerekir. Tarayıcı esas olarak kullanıcı-facing bir uygulamadır; içeride çalışan dişlilerin kendisi değildir
      Mevcut engine’leri alıp birbirine bağlasanız ve istediğiniz zaman değiştirebilecek kadar modüler yapsanız bile bu hâlâ düzgün bir tarayıcıdır. Şahsen buradaki insanların iç dişlilere fazla odaklandığını düşünüyorum; gerçekte ise rendering/layout/scripting dışında daha iyi arayüzlere ve başka bileşenlere ihtiyaç var
  • Destekliyorum. Devam etmeni umarım
    Python ile ORC Solver algoritmasının çok küçük bir bölümünü uyguladım ve rendering için wxWidgets kullandım. Metin genişliğini hesaplamak için wxWidgets’in text extent API’sini kullandım. ORC Solver whitepaper’ı burada. https://yuejiang-nj.github.io/Publications/2020CHI_ORCSolver...
    Branch and bound’u nasıl uygulayacağımı düşünüyorum; ilgili bilgi varsa iyi olur. Dizgi algoritmalarını görmek için TeX codebase’ini incelemem gerekecek gibi, layout bin packing için JavaScript kütüphanesi Masonry’yi kullanmak da çok ilginçti

  • “HTML’imi istiyorsan vereceğim! Arayın! Dünyadaki her şeyi oraya bıraktım”
    “Böylece hacker’lar hayallerinin peşinden HyperText Line’a yöneldi ve dünya gerçek Büyük Tarayıcı Çağına girdi!”
    Yıllarca tarayıcının aşılamaz bir dağ olduğuna inandım ama artık giderek daha fazla insan bunu başarabileceğimize inanıyor gibi. 2 saniyelik analizime göre bu akımı görmemizin nedeni, yeni tarayıcı yapımcılarının mevcut dev canavarları taklit edip onlarla rekabet etmek istemesi değil, web’i değiştirmek istemesi. Hoşuma gidiyor

  • Yazının siyasi kısmına gelince, dünya bozuk ve sadece bozuk haberleri okumak yorucu. Ama gerçeklikten kopup “apolitik” olmak, insanlıktan vazgeçmek; yani kendi çocuklarından ve yeğenlerinden, en yakın arkadaşlarının çocuklarından vazgeçmek demek bence.
    Dünyayı değiştirmek zorunda değilsin; kendi topluluğundaki küçük değişimler bile yeterli. Özellikle kod yazanlar olarak ürettiklerimiz, dünya çapında binlerce kişiyi etkileyip yönünü değiştirebilir. Herkes zamanının yalnızca %3–5’ini topluluğu desteklemeye ve bir tür faaliyete ayırsaydı durum farklı olur muydu diye bazen düşünüyorum.

    • Haberleri hiç takip etmiyorum. %99’u önyargılı çöp; çoğu zaman doğru bile değil ve zihni kirletiyor. Bu sayede hayatım ve ruh sağlığım çok daha iyi hale geldi.
      Haberlerde okuyacağım hiçbir şey oy verme biçimimi değiştirmeyecek; oysa haberlere bakmanın en iyi nedeni de muhtemelen bu olurdu.
    • Topluluk katılımı konusunda kesinlikle katılıyorum. Yaşlı komşunun evinin önündeki karı temizlemek gerçekten bir şey yapmak anlamına geliyor; bu yüzden iyi.
    • Büyük ölçüde katılıyorum. Birkaç yıl önce haber dinlemeyi bırakmaya karar verdim ama bu, çocuk sahibi olmamaya karar verdikten sonraydı. Çocuk yapan insanların kulaklarını tıkaması yanlış gibi görünüyor.
      Açıkça söylemek gerekirse ben dünyadan vazgeçtim. Ama başkalarının çocukları benim sorumluluğum değil. “Doğru olanı” yapmak için başkaları kadarını yapıyorum, ama daha fazlasını değil. Eskiden bunları düşünür, kişisel ayak izimi azaltmaya çalışır, sürdürülebilirliği ve gelecek nesilleri de hesaba katardım; ama umudumu kaybettim. Akıntıya karşı savaşıyormuşum gibi geliyordu. Artık sadece ayak izimin ortalamanın üstüne çıkmamasına ve çevremdekilere iyi davranmaya çalışıyorum.
    • Haber endüstrisiyle bağını koparmak, otomatik olarak gerçeklikle bağını koparmak anlamına gelmez. En azından öyle olmasını umuyorum. Teknik olmayan haberleri haftada ancak bir kez tüketiyorum.
  • Rust şartsa, Servo’ya katkıda bulunup küçük PR’larla başlayarak öğrenmek daha faydalı olabilir gibi geliyor. https://github.com/servo/servo
    Yine de mevcut kod tabanını okumakta zorlandığın ya da daha iyisini yapabileceğini düşündüğün için “sıfırdan” proje yaptığım oldu; bu yüzden anlıyorum. Herkesin kendi yöntemi var.

    • Bir programın oyuncak sürümünü kendin yazmak, büyük sürümü anlamanın harika bir yolu.
    • Rust ile Servo birlikte başladığı için Servo’da Rust 1.0 öncesinden kalma çok kod var; bunun etkisiyle stilin ideal olmadığı yerler bulunuyor.
      Benzer şekilde Servo, Firefox tarayıcısının bazı kısımlarının yerine geçecek şekilde tasarlanmıştı; bu yüzden “Gecko biçimli” boşluklara uyması gerekiyordu. Örneğin Firefox’un geri kalanıyla uyumluluk nedeniyle birçok yerde UTF-16 dizeleri kullanıyor. Bugün olsa Servo’yu modern Rust ile yeniden yazıp daha küçük, daha çevik ve belki de daha hızlı hale getirmek mümkün olabilir.
    • Servo harika bir proje ve Mozilla’nın yaptığı işleri de seviyorum; ama sonuçta finansal olarak Google’la bağlantılı değil mi?