- James Gosling dinilai sebagai pencipta Java sekaligus jenius pragmatis yang telah memengaruhi komputasi modern selama 30 tahun
- Berasal dari lingkungan yang miskin, ia belajar pemrograman dengan merakit komputer dari komponen yang dipungut dari tumpukan sampah, dan pembelajaran mandiri ini kemudian tercermin dalam filosofi desain bahasanya
- Masa di Sun Microsystems, ketika keisengan dan inovasi hidup berdampingan, menjadi fondasi kreativitas khas Gosling dan pembentukan budaya teknologinya
- Belakangan ini ia menunjukkan skeptisisme yang kuat terhadap alat AI generatif dan ledakan AI, serta menegaskan bahwa pentingnya pendidikan pemrograman justru semakin besar
- Rahasia kelangsungan hidup Java bukanlah kemewahan, melainkan filosofi desain pragmatis yang secara konsisten mengutamakan stabilitas, kompatibilitas mundur, dan produktivitas pengembang
Java at 30: The Genius Behind the Code That Changed Tech
- Java, yang genap berusia 30 tahun pada 23 Mei, adalah bahasa berorientasi objek tingkat tinggi serbaguna yang hingga kini tetap menjadi teknologi inti yang menjalankan sistem dalam berbagai skala
- Di balik keberadaan Java terdapat kepekaan teknis yang pragmatis dan intuisi kreatif James Gosling
- Gosling tumbuh dari remaja asal Kanada yang mandiri yang merakit komputer dari komponen yang dikumpulkan dari tempat sampah hingga menjadi programmer kelas dunia
- Filosofi “write once, run anywhere” menjadi simbol Java, dan berkembang menjadi filosofi bahasa yang mendorong perubahan mendasar dalam cara perangkat lunak dikembangkan
- Sepanjang kariernya, Gosling memadukan keunggulan teknis, sifat usil, dan kesadaran etis yang kuat, mewujudkan sosok pengembang yang terus memengaruhi pembentukan budaya komputasi modern
James Gosling: The Brilliant Mind Behind Java
- James Gosling bukan sekadar ‘bapak Java’, tetapi juga jenius rendah hati yang mampu menjelaskan konsep rumit secara intuitif
- Tiga puluh tahun setelah menciptakan Java, ia menengok kembali perjalanan teknologinya sambil menelusuri evolusi bahasa dan budaya pengembangan
The Path To Programming: Resourceful Beginnings
- Saat kecil, di tengah kemiskinan yang ekstrem, Gosling memiliki pengalaman memungut televisi dari tempat sampah dan mengasah kreativitas teknisnya
- Komputer pertamanya dirakit dari rak relay bekas milik perusahaan telepon, yang melambangkan naluri mekanis dan kemampuan merakit yang sudah terlihat sejak dini
- Dengan mengunjungi pusat komputer University of Calgary dan terpikat oleh layar, lampu berkedip, serta perangkat pita, dimulailah rasa ingin tahu seumur hidupnya terhadap pemrograman
- Ia belajar sendiri dengan membongkar kartu punch untuk mendapatkan kata sandi, dan saat masih SMA membuat program analisis data satelit untuk departemen fisika universitas, sehingga mengumpulkan pengalaman menikmati pemrograman sambil dibayar
- Pengalaman awal pemrogramannya mencakup PL/1 di mainframe IBM, Fortran, assembly PDP-8, dan kode CDC 6400. Dengan nada khasnya yang tenang, ia menyebut bahwa “di musim panas saya bekerja paruh waktu membuat compiler COBOL,” padahal itu adalah pekerjaan yang sulit ditangani bahkan oleh banyak programmer berpengalaman
Academia to Industry: Finding His Way
- Gosling menggambarkan dunia akademik sebagai “lembaga penelitian yang memanfaatkan mahasiswa pascasarjana sebagai tenaga kerja murah,” memperlihatkan pandangan lugas yang lebih menekankan praktik daripada teori
- Bahkan saat menempuh program doktor di Carnegie Mellon, ia tetap bekerja di startup untuk menambah pengalaman nyata, lalu menyelesaikan gelarnya kemudian, mewujudkan pilihan karier yang luwes antara industri dan akademik
- Pekerjaan pertamanya adalah di IBM Research, tetapi ia tetap menunjukkan sikap analitis yang dingin terhadap pengelolaan perusahaan dan strategi teknologi dengan menyebutnya sebagai “perusahaan yang berdedikasi menembak kakinya sendiri”
- Pengalaman-pengalaman awal ini kemudian menjadi dasar pemahaman budaya organisasi yang berpusat pada realitas dan memengaruhi cara ia bekerja di Sun Microsystems
The Sun Days: Innovation and Pranks
- Sebagai kenangan paling menyenangkan di Sun, Gosling menyebut proyek lelucon April Mop berskala besar yang diadakan setiap tahun, sambil mengenang budaya organisasi tempat kreativitas dan keceriaan hidup berdampingan
- Salah satu lelucon yang paling terkenal adalah menaruh Ferrari di atas platform yang mengapung di kolam, sebuah contoh yang menunjukkan selera humor yang memanfaatkan kemampuan pemecahan masalah rekayasa dan kerja tim
- Lelucon membuat lapangan golf 1 hole di kantor CEO, lengkap dengan rumput sintetis, bunker, dan water hazard, disebut sebagai upaya orisinal yang memadukan teknologi dan permainan
- Gosling mengenang Sun sebagai “lingkungan langka yang sekaligus mengizinkan keunggulan teknis dan kreativitas yang usil,” dan ini menjadi fondasi cara pemecahan masalahnya secara umum serta pembentukan sikapnya terhadap teknologi
Java: Creating a Legacy That Changed Everything
- Perjalanan 30 tahun Java bagi Gosling adalah pencapaian paling representatif sekaligus titik balik paling menentukan dalam hidup teknologinya
- Ia menyebut kepuasan mendalam atas pengaruh yang ditinggalkannya pada ekosistem pengembang setiap kali mendengar orang di jalan berkata, “Saya mendapatkan karier berkat Java”
- Fitur seperti lambda dan generics sebenarnya ingin ia masukkan sejak awal, tetapi waktu pengenalannya diatur sesuai filosofi desain “tidak akan memasukkannya dengan cara yang salah”
- Soal pengelolaan Java oleh Oracle, ia menilai “lebih baik daripada yang diharapkan,” sambil menegaskan bahwa partisipasi dan kontribusi berkelanjutan dari komunitaslah yang sebenarnya memegang peran utama
- Java terus berkembang dengan optimal untuk lingkungan cloud, dan dalam dukungan multicore, pengelolaan memori, serta peningkatan GC, ia telah mencapai tingkat kematangan teknis yang “sungguh luar biasa”
Beyond Java: Ventures After Sun
- Setelah Sun diakuisisi Oracle, Gosling sempat beristirahat lalu bergabung dengan Google, namun keluar dalam 6 bulan dan pindah ke Liquid Robotics
- Di sana ia mengembangkan sistem kendali robot laut otonom, serta mengalami kondisi kerja unik yang memadukan teknologi dan alam, seperti lingkungan kerja yang menuntut snorkeling di Hawaii
- Ia ikut dalam proyek pemantauan suhu laut di Kutub Utara dan Kutub Selatan, tetapi karena riset lingkungan kekurangan dana, ia mengalami benturan dengan struktur startup berbasis modal ventura
- Saat tekanan untuk beralih ke bidang pertahanan terus datang, ia keluar karena alasan etis, lalu melanjutkan pilihan karier yang mempertimbangkan sekaligus minat teknis dan standar etika dengan bekerja pada proyek Greengrass dan alat pengembang di AWS
On Open Source and Industry Trends: Cutting Through the Hype
- Open source dijelaskan bukan sekadar alat kolaborasi, tetapi ekosistem kompleks yang juga berfungsi sebagai hubungan dengan pengembang, strategi pemasaran, dan model adopsi bottom-up
- Tentang tren low-code dan no-code, ia menyatakan itu adalah klaim yang terus berulang sejak era COBOL, dan menunjukkan sikap skeptis sebagai pendekatan khusus yang memiliki keterbatasan saat diterapkan pada domain kompleks
- Ia mengatakan masalah pada AI dan machine learning lebih terletak pada penamaannya daripada teknologinya, lalu mengkritik istilah tersebut dengan menyebut “teknik statistik tingkat lanjut” lebih sesuai dengan hakikatnya
- AI hanyalah alat dan tidak boleh disalahpahami sebagai entitas otonom; menurutnya, AI harus dipandang sebagai alat tingkat tinggi yang membantu, bukan mengancam, tenaga kerja manusia
Developer Tools and Preferences: Embracing Progress
- Gosling menggunakan NetBeans IDE sebagai alat pengembangan utama, dan menunjukkan dukungan terhadap open source berbasis lisensi Apache serta komunitas yang aktif
- Kepada para pengembang yang masih terobsesi dengan Vi atau alat dari era 70-an dan 80-an, ia mengungkapkan kekecewaan terhadap sikap yang menolak kemajuan teknologi
- Ia kadang masih memakai Vi karena bisa dijalankan di mana saja, tetapi sangat mendukung penggunaan IDE modern untuk lingkungan pengembangan yang sesungguhnya
The JVM Vision: From Academic Concept to Global Standard
- Konsep awal Java Virtual Machine (JVM) bermula dari eksperimen format distribusi yang netral terhadap arsitektur dan riset teknik penerjemahan instruksi yang ia gagas saat kuliah pascasarjana
- Hal itu kemudian berkembang menjadi teknologi platform eksekusi serbaguna yang memungkinkan bukan hanya Java, tetapi juga berbagai bahasa lain berjalan di beragam perangkat keras
- Filosofi ‘Write once, run anywhere’ awalnya ditolak sebagai topik disertasi karena dianggap kurang memiliki landasan matematis, tetapi akhirnya menjadi teknologi praktis yang mengubah lingkungan pengembangan perangkat lunak dunia
More Recent Work: Bridging IoT Gaps at AWS
- Di AWS, Gosling terlibat dalam pengembangan Greengrass, framework aplikasi IoT, dan menerapkan pendekatan teknis yang menyederhanakan masalah kompleks secara elegan
- Ia mengabstraksikan pekerjaan boilerplate berulang antara deployment dan operasi, seperti update OTA, kendali jarak jauh, telemetri, keandalan jaringan, keamanan, dan manajemen autentikasi
- Kode sisi perangkat dibuka sebagai open source untuk mendorong kontribusi porting berbasis komunitas ke platform yang bukan prioritas Amazon, seperti RISC-V
- Proyek alat pengembang lain yang kemudian ia ikuti dihentikan karena terseret ledakan AI, yang mengisyaratkan masalah dalam kekacauan yang lebih berpusat pada tren daripada ketulusan teknologi
AI Skepticism
- Dalam wawancara terbaru, Gosling menyebut revolusi AI sebagai “sebagian besar penipuan,” memperlihatkan sudut pandang skeptis yang memandang AI sebagai istilah pemasaran yang toksik
- Walau mengakui bahwa secara matematis ini teknologi yang mengesankan, ia menyoroti masalah bahwa nama AI mengaburkan hakikat teknis sebenarnya sebagai teknik statistik tingkat lanjut
- Ia mengkritik keras demam AI yang dipimpin modal ventura sebagai “tempat berkumpulnya penipu dan tukang hype,” yakni kecenderungan mengejar keuntungan jangka pendek yang berpusat pada exit ketimbang teknologi yang benar-benar berguna
- Ia memperingatkan bahwa sebagian besar dana investasi AI pada akhirnya akan “terhisap ke dalam lubang hitam,” sebagai peringatan terhadap arus pendanaan yang digerakkan tren tanpa keberlanjutan
Is It a Vibe? AI Coding Tools: Impressive Demos, Limited Utility
- Alat pemrograman berbasis AI generatif memberi kesan awal yang kuat, tetapi memiliki struktur yang terbatas dan gagal begitu sedikit saja menjadi kompleks
- Alat-alat ini hanya mampu mengais dan mengulang contoh kode yang ada, sementara masalah yang benar-benar menarik selalu baru sehingga tidak cocok dengan alat berbasis replikasi
- Dalam lingkungan pengembangan profesional, kode yang berpola cenderung terkonsolidasi menjadi library, sehingga pembuatan kode oleh AI secara struktural berbenturan dengan kebutuhan pengembangan nyata
- Gosling mendefinisikan kegunaan nyata AI sebagai “alat pencarian yang mengambil alih pekerjaan dokumentasi yang tidak ingin dilakukan siapa pun,” dan menekankan nilainya sebagai alat bantu yang unggul dalam menjelaskan cara memakai API
Java’s Evolution: Language Features and Runtime Improvements
- Di antara perubahan terbaru pada bahasa Java, type inference dan perbaikan cara deklarasi array dinilai sebagai ekspansi fitur yang berguna untuk meningkatkan kenyamanan pengembangan
- Namun, Gosling menekankan bahwa perkembangan Java yang paling mengesankan terletak pada peningkatan kualitas lingkungan runtime JVM dan library standar
- JVM modern menunjukkan kinerja eksekusi yang telah mencapai “tingkat menakjubkan” dalam kualitas kode, performa thread, dan garbage collection
- Dalam hal manajemen memori dan prediktabilitas performa, Java lebih efisien daripada bahasa C berbasis
malloc, dan ia juga menyebut kemampuan tuning untuk menurunkan waktu jeda GC hingga beberapa milidetik
- JVM saat ini dinilai sebagai lingkungan runtime berkinerja tinggi yang mampu menangani ruang memori yang sangat besar dengan stabil
Programming Languages for Critical Infrastructure
- Saat ditanya bahasa apa yang cocok untuk menulis ulang sistem kontrol lalu lintas udara FAA, Gosling menolak premis pertanyaan itu dengan mengatakan “itu seperti memilih palu saat sedang membangun rumah”
- Ia menekankan bahwa teknologi harus dipilih setelah lebih dulu memahami dengan jelas sifat domain masalah, seperti sistem komunikasi, regulasi internasional, jalur penerbangan, dan penghindaran tabrakan
- Meski begitu, ia menambahkan bahwa untuk sistem berskala besar yang menuntut keandalan, Java bisa menjadi kandidat yang kuat
The Future of Programming in an AI World
- Meski AI terus berkembang, pemrograman tetap merupakan keterampilan esensial, dan Gosling menyatakan bahwa jika punya anak, ia pasti akan mengajarkan coding
- Ia mengkritik klaim para eksekutif big tech bahwa AI akan menggantikan pengembang manusia sebagai sekadar ancaman defensif untuk menaikkan intensitas kerja
- Untuk benar-benar memahami sistem, kemampuan pemrograman tetap dibutuhkan, dan ia berargumen bahwa bahkan jika mesin mengambil alih sebagian pekerjaan, dasar pemahaman teknis manusia harus tetap dipertahankan
Java’s Longevity Secret
- Sebagai alasan Java bisa bertahan lebih dari 30 tahun, Gosling menyebut kemampuan menyelesaikan masalah nyata, penghormatan pada pengguna, kompatibilitas mundur, peningkatan produktivitas, dan filosofi yang berpusat pada keandalan
- Java selalu menekankan kepraktisan yang konsisten di atas tren bahasa, dan filosofi desain yang berpusat pada realitas, dengan fokus pada hasil alih-alih gaya, terbukti sangat efektif terutama di lingkungan enterprise
- Dari sudut pandang bahwa perangkat lunak “harus selalu bekerja dengan benar,” Java tetap menjadi alat rekayasa yang jujur dan praktis
Oracle’s Stewardship: Better Than Expected
- Tentang pengelolaan Java oleh Oracle setelah akuisisi Sun Microsystems, Gosling berkata “mereka melakukannya jauh lebih baik dari yang saya kira,” dan menyatakan keterkejutannya atas hasil yang melampaui ekspektasi
- Awalnya ia khawatir akan “perampasan dan penjarahan” karena rekam jejak masa lalu, tetapi pada kenyataannya ia memberi penilaian positif atas independensi dan pengelolaan yang berpusat pada teknologi, karena tim Java tidak diganggu dan justru dilindungi
- Meski ia mengkritik dukungan finansial yang kurang, ia tetap memberi nilai tinggi pada struktur yang menjamin otonomi tim teknis tanpa campur tangan perusahaan
Crab Lovers Unite!
- Gosling mengatakan bahwa ia ingin bekerja dengan orang yang ingin diajak makan bersama, menunjukkan sikap yang menghargai standar kolaborasi yang berpusat pada manusia
- Sang jurnalis kebetulan bertemu Gosling di Thanh Long, restoran kepiting terkenal di San Francisco, dan mencatat momen ketika tokoh besar dunia teknologi ditemukan di tengah keseharian biasa
- Setelah itu mereka makan kepiting bersama dan berbincang, lalu berjanji untuk bertemu lagi di tempat yang sama, menyampaikan kehangatan pertukaran antarmanusia yang melampaui teknologi
13 komentar
Saya juga berpikir bahwa, di antara bahasa bertipe statis, bahasa yang paling nyaman digunakan adalah Java.
Namun, dari sisi pengembangan yang serbaguna dan praktis, menulis aplikasi berorientasi end-user dengan GUI dalam Java bukanlah pilihan yang terlalu baik. (Dalam sudut pandang itu, kombinasi C# + .NET adalah yang terbaik)
Jika mempertimbangkan keunggulan Java, menurut saya kasus penggunaan yang paling baik dari sisi kepraktisan adalah memakainya di backend atau middleware.
Bagaimanapun, karena sesekali ada kebutuhan untuk memakainya, setiap kali menggunakannya saya bisa menanganinya tanpa beban, jadi sepertinya lebih banyak pengalaman baik yang tersisa.
Cerita bahwa dia membongkar TV dari tempat rongsokan lalu belajar pemrograman dari situ rasanya seperti awal mula seorang legenda.
Memang benar, sejak Java muncul, bahasa-bahasa pemrograman mulai lebih memperhatikan produktivitas.
Sebelumnya, C++ yang sering digunakan itu bahkan sampai sekarang terasa mengerikan hanya untuk dibaca. Terutama saat harus menyentuh proyek yang sudah berjalan lama.
Sulit untuk setuju dengan anggapan bahwa Java menitikberatkan pada produktivitas developer
Adakah bahasa lain yang berkembang sampai sedalam itu bergantung pada IDE seperti Java?
Saya meninggalkan komentar yang gegabah.
Ketergantungan yang terlalu dalam pada IDE adalah masalah ekosistem Java yang berkembang secara tidak ideal,
bukan masalah pada level desain.
Terus terang, untuk mengembangkan dengan Java sekarang sebenarnya tidak wajib menggunakan produk JetBrains,
namun semua orang menggunakannya.
Dan jika melihat daftar bahasa pemrograman pada masa Java muncul, banyak di antaranya yang implementasinya bergantung pada platform, yaitu pada OS.
Java-lah yang menunjukkan arah yang kemudian dituju bahasa seperti Node, Python, dan C#, yakni dapat berjalan di berbagai OS dengan kode yang sama.
Di era modern, kompatibilitas untuk menjalankan kode yang sama di berbagai OS memang sudah menjadi "hal yang wajar".
> Terus terang, saat ini mengembangkan Java pun sebenarnya tidak harus memakai produk JetBrains
Bagian ini... agak sulit buat saya setujui, hiks...
Sekarang ini mungkin terasa cukup wajar,
tetapi pada saat Java muncul, hanya dengan mampu mendukung multiplatform secara stabil tanpa build baru saja bukankah itu sudah sangat membantu produktivitas?
Dibandingkan dengan bahasa sebelum Java, produktivitasnya tampak lebih baik.
c++ > c# >= java
C# >= Java > C++
Komentar Hacker News
java.util.concurrentatau JCToolsjstack, HPROF dan lainnya juga sangat beragam; lisensinya open source tanpa batasan penggunaan, dan membeli Oracle JVM hanyalah pilihan sukarela; lalu mempertanyakan apa sebenarnya masalah dengan kode legacystrace/gdb, melainkan alat JDK dan IDE yang performanya jauh lebih unggulstrace/gdb; dukungan debugging/IDE sangat kuat, dan tidak tepat menempatkan Python dan JVM di level performa yang samaDi tengah-tengah ada kubu C# yang bersembunyi.