ฉันแน่ใจว่าคุณเคยได้ยินเรื่องเส้นริ้วหรือใช้แอปกับสิ่งหนึ่ง แต่เคยสงสัยบ้างไหมว่าทำไมลายเส้นจึงได้รับความนิยมและทรงพลังมาก? มีสิ่งหนึ่งที่ชัดเจนว่าแอปต้องการความสนใจของคุณมากที่สุดเท่าที่จะเป็นไปได้ แต่นอกเหนือจากนั้น คุณรู้ไหมว่าเมื่อแอปการเรียนรู้ยอดนิยม Duolingo เปิดตัววิดเจ็ต iOS เพื่อแสดงลายเส้น ความมุ่งมั่นของผู้ใช้เพิ่มขึ้น 60% หกสิบเปอร์เซ็นต์เป็นการเปลี่ยนแปลงพฤติกรรมครั้งใหญ่ และแสดงให้เห็นว่ารูปแบบ "ต่อเนื่อง" สามารถใช้เพื่อเพิ่มการมีส่วนร่วมและกระตุ้นการใช้งานได้อย่างไร โดยพื้นฐานที่สุด สตรีคคือจำนวนวันติดต่อกันที่ผู้ใช้ทำกิจกรรมใดกิจกรรมหนึ่งจนเสร็จสิ้น บางคนยังให้คำนิยามว่าเป็นนิสัย "gamified" หรือตัวชี้วัดที่ออกแบบมาเพื่อส่งเสริมการใช้งานที่สอดคล้องกัน แต่เส้นริ้วนั้นเกินกว่าจะเป็นตัวชี้วัดหรือบันทึกในแอป มันเป็นจิตวิทยามากกว่านั้น สัญชาตญาณของมนุษย์นั้นง่ายต่อการมีอิทธิพลด้วยปัจจัยที่เหมาะสม ดูปัจจัยทั้งสามนี้: ความก้าวหน้า ความภาคภูมิใจ และความกลัวที่จะพลาด (โดยทั่วไปเรียกว่า FOMO) ทั้งหมดนี้มีอะไรเหมือนกัน? ความพยายาม. ยิ่งคุณทุ่มเทความพยายามให้กับสิ่งใดสิ่งหนึ่งมากเท่าไร มันก็ยิ่งกำหนดความเป็นตัวตนของคุณมากขึ้นเท่านั้น และนั่นคือวิธีที่เส้นทางต่างๆ ก้าวเข้าสู่โลกแห่งจิตวิทยาเชิงพฤติกรรม ตอนนี้ พลังอันยิ่งใหญ่มาพร้อมกับความรับผิดชอบอันยิ่งใหญ่ และด้วยเหตุนี้ จึงมีด้านมืดที่ต้องเผชิญ ในบทความนี้ เราจะพูดถึงจิตวิทยา UX และหลักการออกแบบที่อยู่เบื้องหลังการสร้างระบบต่อเนื่องที่มีประสิทธิภาพ เราจะมาดูกันที่ (1) เหตุใดสมองของเราจึงเกือบจะตอบสนองต่อกิจกรรมต่อเนื่องโดยสัญชาตญาณ (2) วิธีการออกแบบเส้นริ้วในลักษณะที่ช่วยเหลือผู้ใช้อย่างแท้จริง และ (3) งานด้านเทคนิคที่เกี่ยวข้องกับการสร้างรูปแบบลายริ้ว จิตวิทยาเบื้องหลังลายเส้น ในการออกแบบและสร้างระบบ streak ที่มีประสิทธิภาพ เราต้องเข้าใจว่าระบบดังกล่าวสอดคล้องกับวิธีที่สมองของเราเชื่อมโยงกันอย่างไร เช่น อะไรทำให้มีประสิทธิภาพมากจนเรารู้สึกถึงความทุ่มเทอย่างแรงกล้าเพื่อปกป้องแนวของเรา? มีหลักจิตวิทยาที่น่าสนใจสามข้อที่ได้รับการบันทึกไว้อย่างดีซึ่งสนับสนุนสิ่งที่ทำให้ลายเส้นมีพลังและน่าติดตาม ความเกลียดชังการสูญเสีย นี่อาจเป็นพลังที่แข็งแกร่งที่สุดที่อยู่เบื้องหลังการต่อเนื่อง ฉันพูดแบบนี้เพราะในชีวิตส่วนใหญ่คุณแทบจะหลีกเลี่ยงสิ่งนี้ไม่ได้ ลองคิดแบบนี้: หากเพื่อนให้เงินคุณ 100 ดอลลาร์ คุณจะมีความสุข แต่ถ้าคุณสูญเสียเงิน 100 ดอลลาร์จากกระเป๋าเงินของคุณ นั่นจะเจ็บปวดยิ่งกว่านั้นมาก น้ำหนักทางอารมณ์ของสถานการณ์เหล่านั้นไม่เท่ากัน การสูญเสียนั้นเจ็บปวดมากกว่าการได้รับความรู้สึกดีๆ ลองพูดต่อไปว่าฉันให้เงินคุณ 100 ดอลลาร์และขอให้คุณเล่นการพนัน มีโอกาส 50% ที่คุณจะชนะอีก $100 และโอกาส 50% ที่คุณจะเสียเงิน $100 เดิม คุณจะรับมันไหม? ฉันจะไม่ คนส่วนใหญ่จะไม่ทำ นั่นคือความเกลียดชังการสูญเสีย ถ้าคุณคิดเกี่ยวกับมัน มันเป็นตรรกะ เป็นที่เข้าใจได้ มันคือมนุษย์ แนวคิดเบื้องหลังความเกลียดชังการสูญเสียคือเรารู้สึกถึงความเจ็บปวดจากการสูญเสียบางสิ่งบางอย่างมากกว่าความสุขที่ได้รับบางสิ่งบางอย่างที่มีมูลค่าเท่ากันถึงสองเท่า ในแง่จิตวิทยา การสูญเสียยังคงอยู่มากกว่ากำไร คุณอาจเห็นว่าสิ่งนี้เกี่ยวข้องกับเส้นริ้วอย่างไร ในการสร้างเส้นริ้วที่เห็นได้ชัดเจนนั้นต้องใช้ความพยายาม เมื่อสตรีคเติบโตขึ้น แรงจูงใจเบื้องหลังก็เริ่มจางหายไป หรือพูดให้ถูกคือเริ่มกลายเป็นเรื่องรอง ตัวอย่าง: สมมติว่าเพื่อนของคุณปิด "Move Rings" บน Apple Watch เป็นเวลาสามวัน พวกเขาแทบไม่มีอะไรจะเสียนอกจากต้องการบรรลุเป้าหมายและมีความสม่ำเสมอ ในเวลาเดียวกัน คุณมีช่วงเวลา 219 วันที่น่าประทับใจ มีโอกาสที่คุณจะติดอยู่กับความกลัวที่จะสูญเสียมันไป คุณคงไม่คิดถึงความสำเร็จในตอนนี้ แต่เป็นการปกป้องความพยายามที่ลงทุนไปมากกว่า และนั่นคือความเกลียดชังการสูญเสีย Duolingo อธิบายว่าความเกลียดชังต่อการสูญเสียมีส่วนทำให้ผู้ใช้ไม่เต็มใจที่จะทำลายสถิติที่ยาวนานที่สุด แม้ในวันที่ขี้เกียจที่สุดก็ตาม ในทางหนึ่ง กระแสสามารถกลายเป็นนิสัยได้เมื่อความเกลียดชังการสูญเสียเข้ามา โมเดลพฤติกรรม Fogg (B = MAP) ตอนนี้เราเข้าใจถึงความกลัวที่จะสูญเสียความพยายามที่ลงทุนในการแข่งขันระยะยาว คำถามอื่นก็คือ อะไรทำให้เราทำสิ่งนั้นตั้งแต่แรก วันแล้ววันเล่า ก่อนที่การแข่งขันจะยิ่งใหญ่? นั่นคือสิ่งที่โมเดลพฤติกรรม Fogg เป็นเรื่องเกี่ยวกับ มันค่อนข้างง่าย พฤติกรรม (B) จะเกิดขึ้นก็ต่อเมื่อปัจจัยสามประการ ได้แก่ แรงจูงใจ (M) ความสามารถ (A) และพร้อมท์ (P) สอดคล้องกันในเวลาเดียวกัน ดังนั้นสมการ B=MAP หากปัจจัยใดปัจจัยหนึ่งเหล่านี้ขาดหายไปในขณะนั้น พฤติกรรมดังกล่าวก็จะไม่เกิดขึ้น ดังนั้น เพื่อให้ระบบสตรีคมีประสิทธิภาพและเกิดซ้ำ ต้องมีปัจจัยทั้งสามประการ: แรงจูงใจสิ่งนี้เปราะบางและไม่ใช่สิ่งที่ปรากฏอยู่สม่ำเสมอ มีหลายวันที่คุณเป็นตั้งใจเรียนภาษาสเปน และหลายวันมานี้คุณไม่รู้สึกถึงกำลังใจที่จะเรียนภาษาเลยด้วยซ้ำ แรงจูงใจในการสร้างนิสัยนั้นเชื่อถือไม่ได้และต้องพ่ายแพ้ตั้งแต่วันแรก ความสามารถเพื่อชดเชยข้อจำกัดของแรงจูงใจ ความสามารถเป็นสิ่งสำคัญ ในบริบทนี้ ความสามารถหมายถึงความง่ายในการดำเนินการ กล่าวคือ ความพยายามนั้นง่ายมากจนไม่สมจริงที่จะบอกว่าเป็นไปไม่ได้ แอพส่วนใหญ่ตั้งใจใช้สิ่งนี้ Apple Fitness ต้องการให้คุณยืนเป็นเวลาหนึ่งนาทีในหนึ่งชั่วโมงเพื่อให้บรรลุเป้าหมายในการยืนของคุณ Duolingo ต้องการเพียงบทเรียนเดียวเท่านั้น งานเหล่านี้ไม่จำเป็นต้องใช้ความพยายามมากนัก อุปสรรคนั้นต่ำมากแม้แต่ในวันที่เลวร้ายที่สุดคุณก็สามารถทำได้ แต่ความพยายามร่วมกันของสตรีคที่กำลังดำเนินอยู่คือจุดที่ความคิดที่จะแพ้สตรีคนั้นเริ่มต้นขึ้น Promptนี่คือสิ่งที่ทำให้สมการสมบูรณ์ มนุษย์เป็นคนขี้ลืมโดยธรรมชาติ ดังนั้น ความสามารถจะทำให้เราไปถึงจุดนั้นได้ถึง 90% แต่การแจ้งเตือนเตือนให้เราลงมือทำ การออกแบบลายเส้นจะคงอยู่ ดังนั้นผู้ใช้จึงต้องได้รับการเตือนให้ดำเนินการอยู่เสมอ หากต้องการดูว่าข้อความแจ้งมีประสิทธิภาพเพียงใด Duolingo ได้ทำการทดสอบ A/B เพื่อดูว่าป้ายสีแดงเล็กๆ บนไอคอนของแอปช่วยเพิ่มการใช้งานที่สอดคล้องกันหรือไม่ มีผู้ใช้งานรายวันเพิ่มขึ้น 6% แค่ป้ายแดง.. ข้อจำกัดของโมเดล ทั้งหมดที่กล่าวมานี้มีข้อจำกัดสำหรับรุ่น Fogg ซึ่งนักวิจารณ์และการวิจัยสมัยใหม่สังเกตเห็นว่าการออกแบบที่ต้องอาศัยการแจ้งเตือนมากเกินไป เช่น การแจ้งเตือนที่ก้าวร้าว มีความเสี่ยงที่จะสร้างความเหนื่อยล้าทางจิตใจ การแจ้งเตือนและการทำงานล่วงเวลาอย่างต่อเนื่องอาจทำให้ผู้ใช้เลิกใช้งาน ดังนั้นระวังเรื่องนั้นด้วย เอฟเฟกต์ Zeigarnik คุณรู้สึกอย่างไรเมื่อออกจากงานของโครงการไปครึ่งหนึ่งแล้ว? นั่นทำให้หลายคนหงุดหงิดเพราะงานที่ยังทำไม่เสร็จกินพื้นที่ทางจิตมากกว่าสิ่งที่เราทำเสร็จ เมื่อบางสิ่งบางอย่างทำเสร็จแล้วหายไป เรามักจะลืมมันไป เมื่อสิ่งใดถูกปล่อยทิ้งไว้ มันก็มักจะกดดันจิตใจเรา นี่คือเหตุผลว่าทำไมผลิตภัณฑ์ดิจิทัลจึงใช้ตัวบ่งชี้ความคืบหน้าปลอม เช่น แถบกรอกโปรไฟล์ของ Upwork เพื่อให้ผู้ใช้ทราบว่าโปรไฟล์ของพวกเขา "เสร็จสมบูรณ์เพียง 60%" เท่านั้น มันสะกิดผู้ใช้ให้เสร็จสิ้นสิ่งที่พวกเขาเริ่มต้น

