اردیبهشت ۲۷

‌چند روز پیش با یکی از بچه های خیلی فنی و باتجربه شرکت یک بحث فلسفی در مورد نرم‌افزارهای آزاد و اپن‌سورس نسبت به نرم‌افزارهای اختصاصی (proprietary) داشتم که البته در نهایت بحث ناتمام موند به خاطر مساله‌ای که مطرح کرد و من چون احاطه‌ای به اون مطلب نداشتم که بتونم جواب بدم لذا بحث ناتمام ماند و به قول خودمون من کم آوردم ولی بهش گفتم میرم مطالعه می‌کنم، حداقل برای اینکه این شبهه برای خودم برطرف بشه. موضوع چی بود و از کجا شروع شد؟
خیلی ساده! قشرهای دیگه رو نمی دونم ولی در مورد رایانه، وقتی ۲ تا آدم کامپیوتری به هم می‌رسند شروع می کنند به صحبت و بحث و تبادل‌نظر که با جنبه‌های ناآشنای علم رایانه بیشتر آشنا شوند و از تجربیات هم استفاده کنند و ما هم بر اساس همین قاعده صحبتمون داغ شد. پس از کلی بحث در مورد فناوری‌های مخابراتی، شبکه و امنیت و … و تبادل‌نظر‌هایی که انجام دادیم و خیلی هم عالی بود و کلی مطالب دستگیرم شد رسیدیم به بحث نرم‌افزار‌ و ماشاالله گنو/لینوکس امروزه اینقدر گسترده شده و کاربرد داره به خصوص برای کار صنعتی که بحثمون در باب نرم‌افزار با گنو/لینوکس شروع شد. (البته وقتی ۲ تا آدم که تقریبا ۱۰۰٪ کارهاشون روی این پلتفرم هست دیگه واضح است بحث رو با ویندوز یا مک شروع نمی‌کنند!) پس از کمی تبادل‌نظر در باب لینوکس و نرم‌افزار آزاد که اون هم خیلی خوب بود به خصوص در مورد سیستم‌های جاسازی شده (Embedded Systems) که تقریبا این سیستم‌ها در سلطه لینوکس هستند نمی دونم چه مساله‌ای مطرح شد که از مسایل فنی ییهو! رسیدیم به مسایل فلسفی و ایدئولوژی و فلسفه پشت نرم‌افزار‌های آزاد و اختصاصی و مقایسه آنها که متاسفانه من همیشه در این موارد کم میارم.
مسایل زیادی مطرح شد و طرفین هم به نسبت توانستند همدیگر را نسبت به مواضع شون متقاعد کنند. کم‌کم دیگه داشت بحثمون به جاهای باریک می کشید، مثلا اون می‌گفت: “چه لزومی داره من نرم‌افزاری که می نویسم سورس کد یا همون کد منبع اش را در اختیار همه بگذارم و اصلا این کار به چه دردی می‌خوره؟ و …” که منم تا جایی که می دونستم پاسخش را میدادم که دیگه آخر گفت: “میدونی چیه؟ نرم‌افزار‌ آزاد یک مدل کمونیستی‌ایه که برای مقابله با تفکر کاپیتالیسم در حوزه نرم افزار ایجاد شد. اگر هم دقت کنی تاریخ پیدایش اش دقیقا برمی‌گرده به اوج جنگ سرد.”
یک کم در مورد این مطالب و کمونیسم و کاپیتالیسم و غیره که صحبت کرد دیدم خیلی هم بیراه نمیگه ولی از آنجایی که در فیلم انقلاب اپن سورس دیده بودم که بزرگان نرم‌افزار آزاد تاکید داشتند که نرم‌افزار آزاد نگرشی کمونیستی نیست دچار تناقض شده بودم. از طرفی چون من این ایدیولوژی‌ها رو اصلا نمی شناسم به جز یک سری کلیات دیگه دیدم نمی‌تونم بحث را ادامه بدم و عملا بحث خاتمه یافت. امروز خواستم یک کم در این موارد مطالعه کنم. یک بار دیگر سوال را مرور کنیم:
سوال: آیا جنبش نرم‌افزارهای آزاد یک جنبش کمونیستی، سوسیالیستی است که هدف آن ایجاد یک جامعه کمونیستی در حیطه نرم افزار است؟
واضح است که برای پاسخ به این سوال باید بدانیم که ۱- نرم‌افزار‌ آزاد چیست و چه مشخصاتی داره؟ ۲-تفکرهایی مانند مارکسیسم، سوسیالیسم و کمونیسم چگونه تفکراتی هستند؟
در مورد نرم‌افزارهای آزاد تعدادی از بچه‌های نازنین کامیونیتی لطف کردند و مقالات کاملی را در این زمینه نگارش یا به فارسی ترجمه کرده‌اند؟ مانند تعریف نرم‌افزار آزاد، چرا نرم‌افزار نباید مالک داشته باشد؟، لینوکس چیست؟، تاریخچه لینوکس، GPL: آزادی و تضمین آزادی . به طور کوتاه اگر مرور کنیم:
“نرم‌افزار آزاد در مورد آزادی کاربران برای اجرا٬ کپی٬ توزیع٬ بررسی٬ تغییر و بهبود دادن نرم‌افزار می‌باشد. بطور دقیق‌تر نرم‌افزار آزاد به چهار نوع آزادی برای کاربران یک نرم‌افزار اشاره می‌کند:

  • آزادی برای اجرای برنامه برای هر منظوری (آزادی ۰)
  • آزادی برای مطالعه و بررسی چگونگی عملکرد برنامه و تغییر آن برای نیاز خود (آزادی ۱). دسترسی به کد منبع یک پیش‌شرط برای این آزادی می‌باشد.
  • آزادی برای توزیع مجدد کپی‌هایی از آن٬ بنابراین شما می‌توانید به همسایگان [اطرافیان] خود کمک کنید (آزادی ۲).
  • آزادی برای بهبود برنامه و انتشار این تغییرات برای عموم٬ بنابراین تمام جامعه از آن بهره می‌برند (آزادی ۳). دسترسی به کد منبع یک پیش‌شرط برای این آزادی می‌باشد.”

