تاریخچه نرم‌افزارهای آزاد و متن‌باز

در دهه‌های ۱۹۵۰ و ۱۹۶۰، نرم‌افزارهای عامل کامپیوتر و کامپایلرها به عنوان بخشی از خرید سخت‌افزار بدون هزینه جداگانه تحویل داده شدند. در آن زمان، کد منبع، شکلی از نرم‌افزار قابل خواندن توسط انسان، به‌طور کلی با نرم‌افزاری که توانایی رفع اشکالات یا افزودن عملکردهای جدید را فراهم می‌کرد، توزیع می‌شد. دانشگاه‌ها اولین پذیرندگان فناوری محاسبات بودند. بسیاری از تغییرات ایجاد شده توسط دانشگاه‌ها، با رعایت اصول آکادمیک اشتراک‌گذاری دانش، آشکارا به اشتراک گذاشته شد و سازمان‌هایی برای تسهیل اشتراک‌گذاری به وجود آمدند. با بلوغ سیستم‌های عامل در مقیاس بزرگ، سازمان‌های کمتری اجازه تغییرات در نرم‌افزار عامل را دادند و در نهایت چنین سیستم‌عامل‌هایی برای اصلاح بسته شدند. با این حال، برنامه‌های کاربردی و سایر برنامه‌های کاربردی اضافه شده هنوز به اشتراک گذاشته می‌شوند و سازمان‌های جدیدی برای ترویج اشتراک گذاری نرم‌افزار تشکیل شده‌اند.[۱]

به اشتراک گذاری تکنیک‌ها قبل از نرم‌افزار

مفهوم اشتراک گذاری آزاد اطلاعات تکنولوژیکی مدت‌ها قبل از رایانه‌ها وجود داشت. برای مثال، در سال‌های اولیه توسعه خودرو، یک شرکت حقوق ثبت اختراع موتور بنزینی دو چرخه را که در اصل توسط جورج بی سلدن ثبت شده بود، داشت. آنها با کنترل این پتنت توانستند صنعت را در انحصار خود درآورند و خودروسازان را وادار به پایبندی به خواسته‌های خود کنند و در غیر این صورت با خطر شکایت مواجه شدند. در سال ۱۹۱۱، خودروساز مستقل هنری فورد به چالشی برای ثبت اختراع سلدن پیروز شد. نتیجه این بود که پتنت Selden عملاً بی‌ارزش شد و انجمن جدیدی (که در نهایت به انجمن سازندگان وسایل نقلیه موتوری تبدیل شد) تشکیل شد. انجمن جدید یک توافق‌نامه مجوز متقابل را بین تمام تولیدکنندگان خودروی ایالات متحده ایجاد کرد: اگرچه هر شرکتی فناوری را توسعه می‌داد و حق ثبت اختراعات را ثبت می‌کرد، این پتنت‌ها آشکارا و بدون مبادله پول بین همه سازندگان به اشتراک گذاشته می‌شد. تا زمانی که ایالات متحده وارد جنگ جهانی دوم شد، ۹۲ حق ثبت اختراع فورد و ۵۱۵ پتنت از سایر شرکت‌ها بین این سازندگان به اشتراک گذاشته شد، بدون هیچ گونه مبادله پول (یا دعوی قضایی).[۲]

نرم‌افزار آزاد قبل از دهه ۱۹۸۰

در دهه ۱۹۵۰ و در دهه ۱۹۶۰ تقریباً تمام نرم‌افزارها توسط دانشگاهیان و محققان شرکتی تولید می‌شد که با هم کار می‌کردند و اغلب به عنوان نرم‌افزار دامنه عمومی به اشتراک گذاشته می‌شدند. به این ترتیب، عموماً بر اساس اصول باز بودن و همکاری که مدت‌ها در زمینه‌های دانشگاهی ایجاد شده بود توزیع می‌شد و به خودی خود به عنوان یک کالا تلقی نمی‌شد. چنین رفتارهای جمعی بعداً به عنصر اصلی فرهنگ به اصطلاح هک (اصطلاحی با مفهومی مثبت در بین برنامه نویسان منبع باز) تبدیل شد. در آن زمان، کد منبع، شکلی از نرم‌افزار قابل خواندن برای انسان، به‌طور کلی با کد ماشین نرم‌افزار توزیع می‌شد، زیرا کاربران اغلب خودشان نرم‌افزار را تغییر می‌دادند، زیرا بدون تغییر روی سخت‌افزار یا سیستم‌عامل مختلف اجرا نمی‌شد، و همچنین برای رفع اشکال‌ها یا توابع جدید اضافه کنید اعتقاد بر این است که اولین نمونه نرم‌افزار آزاد و منبع باز سیستم A-2 است که در بخش UNIVAC رمینگتون رند در سال ۱۹۵۳ توسعه یافت و با کد منبع آن برای مشتریان عرضه شد. از آنها دعوت شد تا بهبودهای خود را به UNIVAC برگردانند. بعدها، تقریباً تمام نرم‌افزارهای اصلی IBM با کد منبع توزیع شد. گروه‌های کاربری مانند IBM 701 به نام SHARE و Digital Equipment Corporation (DEC) به نام DECUS برای تسهیل تبادل نرم‌افزار تشکیل شدند. سیستم عامل SHARE که در ابتدا توسط جنرال موتورز توسعه یافت، توسط SHARE برای کامپیوترهای IBM 709 و ۷۰۹۰ توزیع شد. برخی از آزمایشگاه‌های کامپیوتر دانشگاه حتی یک خط‌مشی داشتند که بر اساس آن تمام برنامه‌های نصب شده روی رایانه باید با فایل‌های کد منبع منتشر شده همراه باشند.[۳][۴]

