Kontrol situasi membuat Anda bahagia.

Halo, Habr! Saya mempersembahkan untuk Anda terjemahan artikel "Mengontrol Lingkungan Anda Membuat Anda Bahagia" oleh Joel Spolsky.

Tentang penulis: Joel Spolsky, salah satu pemilik Trello, Fog Creek Software dan kepala Stack Overflow

gambar

Kebanyakan pengembang C ++ membenci pemrograman antarmuka pengguna. Ini mengejutkan karena saya menemukan pemrograman UI sangat sederhana, mudah, dan menyenangkan.

Sederhana , karena algoritma yang paling rumit di sini adalah menempatkan satu persegi panjang di yang lain. Dapat dimengerti , karena Anda segera melihat tiang tembok dan dapat memperbaikinya. Ini menarik karena Anda tampaknya memperhatikan proses dan hasil pekerjaan.

Saya pikir pengembang takut pemrograman UI karena takut desain UI. Dalam pemahaman mereka, desain UI mirip dengan desain grafis - proses misterius yang hanya tunduk pada orang-orang "total-black-look" kreatif dengan tindikan aneh yang menyerap lattes dan menciptakan hal-hal yang menyenangkan mata. Programmer, di sisi lain, melihat diri mereka sebagai analis logika: mereka pandai dalam berpikir, di tempat kerja mereka nol. Oleh karena itu, kami yakin bahwa desain antarmuka bukan untuk mereka.

Saya menemukan desain UI terstruktur dan tidak rumit. Untuk menguasainya, tidak perlu menerima ijazah perguruan tinggi seni dan mewarnai rambut Anda dengan warna pink asam. Ada cara yang tidak terlalu sulit: terapkan beberapa aturan sederhana dan tingkatkan antarmuka program yang sedang Anda kerjakan.

Saya tidak akan menerbitkan Zen dan Seni Desain UI. Ini tidak terkait dengan seni atau agama Buddha, itu adalah seperangkat aturan yang masuk akal untuk programmer. Saya kira Anda tidak memerlukan instruksi tentang cara membuat menu bar: sebaliknya, Anda berpikir tentang apa yang harus dimasukkan ke dalamnya dan apakah Anda perlu. Oleh karena itu, saya akan mengajari Anda prinsip yang mudah dipahami, tetapi penting dari antarmuka pengguna yang baik.

Di masa muda saya, saya bekerja di toko roti industri. Toko roti berisi enam konveyor produksi. Untuk setiap konveyor kedua, ada satu mixer, yang menghasilkan potongan-potongan adonan seberat 180 kg, dan kemudian dibuang ke kanan atau kiri:

gambar


Jadi itu dikandung. Bahkan, ada sesuatu yang hilang dan lokasinya terlihat seperti ini:

gambar


Pembaca yang penuh perhatian akan marah: "Bagaimana mendapatkan adonan dari mixer kedua ke conveyor keenam?" Giliran Joel kecil. Sulit dipercaya, tetapi semua pekerjaan adalah bahwa saya harus berdiri di sebelah kiri mixer kedua, menangkap sepotong raksasa di kereta, membawanya ke conveyor keenam dan meletakkan adonan di atasnya menggunakan perangkat yang mirip dengan winch.

Saya melakukan ini setiap sepuluh menit dari jam sepuluh malam sampai jam empat pagi. Tetapi ada kesulitan lain. Konveyor keenam tidak dapat mengatasi berat 180 kg, dan saya harus membagi adonan menjadi sepuluh bagian dengan pisau raksasa. Saya tidak ingin masuk ke detail betapa bodohnya itu.

Awalnya saya melakukan pekerjaan yang buruk. Pekerjaan ini sepertinya mustahil. Setiap tulang tubuh saya terasa sakit, lepuh duduk di atas lepuh. Tempat sakit yang saya duga tidak ada. Pada awalnya, saya tidak berhasil memasok adonan dengan conveyor. Kesenjangan pada saluran memicu gangguan konstan: adonan dengan celah jatuh ke dalam oven, dan roti terbakar karena volume yang lebih kecil untuk jumlah energi yang konstan.

Terkadang conveyor tersumbat dan berhenti, tetapi mixer terus bekerja dengan baik. Masalahnya adalah bahwa troli bisa kehabisan ruang. Ketika ini terjadi, saya terpaksa mencuci lantai, meluminya dengan minyak, membuang adonan untuk mengumpulkannya nanti. Ini bukan jalan keluar terbaik, karena setelah 30 menit adonan mulai berfermentasi, dan roti yang baik tidak berhasil lagi. Kemudian saya harus memotongnya menjadi potongan-potongan 5 kg dan menambahkan satu bagian ke setiap batch baru.

