ตอนที่ 3 First impression สำคัญมากๆ

  • warning: realpath() [function.realpath]: SAFE MODE Restriction in effect. The script whose uid is 1005 is not allowed to access /tmp owned by uid 0 in /var/www/sites/sugree/codenone.com/subdomains/www/html/includes/file.inc on line 190.
  • warning: realpath() [function.realpath]: SAFE MODE Restriction in effect. The script whose uid is 1005 is not allowed to access /tmp owned by uid 0 in /var/www/sites/sugree/codenone.com/subdomains/www/html/includes/file.inc on line 190.

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

First Impresstion

ตอนนี้เราจะพูดเรื่องการออกแบบประสบการณ์ครั้งแรกให้ประทับใจคนใช้ ที่ใช้คำว่าออกแบบประสบการณ์เพราะเราเป็นคนดำเนินเรื่องครับ ต้องรับบทผู้กำกับที่ทำให้ผู้ใช้ประทับใจให้ได้

ความสวยงาม เป็นเรื่องหนึ่งที่สร้างความประทับใจได้มาก พยายามให้เค้ารู้สึกว่าโปรแกรมของเราสวย ตรงนี้จะเริ่มทำให้เค้ามีความพยายามที่จะสนใจโปรแกรมของเรา จากนั้นก็ต่อด้วยความ ง่าย สามารถเริ่มต้นกับโปรแกรมของเราได้ทันที ผมเคยติดตั้ง driver สำหรับ scaner ตัวนึ่ง (บน windows) หลังจากการติดตั้งที่ยาวนาน ผมเจอโปรแกรมประมาณ 5 ตัว อยู่บน desktop ของเครื่อง สิ่งนี้ไม่ได้สร้างความประทับใจให้ผมเลย แต่กลับสร้างความสับสนให้อย่างมาก ผมไม่รู้ว่าจะใช้โปรแกรมไหนสำหรับการ scan รูปและผมก็ไม่ได้ขอให้ติดตั้งโปรแกรมเหล่านี้ลงไป สิ่งที่ผมต้องการจากการติดตั้ง driver คือโปรแกรมง่ายๆ ที่ติดตั้งไปแล้วทำให้เครื่อง scaner ใช้งานได้ ไม่จำเป็นต้องสร้างความสับสนให้ผู้ใช้

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

นี่เป็นตัวอย่างของความประทับใจครั้งแรกของผมกับโปรแกรม driver ของ scaner เจ้าหนึ่ง ดังนั้นถ้าไม่อยากให้ผู้ใช้งานโปรแกรมของเรารู้สึกไม่ดี ลองดูเทคนิด 4 ข้อนี้ครับ

สิ่งที่ควรคำนึงถึงในการสร้างความประทับใจแรก

  1. หึบห่อ (Packaging)
  2. การส่งโปรแกรมให้ผู้ใช้ (Distribution)
  3. การติดตั้ง (Installation)
  4. ปรับแต่ง (Setup & Configuration)

เรามาดูรายละเอียดในแต่ละตัว

หึบห่อ (Packaging)

เริ่มกันตั้งแต่กล่องเลยครับ

  • พยายามทำให้กล่องดูมีเสน่ห์ดึงดูง (Attractive!) และเข้าใจง่าย
  • ทำให้เปิดง่ายๆ กล่องเกมส์ DOOM เปิดยากมากๆ (เป็นเหล็กทั้งกล่อง)
  • บอกความต้องการของระบบอย่างชัดเจน system requirement
  • ให้แน่ใจว่าผู้ใช้มีทุกอย่างที่ต้องการสำหรับใช้งานโปรแกรม (ถ้าโปรแกรมต้องการใช้ quicktime เวอร์ชันใหม่ก็ควรแนบไปให้เค้าด้วย)
  • ศึกษาการติด logo และสิ่งที่เป็นมาตรฐานของ platform นั้นๆ เช่นในกรณีที่เราขายโปรแกรมกับเครื่อง Apple ก็ควรอ่าน product development ในนี้จะมีหลักในการติด logo และเครื่องหมายการค้าต่างๆ ให้ รวมทั้งเงื่อนไขในการติดสัญลักษณ์ต่างๆ เพื่อให้ผู้ใช้เข้าใจใน product ของเราง่ายที่สุดจนถึงไม่รู้สึกว่าต้องทำความเข้าใจ

