خبر و ترفند روز

خبر و ترفند های روز را اینجا بخوانید!

5 ویژگی یک پروژه منبع باز خوب

پیدا کردن یک پروژه متن باز که برای شما مناسب است، کار سختی است، بنابراین این نکات را دنبال کنید و مشارکت کنید!

مشارکت منبع باز یکی از بالاترین مهارت هایی است که امروزه در فناوری به دنبال آن است. مردم به مزایای استفاده از فناوری‌های منبع باز و مزایای حضور در این پروژه‌ها پی برده‌اند.

توسعه منبع باز رویکردی مبتنی بر اشتراک کد منبع و بهبود مشارکتی است.

هزاران پروژه منبع باز در اینترنت وجود دارد. پروژه های منبع باز می توانند برنامه های کاربردی رسانه های اجتماعی، نرم افزار مدیریت پروژه و مستندات فنی باشند. پس چگونه مورد مناسب را انتخاب می کنید؟

در یک پروژه منبع باز به دنبال چه چیزی باشید

یک تصور غلط در مورد پروژه های منبع باز این است که شما باید کد را مشارکت دهید. در حالی که کد ضروری است، سایر زمینه‌ها مانند مستندسازی، مدیریت پروژه و حمایت از جامعه می‌توانند شامل مشارکت‌های منبع باز قابل توجهی باشند.

هر کسی که روی پروژه های متن باز کار کرده باشد، در مورد قدرت چنین پروژه هایی به شما خواهد گفت. مزایا شامل نوآوری، مهارت های بالا و روابط سازنده است که بر شغل شما تأثیر می گذارد.

برای تعیین اینکه آیا یک منبع باز ارزش وقت شما را دارد، ویژگی های زیر را در نظر بگیرید.

1. آیا مجوز دارد؟

هر پروژه منبع باز دارای مجوز است، معمولاً یا مجوز مجاز یا کپی لفت. مجوز مجاز در پروژه های منبع باز رایج است. هیچ کسی را از استفاده، توزیع یا فروش نسخه اصلاح شده نرم افزار محدود نمی کند.

اکثر پروژه های منبع باز دارای مجوز مجاز هستند، مانند MIT، BSD، یا Apache 2.0. مجوز MIT نرم افزار را به صورت رایگان به اشتراک گذاشته و توزیع می کند و بدون گارانتی است:

تصویری از مجوز MIT که در GitHub گرفته شده است

مجوزهای کپی لفت مانند مجوز عمومی عمومی، مجوز عمومی موزیلا و مجوز عمومی عمومی آفرو با محدودیت های بیشتری همراه هستند.

مجوز مجاز به مشارکت کنندگان اجازه می دهد تا نرم افزار منبع باز را تغییر داده و توزیع کنند. این بدان معناست که توسعه دهندگان می توانند کد منبع را برای تولید نرم افزار جدید تغییر دهند و بدون محدودیت از آن استفاده یا توزیع کنند. نسخه اصلاح شده با همان مجوز نرم افزار اصلی خواهد بود.

مطلب مرتبط:   نحوه ساخت و مصرف Mock API در برنامه های React با استفاده از Mirage.js

با این حال، نسخه های اصلاح شده برای شناسایی آسان بین این دو، نامی مشابه نسخه اصلی نخواهند داشت. مجوز همچنین باید شامل همه افراد باشد و علیه کسی تبعیض قائل نشود.

هرکسی که نرم‌افزار توزیع‌شده را دریافت می‌کند، باید از همان حقوق صاحبان کد اصلی در مجوز برخوردار باشد.

مجوز رایگان نرم افزار را به کانال یا فناوری توزیع خاصی محدود نمی کند. نرم افزار و وابستگی های توزیع شده در کنار نرم افزار منبع باز لزوماً نباید منبع باز باشند. منبع بسته و سایر فناوری های پولی از نرم افزار منبع باز بدون محدودیت استفاده می کنند.

2. آیا کد منبع به اشتراک گذاشته شده است؟

همه پروژه های منبع باز دارای مجوزی هستند که امکان اشتراک گذاری رایگان کد منبع را فراهم می کند. این حقوق همچنین شامل کدهای جمع‌آوری شده از مشارکت‌ها می‌شود. پروژه باید کد منبع خود را بدون محدودیت در دسترس همه طرف ها قرار دهد.

هنگامی که کد منبع در سیستم عامل های عمومی در دسترس نیست، باید در صورت درخواست در دسترس باشد. هر پروژه ای که کد منبع خود را به اشتراک نمی گذارد، پروژه منبع باز نیست.

اما، مجوز می تواند توزیع مجدد کد منبع را محدود کند و فقط اجازه توزیع مجدد فرم تغییر یافته آن را بدهد. کد اصلاح شده می تواند نام یا نسخه متفاوتی داشته باشد تا آن را از پروژه اصلی متمایز کند.

3. آیا پروژه دستورالعمل هایی برای مشارکت کنندگان دارد؟

هر پروژه منبع باز باید راهنمای مشارکت کنندگان داشته باشد. احتمالاً آن را در پوشه اصلی پروژه که اغلب CONTRIBUTORS یا CONTRIBUTORS.md نامیده می شود، پیدا خواهید کرد. راهنمای مشارکت کنندگان شامل دستورالعمل های ساده در مورد نحوه مشارکت در پروژه است.

