داستان گیرافتادن من در نرم‌افزارهای آزاد

با دوستی حرف می‌زدم و او داستان بسیار طولانی و جذابش را برایم گفت که چه طور به جنبش نرم‌افزارهای آزاد علاقه‌مند شد. یادم افتاد که من هم داستانی دارم. قرار نیست حتماً داستان خارق‌العاده‌ای باشد و هوش از سر کسی بپراند. ولی دانستن دربارهٔ چنین داستان‌هایی، چیزهای زیادی را برای ادامهٔ این راه روشن می‌کند.

من حتی پیش از این که نرم‌افزار آزادی شوم، به نرم‌افزار علاقه داشتم. فکر می‌کنم اوایل دورهٔ راهنمایی بود که در خانه کتاب درسی کامپیوتر نظام قدیم برادر یا خواهرم را پیدا کردم. موضوع اصلی کتاب، برنامه‌نویسی به زبان بیسیک بود. این اتفاق مثلاً سال ۱۳۷۷ افتاد و بنابراین کتاب درسی مورد اشاره دست‌کم سه چهار سال قدیمی‌تر، یعنی مربوط به نیمهٔ اول دههٔ هفتاد بود. ما در آن زمان یک کامپیوتر اینتل ۴۸۶ (مونتاژ شرکت داده‌پردازی ایران) در خانه داشتیم که البته ماجرای ورودش به خانهٔ ما خودش یک داستان جداگانه است. فقط همین را بگویم که ما آن قدر پول نداشتیم که خودمان آن کامپیوتر را بخریم.

خلاصه من بودم و یک تابستان بیکاری، یک کتاب آموزش برنامه‌نویسی بیسیک، و یک کامپیوتر «مدرن» که در بین رقابت برادرها و خواهرها، گاهی اوقات در اختیار من بود.

از بیسیک شروع شد، ولی یک وقفهٔ چند ساله بینش افتاد، چون چند سالی درگیر ساخت و مونتاژ مدارهای الکترونیکی (رادیو و بی‌سیم و…) بودم. و بعد از مدتی، احتمالاً سال اول دبیرستان، به ویژوال بیسیک رسید. آن سال‌ها، بین همکلاسی‌هایم در دبیرستان من طرفدار دوآتشهٔ مایکروسافت بودم، زیرا محیط برنامه‌نویسی ویژوال بیسیک ۶ به نظرم بسیار منسجم و رویایی و کاربرپسند می‌آمد (البته تازگی دیدم که دیگرانی هم نظر مشابهی دارند).

مقدمهٔ GPL

نخستین رویایی من با نرم‌افزار آزاد در دانشگاه بود. احتمالاً سال دوم کارشناسی فیزیک در دانشگاه صنعتی شریف بودم که باید پروژهٔ درسی‌‌ای را تحویل می‌دادیم و استاد (احتمالا خانم دکتر اعظم ایرجی‌زاد) توصیه کرد که پروژه را با فارسی‌تک بنویسیم. همین فارسی‌تک راهم را برای دیدن اولین سری از نرم‌افزارهای «غیرمتعارف» باز کرد. فکر می‌کنم موقع نصب فارسی‌تک یا شاید هم برنامهٔ GhostViewer (برنامه‌ای برای خواندن پرونده‌های پست‌اسکریپت، خروجی فارسی‌تک) بود که باید شرایط و پروانهٔ نرم‌افزار را می‌پذیرفتیم. در مورد این برنامه‌ها باید متن پروانهٔ GPL را می‌خواندیم و روی دکمهٔ I AGREE کلیک می‌کردیم. من هم مثل اغلب کاربران دیگر، هیچ وقت متن کامل پروانه را نمی‌خواندم، ولی چندین بار نخستین جمله‌های GPL اتفاقی از برابر چشمانم گذشت:

Preamble
The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software–to make sure the software is free for all its users. This General Public License…

ترجمهٔ فارسی:
مقدمه
پروانه‌های اغلب نرم‌افزارها برای این طراحی شده است تا آزادی شما برای اشتراک‌گذاری و تغییر آن را از شما بگیرد. درست برعکس، پروانهٔ عمومی همگانی گنو می‌خواهد آزادی شما برای اشتراک‌گذاری و تغییر نرم‌افزار آزاد را تضمین کند–برای اطمینان از این که نرم‌افزار برای همهٔ کاربرانش آزاد باشد. این پروانهٔ عمومی همگانی…

