บทความนี้เป็นบทความที่จัดทำจากสไลด์การบรรยาย “การสร้างระบบนิเวศนักพัฒนา การดำเนินงานและธรรมาภิบาลชุมชนโอเพนซอร์ส” ในการประชุม Global Cloud Computing Open Source Summit ที่จัดขึ้นที่ปักกิ่งเมื่อวันที่ 19-20 เมษายน 2017 ต้นฉบับเผยแพร่เมื่อวันที่ 23 พฤษภาคมทาง WeChat Official Account ของ Cloud Computing Open Source Industry Alliance เนื่องจากเพิ่งเปิดบล็อกในชุมชน Huawei Cloud คิดว่าบทความนี้ยังไม่ล้าสมัย ยังสามารถเป็นแนวทางให้กับอุตสาหกรรมเรื่องการสร้างระบบนิเวศนักพัฒนาได้ จึงโพสต์แชร์ในชุมชน
บันทึกการบรรยาย:

สวัสดีครับทุกท่าน ผมชื่อหลินหลี่ฉiang ปัจจุบันทำหน้าที่ผู้จัดการดำเนินงานชุมชนนักพัฒนาของหัวเว่ย รู้สึกเป็นเกียรติที่ได้รับเชิญจากผู้จัด OSCAR ให้มาแบ่งปันมุมมองและประสบการณ์ใน “ฟอรั่มธรรมาภิบาลโอเพนซอร์ส” หัวข้อวันนี้คือ “การสร้างระบบนิเวศนักพัฒนา การดำเนินงานและธรรมาภิบาลชุมชนโอเพนซอร์ส” ปัจจุบันหลายบริษัทพูดถึง “ระบบนิเวศ” แต่หลายคนอาจไม่คุ้นเคยกับคำว่า “ระบบนิเวศนักพัฒนา” ผมจะเริ่มจากประวัติศาสตร์ระบบนิเวศอุตสาหกรรมที่ทุกคนคุ้นเคย

บริษัทเหล่านี้ทุกคนเคยเห็น ยุคสมัยเหล่านี้ทุกคนก็เคยผ่าน ทำไมนักพัฒนาจึงตัดสินผู้ชนะ? เราทุกคนจำได้ว่าในยุค PC Microsoft Windows ชนะอย่างงดงามในด้านเดสก์ท็อป Windows มีผู้ใช้มาก นักพัฒนาก็มาก ทำให้ Microsoft ยังคงครองระบบนิเวศ PC จนถึงทุกวันนี้ ตัวอย่างนี้แสดงให้เห็นว่า การสร้างระบบนิเวศนักพัฒนา โอเพนซอร์สไม่จำเป็นต้องเป็นปัจจัยสำคัญ Microsoft ในสมัยนั้นเป็นซอฟต์แวร์ปิด ปัจจัยสำคัญคือนักพัฒนาเชื่อว่าแพลตฟอร์มนี้มีผู้ใช้มากที่สุด สามารถหาโอกาสทางธุรกิจในระบบนิเวศนี้ได้
ต่อไปในยุคอินเทอร์เน็ต ต่างประเทศมี Google, Facebook และ Amazon ในประเทศมี Baidu, Alibaba, Tencent ฯลฯ ต่างใช้จุดแข็งของตนเองสะสมผู้ใช้จำนวนมาก และดึงดูดนักพัฒนาจำนวนมากเข้าร่วมระบบนิเวศ ในขั้นตอนนี้ บริษัทอินเทอร์เน็ตเริ่มใช้ OpenAPI และ Open Source ทำให้นักพัฒนาติดอยู่กับแพลตฟอร์มและระบบนิเวศของตน เช่น Google ให้บริการ Google Map API ให้เว็บไซต์อื่นเรียกใช้ และสร้าง Google Code เพื่อให้โครงการโอเพนซอร์สแก่นักพัฒนา
ยุคมือถือ Apple และ Google ชนะอย่างงดงาม เดี๋ยวจะอธิบายรายละเอียด และยังมีอุตสาหกรรมที่กำลังพัฒนาอย่างรวดเร็ว ไม่ว่าจะเป็น IoT หรือ AI หรือแม้แต่สิ่งที่เรายังมองไม่เห็น ไกลมาก อนาคต 5-10 ปีข้างหน้าอุตสาหกรรมจะเป็นอย่างไร? บริษัทใดจะชนะ? นักพัฒนาจะตัดสินผู้ชนะ นักพัฒนาเลือกใช้เทคโนโลยีและผลิตภัณฑ์ใดเป็นโครงสร้างพื้นฐานของแอปพลิเคชัน? ระบบนิเวศนี้คือกุญแจสำคัญ

