เวลาออกแบบเพื่ออะไร เราก็ต้องเข้าใจในสิ่งนั้นๆ ข้อดีข้อด้อยของสิ่งนั้นๆด้วย
เช่น เวลาเราออกแบบส้วมแมว
เราก็ต้องไม่ลืมว่า แมวนั้น พูดไม่ได้ และส่วนใหญ่ กดชักโครกไม่เป็น
เวลาเราออกแบบกระถางให้ดอกบัว
เราก็ต้องไม่ลืมว่า ดอกบัวต้องอยู่ในน้ำตลอดเวลา และมีที่พอสมควรให้รากหายใจได้ เจริญเติบโตได้

เวลาเราออกแบบสิ่งใดๆให้คน
(ซึ่งเป็นส่วนใหญ่ในสิ่งทั้งหมดที่เราออกแบบในโลกนี้)
เราก็ต้องเข้าใจคนเหมือนกัน

สิ่งหนึ่งที่เป็นพื้นฐานในความเข้าใจมนุษย์
นอกจากที่เราจะเข้าใจความสามารถ ศักยภาพของมนุษย์แล้ว
นั้นก็คือ การเข้าใจข้อจำกัดในความสามารถของมนุษย์ในเรื่องต่างๆ
เช่น ถ้าเป็นเรื่องการออกแบบบันได
เราก็ต้องมีความรู้ความเข้าใจว่า มนุษย์ก้าวในแนวตั้งได้สบายที่สุดอยู่ในระยะเท่าใด
ถ้าออกแบบโต๊ะทำงาน
เราก็ต้องมีความรู้ความเข้าใจว่า คนปรกติ(ที่เป็นผู้ใช้ของเรา)
จะรู้สึกวางแขนทำงานได้สบายที่สุดในช่วงระยะใด
ถ้าเป็นโต๊ะคอมพิวเตอร์ จะวางแขนบนแป้นพิมพ์ได้องศาที่ดีที่สุด โต๊ะต้องสูงขนาดไหน

ถ้าในเรื่อง Application, Software
ก็จะมีข้อจำกัดที่ควรรู้มากมาย ทั้งนี้ ขึ้นอยู่กับกลุ่มผู้ใช้งานด้วย
ซึ่งจะมีข้อจำกัดและความสามารถเฉพาะแตกต่างกันไป

แต่โดยทั่วไป เวลาเราออกแบบ
ต้องไม่ลืมว่า เราออกแบบให้มนุษย์ใช้

1. มนุษย์ คือมนุษย์
คือผู้ที่สามารถสร้างข้อผิดพลาดได้ตลอดเวลา
เป็นสิ่งที่แตกต่างกับคอมพิวเตอร์อย่างเห็นได้ชัด
ระบบคอมพิวเตอร์ ถ้าเขียนโค้ดถูก ปราศจากบั๊ก
ถ้ายังอยู่ใน environment เดิม มันก็ยังทำงานได้โดยปราศจากบั๊กตลอดไป
แต่กับคนแล้ว ไม่รู้ว่า วันดีคืนดีวันไหนจะเกิดเฮี้ยน
อาจจะนอนดึก ง่วงนอน สมาธิไม่ดี แม่ตี สอบตก แชทเพลิน
มีร้อยแปดพันเก้าอย่างที่ทำให้มนุษย์ทำอะไรหละหลวม ผิดพลาดได้ตลอด
ฉะนั้น ถ้าระบบยิ่งมีบั๊ก มีข้อผิดพลาด หรือ workflow หละหลวมให้ผิดง่ายๆ
ก็ยิ่งส่งเสริมให้เกิดความผิดพลาดได้ง่ายๆ

*อย่าสรุปว่า ที่เกิดความผิดพลาดเป็นปัญหาของคนๆนั้นเสมอๆ
เพราะระบบอาจไม่ดีเอง หรือไม่ได้คิดถึง flow ที่จะรองรับความผิดพลาดทั่วไปเอาไว้
ให้แก้ที่ระบบก่อน จะง่ายกว่าแก้ที่คนประมาณสามล้านเท่า