واقعاً خوشحالم که پروانهٔ گنو با چنین بندی آغاز می‌شود. اگر این چند جمله در آغاز متن GPL نبود،‌ شاید من هیچ گاه در راه آزادی نرم‌افزار و سایر آزادی‌های دیجیتال پا نمی‌گذاشتم. این مقدمهٔ GPL حتی ارزش حقوقی‌ای هم ندارد (متن حقوقی و دقیق پروانهٔ GPL در بخش بعدی آغاز می‌شود). ولی الان می‌فهمم که تصمیم برای گنجاندن این مقدمه در متن پروانه، از چه بینش عمیق و نبوغ سرشاری سرچشمه می‌گیرد.

احتمالاً یکی از همین بارها بود که بعد از کلیک روی I AGREE و هنگام انتظار برای نصب برنامه، در اینترنت کلمهٔ عجیب GNU را جستجو کردم. با همین جستجوهای گاه‌وبیگاه، کم کم فهمیدم که دنیایی فراتر از مایکروسافت و ویندوز هم هست، و از آن مهم‌تر، با دیدن اشاره‌هایی به فلسفه، اخلاق، آزادی و… در مقاله‌های پروژهٔ گنو، فهمیدم که موضوعاتی فراتر از فناوری هم در نرم‌افزار مهم هستند.

فیزیک محاسباتی

https://www.linux-noob.com/review/fedora/fcrh/images/fcr4.png

رخداد بعدی این بود: دوست صمیمی‌ام در دانشگاه باید به توصیهٔ استادش، برای شبیه‌سازی مکانیک سیالات یک سیستم‌عامل ناشناخته و غیرعادی را به نام Fedora core نصب می‌کرد. وقتی این سیستم‌عامل را نصب‌شده روی کامپیوتر شخصی‌اش دیدم، وارد یک دنیای موازی شدم. دنیایی که در آن همه چیز ممکن بود، ولی از راه‌های تازه و عجیب. لازم بود تقریباً هر چیزی را که تا آن روز از دنیای ویندوز بلد بودم به کناری بگذارم و راه‌های تازه را در دنیای تازه بیاموزم. اگر توصیهٔ استاد او نبود، شاید هیچ وقت این محیط تازه را جدی نمی‌گرفتم. ولی حالا می‌دانستم که دست‌کم چیزهایی در این دنیای تازه هست که در ویندوز نیست یا در ویندوز به خوبی این‌جا نیست؛ اگر نه، چرا باید کسی زحمت ورود به این دنیای تازه را به خودش می‌داد؟

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

نخستین جستجوها

به دنبال کسی می‌گشتم که راهنمایی‌ام کند. تشنهٔ این بودم که بفهمم از کجا باید شروع کنم. نخستین کارم، قرض گرفتن سی‌دی‌های فدورا از مرکز کامپیوتر دانشگاه بود. نتیجهٔ تلاش‌هایم برای نصب فدورا پس از هفته‌ها مطالعه و آزمون و خطا و در ضمن پس از یک بار پاک‌شدن تمام حافظهٔ کامپیوترم، شکست مفتضحانه‌ای بود. به ویندوز برگشتم ولی همچنان چشمم در جستجو بود. یک بار در اتاق کامپیوتر دانشگاه یک دانشجوی سال‌بالایی را دیدم که روی لپتاپش محیطی زشت و بدرنگ (نارنجی و قهوه‌ای) داشت. وقتی سر حرف را با او باز کردم، گفت که این نامش «اوبونتو» (؟) است؛ تازه منتشر شده و بسیار هم پرطرفدار است. از روی تاریخ آن سال‌ها احتمالاً باید اوبونتوی ۵٫۰۴ یا ۵٫۱۰ می‌داشت.

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

https://live.staticflickr.com/7202/6921131765_5f4088354f_b.jpg

سرانجام نخستین نسخه‌ای از اوبونتو که نصب کردم، اوبونتوی ۶٫۰۶، یعنی نخستین نسخهٔ LTS اوبونتو بود. بر خلاف فدورا، این بار همه چیز همان طور که باید کار می‌کرد. بزرگ‌ترین مشکل (که حل شد، ولی حل کاملش یک سال دیگر طول کشید) راه‌انداختن مودم تلفنی کامپیوترم بود.

