19 Sep 2016
Dari “Kelayakhunian dan Pertumbuhan Sedikit demi sedikit,” oleh Richard Gabriel:
Ada karakteristik perangkat lunak yang mungkin belum pernah Anda pikirkan dan mungkin memiliki pengaruh terhadap desain bahasa pemrograman dan tentu saja metodologi perangkat lunak. Ini adalah kelayakan huni .
Habitability adalah karakteristik dari kode sumber yang memungkinkan programmer, coders, bug-fixer, dan orang-orang yang datang ke kode di kemudian hari untuk memahami konstruksi dan niatnya dan untuk mengubahnya dengan nyaman dan percaya diri.
Kelayakhunian membuat tempat layak huni, seperti rumah. Dan inilah yang kami inginkan dalam perangkat lunak—yang membuat para pengembang betah, dapat menempatkan tangan mereka pada item apa pun tanpa harus berpikir mendalam tentang di mana letaknya.
Saya pernah mendengar Gregor Kiczales—salah satu desainer CLOS—mengatakan bahwa dia berharap praktik ilmu komputer dapat mencapai tingkat keunggulan teknik yang menciptakan bangunan seperti Superdome di New Orleans. Dia menunjukkan bahwa desain Superdome menyatukan potongan-potongan yang terbuat dari berbagai bahan dan dari berbagai disiplin ilmu teknik dan bangunan. Hasilnya adalah monumen untuk keterampilan teknik itu. Ini adalah gambar yang menggoda, tapi menurut saya itu tidak masuk akal.
Bangunan seperti Superdome kurang layak huni. Dalam hal ini orang-orang menghuni bangunan tersebut, tetapi hanya untuk jangka waktu yang sangat singkat, dan untuk acara-acara yang sangat khusus—dan bangunan seperti itu tidak mudah tumbuh atau diubah. Superdome adalah bangunan statis, dan karena itu dapat berdiri sebagai monumen, menjadi sedikit lain.
Sebuah gedung pencakar langit modern, untuk mengambil contoh lain, memiliki interior tetap yang tidak fleksibel, yang merupakan sekunder dari keindahan desain eksterior. Sedikit perhatian diberikan pada cahaya alami, dan seringkali interiornya dibangun sebagai “ruang kantor fleksibel”, yang berarti bilik. Fleksibilitas bagi manajemen untuk mendirikan kantor untuk perusahaan, bukan untuk penghuni—karyawan—untuk menyesuaikan ruang mereka sendiri. Ketika Anda kehabisan ruang di gedung pencakar langit, Anda membangun yang lain; Anda tidak mengubah yang sudah ada atau menambahkannya.
Bandingkan ini dengan rumah pertanian New England. Ini dimulai sebagai rumah kecil dengan gudang di belakang. Saat keluarga tumbuh dan kebutuhan pertanian tumbuh, ruang belakang ditambahkan ke rumah, lalu ruang pengalengan, lalu ruang untuk nenek; kandang ditambahkan ke gudang, kemudian sayap untuk memerah susu lebih banyak sapi. Akhirnya rumah dan gudang terhubung karena terlalu sulit untuk pergi dari rumah ke gudang dalam badai salju. Hasilnya bertele-tele, tetapi setiap bagian sesuai dengan kebutuhannya, setiap bagian cocok dengan yang lain, dan hasilnya indah karena merupakan struktur hidup dengan orang-orang yang hidup di dalamnya. Penduduk dapat memodifikasi lingkungan mereka karena setiap bagian dibangun sesuai dengan pola desain, penggunaan, dan konstruksi yang sudah dikenal dan karena pola tersebut mengandung benih untuk pertumbuhan sedikit demi sedikit.
Saya pikir ini harus menjadi tujuan praktik ilmu komputer. Sebagian besar bahasa pemrograman sangat bagus untuk membangun program yang merupakan monumen untuk merancang kecerdikan—sangat efisien, tepat, dan jelas—tetapi orang tidak membuat program seperti itu. Program hidup dan berkembang, dan penghuninya—para pemrogram—perlu bekerja dengan program itu seperti cara petani bekerja dengan wisma.
Apa saja hal-hal yang berkontribusi pada program tidak layak huni? Terlalu sering menggunakan abstraksi dan kompresi yang tidak tepat muncul di pikiran..
Baca Lagi
Rekomendasi:
- 5 Alat Manajemen Proyek untuk Pengembang Perangkat Lunak Ketika sebagian besar tim memikirkan perangkat lunak manajemen proyek, mereka berpikir untuk menggunakannya agar tetap teratur dan sesuai tugas. Namun, untuk pengembang perangkat lunak, alat manajemen proyek lebih dari itu.…
- Sonos mengakuisisi perusahaan yang berfokus pada… Bluetooth LE Audio — Sonos tidak membuat headphone sekarang, tetapi mereka mungkin akan datang. Samuel Axon - 1 Februari 2022 9:16 pm UTC Memperbesar / The Sonos One. Sonos telah…
- Kiat Ampuh Kuasai Excel bagi Pemula: Langkah Awal… Tahukah Anda bahwa Microsoft Excel adalah perangkat lunak spreadsheet yang sangat populer dan banyak digunakan di dunia? Ya, Excel merupakan bagian dari Microsoft Office Suite yang digunakan untuk mengolah data…
- McKinsey menyumbangkan alat pipa pembelajaran mesin… 19 Januari 2022 21:00 Kredit Gambar: Getty Images Apakah Anda melewatkan sesi dari Future of Work Summit? Kunjungi perpustakaan sesuai permintaan Future of Work Summit kami untuk streaming. Biarkan buletin…
- Bagaimana Amazon Membawa Produknya Dari Ide ke Eksekusi Mendesain produk dari awal bisa seperti mengemudi di malam hari: Jalan di depan gelap, dan hanya beberapa meter di depan Anda diterangi oleh lampu depan Anda.Itu menurut Apurva Gupta, desainer…
- Mengapa permainan langsung adalah masa depan kasino online Jika Anda seorang penggemar permainan kasino online, Anda akan tahu bahwa teknologi telah membuka jalan bagi beberapa permainan baru dan klasik yang luar biasa. Ini bahkan lebih baik dari ini…
- Laporan: 55% eksekutif mengatakan bahwa peretasan… 30 Oktober 2021 19:15 Perangkat lunak bisnis cloud TIKredit Gambar: NicoElNino / Getty Images Menurut studi terbaru oleh Venalfi, lebih dari setengah eksekutif (55%) dengan tanggung jawab untuk keamanan dan…
- Platform pelokalan berkelanjutan Lokalise… 14 Desember 2021 01:00 Lokalis: Ilustrasi konsep Kredit Gambar: Lokalise Bergabunglah dengan para pemimpin game, bersama GamesBeat dan Facebook Gaming, untuk GamesBeat & Facebook Gaming Tahunan ke-2 mereka Puncak |…
- Betapa terburu-buru untuk proses penyiapan aplikasi… Meskipun tantangan pertama bagi pengembang aplikasi — dan pemasar — dalam permainan pemasangan aplikasi adalah membuat aplikasi yang disukai dan ingin digunakan orang setiap hari, langkah penting berikutnya adalah mendistribusikan…
- Tips Sukses Wawancara Kerja Online: Kuasai Rahasia… Dalam dunia kerja yang semakin kompetitif, mempersiapkan diri dengan baik untuk wawancara kerja online menjadi sangat penting. Berikut beberapa tips wawancara online untuk membantu Anda tampil lebih percaya diri dan…
- Alat Poker Digunakan oleh Pro Online pada tahun 2022 Situs poker online telah membuat poker lebih terjangkau dan meningkatkan jumlah uang yang tersedia bagi pemain untuk menang. Namun, mereka juga membuat poker lebih kompetitif. Saat ini, hanya memiliki keterampilan…
- Video Quick Take: James Markarian tentang… Todd Pruzan, HBR Selamat datang di Pengambilan Cepat Video HBR. Saya Todd Pruzan, editor senior untuk penelitian dan proyek khusus di Harvard Business Review. Pandemi global telah mempercepat kebutuhan perusahaan…
- Seperti Apa 10 Tahun Ke Depan Kemungkinan Akan… Tidak seorang pun (kecuali Steve Jobs, mungkin) dapat memprediksi dampak iPhone ketika diperkenalkan pada tahun 2007. Tak terhitung banyaknya smartphone lain yang telah dirilis dengan fitur perangkat keras yang luar…
- Uji ketahanan Pixel 6 Pro adalah masalah besar Pixel 6 dan Android 12 mewakili perubahan yang cukup signifikan dari masa lalu Google. Perangkat lunak sekarang dirancang agar lebih mudah untuk dipersonalisasi dan perangkat keras telah ditingkatkan untuk mengikuti…
- Akudo (YC S21) Mempekerjakan Pengembang Perangkat… Akudoneobank pertama di India yang berfokus pada pembelajaran untuk remajaTerhubung langsung dengan pendiri startup terbaik yang didanai YC.Lamar untuk peran Tentang peran Kami mencari individu yang cerdas, berjiwa wirausaha, dan…
- Lebih Banyak Permainan Crypto Dari Sebelumnya Muncul… Jika Anda pernah bertaruh dengan Bitcoin dan mata uang kripto lainnya sebelumnya, Anda akan memahami bahwa kasino kripto baru bermunculan setiap saat. Anda mungkin juga tahu bahwa hari-hari judul homebrew…
- Bagaimana menjaga rumah pintar Anda tetap aman dan… Konsep rumah pintar menjadi semakin lazim dalam beberapa tahun terakhir, dan perangkat rumah pintar dapat menawarkan kenyamanan dan membuat segalanya menjadi lebih sederhana. Gadget seperti kamera pintar dan bel pintu…
- Teknologi di balik permainan kasino online favorit Anda Sejak kasino online pertama yang mengizinkan pembayaran otomatis membuka pintu virtualnya pada tahun 1996, teknologi terus berkembang. Ini membeli grafik yang lebih baik, fitur baru, dan lebih banyak permainan daripada…
- Tanggapan 5 Kata Elon Musk terhadap Saran Pengguna… Anda harus memberi penghargaan kepada CEO Tesla, Elon Musk. Dia mampu melakukan sesuatu dengan Tesla yang tidak dimiliki pembuat mobil lain--membangun kendaraan listrik (EV) yang ingin dibeli dan dikendarai orang.…
- Google meluncurkan Ripple, standar terbuka yang… Google telah secara publik membuat chip radar kecil sejak 2015. Mereka dapat memberi tahu Anda seberapa baik Anda tidur, mengontrol jam tangan pintar, menghitung lembaran kertas, dan memungkinkan Anda memainkan…
- Ethereum Foundation Meluncurkan Program Insentif… Ethereum Foundation (EF) telah mengumumkan peluncuran program insentif baru untuk tim kliennya. Dijuluki Program Insentif Klien, EF mengatakan inisiatif ini dirancang untuk mendorong tim pengembangan perangkat lunak seperti Besu, Erigon,…
- Coinpool: Panduan Lengkap Mengenai Platform Mining… Mining cryptocurrency menjadi salah satu cara populer untuk mendapatkan mata uang digital. Coinpool adalah salah satu platform mining cryptocurrency yang dapat membantu Anda memulai aktivitas mining dengan lebih mudah. Dalam…
- Cahaya 'diperas' mungkin menghasilkan… Membuat perangkat berskala nano adalah satu hal, tetapi mempelajari dan memperbaikinya adalah hal lain — mereka sangat kecil sehingga tidak dapat memantulkan cahaya yang cukup untuk mendapatkan tampilan yang bagus.…
- Aplikasi web dan jasa pembuatan website Ada dua jenis utama layanan pembangunan yang perusahaan perangkat lunak difokuskan pada:Pembuatan halaman webWajar bagi setiap bisnis untuk terus meningkatkan layanannya untuk memenuhi harapan pelanggan. Terutama dengan situs web dan…
- Pra-Black Friday Doorbuster: Dapatkan langganan… StackCommerce Sebagian besar remaja memiliki ponsel mereka sendiri akhir-akhir ini. Tapi apakah Anda benar-benar tahu apa yang Anda lakukan saat mereka menggunakan perangkat mereka? Jika Anda seperti kebanyakan orang tua,…
- Dapatkan pemahaman yang lebih baik tentang audiens… StackCommerce Jika Anda sedang membangun bisnis, maka sangat penting untuk memahami audiens Anda. Tetapi data yang dikumpulkan oleh sebagian besar alat analitik bisa sangat sulit untuk dipahami, sehingga lebih sulit…
- Dukungan 4K Blu-ray sedang sekarat di PC. MakeMKV… Shutterstock Intel baru-baru ini mengabaikan pemutaran Blu-ray 4K untuk CPU yang lebih baru, dan berita yang sayangnya tidak terlalu mengejutkan. Masalah keamanan telah lama mengganggu teknologi SGX perusahaan, dan relatif…
- Pachyderm sedang merekrut Pemimpin DevRel untuk… Ingin menjadi bagian dari sekelompok orang yang bersemangat yang menjalankan misi untuk membuat ilmu data dapat dijelaskan, dapat diulang, dan terukur? Bergabunglah dengan “The Pach”! Lihat Posisi Terbuka Mengapa Bekerja…
- Teknologi berbasis ML adalah terobosan berikutnya… 29 November 2021 16:40 Kredit Gambar: kentoh/Shutterstock Mendengar dari CIO, CTO, dan eksekutif tingkat C dan senior lainnya tentang data dan strategi AI di Future of Work Summit 12 Januari…
- Mari Kenali Ubuntu, Apa Saja Macam Jenisnya? Linux Ubuntu merupakan sistem operasi open source yang pertama kali dirilis pada tanggal 20/10-2004. Sistem operasi Linux Ubuntu berjalan di atas basis kode Debian Linux. Lalu, mengapa system operasi tersebut…