2. ความเร็วของการคิด
สมองคนเราใช้เวลาประมาณ 1 ใน 10 วินาทีในการระลึกจำได้ในสิ่งๆหนึ่งๆบนหน้าจอ
และราวๆเกือบๆ 1 ใน 4 วินาที ในการเปลี่ยนความสนใจจากวัตถุหนึ่งไปยังวัตถุอื่นในหน้าจอเดียวกัน
และประมาณ 1.25 วินาทีในการตัดสินใจเลือก 1 ใน 2 ตัวเลือกที่ปรากฏขึ้นพร้อมๆกัน
(Olson and Olson, 1990)

* ถึงแม้ว่าหน่วยประมวลผลของคนเราจะเป็นหน่วยวินาที
มันก็ไม่ได้แปลว่าเร็วอย่างที่หลายๆคนเข้าใจ

3. ตาไปไวกว่ามือเสมอ
การพิมพ์ 1 ตัวอักษร ใช้เวลาโดยทั่วไป 0.1 – 1.25 วินาที
การคลิกเมาส์หนึ่งครั้ง ใช้เวลาเท่ากับการพิมพ์ 1 ตัวอักษร
ในขณะที่การเลื่อนเมาส์บนหน้าจอใช้เวลาเฉลี่ย 1.5 วินาที
(ทั้งนี้ การเลื่อนเมาส์เพื่อคลิกหรือหยุดในตำแหน่งที่ต้องการ ขึ้นอยู่กับ Fitt’s Law
ซึ่งว่าด้วยความสัมพันธ์ระหว่างขนาดของวัตถุและระยะทางที่จะไปยังวัตถุนั้นๆ
ถ้าวัตถุใหญ่และระยะทางสั้น ก็จะใช้เวลาน้อย
ในขณะที่ถ้าวัตถุเล็กแล้วระยะทางยังมากอีก ก็ใช้เวลามากขึ้นตามลำดับ)
การเปลี่ยนมือระหว่างคีย์บอร์ดกับเมาส์ ก็ใช้เวลาอีกประมาณ 0.36 วินาที
เมื่อดูแต่ละ action แล้วอาจจะไม่เยอะ
แต่คนเราไม่ได้ทำ action เดียวเดี่ยวๆกับหน้าเว็บ 1 หน้า หรือ หน้า Interfaceใดๆ 1 การแสดงผล
เราทำทั้งระลึก ตัดสินใจ มือไป มือเลื่อน คลิก เปลี่ยนตำแหน่งมือ
รวมๆแล้ว เราใช้เวลาไม่น้อยต่อการทำงานเพียง task เดียว

4. Small Number
นักจิตวิทยานามกระเดื่อง George Miller’s ได้ให้กำเนิดทฤษฎี 7 บวกลบ 2 เอาไว้
ซึ่งแสดงถึงหน่วย หรือชุดข้อมูล ที่คนปรกติคนหนึ่ง พอจะจำได้พร้อมๆกัน
ด้วยความจำส่วนชั่วคราว (Short-term Memory)

ในยุคสมัยการพัฒนาช่วงหนึ่ง จึงได้มีการเข้มงวดเกี่ยวกับกฏนี้อย่างมาก
หลายๆคนได้ตีความกฏนี้ว่า ในหน้าเว็บไม่ควรจะมีเมนูเกิน 7 เมนู
อย่างไรก็ตาม กฏนี้ก็มีข้อยกเว้นไปตามปัจจัยและสถานการณ์ในการใช้งาน
แต่อย่างน้อย กฏนี้ก็ทำให้เราทราบว่า
คนเราไม่ได้จำอะไรได้มากมายนักหรอก อย่าหวังอะไรอย่างนั้นเวลาทำระบบ