https://upload.wikimedia.org/wikipedia/commons/thumb/a/a2/Ubuntu-desktop-2-606-20080706.png/440px-Ubuntu-desktop-2-606-20080706.png

یادم است همان وقت‌ها در رویدادی هم شرکت کردم که در فرهنگ‌سرای فناوری اطلاعات (در خیابان کارگر جنوبی) برگزار شد. رویداد دربارهٔ گنو/لینوکس بود و ارائه‌دهندگانش احتمالاً نام‌هایی بودند که الان به گوشم خورده‌اند. یادم می‌آید در آن رویداد از یکی از ارائه‌دهندگان پرسیدم که آیا همهٔ نرم‌افزارهایی که در گنو/لینوکس اجرا می‌شوند باید آزاد باشند؟ همین پرسش به من نشان می‌دهد که فضای ذهنی‌ام آن سال‌ها حل یک یا چند مشکل تکنیکی خاص نبود: من در فکر یک آیندهٔ کاملاً آزاد بودم.

آغاز فعالیت‌های آگاهی‌رسانی

با نصب موفقیت‌آمیز اوبونتو من هم وارد این بازی تازه شدم. آن روزها رویایم این بود که بتوانم کاملاً از ویندوز مستقل شوم، و در این راه روزبه‌روز چیزهای بیشتری می‌آموختم که دوست داشتم به بقیه هم بگویم. نخستین تلاشم برای آگاهی‌رسانی وبلاگی بود به نام «تجربه‌های آزاد: تجربه‌های من در کار با نرم‌افزارهای آزاد». الان که صفحهٔ ثابت آن وبلاگ به نام «نرم‌افزار آزاد چیست؟» را می‌خوانم، می‌بینم که درک من از ارزش و اهمیت نرم‌افزار آزاد از آن زمان به طور اصولی تغییری نکرده و تنها به دامنه‌های تازه‌ای گسترده‌تر شده است.

به جز در این وبلاگ، من مدت زیادی در گوگل‌پلاس و سپس ماستودون تجربه‌هایم از کاربری نرم‌افزار آزاد را می‌نوشتم و می‌نویسم. ولی شاید دیده‌شده‌ترین اثر من دربارهٔ نرم‌افزار آزاد، مقاله‌ای است که در سایت میدان و سپس در وبلاگ شخصی خودم با عنوان «سوءتفاهمی به نام نرم‌افزار» نوشتم و در آن کوشیدم تا مفهوم آزادی در نرم‌افزار و اهمیت آن را برای مخاطبی که هیچ پیش‌زمینه‌ای در این باره ندارد روشن کنم.

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

کپی‌لفت: ایدهٔ خلاقانه‌ای که من دوستش دارم

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

ولی حالا من یه ایدهٔ تازه می‌زنم که کاملاً هم قانونیه: فرض کنید من یه اثری رو پدید آوردم و خودم صریحاً این اجازه‌ها رو به مصرف‌کنندگان اثرم میدم:

• به شما اجازه می‌دم که از کارم هر جوری که خواستید بهره ببرید
• به شما اجازه می‌دم که هر چه قدر خواستید اثر من رو کپی کنید و به دیگران بدید
• به شما اجازه می‌دم که حتی اثر من رو تغییر بدید
• به شما اجازه میدم که اثر تغییرداده‌شده رو حتی به نام خودتون هم منتشر کنید

فقط یک چیزی ازتون می‌خوام:

• اگر خواستید اثر من رو که تغییرش دادید منتشر کنید، شما هم باید همهٔ اجازه‌هایی رو که من به شما دادم، به بقیه بدید!

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

اگر فکر می‌کنید که این ایده عملی نیست، به شدت در اشتباهید! بزرگ‌ترین دانشنامهٔ جهان، ویکی‌پدیا، دقیقاً بر اساس همین اصل شکل گرفته. (یکی از) قوی‌ترین سیستم‌عامل‌(های) کامپیوتری جهان، که بیش از ۹۰ درصد سوپرکامپیوترها و بیش از نصف سرورهای اینترنت با اون کار می‌کنند، اسمش هست «لینوکس» و اون هم دقیقاً بر اساس همین اصل ساخته شده.

