2 puan yazan GN⁺ 2025-05-12 | 1 yorum | WhatsApp'ta paylaş
  • Google'da 19 yıl çalıştıktan sonra ayrılıyor
  • Go programlama dili geliştirilmesine uzun süre çekirdek düzeyde katkı sağladı
  • Go yaygın biçimde kullanılarak başlıca programlama dilleri arasına yerleşti
  • Projede derleyici, build sistemi, generics'in eklenmesi gibi çeşitli rollerde görev aldı
  • Ortamın ve projenin değişmesi nedeniyle yeni bir yol arama kararı aldı

Google'dan ayrılış sürecine giriş

  • Google'da 19 yıl çalıştıktan sonra ayrılmaya karar verdi
  • Bu sürenin büyük bölümünde şans eseri Go programlama dilinin geliştirilmesine katıldı
  • Go, 2007 sonbaharında Rob Pike, Ken Thompson ve Robert Griesemer tarafından başlatıldı
  • Ekibe 2008 Haziran'ında katıldı ve yaklaşık aynı dönemde Russ Cox da yer aldı
  • Olağanüstü insanlarla ve ilgi çekici projelerde birlikte çalışabilmiş olmayı büyük bir şans olarak görüyor

Go dilinin büyümesi ve beklentilerin ötesindeki başarı

  • Go son yıllarda çok geniş bir kullanım alanına kavuştu
  • Bugün, tüm programcıların ihtiyaçlarına göre seçebileceği bir 'genel amaçlı programlama dili' haline geldi
  • İlk başta Go'nun yalnızca diğer dillere ve ortamlara örnek alınabilecek fikirler sunmasının bile başarı olacağını düşünüyordu
  • Evrensel bir dil olarak büyümesi, ilk ekibin hiç beklemediği bir sonuç oldu

Go projesindeki başlıca roller ve katkılar

  • Go projesine, GCC derleyicisine bir Go frontend'i ekleyerek başladı
  • O sırada Go'nun, Inferno C derleyicisi tabanlı kendi derleyicisi vardı
  • Birbirinden farklı iki derleyici, dil tanımının netleşmesini sağladı
  • İç build sistemine ve SWIG aracına Go desteği ekledi, ayrıca ekip yönetimi rolü de üstlendi
  • Robert Griesemer ile birlikte dil değişikliği önerilerini geliştirerek Go 1.18'de (2022) generics eklenmesine katkı sağladı

Problem çözme yaklaşımı ve sınırlar

  • Bugünün ve yakın geleceğin net problemlerini hızla yakalayıp çözmeye katkıda bulundu
  • Ancak insanların henüz denemediği ve bu yüzden doğrudan deneyimlemediği sorunlara, örneğin Go module proxy'si ve Go güvenlik açığı veritabanı gibi yenilikçi fikirlere, yaklaşımı daha yavaştı
  • Kendi çalışma tarzının genel olarak projenin başarısına faydalı olduğunu düşünüyor

Değişim ve ayrılık kararı

  • Google, Go ve genel olarak bilgisayar programlama ortamının tamamı büyük ölçüde değişti
  • Son bir yılda artık Google içindeki Go projesi için uygun kişi olmadığını hissetti
  • Yeni bir aşamaya geçmesi gerektiğini fark etti

Gelecek planları ve Go hakkındaki düşünceleri

  • Go'ya karşı ilgisi ve sevgisi hâlâ sürüyor
  • Hiçbir programlama dili tamamlanmış halde kalmaz; değişen ortama uyum sağlamak için evrilmesi gerekir
  • Go gibi zengin standart kütüphaneye sahip diller bu değişime özellikle duyarlıdır
  • Şimdilik biraz dinlenecek, ancak gelecekte Go'ya yeniden katkı sunmayı umuyor

