ฉันจะหาโครงการโอเพ่นซอร์สที่ดีเพื่อเข้าร่วมได้อย่างไร [ปิด]


152

ฉันเพิ่งเริ่มทำงานเมื่อปีที่แล้วและฉันต้องการเข้าร่วมโครงการโอเพ่นซอร์สด้วยเหตุผลเดียวกันกับคนอื่น ๆ : ช่วยสร้างสิ่งที่มีประโยชน์และพัฒนาทักษะของฉันต่อไป

ปัญหาของฉันคือฉันไม่ทราบวิธีการค้นหาโครงการที่ฉันเหมาะสม

ฉันจะหาโครงการที่เป็นมิตรกับผู้เริ่มต้นได้อย่างไร ฉันควรค้นหาคุณลักษณะใด อะไรคือสัญญาณเตือนว่าโครงการอาจไม่เหมาะสม? มีเครื่องมือใดบ้างที่ช่วยจับคู่ผู้คนกับโครงการโอเพ่นซอร์ส

มีคำถามที่คล้ายกันที่นี่แต่คำถามนั้นเกี่ยวกับการจ้างงานและ จำกัด อยู่ที่ PHP / Drupal


9
เยี่ยมมากฉันเพิ่งดู ArsTechnica และเห็นคำถามนี้เป็นบทความ นี่คือลิงค์ arstechnica.com/business/guides/2012/03/…
Evan Plaice

คำตอบ:


111

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

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

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

มันเป็นกระบวนการอันล้ำค่าที่ฉันเรียนรู้มากมายจาก:

  • เมื่อฉันเริ่มฉันไม่รู้ว่าจะใช้ Git ได้อย่างไรในตอนท้ายฉันสามารถสร้างสาขาการติดตามระยะไกลได้อย่างเชี่ยวชาญและผสานหรือรีบูทพวกเขาเข้าสาขาหลักโดยไม่ต้องเหนื่อย
  • ฉันเริ่มใน VS 2008 และลงเอยด้วยการโยกย้ายไปยัง Linux และ Monodevelop เพื่อทำงานเกี่ยวกับการเขียนโค้ด (เพราะ VS เป็น unicode ที่ปัญญาอ่อนและการสิ้นสุดของบรรทัดเป็นความเจ็บปวดในคอมไพล์) ปรากฎว่ามีไม่มากที่คุณไม่สามารถทำใน * ระวังที่คุณสามารถทำได้ใน * dows
  • ฉันไม่เคยทำการทดสอบหน่วยใด ๆ มาก่อนเลยนูนิทเป็นชิ้นส่วนของเค้กที่ใช้และการเขียนการทดสอบหน่วยเป็นเรื่องเบื้องต้น
  • ฉันต้องเรียนรู้ที่จะกลืนลิ้นของฉันและฟังและฝึกความอดทน ไม่มีจุดยืนที่ชัดเจนในตำแหน่งของคุณในโครงการโอเพ่นซอร์สเพราะทุกคนที่เกี่ยวข้องมีความรู้ (อาจมากกว่าตัวคุณเอง) และสามารถยอมรับ / ปฏิเสธความคิดของคุณตามเนื้อหาที่ไม่ได้จัดส่ง เป็นเรื่องที่ถ่อมและให้รางวัลอย่างมากในเวลาเดียวกัน
  • เพียงแค่มีสายตาของนักพัฒนาฝีมือคนอื่น ๆ บนฐานขนาดใหญ่ของรหัสของฉันชี้ให้เห็นข้อบกพร่องในสไตล์ของฉันที่ฉันไม่เคยพิจารณามาก่อน (เช่นเดียวกับที่ฉันชี้ข้อบกพร่องในรหัสของเขา) สำหรับฉันฉันเรียนรู้ว่าการกำหนดค่าคงที่ง่ายกว่า / ดีกว่าการใช้ตัวเลขเวทมนต์จำนวนมากพร้อมการแสดงความคิดเห็นอย่างละเอียด

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