کنترل نسخه توزیع شده (۲۰۰۱–اکنون)

اولین سیستم کنترل بازبینی توزیع شده منبع باز (DVCS) 'tla' در سال ۲۰۰۱ بود (از زمان تغییر نام به آرش گنو). با این حال، آن و جانشینان آن 'baz' و 'bzr' (بازار) هرگز محبوبیت زیادی پیدا نکردند، و آرک گنو متوقف شد، اگرچه بازار همچنان ادامه دارد و توسط Canonical استفاده می‌شود. با این حال، سایر پروژه‌های DVCS شروع به کار کردند و برخی شروع به پذیرش قابل توجهی کردند.

Git (از ۲۰۰۵ تاکنون)

Git، محبوب‌ترین DVCS، در سال ۲۰۰۵ ایجاد شد. برخی از توسعه دهندگان هسته لینوکس شروع به استفاده از یک DVCS اختصاصی به نام BitKeeper کردند، به ویژه بنیانگذار لینوکس لینوس توروالدز، اگرچه برخی دیگر از توسعه دهندگان کرنل به دلیل ماهیت اختصاصی آن هرگز از آن استفاده نکردند. زمانی که اندرو تریگل شروع به مهندسی معکوس BitKeeper با هدف تولید یک ابزار منبع باز کرد که می‌تواند برخی از عملکردهای مشابه را ارائه دهد، وضعیت غیرعادی که در آن توسعه هسته لینوکس شامل استفاده از برخی از نرم‌افزارهای اختصاصی می‌شد، به نتیجه رسید. نسخه تجاری BitMover، شرکتی که BitKeeper را توسعه داد، در پاسخ، در سال ۲۰۰۵ مجوز آزاد ویژه ای را که به توسعه دهندگان هسته خاصی اعطا کرده بود، لغو کرد.

در نتیجه حذف مجوز BitKeeper، لینوس توروالدز تصمیم گرفت DVCS خود را به نام git بنویسد، زیرا فکر می‌کرد هیچ‌یک از DVCSهای منبع باز موجود برای نیازهای خاص او به عنوان نگهدارنده هسته مناسب نیستند (به همین دلیل بود که او از BitKeeper در وهله اول استفاده کرد). تعدادی از توسعه دهندگان دیگر به سرعت وارد عمل شدند و به او کمک کردند، و git با گذشت زمان از یک «ردیاب محتوای احمقانه» نسبتاً ساده (که برخی از توسعه دهندگان بر روی آن پسوندهای «چینی» را توسعه دادند) به DVCS پیچیده و قدرتمندی که امروز است، تبدیل شد. با این حال، توروالدز دیگر خود git را حفظ نمی‌کند. سال‌ها توسط Junio Hamano نگهداری می‌شود و به دریافت کمک‌های بسیاری از توسعه‌دهندگان ادامه داده‌است. محبوبیت روزافزون DVCSهای منبع بازمانند git، و سپس، بعداً، سایت‌های میزبانی DVCS، که محبوب‌ترین آنها GitHub (تأسیس سال ۲۰۰۸) است، به‌طور تدریجی موانع مشارکت در پروژه‌های نرم‌افزار آزاد را کاهش داد. با سایت‌هایی مانند GitHub، دیگر مشارکت‌کنندگان بالقوه مجبور نبودند کارهایی مانند جستجوی URL برای مخزن کد منبع (که می‌تواند در مکان‌های مختلفی در هر وب‌سایت باشد، یا گاهی اوقات در فایل README یا اسناد توسعه‌دهنده قرار می‌گیرد) انجام دهند یا کار کنند. نحوه تولید پچ را بیاموزید و در صورت لزوم در لیست پستی مناسب مشترک شوید تا ایمیل پچ آنها به افراد مناسب برسد. مشارکت‌کنندگان می‌توانند به سادگی کپی خود را از یک مخزن با یک کلیک جدا کنند و زمانی که تغییرات آن‌ها آماده شد، یک درخواست کشش از شعبه مربوطه صادر کنند. GitHub به محبوب‌ترین سایت میزبانی در جهان برای نرم‌افزارهای منبع باز تبدیل شده‌است، و این به همراه سهولت فورک کردن و قابل مشاهده بودن فورک‌ها، آن را به راهی محبوب برای مشارکت‌کنندگان برای ایجاد تغییرات بزرگ و کوچک تبدیل کرده‌است.[۵]