برای آشنایی با ۳ تفکر مارکسیسم، سوسیالیسم و کمونیسم هم اگر به ویکی‌پدیای فارسی یا در بعضی موارد که ناقص است به انگلیسی آن مراجعه کنید جملاتی مانند زیر را خواهید دید: “میان مارکسیست‌های مختلف, برداشت‌های بسیار متفاوتی از مارکسیسم و تحلیل مسائل جهان با آن موجود است اما موضوعی که تقریباً همه در آن توافق دارند واژگونی نظام سرمایه‌داری از طریق انقلاب کارگران و لغو مالکیت خصوصی و کار مزدی و ایجاد جامعه‌ای بی طبقه با مردمی آزاد و برابر و در نتیجه، پایان ازخودبیگانگی انسان (که کمونیست‌ها معتقدند در جهان سرمایه‌داری ناگزیر است) است.” و یا “سوسیالیسم اندیشه‌ای سیاسی، اقتصادی و اجتماعی است که هدف آن لغو مالکیت خصوصی ابزارهای تولید و برقراری مالکیت اجتماعی بر ابزارهای تولید است.” و در نهایت “کمونیسم یک ساختار اجتماعی-اقتصادی است که تأسیس یک جامعه‏ی بدون طبقه، بدون دولت (هیئت حاکمه) بر اساس مالکیت اشتراکی بر ابزار تولید را ترویج می کند. معمولاً کمونیسم به عنوان شاخه‏ای از جنبشی بزرگ‌تر به نام سوسیالیسم مطرح می‏شود.”
اگر پایه و اساس جامعه کمونیستی که بر “لغو مالکیت خصوصی و برقراری مالکیت‌اجتماعی بر ابزارهای تولید” است را با مقاله چرا نرم‌افزار نباید مالک داشته باشد؟ از ریچارد استالمن (پدر نرم‌افزار آزاد) که در تبیین نرم‌افزار آزاد نوشته شده را کنار هم بگذارید می‌بینید کاملا بر هم منطبق هستند!‌ یعنی نرم‌افزار آزاد با اندیشه و ایدیولوژی سوسیالیسم کاملا سازگار است. پس چرا بزرگان نرم‌افزار آزاد اعتقاد دارند اجتماع نرم‌افزار آزاد به هیچ وجه یک جامعه کمونیستی نیست؟
شما به این موضوع فکر کنید، من هم چند مقاله باقیمانده در این باب را مطالعه کنم و پاسخ به این سوال را در یک مطلب دیگر پیگیری کنیم!

پی نوشت: نگران نباشید، تحقیق خانم‌های نرم افزار آزاد را دارم با جدیت دنبال می کنم. فقط یک مقدار مطالعاتش برخلاف آن چیزی که فکر می کردم زیاد شده که اتفاقا لازم هم بود. خلاصه thread اش داره در پس زمینه اجرا میشه!‌ D:

اردیبهشت ۱۴

این سوال ممکنه برای هر کس که به نوعی با نرم افزار آزاد/اپن سورس کار می کنه پیش بیاد! سوال از این قراره که چرا میزان مشارکت خانم ها چه به لحاظ کاربر چه به لحاظ توسعه دهنده در اجتماع کاربران و توسعه دهندگان نرم افزار آزاد/متن بازنسبت به آقایون کمتر هست؟ البته اگه بخواهیم به مساله به صورت کلان نگاه کنیم این مساله میتونه خیلی کلی تر باشه. بدین صورت که چرا تعداد خانم ها کلا در فناوری های اطلاعات و ارتباطات نسبت به آقایون کمتره و کلی تر بخواهیم به قضیه نگاه کنیم بدین صورت میشه که چرا تعداد خانم ها کلا در رشته های فنی و مهندسی نسبت به آقایون کمتره؟ برگردیم به عنوان اصلی و فعلا به مساله در حیطه نرم افزار آزاد/ متن باز نگاه کنیم. البته همین جا بگم هر ۳ سوالی که در بالا ذکر شد فقط مختص مملکت ما نیست بلکه در همه جای دنیا وجود داره. شاید بنا به دلایل فرهنگی و اجتماعی در کشورهایی مثل کشور ما نسبت به کشورهای غربی این مساله حادتر باشه. به نظرم بد نباشه در ابتدا به یک آمار و ارقامی در این زمینه توجه کنیم، البته آمار دقیقی قطعا وجود ندارد ولی آمارهای تقریبی با دقت خوبی نزدیک به هم هستند. به عنوان نمونه آمار موجود در این سایت را ببینیم: (خانم ها: بخش نارنجی نمودار ، آقایان: بخش آبی نمودار )

نمودار ۱- تعادل جنسیت، آمارها نشان می دهند که در سطح دنیا تعداد زنان با مردان برابراست

نمودار ۲- در بخش فناوری اطلاعات و ارتباطات، نسبت مشارکت خانم ها به آقایان بین ۲۵% تا ۳۵% می باشد

نمودار ۳- در اجتماع نرم افزارآزاد، نسبت مشارکت خانم ها به آقایان بین ۱/۱% تا ۵% می باشد

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

فروردین ۹