นักพัฒนาช่วยบริษัทชนะได้อย่างไร? มาดูยุคมือถือ ในช่วงต้นยุคมือถือมีระบบนิเวศหกแห่งแข่งขันกัน ผู้นำสมาร์ทโฟน Apple, Android ที่พัฒนาจาก Linux, BlackBerry ที่เป็นที่นิยมของนักธุรกิจอเมริกาเหนือในสมัยนั้น, HTML5 ที่ W3C เปิดตัว, แพลตฟอร์มพัฒนาข้าม Apple และ Android, และ Windows Phone ของ Microsoft
ทำไมสองอันแรกจึงชนะ? ก่อนอื่น เพราะนักพัฒนาสร้าง “ความต้องการทางเทคโนโลยี” นักพัฒนาพิจารณาก่อนว่าฐานผู้ใช้และการสร้างรายได้: แพลตฟอร์มไหนมีผู้ใช้มากที่สุด? เปิดตัว App แล้วประสบความสำเร็จง่ายที่สุด? ก็จะใช้เวลาเรียนรู้เทคโนโลยีของแพลตฟอร์มนั้น ในขณะเดียวกัน นักพัฒนาก็พิจารณาจากด้านเทคนิค: เครื่องมือพัฒนาเรียนรู้และใช้งานง่ายไหม? เทคโนโลยีมีความก้าวหน้าหรือไม่ สามารถนำพาเทคโนโลยีรุ่นถัดไปได้หรือไม่ กลายเป็นเทคโนโลยีทั่วไปที่ยั่งยืนได้หรือไม่? ดังนั้น “ความต้องการทางเทคโนโลยี” จึงถูกสร้างขึ้นจากความสำเร็จทางธุรกิจและอนาคตทางเทคโนโลยี
ต่อไป “กำแพงแข่งขัน” เป็นเอฟเฟกต์แมทธิวจากการแข่งขันจนถึงการผูกขาด ระบบนิเวศหนึ่งดึงดูดนักพัฒนามากเท่าไหร่ ก็จะผลิตแอปพลิเคชันมากขึ้นเท่านั้น แอปพลิเคชันมากขึ้นก็สามารถให้บริการผู้บริโภคได้ดีขึ้น ดึงดูดผู้บริโภคมากขึ้น และดึงดูดนักพัฒนามากขึ้นเข้าร่วมระบบนิเวศ นักพัฒนาในโลกมีจำนวนจำกัด พวกเขาตัดสินใจเข้าร่วมระบบนิเวศของบริษัทหรือเทคโนโลยีใด ก็จะกำหนดความแข็งแกร่งของกำแพงแข่งขันของระบบนิเวศนักพัฒนานั้น
หลังจากเหตุการณ์ผ่านไป เรารู้ว่า Apple และ Android ชนะ หนึ่งปิด หนึ่งเปิด ต่างชนะ แสดงอีกครั้งว่า การสร้างระบบนิเวศนักพัฒนา โอเพนซอร์สไม่ใช่ยาวิเศษ แต่จากบริบทการพัฒนาเทคโนโลยี โอเพนซอร์สเป็นวิธีการที่สำคัญมากขึ้นในการดึงดูดนักพัฒนา บริษัทต้องคิดว่า ทำไมเราต้องเปิดซอร์ส? ถ้าต้องการ จะใช้โอเพนซอร์สอย่างไร หรือรวมโอเพนซอร์สกับซอฟต์แวร์ปิดเพื่อชนะ
ยกตัวอย่าง Android มันสร้างสภาพแวดล้อมการสร้างรายได้ทางธุรกิจ นักพัฒนาเปิดตัว App บน Android สามารถทำเงินได้ และยังปิดซอร์สได้ ในขณะที่ระบบปฏิบัติการ Android เองยังเป็นโอเพนซอร์ส ทำให้ Android มีตำแหน่งเหมือน Windows ในยุค PC ในยุคมือถือ ผู้ผลิตฮาร์ดแวร์ติดตั้งล่วงหน้ามาก ผู้ใช้มาก นักพัฒนาก็หลั่งไหลเข้ามา
เมื่อเทียบกับ Windows ข้อได้เปรียบของ Android คือโอเพนซอร์ส ยืนบนไหล่ของยักษ์ ใช้ Linux kernel พัฒนาระบบปฏิบัติการมือถืออย่างรวดเร็ว และรับประกันผลประโยชน์ทางธุรกิจของนักพัฒนา ไม่ต้องรับภาระหน้าที่โอเพนซอร์ส นี่เกี่ยวข้องกับใบอนุญาตโอเพนซอร์สที่ผู้เชี่ยวชาญสองท่านก่อนหน้านี้พูดถึง ตัวอย่างเช่น การแจกจ่าย Linux ทั่วไป ถ้ามี App ติดตั้งล่วงหน้า ตามข้อกำหนด GPL App เหล่านั้นต้องเปิดซอร์ส แต่ Android ใช้การออกแบบแบบแบ่งชั้นอย่างชาญฉลาด จำกัดขอบเขตการใช้งาน GPL ทำให้ App ชั้นบนสุดสามารถติดตั้งล่วงหน้าและเปิดตัวแบบปิดซอร์สได้ นอกจากนี้ โอเพนซอร์สยังทำให้ผู้ผลิตฮาร์ดแวร์เต็มใจใช้มากขึ้น การใช้ระบบปฏิบัติการ Android ไม่ต้องจ่ายค่าอนุญาตให้ Google และไม่มีปัญหาละเมิดลิขสิทธิ์ เป็นมิตรกับ Windows มากกว่า
การเลือกใช้เทคโนโลยีก็เกี่ยวข้องกับแนวโน้มเทคโนโลยีและการรับรู้ของนักพัฒนา Microsoft ลงทุนในระบบปฏิบัติการมานาน ตามทฤษฎีการลงทุนในระบบปฏิบัติการมือถือ น่าจะแข็งแกร่ง Windows Phone เริ่มต้นในกระแสมือถือไม่ได้ช้ามาก แต่ความเร็วในการพัฒนาค่อนข้างช้า ด้านหนึ่งไม่เร็วเท่า Apple อีกด้านหนึ่งต้องแข่งขันกับ Android โอเพนซอร์ส ไม่ได้ทำให้นักพัฒนารู้สึกและเชื่อว่า Microsoft จะนำพาเทคโนโลยีในอนาคต
เมื่อเทียบกัน Apple และ Android เริ่มต้นเร็วกว่า และทำให้นักพัฒนาเชื่อว่ามีศักยภาพการพัฒนาตลาดและความเป็นผู้นำทางเทคโนโลยี ดังนั้นตั้งแต่แรกก็มีข้อได้เปรียบในการสร้างเทคโนโลยีและกำแพงแข่งขัน ดังนั้น บริษัทที่เผชิญกับการพัฒนาเทคโนโลยีหลากหลาย ต้องพิจารณาว่าจะได้ตั๋วเข้าสู่เทคโนโลยีใหม่ใดก่อน? บริษัทต้องลงทุนก่อน ไม่ควรตั้งเป้าหมายระยะสั้นที่จะทำกำไรทันที เพราะความคิดนี้จะทำให้มุ่งเน้นแค่ลูกค้ารายใหญ่และการส่งมอบโครงการ ความเร็วในการพัฒนาระบบนิเวศนักพัฒนาอาจช้าลง