Tetapi setelah seminggu saya mulai melakukan cukup baik: 2 menit istirahat untuk setiap 10 menit dari "siklus tes". Saya membuat jadwal yang akurat dan belajar cara menghentikan mixer ketika kerusakan pipa terjadi. Lalu saya bertanya-tanya mengapa, seperti iklan bir mengatakan, beberapa hari lebih baik daripada yang lain.

Suatu kali saya perhatikan bahwa salah satu troli mengalami kerusakan pada roda. Saya agak jengkel karena kadang-kadang dia berbalik ke arah yang salah dan menghancurkan semua yang ada di jalannya. Sedikit geram, dan sambil menarik rantai winch, aku menggaruk sepotong logam kecil. Itu menjengkelkan ketika saya berlari dengan kereta kosong untuk menangkap adonan dan memakai minyak yang disemprotkan.

Tapi ada juga kemenangan kecil. Saya merencanakan waktu untuk membuat adonan sehingga bets segar siap untuk pengiriman detik sebelum yang sebelumnya berakhir. Roti segar membuat roti yang sangat baik. Beberapa kemenangan bahkan kurang penting: saya perhatikan setetes adonan terbang dari mixer, mengikisnya dengan sekop cat, yang saya bawa di saku belakang, dan membuangnya. Oh ya! Kadang ternyata adonan dipotong menjadi potongan-potongan kecil. Pada saat-saat seperti itu, saya berhasil mengendalikan situasi, bahkan dalam hal-hal kecil.

Jadi hari-hariku berlalu. Banyak kekalahan kecil plus banyak kemenangan kecil. Apa yang saya dapatkan secara total? Bahkan sedikit kesal mempengaruhi suasana hati. Kualitas jauh lebih penting daripada ruang lingkup ketika datang ke emosi. Saya perhatikan bahwa hari-hari paling bahagia disertai dengan banyak kemenangan kecil dan beberapa kegagalan kecil.

Bertahun-tahun kemudian, di perguruan tinggi, saya mempelajari teori psikologis penting tentang ketidakberdayaan yang dipelajari Martin Seligman. Teori ini, didukung oleh penelitian bertahun-tahun, memberi tahu kita bahwa depresi tumbuh dari perasaan tidak berdaya ketika Anda tidak dapat mengendalikan situasi. Semakin baik Anda mengendalikan situasi, semakin banyak yang Anda dapatkan. Anda menjadi marah dan marah jika semuanya menjadi tidak terkendali: ruang pada keyboard rusak, dan saat Anda mengetik, kata-katanya tetap bersatu. Ini menjengkelkan karena Anda mengklik bilah spasi, tetapi tidak ada yang terjadi. Kunci pintu depan tidak selalu membuka kunci. Itu macet ketika Anda memutarnya. Singkatnya, semua hal-hal kecil ini mengecewakan kita hari demi hari. Terlepas dari kenyataan bahwa mereka terlihat tidak ada apa-apanya dibandingkan dengan kelaparan di Afrika. Tapi apa yang aku khawatirkan adalah celah bodoh!

Oke, mari kita kembali ke komputer. Saya mengusulkan membuat pengguna Windows khas bernama Pete. Ini membantu untuk mengingat gambar saat membuat antarmuka. Semakin realistis pengguna imajiner, semakin mudah membayangkan bagaimana ia akan menggunakan produk. Pete bekerja sebagai akuntan di perusahaan penerbitan teknis dan telah menggunakan Windows untuk bekerja dan di rumah selama enam tahun. Dia kompeten dan mengerti teknis. Pete menginstal perangkat lunaknya sendiri: membaca majalah komputer dan bahkan memprogram makro Word sederhana untuk memudahkan sekretaris mengirim faktur. Dia memiliki modem kabel di rumah. Pete tidak pernah menggunakan Macintosh: itu mahal baginya. "Untuk PC dengan 700 MHz dan 128 MB RAM - itu terlalu mati ..", - oke, Pete, kami mengerti Anda.

Suatu hari, teman Pete, Gina, meminta saya untuk membantunya dengan komputer. Gina memiliki iBook Macintosh, dan dia hanya suka "kotak." Pete membenci hal-hal ini, jadi dia geram begitu dia duduk di depan komputer. Pada akhirnya, dia membantu pacarnya, tetapi tetap sangat tidak bahagia: "Macintosh memiliki antarmuka pengguna yang konyol." Konyol? Apa yang dia bicarakan? Semua orang tahu bahwa Mac memiliki antarmuka yang elegan, dan keseluruhan triknya adalah kemudahan penggunaan.

