پرتال شخصی مهدی رافعی

فروشگاه افق
ofogh-shop.com

نویسندگان
دوشنبه, ۲ بهمن ۱۳۹۱، ۰۲:۳۶ ب.ظ

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

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

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

ـ من برنامه نویس خوبی نیستم.

ـ نمی دانم روی چه پروژه ای کار کنم.

را در ذهن خود مطرح می کنیم؛ اما باید به نکات زیر توجه کرد:

ـ پروژه ها به همه افراد با هر سطح توانایی و مهارت نیاز دارد.

ـ کمک هر اندازه هم که اندک باشد، باز هم سودمند است.

ـ بهترین پروژه برای کمک، پروژه ای است که از آن استفاده می کنیم.

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

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

● شنیدن

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

● پیوستن به فهرست های ایمیل

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

● خواندن بلاگ

بلاگ های این پروژه ها که معمولا توسط توسعه دهندگان مرکزی به روز می شود، اطلاعاتی از جمله قابلیت هایی را که در نسخه های بعدی نرم افزار پیاده می شود شامل می شود. سایت های قمری معمولا این کار را انجام می دهند و اخبار و حواشی توسعه پروژه را تحت پوشش خبری قرار می دهد. وب سایت هایی چون planet.gnome.org و planet.mysql.com از این نمونه هاست. برای شروع می توانید در گوگل عبارت planet و سپس نام پروژه را جستجو کنید.

● پیوستن به IRC

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

● کار با تیکت ها

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

● تشخیص باگ

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

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

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

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

امتحان کنید آیا باگ در آخرین نسخه تیکت نیز وجود دارد یا خیر. اگر باگی وجود نداشت، این موضوع را در تیکت قید کرده و آن را ببندید. اگر باگ هنوز وجود داشت، در انتهای تیکت این موضوع را یادداشت کنید و تیکت را باز بگذارید.

● کار با کد

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

مثلا در پروژه PostgreSQL، اصلاح کدها به شکل Patch به فهرست ایمیل ارسال می شود و بعد توسعه دهندگان از هر نظر کد جدید را بررسی می کنند، اما مثلا در پروژه ای دیگر مثل Parrot، کافی است دسترسی تغییر مستقیم کد را داشته باشید.

اگر پروژه مورد نظر از GitHub استفاده می کند، می توان از قابلیت pull آن استفاده کرد و به طور مستقل به تولید پچ پرداخت.

محمدرضا قربانی
روزنامه جام جم ( www.jamejamonline.ir )

نظرات  (۰)

هیچ نظری هنوز ثبت نشده است

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی