چندتا پروژۀ متن باز ایرانی دیدید؟ من قبلاً چندتا نمونۀ فردی دیدم مثل چغوک و هضم ولی اکثراً فردی بودند و کاربردشون هم محدود به خود ایرانیها بوده، برنامهنویس خوب هم که کم نداریم، اکثر افراد هم میدونند یکی از راههای تمرین و توسعه برنامهنویسی هم شرکت در پروژههای متن بازه. برنامهنویسی محدود به رشتۀ کامپیوتر نیست امّا با این همه دانشجو/فارغالتخصیل نرمافزار فکر میکنید علت چیه؟ نبود توان کار گروهی؟ تنبلی؟
به نظرم دلایل مختلفی دارد اما مهمتریناش این است که پروژههای متنباز معمولا از یک جایی حمایت مالی میشوند. دانشگاهها و صنایع معمولا این پروژهها را حمایت میکنند. من انتظار دارم چنین پروژههایی از دل شرکتهای ایرانی بیرون بیاید. مثلا تا به حال شنیدهای که مپنا حامی یک پروژه متن باز باشد؟ یا مثلا فرهنگستان زبان حامی یک پروژه متنباز درباره پردازش روی متون باشد؟ در حالی که خیلی میشنویم که INTEL یا NVIDIA حامی یک پروژه هستند. برای مثال کتابخانه OpenCV که سودش به تمام بشریت میرسد توسط این دو شرکت بزرگ حمایت میشود.
به هر حال برنامهنویس هر چه قدر هم که برای رضای خلق برنامه بنویسد به حداقل پولی نیاز دارد تا زنده بماند. این پول به نظر من نقطه شروع هر اتفاقی است.
نه اتفاقا متن بازها خودشون جذب حمایت میکنن و یا درامدزایی میکنن. مثال ساده ش لینوکس (جذب حمایت) و یا همین دیسکورس (درامدزایی).
تجربه ی شخصی من از تعامل با برنامه نویسا (که البته هیچ کدوم حرفهای نبودن و در حال یادگیری بودن) این بود که:
-
این بچهها اهل رعایت کردن یه سری اصول ساده نبودن، اول از همه مستندسازی. اگه توجه کنین همهی پروژه های متنباز موفق مستندات خیلی قوی و شفافی دارن، در غیر این صورت سایرین نمیتونن همون کد رو ارتقا بدن (چون اصلا متوجهش نمیشن!) .
مقداری از این رعایت نکردن برمیگشت به اینکه روش درست مستندسازی رو بلد نبودن، و مقداریش هم برمیگشت به اینکه کدزنهای ما مزیت رقابتیشون محصولشون هست و نه خدمتشون. به عبارتی مسئله ی داشتن سخاوت علمی خوب است یا بد؟ براشون مطرحه. -
نکتهی دیگه هم یه جور حس عجیب بود از این جنس که عارشون میومد به توسعه ی محصول کسی دیگه کمک کنن. البته این برداشت من هست (قضاوت شخصی). دیالوگش از این جنس بود که «بیاین خودمون از اول بزنیم کدها رو و چرا باید یه پروژه دیگه رو ادامه بدیم؟»
این دیالوگ مربوط به کدزنهای حرفهای تر بود، همچنان عشق محصول زدن داشتن، و نه توسعه دادن. خب کسی که عشق محصول شخصی داره، پروژه متن باز خیلی به دردش نمیخوره.
از نظر تأمین مالی با @Ali_Shakeri موافقم، پروژههای بزرگ متنباز از طرف بنیادهای بزرگ [همچون Red Hat] حمایت میشوند. البته حمایت دولتی رو هم که دیدهایم، نمونهاش نقد علیرضا شیرازی- موسس بلاگفا - بر سیستمعامل ملّی یا خرید پروژۀ شکستخوردۀ فارسیتل توسط شورای عالی انفورماتیک.
من به پروژههای کوچکتر فکر میکنم، مثلاً IntroJS. پروژهایست بسیار ساده، با کمی وقتگذاشتن روزانه میشود کارهای زیادی شبیه به این کرد.
البته من همۀ این نقدها رو به خودم وارد میدانم، امّا به سبب کمالگرایی، گاهی تنبلیام رو توجیه میکنم، گرچه گاهی به توسعۀ متن باز کمک کردهام.
@lolmol مشکل میتونه فضای نرمافزاری ایران هم باشه، انگار قانونِ عرفی هم وجود نداره، تا همین چند سال پیش شرکتهای زیادی بودند که سیستمهای مدیریت محتوای متنبازی مثل مامبو - که البته الآن نسلاش منقرض شده - رو با کمی تغییر در نام و قالب با هزینۀ گزافی به سازمانها میفروختند. فکر میکنم، این مشکلاتی که مطرح کردید اکثراً ریشۀ روانشناختی داره و قابل تعمیم به مسائل دیگه هم هست.
در هر صورت لینوکس را دانشجویی نوشته که توسط دانشگاهاش حمایت شده است. منظور من از حمایت مالی بریز و بپاش پول نیست. منظورم حداقلی برای زنده ماندن است. مگر میشود برنامهنویسان پروژه OpenCV بدون دریافت هیچ حمایتی برنامه بنویسند؟ پس چه طور زنده میمانند؟
در مورد مستندسازی با شما موافقم. کلا سختمان است بخواهیم چیزی بنویسیم. اما حتی مستندسازی هم حمایت میخواهد. قبول کنید که فشار دادن انگشت روی کیبورد انرژی میبرد.
در مورد پروژههای علمی می توانم راحتتر حرف بزنم. برای مثال پروژهای هست به نام deal II که توسط یک دانشجوی دکترا نوشته شده است. اول از همه این که آن دانشجو بابت نوشتن این نرمافزار متنباز از دانشگاهاش حقوق گرفته است (در آلمان دانشجوی دکترا بدون پول دست به کار نمیشود). دوم این که این نرمافزار اعتبار علمی آن شخص است و هر کسی که از این نرمافزار استفاده کند به او ارجاع میدهد. در حال حاضر همین شخص استاد دانشگاه در آمریکا است و هنوز هم به خاطر حمایت دانشگاه است که میتواند به این پروژه ادامه دهد.
من متاسفانه دانشجوهای نرمافزار را ندیدهام اما در جامعه فیزیک ایران وضعیت برنامهنویسی به شدت خراب است.
پرسش
پروژههای متن باز چه مزایا و معایبی داره؟
چیزی که به ذهنم میرسه:
مزیت
- بعد از جا افتادن و فراگیر شدن، سرعت رشد و توسعهش خیلی بیشتر از سرعت رشد یه پروژه غیرباز هست.
عیب
- روش درآمدزاییش خیلی سرراست نیست.
اگه با همین دو دلیل، بخوام نتیجه بگیرم، میشه همین چیزی که توسط علی مطرح شد. تو ایران به چهار دلیل زیر پروژه متن باز خفنی شکل نگرفته:
- مدل درامدزایی donation چندان جا نیفتاده،
- هنوز یاد نگرفتیم از یه خدمت خوب درامدزایی کنیم (و در ضمن هزینه کردن مشتری برای خدمت به جای کالا، چندان جاافتاده هم نیست)
- جذب حمایت شرکتهای بزرگ و همین طور حمایت کردن به عنوان یه شرکت بزرگ رو چندان بلد نیستیم،
- به عنوان یه جوون سرمایه چندانی نداریم و ممکنه تا پروژه جا بیفته از گشنگی بمیریم.
سلام
نظر شخصی من اینه: ایرانی ها توی متن باز نه تنها عقب ضعیف نیستند بلکه حتا به نسبت بنیه مالی کامیونیتی جلو هم هستند. به این لیست یه نگاه بندازه مثلا.
یه نکته هم هست این وسط:
همین الان هم پروژه های متن باز از یک سطحی بزرگتر دارن توسط ارگان ها (چه دانشگاهی چه شرکتی) حمایت میشن و خب ما چنین شرایطی نداریم در ایران.
در مورد داستان ساخت لینوکس، میتونین کتاب فقط برای تفریح، ترجمه جادی رو مطالعه کنید. داستان پروژهای که برای تفریح لینوس توروالدز نوشته شد و دنیای کامپیوتر رو متحول کرد و لینوس توروالدز رو هم میلیونر کرد.
امروز لینوکس روی بزرگترین ابرکامپیوترهای دنیا که هر کدوم میلیونها هسته پردازنده دارند نصب شده.