پروژه‌های متن باز که هر توسعه‌دهنده‌ای باید درباره آن‌ها بداند

منتشر شده در freecodecamp به تاریخ ۵ می ۲۰۲۳لینک منبع Open Source Projects Every Developer Should Know Aboutاین رویکرد نه تنها به آن سازمان‌ها بلکه توسعه‌دهندگان مختلفی که روی پروژه‌های مختلف کار می‌کنند نیز سود می‌رساند. و محیطی را ایجاد کرده است که در آن توسعه‌دهندگان می‌توانند به شیوه‌ای مشترک کار کنند و در عین حال از یکدیگر یاد بگیرند.درست مانند هر زمینه توسعه دیگری، اگر ندانید به دنبال چه هستید و کجا جستجو کنید، منبع باز آسان نیست.در چند سال گذشته از اولین انتشار من در مورد نحوه مشارکت در پروژه‌های منبع باز افرادی بوده‌اند که خواهان راهنمایی بیشتر در مورد نحوه پیمایش در زمینه منبع باز بوده‌اند.اکثر سوالاتی که دریافت می‌کنم «چگونه می‌توانم پروژه‌ها و برنامه‌های درست را برای کار کردن پیدا کنم»، تا «آیا واقعاً می‌توانم از طریق منبع باز امرار معاش کنم» یا «بیشتر برنامه‌هایی که می‌بینم برای مبتدیان مناسب نیستند» را شامل می‌شوند.خوب، من می‌توانم این سؤالات را بفهمم، زیرا در مقطعی در همان موقعیت قرار گرفتم.اگر شما هم در شرایط مشابه هستید و در مورد منبع باز سوالی دارید، نگران نباشید. من به شما می‌گویم.یکی از چیزهایی که می‌توانم به شما اطمینان دهم این است که در صورت یافتن مسیر صحیح، شرکت در متن باز می‌تواند مفید باشد. این مسیر صحیح می‌تواند از طریق پیوستن به یک پروژه یا فقط مشارکت در یک پایگاه کد باشد. راه‌های زیادی برای کمک وجود دارد. و سپس فرصت‌های متعددی برای توسعه مهارت‌های خود و رشد به عنوان یک توسعه‌دهنده خواهید داشت.خوبی در مورد منبع باز این است که همه افراد را در خود جای می‌دهد، خواه دانشجو باشید، حرفه‌ای یا علاقه‌مند به منبع باز. پروژه‌های متن باز می‌توانند بستری منحصر به فرد برای یادگیری، همکاری و نمایش مهارت‌های خود را در اختیار شما قرار دهند. پس برای هر کسی چیزی وجود دارد.با این گفته، بیایید شروع کنیم!منبع باز چیست؟قبل از شروع بررسی پروژه‌های متن‌باز مختلف، اجازه دهید ابتدا مروری داشته باشیم که منبع باز چیست و چرا باید به آن ملحق شوید.کد منبع باز کدی است که نه تنها برای مشاهده و استفاده، بلکه برای تغییر و توزیع تحت یک مجوز مجاز در دسترس عموم قرار می‌گیرد.به‌عنوان یک توسعه‌دهنده، مشارکت در منبع باز می‌تواند مفید باشد و به شما کمک کند یاد بگیرید، به دیگران آموزش دهید و مهارت‌های خود را رشد دهید.جدای از این، دلایل زیادی وجود دارد که چرا باید به منبع باز کمک کنید، از جمله:شما فرصتی برای بهبود نرم‌افزاری که روزانه به آن تکیه می‌کنید به دست می آورید.از طریق این فرآیند می‌توانید در صورت نیاز یک مربی پیدا کنید.شما می‌توانید مهارت‌های جدید را یاد بگیرید یا مهارت‌های موجود را بهبود ببخشید.شما می‌توانید مهارت‌های خود را با دیگران به اشتراک بگذارید و به نمایش بگذارید.در این فرآیند می‌توانید درک عمیق‌تری از یک فناوری داده شده به دست آورید.این یک راه خوب برای ایجاد شهرت و رشد شغلی است.انواع پروژه‌های متن بازاکنون که درک درستی از چیستی منبع باز و برخی از مزایای آن دارید، بیایید با انواع مختلف پروژه‌های منبع باز که برای مشارکت‌کنندگان مشتاق در دسترس هستند آشنا شویم.از آموزش گرفته تا کارآموزی و کار، فرصت‌های زیادی برای بهبود مهارت‌ها، کسب تجربه عملی، کسب درآمد و کمک‌های ارزشمند به جامعه منبع باز وجود دارد.این پروژه‌ها فرصتی منحصر‌به‌فرد برای توسعه‌دهندگان در تمام سطوح برای یادگیری و کسب تجربه در حین کار بر روی پروژه‌های دنیای واقعی است. جامعه منبع باز همچنین مکانی است که در آن افراد همفکر از سراسر جهان می‌توانند با هم ارتباط برقرار کنند و به اشتراک بگذارند.اکنون، با وجود پروژه‌های بسیار زیاد، برای مبتدیان در این زمینه می‌تواند چالش‌برانگیز باشد که بدانند دقیقا از کجا شروع کنند. برای سهولت کار، پس از کمی تحقیق، توانستم پروژه‌ها را به شش دسته اصلی طبقه‌بندی کنم، یعنی:آموزش و پرورشکارآموزی و منتورشیپکمک‌های مالی و تامین مالیجامعه‌سازی و حمایتتحقیق و توسعهاین دسته‌بندی‌ها پروژه‌های مختلفی را در خود جای می‌دهند و به شما این امکان را می‌دهند که بدانید دقیقاً به دنبال چه چیزی هستید.اگر پس از خواندن این مقاله احساس کردید که نوع خاصی از پروژه را که ممکن است مفید باشد را از دست داده‌ام، می‌توانید به GitHub بروید و آن را به این مخزن که برای فهرست کردن همه پروژه‌های منبع باز برای دسترسی آسان اختصاص داده شده است، اضافه کنید.پروژه‌های آموزشیاین پروژه‌ها فرصتی عالی برای افرادی است که می‌خواهند یاد بگیرند و مهارت‌ها، دانش و تجربه‌های جدیدی را کسب کنند و در عین حال به منبع باز و جامعه کمک کنند.برخی از پروژه هایی که در این دسته قرار می گیرند عبارتند از:برنامه FreeCodeCampبرنامه درسی freeCodeCamp به گونه‌ای طراحی شده است که به یادگیرندگان تجربه عملی در ساخت پروژه‌های دنیای واقعی ارائه می‌دهد و در عین حال به آن‌ها امکان می‌دهد در متن باز مشارکت کنند.در مقابل، فراگیران مهارت‌ها را دریافت می‌کنند و همچنین گواهینامه‌ای را دریافت می‌کنند که می‌توانند آن را به رزومه خود اضافه کنند.آموزش بنیاد لینوکساین پروژه خاص طیف گسترده‌ای از منابع از جمله دوره‌ها و گواهی‌نامه‌های مربوط به فناوری‌های مختلف را ارائه می‌دهد. برخی از فناوری‌هایی که در اولویت قرار دارند عبارتند از Kubernetes، Linux و Hyperledger.ساختار پروژه به گونه‌ای طراحی شده است که تجربه عملی و راهنمایی عملی را در اختیار یادگیرندگان قرار می‌دهد و آن‌ها را قادر می‌سازد تا حرفه خود را بر اساس فناوری‌های منبع باز ایجاد کنند.ابتکارات CNCFاین پروژه عمدتاً بر آموزش بیشتر به مربیان خود در مورد فناوری‌های بومی ابری و نحوه مشارکت در پروژه‌های منبع باز مبتنی بر این اکوسیستم متمرکز است.علاوه‌بر‌این، فراگیران همچنین می‌توانند در مورد کدگذاری و مستندسازی اطلاعات بیشتری کسب کنند.شبکه توسعه‌دهنده موزیلا (MDN)شبکه MDN یک پلتفرم وب است که مستندات، آموزش‌ها و سایر منابع گسترده‌ای را در مورد فناوری‌های توسعه وب مانند HTML، CSS، جاوا اسکریپت و Web API در اختیار توسعه‌دهندگان قرار می‌دهد. آن‌ها همچنین مجموعه‌ای از دوره‌های آنلاین و مسیرهای یادگیری را ارائه می‌دهند که به زبان آموزان امکان می‌دهد مهارت‌ها و دانش خود را در زمینه‌های خاص توسعه وب توسعه دهند.محتوای آن توسط جامعه بزرگی از توسعه‌دهندگان ایجاد و نگهداری می‌شود به این معنی که منبع باز است و هر کسی می‌تواند در آن مشارکت داشته باشد.پروژه Recurse Centerاین یک پروژه 12 هفته‌ای است که به صورت ری‌تریت طراحی شده است. این برنامه برای هر کسی که می خواهد در برنامه‌نویسی بهتر شود باز است. چه خودآموخته باشید و چه حرفه‌ای، فرصتی برای کار با افرادی خواهید داشت که مهارت‌های مشابه شما را دارند. ری‌تریت‌ها رایگان، خودگردان و مبتنی بر پروژه هستند.پروژه Open Source Guidesاین پلتفرم به عنوان مکانی مناسب برای مبتدیانی است که به دنبال راهنماهایی در مورد نحوه شروع کار با منبع باز و مشارکت هستند.پیمایش سایت با پیوندهای سریع به مقالات از نحوه مشارکت در منبع باز و نحوه شروع یک پروژه منبع باز تا ایجاد و نگهداری جوامع منبع باز آسان است.پروژه‌های کارآموزی و مربیگریاین پروژه‌های منبع باز به مشارکت‌کنندگان مشتاق این فرصت را می‌دهد تا ضمن دریافت راهنمایی از افراد با تجربه در زمینه‌های مختلف، تجربیات ارزشمندی کسب کنند.در عوض، مشارکت‌کنندگانی که از طریق برنامه‌های کاربردی پذیرفته می‌شوند، فرصتی برای مشارکت در پروژه‌های دنیای واقعی، ایجاد ارتباطات در جامعه متن‌باز، و گاهی اوقات کمک هزینه برای کار انجام شده دریافت می‌کنند. این پروژه‌ها معمولاً بین 10 هفته تا 6 ماه خواهد بود.برنامه Google Summer of Code (GSoC)این برنامه دانش‌آموزان را با مربیان جفت می‌کند تا در طول تابستان روی پروژه‌های منبع باز کار کنند. این برنامه به هزاران دانش‌آموز کمک کرده است تا با مشارکت در انواع پروژه‌های متن باز، مهارت و تجربه کسب کنند. در عوض، شرکت کنندگان برای کار انجام شده و تجربه‌ای که می‌تواند در حرفه آن‌ها کمک کند، کمک هزینه دریافت می‌کنند.سایر برنامه‌هایی که GSoCرا ترویج می‌کنند عبارتند از:Winter of CodeJWOCبرنامه Outreachyاین یک برنامه کارآموزی است که فرصتی برای مشارکت در پروژه‌های منبع باز برای جوامعی فراهم می‌کند. این برنامه دو بار در سال اجرا می‌شود و یک دوره کارآموزی از راه دور سه ماهه با کمک هزینه در پایان دوره ارائه می‌شود.شرکت‌کنندگانی که مرحله درخواست را پشت سر می‌گذارند، با مربیانی همراه می‌شوند که در طول مسیر به آن‌ها کمک می‌کنند تا در پروژه‌های دنیای واقعی کار کنند، تجربه‌ای در زمینه‌های مختلف از جمله توسعه نرم‌افزار، مستندسازی، UI/UX و موارد دیگر کسب کنند.برنامه Google Season of Docs (GSoD)این برنامه خاص بر ارائه فرصت‌هایی برای نویسندگان فنی که می‌خواهند در پروژه‌های منبع باز مشارکت داشته باشند، تمرکز دارد.شرکت‌کنندگان با مربیان پروژه‌های منبع باز مختلف همراه می‌شوند تا مستندات خود را بهبود بخشند. این برنامه به مدت سه ماه اجرا می‌شود و در پایان دوره کمک هزینه می‌دهد.برنامه Rails Girls Summer of Codeاین برنامه عمدتاً بر تشویق زنان و افراد غیرباینری برای مشارکت در پروژه‌های منبع باز متمرکز است.این برنامه سه ماه طول می‌کشد و شرکت کنندگان پس از آن کمک هزینه دریافت می‌کنند. در طول دوره، شرکت‌کنندگان با مربیانی همراه می‌شوند که در صورت لزوم راهنمایی و کمک می‌کنند.برنامه Linux Foundation Mentorship (LFX)این یک برنامه 12 هفته‌ای است که فرصت‌های مربیگری را به توسعه دهندگانی که علاقه‌مند به مشارکت در پروژه‌های منبع باز هستند ارائه می‌دهد. پس از اتمام برنامه، شرکت کنندگان کمک هزینه دریافت می‌کنند.سایر برنامه‌های راهنمایی که تحت لینوکس اجرا می‌شوند عبارتند از:Linux Kernel Mentorship ProgramLinux Foundation Networking (LFN) Mentorship ProgramOpen Mainframe Project Mentorship ProgramHyperledger Mentorship ProgramCHAOSSبرنامه Season of KDEاین برنامه فرصت‌هایی را برای همه کسانی که می‌خواهند در پروژه‌های کدنویسی و غیرکدنویسی شرکت کنند که برای اکوسیستم KDE مفید است، ارائه می‌دهد.این برنامه معمولاً به مدت تقریباً شش ماه اجرا می‌شود و به شرکت کنندگانی که با موفقیت برنامه را تکمیل می‌کنند، کمک هزینه ارائه می‌دهد.برنامه Girlscript Summer of Codeاین یک برنامه 3 ماهه است که توسط بنیاد GirlScript انجام می‌شود. هدف اصلی آن تغییر زندگی با ارائه آموزش‌های فنی و مهارت‌های مرتبط و در عین حال پرورش تنوع است.در این دوره، شرکت‌کنندگان در پروژه‌های متعددی تحت هدایت دقیق مربیان ماهر مشارکت می‌کنند.کارآموزی Free Software Foundation (FSF)این برنامه به شرکت کنندگان فرصتی برای همکاری نزدیک با کارکنان سازمان در مورد علایق خود می‌دهد.با توجه به سایت این پلتفرم، تمرکز اصلی آن بر سازماندهی کمپین و جامعه، صدور مجوز نرم‌افزار رایگان، مدیریت سیستم‌ها و شبکه، پشتیبانی از پروژه گنو و توسعه وب است.برنامه X.Org Endless Vacation of Code (EVoC)این برنامه مشابه GSocاست اما با کمی تفاوت. راهنمایی EVoCمی‌تواند در هر زمانی در طول سال تقویمی آغاز شود و هیئت مدیره EVoC می‌تواند هر تعداد از این راهنمایی‌ها را که صلاح بداند تامین مالی کند.اگرچه آن‌ها طیف گسترده‌ای از پروژه‌ها را می‌پذیرند، اما تمرکز اصلی آن‌ها بر روی اسناد فنی است. این برنامه برای سه تا چهار ماه کار پیوسته تقریباً تمام وقت طول می‌کشد.برنامه Julia Seasons of Contributions (JSoC)فصل مشارکت جولیا (JSoC) یک برنامه فصلی برای راهنمایی دانش آموزان و سایر توسعه دهندگان برای کمک به اکوسیستم منبع باز است.برنامه Summer of Haskellتابستان هسکل برنامه‌ای است که توسط Haskell.Org با هدف دسترسی به دانش‌آموزان و تشویق آن‌ها برای کمک به جامعه Haskellبا کمک مربیان مجرب آغاز شده است.این برنامه دارای همان ویژگی های GSoC از جمله مربیگری و کمک هزینه به مشارکت کنندگان Haskell است.برنامه Summer of Bitcoinاین یک برنامه جهانی است که کارآموزی تابستانی آنلاین را ارائه می‌دهد که بر معرفی دانشجویان دانشگاه با توسعه و طراحی منبع باز بیت کوین تمرکز دارد.در طول دوره کارآموزی، شرکت‌کنندگان می‌توانند نحوه عملکرد بیت‌کوین و نحوه مشارکت در پروژه‌های بیت‌کوین را بیاموزند. در مقابل، آن‌ها بیت کوین را به عنوان کمک هزینه دریافت می‌کنند و در بیت کوین حرفه‌ ایجاد می‌کنند.کمک‌های مالی و تامین مالییکی از چالش‌های عمده‌ای که بیشتر پروژه‌های منبع باز با آن مواجه هستند، یافتن بودجه پایدار است.خوشبختانه برنامه‌های کمک مالی زیادی وجود دارد که در دسترس هستند و آماده ارائه حمایت مالی به جوامع و پروژه‌های منبع باز هستند. برخی از این برنامه ها عبارتند از:حامیان GitHubحامیان GitHub یک پلت‌فرم تامین مالی است که به جامعه توسعه دهندگان اجازه می‌دهد تا از دیگر توسعه دهندگان و سازمان‌هایی که پروژه‌های منبع باز طراحی، ساخت و نگهداری می‌کنند، حمایت مالی کند.پشتیبانی منبع باز موزیلا (MOSS)برنامه MOSSبرنامه‌ای است که به پروژه‌های منبع باز که با ماموریت موزیلا همسو هستند، بودجه ارائه می‌دهد. MOSSانواع مختلفی از جوایز را ارائه می‌دهد از جمله:برنامه Foundational Technology، که از پروژه‌های منبع باز که موزیلا بر آن‌ها تکیه دارد پشتیبانی می‌کند.برنامه Mission Partners، که از پروژه‌های منبع باز که به ماموریت موزیلا کمک می‌کنند، پشتیبانی می کنند.برنامه Secure Open Source، که از پروژه‌های منبع باز پشتیبانی می‌کند که امنیت اینترنت را بهبود می‌بخشد.برنامه Igalia Coding Experienceاین یک برنامه کمک هزینه است که به طور خاص برای افرادی است که در رشته علوم کامپیوتر، فناوری اطلاعات، یا نرم‌افزار آزاد تحصیل می‌کنند، چه در یک محیط رسمی و چه غیررسمی.هدف اصلی آن این است که شرکت کنندگان برای اولین بار در معرض دنیای حرفه ای قرار بگیرند، دست در دست برنامه نویسان Igaliaو یادگیری با آن‌ها.برنامه‌های ایجاد جامعه و حمایتاکثر جوامع منبع باز در همکاری، فراگیری و تنوع رشد می‌کنند.برای کمک به دستیابی به این اهداف، در سال‌های اخیر برنامه‌های جامعه‌سازی افزایش یافته است که هدف آن فراهم کردن محیطی دلپذیر و حمایت‌کننده برای افراد مختلف در فناوری و در عین حال ترویج فرهنگ فراگیری و تنوع است.برخی از این برنامه‌ها عبارتند از:Open Source DiversityOpenSource InitiativeOpen Source Community Africa (OSCA)Open Source for AmericaHacktoberfestWriteSpeakCodeProcessing Foundation FellowshipsOpen Education Weekتحقیق و توسعهاگر به تحقیق و توسعه علاقه‌مند هستید، این پروژه‌ها به شما کمک می‌کنند تا وارد آن زمینه شوید. بیشتر این برنامه‌ها بر پیشرفت فناوری‌های منبع باز و نوآوری در زمینه‌های مختلف برای حل مشکلات دنیای واقعی تمرکز دارند.برخی از آن‌ها عبارتند از:برنامه Google Summer of Earth Engineاین یک برنامه تحقیقاتی است که عمدتاً دانشجویان دانشگاه و محققان از هند را هدف قرار می‌دهد. به شرکت کنندگان این برنامه فرصتی برای همکاری با سازمان‌های تحقیقاتی پیشرو که برای یافتن راه‌حل‌هایی در مورد مسائلی که بر محیط زیست، آب و کشاورزی کار می‌کنند، ارائه می‌شود.این برنامه به مدت سه ماه ادامه دارد. پس از اتمام، به شرکت کنندگان گواهی شناسایی، Swag موتور زمین و کمک هزینه اعطا می‌شود.بنیاد Free and Open Source Silicon Foundation (FOSSi)ماموریت این برنامه ترویج و کمک به طراحی‌های سخت‌افزار دیجیتال آزاد و باز و اکوسیستم‌های مرتبط با آن‌ها است. این به عنوان یک گروه باز، فراگیر و مستقل از فروشنده عمل می‌کند.برخی از پروژه های تحت این سازمان خاص عبارتند از کنفرانس ORCONF، پورتال LibreCores برای سخت افزار منبع باز، و پلت فرم PULP برای محاسبات کارآمد انرژی. ادامه مطلب را اینجا بخوانید.بنیاد Open Robotics Foundation (OSRF)بنیاد OSRF یک سازمان غیرانتفاعی مستقل است که توسط اعضای جامعه جهانی روباتیک تأسیس شده است. ماموریت آن پشتیبانی از توسعه، توزیع و پذیرش نرم افزار منبع باز برای استفاده در تحقیقات رباتیک، آموزش و توسعه محصول است.برخی از پروژه های آن عبارتند از Gazebo، Ignition، ROSو ROS-Industrial.برنامه Reinforcement Learning Open-Source Festتمرکز اصلی این برنامه این است که دانش‌آموزان را با برنامه‌های یادگیری تقویتی منبع باز و توسعه نرم‌افزار در حالی که در کنار محققان، دانشمندان داده‌ها و مهندسان در تیم یادگیری تقویت‌کننده دنیای واقعی در Microsoft Research کار می‌کنند، آشنا کند.سایر پروژه‌های تحقیق و توسعهThe Eclipse FoundationOpen Summer of CodeCodeheatFOSSASIA ProgramSegment Open FellowshipApache OpenOfficeCareer Opporunites in Open-Sourceنتیجه‌گیریبا همه این پروژه‌ها و برنامه‌ها، می‌توانید ببینید که جامعه منبع باز چقدر فرصت می‌تواند ارائه دهد. همه این برنامه‌ها می‌توانند به شما کمک کنند تا مهارت‌های خود را توسعه دهید، با دیگران همکاری کنید و از همه مهم‌تر با حل مشکلات دنیای واقعی تأثیر مثبتی بر جامعه ایجاد کنید.اگر علاقه‌مند به کاوش در پروژه‌های ذکر شده در بالا هستید، مطمئن شوید که درباره پروژه‌های مورد علاقه خود اطلاعات بیشتری کسب کنید تا بتوانید برنامه مناسب متناسب با تخصص خود را پیدا کنید.همچنین می‌توانید به انجمن‌ها و گروه‌های آنلاین مختلف در دسترس بپیوندید تا با مشارکت‌کنندگان دیگر ارتباط برقرار کنید، از تجربیات آن‌ها بیاموزید و پشتیبانی دریافت کنید.امیدوارم این مقاله شما را در مسیر درست راهنمایی کند و الهام‌بخش شما برای ورود به دنیای متن باز باشد. به یاد داشته باشید، هر سهمی مهم است، مهم نیست چقدر کوچک است. بنابراین درگیر شدن و ایجاد تفاوت را از امروز دریغ نکنید!این متن با استفاده از ربات ترجمه مقالات علم داده ترجمه شده و به صورت محدود مورد بازبینی انسانی قرار گرفته است. در نتیجه می‌تواند دارای برخی اشکالات ترجمه باشد.مقالات لینک‌شده در این متن می‌توانند به صورت رایگان با استفاده از مقاله‌خوان ترجمیار به فارسی مطالعه شوند.