5. จำหน้าได้ แต่ชื่อหนีไปไหนแล้วไม่รู้
โดยทั่วไป คนเราจะมีประสิทธิภาพในการ “ระลึก” ได้มากกว่าการ “ขุดความจำ” ขึ้นมาโดยไม่มีตัวช่วย
ถ้าเราเจอคนๆหนึ่งที่ไม่ได้เจอมาเป็นสิบปี ก็มีความเป็นไปได้สูงว่า เราจำชื่อเขาไม่ได้
ถ้าเทียบการที่ให้เอารายชื่อ ตัวเลือกหลอกปนคำตอบจริงมาให้เลือก
เรามักจะตอบได้ถูกว่า อ๋อ ไอ้หมอนี่ชื่อนี้นี่เอง
มากกว่าการที่ให้เวลาเรานั่งระลึกชาติตามลำพัง
วันหลังจะพูดถึงเรื่องระลึก(Recognize) กับการขุดความจำ(Recall)
ในรายละเอียดทีหลังแล้วกัน (ถ้าไม่ลืม)

ในการใช้ระบบที่เกี่ยวกับคอมพิวเตอร์ยุคแรกๆ
จึงเป็นเรื่องที่สาหัสสากรรจ์สำหรับคนความจำปลาทอง
เพราะต้องจำชุดคำสั่งทั้งหมดในการใช้งานให้ได้ เพื่อการใช้งานระบบอย่างมีประสิทธิภาพ
ตอนนั้นก็ช่างมันเถิด เพราะยุคนั้น ยังเป็นการเริ่มต้นของการใช้คอมพิวเตอร์อยู่
แต่มาถึงค.ศ. พ.ศ.นี้แล้ว ใครยังทำระบบอย่างนั้นอยู่
ก็มีทีท่าว่าจะขายไม่ออก หมายังไม่มอง(เพราะอ่านไม่ออก) ได้ง่ายๆ
ไม่ใช่ว่าการใช้ชุดคำสั่งไม่ดีเสมอไป
แต่เราต้องไม่ลืมด้วยว่า ธรรมชาติในการประมวลผลความจำของคนเรา
ทั้ง Recognize และ Recall นั้น มีข้อดีข้อเสียต่างกันอย่างไร

6. Learning Curve
การเรียนรู้ของมนุษย์ เป็นปรกติที่จะเกิดข้อผิดพลาดในคราวแรกๆด้วยความไม่รู้ หรือไม่เคยชิน
เวลาที่เกิดการเรียนรู้ของใหม่ หรือวิธีใหม่ๆที่ใช้กับของเดิมๆ
Learning Curve จึงออกสตาร์ทอย่างช้าๆ ไปพร้อมๆกับความเอ๋อเป๋อเหลอที่จะเกิดขึ้น
ข้อนี้ก็เป็นอีกข้อที่นักพัฒนามักจะละเลย
เพราะมักจะคิดว่า ของมันดีนะ(แหงล่ะ ก็ทำเอง) ถ้าใครๆได้ใช้แล้วจะติดใจ (เข้าข้างตัวเองสุดๆ)
และลืมไปว่า คนอื่นๆไม่ใช่ตะเองนะ
ทำให้เกิดระบบ หรือ Application ที่ต้องใช้เวลาเรียนรู้อย่างมาก
(หรือใช้เวลาเรียนรู้อย่างมากแล้ว แต่ก็ยังไม่เข้าใจมันอยู่ดี) เต็มตลาดทั่วโลกไปหมด

ผ่านมาหกข้อแล้ว
คงจะเห็นว่า คนค้นคนนั้น ก็มีข้อด้อยไปตามประสา คนค้นคน
ถ้าจะถามว่า ข้อไหนสำคัญที่สุดเป็นอันดับแรก
ก็คงต้องเป็นข้อ 1 คือ
อย่าลืมว่า เรากำลังออกแบบ/ทำ ระบบให้คน
พอระลึกได้ดังนี้แล้ว ข้ออื่นๆก็จะเข้ามาอยู่ในความพิจารณาของเราเอง