ลองดูอีกตัวอย่างหนึ่ง คุณมีห้างานในแอปรายการสิ่งที่ต้องทำ และเมื่อสิ้นสุดวัน คุณจะตรวจสอบเพียงสี่งานเท่านั้นว่าเสร็จสิ้นแล้ว พวกเราหลายคนจะรู้สึกไม่ประสบความสำเร็จเพราะงานหนึ่งที่ยังทำไม่เสร็จ ตรงนั้นคือเอฟเฟกต์ Zeigarnik เอฟเฟกต์ Zeigarnik ได้รับการสาธิตโดยนักจิตวิทยา Bluma Zeigarnik ซึ่งอธิบายว่าเรามักจะให้งานที่ยังไม่เสร็จสิ้นอยู่ในความทรงจำนานกว่างานที่เสร็จแล้ว รูปแบบลายเส้นโดยธรรมชาติจะใช้สิ่งนี้ในการออกแบบ UX สมมติว่าคุณอยู่ในวันที่ 63 ของการเรียนรู้ต่อเนื่อง เมื่อถึงจุดนั้น คุณกำลังอยู่ในรูปแบบธุรกิจที่ดำเนินไปไม่เสร็จ สมองของคุณแทบจะไม่ลืมมันเพราะมันนั่งอยู่ในจิตใจของคุณ เมื่อถึงจุดนี้ สมองของคุณจะกลายเป็นผู้ส่งการแจ้งเตือนถึงคุณ เมื่อคุณรวมพลังทางจิตวิทยาเหล่านี้เข้าด้วยกัน คุณจะเริ่มเข้าใจอย่างแท้จริงว่าทำไมเส้นริ้วจึงไม่ได้เป็นเพียงคุณสมบัติของแอพทั่วไป พวกเขาสามารถปรับเปลี่ยนพฤติกรรมของมนุษย์ได้ แต่ที่ไหนสักแห่งในแนวนี้ — ฉันไม่สามารถพูดได้อย่างแน่ชัดว่าเมื่อใด เพราะมันแตกต่างกันไปสำหรับทุกคน — สิ่งต่าง ๆ มาถึงจุดที่แนวเปลี่ยนจาก “ความสนุก” ไปเป็นสิ่งที่คุณรู้สึกว่าคุณไม่สามารถจะสูญเสียได้ คุณไม่ต้องการให้ความพยายาม 58 วันสูญเปล่าใช่ไหม? นั่นคือสิ่งที่ทำให้ระบบสตรีคมีประสิทธิภาพ หากทำถูกต้อง เส้นริ้วจะช่วยให้ผู้ใช้สร้างนิสัยอันน่าประหลาดใจที่บรรลุเป้าหมายได้ อาจเป็นการอ่านหนังสือทุกวันหรือเข้ายิมเป็นประจำ การกระทำซ้ำๆ เหล่านี้ (บางครั้งก็เล็กน้อย) เกิดขึ้นอย่างต่อเนื่องและปรากฏชัดในชีวิตประจำวันของเรา แต่ทุกเหรียญมีสองด้าน เส้นบางๆ ระหว่างนิสัยและการบังคับ หากคุณได้ติดตามมา คุณก็บอกได้เลยว่ายังมีด้านมืดต่อระบบที่ตามมา การสร้างนิสัยเป็นเรื่องของความสม่ำเสมอโดยมีเป้าหมายซ้ำๆ อย่างไรก็ตาม การบังคับคือความสม่ำเสมอของการบรรลุเป้าหมายที่ไม่จำเป็นอีกต่อไป แต่ถูกยึดไว้ด้วยความกลัวหรือความกดดัน เป็นเส้นบางเฉียบ คุณแปรงฟันทุกเช้าโดยไม่คิดอะไร มันเป็นไปโดยอัตโนมัติและเป็นไปตามสัญชาตญาณ โดยมีเป้าหมายที่ชัดเจนในการมีลมหายใจที่ดี นั่นเป็นแนวที่สร้างนิสัยที่ดี ระบบแนวจริยธรรมทำให้ผู้ใช้มีพื้นที่ในการหายใจ ถ้าคุณไม่แปรงในตอนเช้า ก็สามารถแปรงตอนเที่ยงได้ด้วยเหตุผลบางอย่าง อนุญาตให้มีความไม่สมบูรณ์ได้โดยไม่ต้องกลัวว่าจะสูญเสียความพยายามอันยาวนาน การบังคับใช้เส้นทางตรงกันข้าม โดยที่สตรีคทำให้คุณวิตกกังวล รู้สึกผิด หรือแม้แต่เหนื่อยล้า และบางครั้ง รู้สึกเหมือนคุณไม่ได้ทำอะไรสำเร็จเลย แม้จะทำทุกอย่างจนหมดแรงแล้วก็ตามงาน. คุณไม่ได้กระทำเพราะคุณต้องการ แต่เป็นเพราะคุณรู้สึกหวาดกลัวโดยไม่รู้ตัวที่จะเห็นความคืบหน้าของคุณถูกรีเซ็ตเป็นศูนย์ มีคนอธิบายเรื่องนี้ได้อย่างสมบูรณ์แบบว่า “ฉันรู้สึกได้ว่ากำลังนอกใจ แต่ก็ไม่ได้สนใจ ฉันไม่มีอะไรเลยหากไม่มีสตรีค” นี่แสดงให้เห็นว่าเส้นริ้วที่ค้างอยู่มากสามารถเกิดขึ้นได้กับแต่ละบุคคล ในขอบเขตที่ผู้ใช้เริ่มเชื่อมโยงคุณค่าของตนเองกับตัวชี้วัดที่กำหนดเอง แทนที่จะเป็นเป้าหมายหรือเหตุผลดั้งเดิม พวกเขาเริ่มต้นแนวตั้งแต่แรก กระแสจะกลายเป็นสิ่งที่พวกเขาเป็น ไม่ใช่แค่สิ่งที่พวกเขาทำ ระบบแนวจริยธรรมที่ได้รับการออกแบบมาอย่างดีควรให้ความรู้สึกเหมือนเป็นการให้กำลังใจแก่ผู้ใช้ ไม่ใช่ความกดดันหรือภาระผูกพัน สิ่งนี้เกี่ยวข้องกับความสมดุลของแรงจูงใจจากภายในและภายนอก แรงจูงใจจากภายนอก (รางวัลจากภายนอก การหลีกเลี่ยงการลงโทษ) อาจทำให้ผู้ใช้เริ่มต้นได้ แต่แรงจูงใจจากภายใน (การทำงานเพื่อเป้าหมายส่วนตัว เช่น การเรียนภาษาสเปนเพราะคุณต้องการสื่อสารกับคนที่คุณรักอย่างแท้จริง) นั้นแข็งแกร่งกว่าสำหรับการมีส่วนร่วมในระยะยาว ระบบที่ดีควรมุ่งสู่แรงจูงใจจากภายในด้วยการใช้องค์ประกอบภายนอกอย่างระมัดระวัง เช่น เตือนผู้ใช้ว่าพวกเขามาไกลแค่ไหนแล้ว ไม่ใช่คุกคามพวกเขาด้วยสิ่งที่พวกเขาอาจสูญเสีย อีกครั้งมันเป็นเส้นละเอียด การทดสอบง่ายๆ เมื่อออกแบบระบบริ้วคือการใช้เวลาจริงๆ และคิดว่าผลิตภัณฑ์ของคุณสร้างรายได้จากการขายวิธีแก้ปัญหาความวิตกกังวลที่ผลิตภัณฑ์ของคุณสร้างขึ้นหรือไม่ หากใช่ มีโอกาสสูงที่คุณจะหาประโยชน์จากผู้ใช้ คำถามต่อไปจึงกลายเป็นว่า ถ้าฉันเลือกใช้ streak ฉันจะออกแบบมันในลักษณะที่ช่วยให้ผู้ใช้บรรลุเป้าหมายอย่างแท้จริงได้อย่างไร UX ของการออกแบบระบบ Good Streak ฉันเชื่อว่านี่คือจุดที่โปรเจ็กต์ส่วนใหญ่จับจ้องไปที่ระบบ streak ที่มีประสิทธิภาพหรือทำให้ระบบยุ่งเหยิงไปเลย มาดูหลักการ UX บางประการของการออกแบบแนวที่ดีกันดีกว่า เก็บไว้อย่างง่ายดาย คุณอาจเคยได้ยินเรื่องนี้มาก่อน อาจมาจากหนังสืออย่าง Atomic Habits แต่ก็คุ้มค่าที่จะพูดถึงว่าวิธีที่ง่ายที่สุดวิธีหนึ่งในการสร้างนิสัยก็คือการทำให้การกระทำเล็กๆ น้อยๆ และง่ายดาย สิ่งนี้คล้ายกับปัจจัยด้านความสามารถที่เราพูดถึงจากโมเดลพฤติกรรม Fogg กฎข้อแรกของการออกแบบลายริ้วใดๆ ควรทำให้การกระทำที่จำเป็นน้อยที่สุดเท่าที่จะเป็นไปได้โดยมนุษย์ในขณะที่ยังคงบรรลุความก้าวหน้า หากการกระทำในแต่ละวันต้องใช้กำลังใจในการทำให้สำเร็จ การกระทำนั้นจะไม่เกินห้าวัน ทำไม คุณไม่สามารถมีแรงจูงใจได้ห้าวันติดต่อกัน กรณีตัวอย่าง: หากคุณเรียกใช้แอปการทำสมาธิ คุณไม่จำเป็นต้องให้ผู้ใช้เข้าเซสชันเป็นเวลา 20 นาทีเพื่อรักษาสถิติไว้ ลองสักนาทีเดียว หรืออาจจะแค่สามสิบวินาทีแทนก็ได้ ตามคำกล่าวที่ว่า น้ำหยดเล็กๆ ทำให้เกิดมหาสมุทรอันยิ่งใหญ่) ความพยายามเล็กๆ รวมกันเป็นความสำเร็จที่ยิ่งใหญ่ตามเวลา นั่นควรเป็นเป้าหมาย: ขจัดแรงเสียดทาน โดยเฉพาะอย่างยิ่งในช่วงเวลาที่ยากลำบาก เมื่อผู้ใช้รู้สึกเครียดหรือหนักใจ บอกให้พวกเขารู้ว่าการปรากฏตัวแม้เพียงไม่กี่วินาทีก็ถือเป็นความพยายาม ให้ข้อเสนอแนะภาพที่ชัดเจน มนุษย์มีการมองเห็นโดยธรรมชาติ ส่วนใหญ่แล้ว เราจำเป็นต้องเห็นบางสิ่งบางอย่างจึงจะเชื่อ จำเป็นต้องเห็นภาพสิ่งต่าง ๆ เพื่อทำความเข้าใจให้ดีขึ้นและนำสิ่งต่าง ๆ ไปสู่มุมมอง นี่คือสาเหตุที่รูปแบบลายเส้นมักใช้องค์ประกอบภาพ เช่น กราฟ เครื่องหมายถูก วงแหวนความคืบหน้า และตาราง เพื่อแสดงภาพความพยายาม ดูกราฟการมีส่วนร่วมของ GitHub เป็นการแสดงภาพความสม่ำเสมออย่างง่ายๆ แต่นักพัฒนากลับหายใจมันเข้าไปเหมือนออกซิเจน