بذارید نگاه دقیق‌تری به دانشنامهٔ ویکی‌پدیا بندازیم. ویکی‌پدیا یک دانشنامهٔ آزاده در اینترنت که هر کسی می‌تونه توش مطلب بنویسه. نسخهٔ انگلیسی ویکی‌پدیا نزدیک ۴ میلیون مقاله داره. نسخهٔ فارسی هم نزدیک ۲۰۰ هزار مقاله داره. مقاله‌ها دربارهٔ همه چیز هستند: تاریخ، جغرافیا، ریاضی، فلسفه، فناوری، هر چیزی که فکرش را بکنید. اگر بخواهیم ویکی‌پدیای انگلیسی رو مثل کتاب منتشر بکنیم، حجمش (تا امروز که این رو می‌نویسم) به اندازهٔ‌ ۱۶۸۱ جلد کتاب میشه (+)! دقت کنید که آخرین ویرایش دانشنامهٔ بریتانیکا فقط ۳۲ جلده (+).

بر خلاف بیشتر کتاب‌ها که در صفحه‌هایی آغازین‌شون نوشته: «حق چاپ برای انتشارات فلان محفوظ است» ویکی‌پدیا چنین چیزی نداره. به جاش، ویکی‌پدیا تحت مجوز «CC-BY-SA 3.0» منتشر میشه (+). این یک مجوز معروفه که متن کاملش روی اینترنت موجوده (+). در واقع یک نوشتهٔ حقوقیه که اون اجازه‌هایی که گفتم خیلی دقیق و محکمه‌پسند توش نوشته شده. بنابراین اگر من هم خواستم اثری خلق کنم و این اجازه‌ها رو به دیگران بدم، کافیه به جای «حق چاپ برای فلانی محفوظ است» بنویسم: «این اثر تحت مجوز CC-BY-SA 3.0 قرار دارد.»

به چنین مجوزهایی میگن «کپی‌لِفت» یا به انگلیسی Copyleft. در واقع این نام خیلی بازیگوشانه است، چرا که داره واژهٔ «کپی‌رایت» (Copyright) رو به مسخره می‌گیره. «کپی» که معنیش رو همه می‌دونیم. «رایت» در انگیسی دو تا معنی داره: رایت به معنی راست (مخالف چپ) و رایت به معنی قانون. در واژهٔ کپی‌رایت هم این معنی دوم مورد نظره: کپی‌رایت یعنی «قانون کپی». حالا یک آدم بازیگوشی اومده و نام این دسته از مجوزها (که در واقع بر خلاف منظور متعارف کپی‌رایت کار می‌کنند) رو گذاشته کپی‌لفت (لفت در انگلیسی یعنی چپ).

بیشتر بخوانید:

حق تکثیر، ویکی‌پدیای فارسی

کپی‌لفت، ویکی‌پدیای فارسی

• آزادی و کپی‌لفت دربارهٔ نرم‌افزارهای کامپیوتری هم به کار می‌رود. اینجا می‌توانید تعریف نرم‌افزار آزاد را در سایت بنیاد نرم‌افزار آزاد ببنید.

آموزش لینوکس به عنوان نخستین سیستم‌عامل

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

این همان کاری است که من به تازگی انجام داده‌ام. یعنی کار با لینوکس را به مادرم یاد دادم که برای نخستین بار می‌خواست کار با کامپیوتر را یادبگیرد. این تجربه از این نظر برایم مهم بود که می‌شد اثر عاملی را که در بالا برشمردم حذف کرد؛ یعنی آشنایی قبلی با ویندوز دیگر عامل مزاحمی برای یادگیری کار با لینوکس نیست.

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

نکتهٔ جالب‌تر این است که در کامپیوتر او ویندوز را هم در کنار لینوکس نصب کرده‌ام. او هر دو سیستم‌عامل را دیده و کار با ویندوز را هم تقریباً به اندازهٔ کار با لینوکس یادگرفته است. ولی الان تنها با لینوکس کار می‌کند. البته ترجیح او به کارکردن با لینوکس تا حدی هم به این دلیل است که من در لینوکس چیزهای بیشتری به او یاد داده‌ام و تنظیمات این محیط را بیشتر به دلخواهش تغییر داده‌ام. و البته این کار (تغییر تنظیمات و سفارشی‌کردن سیستم‌عامل برای کاربران مختلف) در لینوکس به خاطر کدبازبودنش بسیار آسان‌تر از ویندوز است.

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

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