ฉลาดเกมส์โกง โง่กว่า โปรแกรมเมอร์ จริงหรือ?

โพสต์**สปอยล์ ฉลาดเกมส์โกง อย่าเลื่อนลงไปอ่านนะถ้าจะไปดู

ว่าด้วยเรื่องการ packbit ในโพสต์ดัง https://pantip.com/topic/36427369 ฉลาดกว่า จริงอะ???

เรื่องการเลือก solution สำหรับปัญหาอะไรสักอย่างอย่าง เป็นเรื่องที่ผมเองถกเถียงกับโปรแกรมเมอร์คนอื่นเป็นประจำ

เวลาต้องการจะแก้ปัญหา โปรแกรมเมอร์มักจะวิ่งไปที่เขียน app หรือ tool ก่อนเสมอ ส่วนนีงเพราะโปรแกรมเมอร์ถูกปลูกฝังให้ขี้เกียจ และอีกส่วนเพราะเป็นสิ่งที่โปรแกรมเมอร์ทําเป็นนิสัยทุกวัน ก็ไม่แปลกที่จะมีโปรแกรมเมอร์คิดว่า “มันบ้า” ที่จะจำเอา

แต่ในทางปฏิบัติ นี่เป็นเหตุที่โปรแกรมเมอร์ส่วนใหญ่ออกแบบโปรแกรมมาแล้วใช้ยาก เพราะสิ่งที่เขาถนัดมักออกมาจาก textbook ตรงๆดิบๆ ปราศจากการขัดเกลาให้ง่ายและเหมาะต่อการใช้จริง

การแก้ปัญหาให้ผู้ใช้ในยุค mobile computing ที่ผู้ใช้ multitask ในชีวิตประจําวันไปด้วยตลอดนั้น พบว่า best practice คือ เราควรใช้ solution ที่ไม่มี step การใช้เลย (หรือมีน้อยที่สุด) เพราะแต่ละ step คือโอกาสที่ user จะพลาดซึ่งทําลาย solution เราในที่สุด

นี่ทําให้ที่คือเหตุที่ทําไม Apple พยายามสร้าง Siri, Google ทํา Deep Mind, Facebook ทํา Caffe เพื่อให้มาประหยัดจํานวน step ของ solution ของงานแอพมือถือต่างๆ ผู้ใช้จะได้สามารถ เดินถนน สนทนา ซื้อของ หรืออะไรไปด้วยได้ โดยไม่ต้องจดจ่อกับ step เพื่อไม่ให้พลาดการบรรลุแต่ละ solution ใน mobile computerให้สําเร็จ

ซึ่งในสถานการณ์ของ ลิน ลินต้อง multitask ด้วย task ที่ยากมากกว่าการ multitask ในชีวิตประจําวันหลายเท่า (ทําสอบทั้งของตัวเองและ แบงค์ และจําคําตอบใน 5 นาทีสุดท้าย) และกดดันทางจิตใจกว่า เมื่อแบงค์ถูกจับ แถมเงินล้านและขบวนการที่ไทยอาจใกล้ล่ม แถมต้องคอยวิ่งเข้าออกห้องนํ้า แกล้งอ้วก และต้องแอบพิมพ์คําตอบจากความจํา ขณะหนีจากสนามสอบ ขึ้นลง subway ใน Sydney

การ packbit ในตัวอย่างในกระทู้ Pantip อาจจะ ทําให้ความยาวข้อมูลที่ท่องลดลงครึ่งนึง แต่ก็ยังยาวที่จะจํา ซํ้าร้าย step การ pack ยุ่งยากและใช้เวลาโดยใช่เหตุเมื่อเทียบกับวิธีที่ ลิน กลับมาใช้ในวินาทีสุดท้ายหลังสงบใจได้ นั่นคือการจําเป็นตัวโน๊ต ที่เป็นการจําแบบ mnemonic ที่ง่ายกว่าการจําแบบ brute force มากในทางจิตวิทยา

บทปูมาแต่แรกว่า ลิน เล่นเปียโนคลาสสิค ที่ปกติแต่ละเพลงมีโน้ตจํานวนเป็นหน้าๆ การเปลี่ยนคําตอบ A B C D ให้เป็นเสียงตัวโน๊ต แล้วจําทํานอง quadratonic สั้นๆ จึงเป็น solution ที่ธรรมชาติกว่ามากสําหรับลิน โดยเฉพาะเมื่อมีสถานการณ์กดดันทางจิตใจ ซึ่งใครก็ตามที่เคยเล่นดนตรีบนเวที หรือ สอบเกรดเปียโน คงจะรู้เป็นอย่างดี

ดังนั้น ในฐานะ programmer คนนึง ผมก็ก็แค่อยากจะบอกว่า การ packbit นั้นได้ผลละนะ แต่ เป็น solution ซื่อๆ ที่ไม่ practical สำหรับ user เลย โดยเฉพาะ user ที่ชื่อ ลิน และ แบงค์