จากมุมมองระบบนิเวศนักพัฒนา ไม่ว่าจะเป็นโอเพนซอร์ส Open Source หรือการเปิดความสามารถ OpenAPI ล้วนเป็นเครื่องมือ การวางตำแหน่ง กลยุทธ์ บริบทการพัฒนา และสภาพแวดล้อมตลาดของแต่ละบริษัทมีความแตกต่างกัน ต้องดูว่าสภาพแวดล้อมของระบบนิเวศนี้เป็นอย่างไร และมีบทบาทใดบ้าง พูดแบบนามธรรม ถ้าผมต้องการสร้างป่าฝนเขตร้อนบนที่ดินผืนหนึ่ง หรือฟื้นฟูป่าที่ถูกทำลาย ต้องคิดว่า จะสร้างสภาพแวดล้อม ดิน ภูมิอากาศแบบไหน จึงจะสามารถก่อตัวเป็นป่าฝนเขตร้อนได้? หรือแม้แต่ตัดสินจากละติจูดว่าไม่อยู่ในเขตร้อน ไม่มีทางก่อตัวเป็นป่าฝนได้ อย่างน้อยก็จะไม่เสียแรงเปล่า ต้องพิจารณาด้วยว่าควรมีพืชและสัตว์ชนิดใด? ป่าฝนอเมซอนกับป่าฝนชวาก็ต้องมีความแตกต่าง
ดังนั้นสไลด์นี้อธิบายว่า เราต้องระบุบทบาทในระบบนิเวศ บทบาทนี้ต้องช่วยเราดึงดูดนักพัฒนาที่มีคุณค่าสูง เราต้องระบุว่าควรเจาะกลุ่มนักพัฒนาประเภทใด ให้โอเพนซอร์สหรือเปิดความสามารถใดเพื่อแก้ปัญหาของพวกเขา ผ่านการดำเนินงานชุมชนและการโต้ตอบกับนักพัฒนา ดึงดูดนักพัฒนาที่มีคุณค่าสูงให้กลายเป็นนักพัฒนาหลัก ให้พวกเขาภักดีและชอบใช้เครื่องมือและผลิตภัณฑ์ของบริษัท กลุ่มคนเหล่านี้จะเป็นผู้แทนและผู้เผยแพร่ที่ดีที่สุดของบริษัท ตามคำกล่าวของหัวเว่ย นักพัฒนาหลักของเราคือ “คนหัวเว่ยที่ไม่มีบัตรพนักงาน”
นอกจากนี้ ต้องทำให้นักพัฒนารู้สึกว่าการเข้าร่วมระบบนิเวศนี้มีอนาคต เหมือนตัวอย่างสมาร์ทโฟนข้างต้น BlackBerry อาจทำให้นักพัฒนารู้สึกว่าตามพวกเขาไปไม่มีอนาคต ทำไม? เพราะพวกเขาเน้นนักธุรกิจระดับสูงในอเมริกาเหนือ ถ้าผมทำเกมมือถือ ผมจะทำ Android ที่มีผู้บริโภคมากกว่าสามารถใช้ App ของผมได้ และยังเป็นผลิตภัณฑ์ของ Google Google เองก็แสดงให้เห็นความสูงทางเทคโนโลยี นี่เป็นภาพลักษณ์แบรนด์ของพวกเขาแล้ว ดังนั้น การสร้างระบบนิเวศนักพัฒนา ไม่ได้เน้นแค่การปรับปรุงประสิทธิภาพและประสบการณ์ของเครื่องมือพัฒนา สิ่งสำคัญที่สุดคือต้องมีอนาคต (และเงิน) สามารถแก้ปัญหาได้ และยังมีการเพิ่มขึ้นของคุณค่าแบรนด์เทคโนโลยีและการเสริมสร้างชื่อเสียงของนักพัฒนา
วงกลมสามวงในภาพคือเขตหลัก เขตขยาย และเขตรอบนอก บทบาทในนั้นเป็นเพียงตัวอย่าง ไม่ได้หมายถึงการวางตำแหน่งระบบนิเวศนักพัฒนาของหัวเว่ย ระบบนิเวศของแต่ละบริษัทอาจมีบทบาทต่างกัน และถูกวางในวงกลมต่างกัน โมเดลนี้ช่วยให้เราคิดว่า จะเลือกบทบาทใดเพื่อร่วมมือหรือดึงดูด ชี้แจงหน้าที่ของบทบาทและเป้าหมายกับบริษัทแล้ว เราต้องหาเส้นทางจากการดำเนินงานชุมชน จะนำเข้านักพัฒนาด้านใดก่อน นำเข้าบทบาทใดทีหลัง?
แต่ละบทบาทมีการวางตำแหน่งและความหมายของตนเอง เช่น สำหรับหัวเว่ย สิ่งสำคัญที่สุดอาจเป็น ISV ผู้พัฒนาซอฟต์แวร์อิสระ ทำไม? หัวเว่ยขายกล่องมาตลอด ในช่วงไม่กี่ปีมานี้ภายใต้การแปลงดิจิทัล ICT และกลยุทธ์การถูกบูรณาการ ผ่านแพลตฟอร์มเปิดความสามารถ ให้บริการและ API หลากหลาย ให้พันธมิตรบางรายบูรณาการและเรียกใช้บริการและความสามารถของเราในผลิตภัณฑ์และโซลูชันของพวกเขา พันธมิตรของเราทำเงิน หัวเว่ยจึงจะทำเงินได้ ดังนั้นเราสามารถแยกออกมาเพื่อเข้าใจนักพัฒนาเหล่านี้ นักพัฒนาของเราหมายถึงนักพัฒนาในพันธมิตร เข้าใจทิศทางและความต้องการของ ISV เราจึงจะสามารถสร้างเส้นทางการนำเข้าได้
อื่นๆ เช่น ที่ปรึกษา นักพัฒนาอิสระ และผู้ให้บริการ ฯลฯ สำคัญ แต่อาจไม่ได้อยู่ในตำแหน่งหลัก รอบนอกมากกว่า เช่น บ่มเพาะ สื่อ หรือผู้จัดชุมชนและฟอรั่ม แม้วางไว้รอบนอก แต่ในบางขั้นตอน พวกเขาสำคัญมาก เป็นจุดสร้างระบบนิเวศที่หลากหลาย ระบบนิเวศไม่มีแค่ช้าง แต่มีมดด้วย สำหรับบางบริษัท โดยเฉพาะบริษัท B2B อาจคิดว่ามดไม่สำคัญ ช้างสำคัญกว่า ไม่รู้ว่ามดกี่ตัวจึงจะให้เราอิ่ม การเปลี่ยนแปลงความคิดนี้ ก็เกี่ยวข้องกับค่านิยม การวางแผนกลยุทธ์ และการตั้งค่า KPI ของบริษัทเป็นอย่างมาก
ที่นี่มีสองคำภาษาอังกฤษ Advocate และ Evangelist ต่างเป็นบทบาทสำคัญ Advocate หมายถึงผู้เผยแพร่ที่มีบัตรพนักงาน อาจเป็นพนักงานขาย โซลูชัน หรือสนับสนุนเทคนิค เป็นตัวแทนบริษัทในการประชาสัมพันธ์เทคโนโลยีและสร้างแบรนด์เทคโนโลยีภายนอก Evangelist คือนักพัฒนาหลัก ไม่มีบัตรพนักงานหัวเว่ย พวกเขาจะบรรยายจากประสบการณ์การใช้ผลิตภัณฑ์และความสามารถของหัวเว่ยจริง แก้ปัญหาอะไรให้ผมได้ เพราะมีหัวเว่ย โครงการของผมจึงเปิดตัวได้ ทำได้ดี เทคโนโลยีและโซลูชันของบริษัทอื่นอาจทำไม่ได้ จึงกลายเป็นโฆษณาที่มีชีวิตและการรับรองจากอุตสาหกรรม หลายบริษัทมี Evangelist เช่น Google มี GDE, Microsoft มี MVP ทำมานานแล้ว เมื่อเทียบกัน บริษัทในประเทศส่วนใหญ่ยังอยู่ในขั้นตอนพิจารณาหรือเพิ่งเริ่มทดลอง

