Image by : opensource.com
โดย Matt Micene
ผมกลับมาจากการประชุม OSCON ของปีนี้ และได้เติมไฟให้ตัวเองใหม่ที่จะทำโปรเจกต์โอเพ่นซอร์สต่อไป แต่ระยะหลังๆนี้ผมมักจะเป็นผู้สนับสนุนส่งเสริมมากกว่าที่จะเป็นผู้สร้างคุณประโยชน์จริงๆจังๆต่อวงการโอเพ่นซอร์ส ดังนั้นผมจึงมาคิดว่าจะทำอะไรต่อไป สมัยก่อนตอนที่ผมยังมีโปรเจกต์ต่างๆ การเดินทางเริ่มจากการเป็นผู้ใช้ก่อน แล้วมาเป็นกูรูในฟอรั่มต่างๆ แล้วจบลงที่การเป็นผู้พัฒนาและสร้างคุณประโยชน์ต่อวงการ นี่เป็นเส้นทางที่น่าประทับใจเลยทีเดียว แต่หาหว่าคุณเองอยากจะกระโดดจากจุดหนึ่งไปอีกจุดหนึ่ง จะต้องทำอย่างไรบ้าง
เนื่องจากแรงบันดาลใจไม่ใช่อยู่ๆจะหล่นลงมาจากฟากฟ้า ผมจึงเริ่มหาข้อมูลในเว็บไซต์สำหรับแหล่งที่จะเริ่มทำงานเกี่ยวกับโอเพ่นซอร์ส ผมได้ข้อมูลจาก Opensource.com, GitHub, และ Smart Bear และอื่นๆอีก ซึ่งน่ามหัศจรรย์ใจเลยทีเดียวว่ามีหลายวิธีการเหลือเกินที่จะทำโปรเจกต์ที่มีอยู่ นอกเหนือจากการเขียนและรวบรวมโค้ด ลังจากทำการค้นคว้าในเบื้องต้นแล้วว่าคุณอยากจะทำประโยชน์หรืออุทิศตนในลักษณะไหนต่อโอเพ่นซอร์สประเภทใด ก็ลองหาเวลาสักนิดว่าโปรเจกต์ไหนจะเป็นประโยชน์ต่อคุณมากที่สุด แหล่งที่ดีในการค้นหาข้อมูลแหล่งหนึ่งคือ OpenHatch ซึ่งเป็นเว็บไซต์เหมือนกับบริษัทจัดหาคู่ ที่ช่วยจับคู่ศักยภาพของคุณกับเป้าหมายที่ต้องการ
เมื่อมองไปยังหลายๆโปรเจกต์แล้ว ก็ให้เริ่มมองเจาะที่ชุมชนผู้ใช้ที่เกี่ยวข้องกับโปรเจกต์ที่หมายตาไว้ ขอให้แน่ใจก่อนว่าชุมชนผู้ใช้นั้นๆมีการดำเนินการอย่างแข็งขันและไม่อับจน เพราะไม่มีอะไรจะแย่ไปกว่าการลงทุนลงแรงเสียเวลาไปแต่โปรเจกต์ต่างๆกลับซบเซาไม่เดินหน้า ดูว่าชุมชนที่เกี่ยวข้องกระตือรือร้นแข็งขันแค่ไหน มีการเผยแพร่แสดงสถิติของ repo หรือไม่ เพราะตราบเท่าที่ชุมชนมีความแข็งขัน แม้แต่ทีมเล็กๆก็สามารถอยู่รอดได้สูง ชุมชนเหล่านี้เสาะหาต้นตอปัญหาต่างๆอย่างไร บอกไว้หรือไม่ว่าปัญหาไหนผู้เริ่มต้นสามารถแก้ไขได้บ้าง มีเอกสารที่ระบุไว้ชัดเจนถึงบทบาทหน้าที่หรือไม่ หากชุมชนที่พิจารณามีความจริงใจมุ่งมั่นที่จะดึงดูดสมาชิก แม้แต่คนไร้ประสบการณ์ก็จะได้รับการสนับสนุนช่วยเหลือ ดูว่ามีบัญชีรายชื่อที่อยู่หรือไม่ มีกลุ่ม Google หรือไม่ ฟอรั่มที่เกี่ยวข้องล่ะมีหรือไม่ คุณรู้สึกอย่างไรบ้างต่อชุมชนก่อนที่จะเข้าไปเป็นส่วนหนึ่งจริงๆ
ลองเข้าไปสัมผัสกับชุมชนผู้ใช้ ดูว่าสิ่งต่างๆดำเนินไปอย่างไร เมื่อมีปัญหาหรือคำถาม ได้รับการตอบรับหรือแก้ไขหรือไม่ ในระยะเริ่มต้น อาจจะดูเคอะเขินและประหม่าบ้าง และหากคุณรีบกระโจนเข้าหาชุมชนที่มีวิธีการให้คำแนะนำปรึกษาไม่เป็นมืออาชีพเท่าไหร่ ก็อาจจะตกที่นั่งลำบากได้
หลังจากที่ผมประเมินชุมชนผู้ใช้แล้ว ผมก็ต้องประเมินตัวเอง ผมลองพยายามวางอัตตาของตัวเองลง ครุ่นคิดเกี่ยวกับทักษะความสามารถของตนว่ามีอะไรบ้าง และอยากได้อะไรจากการทำงานโปรเจกต์นั้นๆ ผมพร้อมจะทุ่มเทเวลามากแค่ไหนในการลงทุนลงแรง ให้คุณจริงใจต่อตัวเองให้มากที่สุดในประเด็นเหล่านี้ แล้วคุณจะมีโอกาสหาโปรเจกต์ที่คุณคู่ควร คุณจะต้องตอบคำถามที่กล่าวมานี้ให้ได้ก่อนที่จะกระโดดเข้าไปย่างเต็มตัวในชุมชนที่แข็งขันและดูมีความหวัง
ในแง่ของเวลานั้น การจะมาเป็นผู้อุทิศตนอย่างแข็งขันและประสบความสำเร็จได้นั้นก็กินเวลาว่างในชีวิตคุณไปมากพอสมควร ดังนั้น ขอให้แน่ใจว่าจะวางแผนใช้เวลามากน้อยเพียงใด นอกจากนี้ การเสียสละเวลาว่างนั้นก็บั่นทอนสุขภาพจิตไม่ใช่น้อย เพราะทำให้คุณรู้สึกว่าต้องทำงานอยู่ตลอดเวลา โดยเฉพาะอย่างยิ่งเมื่อคุณต้องใช้ทักษะต่างๆที่คุณใช้ในที่ทำงานด้วย ลองพยายามทำเหมือนกับว่าโปรเจกต์เป็นเหมือนงานอดิเรกใหม่ของคุณ ซึ่งอาจจะกินพื้นที่ไปทั่วหรือไม่ก็ได้ แต่อย่างน้อยคุณต้องพร้อมที่จะเสียสละเวลาหลายชั่วโมงในแต่ละสัปดาห์ มิฉะนั้น ก็จะไม่คุ้มที่จะทำ คุณยังต้องประเมินดูดีๆว่างานอดิเรกใหม่เนี่ยจะใช้เวลานานแค่ไหน ถ้ากำหนดงบประมาณไว้ที่ 4 ชั่วโมงต่อสัปดาห์แต่ตัวคุณต้องใช้เวลา 6-8 ชั่วโมงต่อสัปดาห์ที่จะตื่นมานั่งรอ IRC นี่แปลว่าคุณไม่มีเวลา และการจับคู่กับงานครั้งนี้มีแต่จะบั่นทอนแรงกายและความสุขของคุณ
หากคุณอยากจะเข้ามาเกี่ยวข้องกับโปรเจกต์โอเพ่นซอร์สในเวลาทำงานประจำ ลองคุยกับหัวหน้าคุณดูก่อน ต้องให้แน่ใจว่าจะไม่มีผลประโยชน์ทับซ้อนกับนายจ้างปัจจุบัน ซึ่งต้องบอกเป็นนัยๆกับนายจ้างว่าอยากจะเรียนรู้ทักษะใหม่หรืออยากจะฝึกฝนสิ่งที่ทำอยู่ให้เฉียบคมยิ่งขึ้น การจะพยายามโน้มน้าวให้นายจ้างของคุณยินยอมให้คุณเอาเวลาอันมีค่าของงานประจำ (คุณรับเงินเดือนจากเขานะ อย่าลืมสิ) มาทำโปรเจกต์โอเพ่นซอร์สนั้นไม่ใช่เรื่องยากนัก คุณเพียงต้องรู้จักการโน้มน้าว ว่าสิ่งที่คุณจะทำมันจะเป็นประโยชน์ต่องานประจำอย่างไรบ้าง เป็นการพัฒนาทักษะบุคคลากรหรือไม่ ลองมองดูภาพใหญ่ แต่จำเอาไว้ว่าคุณกำลังเจรจาต่อรองแลกเปลี่ยนกับนายจ้าง เพื่อที่คุณจะได้วางกรอบการสนทนาโน้มน้าวได้อย่างเหมาะสม
สำหรับกรณีของบริษัทผมนั้น เจ้านายและผมได้ตกลงกำหนดเวลาที่ผมจะอุทิศให้กับโปรเจกต์ การที่กำหนดให้ชัดเจนไปเลยว่าจะอุทิศเวลาส่วนหนึ่งให้กับโปรเจกต์ ช่วยให้ผมและเจ้านายเข้าใจถึงเวลาที่จะใช้ และยังเข้าใจผลกระทบที่จะได้รับด้วย ผมยังมีความยืดหยุ่นที่จะให้ความสำคัญกับโปรเจกต์ผมก่อนในกรณีที่ใกล้จะถึงเดดไลน์ ผมยังใช้มาตรฐานเหล่านี้กับทีมของผมมาจนถึงทุกวันนี้หากผมต้องการหลบไปหางานส่วนตัวสักพัก โดยไม่ได้หายหน้าหายตาไปเสียทีเดียว
หลังจากที่ได้ร่วมตกลงความคาดหวังของผมแล้ว เจ้านายของผมก็สงสัยว่าผมกำลังทำโปรเจกต์อะไรอยู่ นี่ผมจะทำอะไรกันแน่ การที่ผมอุทิศตนให้กับโปรเจกต์ส่วนตัวจะช่วยกำหนดทิศทางยุทธศาสตร์และพันธกิจของบริษัทได้อย่างไรบ้าง พฤติกรรมและบุคลิกของผมที่แสดงออกต่อชุมชนโอเพ่นซอร์ส จะสะท้อนให้เห็นภาพลักษณ์องค์กรนี้อย่างไร ยากอยู่เอาการที่จะแยกตัวตนของคุณที่เป็นธุรกิจประจำออกจากตัวตนบนโลกออนไลน์ที่ทำงานส่วนตัว ซึ่งเป็นประเด็นที่ค่อนข้างอ่อนไหวสำหรับนายจ้างว่าจะมองเห็นภาพลักษณ์คุณในแบบไหน ทั้งหมดนี้ขอให้คุณถกประเด็นกับนายจ้างให้ละเอียดชัดเจน และอย่าลืมพูดถึงประเด็นทรัพย์สินทางปัญญาด้วย
บ่อยครั้งเลย ช้อกำหนดของการว่าจ้างจะกำหนดว่าบริษัทมีสิทธิ์เหนือทุกอย่างที่คุณทำในเวลาของบริษัทหรือด้วยอุปกรณ์เครื่องไม้เครื่องมือของบริษัท แต่โอเพ่นซอร์สบางโปรเจกต์นั้นจำเป็นต้องอาศัยการมอบลิขสิทธิ์จากผู้ทำโปรเจกต์ไปที่ตัวโปรเจกต์ คำถามที่ต้องตระหนักเอาไว้คือ มีกระบวนการตรวจสอบการแจกจ่ายโค้ดโอเพ่นซอร์สหรือไม่ คุณเองเป็นตัวตั้งตัวดีหรือไม่ หัวหน้าคุณทำได้หรือไม่ หรือจะต้องให้มีที่ปรึกษากลางมาพิจารณาตรวจสอบโปรเจกต์ การใช้อีเมลเพียงพอหรือไม่ หากคุณทำงานในหน่วยงานของรัฐ ก็น่าจะมีนโยบายและหน่วยงานที่ทำหน้าที่รับผิดชอบเกี่ยวกับประเด็นเหล่านี้
ในหน้าที่แต่ละวันของผม ผมต้องเกี่ยวข้องกับสถาปัตยกรรมระบบขององค์กร โดยใช้ cloud การจัดการระบบ ระบบปฏิบัติการต่างๆ ใช้ทุกอย่างอย่างผู้เชี่ยวชาญ ไม่ได้ใช้อย่างผู้พัฒนาเริ่มต้นแต่อย่างใด ดังนั้นผมก็สามารถช่วยโปรเจกต์ในแง่ของการออกแบบระบบภายในและการบำรุงรักษาได้ ผมใช้ Linux ทุกวันและยังเขียน script อยู่เรื่อยๆ ดังนั้นทักษะของผมก็ค่อนข้างยอดเยี่ยมเลยทีเดียว ผมไม่ถึงกับเป็นเลิศ แต่ก็จัดได้ว่าดีเลยทีเดียว และจากมุมมองของการเขียนโปรแกรมแบบปกติ ทักษะ Perl และ TCL ของผมนี่เก่าเก็บมาก ถึงขั้นขึ้นสนิมเลยก็ว่าได้ สำหรับ Python นี่ผมก็โอเค นอกจากนี้ผมก็เขียน มากด้วย ทำพรีเซนเทชั่น หลักสูตรอบรม บล็อกต่างๆ คู่มืออ้างอิงเกี่ยวกับสถาปัตยกรรมระบบที่มี workflow แสดงไว้ด้วย ฯลฯ การเขียนเอกสารคู่มือเพื่อแนะนำขั้นตอน ล้วนเป็นวิธีที่เป็นประโยชน์ที่สามารถช่วยชุมชนโอเพ่นซอร์สได้
โอเพ่นซอร์สมีชื่อเสียงในด้านของการช่วย “เกาในจุดที่คัน” ซึ่งก็จริงอยู่ในแง่หนึ่ง การเปรียบเปรยดังกล่าวมีที่มาจาก การทำงานแบบอาสาสมัครของโปรเจกต์โอเพ่นซอร์สต่างๆ การที่จะยังคงทำประโยชน์ให้กับชุมชนได้เรื่อยๆนั้น จะต้องมีความสนใจอยู่ตลอดเวลา ระดับของแรงเสียดทานระหว่างบุคคลในแต่ละโปรเจกต์ก็เป็นส่วนสำคัญ ดังนั้นเหตุผลว่าเหตุใดผมอยากจะช่วยเหลือจึงมีความสำคัญพอๆกับผมจะช่วยเหลือได้อย่างไร เหตุผลง่ายๆประการหนึ่งก็คือผมอยากโด่งดังเป็นที่ยอมรับ ผมอยากเป็นคนที่เดินไปยังงานสัมมนาต่างๆแล้วทุกคนก็กล่าวขวัญถึงอย่างชื่นชม การเป็นที่ยอมรับกล่าวถึง นั้นเป็นสิ่งที่ดี ผมเชื่อในโอเพ่นซอร์ส และวิธีการที่ดีที่สุดที่จะส่งเสริมก็คือทำอะไรบางอย่างเกี่ยวกับโอเพ่นซอร์ส เมื่อพบปะผู้ฟัง ผมก็กล่าวถึงสิ่งต่างๆอันจะเป็นประโยชน์เกี่ยวกับโอเพ่นซอร์ส แต่ท้ายที่สุดการอุทิศตนทำประโยชน์อะไรบางอย่างนี้แหละคือสิ่งสำคัญ โดยเฉพาะอย่างยิ่งในยามที่คุณเจอโปรเจกต์ที่คุณศรัทธา ทุกโปรเจกต์จะไปรอดหรือไม่ขึ้นอยู่กับผู้ทำประโยชน์อุทิศตนเหล่านี้ ไม่ว่าจะมีผู้ใช้มากน้อยเพียงใด หรือได้รับการกล่าวถึงในข่าวมากน้อยเพียงใด นอกจากนี้แล้ว ผมอุทิศตนให้กับโอเพ่นซอร์สเพราะผมอยากเรียนรู้และฝึกฝนทักษะบางอย่างให้แหลมคมยิ่งขึ้น ผมเรียนรู้จากการลงมือปฏิบัติ และถ้าผมต้องกล่าวอะไรบางอย่างออกไปให้สวยหรูดูดีต่อโอเพ่นซอร์สนิดหนึ่ง ผมก็ต้องทำ หากผมอยากชำนาญใน Python ผมก็ต้องเขียน Python มากขึ้น
หวังว่าตอนนี้คุณจะได้แนวคิดว่าควรจะเริ่มมองหาโปรเจกต์โอเพ่นซอร์สอย่างไร ในส่วนหนึ่ง มันเป็นเรื่องของชุมชนผู้ใช้ที่แข็งขัน แต่ที่สำคัญไม่แพ้กัน คือการที่คุณแน่ใจว่ามีศักยภาพแค่ไหนและอยากจะอุทิศตนทำประโยชน์ในด้านไหน
We have 143 guests and no members online