Posted by: Mehrdad on: جولای 17, 2008
میخوام در مورد نرمافزارهای آزاد/متنباز و اینکه چطور میشه که یک نرمافزار توسعه پیدا میکنه؟ (از صفر یا ناصفر) صحبت کنیم.
اینجا منظور از توسعه یافتن یک نرمافزار، هم میتونه ایجاد یک پروژه باشه، هم توسعه و بزرگتر کردن یک نرمافزار موجود
اگر کلی نگاه کنیم یک نرمافزار (آزاد یا انحصاری) زمانی توسعه پیدا میکنه که یک نیاز احساس بشه!
بحث رو به نرمافزارهای آزاد منحصر میکنیم!
چند مثال برای نیازهایی که باعث توسعهی یک نرمافزار آزاد میشه:
نیازها زیادن، حالات هم زیادن، اما هدف از این داستان این بود:
دیروز که داشتم دنبال یه Instant Messenger که Voice هم پشتیبانی کنه میگشتم، با دوستانی در یه انجمن(دقیق یادم نیست کجا!) مواجه شدم، و حرفاشون برام جالب بود:
خوب معروفترین برنامهی IM توی لینوکس همون Gaim یا Pidgin است. (نسخهی ویندوزی هم داره و پر کاربرد هم هست) خوب این برنامه نه از صدا(Voice) پشتیبانی میکنه نه از تصویر(WebCam) بحث در موردش زیاد بود، اما جوابی که تیم توسعه به ملت داده بودن اینطور بود:
We plan to implement these features eventually, but it is a daunting task. Not all of our developers care about these features, and because of that don’t want to work on them. The time available to those developers who do want to work on these features is limited, and so any work on these features proceeds slowly.
We aim to have an abstracted, protocol-agnostic API for voice and video, which makes the task harder. Also adding to the difficulty is that now that we have a completely split core (libpurple) and UI (Pidgin and Finch), we refuse to take a step backward and violate this split. The protocol plugins can NOT have any code in them that is UI-dependent, or we break the libpurple/UI split. This imposes additional restrictions that make it a very painstaking process to implement voice and video correctly.
In short, we have no idea when this will happen. It could be tomorrow, or it could be in 2099. That’s really the best answer we can give right now.
گفتن: این کار، ریسکش بالاس و سخت و خطرناکه! چون باید کدشون رو بهم بریزن، در واقع اینم برمیگرده به اینکه این افراد هیچوقت نیازی به صدا هنگام چت نداشتن، و فکر هم نمیکردن که زمانی برسه که نیاز بشه! نمونهی این مسئله رو میتونین توی کانالهای IRC که سالهاس داره استفاده میشه دید! در واقع هکرها و توسعهدهندهها برای نیازهای خودشون هیچ گاه به صحبت کردن علاقهای نداشتن و به صرف تایپ کردن مشکل حل شده، پس چرا باید وقتشونو روی کاری که نه نیازی بهش دارن، نه علاقهای تلف کنن؟
ملت، اونجا تاسف خورده بودن که چرا اینکار رو نمیکنن؟!؟ در حالی که تاسفی نداره، زندگی همینه! هیچ گربهای برا رضای خدا موش نمیگیره (یا برای سیر کردن شیکمش میگیره یا از اینکار لذت میبره)
اینجا افرادی هستن که میگن: «آقا ایرادی که خیلی از دوستای ما به لینوکس میگیرن و نمیاین طرفش همین نداشتن یک IM با پشتیبانی خوب از صدا و تصویره!» خوب در جواب این دوستان میگن: «خوب بهشون بگو نیان طرف لینوکس» اصلا میخوان بیان چیکار؟ صبر کنن تا یکی پیدا بشه که یا خودش به این نیاز داشته باشه، یا به هر دلیل دیگهای علاقه داشته باشه روش کار کنه.
پس بیایید انتظار زیادی نداشته باشیم، به هر حال اون توسعهدهندهها هم آدمن کارهای زیادی دارن، گاهی دیدم که افرادی اینجا پیدا میشن و میگن مثلا فلان کار که کاری نداره! فقط میخواد فلانش کنن!
بعد که میپرسی شما برنامهنویسی؟
میگه: نه.
- خوب پس از کجا میدونی کار به همون سادگی که فکر میکنیه؟!
نمونهاش همین مشکل Pidgin که گویا بعلت طراحی اولیهاش زمان و کار زیادی میبره انجامش، و خوب نمیصرفه روش وقت بزارن.
یه پیشنهاد به جامعهی کاربران Pidgin یا Kopet که نیاز به صدا و تصویر دارن به کلم زد:
یه صندوقی باز کنن، هر کس یه پولی کمک کنه، یه پول خوبی که شد، به تیم توسعه، یا یه نفر دیگه بدن تا این نیاز رو برآورده کنه!
.
چند تا توصیه به کاربران نرمافزارهای آزاد/متنباز:
اگر ایدهای دارین، شروع کنین، اگر کارتون خوب باشه و هدفتون خوب، دیگرانی پیدا میشن که کمک کنن، ولی احتمالش کمه! پس زیاد روش حساب نکنین! اینکه جایی اعلام کنی که من میخوام فلان چیزو بسازم، کی پایهاس؟ خوب معلومه که هیچکی! هر کسی گرفتاری خودشو داره. اول باید شروع کنی، بعد دیگران میان!
راههای زیادی برای کمک به برنامهای که استفاده میکنین بر حسب توانایی شما، وجود داره، حداقلش گزارش کردن خطاها، و کمک به رفعشون. و دادن پیشنهادهای خوب است.
——————————————————————
پ.ن. ۱: دوستانی خرده میگیرن، که این چه وضعیه، این طوری که تو میگی مردم رو از لینوکس و نرمافزارهای آزاد زده میکنی!
خوب به نظر من بهتره که از همون اول آدم این حقایق رو بدونه. تا اینکه بعدا دچار سرخوردگی بشه که چرا فلانی فلان کار رو نمیکنه برا ما؟!؟!
و البته که توسعهدهندهها بدشون نمیاد برنامهشون بهتر بشه، ولی باید دید به چه قیمتی! و اینکه آیا اون کار به هزینهاش میصرفه یا نه؟
پ.ن. ۲: بیشتر مطالب پست، توهمات من بودن، و ممکنه اشتباه باشن!
سلام.
خسته نباشید . من یک وب سایت با عنوان آموزش برنامه نویسی ساختم که به زودی آغاز به کار می کند . اگر مایل به تبادل لینک هستید لینک من را با نام وب سایت آموزش برنامه نویسی لینک کنید و به وب سایت من بروید و لینک خود را در قسمت پیوندها اضافه کنید.
با تشکر
——————————————-
مهرداد:
متاسفانه ما آدمای رادیکالی هستیم، مخصوصا در زمینهی لینک دادن تو وبلاگ!
و دیگه اینکه از این سیستمهای تبادل لینک هم بدمون میاد، هرکی دوست داره لینک بده، ما هم به هر کی دوست داریم لینک میدیم، هیچ توقعی هم نداریم.
مي گم مهراد , مجيد رو كشتي !؟ چرا ديگه اون هيچي پست نمي كنه ؟ از وقتي وبلاگت رفته تو planet اكتيو شدي d: هي تاپيك مي زني . اگه مي دونستيم اينجوري مي شه زودتر درخواست مي داديم بفرستنت تو planet .
در مورد برنامه نويسي تو لينوكس هم بايد بگم اول آدم بايد بره تو ويندوز خوب يه زبوني مثل c# يا جاوا رو ياد بگيره بعد يك كار پيدا كنه اخر سر كه پول دراورد بره دنبال عشقش و برنامه نويسي در لينوكس ( دوران پيري !! ) .
———————————————
مهرداد:
مجید رفته سفر! امروز و فردا میاد!
نبابا ما که همیشه اکتیو بودیم، به این دو سه ماه گذشته نگاه نکن! قبلترا رو ببین ![]()
در مورد برنامهنویسی هم به اون وحشتناکی که گفتی نیست، شایدم من تصمیم دارم اول پیر شم! بعد زندگی کنم!
مهرداد حس می کنم تو خیلی از موارد مسائل شخصی و غیر حرفه ای رو مطرح کردی..
مسائلی که بهتره بهت بگم مهندسی نبودند…
گاهی اوقات مسائلی خیلی خیلی مهمتر واسه شروع یک پروژه ی نرم افزاری و یا توسعش وجود داره.
—————————————————
مهرداد:
خوب، پر بیراه هم نفرمودی! منم ادعا نکردم مطالب حرفهای یا مهندسیه! گفتم که توهمات خودمه!
ما که هنوز نه مهندسیمون کامل شده، نه حرفهای هستیم، سجاد جان!
ممنون میشم موردهای دیگهای که سراغ داری رو هم بگی!
” «خوب بهشون بگو نیان طرف لینوکس» اصلا میخوان بیان چیکار؟ ” بسيار جمله ي زيبايي رو گفتي !!! ملت مي خوان بيان لينوكس كار كنن كه چي بشه ، بزار يكمي(چند صد دلار) پول خرج كنن و با ويندوز حال كنن …
يك ديوانه –» گنو/ هرد(ي) يا گنو/لينوكس(ي) !!!!!!!!
یک ساعت نشستم خوندمش(الان خیلی هم خوابم میاد) اخز می بینم اصلا فایده نداشت
اخه تو که زحمت تایپ رو می کشی چرت و پرت چرا می نویسی
———————————-
مهرداد:
خوب دیگه زندگی همینه، گاهی خوبه گاهی چرنده
جولای 18, 2008 روی 12:24 ق.ظ
این همه رو تایپ کردی؟!!! یا گفتی یکی برات تایپ کرده!
اگه مورد دومش برام پیدا بشه. اون موقع فکر کنم دیگه حرف هم نمیتونم بزنم!
—————————————-
مهرداد:
هان؟!؟!؟!؟!
کی مرده؟
دادم یکی برام تایپ کرده(ما به همه همینو گفتیم، سه شو بگیر)! شما به دل نگیر