หากคุณต้องการให้เท้าเปียก: ค้นหาโครงการที่คุณใช้อยู่แล้ว โคลนที่เก็บ; และเริ่มดูว่าคุณสามารถแก้ไขข้อบกพร่องบางอย่างและ / หรือเพิ่มการทดสอบหน่วยบางอย่าง ดูเหมือนว่าข่มขู่ที่จะมองไปที่ codebase ของคนอื่นด้วยสายตาที่สดใส แต่มันเป็นทักษะที่มีค่าอย่างยิ่งในการเรียนรู้ ส่งแพทช์ คุณสามารถคาดหวังว่าโค้ดของคุณจะได้รับการตรวจสอบอย่างใกล้ชิดในตอนแรก ไม่ต้องกังวลมันเป็นเรื่องปกติของกระบวนการที่จะได้รับความไว้วางใจจากผู้ดูแลโครงการ

หลังจากสร้างฐานของการทำบุญกับผู้ดูแลโครงการเริ่มต้นค้นหาความรับผิดชอบเพิ่มเติมเช่นเสนอคุณสมบัติใหม่หรือขอให้มอบหมายให้ดำเนินการตามคำขอคุณสมบัติ

หากคุณไม่สามารถหาโครงการที่มีอยู่แล้วในหนึ่งในเครือข่ายที่เก็บข้อมูลโอเพ่นซอร์สหลัก (github, sourceforge, google code) ให้นึกถึงแอปที่คุณต้องการใช้ที่ยังไม่มีอยู่และเริ่มต้นด้วยตัวคุณเอง

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

ปรับปรุง:

ฉันเพิ่งคิดเกี่ยวกับมันและตระหนักว่าฉันไม่ได้กังวลที่จะพูดถึงโครงการที่คำตอบของฉันคือการอ้างอิง สำหรับผู้ที่ต้องการที่จะรู้ว่ามันเป็นSharpPcap Chris Morgan ผู้พัฒนานำเป็นมืออาชีพมากและตรงประเด็น เขาทำงานที่แย่มากในการจัดการโครงการและสอนฉันมากมายเกี่ยวกับสิ่งที่จะทำให้โครงการ OSS เติบโตขึ้น

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


คุณสามารถแนะนำเว็บไซต์ยอดนิยมในเรื่องนี้ได้ไหม?
Aditya P

2
@AdityaGameProgrammer ฉันจะให้ความสำคัญกับการหาโครงการที่เฉพาะเจาะจงมากกว่าที่จะไม่โฮสต์ไซต์โอเพนซอร์ส ไซต์โฮสติ้งเป็นเพียงจุดเริ่มต้นสำหรับโครงการโอเพนซอร์สและบางโครงการจะย้ายไปยังไซต์อื่นหากพบคุณลักษณะที่ดีกว่า (เช่นสิทธิ์ใช้งานเฉพาะที่รองรับการสนับสนุนการควบคุมเวอร์ชันที่ดีกว่าตัวติดตามบั๊กที่ดีขึ้น ฯลฯ ... ) ฉันชื่อไม่กี่แล้ว IMHO, github, โค้ด Google และ sourceforge เป็นที่นิยมมากที่สุด Launchpad (ใช้การควบคุมเวอร์ชันบาซ่าร์) เป็นที่ที่คุณจะได้พบกับการพัฒนา Ububtu / linux ส่วนใหญ่
Evan Plaice

2
@AdityaGameProgrammer (ต่อ) Github, sourceforge และรหัส Google เป็นกลุ่มโครงการจำนวนมาก เนื่องจากแหล่งที่มาของฟอร์จูนนั้นใช้เวลานานกว่านี้คุณจึงอาจพบว่าโครงการที่ตายแล้วหรือกำพร้าจำนวนมาก การหาโครงการเพื่อเข้าร่วมนั้นง่ายกว่ามากหากคุณใช้เวลาพิจารณาสิ่งที่คุณสนใจก่อน ข้อยกเว้นคือหากคุณต้องการโฮสต์โครงการของคุณเอง จากนั้นใช้เวลาในการซื้อของเพื่อรับฟังก์ชั่นที่เหมาะสมกับขั้นตอนการพัฒนาตามปกติของคุณ
Evan Plaice