یکی از مجلاتی که من همیشه مطالب و مقالاتش را دنبال می کنم و واقعا مطالبش در زمینه نرم افزار آزاد و اپن سورس فوق العاده است Free Software Magazine است. یعنی امکان نداره در هر شماره ای مقاله ای نباشه که شما رو مجذوب خودش کنه. داشتم آرشیو مجله را مرور می کردم که به مطلبی تحت عنوان War and Free Software برخوردم. مقاله در این زمینه است که شکل جنگ ها در دنیا در حال تغییر است و به جای اینکه یک سری نیروهای نظامی بیان و جنگ رو جلو ببرند یک سری روبات و ماشین برنامه ریزی بشن که به صورت اتوماتیک این کار رو انجام بدن. مثلا در یکی از پیوندهایی که در مقاله ذکر شده آمریکا طرحی رو داره که یک نیروی نظامی بر اساس روبات هایی که تحت شبکه به هم متصل هستند رو تشکیل بده و برای این کار ۱۱۷ میلیارد دلار هم تاکنون هزینه کرده و ظاهرا فاز اولش که پروسه تحقیق و توسعه بوده به اتمام رسیده.
در ادامه مقاله گفته که در این زمینه یعنی همین نظامی گری با توجه به عوامل مختلف میل به نرم افزارهای آزاد/متن باز بیشتر است. نه اینکه حالا فکر کنید از طبیعت نرم افزار آزاد خوشش میومده بلکه برای اینکه در محیط نرم افزار آزاد کدها در اختیار هستند و دیگه لازم نیست تلاش و سرمایه گذاری برای برنامه نویسی از اول صورت بگیره (اگر بخوام به زبان خودمون بگم یعنی توسعه دهندگان نرم افزار آزاد کد می زنند و اینا هم خیلی راحت بدون توجه به قانون کدها رو می بلعند). در ادامه عوامل دیگری که مثلا نمیشه از نرم افزارهای اختصاصی (proprietary) مثل نرم افزارهای میکروسافت و … استفاده کرد را این طور ذکر کرده که این سازمان ها فکر می کنند این نرم افزارها امن نیست و بعدش هم نمیشه به این شرکت ها اعتماد کرد. البته من با این دلیل مقاله و کلا این قسمت موافق نیستم که مثلا چون لینوکس یک طبیعت بازی دارد امن است و میکروسافت یا ادوبی که سیستم بسته دارند امنیت نرم افزارهاشون بد است. به نظر من برای امنیت نرم افزاری یک سری عوامل باید دست به دست هم بدهند که اون سیستم به حد قابل قبولی از امنیت برسه. جای بحثش این جا نیست ولی قطعا یک متخصص امنیت می تونه یک ویندوز را به حد قابل قبولی برسونه و یک کاربر ناآشنا هم می تونه یک سیستم لینوکس را به حد پایینی از امنیت برسونه.
پیوندهایی که در مقاله اومده به نظرم خیلی جالب و مفید است و امیدوارم حتما بخونیدشون. ولی نکته تاسف بار این مقاله به نظر من استفاده از کدهای نرم افزار آزاد بدون رعایت و تضمین آزادی برای دیگران است که مقاله به سازمان های نظامی اشاره کرده ولی در کشورهایی من جمله کشور عزیزمان ایران داره در تمامی زمینه ها فراگیر میشه. GPL (مجوز نرم افزاری عمومی GNU) که اکثریت این نرم افزارها از اون به عنوان مجوز نرم افزاری استفاده می کنند با صراحت بیان می کند که هرکس می تواند از این کدها استفاده کند، بررسی و مطالعه کندو تغییر دهد ولی اگر هر تغییری داد باید دوباره به صورت آزاد منتشر کند. حالا باز در مورد سازمان های نظامی همون طور که در قسمت نظرات بحث شده شاید بشه یک توجیهی آورد ولی دیگر شرکت های نرم افزاری چه توجیهی دارند که این گونه آزادی نرم افزار رو نقض می کنند؟ نمونه اش همین جایی که خودم الان توش دارم کار می کنم که خیر سرمون بخش لینوکس هستیم و همه چیز رو داریم زیرپا می گذاریم. من واقعا نمی دونم چی باید بگم ولی فقط می دونم هیچ مملکت و مردمانی با بی قانونی نتوانستند و نمی توانند در درازمدت پیشرفت کنند و به جایی برسند.

پیوست ۱: در مقاله پیوندی به ایران هم هست که ارایه دکتر خوانساری است در مورد طرح ملی نرم افزارهای آزاد/متن باز که با تمام نقدها و ایراداتی که بیشتر از دیگران خودم به این طرح داشتم و دارم واقعا متاسفم که این طرح که تنها طرح در زمینه نرم افزارهای آزاد بود دیگر دنبال نشد.
پیوست ۲: یک لحظه فکر کنید یک توسعه دهنده نرم افزار آزاد/متن باز هستید. عشق و علاقه شما این است که برنامه و کدی بنویسید که بتونه مشکلی از مشکلات کاربران رو حل کنه و زندگی بهتری برای انسان ها به ارمغان بیاره. حالا یک سری آدم پیدا شده اند که از این کدها که شما با هزار عشق و علاقه زده اید می خواهند برای نابودی و قتل و غارت انسان ها استفاده کنند! واقعا چه حالی بهتون دست میده؟! نمی دونم چرا همیشه که این چیزها رو می بینم یاد ترانه تصورکن از آقای سیاوش قمیشی می افتم، حداقل توی ذهن و رویامون دیگه اجازه داریم دنیای مطلوبمون رو بسازیم. امیدوارم روزی برسه که این آقایون عالم یک کم به خودشون بیان و دست از این اعمالشون که دنیا رو به این شکل درآورده بردارند!