กลับมาที่ชุมชนโอเพนซอร์ส ผมเริ่มต้นจากปี 2009 ที่ Academia Sinica ในไต้หวันทำการวิจัยเกี่ยวกับโอเพนซอร์ส ครอบคลุมทรัพย์สินทางปัญญา โมเดลธุรกิจ การดำเนินงานชุมชน และธรรมาภิบาลโอเพนซอร์ส ในขณะเดียวกันก็มีส่วนร่วมในการจัดชุมชนเทคโนโลยีโอเพนซอร์สในไต้หวันจริงๆ หลายคนเมื่อได้ยินเรื่องชุมชนโอเพนซอร์สครั้งแรกก็สงสัยว่า ทำไมมีคนลงทุนเวลาของตนเองมีส่วนร่วมในชุมชน ไม่มีใครจ่ายเงินเดือนให้ ว่างงานหรือ? ผมเองก็เคยคิดถึงคำถามนี้เมื่อแรกเริ่ม
ในระหว่างการวิจัยพบว่า ชุมชนโอเพนซอร์สเกิดขึ้นในยุโรปและอเมริกาเพราะสภาพแวดล้อมและดินฟ้าอากาศเหมาะสมกับการก่อตัวของระบบนิเวศโอเพนซอร์ส ยกตัวอย่างที่เป็นรูปธรรม พวกเขาไม่ต้องกังวลเรื่องซื้อรถซื้อบ้านแต่งงาน แล้วก็ทนทุกข์ทรมานเป็นโปรแกรมเมอร์ ใช้เวลาทั้งหมดไปกับการหาเงิน เมื่อแรงกดดันทางการเงินค่อนข้างน้อย และคุณภาพชีวิตไม่มีปัญหาใหญ่ ก็มีพื้นที่พัฒนาความสนใจ ดังนั้นนักพัฒนาหลายคนเริ่มมีส่วนร่วมในชุมชนโอเพนซอร์สจากความสนใจ ในขณะเดียวกัน อินเทอร์เน็ตเป็นโครงสร้างพื้นฐานสำคัญของชุมชนโอเพนซอร์ส โปรแกรมเมอร์ในยุโรปและอเมริกาเป็นมนุษย์กลุ่มแรกที่ใช้อินเทอร์เน็ต บวกกับวัฒนธรรมแฮกเกอร์ที่ไม่อยากสร้างล้อซ้ำและบรรยากาศเสรีเปิดกว้าง ก็เกิดเอฟเฟกต์แมทธิว ก้อนหิมะก็เริ่มกลิ้ง
เชื่อว่าคุณคงเคยได้ยินเรื่องราวของแฮกเกอร์ชื่อดังเช่น Linus Torvalds, Richard Stallman ฯลฯ วันนี้ผมค้นพบปัญหาและจุดเจ็บทางเทคโนโลยี ผ่านการสนทนาทางอินเทอร์เน็ต ถ้าแก้จุดเจ็บนี้ได้ ผมก็แชร์ออกไป สมัยนั้น Linus ตอนเป็นนักศึกษามหาวิทยาลัยก็ทำเหมือนกัน เขาบอกบนเน็ตว่า อยากทำระบบปฏิบัติการเล็กๆ น่าสนใจ และแสดงความคืบหน้าของโครงการตลอดเวลาให้ดู และต้อนรับความร่วมมือ ก็มีคนมากขึ้นเข้าร่วมกับเขา สภาพแวดล้อมและวัฒนธรรมแบบนี้ อาจยังไม่เบ่งบานในประเทศจีนปัจจุบัน
คุณค่าหลักของวิธีการโอเพนซอร์ส อันดับแรกคือการแก้ปัญหา ชุมชนโอเพนซอร์สที่ประสบความสำเร็จและมีอิทธิพลต่ออุตสาหกรรม ล้วนเกิดจากการแก้ความต้องการและจุดเจ็บในยุคนั้น Linux เติบโตได้เพราะในขณะนั้นระบบปฏิบัติการกระแสหลักล้วนเป็นซอฟต์แวร์ปิดกรรมสิทธิ์ และ Linux เป็นโซลูชันที่ดี และยังเป็นโอเพนซอร์ส แก้จุดเจ็บของยุคสมัย ประการที่สอง โอเพนซอร์สไม่เพียงไม่ต้องใช้เงิน มีอุปสรรคในการเข้าถึงต่ำ แต่ยัง “ลดทอนความเป็นเจ้าของ” ซอฟต์แวร์ฟรีในอดีต กรรมสิทธิ์ยังอยู่กับบริษัทหรือองค์กร ผมไม่มีสิทธิ์นำโค้ดนี้ไปพัฒนา แต่ซอฟต์แวร์โอเพนซอร์สตราบใดที่สอดคล้องกับข้อกำหนดใบอนุญาต ก็เสรีและฟรี รวมทุกสายน้ำ นักพัฒนาทุกคนเข้ามาแล้ว ในชุมชนก็มีความรู้สึกเป็นเจ้าของมาก เพราะส่วนหนึ่งของโค้ดคือการมีส่วนร่วมของผม ถ้าคุณดำเนินงานชุมชนหรือผลิตภัณฑ์โดยใช้วิธีการโอเพนซอร์ส คุณต้องหาทาง “ลดทอนความเป็นเจ้าของ” ทำให้สมาชิกชุมชนมีความรู้สึกมีส่วนร่วมอย่างแรงกล้า ทำให้สมาชิกชุมชนแนะนำสมาชิกใหม่เข้ามามากขึ้น
วิธีการโอเพนซอร์สทุกคนใช้ได้ บางครั้งจุดเจ็บเดียวกันก็มีเทคโนโลยีและผลิตภัณฑ์ต่างกันแข่งขันกัน แค่เปิดซอร์สอย่างเดียวก็ไม่จำเป็นต้องมีความได้เปรียบในการแข่งขัน เช่น ภาษาและเครื่องมือพัฒนา iOS และ Android มีคนน้อยมากที่เต็มใจใช้เวลาเรียนรู้ทั้งสองอย่างจนเชี่ยวชาญ ดังนั้นถ้าระบบนิเวศของคุณใหญ่พอ นักพัฒนาใช้เทคโนโลยีของคุณแล้ว ก็ขี้เกียจเลือกอีกอันหนึ่ง ภาษาก็เหมือนเทคโนโลยีโอเพนซอร์ส มีระบบนิเวศของตนเอง เหมือนผมพูดจีนและอังกฤษได้ ถ้าให้เรียนสเปนอีกก็ไม่มีแรงบันดาลใจ คิดว่าไม่จำเป็น พูดอังกฤษพอแล้ว ดังนั้นผมแค่ทำให้ทุกคนมีส่วนร่วม ทุกคนคิดว่านี่คือภาษาของผม ไม่ใช่แค่คนอังกฤษ คนอเมริกัน คนแคนาดา คนอินเดีย แม้แต่ผมเองก็คิดว่าอังกฤษเป็นภาษาของผมได้ และผมพูดอังกฤษไม่ต้องจ่ายค่าธรรมเนียมสิทธิบัตรให้อังกฤษ นี่ก็คือโอเพนซอร์ส
กลไกจูงใจของวิธีการโอเพนซอร์ส อันดับแรกคือ “การใช้” ต้องมีคนใช้โครงการนี้ก่อน ก่อตัวเป็นกลุ่มผู้ใช้ขนาดหนึ่ง สนทนาและแลกเปลี่ยน ผู้ใช้ที่นี่มักเป็นนักพัฒนาด้วย ประการที่สองคือ “การสร้างสรรค์” ถ้าไม่มีใครใช้สิ่งนี้มาสร้างสรรค์ โซลูชันและความเป็นไปได้ในการพัฒนาก็น้อยมาก ประการที่สามคือ “การทำงานร่วมกัน” ความหมายของการทำงานร่วมกันคืออะไร? ผมไม่ใช้คำว่าความร่วมมือแต่ใช้การทำงานร่วมกันเพราะ ความร่วมมือมักต้องบรรลุฉันทามติก่อนจึงจะเริ่มทำ แต่การทำงานร่วมกันไม่จำเป็นต้องมีฉันทามติที่ชัดเจน ทิศทางใหญ่พอๆ กันก็สามารถเริ่มทำได้ แม้แต่ความคิดเห็นต่างกัน โอเพนซอร์สก็อนุญาตให้ทุกคนแยกสาขา พัฒนาในแบบที่ตนเองยอมรับ ในที่สุดใครทำดีกว่าก็ได้รับการชื่นชมจากทุกคน ประการที่สี่คือ “การช่วยเหลือซึ่งกันและกัน” ในกระบวนการดำเนินงานชุมชน คนที่ไม่เข้าใจ ไม่รู้ และไม่ทราบ ผ่านอินเทอร์เน็ตหาโซลูชันที่เป็นไปได้ สื่อสารกับสมาชิกชุมชน สมาชิกชุมชนก็ชอบแชร์ข้อมูล นั่นคือประการที่ห้า “การแชร์” ก้อนหิมะก็เริ่มกลิ้ง
วันนี้ไม่ว่าจะเป็นโอเพนซอร์ส เปิด API หรือเทคโนโลยีและผลิตภัณฑ์ปิด ถ้าสามารถบรรลุจุดเหล่านี้ด้วยวิธีการโอเพนซอร์ส ก็เป็นกุญแจสู่ความสำเร็จ ถ้าเป็นโอเพนซอร์สก็ค่อนข้างราบรื่น ถ้าเป็นปิดก็ต้องหาทางสร้างเงื่อนไขและสภาพแวดล้อม กลไกจูงใจทำให้เกิดความเหนียวแน่น ความเคยชิน และความภักดีระหว่างกลุ่มนักพัฒนาและระบบนิเวศ เป็นการดำเนินงานทีละขั้นตอน ใช้พลังมวลชนและความคิดเห็น แล้วนำเข้านักพัฒนามากขึ้น ระบบนิเวศขยายตัวเรื่อยๆ และก่อตัวเป็นอุปสรรค ผู้ผลิตรายอื่นก็เข้ามายากขึ้น