پیشرفت‌های اخیر

در حالی که حق نکثیر ساز و کار قانونی اولیه‌ای است که نویسندگان نرم‌افزارهای آزاد برای اطمینان از انطباق مجوز برای نرم‌افزار خود از آن استفاده می‌کنند، ساز و کارهای دیگری مانند قانون، پتنت نرم‌افزار و علائم تجاری نیز کاربردهایی دارند. در پاسخ به مسائل حقوقی مربوط به پتنت‌ها و DMCA، بنیاد نرم‌افزار آزاد نسخه ۳ پروانه جامع همگانی گنو خود را در سال ۲۰۰۷ منتشر کرد که به صراحت به مقررات مدیریت حقوق دیجیتال (DRM) و حقوق اختراع DMCA اشاره می‌کرد.

پس از توسعه GNU GPLv3، به‌عنوان دارنده حق نسخه‌برداری بسیاری از قطعات سیستم گنو، مانند نرم‌افزار GNU Compiler Collection (GCC), FSF بیشتر مجوزهای برنامه‌های GNU را از GPLv2 به GPLv3 به‌روزرسانی کرد. اپل، کاربر GCC و کاربر سنگین DRM و پتنت، تصمیم گرفت کامپایلر را در Xcode IDE خود از GCC به Clang، کامپایلر دیگر نرم‌افزار آزاد، اما که تحت مجوز مجاز است، تغییر دهد. LWN حدس زد که انگیزه اپل تا حدی به دلیل تمایل به اجتناب از GPLv3 بوده‌است. پروژه سامبا همچنین به GPLv3 تغییر یافت که اپل آن را در مجموعه نرم‌افزاری خود با یک نرم‌افزار جایگزین منبع بسته و اختصاصی جایگزین کرد.

ادغام‌های اخیر بر نرم‌افزارهای منبع باز اصلی تأثیر گذاشته‌است. Sun Microsystems (Sun) MySQL AB، مالک پایگاه داده منبع باز محبوب MySQL را در سال ۲۰۰۸ خریداری کرد.

اوراکل به نوبه خود Sun را در ژانویه ۲۰۱۰ خریداری کرد و حق چاپ، حق اختراع و علائم تجاری آنها را به دست آورد. این باعث شد که Oracle صاحب محبوب‌ترین پایگاه داده اختصاصی و محبوب‌ترین پایگاه داده منبع باز (MySQL) شود. تلاش‌های اوراکل برای تجاری سازی پایگاه داده منبع باز MySQL نگرانی‌هایی را در جامعه نرم‌افزار آزاد ایجاد کرده‌است. تا حدی در پاسخ به عدم اطمینان در مورد آینده MySQL، جامعه نرم‌افزار آزاد پروژه را در سیستم‌های پایگاه داده جدید خارج از کنترل اوراکل تقسیم کرد. اینها عبارتند از MariaDB, Percona و Drizzle. همه اینها نامهای متمایز دارند. آنها پروژه‌های مجزا هستند و نمی‌توانند از نام تجاری MySQL استفاده کنند.[۶][۷]

اندروید

در سپتامبر ۲۰۰۸، گوگل اولین نسخه اندروید، یک سیستم عامل جدید گوشی‌های هوشمند را به عنوان منبع باز منتشر کرد (برخی از برنامه‌های گوگل که گاهی اوقات اما نه همیشه همراه با اندروید هستند، منبع باز نیستند). در ابتدا، این سیستم عامل به صورت آزاد توسط گوگل ارائه شد و مشتاقانه توسط بسیاری از سازندگان گوشی مورد استفاده قرار گرفت. گوگل بعداً موتورولا موبیلیتی را خرید و گوشی‌ها و تبلت‌های اندرویدی «وانیلی» خود را تولید کرد و در عین حال به تولیدکنندگان دیگر اجازه استفاده از اندروید را داد. اندروید در حال حاضر محبوب‌ترین سکوی همراه در جهان است.