สิ่งสำคัญคือต้องไม่ทำให้ระบบ streak ให้ความรู้สึกเป็นนามธรรม มันควรจะรู้สึกเหมือนจริงและได้รับ ตัวอย่างเช่น Duolingo และวงแหวนกิจกรรมฟิตเนสของ Apple ใช้การออกแบบแอนิเมชั่นที่ดูสะอาดตาเมื่อเสร็จสิ้นการแข่งขัน และ GitHub จะแสดงข้อมูลประวัติความสอดคล้องของผู้ใช้ในช่วงเวลาหนึ่ง

ใช้จังหวะเวลาที่ดี ฉันได้กล่าวไว้ก่อนหน้านี้ว่ามนุษย์มักหลงลืมตามธรรมชาติ และการแจ้งเตือนนั้นสามารถช่วยรักษาโมเมนตัมไปข้างหน้าได้ หากไม่มีการแจ้งเตือน ผู้ใช้ใหม่ส่วนใหญ่จะลืมดำเนินการต่อ ชีวิตอาจยุ่งวุ่นวาย แรงจูงใจหายไป และสิ่งต่างๆ เกิดขึ้น แม้แต่ผู้ใช้ที่ใช้งานมานานก็ยังได้รับประโยชน์จากข้อความแจ้ง แม้ว่าโดยส่วนใหญ่แล้ว พวกเขาจะถูกล็อกอยู่ในวงจรนิสัยอยู่แล้ว อย่างไรก็ตาม แม้แต่คนที่มีความมุ่งมั่นมากที่สุดก็อาจพลาดวันโดยไม่ได้ตั้งใจได้ ระบบสตรีคของคุณต้องการการแจ้งเตือนอย่างแน่นอนที่สุด การแจ้งเตือนพร้อมท์ที่ใช้มากที่สุดคือการแจ้งเตือนแบบพุช เวลามีความสำคัญมากเมื่อทำงานกับการแจ้งเตือนแบบพุช ประเภทของแอปก็มีความสำคัญเช่นกัน การส่งการแจ้งเตือนเวลา 9.00 น. โดยบอกว่า “วันนี้คุณไม่ได้ฝึกซ้อม” เป็นเรื่องแปลกสำหรับแอปการเรียนรู้ เพราะหลายคนมีสิ่งที่ต้องทำในวันก่อนที่พวกเขาจะคิดเรียนจบบทเรียนด้วยซ้ำ หากเรากำลังพูดถึงแอปฟิตเนสล่ะก็สมเหตุสมผลและอาจคาดว่าจะได้รับการเตือนตั้งแต่เช้าด้วยซ้ำ การแจ้งเตือนแบบพุชจะแตกต่างกันไปตามหมวดหมู่แอพ ตัวอย่างเช่น แอปฟิตเนสจะได้รับการมีส่วนร่วมมากขึ้นด้วยการแจ้งเตือนในช่วงเช้า (07.00-08.00 น.) ในขณะที่แอปเพิ่มประสิทธิภาพการทำงานอาจทำงานได้ดีกว่าในช่วงเที่ยงวัน สิ่งสำคัญคือการทดสอบ A/B กับจังหวะเวลาของแอปโดยพิจารณาจากพฤติกรรมของผู้ใช้ แทนที่จะคิดว่าสิ่งต่างๆ มีขนาดเดียวสำหรับทุกคน สิ่งที่ใช้ได้ผลกับแอปการทำสมาธิอาจไม่ได้ผลกับเครื่องมือติดตามการเขียนโค้ด วิธีการแจ้งอื่นๆ คือจุดสีแดงบนไอคอนแอปและแม้แต่วิดเจ็ตของแอป การศึกษาแตกต่างกันไป แต่คนทั่วไปจะปลดล็อคอุปกรณ์ระหว่าง 50-150 ครั้งต่อวัน (PDF) หากผู้ใช้เห็นจุดสีแดงบนแอพหรือวิดเจ็ตที่บ่งบอกถึงแนวปัจจุบันทุกครั้งที่ปลดล็อคโทรศัพท์ นั่นจะเป็นการเพิ่มความมุ่งมั่น อย่าหักโหมจนเกินไป ข้อความแจ้งควรทำหน้าที่เป็นเครื่องเตือนใจ ไม่ใช่การจู้จี้จุกจิก เฉลิมฉลองเหตุการณ์สำคัญ ระบบต่อเนื่องควรพยายามเฉลิมฉลองเหตุการณ์สำคัญเพื่อปลุกอารมณ์ โดยเฉพาะอย่างยิ่งสำหรับผู้ใช้ที่เข้าสู่ห้วงลึก เมื่อผู้ใช้เข้าสู่วันที่ 7 วันที่ 30 วันที่ 50 วันที่ 100 วันที่ 365 คุณควรสร้างเรื่องใหญ่ขึ้นมา รับทราบความสำเร็จ — โดยเฉพาะสำหรับผู้ใช้ที่ใช้งานมานาน