Ini analisis saya tentang teka-teki ini. Jika Anda ingin menyeret jendela ke Mac, cukup tarik ke tepi mana pun. Di Windows, bilah judul digunakan untuk bergerak, dan jika Anda menarik sudutnya, jendela akan berubah bentuk. Menerapkan prinsip ini, Pete mencoba memperluas jendela pada Mac Gina, tetapi itu bergerak sangat berbahaya. Ketika kotak pesan muncul di Windows, Anda menekan Enter atau bilah spasi dan menutup. Pada Mac OS, bilah spasi tidak akan berfungsi, Anda harus mengklik mouse. Setelah menerima pemberitahuan, Pete karena kebiasaan menekan bilah spasi untuk menghapusnya. Ini telah berhasil selama enam tahun terakhir, tetapi tidak kali ini. Tanpa disadari, Pete mulai memalu kunci. Dia yakin Mac tidak mendaftarkan klik itu. Pada akhirnya, dia menggunakan mouse, tetapi berhasil menjadi gugup.

Pete digunakan untuk menutup jendela Windows dengan kombinasi tombol Alt + F4. Di Mac, mereka mengubah volume. Pada suatu titik, Pete ingin mengklik ikon Internet Explorer, yang ditutupi oleh jendela lain. Dia menahan Alt + F4 untuk menutup jendela dan kemudian mengklik dua kali pada ikon yang diinginkan. Nah, setelah itu dia harus menutup dua jendela: operasi berjalan berbeda.

Tampaknya sepele, tetapi mereka berhasil merusak malam Pete. Lelaki itu berusaha mengendalikan semuanya, tetapi tidak ada yang berhasil. Space dan Alt + F4 "tidak bekerja," tetapi dalam persepsi kami ini lebih seperti gangguan. Jendela nakal itu tampaknya mengolok-olok Pete dan bergerak alih-alih melebar. Jendela yang buruk. Bahkan perasaan bawah sadar yang tak terkendali ini berubah menjadi ketidakberdayaan, yang berubah menjadi ketidakberuntungan. "Saya suka komputer saya," kata Pete. - Windows bekerja sesukaku. Pada bunga poppy ini sangat sulit dan tidak nyaman. Beberapa gangguan. Jika Apple telah bekerja pada sistem operasi selama bertahun-tahun, daripada bermain-main dengan Newton, tidak akan ada kebingungan seperti itu. "

Kami sangat memahami Anda, Pete. Namun, terlepas dari perasaan Anda, Macintosh sangat nyaman digunakan. Misalnya, untuk pengguna Mac. Pemrogram Microsoft, yang seharusnya menyalin antarmuka Mac, mengira mereka menambahkan fitur baru yang keren, memungkinkan Anda untuk mengubah ukuran windows dengan meregangkan setiap tepi. Pemrogram Mac OS 8.0 mungkin berpikir akan lebih mudah untuk memindahkan windows menggunakan tepian. Sebagian besar perang yang dipicu oleh antarmuka pengguna berfokus pada hal-hal yang salah. Windows lebih baik karena nyaman untuk mengubah ukuran jendela? Itu tidak masalah. Kuncinya adalah bahwa antarmuka harus memenuhi harapan pengguna. Jika tidak demikian halnya, pengguna akan merasa tidak berdaya. Seperti saya, ketika roda gerobak berputar ke arah yang salah, dan saya menabrak dinding. Kamu disch!

Antarmuka pengguna penting karena itu mempengaruhi perasaan, emosi dan suasana hati pengguna Anda. Jika UI buruk, maka orang tidak akan dapat mengontrol operasi yang dilakukan, mereka akan marah, tetapi pengembang yang harus disalahkan. Jika antarmuka berfungsi sebagaimana mestinya, maka pengguna akan senang karena mereka telah mencapai tujuan kecil mereka. Hore! Berhasil! Perangkat lunak hebat! Woohoo!

Membuat orang bahagia berarti memberi mereka kendali atas situasi. Untuk melakukan ini, Anda perlu menafsirkan tindakan mereka dengan benar. Jadi, aturan utama desain UI adalah:

“Antarmuka pengguna yang baik berperilaku persis seperti yang diharapkan darinya”

Seperti yang dikatakan Giggel: "Segala sesuatu yang lain hanyalah komentar." Aturan desain UI lainnya hanyalah konsekuensi.

Sumber: Mengontrol Lingkungan Anda Membuat Anda Bahagia
Terjemahan: cinnamongirl

Source: https://habr.com/ru/post/id424689/


All Articles