ฉันถูกถามมากเกินไปจากเพื่อนและรุ่นน้องให้บอกพวกเขาว่าโอเพ่นซอร์สคืออะไรและจะเริ่มต้นอย่างไร ดังนั้นฉันจึงคิดว่าควรเขียนประเด็นเหล่านั้นไว้ที่นี่เพื่อเป็นข้อมูลอ้างอิงจะดีกว่า มันตอบคำถามทั่วไปบางข้อที่เกี่ยวข้องกับโอเพ่นซอร์สและฤดูร้อนของโค้ดของ Google

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

ในที่นี้ฉันจะพูดถึงว่ามีโปรแกรมในเครือของ Google Summer of Code เช่น "Outreachy" ซึ่งเป็น "การฝึกงานสามเดือนสำหรับผู้คนจากกลุ่มที่มักจะไม่ค่อยมีบทบาทในด้านเทคโนโลยี" และฉันคิดว่าประเด็นเหล่านี้ส่วนใหญ่ใช้ได้กับ Outreachy ด้วยเช่นกัน

หากคุณพบว่ามีจุดใดที่ขัดแย้งกับคำแนะนำอื่น ๆ ให้ไปหาผู้ที่มีประสบการณ์มากกว่า

เกี่ยวกับฉัน

ฉันมีประสบการณ์เกือบ 8 เดือน ณ เดือนมิถุนายน 2018 (ในทางเทคนิคแล้วประมาณหนึ่งปี) ในโลก OSS และในช่วงเวลานี้ ฉันได้เรียนรู้การพัฒนาเว็บตั้งแต่เริ่มต้น ได้รับคำแนะนำใน Google Code-in และได้รับเลือกใน Google ฤดูร้อนของ Code'18 สำหรับ Zulip (กำลังดำเนินการอยู่) และคุณสามารถดู การมีส่วนร่วมของฉัน (ไม่ได้คุยโม้ แค่พิสูจน์ความน่าเชื่อถือของฉัน)

ตัวจัดการ GitHub ของฉัน: https://github.com/shubhamdhama
องค์กรของฉัน: https://github.com/zulip

ข้อกำหนดเบื้องต้นในการเริ่มต้นใช้งานโอเพ่นซอร์ส

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

จะเลือกองค์กรอย่างไร?

หากคุณคำนึงถึง GSoC อยู่แล้ว ก็ง่ายมาก เพียงไปที่พอร์ทัลองค์กรของ GSoC แล้วเลือกองค์กรที่ตรงกับความสนใจของคุณ นี่เป็นคำเตือนเล็กๆ น้อยๆ องค์กรที่คุณอาจเลือกในตอนแรกไม่จำเป็นต้องเป็นองค์กรสุดท้ายของคุณเสมอไป ฉันเปลี่ยนองค์กรหลายแห่งและลงเอยด้วย Zulip เพราะมันตรงกับความสนใจส่วนตัวของฉัน และชุมชนก็ให้การต้อนรับอย่างอบอุ่นสำหรับผู้เริ่มต้น ดังนั้นเพียงไปที่ พอร์ทัลองค์กร GSoC และค้นหาองค์กรของคุณ

จะเริ่มบริจาคได้อย่างไร?

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

ตอนนี้มาถึงการมีส่วนร่วมจริงแล้ว ฉันคิดว่ามันง่าย เพียงไปที่ปัญหาที่มีป้ายกำกับ good first issue หรือ for first timers จากเครื่องมือติดตามปัญหาของโปรเจ็กต์นั้น ตามตัวติดตามปัญหา ฉันหมายถึงสถานที่ที่คุณสามารถค้นหาจุดบกพร่อง คำขอคุณสมบัติ และคำขอปรับปรุงของโครงการนั้น ๆ เช่น GitHub, Bugzilla เป็นต้น

เคล็ดลับเบ็ดเตล็ด:

  • อย่าสนับสนุนโครงการเพื่อรับการคัดเลือกในโปรแกรมใด ๆ คิดเสมอว่าคุณเป็นส่วนสำคัญขององค์กรนั้น มีส่วนร่วมเหมือนคุณกำลังส่งโค้ดในงานเต็มเวลา
  • ทุกองค์กรมีความแตกต่างกัน ทุกองค์กรมีเกณฑ์ที่แตกต่างกันในการเลือกผู้ที่มีศักยภาพในการสนับสนุนโปรแกรมใดๆ เช่น GSoC บางคนชอบข้อเสนอที่ดีและบางคนชอบบันทึกการมีส่วนร่วมที่ดี (อาจอยู่ในองค์กรเดียวกันหรือต่างกันก็ได้) แต่ส่วนใหญ่ชอบทั้งสองอย่าง แต่ท้ายที่สุดแล้ว โอกาสในการได้รับคัดเลือกในองค์กรใดๆ ก็แทบจะเท่ากัน

ฉันขอแนะนำอย่างยิ่งให้สนับสนุนองค์กรที่คุณต้องการดำเนินการโดยเร็วที่สุด เนื่องจากสิ่งนี้จะบอกคุณว่าโอเพ่นซอร์สเป็นประเภทของคุณหรือไม่ เพราะไม่ใช่ทุกคนจะพบว่าโอเพ่นซอร์สน่าตื่นเต้นเท่าที่ควร โดยเฉพาะอย่างยิ่งเมื่อคุณเปลี่ยนจากการเขียนโปรแกรมของคู่แข่ง การมีส่วนร่วมในโครงการโอเพ่นซอร์สถือเป็นข้อดีต่ออาชีพการงานของคุณ แต่ยังไม่ถึงจุดสิ้นสุดของโลก มีหลายสิ่งที่คุณสามารถทำได้ เช่น การสร้างโครงการส่วนตัว การเข้าร่วมแฮ็กกาธอน การแข่งขัน การวิจัย ฯลฯ ดังนั้นอย่าเพิ่งหดหู่ใจ หากคุณไม่พบว่าโอเพ่นซอร์สน่าตื่นเต้น