ดังที่เราเห็นก่อนหน้านี้ Duolingo คิดสิ่งนี้ได้และใช้กราฟิกแอนิเมชั่นที่เฉลิมฉลองเหตุการณ์สำคัญด้วยลูกปา บางแพลตฟอร์มยังให้รางวัลโบนัสมากมายที่ตรวจสอบความพยายามของผู้ใช้ และสิ่งนี้อาจเป็นประโยชน์ต่อแอป โดยที่ผู้ใช้มีแนวโน้มที่จะแชร์เหตุการณ์สำคัญของตนต่อสาธารณะบนโซเชียลมีเดีย ประโยชน์อีกประการหนึ่งคือความคาดหวังที่มาก่อนจะถึงเหตุการณ์สำคัญ มันไม่ได้เป็นเพียงการรักษาสตรีคให้คงอยู่อย่างไม่มีที่สิ้นสุด ผู้ใช้มีบางสิ่งที่ต้องรอคอย ใช้กลไกเกรซ ชีวิตเป็นสิ่งที่คาดเดาไม่ได้ ผู้คนฟุ้งซ่าน ระบบริ้วที่ดีควรคาดหวังถึงความไม่สมบูรณ์ หนึ่งในภัยคุกคามทางจิตวิทยาที่ใหญ่ที่สุดต่อระบบสตรีคคือการรีเซ็ตฮาร์ดเป็นศูนย์หลังจากพลาดไปเพียงวันเดียว ระบบลำดับ "จริยธรรม" ควรทำให้ผู้ใช้มีความหย่อนยานบ้าง สมมติว่าคุณมีช่วงการเรียนรู้หมากรุก 90 วัน คุณมีความสม่ำเสมอมาเป็นเวลาสามเดือนที่ดี และวันหนึ่งโทรศัพท์ของคุณเสียขณะเดินทาง และเช่นนั้น 90 ก็กลายเป็น 0 ทุกอย่าง ความพยายามทั้งหมดนั้นถูกลบ และความก้าวหน้าก็หายไป ผู้ใช้อาจจะเสียหายอย่างสิ้นเชิง ความคิดที่จะสร้างมันขึ้นมาใหม่ตั้งแต่ต้นนั้นทำให้เสียขวัญมากจนความพยายามนั้นไม่คุ้มค่า ที่เลวร้ายที่สุด ผู้ใช้อาจละทิ้งแอปหลังจากรู้สึกว่าล้มเหลว ลองเพิ่มกลไก "เกรซ" ให้กับระบบสตรีคของคุณ:

Streak Freezeอนุญาตให้ผู้ใช้ตั้งใจพลาดวันโดยไม่มีการลงโทษ เวลาพิเศษ ให้เผื่อเวลาไว้สองสามชั่วโมง (2–3) เลยกำหนดเวลาปกติก่อนที่จะเริ่มการรีเซ็ต โมเดลการสลายตัวแทนที่จะฮาร์ดรีเซ็ต ริ้วรอยจะลดลงเล็กน้อย เช่น 10 วันจะถูกหักออกจากริ้วรอยต่อวันที่พลาดไป

ใช้น้ำเสียงที่ให้กำลังใจ มาเปรียบเทียบสองข้อความที่แสดงต่อผู้ใช้เมื่อมีเส้นแบ่ง:

“คุณสูญเสียการติดต่อกัน 42 วัน เริ่มต้นใหม่” “คุณปรากฏตัวมาเป็นเวลา 42 วันติดต่อกัน นั่นเป็นความก้าวหน้าที่น่าเหลือเชื่อ!อยากลองอีกครั้งไหม?”

ทั้งสองสื่อข้อมูลเดียวกัน แต่ผลกระทบทางอารมณ์แตกต่างกัน ข้อความแรกมักจะทำให้ผู้ใช้รู้สึกขวัญเสียและทำให้พวกเขาเลิกใช้ ข้อความที่สองเป็นการยกย่องความสำเร็จที่เกิดขึ้นแล้วและค่อย ๆ กระตุ้นให้ผู้ใช้ลองอีกครั้ง ความท้าทายในการออกแบบระบบ Streak ก่อนที่เราจะพูดถึงข้อมูลเฉพาะทางเทคนิคของการสร้างระบบ streak คุณควรตระหนักถึงความท้าทายที่คุณอาจเผชิญ สิ่งต่างๆ อาจซับซ้อนได้อย่างที่คุณคาดหวัง การจัดการเขตเวลา มีเหตุผลว่าทำไมเวลาและวันที่ในการจัดการจึงเป็นหนึ่งในแนวคิดที่ยากที่สุดที่นักพัฒนาต้องรับมือ มีการจัดรูปแบบ ความเป็นสากล และอื่นๆ อีกมากมายที่ต้องพิจารณา ให้ฉันถามคุณสิ่งนี้: อะไรนับเป็นวัน? เรารู้ว่าโลกดำเนินไปในโซนเวลาที่แตกต่างกัน และราวกับว่ายังไม่เพียงพอ บางภูมิภาคก็มีเวลาออมแสง (DST) ที่เกิดขึ้นปีละสองครั้ง คุณจะเริ่มจัดการกับเคส Edge เหล่านี้ได้จากที่ไหน? อะไรนับเป็น “จุดเริ่มต้น” ของวันพรุ่งนี้? นักพัฒนาซอฟต์แวร์บางรายพยายามหลีกเลี่ยงปัญหานี้โดยใช้เขตเวลากลางเขตเดียว เช่น UTC สำหรับผู้ใช้บางคน การดำเนินการนี้จะให้ผลลัพธ์ที่ถูกต้อง แต่สำหรับบางคน อาจปิดลงหนึ่งชั่วโมง สองชั่วโมง หรือมากกว่านั้น ความไม่สอดคล้องกันนี้ทำให้ประสบการณ์ผู้ใช้เสียหาย ผู้ใช้ไม่สนใจว่าคุณจะจัดการกับเวลาเบื้องหลังอย่างไร สิ่งที่พวกเขาคาดหวังก็คือหากพวกเขาดำเนินการต่อเนื่องเวลา 23:40 น. ก็ควรลงทะเบียนตามเวลาที่แน่นอนนั้นในบริบทของพวกเขา คุณควรกำหนด "หนึ่งวัน" ตามเขตเวลาท้องถิ่นของผู้ใช้ ไม่ใช่เวลาเซิร์ฟเวอร์ แน่นอน คุณสามารถทำใจสบายๆ ได้กำหนดเส้นทางและรีเซ็ตการต่อเนื่องทั่วโลกสำหรับผู้ใช้ทุกคนในเวลาเที่ยงคืน UTC แต่คุณกำลังสร้างความไม่ยุติธรรมอย่างมาก คนในแคลิฟอร์เนียมีเวลาทำงานพิเศษแปดชั่วโมงเสมอมากกว่าคนที่อาศัยอยู่ในลอนดอน นั่นเป็นข้อบกพร่องด้านการออกแบบที่ไม่ยุติธรรมซึ่งจะลงโทษผู้ใช้บางรายเนื่องจากตำแหน่งที่ตั้งของพวกเขา แล้วถ้าคนๆ นั้นในลอนดอนแค่มาเยี่ยม ทำงานให้เสร็จ แล้วกลับไปสู่เขตเวลาอื่นล่ะ? วิธีแก้ปัญหาที่มีประสิทธิภาพวิธีหนึ่งสำหรับสิ่งเหล่านี้คือการขอให้ผู้ใช้ตั้งค่าเขตเวลาของตนอย่างชัดเจนระหว่างการเริ่มต้นใช้งาน (ควรหลังจากการตรวจสอบสิทธิ์ครั้งแรก) เป็นความคิดที่ดีที่จะรวมหมายเหตุเล็กๆ น้อยๆ ไว้ด้วยว่าการให้ข้อมูลเขตเวลานั้นใช้สำหรับแอปเท่านั้นเพื่อติดตามความคืบหน้าอย่างแม่นยำ แทนที่จะใช้เป็นข้อมูลส่วนบุคคลที่สามารถระบุตัวตนได้ และเป็นความคิดที่ดีอีกประการหนึ่งที่จะทำให้การตั้งค่านั้นเปลี่ยนแปลงได้ ฉันขอแนะนำให้ทุกคนหลีกเลี่ยงการจัดการตรรกะเขตเวลาในแอปโดยตรง ใช้ไลบรารีวันที่ที่พยายามและเป็นจริง เช่น Moment.js หรือ pytz (Python) ฯลฯ ไม่จำเป็นต้องสร้างวงล้อใหม่สำหรับบางสิ่งที่ซับซ้อนเช่นนี้ กรณีวันและขอบที่ไม่ได้รับ ความท้าทายอีกประการที่คุณควรกังวลคือกรณี Edge ที่ไม่สามารถควบคุมได้ เช่น ผู้ใช้นอนหลับเกิน เวลาหยุดทำงานของเซิร์ฟเวอร์ ความล่าช้า เครือข่ายล้มเหลว และอื่นๆ การใช้แนวคิดเรื่องกลไกพระคุณ ดังที่เราได้พูดคุยไปแล้วข้างต้น สามารถช่วยได้ กรอบเวลาผ่อนผันสองชั่วโมงอาจช่วยทั้งผู้ใช้และนักพัฒนา ในแง่ที่ว่าผู้ใช้จะไม่ถูกลงโทษอย่างเข้มงวดสำหรับสถานการณ์ชีวิตที่ไม่สามารถควบคุมได้ สำหรับนักพัฒนา หน้าต่างเกรซจะมีประโยชน์ในช่วงเวลาที่ไม่สามารถควบคุมได้เมื่อเซิร์ฟเวอร์ล่มกลางดึก เหนือสิ่งอื่นใด อย่าไว้วางใจลูกค้า ตรวจสอบบนฝั่งเซิร์ฟเวอร์เสมอ เซิร์ฟเวอร์ควรเป็นแหล่งความจริงแหล่งเดียว การป้องกันการโกง ขอย้ำอีกครั้งว่าฉันไม่สามารถเน้นเรื่องนี้ได้เพียงพอ: ตรวจสอบให้แน่ใจว่าได้ตรวจสอบทุกอย่างในฝั่งเซิร์ฟเวอร์แล้ว ผู้ใช้คือมนุษย์ และมนุษย์อาจโกงหากได้รับโอกาส มันหลีกเลี่ยงไม่ได้ คุณอาจลอง:

