Saya perlu penjelasan yang tepat tentang Hukum Pengembangan Perangkat Lunak Jamie Zawinski :
Setiap program mencoba untuk memperluas hingga dapat membaca email. Program-program yang tidak bisa berkembang digantikan oleh yang bisa.
Saya perlu penjelasan yang tepat tentang Hukum Pengembangan Perangkat Lunak Jamie Zawinski :
Setiap program mencoba untuk memperluas hingga dapat membaca email. Program-program yang tidak bisa berkembang digantikan oleh yang bisa.
Jawaban:
Semua jawaban (dan komentar) sejauh ini tampaknya berfokus sepenuhnya pada bagian pertama dari pernyataan, menjadikannya sebagai komentar tentang "mengasapi," ketika bagian penting adalah bagian kedua: Program-program yang tidak dapat berkembang digantikan digantikan oleh yang yang dapat.
Ini bukan tentang mengasapi perangkat lunak, ini tentang realitas pasar. Orang-orang mungkin mengatakan mereka menginginkan produk sederhana, tetapi ketika Anda melihat penggunaan yang sebenarnya, hal-hal yang digunakan adalah hal-hal yang memungkinkan pengguna melakukan lebih banyak, dan mereka akhirnya mengganti alat yang kurang mampu.
Bagian dari masalahnya adalah bahwa "sederhana" adalah kata yang membingungkan. Seperti "cleave," itu bisa berarti dua hal yang hampir sepenuhnya berlawanan. Apa yang diinginkan orang adalah sesuatu yang menyederhanakan tugas-tugas kompleks. Itu "yang baik sederhana," dan itu membutuhkan banyak kerumitan untuk melakukan yang benar. Namun, apa yang ditafsirkan oleh beberapa orang adalah bahwa orang menginginkan sesuatu yang sederhana , atau minimalis. Konsep ini mungkin memiliki beberapa daya tarik niche, tetapi secara keseluruhan itu adalah jenis "sederhana" yang salah untuk fokus ketika merancang suatu produk. Tidak peduli sebagus apa pun pekerjaan Anda, permintaan fitur baru tetap masuk.
Sebagai contoh, ada program yang saya kerjakan di tempat kerja. Anda mungkin belum pernah mendengarnya, tetapi kami adalah pemimpin pasar dalam industri khusus: kontrol media. Program kami kemungkinan besar menjalankan stasiun TV dan / atau radio favorit Anda. Pelanggan menyukainya, mereka mengatakan itu begitu jauh lebih baik dari apa pun yang mereka telah bekerja dengan.
Ini juga luar biasa . EXE berukuran lebih dari 65 MB, dengan sekitar 4 juta baris kode, didukung oleh database dengan lebih dari 150 tabel, dibangun selama lebih dari satu dekade kerja. Namun sepertinya setiap kali kami mencoba untuk menginstalnya di beberapa stasiun atau jaringan baru, ada satu atau dua hal yang sangat penting untuk alur kerja mereka, yang kami tidak memiliki dukungan untuk itu. Jadi kami akhirnya menambahkan fitur-fitur baru karena jika tidak para pelanggan tidak ingin beralih dari sistem yang sudah mereka gunakan. Dan saya ulangi, pelanggan menyukainya.
sumber
Anda harus memahami bahwa ini terjadi cukup lama, dan pada saat itu belum menjadi arus utama bagi komputer untuk dapat menjalankan lebih dari satu program sekaligus untuk pengguna tertentu. DOS untuk Komputer Pribadi (dan mungkin Windows 3 di atas) dan terminal berbasis karakter untuk pengguna Unix (hanya beberapa yang memiliki X11).
Ini berarti bahwa untuk memeriksa apakah Anda mendapatkan email, Anda harus keluar dari apa yang sedang Anda lakukan, memulai program surat, membaca surat, keluar dari program surat dan memulai kembali program lama Anda. Saya kira Anda dapat melihat bahwa jika program Anda saat ini memungkinkan Anda membaca email Anda, Anda dapat menghindari semua itu.
Karenanya jika program Anda saat ini tidak dapat membaca email Anda, Anda cenderung membuatnya melakukannya (ingat ini adalah mahasiswa MIT) atau beralih ke yang lain yang bisa.
Hari-hari ini sulit dibayangkan, tetapi Anda bisa mengetahui bagaimana hal itu dengan membatasi diri Anda pada satu jendela browser - tanpa tab, tanpa jendela tambahan - dan bahkan mungkin tidak menggunakan bookmark.
sumber
Seperti yang semua orang sudah sebutkan, "hukum" adalah sebuah pengamatan lucu pada perangkat lunak mengasapi dan skor creep , dan itu sangat mirip dengan aturan kesepuluh Greenspun :
Hukum mencerminkan pekerjaan Zawinski dengan browser Netscape dan kemudian dengan Netscape Mail & News, seperti yang dijelaskan di sini oleh, yah, dirinya sendiri:
Peramban Netscape, pada saat itu peramban paling populer, sering dikritik karena memiliki terlalu banyak fitur untuk kebaikannya sendiri, jika saya tidak salah mengira itu peramban (populer) terakhir yang mendukung dua mesin rendering, Gecko dan Trident. Misalnya, Ben Goodger mengidentifikasi kesalahan Netscape sebagai salah satu (banyak) alasan yang mengarah pada penciptaan Firefox 1 :
1 Dari versi arsip blog Ben Goodger yang sekarang sudah tidak aktif.
sumber
Ini bukan hukum yang sebenarnya , ini adalah komentar yang menyindir tentang bagaimana proyek perangkat lunak (jika tidak dikelola dengan baik) dapat tumbuh begitu besar dan rumit, mereka entah bagaimana akhirnya menyertakan pembaca email (bahkan jika itu tidak ada hubungannya dengan tujuan asli proyek) . Seorang manajer yang pernah saya miliki menyukai ungkapan yang sama "Setiap sistem yang cukup rumit berisi implementasi LISP setengah-berpantas di dalamnya".
sumber
Ini adalah komentar tentang bagaimana beberapa proyek perangkat lunak tampaknya terus berkembang dan menambahkan lebih banyak fitur.
Banyak proyek tampaknya tidak dapat menolak penambahan fitur, baik diperlukan atau tidak.
Kesimpulan logisnya adalah bahwa setiap perangkat lunak pada akhirnya akan mengirim surat.
Juga lihat Scope Creep .
sumber
Saya melihat setidaknya tiga cara untuk melihatnya.
Salah satunya adalah mengabaikan pembacaan surat sendiri, dan melihatnya sebagai pernyataan bahwa orang tampaknya menyukai produk dengan fleksibilitas untuk dialihkan ke hampir semua tugas, terlepas dari seberapa kecil hubungannya dengan maksud asli alat tersebut. Jika kita melihatnya dengan cara ini, produk seperti Photoshop yang tidak mendukung pembacaan surat bukan merupakan anomali karena arsitektur plug-in-nya cukup fleksibel sehingga dapat mendukung pembacaan surat, meskipun (sejauh yang saya tahu) tidak plug-in semacam itu ada. Sudut pandang ini bisa diringkas lebih bersih, tetapi pada awalnya kurang, karena "fleksibilitas mengalahkan spesialisasi".
Cara kedua untuk melihatnya adalah bahwa Jamie Zawinski memiliki fokus yang sangat sempit sehingga ia mengabaikan produk-produk seperti Photoshop, PowerPoint, sebagian besar game, dll., Yang telah ada selama bertahun-tahun, tidak mendukung membaca surat, dan jangan ' t tampaknya akan digantikan oleh hal lain yang melakukan keduanya.
Yang ketiga akan menjadi sedikit berlawanan dengan yang kedua, mengatakan bahwa, pada dasarnya, integrasi antara produk telah terjadi sedemikian rupa sehingga secara efektif membaca surat diintegrasikan ke dalam segala sesuatu karena kebanyakan orang sekarang memiliki pembaca surat yang berjalan di latar belakang, semua waktu dan dapat beralih ke itu dengan cepat / cukup mudah, potong dan rekatkan dengan hal lain, dll., bahwa detail kecil yang pembaca surat dikemas sebagai aplikasi terpisah telah menjadi tidak relevan.
sumber