نرم افزار متن باز یا open source چیست | فلسفه آزادی نرم افزار ( متن باز | Open Source ) چیست؟ | تفاوت بین نرم افزارهای آزاد و تجاری چیست | داستان، فلسفه و تاریخچه تمامی این سوالات از جمله مباحثی هست که قصد داریم در این مقاله درباره اونها صحبت کنیم.
تا حالا براتون سوال پیش نیومده که چرا وقتی یک تیم یا شخصی، نرم افزاری رو مینویسه، کدهای برنامه نویسی شده اون رو به رایگان در اینترنت منتشر می کنه! در واقع یک نرم افزار شامل مجموعه ای از کدهای برنامه نویسی شده هست که بعضی از طراحان اون کدهارو به رایگان در دسترس دیگران قرار میدند و به این ترتیب هر شخصی می تونه از اون برنامه به صورت رایگان و همراه با آزادی های مختلف استفاده کنه.
ایده بعضی از افراد این هست که یک نرم افزار رو با خدمات پایه و حده اقلی طراحی می کنه، بعد کد اون برنامه رو توی وب سایت ها و یا فضای اینترنت منتشر می کنه و از مهندسها و برنامه نویسهای علاقه مند درخواست می کنه تا در ساخت و طراحی آپشن های بیشتر برنامه بهش کمک کنند و یا خودشون برنامه رو توسعه و با برنامه نویس اصلی در ارتباط باشند تا اگه خدمات خوبی رو طراحی کردند، توسط منبع اصلی نسخه جدید برنامه معرفی بشه.
از طرفی هم ایده بعضی از افراد این هست که اگه من یک برنامه ای رو نوشتم پس انحصار این برنامه هم باید در اختیار خودم باشه. من میتونم این برنامه رو به افرادی که میخوام بفروشم و بقیه هم فقط میتونند انتقادات و پیشنهاد های خودشون رو درباره برنامه بهم بگن و اگه اون هارو مناسب دونستم روی نرم افزارم اعمالشون میکنم. کد این برنامه فقط در دسترس من و تیمم هست و فقط ما میتونیم قابلیت های مختلفی رو برای استفاده کاربران ارائه بدیم و بقیه افراد برای استفاده از نرم افزار، باید قوانین تعیین شده مارو بپذیرند.
بعضی از برنامه نویس ها و توسعه دهندگان نرم افزار از این ایده ها حمایت و برنامه های خودشون رو مطابق با این ایده ها انتشار میدند. به هرحال هیچ اجباری برای پیروی از قوانین موجود نیست و هر برنامه نویس می تونه مطابق با استانداردها و عقاید خودش نرم افزار رو طراحی و به عموم ارائه کنه.
فلسفه آزادی نرم افزار ( متن باز | Open Source ) چیست؟ نرم افزار آزاد، نرم افزاری هست که آزادانه و بدون محدودیت خاصی، به هر منظوری و برای هر کاری استفاده میشه و همچنین همه افراد میتوانند کد نرم افزار را در اختیار داشته باشند، اون رو بررسی کنند و تغییر بدند، و کپی کردن یا توزیع و پخش مجدد اون با تغییرات انجام شده، آزاد هست و فقط تنها با کمی محدودیت (مثلا مجوزهایی که تعیین میکنند کاربرهای بعدی هم باید این آزادی هارو داشته باشند) هست.
کد نرم افزار به همراه مجوز و تائیدیه ای که آزادی های ذکر شده رو برای کاربر فراهم میکنه، منتشر میشه و به اون مجوز یا اجازه نامه نرم افزار آزاد گفته میشود. همچنین نرم افزاری که آزادی های زیر را برای کابران فراهم میکند، نرم افزار آزاد یا متن باز نامیده می شود:
هر کاربری که از یک نرم افزار با این شرایط استفاده می کنه، و قصد تغییر و یا انتشار دوباره برنامه رو داره، باید به بقیه کاربرها هم تمامی این آزادی هارو بده و مطابق با این استانداردها یک برنامه تا اخرین نسخه به صورت رایگان در دسترس عموم خواهد بود.
نرم افزار آزاد (Free Software) یک ایده در سطح بین المللی هست و به دلیل ابهام و مشکلاتی که در لفظ آزاد و یا Free وجود داره، این برنامه ها به نرم افزارهایی رایگان و بی ارزش نسبت داده میشدند و به همین دلیل نام این ایده به متن باز (Open Source) تغییر پیدا کرد، زیرا در نرم افزار آزاد بحث بخاطر قیمت نیست و شما می توانید توزیع خود را حتی به فروش برسانید و فقط آزادی های همراه نرم افزار ملاک است.
اما آزادی نرم افزار یک ایده کلی بود و برای پیاده سازی اون و تبئیت کردن اجتماع از این قوانین، نیاز به یک مجوز قانونی و استاندارد بود که این آزادی هارو تضمین کنه.
در ابتدا یک استاندارد در طراحی نرم افزارها، با ایده حمایت از آزادی در مقابل محدودیت ایجاد شد. این استاندارد به کپیلفت معروف شد که بیانگر مخالفت با کپی رایت هست. به این معنی که شما اجازه ندارید با افزودن محدودیت هایی به یک نرم افزار تحت قانون کپی لفت، آزادی های اون را برای دیگران از بین ببرید. همچنین این قانون از آزادی های یک برنامه محافظت میکند.
یکی از ضمانت ها و مجوزهایی که آزادی نرم افزار را تأمین میکند، اجازه نامه عمومی همگانی (General Public License) است و مطابق با مجوز GPL هر کاربری می تواند متن نرم افزار را در اختیار داشته باشه و با تغییر اون یک توزیع مجددی رو بسازه و متن برنامه نباید به حالت محدود شده ای در بیاد (مگر با نظر همه نویسندگان آن برنامه که در این صورت دیگه جرو نرم افزارهای آزاد نیست).
در زمان های قدیم (۱۹۸۰ میلادی) که نرم افزارهای انحصاری رواج پیدا کرده بود، بعضی از توسعه دهندگان و برنامه نویس ها شروع به نوشتن نرم افزارهای آزادی کردند تا بتوانند با سرمایه گرایی و انحصار نرم افزارها رقابت کنند و این افراد معتقد هستند محدودیت هایی که سرمایه گرایی برای استفاده از نرم افزارها به صورت تجاری اعمال میکنند مانع از اصلاح و پیشرفت این برنامه ها میشه و با این نوع از محدودیت ها مخالف هستند. در دوره آموزش لینوکس اسنشیالز و قسمت مفاهیم لایسنس در لینوکس به بررسی فلسفه متن باز و آزاد متن می پردازیم. در زیر شما می تونید نرم افزارهای مختلف و محبوبی که این روزها زیاد استفاده میشه و از قوانین کپی لفت و آزادی نرم افزار پیروی می کنند، مشاهده کنید:
نرم افزارهای آزاد معمولا به عنوان یک ایده مطرح و با همکاری برنامه نویسهای داوطلب به صورت یک پروژه به وجود میآیند و ایده اصلی اینه که کاربران باید مالک دستگاه های دیجیتالی خودشون باشند، نه سازندگان دستگاهها.
در اوایل پیدایش نرم افزار، اون ها به صورت آزاد منتشر می شدند و برنامه نویسان و شرکت های نرم افزاری، اون ها را به صورت آزادانه در اختیار عموم قرار می دادند و تجارت و کسب و کار در حوضه رایانه ها بیشتر مربوط به سخت افزار بود و هر شرکت، یک نوع از سخت افزار مورد نیاز کاربران رو تولید و بخشی از بازار رو به خودش اختصاص می داد.
سخت افزار شرکت های مختلف باهمدیگه سازگاری نداشتند و ساخت و طریقه کارکرد اون ها هم متفاوت بود و هیچ استاندارد خاصی برای تولید تجهیزات رایانهای وجود نداشت.
در آن زمان مفسر و کامپایلرها (وظیفه اجرای نرم افزارهای مختلف بر روی سخت افزارهای مختلف رو به عهده دارند) هنوز سطح پایداری نداشتند و بین برنامه نویسها محبوب نبودند و به همین دلایل نرم افزاری که روی سخت افزار یک شرکت کار میکرد، روی سخت افزار شرکت دیگری، کار نمیکرد و هر نرم افزار فقط برای یک سخت افزار خاص شخصی سازی و ساخته شده بود.
با مرور زمان، صنعت رایانه پیشرفت کرد و استاندارهای مختلفی برای ساخت سخت افزارها و تجهیزات رایانه ای ارائه شد و کامپایلرها و مفسرها پیشرفت کردند و باعث شد تا برنامه ها وابسته به یک سخت افزار خاص نباشند و قابلیت انتقال و اجرا شدن برنامه روی سخت افزار شرکتهای مختلف فراهم شد.
با این پیشرفتها، تولیدکنندگان و برنامه نویس ها، به این نتیجه رسیده بودند که باید برنامه های موجود را به فروش برسانند. بنابرین دسترسی به کدهای برنامه رو برای عموم مردم مسدود کردند و دسترسی تغییر در نرم افزار را از اونها گرفتند.
در سال ۱۹۶۹ میلادی، شرکتی به نام ایدیار (ADR) اولین نرم افزار تجاری دارای مجوز خودش رو منتشر کرد و شرکت آیبیام (IBM) نیز به خاطر اینکه به همراه سخت افزار های خودش، نرم افزار آزاد ارائه میکرد، به از بین بردن کسب و کارها و ایجاد شرایطی که باعث رقابت نکردن و بهبود نیافتن برنامه ها میشد، متهم گردید و ایبیام نیز دیگر به همراه سخت افزار های خود، نرم افزار آزاد ارائه نکرد و به این صورت نرم افزار ها و سخت افزار ها کم کم از همدیگه جدا شدند و تجارت مبتنی بر نرم افزار شکل گرفت.
بعد از همه این اختلافات، بالاخره در سال ۱۹۸۳ میلادی، ریچالد استالمن، از آزمایشگاه امآیتی (MIT) آمریکا، که از تغییر فرهنگ در صنعت رایانه و کاربران اون نا امید شده بود، تصمیم گرفت تا سیستم عاملی رو به نام گنو، به صورت یک نرم افزار آزاد بسازه و اون رو توسعه بده. سال ۱۹۸۴ توسعه سیستم عامل گنو شروع شده بود و در سال بعد اون، ریچالد استالمن، بنیاد نرم افزارهای آزاد رو برای حمایت و جذب برنامه نویس ها و مهندسان کامپیوتر تاسیس کرد تا از پروژه گنو حمایت و نرم افزارهای آزاد و مختلفی رو طراحی و ارائه کنند.
یک نکته ای هم که وجود داره اینه که نرم افزار های آزاد رو میشه به فروش رسوند ولی نباید آزادی های کاربران مانند داشتن کد برنامه و تغییر و انتشار مجدد آن حتی به صورت رایگان را نیز محدود کرد. همچنین راه های متعددی برای کسب درآمد از نرم افزارهای آزاد وجود داره که از مهم ترین اون ها میشه به ارائه خدمات و پشتیبانی یک نرم افزار اشاره کرد.
در این مطالب به معرفی انگیزه و دلایلی پرداختیم که باعث میشه برنامه نویس ها و طراحان، نرم افزارهای خودشون رو تحت قوانین نرم افزار آزاد منتشر کنند. همچنین درباره موضوع فلسفه آزادی نرم افزار ( متن باز | Open Source ) چیست؟ به بحث و گفت و گو پرداختیم و درباره تاریخچه و فلسفه به وجود اومدن این آزادی ها صحبت کردیم. در آخر هم اگه علاقه مند بودید تا درباره این مسائل عمیق تر بشید، می تونید به بخش بیشتر بخوانید مراجعه کنید.
مدرس، برنامه نویس، علاقه مند به امنیت اطلاعات، سرباز
مهیار کرمانی، مدرس هستم و در زمینه های شبکه و سیستم عاملها تولید محتوا می کنم. در زمانهای آزادم برنامه نویسی می کنم، بیشتر با پایتون و بش. به سیستم عاملهای لینوکسی و متن باز به شدت علاقه دارم. درحال یادگیری هستم و به امنیت اطلاعات و تبدیل شدن به یک هکر قانونمند علاقهمندم. درحال حاضر سرباز و مشغول خدمت معظم سربازی هستم. کتاب خوندن و پیاده روی توی طبیعت، کوه و صحرا هم از سرگرمیهای شخصیم هست.
زمان پاسخ گویی روز های شنبه الی چهارشنبه ساعت 9 الی 18
فقط به موضوعات مربوط به محصولات آموزشی و فروش پاسخ داده می شود