See the original English version of this article here
เชื่อว่าในชีวิต Programmer ทุกคนต้องเจอ Errors มากมายจากการเขียน Code ตอนที่ยังเป็นมือใหม่คุณอาจใช้เวลานานกว่าจะแก้ Errors และรู้สึกว่ายากลำบาก แต่เมื่อมีประสบการณ์มากขึ้น คุณอาจใช้เวลาไม่ถึง 1 นาทีในการแก้ Errors เพื่อเป็นตัวช่วยให้คุณ วันนี้เรามาดู 5 ขั้นตอน ที่ช่วยให้แก้ไข Errors ได้เร็วยิ่งขึ้น
1. ดูว่าพิมพ์อะไรผิดไปหรือไม่
ดูว่าพิมพ์วงเล็บตกไปไหม หรือ สะกดชื่อตัวแปร, ชื่อ Function ผิดบ้างหรือไม่ คุณสามารถใช้ตัวอย่างอย่าง Syntax Highlighting ได้ ให้พิมพ์ Code ใน Software ที่ช่วยตรวจสอบ Code เพื่อลดโอกาสการพิมพ์ผิด หรือช่วยแก้ไขเรื่องการจัดย่อหน้า หาวงเล็บเปิด-ปิด รวมทั้ง Errors อื่น ๆ มี Code Editor ดี ๆ มากมายให้คุณเลือกใช้ แต่หากคุณกำลังเลือกว่าจะใช้อะไรดี ก็ขอแนะนำให้ลองใช้ VSCode ดู เพราะมีคนใช้งานมากเป็นอันดับต้น ๆ อีกทั้งสามารถใช้มันได้ฟรี ๆ และมี Features ที่มีประโยชน์อีกมากมาย
2. อ่านส่วนบนและส่วนล่างของ Error Message ใน Stack Trace ก่อน
โดยทั่วไป Code ที่อยู่ส่วนกลาง ๆ มักไม่ค่อยช่วยอะไรคุณมากนัก จากนั้นดูที่ Code ของคุณแล้วดูว่า คุณสามารถเข้าใจว่ามีอะไรผิดปกติหรือไม่ หรือมีเบาะแสอะไรบ้างใน Error Message หากคุณไม่สามารถทราบความหมายของ Error Message นั้นได้อย่างรวดเร็ว ในกรณีที่ใช้ Python ให้คุณ Copy และ Paste บรรทัดสุดท้ายของ Message ลงใน Google (สำหรับ ภาษาอื่น ๆ อาจแสดง Error Message ก่อน Stack Trace) ปัญหาหลัก ๆ ของ Coder มือใหม่คือ ไม่สามารถหาว่า Error Message นั้นหมายถึงอะไร จาก Google ได้รวดเร็วมากพอ
3. เลือก Online Resources ที่มีประโยชน์
นี่คือตัวช่วยส่วนหนึ่ง ที่ช่วยให้คุณสามารถหา Resources ที่มีคุณภาพได้รวดเร็วยิ่งขึ้น
ไม่ว่าจะเป็น Stack Overflow, Medium, Reddit, Hacker News, Dev และ Online Communities อื่น ๆ ต่างล้วนมีตัวบ่งบอกอย่าง จำนวน Upvotes หรือ Claps เพื่อแสดงให้เห็นว่า Content ใดที่ได้รับความนิยมหรือใช้เพื่อดูว่าตรงกับสิ่งที่คุณต้องการหรือไม่ ถึงแม้สิ่งเหล่านี้อาจไม่ Perfect มากนัก แต่โดยรวมแล้วมันก็ใช้การได้ดี นอกจากนี้ยังมีพวก Official Docs ของภาษาหรือ Libraries ต่าง ๆ ก็เป็น Resources ที่มีประโยชน์มากเช่นกัน
เมื่อคุณค้นหาใน Google อาจเจอทั้ง Blogs หรือ Websites ที่มีคุณภาพหรือไม่มีคุณภาพก็ได้ แต่หากคุณใช้ Python อยู่ คุณสามารถลองดูที่ Websites เหล่านี้ได้
- Real Python
- Data School
- Dataquest Blog
- DataCamp Blog
- Practical Business Python
- Chris Albon
4. เลี่ยงการใช้ Resources ที่เก่ามากเกินไป
คุณไม่ควรใช้ Resources ที่เก่ามากจนเกินไป แต่ไม่ได้หมายถึง Resource ที่เก่าจะไม่ดี เพียงแต่มันอาจไม่ได้รับการ Update ข้อมูลที่เหมาะกับยุคสมัยเท่านั้นเอง เมื่อคุณค้นหา Solution ของ Error ใน Google คุณควรใช้การ Filter เพื่อ Resources ที่ค่อนข้างใหม่สักหน่อย โดยการระบุช่วงเวลาที่ต้องการใน Time-boxing ดังตัวอย่างด้านล่างนี้
หากคุณกำลังเริ่มต้นใช้ Python คิดว่า Content เกี่ยวกับ Python 2 ตั้งแต่ปี 2009 ไม่น่าจะช่วยคุณได้
สำหรับการค้นหา Resources หากตัวเลือกแรก ๆ ของคุณ ยังไม่ช่วยอะไร หรือยังไม่ตรงกับสิ่งที่คุณต้องการ ก็ให้ลองดู ตัวเลือกที่เก่ากว่าหรือมีคุณภาพด้อยลดหลั่นลงไปก็ได้
5. เรียนรู้ว่า Error Codes หมายความว่าอะไร
นี่คือ List ของ Error Codes ทั่วไปและคำอธิบายสำหรับ Python ที่ยังคงใช้ได้อยู่ถึงตอนนี้ และนี่คือ Flow Chart ที่มีประโยชน์มาก ที่จะช่วยคุณจัดการกับ Error ทั่วไปของ Python
ถ้าคุณใช้ Python Pandas Library เพื่อจัดการกับข้อมูล แน่นอนว่ามันย่อมมี Error ที่เรามักพบโดยทั่วไป ส่วนนี่ก็คือ GitHub Gist ที่ทำด้วย Jupyter Notebook ซึ่งมี Error โดยทั่วไปรวมทั้งวิธีการแก้ไข Error ต่าง ๆ
มันจะดีมาก ถ้า Python และ Pandas จะจัดเตรียม Error Message ไว้ให้ แล้วมีการอธิบายถึงสาเหตุที่เป็นไปได้ของ Error เหล่านั้น พอคิด ๆ ดูแล้ว มันน่าจะเป็น Project ที่ดีและมีประโยชน์มาก ถ้าใครต้องการจะทำ ก็ลองทำดูก็ได้
หวังว่าสิ่งเหล่านี้จะเป็น Guideline เบื้องต้น ซึ่งมีประโยชน์สำหรับ Programmer/Developer โดยเฉพาะคนที่ยังเป็นมือใหม่ ได้ยึดถือเป็นแนวทางเพื่อพัฒนาทักษะในเรื่องการแก้ไข Error ต่าง ๆ ที่เราต้องเจออย่างเลี่ยงไม่ได้
ISM Technology Recruitment Ltd. (#1 Tech Recruiter in Thailand) เราเชี่ยวชาญในธุรกิจ IT Recruitment & IT Outsourcing โดยเฉพาะ เปิดทำการกว่า 30 ปี มีพนักงานทุกสายและทุกระดับทางด้าน IT ที่ได้ร่วมงานกับลูกค้าองค์กรใหญ่ที่มีชื่อเสียงและบริษัทข้ามชาติมากมาย หากคุณเป็นคน IT ที่อยากทำงานท้าทายและร่วมงานกับองค์กรชั้นนำ สามารถฝากประวัติการทำงาน (Resume) ของคุณไว้กับ ISM ได้ที่ https://www.ismtech.net/submit-your-resume แล้วคุณจะพบว่าอนาคตและโอกาสก้าวหน้ากำลังรอคุณอยู่
Source: https://towardsdatascience.com/