ขอบคุณ. ความพยายามของฉันก่อนหน้านี้ในการค้นหาหนึ่งบน sourceforge นำฉันไปสู่โครงการที่ตายแล้ว / กำพร้าจำนวนมาก
Aditya P

28

นี่คือสิ่งที่ฉันแนะนำให้ทำเพื่อหาคู่ที่สมบูรณ์แบบของคุณ:

  1. หากคุณมีโครงการโอเพนซอร์ซที่คุณได้ใช้ความรู้และใส่ใจอยู่แล้วควรเป็นผู้สมัครคนแรกที่จะลอง มิฉะนั้นคิดเกี่ยวกับสิ่งที่คุณจะชอบที่จะทำโดยทั่วไปและการค้นหาสำหรับโครงการในพื้นที่นี้

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

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

คิดออก: คุณสนุกกับการแขวนอยู่ที่นั่นหรือเป็นลากสำหรับคุณ รู้สึกเหมือนโครงการนี้มีชุมชนที่ดีและคึกคักหรือมันกำลังจะตายหรือไม่? ผู้คนหลักดูเหมือนจะสนับสนุนและให้คำปรึกษาแก่ผู้มาใหม่หรือไม่

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

ความคิดเพิ่มเติมเล็กน้อย:

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

หากคุณชอบโครงการ แต่รู้สึกว่าถูกคุกคามด้วยขนาดความซับซ้อนหรือข้อกำหนดด้านคุณภาพของรหัสลองพิจารณาเริ่มต้นจากบทบาทสนับสนุนเช่นการทดสอบการบำรุงรักษาเอกสารหรือการตรวจสอบรายงานข้อผิดพลาด หากคุณถามในรายการส่งจดหมายของโครงการว่าต้องการความช่วยเหลือมากที่สุดในขณะนี้พวกเขายินดีที่จะแนะนำคุณที่นั่น :)

วิธีนี้คุณจะได้เรียนรู้โครงการและสร้างชื่อเสียงของคุณที่นั่นในขณะที่มีส่วนร่วมในโครงการมากกว่าที่คุณจะเริ่มส่งแพตช์มาตรฐานที่จะถูกปฏิเสธหลายครั้งจนกว่าพวกเขาจะพร้อม

สิ่งสุดท้ายและสิ่งที่สำคัญที่สุด: ถ้าคุณถูกเผาในที่แห่งเดียว อย่ายอมแพ้

หวังว่าจะช่วย


2
+1 สำหรับ "พิจารณาเริ่มจากบทบาทสนับสนุน" การทดสอบการเขียนนั้นง่ายมากและการทดสอบอย่างใกล้ชิดนั้นให้ความคิดที่ดีเกี่ยวกับรหัสที่พยายามจะทำให้สำเร็จ เอกสารเป็นวิธีที่ดีในการทำความเข้าใจ 'ภาพใหญ่ขึ้น' และการตรวจสอบข้อบกพร่องเป็นจุดกีดขวางทางเข้าที่ดีในการทำลายน้ำแข็ง การทำงานกับสิ่งที่นักพัฒนามักละเลยแสดงให้เห็นว่าคุณให้ความสำคัญกับการปรับปรุงโครงการและการมีส่วนร่วมของคุณไม่ได้เป็นเพียงการขับเคลื่อนด้วยอัตตา ปัญหาอัตตาสามารถทำให้ชีวิตยากขึ้นสำหรับผู้ดูแลโครงการดังนั้นพวกเขาจึงต้องระวังสิ่งนั้น
Evan Plaice

9

ฉันจะขอแนะนำว่าคุณจะพบโครงการที่มาเปิดที่มีความจริงใจของคุณที่น่าสนใจและที่คุณแข็งขันใช้

เหตุผลนั้นง่าย: มันทำให้เกิดความแตกต่างระหว่างงานบ้านและงานอดิเรก

ลองดูที่คอมพิวเตอร์ของคุณ คุณใช้ซอฟต์แวร์ประเภทใดใน Open Source การคาดเดาจะเป็น Chrome หรือ Firefox หรืออาจเป็น Open Office หรือไคลเอนต์ Instant Messenger พวกเขาสมบูรณ์แบบหรือมีเพียงบางสิ่งเล็ก ๆ ที่คุณต้องการเปลี่ยนถ้าคุณทำได้?

