Image may be NSFW.
Clik here to view.
Clik here to view.

จากผลรายงานจาก GitHub :: The 2020 State of the OCTO-VERSE นั้น
โดยแบ่งออกเป็น 3 เรื่องใหญ่ ๆ คือ
- Finding balance between work and play == Productivity
- Empowering healthy communities == Community
- Securing the world's software
มีสิ่งที่น่าสนใจดังต่อไปนี้
เรื่องแรกที่ได้ยินกันเยอะ ๆ คือ Top ของ programming language
ซึ่ง Python ขึ้นมาอยู่ในอันดับที่สอง โดยที่แซง Java ขึ้นมา
ส่วนอันดับ 1 คือ JavaScript
แต่อีกภาษาที่แรงมาก ๆ คือ TypeScript
ส่วนที่ตกลงมาก็คือ Java, PHP, C++, Shell
และที่ตกลงมามาก ๆ คือ Ruby นั่นเอง
Clik here to view.

เมื่อไปดูในรายละเอียดจะพบว่า
ใน GitHub นั้นจะมี repository ที่พัฒนาด้วย
ภาษา JavaScript และ Python จำนวนมาก
ที่สำคัญ community ก็ active ด้วย
ในปีที่ผ่านมา python package ที่มีจำนวน contributor เยอะ ๆ เป็นดังนี้
สังเกตได้ว่า เป็น package เกี่ยวกับ Data Science เยอะเลย
Clik here to view.

การทำงานเป็นแบบ Remote เยอะขึ้นมาก
ยิ่งในช่วง Lockdown ยิ่งเยอะไปอีก
การหาสมดุลระหว่างการทำงานที่บ้าน + remote + การใช้ชีวิต ให้ดีขึ้น
Clik here to view.

สิ่งที่เห็นเพิ่มเติมคือ คนใช้งานมีความหลากหลายขึ้นมาก
ยิ่งในสายการศึกษา การเรียนการสอน ก็เข้ามาใช้งานมากยิ่งขึ้น
รวมทั้ง repository ที่เกี่ยวกับ COVID-19 ด้วยเช่นกัน ก็เยอะมาก ๆ
Clik here to view.

เรื่องของความปลอดภัยของ software ก็สำคัญเช่นกัน
โดยมักจะมาพร้อมกับขั้นตอนการทำงานแบบอัตโนมัติ
เพื่อให้ระบุปัญหาได้อย่างรวดเร็ว
ซึ่งใน gitHub ก็มี bot (Dependabot)
ในการตรวจสอบ dependency ในแต่ละ repository ใช้งาน
ซึ่งพบมาก ๆ ดังนี้
- JavaScript
- Ruby
- .NET
- PHP
- Java
และส่วนมากที่พบปัญหานั้น ๆ มาจากความผิดพลาดของทีมพัฒนาเยอะมาก
ทาง GitHub ทำการตรวจสอบจากข้อมูลของ 6 ภาษา
เริ่มด้วยการดูจำนวน dependency จาก lock file
Clik here to view.

จากข้อมูลตัวอย่าง จะพบปัญหาจาก package ของภาษาต่าง ๆ ดังนี้
โดยที่ npm และ maven นำโด่งมาเลย
ส่วน composer ของ PHP และ PyPI ของ python ตามมา
Clik here to view.

ลงไปในรายละเอียดให้เห็นถึงระดับความรุนแรงของปัญหา
พบว่า npm จะนำโ่งในเรื่องของ critical และ hign
Clik here to view.

ถ้านับจากการ alert ของ Dependabot แล้ว
พบว่า Ruby เยอะสุด แต่ JavaScript ก็ตามมาติด ๆ
ทั้งสองก็อยู่สูงกว่าค่าเฉลี่ย
Clik here to view.

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