logo universal

logo bonjour

ของ windows หาไม่เจอ ใครรู้ช่วยเพิ่มเติมเลยนะครับ

การส่งโปรแกรมให้ผู้ใช้ (Distribution)

  • ถ้าเป็นโปรแกรมบน mac ก็ควรใช้ Disk images (.dmg) เพราะเป็นรูปแบบที่ผู้ใช้ mac คุ้นเคย ถ้าเป็นบน windows ก็ควรเป็น setup.exe ให้ผู้ใช้ double click
  • ควรย่อขนาดไฟล์ให้เรียบร้อยภายใน Disk images หรือ setup.exe ไม่ควรให้ผู้ใช้มาขยายเองอีกที
  • อย่าให้มีขั้นตอนมากมายสำหรับผู้ใช้ เช่น ต้อง unzip .hqx ก่อน จากนั้นก็ .sea ก่อนจะได้ .dmg เพื่อเอาไฟล์ .pkg แล้วตอนลงก็ต้องผ่าน authentication แล้วไปหน้า registration … (อยากบอกว่ามีคนที่ทำแบบนี้จริงๆ นะครับ)

การติดตั้ง (Installation)

  • ทำให้ simple และ ง่าย
  • ใช้วิธี drag & drop เพื่อการ install หรือให้เป็นแค่ double click ทีเดียว
  • ถ้าจำเป็นต้อง setup ก็ให้ใช้ระบบ setup แบบเดียวกับที่ผู้ใช้คุ้นเคย (ลองดูโปรแกรม PackageMaker หรือ setup
  • ให้ผู้ใช้กำหนดตำแหน่งที่จะติดตั้งได้
  • ให้ใส่ใจกับการเปิดโปรแกรมครั้งแรก ทั้งในเรื่องการติดตั้ง และการปรับแต่งระบบ อย่าให้ผู้ใช้จากเราไปตั้งแต่ยังไม่ได้ลองโปรแกรมเรา

ยังไงก็ต้องให้เค้าได้ลองใช้โปรแกรมของเราให้ได้ก่อน หลังจากนั้นกระบวนการ register หรือการจ่ายเงินค่อยตามๆ กันมา

การปรับแต่ง (Setup and Configuration)

  • ทำให้ผู้ใช้เจ็บปวดน้อยที่สุด ผู้ใช้อยากลองโปรแกรมของเราแล้ว แต่ต้องมาติดอยู่กับขั้นตอน setup มันเจ็บปวดมากครับ
  • ตั้งค่า default ที่คิดมาอย่างดี อันนี้ผมว่า developer รู้ดีครับถ้าเราคิดให้หนักๆ ผู้ใช้ก็แทบไม่ต้อง configuration อะไร แต่ถ้าเรากำหนด default มาไม่ดีการให้เค้ามากำหนดอะไรเองมากมาย มันเจ็บปวดอยู่ครับ ยิ่งถ้า config ไม่ได้จะทรมาณมาก
  • ให้ผู้ใช้ใส่รายละเอียดเองให้น้อยที่สุด อย่ามักง่ายโดยการให้โปรแกรม popup คำถามขึ้นมา ถ้าเป็นไปได้เราควรให้โปรแกรมไปหาคำตอบเองดีกว่า ผมจะเจ็บปวดถ้าโปรแกรที่ขึ้นมาถามค่าในเครื่องของเราทั้งๆ ที่มันไปเอามาเองได้ แล้วค่าที่โปรแกรมมันจะเอาก็ใช่ว่าเราจะหามาให้มันได้ง่ายๆ นะ

สุดท้ายหัวใจของ first impression คือทำอย่างไรก็ได้ให้ผู้ใช้เริ่มใช้งานโปรแกรมของเราให้เร็วที่สุด โดยมีปัญหาน้อยที่สุด

ย้าย Codenone

ประกาศย้าย Codenone ไปใช้ Forum ของ Blognone แทนครับ ตามไปตั้งกระทู้ต่อได้ที่ Codenone Forum (รายละเอียดอ่านจากกระทู้ ย้าย Codenone ไปรวมกับ Blognone)

กระทู้เก่าๆ จะย้ายตามไปในภายหลัง ตอนนี้ปิดการโพสต์กระทู้ไว้ เหลือไว้เฉพาะอ้างอิงเท่านั้น