Teslim ettiğim ilk panellerden biri teknik olarak kusursuzdu. Her alan yönetilebiliyordu, her ayar açıktı, her şey esnekti. Altı ay sonra müşteriyi aradığımda öğrendim ki kimse kullanmıyordu; içerik değişikliklerini bana e-posta atarak istiyorlardı.
O gün anladığım şey şu: bir panelin başarısı, neler yapabildiğiyle değil, işini bilmeyen birinin korkmadan kullanabilmesiyle ölçülüyor. Aşağıdakiler o dersten çıkan kurallar.
1. Panel, veritabanınızın aynası olmasın
En yaygın hata: tabloları ekrana olduğu gibi dökmek. Kullanıcı "kampanya duyurusu
yayınlamak" istiyor; sizin sunduğunuz ise posts, post_meta ve
taxonomies tablolarında ayrı ayrı kayıt açmak. Panel, kullanıcının
işini yansıtmalı, veri modelinizi değil.
Test: bir ekranın adı, kullanıcının o ekranda yapmaya geldiği işi anlatıyor mu? "Kayıt Yönetimi" değil, "Kampanya Yayınla".
2. Her alan zorunlu değildir
Otuz alanlı bir form, kullanıcıya "bunların hepsini doğru doldurmalıyım" hissi verir ve felç eder. Alanları ikiye ayırın: işi bitirmek için gerekenler ve gerisi. İkinci grubu kapalı bir "Gelişmiş" bölümüne alın. Çoğu kullanıcı orayı hiç açmayacak — ve bu iyi bir şey.
3. Kaydetmeden önce ne olacağını gösterin
Kullanıcının panelden korkmasının bir numaralı sebebi, "kaydet"e bastığında ne olacağını bilmemesi. Önizleme, en ucuz güven aracıdır. Yayına almadan görebiliyorsa denemekten çekinmez; çekinmezse paneli kullanır.
4. Geri alınabilir olsun
Silme işlemi gerçekten silmesin. Yumuşak silme (soft delete) ve 30 günlük çöp kutusu, geliştirmesi yarım gün süren ama panelin algısını tamamen değiştiren bir özelliktir. Aynı şekilde içerik revizyonlarını saklayın — "dün ne yazıyordu?" sorusunun cevabı bir tıklama uzakta olsun.
5. Hata mesajı, hatayı çözecek bilgiyi versin
"Bir hata oluştu" cümlesi hiçbir işe yaramaz. Kullanıcıya üç şeyi söyleyin: ne oldu, neden oldu, şimdi ne yapmalı.
Kötü: "Yükleme başarısız."
İyi: "Görsel 8 MB — sınır 2 MB. Görseli küçültüp tekrar deneyin."
6. Boş ekranı fırsata çevirin
Kullanıcının paneli ilk gördüğü an, her liste boştur. Çoğu panel burada boş bir tablo gösterir. Oysa bu ekran, kullanıcıya ne yapacağını öğretmek için en iyi yerdir: "Henüz kampanya yok. İlk kampanyanızı oluşturun →" ve tek bir belirgin buton.
7. Yetkiyi role göre değil, işe göre kurun
"Editör", "yazar", "katkıcı" gibi soyut roller, gerçek organizasyonlara nadiren uyar. Bunun yerine somut sorulardan başlayın: kim fiyat değiştirebilir? Kim yayına alabilir? Kim silebilir? Roller bu cevaplardan türesin.
Ayrıca kullanıcı yetkisi olmayan bir şeyi görmesin — pasif ve tıklanamaz bir buton görmek, kullanıcıya sürekli yapamadığı şeyi hatırlatır.
8. Panelin de bir performansı vardır
Ziyaretçi sitede 3 saniye bekler, çalışan panelde günde yüz kez bekler. Yavaş bir panel, o kişinin günlük işine doğrudan vergi koyar. Liste sayfalarında sayfalama kullanın, tüm kayıtları tek seferde çekmeyin, arama alanlarına indeks koyun. Performans yazısındaki N+1 sorgu bahsi burada da birebir geçerli.
Gerçek test
Panel bittiğinde şunu yapın: paneli hiç görmemiş, projeyi bilmeyen birini oturtun ve tek bir görev verin — "şu duyuruyu yayınla". Yardım etmeyin, açıklama yapmayın, sadece izleyin.
Kişi görevi beş dakikada, size soru sormadan bitiriyorsa panel hazırdır. Duraksadığı her yer, düzeltmeniz gereken bir yerdir. Bu testi WebWizz panelinde uyguladım ve ilk denemede üç ekranı yeniden düzenledim — o üç düzeltme, panelin bugün hâlâ kullanılıyor olmasının sebebi.