การจัดเก็บการดำเนินการทั้งหมดด้วยการประทับเวลา UTC ไคลเอ็นต์สามารถส่งเวลาท้องถิ่นของตนได้ แต่เซิร์ฟเวอร์สามารถแปลงเป็น UTC ได้ทันทีและตรวจสอบเทียบกับเวลาของเซิร์ฟเวอร์ ด้วยวิธีนี้ หากการประทับเวลาของลูกค้าอยู่ไกลอย่างน่าสงสัย ระบบก็สามารถปฏิเสธได้ว่าเป็นข้อผิดพลาด และ UI สามารถตอบสนองตามนั้นได้ การใช้การติดตามตามเหตุการณ์ หรืออีกนัยหนึ่ง ให้จัดเก็บบันทึกของการกระทำแต่ละรายการพร้อมข้อมูลเมตา รวมถึงข้อมูล เช่น ID ของผู้ใช้ ประเภทการกระทำที่ทำ และการประทับเวลาและเขตเวลา สิ่งนี้ช่วยในการตรวจสอบ

การสร้างเครื่องยนต์ระบบ Streak นี่ไม่ใช่บทช่วยสอนเกี่ยวกับโค้ด ดังนั้นฉันจะหลีกเลี่ยงการทิ้งโค้ดจำนวนมากใส่คุณ ฉันจะรักษาสิ่งนี้ไว้ในทางปฏิบัติและอธิบายว่าโดยทั่วไปแล้วสิ่งต่างๆ ใช้งานกลไกระบบ streak อย่างไร ในด้านสถาปัตยกรรม ความลื่นไหล และความน่าเชื่อถือ สถาปัตยกรรมหลัก อย่างที่ผมบอกไปหลายครั้งแล้ว ให้ทำให้เซิร์ฟเวอร์เป็นแหล่งข้อมูลเดียวสำหรับข้อมูลต่อเนื่อง สถาปัตยกรรมสามารถทำงานในลักษณะนี้บนเซิร์ฟเวอร์:

จัดเก็บข้อมูลของผู้ใช้แต่ละคนไว้ในฐานข้อมูล เก็บที่จัดเก็บริ้วปัจจุบัน (ค่าเริ่มต้นเป็น 0) เป็นจำนวนเต็ม จัดเก็บการตั้งค่าเขตเวลา เช่น สตริงเขตเวลาของ IANA (ไม่ว่าจะโดยนัยจากการประทับเวลาท้องถิ่นหรือโดยชัดแจ้งโดยการขอให้ผู้ใช้เลือกเขตเวลาของตน) ตัวอย่างเช่น “อเมริกา/นิวยอร์ก” จัดการตรรกะทั้งหมดเพื่อพิจารณาว่ากระแสต่อเนื่องหรือขาดหาย ด้วยการตรวจสอบเขตเวลาที่สัมพันธ์กับเขตเวลาท้องถิ่นของผู้ใช้

ในขณะเดียวกันทางฝั่งไคลเอ็นต์:

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

กล่าวโดยสรุป สมองอยู่บนเซิร์ฟเวอร์ และไคลเอนต์มีไว้เพื่อการแสดงผลและส่งกิจกรรม สิ่งนี้ช่วยให้คุณประหยัดความล้มเหลวและกรณี Edge ได้มาก อีกทั้งยังทำให้การอัปเดตและการแก้ไขทำได้ง่ายขึ้น กระแสลอจิก เรามาจำลองคำแนะนำว่ากลไกของระบบ streak ที่มีประสิทธิภาพขั้นต่ำจะทำงานอย่างไรเมื่อผู้ใช้ดำเนินการเสร็จสิ้น:

ผู้ใช้ดำเนินการสตรีคที่มีคุณสมบัติครบถ้วน ลูกค้าส่งเหตุการณ์ไปยังเซิร์ฟเวอร์เป็นข้อมูลเมตา นี่อาจเป็น "ผู้ใช้ X เสร็จสิ้นการกระทำ Y ณ เวลาประทับ Z" เซิร์ฟเวอร์ได้รับเหตุการณ์นี้และทำการตรวจสอบขั้นพื้นฐาน นี่คือผู้ใช้จริงใช่ไหม? พวกเขาได้รับการรับรองความถูกต้องหรือไม่? การกระทำนั้นถูกต้องหรือไม่? เขตเวลาสอดคล้องกันหรือไม่? หากผ่าน เซิร์ฟเวอร์จะดึงข้อมูลสตรีคของผู้ใช้จากฐานข้อมูล จากนั้น แปลงการประทับเวลาการดำเนินการที่ได้รับเป็นเขตเวลาท้องถิ่นของผู้ใช้ ให้เซิร์ฟเวอร์เปรียบเทียบวันที่ในปฏิทิน (ไม่ใช่การประทับเวลา) ในเขตเวลาท้องถิ่นของผู้ใช้: หากเป็นวันเดียวกัน การดำเนินการจะซ้ำซ้อนและไม่มีการเปลี่ยนแปลงในริ้ว หากเป็นวันถัดไป เส้นจะขยายและเพิ่มขึ้นทีละ 1 หากมีช่องว่างมากกว่าหนึ่งวัน สตรีคจะขาด อย่างไรก็ตาม นี่คือจุดที่คุณอาจใช้กลไกเกรซได้ หากพลาดกลไกการผ่อนผัน ให้รีเซ็ตแนวเป็น 1

หากคุณเลือกที่จะบันทึกข้อมูลในอดีตสำหรับความสำเร็จตามเป้าหมาย ให้อัปเดตตัวแปร เช่น “สตรีคที่ยาวที่สุด” หรือ “จำนวนวันที่ใช้งานทั้งหมด” เซิร์ฟเวอร์จะอัพเดตฐานข้อมูลและตอบสนองต่อไคลเอนต์ บางสิ่งเช่นนี้:

{ "current_streak": 48, "longest_streak": 50, "total_active_days": 120, "streak_extend": จริง, }

เพื่อเป็นมาตรการเพิ่มเติม เซิร์ฟเวอร์ควรลองอีกครั้งหรือปฏิเสธ และแจ้งให้ไคลเอ็นต์ทราบเมื่อมีสิ่งใดล้มเหลวในระหว่างกระบวนการ อาคารเพื่อความยืดหยุ่น ดังที่ได้กล่าวไว้ก่อนหน้านี้ ผู้ใช้ที่สูญเสียต่อเนื่องเนื่องจากข้อบกพร่องหรือการหยุดทำงานของเซิร์ฟเวอร์ถือเป็น UX ที่แย่มาก และผู้ใช้ก็ไม่คาดหวังว่าจะล้มเหลว ดังนั้นระบบ streak ของคุณควรมีการป้องกันสำหรับสถานการณ์เหล่านั้น หากเซิร์ฟเวอร์หยุดให้บริการเพื่อการบำรุงรักษา (หรือด้วยเหตุผลใดก็ตาม) ให้พิจารณาอนุญาตให้เพิ่มเวลาชั่วคราวเพื่อแก้ไข เพื่อให้สามารถส่งการดำเนินการล่าช้าและยังคงนับอยู่ คุณยังสามารถเลือกที่จะแจ้งเตือนผู้ใช้ โดยเฉพาะอย่างยิ่งหากสถานการณ์สามารถส่งผลกระทบต่อต่อเนื่องได้ หมายเหตุ: สร้างแบ็คดอร์ของผู้ดูแลระบบซึ่งสามารถกู้คืนข้อมูลได้ด้วยตนเอง ข้อบกพร่องเป็นสิ่งที่หลีกเลี่ยงไม่ได้ และผู้ใช้บางคนอาจโทรหาแอปของคุณหรือติดต่อเพื่อสนับสนุนว่าปัญหาของพวกเขาพังด้วยเหตุผลที่พวกเขาไม่สามารถควบคุมได้ คุณควรจะสามารถคืนค่าเส้นริ้วได้ด้วยตนเองหากหลังจากการตรวจสอบแล้ว ผู้ใช้ถูกต้อง บทสรุป สิ่งหนึ่งที่ยังคงชัดเจน: เส้นริ้วนั้นทรงพลังมากเนื่องจากวิธีการทำงานของจิตวิทยามนุษย์ในระดับพื้นฐาน ระบบสตรีคที่ดีที่สุดคือระบบที่ผู้ใช้ไม่ได้คิดอย่างมีสติ มันกลายเป็นกิจวัตรที่เห็นผลทันทีหรือเห็นความก้าวหน้า เช่น การแปรงฟัน ซึ่งกลายมาเป็นนิสัยประจำ และฉันจะบอกว่า: ไม่ใช่ทุกผลิตภัณฑ์จำเป็นต้องมีระบบริ้ว คุณควรบังคับความสม่ำเสมอเพียงเพราะคุณต้องการผู้ใช้งานรายวันหรือไม่? คำตอบอาจเป็น “ไม่” ก็ได้

You May Also Like

Enjoyed This Article?

Get weekly tips on growing your audience and monetizing your content — straight to your inbox.

No spam. Join 138,000+ creators. Unsubscribe anytime.

Create Your Free Bio Page

Join 138,000+ creators on Seemless.

Get Started Free