- Esai yang menjelaskan kekacauan pengembangan perangkat lunak lewat analogi pembangunan jembatan, dengan pengakuan penuh getir bahwa semua tim pemrograman terdiri dari orang-orang gila dan di atas hasil kerja merekalah perangkat lunak perbankan dan internet berjalan
- Kode yang sempurna hanya ada di dalam file yang sendirian melakukan satu hal saja; di dunia nyata, operasinya lebih seperti diperintahkan pada hari Jumat untuk membuat 600 buah pada hari Selasa, lalu menyandarkan Picasso di atas tumpukan kepingan salju yang meleleh
- Pengembang web harus mempelajari satu teknologi baru setiap minggu sambil memastikan ratusan alat yang sudah ada tidak rusak, dan bahkan bagi ahli pun ini adalah dunia tempat menghabiskan 6 jam untuk mencari penyebab masalah masih dianggap beruntung
- Internet bergantung pada triliunan dolar nilai yang ditopang kesepakatan informal dan kode berusia 10 tahun yang bertuliskan "TODO: FIX THIS", dan jika semua administrator sistem makan siang bersamaan, peradaban akan runtuh
- Programmer menjalankan pekerjaan 10–15 jam sehari yang sejak awal otak manusia tidak dirancang untuk lakukan, dan perlahan menjadi gila, itulah harga dari profesi yang dipilih alih-alih mengangkat benda seberat 50 pon
Semua Tim Pemrograman Terdiri dari Orang-Orang Gila
- Teman-teman yang bekerja fisik selalu memulai percakapan dengan nada seperti, "Kamu enak, sih. Aku menggali terowongan dengan bor di bawah Mordor."
- Jika Anda setuju bahwa stres dan penderitaan mental itu buruk, maka
selamat datang di dunia pemrograman
- Analogi pembangunan jembatan: Anda bergabung dengan proyek jembatan kota besar, lalu situasinya seperti ini
- Mary adalah pemimpin proyek, Fred hanya bisa bekerja dengan kayu tetapi bertugas menangani jalur pejalan kaki pada jembatan setinggi 200 kaki di atas arus deras
- Dave memasang pemeriksaan keamanan 15 tahap setelah sweternya dicuri
- Phil bukan insinyur tetapi menegakkan aturan larangan pagar pengaman; tak seorang pun tahu Phil sebenarnya mengerjakan apa, tetapi karena ada kaitan dengan manajemen maka ia dibiarkan
- Sara memasukkan beberapa teknologi pelapisan paling mutakhir ("hemorrhaging-edge") ke dalam desain
- Tom dan Harry sudah bertahun-tahun bertengkar soal sistem metrik vs imperial, dan satuan yang dipakai adalah milik orang yang bekerja lebih dulu
- Awalnya dirancang sebagai jembatan gantung, tetapi karena tak seorang pun tahu cara membangunnya, mereka menambahkan pilar penyangga di tengah, dan kabel gantung dibiarkan saja karena sepertinya menopang sesuatu
- Pegawai baru diminta memberi ide segar, tetapi ternyata dia insinyur propulsi sehingga sama sekali tidak tahu soal jembatan
- Jika ditanya apakah Anda mau menyeberangi jembatan ini, tak seorang pun mau, tetapi struktur seperti inilah yang membangun seluruh perangkat lunak bank, situs web, dan program keamanan internet
Semua Kode Itu Buruk
- Setiap programmer punya file Good Code yang dibaca diam-diam di rumah saat tak ada orang lain, sambil meneteskan air mata
- Nama fungsi dan variabelnya konsisten, ringkas, tidak melakukan hal-hal yang jelas bodoh, dan belum pernah terpapar lingkungan liar atau permintaan tim penjualan
- Ditulis oleh satu orang saja, tak pernah disentuh orang lain, dan terasa seperti puisi yang ditulis oleh orang berusia di atas 30 tahun
- Kenyataannya: jika pada hari Jumat Anda diperintahkan membuat 600 kepingan salju untuk hari Selasa, Anda akan memakai segala jalan pintas, rekan kerja akan melelehkannya, semuanya bercampur menjadi satu bentuk kacau, lalu Picasso disandarkan di atasnya, dan minggu berikutnya Anda menyekop lebih banyak salju agar Picasso tidak roboh
- Ada teori bahwa semuanya akan selesai bila mengikuti standar, tetapi jumlah standar lebih banyak daripada hal yang sungguh bisa dilakukan komputer, dan semuanya dimodifikasi oleh selera pribadi, sehingga kenyataannya basis kode berisi puluhan cara berbeda untuk melakukan pekerjaan yang sama
- Beberapa minggu pertama di pekerjaan baru habis untuk memahami bagaimana program berjalan meskipun Anda tahu semua bahasa, framework, dan standar, karena standar itu unicorn
Selalu Ada Kegelapan
- Analogi lemari masa kecil: saat masuk, dinding bergeser mundur menjadi rak, lalu ketika Anda mendongak lagi, ada kehampaan mutlak ruang sempit merayap yang tak tersentuh cahaya, dan Anda tahu monster yang setiap malam Anda tahan dengan senter dan boneka tinggal di sana
- Belajar pemrograman sama saja: Anda mempelajari alat yang berguna, melihat sekeliling, lalu ada alat baru, dan alat itu memperlihatkan kengerian tanpa dasar yang selama ini selalu ada tepat di samping tempat tidur
- Realitas pengembang web rata-rata
- Meski sudah akrab dengan 12 bahasa pemrograman dan tak terhitung banyaknya library, standar, serta protokol, ia tetap harus mempelajari satu hal baru setiap minggu
- Ia harus memeriksa apakah ratusan alat lama diperbarui atau rusak, dan memastikan bug yang dengan cerdik ia manfaatkan saat akhir pekan mabuk belum diperbaiki
- Anda merasa semuanya sudah terbaru, lalu mendadak semuanya rusak
- Contoh penyebab kerusakan: seseorang memutuskan menulis 1/0 sebagai Infinity, lalu orang lain mengubahnya menjadi error di compiler tanpa memberi tahu siapa pun; akibatnya bahkan ahli pun butuh 6 jam untuk mencari penyebabnya
- Bahkan pengetahuan ahli di bidang sendiri pun hanya bagian sangat kecil dari seluruh ilmu komputer, dan tidak ada satu orang pun yang benar-benar tahu bagaimana MacBook berusia 5 tahun bekerja
- Alasan kita berkata, "coba matikan lalu hidupkan lagi": karena kita sama sekali tidak tahu apa yang salah, jadi kita membuat komputer koma dan menyerahkannya pada tim dokter otomatis bawaannya
Internet Adalah Neraka Istimewa Tersendiri
- Bahkan situs web setingkat keranjang belanja dengan tiga halaman dinamis pun dipelihara oleh tim 24 jam, karena segala sesuatu selalu rusak bagi semua orang di semua tempat
- Saat ini juga, karyawan Facebook sedang menangani puluhan ribu pesan error, satu tim di kantor Google sudah 3 hari tidak tidur, dan seorang programmer basis data di suatu tempat dikelilingi botol Mountain Dew kosong sambil mengira suaminya sudah mati
- Jika semua administrator sistem pergi makan siang pada saat yang sama, bahkan sebelum sampai ke deli mereka sudah harus bertarung melawan gerombolan mutan demi mempertahankan makanan kaleng
- Triliunan dolar bergantung pada kesepakatan informal dan kode yang ditulis 10 tahun lalu dengan komentar "TODO: FIX THIS IT'S A REALLY DANGEROUS HACK"
- Ada kelompok yang menyerang internet demi intelijen, keuntungan, atau sekadar iseng, dan 4chan bisa menghancurkan hidup serta bisnis seseorang hanya karena sedang bad mood sepanjang sore, tetapi itu bahkan tak terlalu dikhawatirkan, seperti satu bom nuklir tambahan di tengah musim dingin nuklir
- Di internet, kalau Anda berkata, "sepertinya ini kadang berhasil," maka itu menjadi bagian dari internet, dan dengan beberapa ratus dolar serta sebuah komputer, siapa pun bisa mengunggah kode peretasan yang mengerikan dan membuat semuanya sedikit lebih buruk
- Aturan rahasia internet: lima menit setelah browser pertama kali dibuka, seorang anak di Rusia sudah punya nomor identitas penduduk Anda; kalau mendaftar, NSA mulai melacak lokasi Anda; kalau mengirim email, alamat Anda muncul di papan iklan Nigeria
- Ini bukan karena orang tidak peduli, melainkan karena semuanya rusak dan tidak ada kode yang bagus, jadi semua orang mati-matian hanya berusaha membuatnya tetap berjalan
Bukan Kami yang Gila, Tapi Kami Sedang Menjadi Gila
ERROR: Attempted to parse HTML with regular expression; system returned Cthulhu — jika ini masih terdengar lucu, Anda masih aman, tetapi jika saat ditanya apakah itu "arrayReverse" Anda menjawab dengan s/camel/_/, maka Anda sudah masuk tahap berbicara dalam kode
- Otak manusia pada dasarnya tidak terlalu unggul dalam logika dasar, tetapi ada profesi yang mengharuskan kita melakukan logika yang sangat rumit sepanjang hari
- Jika Anda menghabiskan sepanjang hari menelusuri rantai besar kondisi dan kebutuhan abstrak untuk mencari sesuatu seperti koma yang hilang, maka saat melihat wajah orang pun Anda tak tahu apakah ia sudah selesai bicara — karena tidak ada titik koma
- Contoh bahasa pemrograman esoterik (esolang) untuk menunjukkan dampak merusak pada otak
- Ada program yang menghasilkan keluaran sama dengan "Hello World" di C++, tetapi ditulis dalam Brainfuck, Ook!, atau kode Perl yang menampilkan angka Maya sebagai ASCII art yang diputar 90 derajat
- Program angka Maya itu menang kompetisi, dan di dunia seperti ini tak ada yang mempertanyakan mengapa seseorang merokok sebungkus sehari
- Semua programmer memaksa otaknya melakukan hal-hal yang tidak dirancang untuknya selama 10–15 jam sehari, 5–7 hari seminggu, dan semuanya perlahan menjadi gila
- Kesimpulannya: alih-alih mengangkat barang seberat 50 pon, kita mendapat kesempatan untuk melayani setan yang sedang merapikan bulu tubuhnya sambil makan di atas tengkorak terbuka, dan sebagai gantinya sebagian internet tetap hidup beberapa hari lagi
Belum ada komentar.