ความเจ๋งของ Spreadsheet (ที่ทุก ๆ คนมักเรียกติดปากกันว่า Excel เพราะคุ้นเคยกับโปรแกรม Spreadsheet บนคอมพิวเตอร์) คือความง่ายในการใช้งาน เราสามารถเห็นข้อมูลที่บรรจุอยู่ในช่อง ๆ เป็นระเบียบที่เรียกว่า Cell ทำให้สะดวกต่อการคำนวณ และหากปรับรูปแบบให้ดูดีขึ้นอีกนิดหน่อย ก็สามารถสร้างเป็นรายงานครบจบได้ในที่เดียว ซึ่งความสะดวกนี้ทำให้เกิดการใช้งานกันอย่างแพร่หลาย
แต่เพราะความง่าย และความสะดวกในการใช้งาน Spreadsheet นี่ล่ะ ที่ทำให้การจัดการข้อมูลจำนวนมหาศาลบน Spreadsheet นั้นผิดพลาดได้ง่าย จนได้มีคนรวบรวมกรณีศึกษาความผิดพลาดจากการใช้ Spreadsheet ที่เหล่าคนทำงานสาย Data อย่างเรา ๆ เรียนรู้จากความผิดพลาดนี้ได้
เรื่องเล่าความผิดพลาดของการใช้งาน Excel และ Spreadsheet
กรณีศึกษาที่จะเล่าต่อไปนี้ เรารวบรวมมาจาก ฟอรั่มของเหล่าเนิร์ดผู้สนใจศึกษาข้อผิดพลาดของสเปรดชีตแห่งยุโรป (European Spreadsheet Risks Interest Group) ซึ่งมีข้อสรุปอย่างหนึ่งที่น่าสนใจมากคือ
กว่า 90% ของ Spreadsheet ทั้งหมดบนโลกนี้มักจะมี ข้อผิดพลาด อย่างใดอย่างหนึ่ง และ 24% ของ Spreadsheet ทั้งหมดบนโลกนี้มีการใช้สูตรคำนวนผิดพลาด
หนังสือ Humble Pi (Page No. 100)
แล้วความผิดพลาดต่าง ๆ เกิดขึ้นแบบไหนบ้าง ?
สายการบินทำความลับรั่วไหล เพราะใช้วิธีการซ่อนคอลั่มน์
ผลกระทบ: ข้อมูลรั่วไหล
ความเสียหาย: ไม่มีการประเมิน
บริษัทโบอิ้ง ซึ่งเป็นสายการบินระดับโลกได้ทำข้อมูลพนักงานรั่วไหลกว่า 36,000 คน ความผิดพลาดนี้เกิดจากการที่มีคู่สมรสของพนักงานขอข้อมูลเกี่ยวกับตัวพนักงานคนนั้น ซึ่งทางบริษัทก็ได้ส่งข้อมูลพนักงานคนนั้นออกไปตามปกติ แต่ลืมตรวจสอบว่าในชีทมีการซ่อนคอลัมน์ (hide column) ไว้ ซึ่งการซ่อนไว้ไม่ได้แปลว่าลบออก ทำให้เมื่อคู่สมรสดาวน์โหลดไฟล์ออกมา จะสามารถเลิกซ่อนคอลัมน์ และเห็นข้อมูลทุกอย่างที่ซ่อนไว้ได้ ไว้ ซึ่งคอลัมน์ที่ซ่อนนั้นเป็นข้อมูลอ่อนไหว (Personal Sensitive Data) อย่างเช่นเลขที่ประกันสังคม
ทำให้จากความตั้งใจเดิมที่จะส่งข้อมูลพื้นฐานไปยังคู่สมรสของพวกเขา แต่กลายเป็นว่าดันส่งข้อมูลส่วนตัวของพนักงานทุกคนออกไปด้วย (คาดว่าเลขที่ประกันสังคมในที่นี้น่าจะสามารถเชื่อมโยงถึงข้อมูลเงินเดือน การจ่ายภาษี การเคลมประกันได้)
แหล่งข้อมูลต้นทาง: https://www.theregister.co.uk
การตีความทางวิทยาศาสตร์แบบผิด ๆ จากการที่ชื่อไวรัสนั้นเหมือนกับวันที่มากเกินไป
ผลกระทบ: การตีความข้อมูลทางวิทยาศาสตร์อย่างผิดๆ
ความเสียหาย: ไม่มีการประเมิน
เมื่อลองเปิดโปรแกรม Excel ขึ้นมาแล้วพิมพ์ข้อความ “MARCH5” ลงไป ถ้าความตั้งใจของเราคือการพิมพ์สิ่งนี้เพื่อให้โปรแกรมบันทึกว่าวันที่ 5 เดือนมีนาคมก็เป็นสิ่งที่ไม่ผิดอะไร
แต่บังเอิญว่าในทางวิทยาศาสตร์มีการตั้งชื่อเอนไซม์ชื่อว่า E3 ubiquitin-protein ligase MARCH5 หรือเรียกสั้น ๆ ว่า MARCH5 ขึ้นมา ทีนี้ถ้าเราเอาชื่อเล่นของเอนไซม์นี้พิมพ์ใน Excel สิ่งที่เกิดคือโปรแกรมจะบันทึกให้เป็น Mar-05 พร้อมกับเข้ารหัสเป็น Data Type แบบ Date ว่า 01/03/2022 ทันที
ปัญหาของกรณีนี้เกิดขึ้นเมื่อนักวิทยาศาสตร์บันทึกชื่อเล่นคือ MARCH5 ของเอนไซม์ตัวนี้แทนชื่อเต็มที่ยาวมาก โปรแกรมจะมองเห็นเป็นข้อมูลประเภทวันที่ (Date type) ทันทีทำให้ชื่อเอมไซม์นี้หายไปเมื่อทำการคำนวนบางอย่าง ซึ่งนักวิจัยจีโนมกลุ่มหนึ่งคิดขึ้นได้ว่า อาจจะมีข้อผิดพลาดนี้เกิดขึ้นในวารสารวิชาการอื่น ที่อ้างอิงถึงเอนไซม์ตัวนี้ด้วย ทางนักวิชาการเลยลองสุ่มวารสารงานวิจัยที่เชื่อมต่อกับฐานข้อมูลในหัวข้อเกี่ยวกับจีโนมตั้งแต่ปี 2005-2015 พบว่ามีไฟล์เอ็กเซล 987 ไฟล์ที่แปลงชื่อยีนผิดคิดเป็น 19.6% ของไฟล์ทั้งหมด
แหล่งข้อมูลต้นทาง: http://genomebiology.biomedcentral.com/articles/10.1186/s13059-016-1044-7
สำนักงานบริหารการคลังสูญเงินในกองทุนสวัสดิการสังคมเพราะลืมตั้งค่าสกุลเงินใน Excel
ผลกระทบ: การสูญเสียทางการเงิน
ความเสียหาย: สูญเสียเงินประมาณ €750k หรือประมาณ 27 ล้านบาท
สำนักงานบริหารการคลังแห่งชาติของประเทศไอร์แลนด์ได้เข้าซื้อกองทุนเป็นเงินดอลลาร์แต่เมื่อบันทึกข้อมูลลงใน Excel กลับไม่ได้ตั้งค่าสกุลเงิน (Currency) ให้ถูกต้อง ทำให้ชีทนั้นบันทึกข้อมูลเป็นสกุลเงินยูโร (ค่าเริ่มต้นใน Excel)
และเพราะการลืมเปลี่ยนสกุลเงินนี่ล่ะ ที่ทำให้พนักงานเข้าใจผิด และตัดสินใจเรื่องการซื้อขายผิดพลาดทำให้ขาดทุนเป็นเงิน €750k
แหล่งข้อมูลต้นทาง: https://www.rte.ie/news/business/2019/1126/1095303-human-error-cost-ntma-750-000-on-an-investment/
ลืมใส่ตัวเลขใน Excel ทำให้สูญเงินไปกว่า $400,000
ผลกระทบ: เสียผลประโยชน์
ความเสียหาย: $400,000
จะเป็นอย่างไรถ้าเรารู้ว่ารัฐบาลตั้งราคาขายพันธบัตรรัฐบาลต่ำกว่าต้นทุน ?
เทศบาลเมือง West Baraboo ประเทศสหรัฐอเมริกาเคยออกพันธบัตรอายุ 10 ปี แล้วได้รู้ความจริงว่าพวกเขาจ่ายปันผลมากเกินไปเป็นจำนวนเงิน $40,000 มาตลอด 10 ปี สาเหตุก็เพราะลืมใส่ข้อมูลในเซลล์นึง ซึ่งเซลล์นั้นควรนำมาบวกรวมกับข้อมูลที่คำนวณแล้วก่อนหน้า ถึงจะเป็นต้นทุนที่แท้จริงของพันธบัตร การลืมแบบนี้ทำให้ผลรวมตัวเลขของต้นทุนพันธบัตรนั้นน้อยกว่าที่ควรจะเป็น (ซึ่งถูกนำมาใช้ในการตั้งราคาธนบัตร) ผลที่เกิดขึ้นคือเทศบาลนี้เสียผลประโยชน์เพราะขายพันธบัตรถูกเกินไป
แหล่งข้อมูลต้นทาง: https://www.wiscnews.com/community/baraboonewsrepublic/news/local/article_7672b6c6-22d5-11e1-8398-001871e3ce6c.html
เหตุเกิดเพราะ Copy & Paste ในการใช้งาน Excel Spreadsheet
ผลกระทบ: ข้อมูลผิด
ความเสียหาย: ความเข้าใจผิดในข้อมูลสาธารณะ
ธนาคารกลางสหรัฐอเมริกา (Federal Reserve) ได้เปิดเผยข้อมูลสินเชื่อบริโภค (Consumer Credit G.19) แต่ไฉนตัวเลขไตรมาสสุดท้ายของปี 2010 เหมือนกันทุกเดือนเป๊ะ ๆ ล่ะ ทำให้คนหลายคนสงสัยว่าเกิดอะไรขึ้นกับพฤติกรรมการบริโภคของผู้คน ?
เรื่องนี้จริง ๆ แล้วไม่ใช่ความบังเอิญหรือพฤติกรรมบริโภคไม่เปลี่ยนแปลงหรอกแต่เพราะความผิดพลาดจากการ Copy & Paste ข้อมูลต่างหาก ซึ่งในเคสนี้คาดว่าผู้ทำข้อมูลต้องการใช้การจัดรูปแบบเอกสารให้ชื่อ คอลัมน์ต่าง ๆ เหมือนกันเพื่อความเรียบร้อยจึงคัดลอกไฟล์เดิมหลาย ๆ อัน แต่ลืมเปลี่ยนข้อมูลให้ถูกต้องทำให้ข้อมูลหน้าตาเหมือน ๆ กันหมด
แหล่งข้อมูลต้นทาง: http://www.zerohedge.com/article/blatant-data-error-federal-reserve
เพราะเสี่ยงแบบนี้… ใช้ Spreadsheet กับการนับคะแนนการเลือกตั้ง
ผลกระทบ: ความผิดพลาดแบบไม่ได้ตั้งใจหรือทุจริต ?
ความเสียหาย: นับคะแนนเลือกตั้งผิด
ในการเลือกตั้งมาเลเซียปี 2017 ได้เกิดปรากฏการณ์คะแนนผู้สมัครหลาย ๆ คนเท่ากันแบบมีแพทเทิร์นคือ คะแนนผู้สมัครหมายเลข 31 ถึง 38 ดันเท่ากับ หมายเลข 61-68 ซึ่งเคสนี้ก็ไม่น่าจะใช่ความผิดพลาดของโปรแกรมแต่ด้วยความเขินที่ถูกจับได้ กกต. มาเลเซียเลยโทษว่าเกิดความผิดของ Excel ซะเลย แม้กรณีสุดท้ายที่ยกมาเล่าจะไม่ใช่ความผิดพลาดของการใช้งาน Excel สักทีเดียวแต่เป็นเพราะการฉวยโอกาสจากการใช้คนบันทึกข้อมูลในชีทตรง ๆ หรือที่เรียกว่า Manual data entry
แหล่งข้อมูลต้นทาง: ลิ้งถูกนำออกไปแล้ว
เราจะหลีกเลี่ยงความผิดพลาดจากการใช้งาน Excel หรือ Spreadsheet ได้อย่างไร ?
การเขียนสูตรผิด ทำให้โปรแกรมคำนวณผิดพลาด
เรื่องเล่าของการใช้ Spreadsheet หรือ Excel ที่ผิดพลาด เมื่อตรวจสอบแล้วมักพบว่าเกิดจากความผิดพลาดในการคำนวณ แม้ตัวโปรแกรมจะมีตัวช่วยในการตรวจสอบการใช้ตัวแปร การใช้สัญลักษณ์ที่ผิด แต่โปรแกรมไม่สามารถช่วยตรวจสอบความสมเหตุสมผลของสูตรคำนวณได้ ฉะนั้นอย่าลืมตรวจสอบสูตรที่ใช้ในโปรแกรมบ่อย
การใช้คนกรอกข้อมูลตรง ๆ (Manual Data Entry)
การใช้โปรแกรมแบบนี้เพื่อบันทึกข้อมูลแบบใช้คนกรอกข้อมูลโดยตรง (Manual Data Entry) ทำให้เกิดความผิดพลาดได้หลายแบบทั้งการกรอกข้อมูลผิด ทั้งโปรแกรมตั้งค่าการอ่านข้อมูลอย่างหนึ่งไว้แต่ข้อมูลของเรามีชื่อที่กำกวมทำให้แปลงข้อมูลเป็นอีกแบบ รวมถึงลืมอัพเดตตัวแปรคงที่ต่าง ๆ อย่างการทำ Hard Coding ทำให้สูตรคำนวณไม่อัปเดต สิ่งเหล่านี้ทำให้เกิดข้อผิดพลาดได้ทั้งสิ้น ถึงอย่างไรโปรแกรม Excel Spreadsheet ก็มีประโยชน์มาก เราควรระมัดระวังความผิดพลาดจากการคำนวณและลองใช้แอปพลิเคชันเพื่อช่วยเก็บข้อมูลแทนใช้คนการกรอกจะลดความผิดพลาดได้
แหล่งข้อมูลอ้างอิง
ภาพหน้าปกจาก Image by yanalya on Freepik
กลุ่มผู้สนใจศึกษาข้อผิดพลาดของสเปรดชีตแห่งยุโรป (European Spreadsheet Risks Interest Group)
อยากมาทำงานสาย Data ใช่มั้ย?
เรามี Workshop Data Interview ที่จะช่วยคุณเตรียมพร้อมสำหรับการสัมภาษณ์งาน ผ่านการทำ Case Interview