การสร้างระบบนิเวศนักพัฒนาที่ดีด้วยวิธีการโอเพนซอร์ส ต้องมีโปรแกรมนักพัฒนา Developer Program เพื่อนำไปปฏิบัติ โปรแกรมของผมแบ่งเป็นสี่ส่วน “ความเปิดกว้าง” “แพลตฟอร์มเสริมพลัง” “การส่งเสริมนักพัฒนา” และ “การดำเนินงานนักพัฒนา”
ส่วน “ความเปิดกว้าง” ต้องชัดเจนว่าเราเปิดอะไรบ้าง การนำเสนอ Open Source และ OpenAPI เป็นเพียงก้าวแรก ต้องอธิบายชัดเจนว่าโครงการและความสามารถเหล่านี้แก้ปัญหาอะไรได้บ้าง มีกรณีศึกษาอะไรยืนยันได้บ้าง เมื่อนักพัฒนาต้องการลองใช้ ก็ให้เครื่องมือ SDK โค้ดตัวอย่างที่เกี่ยวข้องใน “แพลตฟอร์มเสริมพลัง” เอกสารสอนและคู่มือที่อ่านง่ายและครบถ้วน แน่นอน มีห้องปฏิบัติการและสภาพแวดล้อมทดสอบก็ดีที่สุด
ในส่วน “การตลาดส่งเสริมและการดำเนินงานชุมชน” ต้องสร้างสภาพแวดล้อมที่นักพัฒนาสามารถสื่อสารกันเองได้ เช่น ฟอรั่มชุมชน การประชุมแลกเปลี่ยนเทคโนโลยี กลุ่ม WeChat หรือ QQ ที่นิยมใช้ในประเทศก็เป็นวิธีหนึ่ง ต่างประเทศใช้ Slack หรือ Facebook Group เพื่อบรรลุเป้าหมายการสื่อสาร ถ้านักพัฒนาต้องการเรียนรู้เทคโนโลยีที่เกี่ยวข้อง โปรแกรมนักพัฒนาต้องให้การฝึกอบรมด้วย ไม่ว่าจะเป็นบริการเรียนรู้ด้วยตนเอง CodeLab Step by Step หรือหลักสูตรฝึกอบรมโดยวิทยากรมืออาชีพ ต้องหาทางให้นักพัฒนาไม่ลังเลที่จะเริ่มเรียนรู้ หลังจากเรียนจบ เราสามารถแนะนำให้นักพัฒนาฝึกปฏิบัติผ่านกิจกรรมเขียนโค้ด เช่น แฮกกาธอนและการแข่งขันนักพัฒนา ให้พวกเขาทำ Demo ถ้ามีปัญหาระหว่างการเรียนรู้และพัฒนา ก็สามารถแก้ไขผ่านช่องทางสนับสนุนทางการและชุมชน
ในตารางนี้ เราเลือก Top 5 ที่นักพัฒนาชื่นชมมากที่สุดและสนับสนุนมากที่สุด นี่คือสิ่งที่นักพัฒนาสนใจมากที่สุด และเป็นจุดเน้นของโปรแกรมนักพัฒนา พูดง่ายๆ คือให้เครื่องมือที่ดี เนื้อหาที่มีประโยชน์ ทรัพยากรฟรี (เช่น คลาวด์ การฝึกอบรมและการรับรอง ฯลฯ) และรางวัลนักพัฒนา แต่อย่าลืมว่า ทุกอย่างต้องตั้งอยู่บนพื้นฐานที่ระบบนิเวศที่คุณสร้างทำให้นักพัฒนาทำเงินได้จริง แก้ปัญหาของนักพัฒนาได้ มีอนาคตและความเป็นไปได้ในการพัฒนาทางเทคโนโลยี ไม่เช่นนั้นทั้งหมดก็ว่างเปล่า

