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