ถ้ามีตอนนี้เป็นเวลาที่จะทำอะไรกับมัน


8

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

นอกจากนี้อย่าเพิ่งแฮ็คเพื่อประโยชน์ในการ 'เกี่ยวข้อง' 95% ของแพทช์ของฉันไปที่ลินุกซ์จะไม่เคยเห็นแสงของวันฉันรู้ว่าสำหรับแน่ใจว่าไม่มีใครต้องการพวกเขา แต่ผมและผมอาจจะถูกบังคับให้ต้องได้รับการประเมินผลทางจิตเวชอื่น ๆ ถ้าแฮกเกอร์เคอร์เนลอำนาจที่เคยเห็นพวกเขา แต่ฉันยังคงเพลิดเพลินกับการใช้งานของฉันpiglatin_printk()ซึ่งเริ่มเป็น 1 เมษายนปิดปากเมื่อหลายปีก่อน :)

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

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

สิ่งอื่น ๆ ที่ช่วยให้ทำงานกับ บริษัท ที่เป็นมิตรเปิด บริษัท ของฉันใช้ Xen อย่างกว้างขวางดังนั้นพวกเขาจึงไม่มีปัญหากับฉันในการหาจุดบกพร่องที่น่าสนใจและแก้ไขพวกเขาเนื่องจากเราต้องทำเช่นนั้น พวกเขายังไม่รังเกียจพนักงานที่มีส่วนร่วมในสิ่งต่าง ๆ เช่น RFC และร่างข้อกำหนดเนื่องจากเราจะใช้ผลลัพธ์ในที่สุด


+1 piglatin_printk () หรือไม่ ฟังดูเฮฮา ฉันต้องการที่จะเห็นว่าในการดำเนินการ ไม่แปลกใจเลยว่าส่วนใหญ่ของแพตช์ Linux Kernel ของคุณถูกปฏิเสธไม่มีความสนุก / ความคิดสร้างสรรค์ในโครงการที่สำคัญ โชคดีที่มีโครงการขนาดเล็กจำนวนมากที่มีอุปสรรคน้อยกว่าในการรับรหัส - แม้ว่าการมีส่วนร่วมจะต้องทำงานบางอย่างก่อนที่จะมุ่งมั่น
Evan Plaice

1
@EvanPlaice พวกเขาไม่ได้ถูกปฏิเสธ แต่ไม่เคยส่งมาก่อน)
Tim Post

7

OpenHatchถูกสร้างโดยเฉพาะสำหรับสิ่งนี้

อ้างถึง:

OpenHatch เป็นองค์กรไม่แสวงหาผลกำไรที่อุทิศตนเพื่อสนับสนุนการจับคู่ผู้บริจาคซอฟต์แวร์ฟรีกับชุมชนเครื่องมือและการศึกษา

คุณสามารถเรียกดูโครงการตามประเภทเทคโนโลยีระดับทักษะที่จำเป็น ฯลฯ และค้นหาสิ่งที่ตรงกับระดับของคุณ


เว็บไซต์เล็ก ๆ น้อย ๆ ที่ดี :) หนึ่งยังสามารถตรวจสอบfreecode.com
nha

4

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

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


3

มีเว็บไซต์ใหม่ออกมาโดยเฉพาะสำหรับรหัส 52ที่เรียกว่านี้ซึ่งกระตุ้นให้นักพัฒนาใหม่เข้ามามีส่วนร่วมในโอเพ่นซอร์สโดยเริ่มโครงการ OSS ใหม่ทุกสัปดาห์

แนวคิดก็คือดูเหมือนว่าจะเป็นเรื่องที่น่ากลัวน้อยกว่าสำหรับผู้ที่ไม่เคยมีส่วนร่วมในโอเพ่นซอร์สมาก่อนและหวังว่าจะรู้สึกมีส่วนร่วมในโครงการ OSS อื่น ๆ ด้วยเช่นกัน