1 yorum

 
GN⁺ 2025-05-12
Hacker News görüşü
  • Google'da çalıştığım dönemde, Ian Lance Taylor rastgele atanan kod inceleyicilerinden biriydi. Her zaman nazik, kararlı ama aynı zamanda bilgilendiriciydi. Taylor ve proje hakkında çok olumlu bir izlenim edinmiştim; bu, YC'nin kuruculara müşteri desteğini bizzat vermelerini tavsiye etmesine benzer bir his uyandırıyordu. Dürüst olmak gerekirse, kod incelememde onun baş harflerini görmek bile heyecan vericiydi. golang için verdiği tüm emekler için teşekkürler
    • Böyle övgüler duymak gerçekten harika. Birini “nazik biri” olarak hatırlamak çok tazeleyici geliyor. Ben de hayatta gerçekten önemli bir ders çıkardım: zeki ya da 10x mühendis olarak anılmaktansa, nazik, kibar ve iyi biri olarak hatırlanmak çok daha iyi
    • Go'ya “önemsiz” bir dış katkıcı olarak konuşursam da (yaklaşık altı öneri ve PR üzerinde çalıştım), sonunda elenen ya da reddedilen işler için bile aynı şeyi söyleyebilirim. Nazik, kararlı, bilgilendirici ve meraklıydı. Bu projeye katkıda bulunma deneyimi son derece olumluydu ve bunda Ian'ın payı büyüktü. Go gibi büyük bir projede böyle bir deneyim sunmak gerçekten etkileyici
    • Ben de Go'nun kod okunabilirliği (Readability) sürecini çok sevmiştim. Bu süreç beni çok daha iyi bir programcı yaptı. Daha önce Google'da Python kod okunabilirliği onayı da almıştım ve “bu büyük değişikliği (CL) üstlen, süreç sonunda iyileşirse geçersin” tarzı yaklaşım Go'daki kadar faydalı olmamıştı. Go'ya özgü kuralların oluşturulup uygulanması bana çok yardımcı oldu (gerçi gece yarısı çağrılıp bu kodu bir an önce check-in edip uyumak istediğimi düşündüğüm zamanlar da oldu)
    • Benim deneyimim de benzerdi ama son c++ kod okunabilirliği değişikliğimde muhatap Titus Winters'tı. Onun yorumlarından birine karşı görüş bile belirtmiştim. Gerçekten, çok yetenekli birinin yaptığım işi ciddiye alması çok hoş bir histi
  • Ian'ın Go topluluğuna ve daha geniş programlama dünyasına yaptığı hizmeti abartmak mümkün değil. Sadece gccgo'yu değil, gold linker'ı da yazdı; derleyici araç zincirleri hakkında çok sayıda blog yazısı kaleme aldı ve gcc kod tabanının devasa bir kısmını yönetti. Ve muhtemelen benim bilmediğim daha pek çok katkısı da vardır. Ian'la birkaç kez e-posta alışverişi yapma şansım oldu ve bu her seferinde bana büyük ilham verdi. Google'da yoğun olmasına rağmen e-postalarıma ve yamalarıma her zaman içgörülü geri bildirimler verdi. Go dili hakkında duygularım karmaşık olsa da, Ian ayrılırsa bunun dil üzerinde de olumsuz etkisi olacağına eminim. İlk Go ekibinde Bell Labs havası vardı — bilgisayarı en ince ayrıntısına kadar anlayan birkaç kişi assembler, linker, iki derleyici, dil tanımı, belge üreticisi, build sistemi ve devasa bir standart kütüphane yaptı. Şimdiyse Google'ın ağırlığı arttıkça daha sönük ve kurumsal bir hava baskın hale geldi. Ian'ın ayrılık mesajında bu kültürel değişimi hissettim ve buna neyin yol açtığını merak ediyorum. Umarım bolca dinlenir; sonrasında hangi projeye yönelirse onu takip edeceğim
    • Go'nun derleyici araç zincirlerinin düzgün çalışmasının, yedeklilik ve işlev doğrulaması açısından çok önemli olduğunu düşünüyorum. Ama merak ettiğim şey şu: gerçekten insanlar ya da kurumlar gcc-go'yu belli amaçlar için kullanıyor mu?
  • "Gooogle da değişti, Go da değişti, genel programlama ortamı da değişti. Son bir yılda artık Google'daki Go projesi için uygun biri olmadığım netleşti. Ayrılmalıyım." Bu kısım beni biraz şaşırttı. Bunu atlayabilir ya da başka türlü ifade edebilirdi ama özellikle böyle yazdıysa, bence arkasında gerçek bir neden var
    • Son birkaç yılda Google'dan çok sayıda kıdemli mühendisin ayrıldığını gördüm. Yöneticilerden gelen baskı çok arttı, güven ise ciddi biçimde azaldı. L7 ve üzeri mühendisler için “yeterli etkiyi” yaratmanın yolu AI projelerine geçmekten geçiyor. Baskı arttıkça ekip içi çekişmeler de sertleşti; artık sadece güven yetmiyor, ilgili belgenin en üstünde adınızın yazması gerekiyor. 2023 öncesinde L7/L8 seviyesindeki mühendisler genelde yeni fırsatlar ya da emeklilik için ayrılırdı; şimdi ise çoğu iş ortamından bunalarak gidiyor. Gerçekten berbat bir durum
    • Bana sorarsanız... esas temeli zaten tutkulu mühendisler attı. Bugünün büyük teknoloji şirketleri artık sadece para kazanılacak yerler ve uzun vadeli vizyonla ilgilenmiyorlar. Tutku da hayal gücü de yok; insanlar ezberle giriyor, sonra PIP ya da işten çıkarılma sonrası başka bir dev şirkete geçiyor. Bu tiplerle dolu. Eski Google gibi startup'larda daha iyi fırsatlar olabilir
    • Sundar Pichai gibi pek de etkileyici olmayan birini Google'ın başına getirdikleri anda, Google'ı sadece gelir üreten bir şirkete çevirip özgün kültürünü yok etme niyetleri açıkça ortaya çıkmıştı
    • Böyle “FAANG'de 20 yıl çalışıp ayrılıyorum” yazıları gördüğümde hep şunu düşünüyorum: Aslında şirket o süre içinde katbekat büyüdüğü için inanılmaz zengin oldular ve artık sabah işe gitmek istemezlerse gitmeyecek kadar paraları var; bu yüzden ayrılıyorlar
    • Mühendisliğe ve doktora seviyesindeki araştırmacılara duyulan saygı kayboldu; CEO ise sadece kâra, gelire ve ticariliğe odaklanıyor. Dendiği gibi, sorun Sundar Pichai'nin vizyon eksikliği ve Google'ın ilk dönem kültürünü korumaya ilgi duymaması
    • İkinci kez okuyunca, “Gooogle”daki fazladan o harfinin bir yazım hatasından çok, eski Google arama sonuç sayfalarındaki çoklu o'lu sayfalama düzenine kasıtlı bir gönderme olabileceğini düşündüm
    • Asıl şaşırtıcı gelen şeyin buna şaşırmak olması bana tuhaf geliyor. Google'ın Emerald Sea döneminde tamamen değiştiği eski Googler'lar arasında zaten iyi bilinen bir şey. Bu kadar büyük bir organizasyonda hâlâ iyi takımlar vardır elbette ama genel olarak 10 yılı aşkın süredir durgunluk ve çürüme içinde
    • Bence yönetim artık baskıyı gerçekten artırmaya başladı. Artık teknik olmayan yöneticiler baskın durumda
    • Bu anlatı son 10 yıldır tekrar edip duruyor. 2010'ların sonundaki kitlesel işe alımlar ve 2020'lerin başındaki işe alım çılgınlığı, olağanüstü yetenek yoğunluğunu sulandırdıktan sonra Google sürekli geriye gitti. Mühendis kalitesindeki bu ciddi düşüş, ücret ve yan hakların azalmasına ve en önemlisi özerkliğin kaybına yol açtı. Bürokrasi ve siyasi çekişme her yere yayıldı. Ben 10 yıl önce ayrılırken bile, Gmail gibi bir hizmetin %20 proje zamanı ile yapılabileceğini düşünmek artık imkânsızdı. %20 kuralı neredeyse yok oldu; kötü PM'ler de kendi alan kavgaları uğruna yeni projeleri boğdu. Artık Google B, C, D seviyesi insanlarla dolu ve Intel, Cisco, IBM'in yolundan giderek geri döndürülemez hale geldi. Birkaç çok iyi kişi, vasat çalışanların arasında yavaş yavaş eziliyor
    • Ian muhtemelen Yale mezunu ve zaten milyarder düzeyinde bir servete sahip; çoğu sıradan insan için özel bir empati besliyor da değildir. Sadece FatFIRE hedefine ulaşıp ayrılmıştır
  • 2016'da Google'da çalışırken tüm ekibim golang kullanıyordu. İlk projem sırasında Ian'dan birkaç kez kod okunabilirliği onayı aldım. Bir gün onayla birlikte birkaç ek düzeltme de istemişti ama ben bunu fark etmeden değişiklikleri gönderdim. Ian tekrar mesaj atıp düzeltmeleri yapmam gerektiğini söyledi. Ancak daha sonra onun çekirdek Golang geliştiricilerinden biri olduğunu öğrendim. Bunu yapmak zorunda değildi ama yine de nazik davranmıştı; bu yüzden çok aklımda kaldı. Gerçek kullanım şeklini bizzat görmeye ve temel sorunları bulmaya bu kadar zaman ayırması gerçekten takdire şayan
  • Bir Go geliştiricisi olarak, bu dile ve topluluğa yaptığınız devasa katkılar için size derin teşekkürlerimi iletmek istiyorum. Çalışmalarınız sayesinde Go bugün olduğu kadar üretken ve keyifli bir dil oldu; benim de içinde olduğum sayısız mühendise daha iyi yazılım üretmeleri için ilham verdi. Adanmışlığınız için teşekkür eder, gelecek nesil Go geliştiricileri için yeni yollar açtığınız için minnet duyarım. Bundan sonraki yolculuğunuzda başarılar
  • "Gooogle da değişti, Go da değişti, bilgisayar programlama ortamının tamamı da değişti. Son bir yılda artık Google'ın Go projesine uygun olmadığım açıkça ortaya çıktı. Ayrılmam gerekiyor." Bu bölümde biraz daha açıklama olmasını isterdim. Görünüşe göre gerçekten somut bir değişim yaşandı ve Ian bunu fark etti
    • Muhtemelen her şeyi daha AI odaklı yapması istenmiştir. “Go derleyici hatalarına Gemini ekle, yoksa git” gibi bir talep bile olabilir
    • Daha fazla açıklamaya gerçekten gerek var mı emin değilim. Zaten dışarıdan bakıldığında da bilinen şeyler bunlar. Antitröst meseleleri, kısa vadeli kâra odaklanan liderlik, uzun süre teknik lider olan bir şirketin Microsoft/IBM tarzı sıradan bir şirkete dönüşmesi, artık trend belirlemek yerine modaların peşinden gitmesi (AI dahil), tartışmalı hükümetlerle çalışarak “Do no evil” ilkesini de terk etmesi, dayanılmaz hale gelen yalanlar ve sinik atmosferden bıkıp hisse opsiyonları vade dolunca ayrılması
  • Buradaki asıl soru, 2005'teki Google gibi bir şirketin bugün hâlâ var olup olmadığı. Gerçekten OpenAI bu rolü mü üstleniyor, yoksa artık böyle bir şey hiç mi yok, merak ediyorum. Bir de, birçok mühendisin altın çağ olarak hatırladığı o dönemin gerçekte ne kadar sürdüğü de ayrı bir soru
    • Bence 2005'teki Google bir daha var olamaz. O dönemde temel teknoloji hızla güçleniyordu ve o anda yaratıcı şekilde yatırım yapan şirketler olağanüstü zenginleşti. 2022'de Google'a girdim ve kısa süre sonra ayrıldım; yeni biri olarak bile sadece altın çağın bitmediği, sonrasındaki dönemin de tükenmekte olduğu açıkça görülüyordu. Hava, “daha iyi ürün yapalım” değil, daha çok “sorun çıkarma, %1-2 iyileştirme yeter” şeklindeydi
    • Google gibi bir şirket artık yok. Bell Labs'e benzer, çağdaşları arasında dengi olan bir ekip de yok
    • Yok. Yeniden yaratma fırsatı ise var. Bu nesil şirketlerin sorunu teknoloji değil, kültür
    • Dışarıdan izleyen biri olarak bana göre altın çağ yaklaşık 2013-2014 civarında sona erdi. Teknoloji şirketi kültürüne kapitalizm öyle fazla nüfuz etti ki, o yenilikçilik ve deney ruhunun yeniden doğması artık zor görünüyor. Şimdi daha çok mevcut makineyi yağlamakla uğraşılıyor
    • Böyle bir şirket henüz yok / henüz göremiyoruz. Sonuçta 1 trilyon doların üzerine çıkacak bir sektörü ve arama (Search) gibi vazgeçilmez bir araç sağlayan bir şirketi tahmin etmeye çalışıyorsunuz
    • Hâlâ Google
  • İlginç olan şu ki, blogda neredeyse hiç yazı yok. Gerçekten okumak isteyeceğim yazı, “The 2016 Election” başlıklı yazının devamı olurdu
  • Chrome ve Golang projelerindeki kilit isimlerin ayrıldığını görünce, yönetimin işi iyi yapmadığı çok açık
    • Başka göstergeler de olabilir ama bu kişinin 19 yıl çalıştıktan sonra ayrılması da göz ardı edilemez
    • Her şeyi AI üzerine koyuyorlar. Bunun bir hayatta kalma savaşı olduğunu yönetim de biliyor
  • Komplo teorisi üretmeye çalışmıyorum ama bunun Ian Hickson'ın Google/Flutter ekibinden ayrılmasıyla bağlantılı olup olmadığını merak ediyorum. Hickson çok net konuşmuştu. Asıl sorun, Sundar Pichai'nin vizyonsuz liderliği ve Google'ın erken dönem kültürünü korumaya ilgisizliği; bir de etkisiz orta kademe yöneticilerin çoğalması. Örneğin Jeanine Banks bir stratejileri olduğunu söylerdi ama yıllarca açıklamasını dinledikten sonra bile bunun pratikte ne anlama geldiğini bir kez olsun anlayamadım. Ekipteki uzmanlıkla hiçbir ilgisi olmadan mühendisleri adeta değiştirilebilir parça gibi yer değiştiriyordu ve geri bildirime de hiç açık değildi. Duyduğuma göre başka organizasyonlar, Banks'i idare edip hasarı sınırlamanın yolunu bilen daha politik liderlere sahipti. Google'ın en iyi dönemini görmüş biri olarak bu yeni gerçeklik çok yıkıcı geldi
    • Mühendisleri insan değil de sadece kaynak (resource) gibi görüp, ekip üyelerinin ne istediğini umursamadan yeteneklerine uygun olmayan yerlere yerleştiriyor. Sadece o da değil. Başka bir yönetici de çekirdek Python ekibinin tamamını işten çıkarıp yerine daha düşük ücretli bir TypeScript ekibi getirdi; sonra onu da daha ucuz bölgelerdeki yeni çalışanlarla yeniden doldurdu
    • Onun departmanının bir “stratejisi” olduğu söyleniyordu ama ne kadar anlatılırsa anlatılsın bunun ne anlama geldiğini hiç kavrayamıyordum. Bu benim deneyimimle de birebir örtüşüyor. Google'da üst düzey orta kademe yöneticilerden VP'lere, bazen SVP'lere kadar olan iletişim ezici ölçüde anlaşılmaz; her şeyi söylüyor gibi yapıp aslında hiçbir şey söylemiyor. Büyük değişikliklerden söz ederken aynı anda hiçbir şeyin değişmediğini de vurguluyorlar. Bence bu, yön ya da vizyon ya da hedef dili değil; diğer yöneticiler üzerinde etki bırakmak için kullanılan bir ambalaj dili. Değerlendirmelerde kredi toplamak için kullanılıyor. Google'da “5 saniye içinde hangi takımda olduğunu söyleyemiyorsan Googler'sın” diye bir şaka bile vardı. Mühendisler çok yetenekli (bu yüzden sahte imposter sendromu da yaygın) ama gerçekte herkes pusulasız şekilde farklı yönlere gidiyor gibiydi. Büyük bir şirket nasıl yönetilir bilmiyorum ama başlangıç olarak her şeyi sade bir dille anlatmak iyi olurdu. Hatta bu kurumsal dili “çeviren” kişilerin bile ortak bir gerçeklik kurmakta zorlandığını düşünüyorum
    • İnsanlar şirkete girer ama ayrıldıklarında sebep genelde haksız ya da kötü yöneticiler olur
    • Bunu paylaştığın için teşekkürler. Bu sektördeki en büyük korkularımdan biri, erken dönem Google gibi bir şirketi bir daha asla göremeyecek olmamız. Pichai şirketin başına geçtiğinde aslında şirketin adını bile değiştirmeleri gerekiyordu. Bugün çoğu eski Google çalışanı bambaşka bir kurumda çalışmış sayılır
    • Evet, insanları sadece “kaynak” olarak gören atama politikası yine karşımızda
    • Benim deneyimim Google'da değil, benzer ölçekte bir Amerikan şirketindeydi. Strateji hakkındaki anlatılanlar birebir uyuyor. Verimsiz orta kademe yönetime dair eleştiriler de aynı şekilde. İçeride bu durumu doğuran siyaseti tanımlayan resmî bir terim bile var ama burada kullanırsam kesin tepki çekerim, o yüzden yazmayacağım. Stratejisiz kalma politikası, proje sonuçlarını ölçmeme politikası, rol ve sorumluluk kavramını ortadan kaldırıp “herkes gerektiği yerde devreye girmeli” anlayışı... tam olarak aynı düzen