اولین تلاش من برای کمک به جامعه کدهای آزاد

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

همه چیز داشت به همین خوبی و خوشی پیش میرفت تا اینکه چند روز پیش به خودم اومدم. به خودم تشر زدم که هی آرش! برای چی همیشه مصرف کننده‌ای و هیچوقت تولید کننده یه کد خوب و آزاد نیستی که بقیه هم بتونن ازش استفاده کنند و تو وقتشون صرفه‌جویی کنند؟

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

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

برای همین تصمیم گرفتم یه چند تایی کلاس که برای خودم نوشتم و برای مقاصد خاص ازشون استفاده میکنم رو بذارم رو گیت‌هاب. از یه کلاس خیلی ساده شروع کردم که چند جایی خیلی به دردم خورده. داستان این کلاس اینه که من همیشه برای مرتب کردن RadioButton هایی که تو اندروید به زبون فارسی بودن و دکمه‌شون رو برده بودم راست، مشکل داشتم. چون کلاس RadioGroup (که برای مرتب کردن و هندل کردن ایونتها روی RadioButton هست) برای زبون فارسی خیلی بهینه نیست و مشکلاتی ایجاد میکنه. برای همین کلاسی نوشته بودم که بدون نیاز به RadioGroup بشه ایونت روی دسته‌ای از RadioButton ها رو هندل کرد. اینجوری میشه هر RadioButton رو جداگونه و بدون مشکل layoutبندی کرد. خلاصه که این کلاس رو به همراه Interfaceیی که لازم داره گذاشتم رو گیت‌هاب، براش یه توضیح کوتاه به زبون انگلیسی نوشتم و سعی کردم یه نمونه ای از نحوه‌ی استفاده‌ش رو هم بنویسم.

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

6 پاسخ به “اولین تلاش من برای کمک به جامعه کدهای آزاد”

  1. تمدن گفت:

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

    • آرش خوئینی گفت:

      راستش به خاطر اینکه معمولا اکثریت برای پیدا کردن راه حل انگلیسی سرچ میکنن انگلیسی نوشتم.
      اما اضافه کردن توضیج فارسی ایده خوبیه که ایشالا عملیش میکنم 🙂

  2. به درد یک نفرم بخوره خیلی خوبه، همون نفر شاید با این کار تو به عقیده اوپن سورس بودن ایمان آورد و به روشنایی رسید و تو شدی استاد فو برای اون :)))

  3. سیف گفت:

    بهترین پستت از نظر من همین بود. کار قشنگیه ادامه بده به نظرم تو وبلاگت هم یه پست در مورد این کتابخونه هات بزاری باعث میشه بهتر دیده بشن. مثلاً یه پست بزاری “چیدمان راحت تر رادیو باتن ها در اندروید…” کمی در مورد مشکلات گروپ کردن و … توضیح بدی ، کمی در مورد کتابخونه خودت و بعد هم لینک ، یعنی همین توضیحاتی که تو این پست دادی رو کمی شاخ و برگ بده ، البته این یه پیشنهاده

    • آرش خوئینی گفت:

      لطف داری سیف جان.
      مرسی از نظرت. خیلی پیشنهاد خوبیه. سعی میکنم حتما عملیش کنم :‌ )

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

android application Google I/O HomeBrew ImageMagick Material Design mobile PogressBar RecyclerView splash TEDxKish ux آموزش اندروید الوین تافلر اندروید اپلیکیشن برنامه نویسی برنامه نویسی اندروید برنامه‌نویسی برنامه‌نویسی اندروید تداکس کیش تعمیر تغییر سایز عکس با ترمینال خلاصه کتاب دانش داده دانشگاه دانشگاه ایده‌آل دزد دیتا ساینس رشته مهندسی کامپیوتر ریکامندرسیستم سیستم‌های توصیه‌گر فری‌لنس لپتاپ متریال دیزاین معرفی کتاب موج سوم نوار پیشرفت همایش هوش مصنوعی ُجزیره کیش کار کسب و کار یادگیری عمیق یادگیری ماشین