เชื่อว่าหลาย ๆ คนน่าจะทราบเกี่ยวกับที่มาของ "บัคคอมพิวเตอร์ (Computer Bug)" และจุดจบอันน่าเศร้าของเจ้าแมลงตัวน้อย ที่หลงบินเข้าไปจบชีวิตบนแผงวงจรคอมพิวเตอร์จนทำให้เครื่องประมวลผลผิดปกติและกลายมาเป็นหนึ่งในศัพท์คอมพิวเตอร์ที่ใช้กันอย่างแพร่หลายในปัจจุบันนี้มาแล้วอย่างแน่นอน แต่นอกเหนือไปจากคำว่า "บัค (Bug)" แล้วอีกคำหนึ่งที่เกิดขึ้นมาในช่วงเวลาไล่เลี่ยกันอย่าง "Debug" เองก็น่าสนใจไม่แพ้กันเลย
ข้อมูลเพิ่มเติม : Computer Bug หรือ บัคคอมพิวเตอร์ คืออะไร ? ทำไมแมลงถึงเป็นตัวร้าย ทำลายระบบคอมพิวเตอร์ ?
ถ้าใครเคยทราบเรื่องราวเกี่ยวกับ Computer Bug มาอยู่ก่อนแล้วก็น่าจะเดาได้ไม่ยากเลยว่า "Debugging" ก็น่าจะหมายถึงการ "ปรับแก้" ระบบที่ติด Bug ให้กลับไปทำงานได้ตามปกติ
ซึ่งเมื่อย้อนกลับไปราวช่วงปี ค.ศ. 1940 (พ.ศ. 2483) ที่มีการค้นพบแมลงเจ้าปัญหาบนแผงวงจรคอมพิวเตอร์ Grace Hopper ที่เป็นผู้ทำการเก็บกู้ซากของแมลงออกไปนั้นได้เรียกขั้นตอนการทำงานของเขาว่าเป็นการ "Debugging" จึงทำให้มันกลายมาเป็นศัพท์ทางคอมพิวเตอร์ที่สื่อถึงการ "แก้ไขข้อผิดพลาดที่เกิดขึ้นในระบบ" นับแต่นั้นมา
ส่วนสาเหตุที่เลือกใช้คำว่า "Debug (ดีบัค)" แทนคำว่า "Bug Fix (แก้บัค)" ก็เป็นเพราะคำว่า "Bug (บัค)" ในที่นี้ทำหน้าที่เป็น "คำกริยา" ที่เป็นศัพท์เฉพาะในวงการคอมพิวเตอร์ ไม่ได้เป็น "คำนาม" ที่แปลว่า "แมลง" แต่อย่างใด (แม้ว่าที่มาของคำว่า Bug จะมาจากแมลงจริง ๆ ก็เถอะ)
และเมื่อเติมคำว่า "De" เข้าไปด้านหน้าคำ ก็จะทำให้ความหมายของคำนั้น ๆ "กลับขั้ว" ไปจากเดิม เช่น คำว่า "Defrost" ที่หมายถึงการละลายน้ำแข็ง หรือ "Degenerate" ที่หมายถึงความเสื่อมโทรม ดังนั้นเมื่อเติมคำว่า "De" ไปด้านหน้า "Bug" ก็ทำให้มันสื่อถึง "การแก้ไขข้อผิดพลาดภายในระบบ" นั่นเอง (จริง ๆ แล้วในภายหลังคำว่า "Bug" ก็กลายเป็นศัพท์แสลงที่สื่อถึงความผิดพลาดและมีคนใช้คำว่า Bug Fix อยู่บ้างประปราย แต่มันก็ไม่ได้รับความนิยมเท่าคำว่า Debug อยู่ดี)
ภาพจาก : https://www.edureka.co/blog/what-is-debugging/
การแก้ระบบซอฟต์แวร์และเว็บไซต์ต่าง ๆ ให้กลับมาทำงานได้อย่างราบรื่น โดย Programmer หรือ Developer จะเป็นผู้ดำเนินการแก้ไขชุดคำสั่งที่เป็นผลให้ระบบทำงานผิดปกติ แต่การค้นหาแมลงหรือการ Identify Bug ในระบบนั้นอาจมาจากการทดสอบระบบของ ผู้ทดสอบซอฟต์แวร์ (Software Tester) หรือเสียงเรียกร้องของผู้ใช้งานทั่วไปที่พบปัญหาขณะใช้งานก็ได้
ยกตัวอย่างเช่น เมื่อผู้ใช้งาน กด "ปุ่ม Ctrl + Z" แล้วข้อความใน Box หายไปทั้งหมด แทนที่จะกลับค่าแค่ครั้งเดียว (ตัดเฉพาะข้อความที่พิมพ์ล่าสุด) Developer ก็จะต้องทำการค้นหา โค้ดคำสั่งที่ทำให้การทำงานของระบบผิดปกติไปและดำเนินการปรับแก้ให้กลับมาปกติอีกครั้งหนึ่ง
ภาพจาก : https://code.visualstudio.com/docs/editor/debugging
ในขณะที่ Software Debugging เป็นการค้นหาและแก้ไขชุดคำสั่ง โค้ดที่ส่งผลให้ระบบทำงานผิดปกติ Hardware Debugging ก็เป็นการระบุและดำเนินการแก้ไขข้อผิดพลาดที่เกิดจากการ "เชื่อมต่อ" กันของอุปกรณ์ฮาร์ดแวร์ผ่าน JTAG (Joint Test Action Group) เช่น ปัญหาการเสียบสาย HDMI แล้วจอไม่แสดงผล, Bridge เชื่อมต่อภายในแผงวงจรทำงานผิดปกติ เป็นต้น
สำหรับคำว่า "Debugger" นั้นมีอยู่ด้วยกัน 2 ความหมาย ได้แก่ บุคคลที่ทำหน้าที่แก้ไข Bug ภายในระบบ และอุปกรณ์ที่ใช้ในการ Debugging (Debugger Tools) ที่ช่วยทุ่นแรงของ Developer ในการระบุปัญหาและดำเนินการแก้ไขข้อผิดพลาดในระบบ (Bug) ที่พบได้บ่อย ๆ ช่วยประหยัดเวลาการทำงานของผู้พัฒนา (Developer) ในการนั่งไล่อ่านโค้ดทีละบรรทัดเพื่อปรับแก้
นอกจากนี้แล้ว Debugger ก็ยังช่วยให้ผู้ใช้ปลายทาง สามารถแก้ไขปัญหายิบย่อยอย่างการแสดงผลลิงก์ผิดปกติด้วยตนเองได้ง่าย ๆ ตัวอย่างเช่น เมื่อแชร์ลิงก์แล้วพบว่าภาพปก (Preview) ของลิงก์มีการแสดงผลผิดไปจากที่ควรจะเป็น หรือไม่ปรากฎภาพตัวอย่าง ก็สามารถกด Debug ด้วยตนเองได้ง่าย ๆ
เครื่องมือช่วยระบุและแก้ไข Bug ที่เกิดจากการแชร์ลิงก์ในระบบของ Facebook โดยเมื่อพบลิงก์ผิดปกติก็สามารถนำเอา URL ดังกล่าวไปใส่ใน Sharing Debugger แล้วกด "ปุ่ม Debug" ได้เลย
ภาพจาก : https://swimburger.net/blog/web/verify-what-your-webpage-looks-like-in-google-facebook-twitter-linkedin-and-more
เว็บไซต์ Facebook Sharing Debugger ของ Facebook
ตัวช่วยในการแก้ Bug ของ Preview Card (รูปภาพตัวอย่างของเว็บไซต์) บน Twitter โดยเราสามารถวาง URL ที่มีการแสดงผลผิดปกติจากนั้นเลือก "ปุ่ม Preview Card" เพื่อให้ระบบดำเนินการแก้ไข Bug ได้
ภาพจาก : https://swimburger.net/blog/web/verify-what-your-webpage-looks-like-in-google-facebook-twitter-linkedin-and-more
เว็บไซต์ Twitter Card Validator ของ Twitter
สำหรับโพสต์บน LinkedIn เองก็มีตัวช่วยอย่าง Post Inspector ที่เมื่อแนบ URL ของลิงก์เจ้าปัญหาและกดไปที่ "ปุ่ม Inspect" ให้ระบบดำเนินการตรวจสอบและจัดการแก้ไข Bug ของลิงก์นั้น ๆ
ภาพจาก : https://swimburger.net/blog/web/verify-what-your-webpage-looks-like-in-google-facebook-twitter-linkedin-and-more
เว็บไซต์ Post Inspector ของ Linkedin
|
ตัวเม่นผู้รักในการนอน หลงใหลในการกิน และมีความใฝ่ฝันจะเป็นนักดูคอนเสิร์ตแต่เหมือนศิลปินที่ชื่นชอบจะไม่รับรู้ว่าโลกนี้มียังประเทศไทยอยู่.. |