Quantcast
Channel: cc :: somkiat
Viewing all articles
Browse latest Browse all 1997

สรุปสิ่งที่น่าสนใจจากงาน Dev Tools @Scale London 2017

$
0
0

อ่านบทความสรุปสิ่งที่น่าสนใจจากงาน Dev Tools @Scale 2017 ที่ London จากบทความเรื่อง Dev Tools @Scale Recap เป็นงานที่มี speaker จากบริษัทใหญ่ ๆ ทั้งนั้น มาพูดเกี่ยวกับเครื่องมือในการพัฒนาสำหรับระบบงานขนาดใหญ่ ไม่ว่าจะเป็น Facebook, Amazon, ARM, GitHub, Google, Microsoft และ Spotify เริ่มกันตั้งแต่การจัดการ source code, code quality, การ build, การทดสอบ ตลอกจนการ deploy เลยนำมาแบ่งปันกันหน่อย ซึ่งน่าจะมีประโยชน์สำหรับการพัฒนา software บ้าง

เริ่มด้วยเรื่องระบบ Resource Management ของ Facebook

โดยระบบงานชื่อว่า One World ซึ่งระบบนี้สามารถทำการทดสอบแบบ End-to-End ใน device ต่าง ๆได้หมด ทั้ง Android emulator, Android device, iOS Simulator ตลอดจน web browser

เรื่องที่สองคือ Facebook Infer คือ Static Analysis Tool

เป็นเครื่องมือที่ช่วยปรับปรุงคุณภาพของ source code ซึ่งเป็นเครื่องมือ opensource พัฒนาโดย Facebook โดยใช้กับระบบที่พัฒนาด้วย Java, C, C++ และ Objective-C หัวใจของเครื่องมือตัวนี้คือ ความเร็วในการทำงาน และสามารถนำไปทำงานในระบบ Continuous Integration ได้ง่ายอีกด้วย เพื่อช่วยหาปัญหาเรื่อง Null pointer และ Memory leak ซึ่งจะทำก่อนการ commit code เสมอ

เรื่องที่สามคือ Top Ten Worst Repositories to Host on GitHub

ทำการอธิบาย use case ที่ GitHub ต้องเผชิญ ซึ่งเป็น repository ที่มีขนาดใหญ่และจำนวนไฟล์มาก ๆ โดยทางทีม GitHub ต้องใช้เทคนิคที่หลากหลายมากจัดการกับปัญหา ไม่ว่าจะเป็นการ replicate และ caching เป็นกรณีศึกษาที่น่าสนใจอย่างมาก แต่ผมฟังไม่ค่อยรู้เรื่องเท่าไรนัก !!

เรื่องที่สี่คือ Scaling the Git Client with the Git Virtual File System

เป็นเรื่องรวมของทีมจาก Microsoft ที่ทำการเปลี่ยนให้ทีมพัฒนา Windows มาใช้งาน Git !! โดยสิ่งที่ต้องเผชิญคือ source code เป็นร้อย GB !! มีไฟล์เป็นล้านไฟล์ใน repository เดียว ซึ่งทาง Microsoft ได้พัฒนา Git Virtual File system (GVFS) ขึ้นมาเพื่อจัดการปัญหาเหล่านี้ เนื่องจากโดยปกติแล้ว Git ไม่สามารถรองรับความต้องการแบบนี้ได้

เรื่องที่ห้าคือ Scaling Android Application Testing at Spotify

เป็นเรื่องที่ผมสสนใจมาก ๆ คือการทดสอบ Android app นั่นเอง โดยพูดถึงเรื่องเครื่องมือที่ใช้ ไปจนถึง infrastructure ที่ต้องเตรียม เพื่อรองรับการเติมโตของทีมที่สูงขึ้นอย่างก้าวกระโดด สิ่งที่อธิบายและแสดงให้เห็นคือ การปรับปรุงคุณภาพของการทดสอบ ทั้งการทดสอบที่รวดเร็วขึ้น ทั้งเรื่องของการเตรียม test data ทั้งรายงานผลการทดสอบที่ดีและอ่านง่ายขึ้น เพื่อช่วยให้หาปัญหาได้รวดเร็ว ทั้งการใช้ linter ทั้งการลดหรือกำจัดชุดการทดสอบที่พังบ่อย ๆ ให้หมดไป โดยกระบวนการทดสอบจะมีทั้งก่อน merge code และหลังจาก merge code ไปแล้ว สามารถดู VDO เพิ่มเติมได้ที่ Facebook :: At Scale Events ปล. ถ้ามีโอกาส น่าไปร่วมงานจริง ๆ แต่ได้ดูผ่าน VDO ก็แจ่มแล้วครับ ขอให้สนุกกับการพัฒนาครับ

Viewing all articles
Browse latest Browse all 1997

Trending Articles