1
ฉันเคยดูมันและมีบันทึกไม่กี่ที่จะเพิ่ม Code52 นำโดย 3 นักพัฒนาจาก บริษัท Readify ผู้อ้างว่าได้รับรางวัล 'Microsoft's 2012 Partner of the Year' แม้ว่าโครงการจะโฮสต์บน GitHub ทุกโครงการที่เขียนใน WinJS (เช่น Win8 เป้าหมาย) และดำเนินการใบอนุญาตสาธารณะของ Microsoft จากรูปลักษณ์คร่าวๆ MPL เป็นแบบคัดลอกไปทางซ้าย แต่มีข้อ จำกัด บางอย่างที่ต้องการอนุพันธ์เพื่อรับลิขสิทธิ์แบบเดียวกันหรือคล้ายกัน นั่นคือใบอนุญาต GPL มากกว่าใบอนุญาต MIT ที่ จำกัด น้อยกว่ามาก
Evan Plaice

โครงการดูน่าสนใจมาก แต่ฉันไม่สามารถสั่นคลอนความรู้สึกว่านี่เป็นโปรแกรม Opencooling Digital Sharecropping ที่ก่อตั้งขึ้นใหม่โดย Microsoft เพื่อเติมข้อมูลระบบนิเวศ Windows 8 ใหม่โดยไม่ต้องเสียค่าเล็กน้อย ไม่ให้ฟังเหมือนกับหมวกที่มีเคราตินสวมคอเครา แต่ MS ไม่ค่อยมีชื่อเสียงที่ดีที่สุดเมื่อพูดถึงการรวมเข้ากับโอเพ่นซอร์ส
Evan Plaice

1
-1 ดูเหมือนว่าไซต์นี้จะตายไปแล้ว (ไม่มีการอัปเดตอีก) ในช่วงหนึ่งปีที่ผ่านมา
Michael Durrant

3

ผมขอแนะนำให้อ่าน: http://open-advice.org/

มันมีจุดมุ่งหมายที่จะช่วยเหลือผู้ที่สร้างและดูแลรักษาชุมชนและผู้ที่ไม่มั่นใจในสิ่งที่พวกเขาต้องการเข้าร่วมหรือทำเช่นนั้น

ล้มเหลวในการค้นหาโครงการที่มีภารกิจที่สะท้อนกับคุณหรือแยกและมีส่วนร่วมกับสิ่งที่เป็นประโยชน์กับคุณแล้ว

โชคดี.


3

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

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

ในระหว่างการค้นหาฉันตัดสินใจที่จะรวบรวมรายการของ 10 โครงการโอเพนซอร์สที่ผู้เริ่มต้นสามารถเริ่มต้นการสนับสนุนโดยไม่มีกระบวนการที่เครียดมาก นี่คือลิงค์ที่จะใช้:

สิบโครงการสำหรับผู้เริ่มต้นเพื่อสนับสนุนและเรียนรู้จาก

ฉันหวังว่าคุณจะพบว่ามันมีประโยชน์และคุณสามารถเพิ่มได้มากขึ้นถ้าคุณพบสิ่งดีๆ


คุณจะอธิบายเพิ่มเติมเกี่ยวกับสิ่งที่มันทำและทำไมคุณถึงแนะนำว่าเป็นการตอบคำถามที่ถาม "คำตอบ Link-เท่านั้น"ยังไม่ได้รับการต้อนรับที่กองแลกเปลี่ยน
ริ้น

2

ฉันขอแนะนำให้เริ่มโครงการด้วยตัวคุณเองในหัวข้อที่คุณสนใจ

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

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

ประสบการณ์จะสอนให้คุณรู้ว่าการปฏิบัติที่ดีและไม่ดีคืออะไร


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

@TheLQ: ขึ้นอยู่กับระดับประสบการณ์ของคุณฉันเดาว่าการทำอะไรบางอย่างตั้งแต่เริ่มต้นจะสอนบทเรียนและสิ่งต่าง ๆ มากมายที่คุณไม่ได้เรียนรู้ด้วยการเข้าร่วมทีมที่มีหลายสิ่งที่ทำไปแล้ว มีสินค้าและ bads เกี่ยวกับโครงการของคุณเองหรือของคนอื่นในความคิดของฉัน
Brian R. Bondy

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

