หนึ่งจะกลายเป็นผู้มีส่วนร่วมขนาดใหญ่ให้กับโครงการ opensource ได้อย่างไร


10

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


15
ขั้นตอนที่ 1 - เป็นผู้มีส่วนร่วมอย่างมาก ขั้นตอนที่ 2 - ตัดกลับเล็กน้อย
psr

คำตอบ:


10

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

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


ไกลพอแล้วคุณจะบอกว่าการเมืองหรือแผนการที่น่าอับอายกว่านี้? [Aka โฆษณาแพทช์ในบล็อกก่อนที่จะได้รับอนุญาตให้ส่ง]
พระสงฆ์

2
@monksy - ไม่เป็นอย่างที่คุณไม่เปิดเผยต่อสาธารณะ แต่มีส่วนร่วมผ่านกลไกที่เหมาะสมกับ code-base คุณกำลังพยายามที่จะได้รับความไว้วางใจจากประสบการณ์ที่แชร์ คุณไม่ได้รับความผูกพันจากคนที่น่ารำคาญ!
sdg

1
@monksy: อย่าโฆษณาแพทช์ของคุณบนบล็อก; คุณจะรู้ได้อย่างไรว่าใครก็ตามจากโครงการจะเห็นได้อย่างไร หากคุณมีแพทช์ให้นำไปที่ชุมชนการสนทนาและพูดคุยเกี่ยวกับมันที่นั่น นั่นคือสิ่งที่คุณน่าจะได้รับการตอบกลับที่มีประโยชน์ที่สุด (BTW หากคุณมีการแก้ไขข้อบกพร่องโปรดเตรียมที่จะพิสูจน์ว่ามีข้อผิดพลาดจริง ๆ ซึ่งหมายความว่าคุณเข้าใจว่ารหัสควรทำอะไรและคุณสามารถแสดงกรณีที่สามารถทำซ้ำได้ซึ่งจะทำอย่างอื่นตรวจสอบให้แน่ใจว่าคุณทราบความแตกต่างระหว่าง ข้อผิดพลาดและรหัสที่ทำสิ่งที่มันควรจะทำสิ่งที่คุณไม่ชอบ).
เมสันล้อ

4

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

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

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


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

2

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


ดูเหมือนว่าเป็นเส้นทางที่ยาวนานในการตัดสินใจด้านสถาปัตยกรรม / การออกแบบ [ฉันทำงานภายใต้หลักฐานว่าส้อมไม่ดี]
ภิกษุ

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

5
@monksy การขยับขึ้นบันไดต้องใช้เวลาคุณไม่ต้องตัดสินใจที่จะเริ่มต้นที่ด้านบนเว้นแต่ว่าคุณจะสร้างบันไดของคุณเอง
Ryathal
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.