เปลี่ยนมุมมอง ให้เราเน้นที่ลูกค้าเป็นศูนย์กลาง ยืนในมุมของนักพัฒนาเพื่อสัมผัสโปรแกรมนักพัฒนาหนึ่ง ก่อนอื่นคือการค้นพบ การค้นพบมีหลายช่องทางและวิธี ผมอาจเห็นโพสต์แชร์บน CSDN หรือ OSChina ผมอาจเห็นหรือได้ยินงานวิจัยเทคโนโลยีที่บูธในการประชุมนักพัฒนา InfoQ หรือแม้แต่เห็นในโซเชียลหรือกลุ่มโปรแกรมเมอร์บางกลุ่มที่แชร์บทความ WeChat แนะนำเทคโนโลยีและเครื่องมือที่เขาสนใจ ขั้นตอนที่สองคือการติดตั้งเครื่องมือ ถ้ากระบวนการติดตั้งเครื่องมือยุ่งยาก หรือมีข้อผิดพลาด เขาก็จะไม่ติดตั้ง ขั้นตอนที่สามคือหลังจากติดตั้งแล้วต้องเรียนรู้เทคโนโลยีที่เกี่ยวข้อง ขั้นตอนที่สี่คือการระบุภารกิจ ต้องระบุภารกิจและจุดเจ็บใดบ้าง และแก้ไข เพราะผมใช้สิ่งนี้อาจต้องการแก้ปัญหาบางอย่าง ขั้นตอนที่ห้าคือการได้รับการสนับสนุน ในระหว่างการใช้งาน ต้องมีปัญหา การสนับสนุนนี้มาจากการสนับสนุนบุคคลที่สาม โดยเฉพาะการสนับสนุนจากชุมชนจะดีกว่ามีแค่การสนับสนุนทางการ เพราะมีคนเต็มใจช่วยเหลือคุณฟรี ด้านหนึ่งแบ่งเบาภาระการสนับสนุน อีกด้านหนึ่งบรรยากาศการแชร์และช่วยเหลือซึ่งกันและกันทำให้ชุมชนมีความเป็นมนุษย์มากขึ้น แน่นอน การสนับสนุนทางการยังต้องมี สำหรับลูกค้า VIP และพันธมิตรทางธุรกิจ สุดท้าย ถ้านักพัฒนาพึงพอใจหลังจากผ่านประสบการณ์เหล่านี้ ก็จะแนะนำให้นักพัฒนาคนอื่น

