Feynman’ın Usturası
(defenderofthebasic.substack.com)- Teknik açıklamalar acemileri gözetse bile, anlama kapasitesine sahip kişilerin gerçek durumu kavrayabilmesi için doğru ipuçları bırakmalıdır
- Outlook hata mesajı, “artık var olmayan bir iletinin” içeriğinin kopyalanabileceğini söyleyerek kullanıcıya çelişkili bir model sunuyor
servervecachegibi sözcükleri gizlemezseniz, ilgilenen kullanıcılar arayıp öğrenebilir; zaten bilenler ise sorunu daha hızlı anlarloading…gibi tanıdık ama hatalı durum göstergeleri, sistemin gerçekte ne yaptığını gizler; “girdinin bitmesini bekliyor” gibi doğrudan söylemek daha iyidir- Aşırı basitleştirme kullanıcının akıl yürütmesini engellediği için, en azından hata kodu ve olası eylemler gibi gerçeğe götüren işaretler bırakılmalıdır
Kolay açıklama da yanlış olmamalı
- “Feynman’ın Usturası”, teknik konuları sıradan kullanıcılara açıklarken, anlama kapasitesine sahip bir kişi bile anlayamıyorsa bunun iyi bir açıklama olmadığı ölçütüdür
- Richard Feynman, bir gazete yazısında yalnızca “7 tonluk makine” bilgisinden bunun nasıl bir makine olduğunu anlayamadığını, “atomic bullet” ifadesinin neyi kastettiğini de bilmediğini söylemişti
- Esas mesele açıklamanın ne kadar kolay göründüğü değil; okuyan kişi konuyu anlama kapasitesine sahipse gerçekten anlayıp anlayamadığıdır
Outlook hata mesajının yarattığı kafa karışıklığı
- Hacker News tartışmasında şu hata mesajı alay konusu oldu
- “This message can't be saved because it no longer exists. It can only be discarded. Make sure you copy the contents of the message before you discard if you want to use them later.”
- Kullanıcıya artık var olmayan bir iletinin içeriğini kopyalayabileceği, ama kaydedemeyeceği söylenmiş oluyor
- Sorun, sıradan kullanıcının teknik terimleri bilmemesi değil; anlayabilecek kullanıcıya bile gerçek durumun açıklanmaması
server ve cache gizlenmeden anlatmak
- Alternatif bir ifadede, iletinin posta sunucusundan silindiği ancak Outlook’un onu bu cihazdaki geçici önbellekte tuttuğu açıklanıyor
- Kullanıcı ileti içeriğini kopyalayabilir veya önbellekten atabilir
- Önbellekten atarsa kalıcı olarak silinir
- Bazıları, sıradan kullanıcıların
cacheya daservergibi sözcükleri anlamayacağını söyledi - Oysa bu sözcükler, ilgilenen kullanıcılar için aratılabilir öğrenilebilir ipuçları sağlar; zaten anlayan kullanıcılara da gerçek durumu daha net gösterir
- İlgilenmeyen kullanıcılar hiçbir açıklamadan pek fayda görmez; ama ilgilenen kullanıcılar için ipuçları kalmalıdır
Yazılım durumunu olduğu gibi söylemek
substack-proxyaracı, kullanıcının kopyalayıp yapıştırdığı Substack gönderi URL’sine dayanarak Twitter sansürünü aşacak bir URL oluşturur- Kullanıcı URL girerken veya düzenlerken çok fazla sunucu isteği oluştuğu için yaklaşık 1 saniyelik gecikme eklendi
- İlk durum metni
loading…idi; ancak gerçekte yükleme yapılmıyor, kullanıcının girdiyi bitirmesi bekleniyordu - “Girdinin bitmesini bekliyor”, makinenin gerçek durumunu daha doğru yansıtır
- Bir hata nedeniyle durduğunda bile,
loading…yerine “girdinin bitmesini bekliyor” üzerinde takılı kalması sorun durumunu daha iyi ortaya çıkarır
Her şeyi öğretmek gerekmez ama sadık kalmak gerekir
- Yazılımın her kullanıcıya her şeyi öğretmesi gerekmez
- Kullanıcılar çoğu zaman nedeni bilmek istemez; yalnızca düzgün çalışmasını ister
- Yine de bir açıklama sunuluyorsa, bilgisayarın nasıl çalıştığına dair tuhaf veya hatalı bir model verilmemelidir
- Yalnızca basit bir hata kodu ve eylemler sunmak da mümkündür
Error code 1027: file cannot be saved.[Copy contents][Delete file]
- İlgilenen kullanıcı hata kodunu aratabilir; ilgilenmeyen kullanıcı ise mümkün seçenekleri hemen görebilir
Basitleştirmenin ölçütü
- İyi bir basitleştirme, açıklamak istediği gerçekle bağlantılı ipuçlarını koparıp atmaz
- “Ortalama kullanıcı anlamaz” varsayımıyla tüm kullanıcıları aynı seviyeye indirgeyen yaklaşım tehlikelidir
- “bits and bytes”, bilgisayarı ilk kez kullananlara gücü açmayı ve
entertuşlamayı anlatırken, aynı bölümde ikili kodu da ele alan bir örnektir
1 yorum
Hacker News yorumları
message-doesn't-exist örneği, aşırı basitleştirmeden çok, yazarın bağlamı unuttuğunda sıkça ortaya çıkan bir hataya benziyor
Programcı açısından bakınca sunucudan bir şey alınmaya çalışılmış ve sunucu yok diye yanıt vermiş; bu yüzden “mevcut değil” demek doğru olabilir
Ama kullanıcının o mesajı gözünün önünde gördüğü bağlamda “mevcut değil” açıkça yanlış
Bağlamı “Bu mesaj sunucuda yok; şu anda geçici olarak yalnızca bilgisayarınızda, bu yüzden kopyalayın” gibi yeniden kurmak gerekiyor
Kullanıcı “sunucu”nun ne olduğunu bilmese bile, “bir yerde yok” bilgisi varsa cümle çok daha anlamlı olur
Bir oto tamircisi arabanın tamamını gösterip “Bu değiştirilecek” derse kafa karıştırır; ama “xxx değiştirilecek” derse xxx’in ne olduğunu bilmeseniz bile anlaşılabilir
Günümüzde çevrimiçi tasarımın, kullanıcı ne kadar az düşünürse o kadar kolay takip eder varsayımıyla, tamamen insanları daha aptallaştıran bir yöne gittiği hissi var
Örneğin Google arama sonuçları her ay daha da en düşük ortak paydaya uyarlanıyor gibi; nüanslı şeyler arasanız bile algoritma sizi faydasız yanıtlara itiyor
Belki pek çok kişi gerçekten bu yaklaşıma daha iyi tepki verdiği için verilerde iyi görünüyordur, ama ben şahsen sevmiyorum
Sistemlerle etkileşime girerken biraz daha öğrenmek ve karmaşıklıkla karşılaşmak istiyorum; o karmaşıklığın saklanmasını istemiyorum
Bu yüzden ekipmanı ayarlanabilir yaptılar; performans büyük ölçüde arttı, hatalar da azaldı
Ama teknoloji sektöründe neden bunun tam tersi söyleniyor; hayalî bir ortalama kullanıcıya ne kadar uyarlanırsa o kadar iyi ya da daha kârlı olduğu iddia ediliyor, anlamıyorum
Bireysel çeşitlilik neden görmezden gelinebilir sayılıyor, merak ediyorum
Norton Disk Doctor’ı özlememin nedeni disk kurtarma işi yapmam değil; kullanıcının zekâsına saygı duyan bir arayüze sahip olmasıydı
Depolamayla ilgili diğer sistemler “Mode 5/7? [Y]” gibi çözülemez ifadeler ya da “Are you sure? [N]” gibi aşırı aptallaştırılmış sorular gösteriyordu
Neye emin olmam gerektiğini, mode 5’in ne olduğunu, 7 mi, ikisi birden mi olduğunu anlamak mümkün değildi
Buna karşılık Norton, her seçeneğin ne anlama geldiğini birkaç paragrafla açıklıyor, kavramları bağlam içinde açıyor, avantajları ve riskleri anlatıyordu
Sürekli Y’ye basıp işi şansa bırakmak yerine, bilgi sahibi olup seçim yapmanızı sağlıyordu
Okura ve kullanıcıya yönelik bu saygı; kılavuzlar, kullanıcı arayüzleri, blog yazıları, API dokümantasyonu gibi tüm teknik yazım türleri için geçerli
“Sıradan insanlar” için metni aptallaştırmak yerine, metni okuyup anlayan her okurun teknik olarak biraz daha gelişmesini sağlayacak şekilde eğitmenin daha iyi olduğunu düşünüyorum
Bu arada “Mode 5/7?” bir kamu kurumunun tüm verilerini içeren Hitachi SAN dizisinde gerçekten çıkan bir ifadeydi; kılavuz da bu seçeneğin mode 5/7’yi açıp kapattığını nazikçe açıklıyordu
Yanlış seçerseniz dizi kendi kendini silebilir ve kediniz ölebilir; ya da hiçbir şey olmayabilir. Kim bilir
Ayarları yapanların her öğeye kısa bir araç ipucu açıklaması koyması neredeyse hiç çaba gerektirmez, ama pratikte bunu neredeyse hiç yapmıyorlar
Amaç bilgi aktarmaksa bu doğru
Ama amaç tıklamaları artırmak, destek taleplerini azaltmak ve etkileşimi yükseltmekse, teknik olarak ayrıntılı ve doğru bir açıklamanın, hatalı sayılacak kadar basitleştirilmiş bir açıklamadan daha iyi olduğunu söylemek zor
Bu, bilgi aktarımından çok etkileşimi önceleyen hedeflere katıldığım anlamına gelmiyor
https://www.goodreads.com/quotes/65213-briefly-stated-the-ge...
Bu hedeflerin peşinden gitmeye karar verenler için bunun gerçekten riskli bir seçim haline gelmesini sağlamalıyız
İşte bu meseleyle çok uğraşıyorum
Okurun İngilizcede yetkin olduğunu, konuyu anladığını, hatta anlamaya ilgi duyduğunu bile varsayamam
Bu yüzden sade ve belirsiz olmayan yazımı benimsedim; şimdi de yalnızca göz gezdirerek ana fikrin yakalanabileceği biçimlendirmeler deniyorum
Kişisel olarak nhs.uk’nin öğrenilecek en iyi örnek olduğunu düşünüyorum
İnsanlar aptal değil; sadece meşgul, yorgun, tembel ya da ayrıntılarla pek ilgilenmiyorlar
Okurun zekâsına saygı duymak ile zamanına saygı duymak arasında bir denge var
https://www.gov.uk/guidance/content-design/writing-for-gov-u...
Feynman’ın usturasının da aslında bu yönde olduğunu düşünmüştüm. 1979’da Yeni Zelanda’daki QED konferansında dinleyicilerden gelen bir soruya verdiği yanıt aklıma geliyor
“Dünya hakkındaki tasvirimizin olasılık içeren hesaplamalara dayanması gerektiği fikrini seviyor musunuz?” sorusuna Feynman, bunu sevdiğini ya da sevmediğini söylemediğini yanıtlıyor
Bilim insanı olarak uzun süre eğitilince nesnelere belirli bir bakış biçimi geliştirdiğini; konferansta biraz basitleştirip hafifçe çarpıtarak bundan hoşlanmıyormuş gibi duyulmasını sağlayabileceğini, ama asıl anlamın “garip” olduğu olduğunu söylüyor
Kendisinin bunun hoşuna gidip gitmediğini değil, bunun ne olduğunu ve ne olmadığını düşündüğünü; hoşuna gidip gitmemesinin tamamen alakasız olduğunu ve bunu zihninden çıkardığını söylüyor
Karmaşıklık ve uzman olmayanlara açıklama meselesinde tavşan deliği hep daha da derine iner
Caltech derslerinin uzayda dönme kısmında da güzel bir alıntı var. “Bu denklemleri tam genel halleriyle kullanıp tüm sonuçlarını incelemeyeceğiz. Bunu yapmak yıllar alırdı ve yakında başka bir konuya geçmemiz gerekecek. Giriş düzeyindeki bir derste yalnızca temel yasaları sunabilir ve bunları özel olarak ilgilendiğimiz birkaç duruma uygulayabiliriz”
İyi tarafından bakarsak, uzman konumundayken yanlış konuşmama ya da doğru olmayan bir şeyi ima etmeme tutumu; ama aynı zamanda soruya düzgün yanıt vermeden sıyrılıyormuş gibi de görünebilir
Bir röportajcının mıknatısların nasıl çalıştığını sorduğu videoda da tam olarak aynı şekilde yanıt veriyor
“En sevdiğim yorum lisper’ın…” demesi hoş. Biri beni tanımış
Bilimsel yöntem üzerine bir blog yazısı serisi yazmak için çok uğraşıyorum ama neredeyse hiç geri bildirim alamadım; böyle hafif bir yorumun ilgi görmesi tuhaf
Hayat bazen komik
Yazının sahibi de Feynman alıntısını doğru aktaramamış
“And there are not sixty two kinds of particles” değil, “And there are now sixty two kinds of particles” olmalı
Teknik terimler olmadan hem acemileri hem uzmanları tatmin edecek şekilde açıklayabiliyorsan, uzmanlık terimlerinin ne işe yararı var?
Yazıdaki örnek iki tarafa da faydalı değil; uzmanlık terimleri olsa da olmasa da daha iyi hale gelmiyor
Sadece kötü bir açıklama olduğu için argümanın kendisi zayıflıyor
Ya bunların hepsini aktarmanız ya da uzmanlık terimleriyle kestirmeden gitmeniz gerekir
Bazı durumlarda iki tarafı da tatmin eden bir açıklama mümkündür ama daha zordur ve daha çok kelime gerektirir. En azından medya bağlamında bu önemlidir
Yine de burada bir spektrum var ve genellikle uygun bir orta nokta bulunabileceğini düşünüyorum
“Mesaj mevcut değilken içeriği kopyalayabiliyor muyum? Kopyalayabiliyorsam neden kaydedemiyorum? Mevcut değilse neden atmam gerekiyor?” gibi bir kafa karışıklığı oluşuyorsa, daha az açıklayıcı yazmak daha iyi bile olabilir
“Bu mesaj yakında artık kullanılamayacak. Daha sonra kullanmak istiyorsanız, atmadan önce mesaj içeriğini kopyalayın” gibi bir ifade yeterli olur
Önbellek konusunu açmak kullanıcıya yardımcı olmaz
Asıl çözüm, mesajın sonuna “Mesaj içeriğini cihaza kaydet” düğmesi eklemektir
Böylece metin netleşir ve doğrudan eyleme dönüşür
Daha ayrıntılı açıklamaya bir etiket konabilir ya da “gelişmiş açıklama” düğmesiyle açılan ikinci bir ekrana yerleştirilebilir