Hah, zaman Web 2.0 gini, masih membahas Stroustrup?
Dan ini jawabanku: Bjarin!
Waktu ditanya tentang contoh program C++ yang berhasil :), Stroustrup menjawab dengan: Google. Ia juga bertanya: masih ingat, seperti apa dunia tanpa Google, baru 5 tahun yang lalu? Selain ini ia juga menyebut Mars Rovers, yang bisa melakukan pengemudian secara mandiri di planet asing itu. Dan dalam wawancara lain juga ia menyebut Human Genome Project. Tapi waktu ditanya tentang kenapa sebagian besar program bermasalah, ia menyebut bahwa programmer tidak lagi sempat memeriksai “correctness, algorithms, data structures, maintainability” dari program — mereka dikelola oleh para micromanager yang membuat pekerjaan selalu seperti dalam keadaan darurat yang permanen. Hal2 seperti ini tidak pernah tampak oleh user, selain bahwa misalnya Internet Explorer tiba2 freeze. Hm, Google di sisi plus, Microsoft di sisi minus.
Ini tentu soal klasik. User, manager, hingga media, memuja software (dan produk akhir) yang murah, cepat, biarpun buggy. Orang tidak suka kerumitan, tidak suka belajar hal2 baru, dan tidak mau membayar lebih untuk kualitas. Soal lain yang tidak klasik adalah bahwa para pakar memaksakan satu atau dua aspek tertentu sebagai pemecahan masalah. Secara praktis, Stroustrup mencontohkan: “Better design methods can help, better specification techniques can help, better programming languages can help, better testing technologies can help, better operating systems can help, better middle-ware infrastructures can help, better understanding of application domains can help, better understanding of data structures and algorithms can help–and so on. For example, type theory, model-based development, and formal methods can undoubtedly provide significant help in some areas, but pushed as the solution to the exclusion of other approaches, each guarantees failure in large-scale projects. People push what they know and what they have seen work; how could they do otherwise? But few have the technical maturity to balance the demands and the resources.”
Kritik2 atas C++ ditanggapi Stroustrup dengan mengiyakan bahwa memang C++ ditujukan untuk expert, tetapi dengan mengingatkan bahwa terdapat generalitas yang tertanam dalam bahasa itu. Dan performansi. Waktu si pewawancara mengingatkan bahwa Stroustrup pernah mengatakan bahwa salah satu motivator atas C++ adalah Kierkegaard :), ia membalas bahwa kecenderungan saat ini untuk mengintegrasikan manusia dalam corporate culture (tanpa melihat lagi keunikan dan talenta individual) itu kejam dan tak efektif. Kierkegaard adalah pendukung peran individu melawan “the crowd,” dan cukup serius membahas pentingnya estetika dan etika. Maka C++ jadi dicipta dengan mengandaikan setiap programmernya memiliki keleluasaan untuk mencipta dan mengatur yang terbaik bagi mereka sendiri.
Namun tentang aspect-oriented programming, Stroustrup meramalkan bahwa benda nan unik ini masih perlu waktu lama untuk meninggalkan dunia akademis dan memasuki industri nyata. Tentu ia tidak antipati pada benda elegan ini. Hanya, ia mengingatkan bahwa selain konsep yang baik, ada banyak hal yang harus disiapkan untuk masuk ke lingkungan skala industri.
Dan tentang C# dan .Net? Ah, Microsoft masih di sisi minus buat Stroustrup. Hmmh.
Lebih lanjut, baca sendiri:
The Problem with Programming
More Trouble in Programming
Juga lihat:
Stroustrup asli
Stroustrup wannabe
Selingan dulu. Efektif itu apa sih? Setiap bahasa sebenarnya punya semacam penghalusan pilihan kata. Efektif, sekilas berarti memiliki efek, menghasilkan sesuatu sesuai yang dituju. Tapi apa artinya tidak efektif (ineffective)? Ini artinya kita sudah bekerja, membuang resource yang berharga, tapi tidak mencapai yang dihendaki. Ineffective adalah istilah kromo dalam bahasa Inggris, yang istilah ngokonya adalah useless. Kita membuang resource: waktu, energi, dana, hidup kita, lingkungan kita … tetapi tak memperoleh apa2.
Radioaktivitas diakibatkan oleh interaksi yang kemudian disebut energi nuklir lemah, atau energi lemah (weak energy). Ia berinteraksi mengikat inti atom. Jika gravitasi dan elektromagnetika telah teramati sekian ratus tahun sebelumnya, radioaktivitas baru mulai dipahami di awal abad ke-20. Ini karena sifat energi lemah yang berbeda: ia hanya memiliki jangkauan pendek (sejauh 10-18m saja), sehingga tidak memiliki gelombang yang teramati seperti dua bentuk energi lainnya. Jangkauannya yang pendek ini tak terlepas dari sifatnya yang lain: ia memiliki massa. Ia juga bisa memiliki muatan. Partikel pembawa energi ini, disebut boson W+, W-, dan Z. W+ dan W- memiliki massa yang sama: 80 GeV, dengan muatan masing2 positif dan negatif. Z memiliki massa 91 GeV.
Sebelum mencobai pada manusia, lembaga itu lebih dulu melakukan percobaan pada seekor tikus, yang dinamai Algernon. Efeknya menarik. Tikus itu dapat menyelesaikan hal2 yang memerlukan kecerdasan, tanpa terlalu banyak motivator luar. Barulah kemudian eksperimen dilakukan pada Charlie Gordon. Charlie jadi berkembang kecerdasannya: sastra, matematika, filsafat. Ia juga memiliki motivasi besar untuk ikut melakukan penelitian, untuk memecahkan masalah yang sama dengan yang pernah dialaminya. Sambil, dengan kepribadiannya yang baru, ia berusaha memecahkan masalah2 hubungan dengan masyarakat (termasuk dengan keluarganya). Juga sambil terus mengamati bahwa kepribadiannya yang lama pun sebenarnya masih ada — mengintai tanpa mengganggu, kecuali pada saat2 tertentu.
Srinivasa Aayengar Ramanujan (bukan tokoh fiktif) adalah matematikawan cemerlang dari negeri India. Ia dibawa ke Cambridge oleh G.H. Hardy untuk meneruskan pendidikan di sana. Ramanujan tetap bergaya pertapa Brahmin: memperbanyak merenung, mengasyiki hobi, mengurangi makan dan tidur – di negeri dengan cuaca yang tak ramah. Maka ia jatuh sakit, dan harus dirawat.