ยืนในมุมของบริษัท เราแยกโปรแกรมนักพัฒนาตามขั้นตอนการมีส่วนร่วมกับนักพัฒนา ทีละขั้นตอน ว่าสิ่งเหล่านี้เราต้องทำอย่างไร จึงจะมั่นใจได้ว่าหลังจากนำเข้านักพัฒนาแล้ว เขาจะค่อยๆ ไปสู่ขั้นตอนถัดไป เรียกว่าโมเดล AAARRRP
ขั้นตอนแรก “การรับรู้” คืองานการตลาดส่งเสริมและแบรนด์ เช่น เราเผยแพร่บทความโฆษณาและโฆษณาแบบชัดเจน EDM ในสื่อและชุมชน IT ไปงานแสดงนักพัฒนาเพื่อแชร์เทคโนโลยี โฆษณาบูธ ทำ SEO เพิ่มการเข้าชมชุมชน นำเข้านักพัฒนาในเว็บไซต์ถามตอบเทคโนโลยีบุคคลที่สาม ฯลฯ จุดประสงค์คือการเปิดเผย เพิ่มชื่อเสียงของชุมชน ขั้นตอนที่สอง “การเข้าถึง” คือการให้นักพัฒนาลงทะเบียนบัญชี และดาวน์โหลดเครื่องมือที่เกี่ยวข้อง และเชื่อมต่อกับขั้นตอนที่สาม “การเปิดใช้งาน” ให้นักพัฒนาใช้งานจริงครั้งแรก นี่คือขั้นตอนสำคัญที่สุด
ครั้งแรกที่นักพัฒนาลองใช้ผลิตภัณฑ์และเครื่องมือของเรา ต้องเรียนรู้และใช้งานง่าย จึงจะทิ้งความประทับใจที่ดี เพื่อนคนหนึ่งของผมได้ยินว่าผมอยู่ในชุมชนนักพัฒนาหัวเว่ย ก็ไปเดินดูชุมชนเอง พบว่ามี API ส่งข้อความสั้น เขาลองใช้ครั้งแรก ผ่านการแนะนำและการใช้งานที่เรียบง่าย ข้อความสั้นก็ถูกส่งออกไป ในอนาคตเขาอาจพิจารณาเรียกใช้ฟังก์ชันนี้ใน App ของเขา
ที่นี่มีคำว่า DX, Developer eXperience ประสบการณ์นักพัฒนา ตัวชี้วัด DX ที่สำคัญที่สุดคือ TTFHW, Time To First Hello World คือเวลาที่ใช้ในการลองใช้ครั้งแรก ดำเนินการสำเร็จจนได้ผลลัพธ์ที่เรียกว่า “Hello World” ยิ่งสั้นยิ่งดี ที่นี่เขียนน้อยกว่า 15 นาทีเป็นเพียงตัวอย่าง Hello World ของ API แต่ละประเภทไม่เท่ากัน แต่ฟังก์ชันง่ายๆ ถ้าเขาไม่สามารถลองสำเร็จภายใน 15 นาที เขาจะไม่ไปสู่ขั้นตอน “การรักษา” โดยพื้นฐาน
เพื่อนำนักพัฒนาจากขั้นตอน “การเปิดใช้งาน” ไปสู่ขั้นตอน “การรักษา” เราต้องให้ SDK ต่างๆ ไกด์ API เริ่มต้นอย่างรวดเร็ว เอกสารแนะนำ โค้ดตัวอย่าง IDE และสภาพแวดล้อมห้องปฏิบัติการ ฯลฯ “การรักษา” หมายถึงการให้การฝึกอบรม ฟอรั่ม การรับรอง ให้นักพัฒนาอยู่จริงๆ ดังนั้นเราต้องเข้าใจว่าผู้ใช้คือใคร ความต้องการคืออะไร ให้เขาได้รับความช่วยเหลือและดำเนินต่อในระหว่างการพัฒนา พัฒนาความสามารถ ได้รับการรับรอง ก็จะเข้าสู่ขั้นตอน “รายได้”
“รายได้” เป็นกุญแจสำคัญ เราต้องยืนยันก่อนว่า ในระบบนิเวศนี้ นักพัฒนาต้องสามารถทำเงินได้ สามารถแก้ปัญหาได้ เขาไม่สามารถทำเงินและแก้ปัญหาได้ เครื่องมือของคุณสะดวกแค่ไหน ประสบการณ์ดีแค่ไหน เขาก็จะไม่มาใช้ ดังนั้นเราต้องแสดงกรณีศึกษาแอปพลิเคชันที่ประสบความสำเร็จ จัดการแข่งขันนักพัฒนา ให้แผนสนับสนุนที่เป็นรูปธรรม หลังจากเขาทำเงินได้แล้วจึงจะ “แนะนำ” ในอุตสาหกรรม ในขณะเดียวกันเรายังสามารถ “เข้าถึง” และ “เปิดใช้งาน” นักพัฒนาที่ได้รับการแนะนำมากขึ้น
ขั้นตอน “การมีส่วนร่วม” ไม่จำเป็นต้องมีในทุกระบบนิเวศ ผลิตภัณฑ์บางอย่าง ถ้าเป็นโอเพนซอร์ส หรือวางแผนรับนักพัฒนาภายนอกเข้ามา พวกเขาจะมีส่วนร่วมในกระบวนการสร้างผลิตภัณฑ์ เช่น โครงการ Apache CarbonData ของหัวเว่ยรับสมัครนักพัฒนาภายนอกมาช่วยกันทำโครงการบิ๊กดาตาให้ดีขึ้น เพราะเปิดซอร์สแล้ว จึงเป็นของทุกคน ดังนั้นโครงการโอเพนซอร์สสามารถได้รับการสนับสนุนจากนักพัฒนาในระหว่างการพัฒนา ไม่ต้องรอให้ทำเสร็จแล้วจึงมาฟังข้อเสนอแนะจากนักพัฒนา หนังสือ “ความรู้สึกมีส่วนร่วม” ของ Xiaomi พูดถึงเรื่องนี้

ชุมชนนักพัฒนาหัวเว่ยเปิดตัวโครงการหนึ่งในปี 2016 ชื่อ HDG Huawei Developers Gathering ภาษาอังกฤษคือ Huawei Developers Gathering วางตำแหน่งเป็นแพลตฟอร์มกิจกรรมรวมสำหรับนักพัฒนาที่มีคุณค่าของหัวเว่ย จากคำว่า “รวม” และ “Gathering” ก็เห็นได้ว่า เราจัดกิจกรรมเพื่อรวมนักพัฒนา แล้วเชื่อมโยงนักพัฒนากับหัวเว่ย สร้างระบบนิเวศ นักพัฒนารวมตัวกัน เราไม่เพียงส่งผู้เชี่ยวชาญของหัวเว่ยมาสนทนาเทคโนโลยี แต่ยังให้นักพัฒนาในระบบนิเวศนักพัฒนาหัวเว่ยแชร์ว่าเขาใช้ความสามารถและทรัพยากรที่หัวเว่ยให้มาอย่างไรจึงประสบความสำเร็จในโครงการ ให้หัวเว่ยและนักพัฒนาเชื่อมเป็นเครือข่าย ก่อตัวเป็นชุมชน
ในขณะเดียวกัน HDG ไม่ใช่แค่การประชุมแลกเปลี่ยนเทคโนโลยี เรายังจัด Workshop ให้นักพัฒนาเรียนรู้และใช้ผลิตภัณฑ์ของหัวเว่ยร่วมกัน และผ่านแฮกกาธอนให้ความคิดสร้างสรรค์ของทุกคนกลายเป็น Demo และต้นแบบโครงการ นอกจากนี้ ชุมชนนักพัฒนาหัวเว่ยยังมีการแข่งขันนักพัฒนา การฝึกอบรมและรับรองนักพัฒนา ฟอรั่มนักพัฒนา และศูนย์สนับสนุนนักพัฒนา ให้นักพัฒนาสัมผัสประสบการณ์ สื่อสาร เรียนรู้ พัฒนา และรับการสนับสนุนแบบ end-to-end ในระบบนิเวศของหัวเว่ย
หลายคนบอกผมว่า กิจกรรมเยอะมาก ไม่ขาดที่หัวเว่ยจัด ผมบอกพวกเขาว่า กิจกรรมข้างนอกเยอะ แต่เนื้อหาที่มีประโยชน์น้อย คนที่มีคุณค่ายิ่งกว่าน้อย คุณค่าของ HDG ไม่ได้อยู่ที่การจัดกิจกรรม แต่อยู่ที่นักพัฒนาที่มีคุณค่าของหัวเว่ย คนเหล่านี้สามารถรวมตัวกัน และสร้างความรู้สึกเป็นเจ้าของ จุดประกายโซลูชันและโครงการที่สร้างสรรค์ สร้างคุณค่าทางธุรกิจ นี่คือสิ่งที่มีความหมายจริงๆ