مطلب مرتبط:   شبه کلاس های CSS در مقابل عناصر شبه: یک شیرجه عمیق

این راهنما به مشارکت‌کنندگان جدید نشان می‌دهد که چگونه می‌توانند مشکلی را مطرح کنند، و مشارکت‌های خود را به مخزن بالادستی ارسال کنند. راهنماهای مشارکت کننده به مشارکت کنندگان کمک می کند تا نحوه عملکرد پروژه برای کاهش تضاد بین شعب در طول ادغام را به مشارکت کنندگان نشان دهند.

در اینجا نمونه ای از دستورالعمل های مشارکت کننده از پروژه منبع باز AsyncAPI در GitHub آمده است:

تصویری که نمونه‌ای از راهنمای مشارکت‌کنندگان گرفته شده در GitHub را نشان می‌دهد

4. آیا انجمن فعال دارد؟

نوآوری یکی از دلایل محبوبیت پروژه های متن باز است. منبع باز جوامع با استعداد و مشتاق را برای ایجاد ایده هایی که نوآوری را ترویج می کنند، گرد هم می آورد.

یک جامعه قوی ارتباط، همکاری و بازاریابی واضح را برای محصول تضمین می کند. جوامع منبع باز فعال نتایج بهتری تولید می‌کنند و نوآوری‌ها را سریع‌تر از پروژه‌های جداگانه تولید می‌کنند.

برای تعیین اینکه آیا یک انجمن فعال است، به کانال های اجتماعی آن نگاه کنید. با نظارت بر فعالیت های آنها در شبکه های اجتماعی، حساب های Discord یا Slack شروع کنید. کار در یک جامعه فعال با جریان آزاد اطلاعات و منابع بهتر است.

جوامع فعال در منبع باز از سه طریق به نوآوری سرعت می بخشند. جوامع به روندهای فعلی در فناوری پاسخ می دهند، چرخه های انتشار مکرر دارند و نرم افزار بازتوزیع گسترده ای دارند.

نمونه ای از یک پروژه منبع باز با یک جامعه فوق العاده، چارچوب جاوا اسکریپت فیس بوک، React است.

React طی نه سال به نسخه 18 رسیده است، در حالی که یک چارچوب مشابه Vue.js هنوز در نسخه 3 است. هر دو فریم ورک کمتر از ده سال قدمت دارند. جامعه پر جنب و جوش React سایر چارچوب های محبوب جاوا اسکریپت مانند Angular را تحت الشعاع قرار می دهد.

کار بر روی پروژه های منبع باز با جوامع فعال سرگرم کننده است. همچنین، هرگز از روندها و به روز رسانی های فناوری عقب نخواهید ماند. یافتن بهترین انجمن‌های فناوری Discord یک افزودنی عالی برای نمونه کارها منبع باز شما است.

مطلب مرتبط:   نحوه باز کردن فایل ها و URL ها در پروژه های Node.js با بسته باز npm

5. آیا نگهبانان فعال و توجه هستند؟

در یک پروژه منبع باز، نگهدارنده ها مشارکت کنندگانی هستند که اجازه دارند فایل های موجود در مخزن پروژه را تغییر دهند. نگهبانان مسئولیت پروژه را برعهده دارند و اطمینان حاصل می کنند که مشارکت های انجام شده در پروژه با اهداف آن هماهنگ است.

در یک پروژه منبع باز خوب، نگهبانان فعال ترین هستند. آنها مسئول کانال‌های اجتماعی خواهند بود، بحث‌ها را رهبری می‌کنند و به سؤالات مشارکت‌کنندگان پاسخ می‌دهند. نگهبانان به روز رسانی می کنند و همکاری را در جامعه تشویق می کنند.

برای تعیین اینکه آیا یک پروژه دارای نگهدارنده فعال است، به مخازن راه دور آن مانند GitHub نگاه کنید. نگهبانان فعال به خوبی ارتباط برقرار می کنند. آنها به درخواست‌های کششی پاسخ می‌دهند، مسائلی را تنظیم می‌کنند، و به سؤالات مشارکت‌کننده پاسخ می‌دهند.

نگهبانان فعال را با بررسی تعداد دفعات پاسخگویی آنها به سوالات ارسال شده در کانال های اجتماعی شناسایی کنید. هر مخزن با سه ماه فاصله ارتباطی پروژه مناسبی نیست.

ویژگی های یک پروژه منبع باز خوب

در حالی که بسیاری از ویژگی های دیگر یک پروژه منبع باز مناسب را تعریف می کنند، موارد مهم عبارتند از نوع مجوز، ماهیت جوامع، کد منبع و نگهدارنده های فعال.

پروژه‌های متن‌باز با ویژگی‌های بالا الهام‌بخش نوآوری، مقیاس‌بندی و بازاریابی پروژه‌های کلاس جهانی هستند. همچنین، جوامع منبع باز عالی با روندهای فناوری همراه هستند و همکاری و تنوع را تشویق می کنند.

به احتمال زیاد، شما حداقل از یک محصول نرم افزار باز در زندگی خود استفاده کرده اید. چرا از آنجا شروع نمی کنیم؟ از ویژگی های ذکر شده در این مقاله استفاده کنید تا اطمینان حاصل کنید که بهترین پروژه را تکمیل می کنید که مهارت ها و نیازهای شما را تکمیل می کند.