5 راه حل برای نگهداری از پروژه های متن باز

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

 5 راه حل برای نگهداری از پروژه های متن باز

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

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

یک لایسنس واضح و مشخص بسازید

می دانید چه چیزی واقعا غم انگیز است؟ یک لایسنس نامشخص. فرض کنید خطایی را تحت عنوان " این نرم افزار تحت GPL مجوز دریافت کرده است" دریافت کنید بدون آن که هیچ گونه توضیح اضافی را دریافت کنید. کدام نسخه از GPl؟ آیا می توانم گزینه ای را انتخاب کنم؟ برای قسمت های بدون کد در پروژه های متن باز دریافت اخطار "تحت مجوز Creative Commons  مجوز گرفته است " می تواند بسیار بدتر باشد، اما به صورت کلی من لایسنس Creative Commons را در نگهداری پروژه های متن باز دوست دارم، اما در این زمینه مجوزها و لایسنس های مختلف با حق و حقوق مختلفی وجود دارد. من به این مجوز علاقه دارم ولی برای نگهداری از پروژه های متن باز خود حتما در هنگام استفاده از آن سعی می کنم مشخص کنم که کدام نسخه و لایسنس را مورد استفاده قرار داده ام تا به صورت واضح کاربران بتوانند آن را مشاهده کنند. بنابراین پروژه متن باز من شامل یک متن کامل درباره لایسنس است بدون آنکه متنی درباره سایر فایل ها در آن وجود داشته باشد.

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


به گزارشات باگ ها و سوالات سریعا پاسخ دهید

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


ویژگی های جدید و یا رفع باگ ها را بدون داکیومنتیشن قرار ندهید

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


زمانی که قصد ترک پروژه را دارید آن را از بین نبرید

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