เพื่อให้พันธมิตรและนักพัฒนาของเราเข้าใจว่าหัวเว่ยมีความสามารถใดบ้าง เราเปิดตัว “White Paper การเปิดความสามารถของหัวเว่ย” ในการประชุมพันธมิตรระบบนิเวศหัวเว่ยที่จัดขึ้นที่ฉางชาในเดือนมีนาคมปีนี้ แนะนำการเปิดความสามารถของระบบนิเวศทั้งเจ็ดของหัวเว่ย ได้แก่ คลาวด์คอมพิวติ้ง IoT การสื่อสารคลาวด์องค์กร การเฝ้าระวังวิดีโอ eLTE broadband trunking ความปลอดภัยมือถือองค์กร และบิ๊กดาต้า ทุกคนสามารถติดตามเว็บไซต์ชุมชนนักพัฒนาหัวเว่ยและ WeChat ดาวน์โหลด White Paper ได้ และยังมีเนื้อหาอ้างอิงมากมาย

สุดท้าย ผมจะจบด้วยสามประโยคนี้
“ซอฟต์แวร์กลืนโลก” ประโยคนี้ทำให้ผมรู้สึกจริงมาก หัวเว่ยที่ขายกล่องมาตลอด เข้าใจแนวโน้มนี้ตั้งแต่นานแล้ว แทนที่จะถูกกลืน ไม่รับการแปลงดิจิทัล ICT ประโยคถัดไป แทนที่จะพูดว่า “โอเพนซอร์สกลืนซอฟต์แวร์” ไม่ดีกว่าพูดว่าซอฟต์แวร์โอเพนซอร์สคือสิ่งที่นักพัฒนาต้องการมากกว่า และเป็นเครื่องมือสำคัญในการพัฒนาระบบนิเวศ นอกจากซอฟต์แวร์แล้ว แม้แต่ฮาร์ดแวร์ ข้อมูล ลิขสิทธิ์เนื้อหา ฯลฯ ก็มีแนวโน้มไปสู่โอเพนซอร์ส เช่น Open Hardware, Open Data, Creative Commons ฯลฯ
ประโยคสุดท้ายคืออะไร? “ชุมชนดีกว่าโค้ด” ผมคิดว่าสิ่งสำคัญกว่าที่หลายบริษัทยังไม่ให้ความสำคัญคือ “โค้ดมาจากไหน?” โค้ดถูกสร้างโดยคน คนเหล่านี้มาจากไหน? อาจเป็นบริษัท อาจเป็นบุคคล เช่น โค้ดของ Linux kernel 75% มาจากการมีส่วนร่วมของบริษัท 25% มาจากบุคคล โครงการโอเพนซอร์สหลายโครงการมาจากการมีส่วนร่วมของบุคคล ดังนั้นต้องเข้าใจว่าระบบนิเวศและการวางตำแหน่งผลิตภัณฑ์ของคุณคืออะไร ประเมินว่าต้องนำเข้านักพัฒนาประเภทใดเพื่อสร้างชุมชน ให้ชุมชนทำงานร่วมกับบริษัท ระบบนิเวศของคุณจึงจะประสบความสำเร็จได้ กลายเป็นอาวุธของบริษัท ดังนั้น ผมคิดว่านี่เป็นคำจบที่สำคัญมาก

ผมเชื่อว่าเพื่อนๆ ในที่นี้สนใจการสร้างระบบนิเวศนักพัฒนาและการดำเนินงานชุมชน วันนี้เนื่องจากเวลาจำกัด ผมสามารถร้องเพลงเดี่ยวได้ แม้หลังประชุมเราอาจไม่ได้คุยกับทุกคน แต่ผมหวังว่าจะได้สื่อสารกับทุกคนอย่างต่อเนื่อง ทางซ้ายเป็น WeChat Official Account ของชุมชนนักพัฒนาหัวเว่ย ทางขวาเป็น WeChat ส่วนตัวของผม นอกจากนี้ ถ้าในที่มีพันธมิตร ISV ของหัวเว่ย หรือคุณมีโครงการที่อาจร่วมมือ กรุณาติดต่อเรา จุดประสงค์ของระบบนิเวศนักพัฒนา แน่นอนต้องแปลงเป็นผลประโยชน์ร่วมกันของบริษัทและพันธมิตร การบรรยายวันนี้ดีใจมากที่ทุกคนฟังจนจบ ขอบคุณอีกครั้งครับ
--
หัวข้อ: การสร้างระบบนิเวศนักพัฒนา การดำเนินงานและธรรมาภิบาลชุมชนโอเพนซอร์ส
ข้อมูลผู้บรรยาย: หลินหลี่ฉiang
ตำแหน่ง: ผู้จัดการดำเนินงานชุมชนนักพัฒนาหัวเว่ย
การประชุม: Global Cloud Computing Open Source Summit
วันที่: 19-20 เมษายน 2017
สถานที่: Beijing International Convention Center
โปรดระบุแหล่งที่มา: ความสัมพันธ์นักพัฒนา »