Meninggalkan Google
(airs.com)- Ian Lance Taylor meninggalkan Google setelah bekerja 19 tahun, dan menghabiskan sebagian besar masa itu untuk mengembangkan bahasa pemrograman Go
- Go dimulai pada musim gugur 2007 oleh Rob Pike, Ken Thompson, dan Robert Griesemer; Taylor bergabung pada Juni 2008, sekitar waktu yang sama dengan Russ Cox
- Berbeda dari ekspektasi awal, Go melampaui sekadar eksperimen ide sederhana dan kini menjadi bahasa pemrograman umum yang dipilih pengembang sesuai kebutuhan
- Taylor terlibat dalam pekerjaan fondasi bahasa dan ekosistem Go, termasuk frontend Go untuk GCC, sistem build internal Google, dukungan SWIG, manajemen tim, dan proposal generics
- Seiring berubahnya Google, Go, dan lingkungan pemrograman, Taylor menilai kecocokannya dengan proyek Go di Google telah berkurang, dan berharap dapat kembali berkontribusi pada Go setelah beristirahat
19 tahun di Google dan bergabung dengan Go
- Ian Lance Taylor meninggalkan perusahaan setelah bekerja di Google selama 19 tahun
- Ia menghabiskan sebagian besar masa kerjanya untuk mengerjakan bahasa pemrograman Go
- Go dimulai pada musim gugur 2007 oleh Rob Pike, Ken Thompson, dan Robert Griesemer
- Taylor bergabung dengan tim Go pada Juni 2008, dan Russ Cox juga bergabung sekitar waktu yang sama
- Ia merasa beruntung bisa bekerja bersama orang-orang hebat dalam proyek-proyek yang menarik
Penggunaan Go yang meluas melampaui perkiraan
- Taylor terkejut bahwa Go digunakan jauh lebih luas selama bertahun-tahun daripada yang ia perkirakan
- Go kini telah mencapai posisi sebagai bahasa pemrograman umum yang dapat dipilih pengembang saat dibutuhkan
- Ekspektasi awalnya bukan penyebaran Go secara besar-besaran, melainkan lebih sebagai contoh ide-ide berguna yang bisa dijadikan rujukan oleh bahasa lain dan lingkungan pemrograman
Pekerjaan pada compiler dan spesifikasi bahasa
- Pekerjaan Go pertama Taylor adalah menambahkan frontend Go ke compiler GCC
- Saat itu proyek Go sudah memiliki compiler yang ada, berbasis compiler Inferno C
- Keberadaan dua compiler secara bersamaan membantu memperjelas definisi bahasa
- Setiap kali perilakunya berbeda, spesifikasi harus disempurnakan dan perilaku yang benar harus ditentukan
Peran dalam tim dan pengenalan generics
- Taylor mengambil peran sendiri di tim Go untuk melihat keseluruhan proyek dan menemukan area yang membutuhkan bantuan
- Pada beberapa tahun awal, ia menambahkan dukungan Go ke sistem build internal Google dan tool SWIG
- Selama beberapa tahun, ia juga menjabat sebagai manajer tim
- Sejak masa awal Go, para pengembang meminta dukungan untuk suatu bentuk generics atau parameterisasi tipe
- Taylor, bersama Robert Griesemer, mengembangkan beberapa proposal perubahan bahasa
- Generics ditambahkan ke bahasa dalam rilis Go 1.18 pada 2022
Evaluasi terhadap cara kerjanya sendiri
- Taylor menilai pendekatannya memiliki kelebihan sekaligus kekurangan
- Kelebihannya adalah ia dapat dengan cepat memahami masalah yang sedang dan akan segera dihadapi orang, lalu membantu mengarahkannya ke solusi
- Sebaliknya, ia memiliki keterbatasan dalam mengenali lebih lambat ide-ide yang belum dicoba sehingga kebutuhannya belum terlihat
- Contohnya Go module proxy
- Contohnya Go vulnerability database
Alasan pergi dan rencana berikutnya
- Taylor menilai cara kerjanya secara keseluruhan membantu membangun proyek yang sukses
- Namun Google, Go, dan lingkungan pemrograman komputer semuanya telah berubah
- Selama sekitar setahun terakhir, ia menilai semakin jelas bahwa dirinya tidak lagi cocok dengan proyek Go Google
- Minatnya terhadap Go tetap ada
- Ia tidak melihat bahasa Go sudah selesai
- Tidak ada bahasa pemrograman yang tetap berada dalam keadaan selesai
- Lingkungan pemrograman terus berubah, dan bahasa akan hilang jika tidak berevolusi
- Bahasa seperti Go, yang memiliki standard library cukup besar, juga harus menyesuaikan standard library-nya dengan kebutuhan baru programmer
- Taylor berencana beristirahat untuk sementara, lalu berharap dapat kembali berkontribusi pada Go di masa depan
1 komentar
Opini Hacker News
Sulit melebih-lebihkan skala kontribusi Ian kepada komunitas Go dan komunitas pemrograman secara keseluruhan.
Ia tidak hanya membuat gccgo, tetapi juga linker gold, menulis banyak sekali tentang toolchain compiler, dan telah memelihara area besar dari codebase gcc [0].
Saya pernah beberapa kali bertukar email dengannya; apa pun tanggung jawab dan prioritasnya di Google, ia selalu membalas, meninjau patch, dan umpan baliknya juga penuh wawasan.
Saya punya perasaan campur aduk tentang bahasa Go itu sendiri, tetapi Go tanpa Ian jelas rasanya akan menjadi lebih buruk.
Tim awal Go punya nuansa seperti Bell Labs; segelintir orang yang memahami komputer luar-dalam mengerjakan semuanya: assembler, linker, dua compiler, spesifikasi bahasa, generator dokumentasi, build system, hingga standard library yang sangat luas.
Sekarang, seiring Go makin penting bagi Google dan praktik standar proyek perangkat lunak berskala besar mulai masuk, tampaknya budayanya menjadi lebih datar dan korporat.
Saya kira perubahan budaya seperti inilah yang Ian isyaratkan dalam pesannya, tetapi saya penasaran titik balik konkret apa yang membuatnya memutuskan untuk pergi.
Semoga Ian bisa beristirahat dengan cukup, dan saya ingin mengikuti proyek apa pun yang ia kerjakan berikutnya.
[0]: https://github.com/gcc-mirror/gcc/blob/master/MAINTAINERS
Namun saya penasaran sebenarnya orang atau organisasi memakai gcc-go untuk apa.
Saat bekerja di Google, Ian Lance Taylor termasuk dalam kumpulan code reviewer yang ditugaskan secara acak.
Ia sopan, tegas, dan menyampaikan informasi dengan baik.
Ini terlihat baik bagi Taylor maupun proyeknya; review semacam ini terasa seperti versi dari nasihat YC kepada founder agar menangani dukungan pelanggan secara langsung.
Mungkin ini kesan yang dangkal, tetapi cukup menggetarkan melihat inisialnya muncul di code review saya.
Terima kasih atas semua yang telah ia lakukan untuk golang.
Saya belajar pelajaran hidup penting bahwa lebih baik dianggap sopan, baik hati, dan orang yang baik daripada pintar, developer 10x, atau kompeten.
Ia sopan, tegas, informatif, dan saya ingin menambahkan bahwa ia juga punya rasa ingin tahu.
Pengalaman berkontribusi ke proyek itu sangat baik, dan Ian menjadi bagian besar darinya.
Untuk proyek besar seperti Go, itu mengatakan banyak hal.
Saya juga mengikuti readability Python di Google, tetapi pendekatan “bawa satu CL raksasa, lalu buat menjadi bagus di akhir proses, selesai” tidak terasa seberguna proses Go.
Saya senang tim Go membuat aturannya sendiri, dan itu juga membantu saya.
Tentu saja rasanya berbeda ketika menerima panggilan tengah malam dan berpikir “saya cuma perlu check-in kode ini lalu tidur lagi” ;)
Saya bahkan sempat mencoba membantah salah satu komentarnya.
Rasanya cukup keren ketika seseorang yang benar-benar tahu apa yang ia lakukan memberi cap persetujuan pada pekerjaan saya.
Kalau ingatan saya tidak salah, itu benar-benar luar biasa.
Bagian “Gooogle [sic] telah berubah, Go juga telah berubah, dan seluruh lingkungan pemrograman komputer pun telah berubah. Dalam sekitar setahun terakhir, menjadi jelas bahwa saya tidak lagi cocok dengan proyek Go di Google. Sekarang saatnya pergi” cukup mengejutkan.
Tiga kalimat ini bisa saja dengan mudah dihapus atau diganti dengan basa-basi, jadi fakta bahwa ia sengaja menuliskannya menunjukkan ada sesuatu yang berbobot di sini.
Tekanan dari sisi manajemen jauh lebih besar, sementara kepercayaan jauh berkurang.
Banyak L7+ juga mendapat ekspektasi bahwa untuk memiliki “dampak yang cukup”, mereka harus mengerjakan sesuatu yang terkait AI.
Seiring tekanan meningkat, perebutan wilayah di antara mereka juga makin banyak; tidak cukup lagi menjadi manajer tepercaya, melainkan nama sendiri harus berada di bagian paling atas dokumen terkait dan nama rekan tidak boleh ada di sana.
Sebelum 2023, saya hampir hanya melihat L7 dan L8 yang bekerja dengan saya meninggalkan Google karena menemukan peluang baru yang menarik atau pensiun.
Sekarang kebanyakan orang di level ini pergi karena muak dengan Google.
Ini kacau.
Perusahaan teknologi besar saat ini hanyalah tempat orang pergi untuk mencari uang, dan belum tentu peduli pada visi jangka panjang.
Kebanyakan diisi oleh tipe orang yang nyaris tidak punya gairah terhadap rekayasa atau komputer, hasil pelatihan ala bimbel yang dipaksakan.
Tidak ada imajinasi, tidak ada pemikiran di luar kotak; mereka menghafal untuk bisa masuk kerja, lalu terkena PIP atau PHK dan mengulangi hal yang sama di perusahaan besar lain.
Tipe yang bilang TC atau pergi saja.
Anda mungkin lebih beruntung di startup seperti Google kemarin.
Fokus yang turun dari CEO semuanya diarahkan pada profitabilitas, pendapatan, dan komersialitas.
Sepertinya orang ini sebelumnya pernah menulis seperti ini:
“Banyak masalah Google saat ini berasal dari ketiadaan kepemimpinan visioner Sundar Pichai dan ketidakpeduliannya yang jelas terhadap pemeliharaan norma budaya Google awal.”
Pada 2016, saat berada di Google, saya mulai di tim yang semuanya memakai golang
Untuk proyek pertama, kami sedang membuat layanan baru, dan beberapa kali mendapat persetujuan keterbacaan dari Ian
Suatu kali saya mendapat persetujuan yang disertai permintaan lanjutan, tetapi saya tidak melihatnya dan sudah keburu menerapkan perubahan
Ian menghubungi lagi dan meminta saya mengerjakan tindak lanjut itu; saat itu saya bahkan belum tahu bahwa ia adalah salah satu pengembang inti Golang
Ia benar-benar murah hati meski sebenarnya tidak perlu bersikap begitu, dan kejadian itu rasanya akan selalu saya ingat
Sungguh luar biasa bahwa ia menginvestasikan begitu banyak waktu untuk melihat bagaimana bahasa itu benar-benar digunakan dan menemukan masalah-masalah inti
Saya ingin mendengar lebih rinci tentang paragraf: “Gooogle telah berubah, Go juga telah berubah, dan seluruh lingkungan pemrograman komputer pun berubah. Dalam kira-kira setahun terakhir, menjadi jelas bahwa saya tidak lagi cocok dengan proyek Go di Google. Sekarang saatnya pergi”
Sepertinya ada perubahan nyata yang Ian sadari
Semacam “masukkan Gemini ke error compiler Go, atau keluar”
Ada masalah antimonopoli, kepemimpinan buruk yang mengorbankan perusahaan demi keuntungan jangka pendek, dan perubahan jelas dari perusahaan teknologi yang lama sangat dominan menjadi kloning Microsoft/IBM lainnya
Mereka bukan lagi pemimpin industri, hanya mengikuti tren dan menunggangi gelombang, seperti tren AI
Mereka tunduk pada pemerintah dengan sejarah yang meragukan dan mendukung proyek yang bisa terkait dengan kematian warga sipil
“Don’t be evil” benar-benar tidak lucu lagi
Saya kira ia benar-benar muak dengan omong kosong yang terus-menerus dan kebohongan yang harus dipaksa ditelan
Waktu keluarnya juga mungkin disesuaikan dengan kompensasi saham atau jatuh tempo opsi
Pertanyaan metanya di sini adalah apa Google tahun 2005 pada masa kini
Apakah benar OpenAI? Apakah bahkan ada?
Pertanyaan yang lebih meta lagi adalah, sebenarnya berapa lama kondisi Google yang banyak dikenang para engineer sebagai masa keemasan itu bertahan
Perusahaan itu lahir pada era ketika teknologi dasar menjadi jauh lebih kuat, dan perusahaan yang berinvestasi secara kreatif pada teknologi di masa itu menjadi kaya pada skala yang sulit dibayangkan
Saya bergabung dengan Google pada 2022 lalu keluar, dan bahkan di mata karyawan baru pun jelas bahwa masa keemasannya bukan hanya sudah berakhir, tetapi era pasca-masa-keemasan juga sedang meredup
Suasananya bukan “inovasi nekat sudah selesai, tapi mari buat produk sebaik mungkin”, melainkan “jangan merusak apa pun, dan kalau bisa peras peningkatan 1–2%”
Google adalah produk khas zamannya seperti Bell Labs, dan Bell Labs pun tidak punya padanan modern
Ada peluang untuk membuatnya
Menurut saya masalah perusahaan-perusahaan generasi ini bukan teknologi, melainkan budaya
Budaya teknologi sudah terlalu dipenuhi kapitalisme tanpa ampun, jadi rasanya hal seperti itu tidak akan terjadi lagi
Dulu setidaknya masih terasa ada kemauan untuk berinovasi dan bereksperimen
Sekarang hanya soal melumasi mesin
Ini sama saja mencoba memprediksi industri yang akan tumbuh melampaui 1 triliun dolar dan perusahaan yang akan menyediakan alat yang fundamental dan ada di mana-mana seperti pencarian
Bukan bermaksud membuat teori konspirasi, tapi saya penasaran apakah ini ada kaitannya dengan kepergian Ian Hickson dari tim Google/Flutter [1]
Ia secara spesifik menyebut beberapa nama
“Banyak masalah Google saat ini berakar dari absennya kepemimpinan visioner Sundar Pichai, serta ketidakpeduliannya yang tampak jelas terhadap upaya mempertahankan norma budaya Google awal. Salah satu gejalanya adalah menjamurnya lapisan manajemen menengah yang tidak kompeten. Misalnya, Jeanine Banks mengelola sebuah divisi yang mencakup Flutter, Dart, Go, Firebase, dan lain-lain secara agak arbitrer. Divisinya secara nominal punya strategi, tetapi saya tidak bisa membocorkannya sekalipun ingin. Selama bertahun-tahun saya mendengarnya menjelaskan, tetapi secara harfiah saya sama sekali tidak pernah bisa memahami bagian mana pun maksudnya apa. Tingkat pemahamannya tentang apa yang dikerjakan tim-timnya paling banter minimal. Ia sering mengajukan permintaan yang benar-benar tidak koheren dan tidak dapat diterapkan. Ia memperlakukan engineer seperti komoditas, secara tidak manusiawi, dan memindahkan orang-orang tanpa memedulikan keinginan mereka dengan cara yang tidak ada hubungannya dengan kemampuan. Ia sama sekali tidak bisa menerima umpan balik konstruktif. Secara harfiah bahkan tidak mengakuinya. Saya dengar tim-tim lain punya pemimpin yang lebih cerdik secara politik daripada saya, sehingga mereka belajar cara ‘menangani’ dia. Caranya dengan hanya menyuapkan informasi yang tepat pada waktu yang tepat agar ia tidak merepotkan. Dari sudut pandang seseorang yang pernah melihat Google pada masa terbaiknya, realitas baru ini menyedihkan”
[1]: https://ln.hixie.ch/?start=1700627373
Eksekutif lain memecat seluruh tim Python
Banyak di antara mereka adalah kontributor inti Python, lalu diganti dengan tim TypeScript bergaji lebih rendah, kemudian diisi lagi dengan tim baru di wilayah bergaji lebih rendah
Cara mereka berkomunikasi tidak dapat dipahami; mereka mengatakan semuanya sekaligus tidak mengatakan apa-apa
Pengumuman yang memuat pesan tentang perubahan dramatis sekaligus bahwa semuanya tetap sama keluar bersamaan, sehingga sangat membingungkan
Teori saya, ini bukan untuk menentukan arah atau menjelaskan visi maupun tujuan, melainkan sesuatu yang mengerucut pada upaya terlihat mengesankan di mata manajer lain dan menetapkan posisi sosial
Ini dipakai sebagai bahan untuk mengklaim pencapaian saat penilaian kinerja
Salah satu meme yang saya ingat adalah “kalau kamu tidak bisa menjawab dalam 5 detik kamu berada di tim mana, mungkin kamu seorang Googler”
Para engineer-nya luar biasa hebat, tetapi impostor syndrome juga tersebar luas, dan rasanya seperti semua orang tersesat ke arah berbeda-beda dengan mata tertutup
Saya juga tidak tahu bagaimana seharusnya menjalankan perusahaan besar, tetapi titik awal yang baik tampaknya adalah memakai bahasa yang jelas dan deskriptif
Jelas bahkan para ahli penerjemah bahasa korporat pun tidak mampu menciptakan realitas bersama
Salah satu hal yang paling saya takuti tentang industri kita adalah kemungkinan kita tidak akan pernah lagi memiliki perusahaan seperti Google awal
Saat Pichai mengambil alih komando, mereka seharusnya mengganti nama perusahaan
Karena perusahaan itu sudah berubah menjadi sesuatu yang tak bisa dikenali
Sebagian besar orang yang kita temui yang pernah bekerja di Google kemungkinan adalah orang-orang yang bekerja di bawah rezimnya
Jika orang-orang inti Google pergi dari Chrome dan sekarang juga dari proyek golang, tampaknya cukup jelas bahwa jajaran manajemen tidak sedang bekerja dengan baik
Mungkin memang benar
Saya tidak terlalu paham politik internal Google, tetapi selama beberapa tahun terakhir tampaknya cukup sering ada tulisan dan posting blog dari tokoh-tokoh terkenal yang mendadak mengumumkan pengunduran diri
Apa yang ada di balik arus ini?
Setiap ketidaknyamanan konkret yang membuat saya lelah di Google, jika ditelusuri akarnya, akhirnya sampai ke sini, dan karena itu saya pergi pada Agustus
Ketika sebuah organisasi yang relatif kecil berhasil dengan merekrut talenta terbaik lalu memperbesar jumlahnya, model itu tidak dapat diskalakan sehingga akan menurun
Ketika ukurannya mencapai puluhan ribu orang, para bodoh yang disebut “manajemen profesional” masuk, dan organisasi mula-mula merosot secara rata-rata
Karena di dunia ini tidak ada cukup puluhan ribu orang yang benar-benar hebat
Lalu para bodoh itu memberi dampak negatif yang sangat besar, dan organisasi mulai membusuk
Begitu mereka mengubah budaya ke arah yang buruk, orang-orang terbaik pergi, dan kualitas rata-rata karyawan turun lebih jauh
Yang terjadi adalah perlombaan menuju dasar bukan dalam harga, melainkan kualitas karyawan
Google seharusnya memisahkan Go menjadi yayasan nirlaba, memberinya 1 miliar dolar, dan membuatnya independen
Mereka harus memohon Russ Cox untuk menjalankannya sebagai benevolent dictator seumur hidup, dan berharap bisa merekrut kembali Ian Lance Taylor