از آنجایی که اندروید مبتنی بر هسته لینوکس است، این بدان معناست که اکنون لینوکس هسته غالب در پلتفرم‌های موبایل (از طریق اندروید) و ابررایانه‌ها و همچنین یک بازیکن کلیدی در سیستم‌عامل‌های سرور است.[۸]

Oracle v. Google

در آگوست ۲۰۱۰، اوراکل از گوگل شکایت کرد و ادعا کرد که استفاده از جاوا در اندروید، حق چاپ و حق اختراع اوراکل را نقض کرده‌است. آزمایش اولیه اوراکل علیه گوگل در ماه مه ۲۰۱۲ با این نتیجه که گوگل حق اختراعات اوراکل را نقض نکرده‌است به پایان رسید و قاضی دادگاه حکم کرد که ساختار رابط‌های برنامه‌نویسی برنامه جاوا (API) مورد استفاده توسط گوگل دارای حق چاپ نیست. هیئت منصفه متوجه شد که گوگل یک نقض حق نسخه برداری پیش پا افتاده ("دمینی") انجام داده‌است، اما طرفین شرط کردند که گوگل هیچ خسارتی پرداخت نخواهد کرد، زیرا بسیار پیش پا افتاده‌است. با این حال، اوراکل به مرکز فدرال اعتراض کرد و گوگل یک درخواست تجدیدنظر متقابل را در مورد ادعای کپی تحت اللفظی ارائه کرد. مرکز فدرال حکم داد که نقض حق نسخه‌برداری کوچکی که توسط Google تأیید شده‌است، کم‌اهمیت نبوده‌است، و موضوع استفاده منصفانه را برای بررسی مجدد به قاضی دادگاه بازگرداند. در سال ۲۰۱۶، این پرونده مجدداً محاکمه شد و هیئت منصفه برای گوگل به دلیل استفاده منصفانه پیدا شد.[۹]

Chromium OS (از ۲۰۰۹ تاکنون)

تا همین اواخر، لینوکس هنوز یک انتخاب نسبتاً غیر معمول سیستم عامل برای دسکتاپ و لپ‌تاپ بود. با این حال، کروم‌بوک‌های گوگل که سیستم‌عامل کروم را اجرا می‌کنند که در اصل یک کلاینت نازک است، ۲۰ تا ۲۵ درصد از بازار لپ‌تاپ‌های زیر ۳۰۰ دلار آمریکا را به خود اختصاص داده‌اند. سیستم‌عامل کروم از سیستم‌عامل آزاد و متن‌باز کرومیوم، که مبتنی بر لینوکس است، ساخته شده‌است، تقریباً به همان روشی که نسخه‌های اندرویدی که بر روی تلفن‌های تجاری موجود عرضه می‌شوند، از نسخه متن‌باز اندروید ساخته شده‌اند.[۱۰]

منابع

  1. VM Brasseur (2018). -9781680503012 Forge your Future with Open Source. Pragmatic Programmers. ISBN 978-1-68050-301-2. {{cite book}}: Check |url= value (help)
  2. James J. Flink (1977). The Car Culture. MIT Press. ISBN 978-0-262-56015-3.
  3. Gaudeul, Alexia (2007). "Do Open Source Developers Respond to Competition? The LATEX Case Study". Review of Network Economics (به انگلیسی). 6 (2). doi:10.2202/1446-9022.1119. ISSN 1446-9022. S2CID 201097782.
  4. "A brief history of spice". Archived from the original on 23 May 2007. Retrieved 18 June 2007.
  5. "SCM Ranking, Q3 2013" (PDF). Switch-Gears. Archived from the original (PDF) on 28 September 2013. Retrieved 22 September 2013.
  6. Samson, Ted. "Non-Oracle MySQL fork deemed ready for prime time". Archived from the original on 9 November 2011. Retrieved 23 October 2011.
  7. Nelson, Russell. "Open Source, MySQL, and trademarks". Archived from the original on 21 October 2011. Retrieved 23 October 2011.
  8. "Android, the world's most popular mobile platform". Archived from the original on 22 September 2013. Retrieved 6 September 2013.
  9. Jones, Pamela (5 October 2012). "Oracle and Google File Appeals". Groklaw. Archived from the original on 1 December 2012. Retrieved 17 November 2012.
  10. Williams, Rhiannon (11 July 2013). "Google Chromebook sales soar in face of PC decline". The Daily Telegraph. Archived from the original on 25 September 2013. Retrieved 3 September 2013.