2

ฉันเป็นเจ้าของโครงการบนรหัส google และฉันกำลังมองหาผู้มีส่วนร่วม (แต่ฉันจะไม่ใช้คำตอบนี้เพื่อการโฆษณาในทางที่ผิด) ดังนั้นความเห็นของฉันอาจน่าสนใจสำหรับคุณ

ก่อนอื่นคุณต้องค้นหาสิ่งที่คุณสนใจจากนั้นพัฒนาความเชี่ยวชาญในบางสาขาที่เกี่ยวข้องกับความสนใจของคุณ จากนั้นหาโครงการที่ต้องการและต้องการความเชี่ยวชาญของคุณ

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

ข้อควรจำ: การรู้ภาษาการเขียนโปรแกรมหลักเพียงหนึ่งหรือสองภาษานั้นไม่ใช่ความเชี่ยวชาญ


คุณจะแนะนำคนอื่นให้ทำอย่างไรในการพิจารณาสิ่งที่พวกเขาสนใจหรือสร้างความเชี่ยวชาญในพื้นที่เหล่านั้น
อดัมเลียร์

2
@ แอนนาฉันไม่แน่ใจว่าฉันเข้าใจคำถามของคุณ ฉันหมายถึงมีหลายร้อยหัวข้อ - จากสิ่งที่อยู่ในระดับต่ำเช่นโปรโตคอลเครือข่ายหรือการทำงานภายในของ GPU ไปจนถึงนามธรรมสูงหัวข้อทางคณิตศาสตร์เกือบ (แยกวิเคราะห์ระบบประเภททฤษฎีหมวดหมู่ ฯลฯ ) อัจฉริยะที่ยิ่งใหญ่ที่สุดจะไม่เชี่ยวชาญพวกเขาทั้งหมดและจะมีความสุขที่ได้คนที่เป็นผู้เชี่ยวชาญในสาขาที่เขาอัจฉริยะไม่ได้ แต่ความสนใจของคุณคืออะไรใครจะบอกได้ แต่คุณ
Ingo

1
ใช่การค้นพบความสนใจนั้นอาจเป็นเรื่องส่วนตัว (หรือคำแนะนำในการ "ลองทำสิ่งที่แตกต่างและดูว่าคุณชอบอะไร") แต่สิ่งที่เกี่ยวกับการได้รับความเชี่ยวชาญคืออะไร? คุณบอกว่ามันเป็นมากกว่าแค่การรู้ภาษาคู่ ดังนั้นเมื่อได้รับหัวข้อ / หัวข้อใหม่คุณจะทำอะไรเพื่อรับความเชี่ยวชาญนั้น สำหรับฉันการเข้าร่วมโครงการ OSS จะเป็นส่วนหนึ่งของกระบวนการนั้น แต่ถ้าฉันอ่านคุณอย่างถูกต้องคุณกำลังแนะนำว่าควรเป็นผู้เชี่ยวชาญก่อนเข้าร่วมโครงการ
อดัมเลียร์

ฉันจะทำอย่างไร อ่านหนังสือ. อ่าน PDF พูดคุยกับคนที่คุณรู้จักหรือในเน็ต ลองใช้ การปฏิบัติ ตอบคำถามทั้งหมดใน SO ที่เกิดขึ้นเกี่ยวกับหัวข้อนั้น แล้ววันหนึ่งสังเกตเห็นว่ามีน้อยคนที่รู้ดีกว่าคุณ - อย่าพาฉันไปที่ "ผู้เชี่ยวชาญ" อย่างแท้จริง แต่โปรดจำไว้ว่าในโครงการโอเพ่นซอร์สเนื่องจากเป็นงานอาสาสมัครไม่มีทางที่จะบังคับให้ใครบางคนทำงาน - ดังนั้นผู้ที่รู้ว่าพวกเขากำลังทำอะไรและต้องการใครที่จะทำแค่นั้น ก็ยินดีมากที่สุด
Ingo
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.