پایگاه داده Open Source
بررسی نرم افزارهای متن باز Open Source
درحال حاضر نرم افزارهایی به بازار آمده اند که علاوه براینکه به صورت رایگان عرضه میشوند، همراه باکد سورس ومنبع آن هستند به عبارتی دراینگونه نرم افزارها علاوه بر نسخه ترجمه شده ، کد اولیه نیز دراختیار متقاضیان قرار میگیرد. با در اختیار داشتن کد اصلی برنامه ؛امکان اعمال تغییرات ویا سفارشی نمودن آن متناسب با خواسته استفاده کنندگان توسط کارشناسان فراهم میگردد در این تحقیق قصد داریم به بررسی نرم افزارهای Open Source ؛ علت به وجود آمدن این نرم افزارها وتوضیح مختصری از چند نمونه معروف نرم افزارهای Open Source بپردازیم. امید است این تحقیق برای خوانندگان محترم مفید بوده ودر تکمیل وتصحیح خطاهای این مقاله، این جانب را یاری بفرمایند.
جنبش نرم افزاری رایگان از سال 1983 آغاز شده. در سال 1983 یک گروه از اشخاص نماینده شدند که اصطلاح نرم افزار رایگان را با نرم افزار منبع بسته جایگزین کنند. این جنبش غالبا با یک استراتژی و راهبرد آغاز شده است. خیلی از مردم اعتقاد دارند که تولد اینترنت، از سال 1369 جنبش منبع باز را شروع کرده است در حالی که دیگران تفاوت بین منبع باز و حرکت نرم افزار رایگان را تشخیص نمیدهند در ادامه به تفاوت این دو معقوله نیز خواهیم پرداخت.
اکثر نرم افزارهائی را که شما تهيه و يا از طريق اينترنت Download می نمائيد ، صرفا" به صورت نسخه های ترجمه شده و آماده اجراء در اختيار شما قرار می گيرند . ترجمه ، فرآيندی است که در آن کد برنامه های نوشته شده توسط برنامه نويسان که از آنان به عنوان کد اوليه ( Source Code ) ياد می شود ، پس از استفاده از برنامه های خاصی موسوم به کمپايلرها به بگونه ای ترجمه می شوند که توسط کامپيوتر قادر درک باشند . اعمال تغييرات دلخواه در اکثر برنامه های ترجمه شده ، امری بسيار مشکل و گاها" غير ممکن است . اکثر توليد کنندگان نرم افزار از ويژگی فوق به منظور صيانت و حفاظت از کدهای نوشته شده ، استفاده می نمايند . نرم افزارهای Open Source نقطه مقابل رويکرد فوق می باشند . در اينگونه نرم افزارها علاوه بر نسخه ترجمه شده ، کد اوليه نيز در اختيار متقاضيان قرار می گيرد.بدين ترتيب امکان اعمال تغييرات و يا سفارشی نمودن آن متناسب با خواسته استفاده کنندگان ، فراهم می گردد . افراديکه از ايده Open Source حمايت می نمايند بر اين اعتقاد هستند که با اجازه دادن به اشخاصی که علاقه مند به تغيير کد اوليه می باشند ، امکان استفاده مفيدتر از برنامه فراهم و احتمال بروز خطاء در آنان، کاهش خواهد يافت .
ويژگی نرم افزارهای متن باز Open Source : توزيع رايگان . اين نوع برنامه ها ، ممکن است به عنوان بخشی همراه يک بسته نرم افزاری ارائه شوند که به متقاضيان فروخته می گردند.کد منبع می بايست بهمراه نرم افزار ،ارائه گردد . هر شخص می بايست اجازه تغيير کد اوليه برنامه را داشته باشد . نسخه های اصلاح شده را می توان مجددا" توزيع نمود . به مجوز ساير نرم افزارها نياز نخواهد بود .
بنیان گذار Open Source
اریک ریموند بنیانگذار جنبش منبع باز ویا حداقل یکی از پیشروترین افراد فعال در این جنبش نرم افزاری است وی ضمن فعالیت و تحقیق در روابط انسانی جامعه و فرهنگ هکر اینترنتی، به عنوان یک فرد ناظر در اجتماع هکرهای اینترنتی شناخته شده است. تحقیقات او روشنگر موفقیت های چشمگیر مدل توسعه نرم افزار منبع باز بوده است. در فهرست پروژه های نرم افزاری ریموند، علاوه بر کار بر روی سیستم عامل یونیکس، نام یکی از پرکاربردترین نرم افزارهای انتقال اطلاعات از طریق پست الکترونیک نیز دیده میشود. ریموند علاوه بر فعالیت در حوزه های نرم افزارهای منبع باز، علاقه مندی های دیگری نیز دارد و یکی از طرفداران پروپا قرص ادبیات علمی تخیلی نیز هست. ریموند ضمن داشتن درجه وعنوان کمربند مشکی در ورزش رزمی تکواندو، یک نوازنده ماهر و موسیقی دان نیز هست. اما واقعیت آن است که هیچ یک از موارد فوق در زندگی اریک ریموند به اندازه نقش او در به جریان انداختن جنبش منبع باز اهمیت نمی یابند و افراد بسیاری به درستی او را یک انسان شناس سرگردان و فیلسوف دردسرساز میدانند که بر حسب تصادف، در زمان مناسب در موقعیت درستی قرار گرفته است.
از نظر وی تفاوتی بین نرم افزارهای Open Source و دیگر نرم افزارها نیست. کاربران، مجوزها و ابزارها در هر دو مورد مشابه هستند. تفاوت در روش تبلیغ وگرایش های عرضه کنندگان آنهاست.
بد نیست اشاره ای به یک مثال واقعی در دنیای نرم افزارهای Open Source داشته باشیم. در سال 1991، Linus Torvalds ، دانشجوی دانشگاه هلسینکی فنلاند یک سیستم عامل جدید مبتنی بر Minix را ایجاد کرد که نام آن را لینوکس(Linux) گذاشت. وی نسخه شماره 0.02 لینوکس را بر اساس GNU General Public Licens که شامل تعاریف قانونی جامعی در خصوص نرم افزارهای Open Source است، ارائه نمود. تعداد زیادی از افراد در سرتاسر جهان اقدام به Download لینوکس و استفاده از آن نمودند. گروه زیادی از افراد فوق خود برنامه نویسان حرفه ای بودند که توانایی انجام تغییرات مورد نیاز در لینوکس را داشتند. Torvalds ، نسخه های اصلاح شده توسط سایر برنامه نویسان را دریافت و با لحاظ نمودن تغییرات، در سال 1994 نسخه شماره یک لینوکس را عرضه نمود.
نگرانی های Open Source
یک نکته نگران کننده در خصوص نرم افزارهای Open Source ، فقدان ضمانت و پشتیبانی فنی از آنان است. با توجه به این موضوع که همواره امکان ویا بهتر بگوییم مجوز اعمال تغییرات ویا اصلاحات در این نوع نرم افزارها وجود دارد، تقریبا حمایت از آنان غیر ممکن ویا مشکل خواهد بود. بدین دلیل برخی از شرکت های حامی نرم افزارهای Open Source با توجه به ارائه سرویس خدمات و پشتیبانی اینگونه نرم افزارها، اقدام به فروش آنان می نمایند. مثلا نرم افزار Red Hat در سال 1994 توسط Official Red Hat Linux عرضه گردید. نرم افزار فوق رایگان نبوده و متقاضیان می بایست هزینه استفاده از آن را پرداخت نمایند. مهمترین ویژگی Red Hat ، امکان پشتیبانی فنی از آن است. برای اغلب سازمان ها و موسسات تضمین حمایت های فنی و پشتیبانی یکی از عوامل مهم تصمیم گیری در خصوص خرید لینوکس در مقابل Download نمودن آن به صورت رایگان می باشد. علاوه بر Red Hat ، شرکت های متعدد دیگری نیز اقدام به عرضه لینوکس با توجه به سیاست ها و دیدگاه های خاص خود نموده اند. در این رابطه نرم افزارهای متعددی با محوریت لینوکس نیز طراحی و پیاده سازی شده است. Netscape، Mozilla، سرویس دهنده وب Apache ، زبان اسکریپت نویسی وب PERL و فرمت فایلهای گرافیکی PNG، نمونه هایی در این زمینه بوده که بر اساس ایده Open Source طراحی و پیاده سازی شده اند.
دید تجاری به نرم افزارهای Open Source
Open Source یک Business Model نیز می باشد، و شاید به دلیل برای بعضی ها غریبه است که در محیط و فضای نرم افزار کشور ما، همواره تنها Business Model، فروختن یک برنامه بوده، و تنها چیزی که این مد را حفظ خواهد کرد، محرمانه بودن سورس کد، و اختیارات تام و کامل مالک بر نرم افزار است.
اما این تنها "مدل" کسب درآمد نیست. وقتی میتوان از چیزی کسب درآمد کرد، پس آن مورد میتواند محور یک Business Model باشد. اگر بتوان از انتشار سورس در کنار قواعد و شرایطی، به سبک دیگری کسب درآمد کرد، این یک کسب و کار با ارزش هست. دقت کنید Open Source ارتباط خاصی به قیمت و پول هزینه ندارند، در واقع Open Source در مورد مسأله ی آزادی فکر میکند. طبیعت انسان، در بستر آزادی رشد میکند،نه محدودیت. محدودیت، میتواند روشی برای کسب قدرت و پرداختن به تجارت باشد، چه در سیاست، چه در فرهنگ یا اقتصاد، اما تجربه نشان داده است انسان، بیشتر از کنترل، به آزادی مایل بوده، وحاضر است برای بقای آزادی نیز هزینه پرداخت کند؛ Open Source نماد و پرچم آزادی در صنعت نرم افزار است. کمپانی های زیادی از این طریق به کسب و کار مشغولند، و افراد زیادی صرفا در حال کمک کردن به توسعه هستند، تا به حال خبری مبنی بر مرگ یک توسعه گر منبع آزاد در اثر گرسنگی منتشر نشده.
مهم است که اگر از منظر "تجارت" به Open Source نگاه میکنیم، به مفهوم و معنای Business Model توجه کنیم، و اصرار نداشته باشیم که فرض کنیم، تجارت لزوما باید همان بده بستان انحصاری و اختصاصی باشد که به صورت کلیشه ای به ذهن میرسد. قاعده کلی این است که میتوان از نرم افزار کسب درآمد کرد، و نسبت نرم افزار و پول، ارتباط یک به یک و به خصوصی با سورس نرم افزار مذکور ندارند.
تولید Open Source چگونه است؟
برای تهیه و تولید یک نرم افزار باید ابتدا برنامه نویسان با بهره گیری از کدهایی موسوم به کدهای زبان برنامه نویسی مانند: سی، پاسکال، ویژوال بیسیک و... ترکیب وترتیبی خاص ومنطقی را کنار هم قرار دهند وپس از آن کد برنامه را تست و خطایابی نموده ودر نهایت آن را کامپایل یا ترجمه کنند.
ترجمه، فرآیندی است که در آن کد برنامه های نوشته شده توسط برنامه نویسان که از آنان به عنوان کد اولیه یاد میشود، پس از استفاده از برنامه های خاصی موسوم به کمپایلرهابه گونه ای ترجمه میشوند که توسط کامپیوتر قادر به درک باشند.
اعمال تغییرات دلخواه در اکثر برنامه های ترجمه شده، امری بسیار مشکل وگاها غیرممکن است. اکثر تولید کنندگان نرم افزار از ویژگی فوق به منظور صیانت و حفاظت از کدهای نوشته شده، استفاده مینمایند.
شما به سورس و کد منبع نرم افزارها دسترسی ندارید.
اکثر نرم افزارهایی که در دست ماست صرفا به صورت نسخه های ترجمه شده و آماده اجرا هستند:
نرم افزارهای Open Source نقطه مقابل رویکرد فوق میباشند. در اینگونه نرم افزارها علاوه بر نسخه ترجمه شده، کد اولیه نیز در اختیار متقاضیان قرار میگیرد. بدین ترتیب امکان اعمال تغییرات ویا سفارشی نمودن آن متناسب با خواسته استفاده کنندگان، فراهم میگردد. افرادی که از ایده Open Source حمایت مینمایند بر این اعتقاد هستند که با اجازه دادن به اشخاصی که علاقه مند به تغییر کد اولیه میباشند، امکان استفاده مفیدتر از برنامه فراهم و احتمال بروز خطا در آنان، کاهش خواهد یافت.
جامعه Open Source گروهی برنامه نویس (یا افراد علاقه مند به برنامه نویسی) از سراسر دنیا هستند که برنامه های مختلفی را به طور رایگان تهیه کرده و در اختیار عموم قرار میدهند. علاوه بر خود برنامه، کد اصلی برنامه نیز در اختیار همگان قرار میگیرد تا افراد دیگر روی برنامه کار کنند و در تهیه بهتر کمک کنند.
عمده ترین دلایل برای تولید نرم افزارهای Open Source
دلایل متعددی وجود دارد که باعث شده یک کمپانی مایل باشد نرم افزار تجاری اش را همراه با سورس و به صورت Open Source در اختیار دیگران قرار بدهد از بارزترین آنها میتوان به موارد زیر اشاره کرد:
اعتماد مشتری برای کاربردهای به خصوص
استفاده از پتانسیل جامعه توسعه گران Open Source
ارائه ی قابلیتی برای تکمیل یا افزایش سازگاری با سایر نرم افزارها و پلت فرمها برای کاربران
استفاده از سایر محصولات یا سورس کدهای تحت لیسانس های متداول Open Source در محصول مورد نظر
افزایش و توسعه کاربرد محصول مورد نظر و کسب درآمد از طریق حمایت یا ارائه سرویس و خدمات عمومی یا خصوصی
ارائه قابلیت ها و کسب محبوبیت و آنگاه فروختن پروژه مورد نظر به یک کمپانی بزرگتر یا ترکیب یک پروژه ثروتمندتر با
آزادی در Open Source
پس از پرداختن به کلیات موضوع ما تعریف Open Source را ادامه میدهیم تا به طور واضح نشان دهیم که چه مواردی در مورد یک نرم افزار خاص باید صدق کند تا به عنوان یک نرم افزار آزاد تلقی شود.
نرم افزار آزاد در مورد آزادی کاربران برای اجرا، کپی، توزیع، بررسی، تغییر و بهبود دادن نرم افزار میباشد. به طور دقیق تر نرم افزار آزاد به چهار نوع آزادی برای کاربران یک نرم افزار اشاره میکند:
آزادی سطح 0: آزادی برای اجرای برنامه برای هر منظوری.
آزادی سطح 1: آزادی برای مطالعه و بررسی چگونگی عملکرد برنامه و تغییر آن برای نیاز خود (دسترسی به کد منبع یک پیش شرط برای این آزادی میباشد).
آزادی سطح 2: آزادی برای توزیع مجدد کپی هایی از آن، بنابر این شما میتوانید به همسایگان [اطرافیان] خود کمک کنید.
آزادی سطح 3: آزادی برای بهبود برنامه و انتشار این تغییرات برای عموم، بنابراین تمام جامعه از آن بهره میبرند (دسترسی به کد منبع یک پیش شرط برای این آزادی میباشد).
هر نرم افزار آزاد، چنین آزادی هایی را برای کاربر دارد. علاوه بر اینها، یک شرط هم هست و آن هم این است که اگر شما از این آزادی ها استفاده کردید و نرم افزاری را تولید کردید و آن را به دیگران دادید، باید این آزادی ها را به کاربرانتان هم بدهید. اگر شما این آزادی ها را داشتید پس دیگران هم باید داشته باشند، یعنی نرم افزار آزاد تا آخرین توزیعش باید آزاد بماند.
آزادی نرم افزار های آزاد تا جایی هست که حتی میتوان بدون پرداخت هزینه ای برای مجوز، کپی هایی از یک نرم افزار آزاد را با یا بدون تغییرات،رایگان یا در ازای دریافت وجه، برای هرکس و هر جایی آن را توزیع کرد.
نرم افزارهای آزاد به دلیل ابهام در لفظ free به اشتباه به عنوان نرم افزارهای رایگان و احتمالا بی ارزش تلقی میشدند، به همین دلیل این نرم افزارها به متن باز یا متن آزاد (Open Source) معروف شدند.
از دیگر ضمانت هایی که نرم افزار آزاد تأمین میکند، اجازه نامه عمومی همگانی (GPL) است. GPL برای هرکس امکان دوباره توزیع کردن یا همگردانی (کامپایل) مجدد متن برنامه را فراهم میکند. طبق این اجازه نامه همچنین باید متن برنامه در دسترس قرار داده شود تا امکان استفاده و یا تغییر آن باشد. برنامه های رایانه ای اینگونه را معمولا باز متن گویند. متن چنین برنامه هایی نمیتواند به حالت «محدود شده» درآید مگر با نظر تک تک نویسندگان آن متن. بیشتر نویسندگان متن سیستم عامل لینوکس تحت این مجوز برنامه نویسی میکنند.
نرم افزار منبع باز، نرم افزارهای کامپیوتری هستند که کد منبعش تحت پروانه یا جواز قابل دستیابی است (یا ترتیب داده اند مانند قلمرو عمومی) که به استفاده کنندگان اجازه میدهد بهره مند شوند، تغییر دهند، توسعه دهند نرم افزار، و پخش نمایند.
استفاده از نرم افزارهای Open Source سیر صعودی دارد. به گزارش خبرنگاران و طبق آمار کسب شده استفاده و موارد کاربردی در مقابل تولید و ارائه نرم افزارهای Open Source به طور روز افزونی افزایش پیدا کرده است و این نرم افزارها قابلیت تولید و ارائه کاربردهای کوچک تا پروژه ها و نرم افزارهای بزرگ را دارا هستند و امروزه به دلایل متعددی بسیاری از موسسات برای استفاده از نرم افزارهای Open Source به درجه ای از بلوغ رسیده اند که عملا دایره استفاده از آنها بسیار گسترش پیدا کرده است و کاربرد فراوانی در تمامی ابعاد دارند.
همانطور که در مطالبت قبل نیز اشاره شد یکی از مشکلات استفاده از این نرم افزارها عدم پشتیبانی و ضمانت این نرم افزارها عنوان شده است به گونه ای که در صورت بروز مشکل برای این قبیل نرم افزارها مرجع مشخصی برای برطرف کردن ایرادات آنها وجود ندارد. لازم به ذکر است از جمله معروف ترین نرم افزارهای Open Source میتوان به سیستم عامل Linux اشاره کرد که استفاده و بکار گیری آن به لحاظ بالا بودن فریب امنیت آن به طور روز افزونی گسترش پیدا کرده است.
مقایسه نرم افزارهای منبع باز و منبع بسته
منبع باز در مقابل منبع بسته گاهی اوقات بحث داغی برمی انگیزد. پول درآوردن از طریق روش سنتی، (مانند فروش کپی های افراد و پرداخت حق امتیاز پروانه) مشکلتر و بعضی مواقع غیر عملی است. بعضی افراد از نرم افزار منبع بسته دفاع میکنند که نرم افزار منبع باز به بازار تجاری لطمه میزند.
مطالعه در مورد نرم افزار منبع باز در مقابل نرم افزار منبع بسته نشان میدهد نرم افزار منبع بسته دارای مشاور کمتری است ولی نرم افزار منبع باز معمولا دارای زمان کمتری است بین کشف نواقص و تعمیر کردن آن. نمایندگان منبع بسته مطرح میکنند که هیچ کس در نرم افزار منبع باز مسئول نیست، هیچگونه ضمانت و مشوق وجود ندارد که آن تعمیر شود، و هیچ کس مسئولیت غفلت را بر عهده نمیگیرد. نمایندگان منبع باز بحث میکنند برای اینکه کد منبع در نرم افزار منبع بسته وجود ندارد، هیچ راهی برای فهمیدن آسیب پذیری یا خطا وجود ندارد. هر چند که داشتن کد منبع برای برنامه آن را آسان میکند برای شخص خلافکار که کشف کند امنیت آسیب پذیری که آنها میتوانند از آن بهره مند شوند (به جای گزارش دادن یا تعمیر آن).
ویژگی های نرم افزارهای Open Source
توزیع رایگان (این نوع برنامه ها، ممکن است به عنوان بخشی همراه یک بسته نرم افزاری ارائه شوند که به متقاضیان فروخته میگردند).
• کد منبع می بایست به همراه نرم ازار، ارائه گردد.
• هر شخص می بایست اجازه تغییر کد اولیه برنامه را داشته باشد.
• نسخه های اصلاح شده را میتوان مجددا توزیع نمود.
• به مجوز سایر نرم افزار ها نیاز نخواهد بود.
اصول نرم افزاری Open Source
بسیاری از کاربران تصور میکنند که استفاده از نرم افزار متن باز (Open Source) ، به معنی استفاده کامل و آزاد از کدهای منبع آن نرم افزار است، در حالی که باید توجه داشت یک نرم افزار Open Source الزاما همه کدهای منبع خود را عرضه نمیکند. عرضه یک نرم افزار Open Source باید شامل موارد زیر باشد:
کدهای منبع:
باید کدهای منبع در این قبیل برنامه ها در اختیار کاربر قرار گیرد. در هنگام توزیع، این کدها باید به گونه ای باشند که کاربر بتواند از آنها استفاده کند. با این وجود، برخی از انواع نرم افزارهای Open Source هستند که بدون کدهای منبع عرضه میشوند. این نرم افزارها که از کدهای منبع دیگر نرم افزارهای کد باز استفاده میکنند به صورت رایگان از اینترنت بارگذاری میشوند. کدهای منبعی که در برنامه های Open Source عرضه میشوند طوری نوشته شده اند که برنامه نویسان میتوانند با استفاده از آنها امکانات جدیدی را به نرم افزار بیفزایند.
باید توجه داشت که تخریب کدهای منبع و نوشتن آنها به صورت گنگ و پیچیده مجاز نیست.
فعالیت های قابل استنتاج:
مجوز استفاده از این نرم افزارها باید به گونه ای طراحی شود که قابلیت اصلاح داشته باشد. بر این اساس، نسخه های جدیدی که از یک نرم افزار Open Source تهیه میشوند باید به گونه ای باشد که امکان انتشار نرم افزار همانند نسخه اصلی آن فراهم شده باشد.
راستی و درستی کدهای منبع:
مجوزی که طی آن کاربر امکان دسترسی به کدهای منبع یک نرم افزار را پیدا می کند در برخی مواقع محدود می شود. با این وجود، آن دسته از کدهای منبع که بدون هیچ گونه محدودیتی در اختیار کاربران قرار میگیرند و یا در وصله های امنیتی عرضه میشوندباید صحیح و درست باشند تا تغییر در آنها باعث بروز مشکل در نرم افزار نشود. این کدها ممکن است با اسامی مختلف نوشته شده باشند و یا از نرم افزارهای اصلی متفاوت گرفته شده باشند.
عدم ایجاد مشکل برای اشخاص و گروه ها:
تغییر در کدهای منبع نرم افزارهای Open Source باید به گونه ای نوشته شود که برای هیچ شخص و گروهی مشکلی ایجاد نکند. این کدها که در اصل توسط اشخاص مختلف تغییر پیدا میکنند، به گونه ای خواهند بود که باعث ایجاد خسارت های مالی و غیر مالی برای افراد حقیقی، حقوقی، شرکت ها، ادارات دولتی و... نخواهند شد.
عدم ایجاد مانع برای فعالیت های دیگر شرکت ها:
در حالی که گفته می شود نرم افزارهای Open Source نباید برای هیچ کاربری محدود شوند، اعلام شده که این نرم افزارها نباید در فعالیت های نرم افزاری شرکت های رقیب مشکل ایجاد کنند و مانع ادامه فعالیت های آنها شوند. در کنار این مسئله، یک نرم افزار Open Source نباید به گونه ای طراحی شده باشد که تنها کاربران تجاری و بازرگانی بتوانند از آن استفاده کنند و برای کاربران خانگی مزیتی نداشته باشد.
انتشار مجوز استفاده از نرم افزار Open Source:
مجوزی که برای استفاده از یک نرم افزار Open Source عرضه می شود باید به گونه ای باشد که همه کاربران بتوانند به صورت کاملا رایگان از آن استفاده کنند. این مجوزها حتی برای کسانی که این نرم افزار را از واسطه ها دریافت می کنند نیز باید وجود داشته باشد. برای استفاده از یک نرم افزار Open Source تنها یک مجوز لازم است و کاربر نیازی ندارد که مجوز دیگری را تهیه کند.
مجوز نرم افزار Open Source نباید به یک محصول ویژه اختصاص داشته باشد: نرم افزارهای Open Source باید به گونه ای طراحی و تولید شوند که مجوز استفاده از آن تنها مختص یک برنامه خاص نشود. اگر یک نرم افزار Open Source در مرحله نخست عرضه شود و در اختیار جمعی از کاربران قرار گیرد، در مرحله دوم توزیع این برنامه ها کاربر نباید اقدام به تهیه مجوز جدید کند و باید با استفاده از مجوز اولیه صادر شده آن را به کار برد.
مجوز نرم افزار Open Source نباید دیگر نرم افزارها را محدود کند:
مجوزی که برای استفاده از یک نرم افزار Open Source صادر می شود نباید به گونه ای طراحی شود که استفاده از دیگر نرم افزارها را محدود کند. برای مثال: مجوز یک نرم افزار Open Source نباید بر این اصل تاکید کند که تمامی برنامه های دیگر که روی یک کامپیوتر نصب شده اند باید Open Source باشند.
هویت مجوز نرم افزار Open Source باید بر پایه فناوری های روز باشد:
با توجه به فناوری هایی که امروزه برای تولید نرم افزار به کار برده می شود، تولیدکنندگان یک برنامه Open Source باید توجه داشته باشند که فناوری مورد نظر آنها نباید مطابق با یک فناوری شخصی باشد و باید با استانداردهای تعیین شده مطابقت کند.
اگر شخص یا گروه در نظر دارد یک نرم افزار Open Source تولید کند، باید توجه داشته باشد که رعایت موارد فوق الزامی است. اگر چه رعایت این موارد اندکی دشوار به نظر می رسد، ولی باید توجه داشت که در اصل اجرای این اصول از اجرای اصول تعریف شده برای نرم افزارهای معمولی بسیار ساده تر است. در حال حاضر استقبال از نرم افزارهای Open Source به قدری افزایش یافته که کارشناسان آن را نوعی تهدید جدی برای شرکت های بزرگی چون مایکروسافت قلمداد می کنند.
مزایای نرم افزارهای Open Source نسبت به نرم افزارهای تجاری
• چون تعداد زیادی افراد (در برخی موارد صدها و شاید هزاران نفر) روی یک برنامه کار میکنند و پیشنهادات خود را ارائه می دهند این برنامه ها امکانات فراوانی داشته و با سیستم های مختلفی سازگاری دارند.
• برخلاف برنامه های تجاری که باید برنامه خود را سریع تر از رقبا و با کلی ایراد نرم افزاری به بازار عرضه کنند این نرم افزارها خیلی خوب آزمایش می شوند. برای مثال: ویندوز 2000 با حدود 63 هزار اشکال نرم افزاری (فقط آنهایی که مایکروسافت از آن خبر داشت!) روانه بازار شد در حالی که سیستم عامل Linux تقریبا خالی از اشکال است. (این یکی از ده ها دلیل است که - اگر در اخبار یا در اینترنت خوانده باشید – مایکروسافت از نرم افزار رایگان وحشت دارد و با تمام توان خود با این جامعه مبارزه می کند.)
• خیلی از شرکت های کوچک تر بعد از مدتی درهای خود را بسته و دیگر نسخه جدیدی به بازار عرضه نمی کنند (این مشکل بسیار بزرگی به خصوص در زمینه های مربوط به سخت افزار است) در حالی که نرم افزارهای Open Source در اختیار همگان هستند و هرگز از بین نمی روند.
• این نرم افزارها به هیچ شرکتی وابسته نیستند که شما را به مصرف محصولات آن شرکت مجبور کنند. برای مثال: Internet Explorer همیشه از MSN برای جست وجوی اینترنت استفاده می کند و خیلی از نسخه های آن به شما اجازه استفاده از گوگل (برنامه) را نمی دهد. هیچ نرم افزار رایگانی این طور نیست.
چند نمونه از جامعه ی نرم افزاری
در ادامه به توضیح مختصری از پرکاربردترین و معروف ترین نرم افزارهای Open Source می پردازیم:
Linux: همان طور که قبلا نیز اشاره شد، یکی از مشهورترین این نرم افزارها تینوکس است. لینوکس سیستم عاملی است که بر اساس یونیکس و برای کامپیوترهای شخصی تعبیه شده است. امروزه این سیستم عامل سهم اصلی سرورهای اینترنت را داراست. هم چنین پس از پشت سر گذاشتن سیستم عامل اپل رقیب مایکروسافت در سیستم های شخصی شده است. شرکت های بزرگی نظیر IBM و HP سیستم های سخت افزاری جدید خود را بر اساس این سیستم عامل بنا کرده و شرکت های تولید کننده وسایل الکترونیکی نظیر Sony به آن رو آورده اند. گذشته از مجانی بودن لینوکس از مزایای اصلی آن نسبت به ویندوز امنیت و استحکام آن است. حتی شرکت مایکروسافت برای سرورهای سرویس Hotmail خود هنوز از سیستم های بر اساس یونیکس استفاده می کند.
Mozilla FireFox: موزیلا فایر فاکس مرورگری است که گفته می شود هم اکنون حدود 10% کاربران اینترنت از آن استفاده می کنند و بیش تر بین کاربران لینوکس طرف دار دارد. اما رفته رفته و با آشکار شدن مشکلات مرورگر معروف مایکروسافت (Internet Explorer) کاربران سیستم های عامل دیگر مثل ویندوز و مکینتاش هم به استفاده از فایر فاکس روی آوردند. در زمان نوشتن این یادداشت دست کم 361024562 بار این نرم افزار دریافت (Download) شده است.
ویژگی های فایر فاکس: از «بستن خودکار پنجره های ناخواسته (pop-up bloker)، پشتیبانی منطقی از آخرین نسخه CSS امکان مرور چند صفحه در زبانه های مختلف یک پنجره (tabbed browsing)» به عنوان ویژگی هایی نام برده می شود که سبب محبوبیت فایر فاکس بین کاربران شده است. اما این ها همه هست وهمه نیست! مهم ترین عامل موفقیت فایر فاکس شخصی سازی یا همان Open Source بودن فایر فاکس است که باعث محبوبیت این نرم افزار شده است.
eMule: گاهی اوقات حتی با جست وجوهای متفاوت و زیادی که داریم به دنبال مطلب یا فایلی در سطح اینترنت بوده که متاسفانه چیزی یافت نمی کنیم در این موارد می توان به سراغ اطلاعات کامپیوترهای دیگران رفت و با جست وجویی در میان فایل های آنها به هدف خود نزدیک تر شد البته این مراجعه فیزیکی نبوده بلکه با کمک نرم افزار eMule به راحتی می توان در میان سایر کاربرانی که از این نرم افزار استفاده می کنند و فایل های مفید خود را به اشتراک گذاشته اند جست وجو نموده و فایل مورد نظر خود را بگیریم.
Clamwin: یک آنتی ویروس رایگان مخصوص تمام سیستم عامل های شرکت مایکروسافت از قبیل Me/2000/XP/2003/98 و Vista می باشد. این آنتی ویروس که به صورت متن باز (Open Source Code) ارائه شده است دارای سیستمی قدرت مند جهت جلوگیری از ورود و فعالیت ویروس ها تروجان ها و کرم های اینترنتی هم چنین دارای ستاپی بسیار ساده و روان و آپدیت رایگان و نامحدود می باشد. به راحتی می توان این آنتی ویروس را دانلود کرده و با خیالی راحت به کار در رایانه اینترنت بپردازید.
از قابلیت های مهم این آنتی ویروس می توان به موارد زیر اشاره کرد:
• آشکار سازی ورود ویروس و آگاهی دادن از پاک شدن آنها.
• زمان بندی اسکن کردن کامپیوتر به صورت دلخواه در هر زمان.
• آپدیت رایگان به صورت اتوماتیک و متناوب از سرور اصلی سازنده ی این آنتی ویروس.
• اضافه شدن به منوی کلیک راست برای بررسی فایل ها و پوشه ها و سایت های اینترنتی.
• دارای پلاگین Addin مخصوص نرم افزار Microsoft Outlook برای از بین بردن فایل ها و پوشه های ضمیمه شده به نامه های الکترونیکی به صورت اتوماتیک.
Feedreader: یک ابزار رو میزی برای خواندن RSS . این نرم افزار مطالب بروز شده در سایت های مورد علاقه شما را دانلود کرده و قسمت های اضافی صفحه که موجب سنگین تر شدن صفحات و تلف شدن وقت زیادی می شوند را حذف می کند و شما می توانید به سرعت مطالب مورد نظر خود را مطالعه کنید.
RSS مخفف Really Simple Syndication به معنی تشکیل ارتباط های بسیار ساده است و فایلی با فرمت خاص (XML) می باشد که شامل آخرین عناوین سایت های خبری، وبلاگ ها و سایت هایی از این دست می باشد. در واقع آر اس اس فرمتی برای خروجی اطلاعات می باشد. با بروز شدن سایت، فایل آر اس اس آن به طور خودکار بروز می شود. محتویات فایل های آر اس اس را می توان به کمک نرم افزارهایی از این قبیل مشاهده کرد.
Audacity: یک ابزار آزاد و حرفه ای اما کاربر پسند و آسان است که به کاربران اجازه می دهد موسیقی های خود را ویرایش/ فشرده و یا صدای خود را ضبط و بر روی آن تغییراتی ایجاد کنند.
از قابلیت های این نرم افزار:
• ضبط صدا.
• تبدیل و ضبط نوار ضبط شده را به دیجیتال و یاسی دی.
• ویرایش WAV ، MP3 ، Ogg Vorbis یا AIFF فایل های صوتی.
• کات، کپی، با هم متصل کردن یا ترکیب با یکدیگر برای تلفن های موبایل.
• تغییر سرعت گام یا یک ضبط.
• اضافه کردن عوارض جدید را با دو شاخه LADSPA- قابل فهم.
Zip-7: یک نرم افزار فشرده ساز برای ویندوز با پشتیبانی فرمت فایل های BZIP2 ، GZIP ، ZIP ، 7z و TAR و با قابلیت باز کردن فایل های CPIO ، Z ، CHM ، LZH ، ARJ ، ISO ، CAB ، RAR ، DEB ، RPM و NSIS . این نرم افزار نسبت تراکم بهتری از WinZip برای ZIP کردن فایل ها از خود نشان داده است. (یعنی بیشتر و بهتر از WinZip یک فایل را فشرده می کند)
Joomla: یک سیستم مدیریت محتوا فوق العاده تحت وب است که در ساختن وب سایت و دیگر برنامه های تحت اینترنت به شما کمک می کند . مهم تر اینکه جوملا یک برنامه Open Source می باشد که به طور رایگان در اختیار همه قرار دارد.
جوملا برای قدرت بخشی به کلیه برنامه ها، از یک صفحه شخصی ساده تا برنامه های تحت وب شرکت های عظیم استفاده می شود. چند مورد از موارد استفاده جوملا به شرح زیر است:
• پورتال ها و یا وب سایت های شرکت های عظیم
• تجارت آنلاین
• وب سایت های تجاری در مقیاس کوچک
• وب سایت های سازمانی و رایگان
• کاربردهای دولتی
• اینترنت و اینترانت های شرکت های عظیم
• سایت های مذهبی و مرتبط با آموزش
• صفحات شخصی و خانوادگی
• پورتال های مبتنی بر گروه ها و اصناف
• مجلات و روزنامه ها
جوملا! می تواند به سادگی در کنترل تمامی قسمت های وب سایت شما، از اضافه کردن محتوا و تصویر تا بروز رسانی کاتالوگ محصولات و یا رزرواسیون آنلاین استفاده شود.
تلفیق Open Source و دنیای وب
در صورتی که بخواهیم نرم افزارهای Open Source را بر اساس کارایی و نوع نرم افزار (سیستم های عامل، نرم افزار های گرافیکی، نرم افزارهای مربوط به کار با صدا، مرورگرهای اینترنتی، وب و... ) دسته بندی کنیم مورد های فراوانی وجود دارد که از حوصله این بحث خارج است ولی خالی از لطف نیست اگر نگاه کوتاهی به پرکاربردترین زمینه نرم افزارهای Open Source که بی شک دنیای Web می باشد، بیاندازیم.
نرم افزار مدیریت محتوا مامبو
شاید این حرف درست است زمانی زیادی برای نگارش و برنامه نویسی یک نرم افزار مثلا نرم افزار تحت وب مدیریت محتوا مامبو می شود. خوب ایرانی ها برای داشتن یک نرم افزار مدیریت دوراه دارند یا راه رفته گروه مامبو را دنبال کنند و یکباردیگر نرم افزار جدید بنویسند و یا اینکه مامبو رابا نیاز و سلیقه و کارکرد خود فارسی کنند ؛ البته گروه مامبو با تفکر اپن سورس یا متن باز کدها را به صورت رایگان در اختیار کاربران قرار می دهند شما با دانش کافی و مهارت لازم می توانید بهترین و زیباترین وبسایتها را با هسته مرکزی مامبو طراحی کنید .به عبارتی اگر شما بخواهید از ابتدا شروع به کار کنید و نرم افزاری با امکانات و خصوصیات مامبو طراحی کنید سالها وقت شما را می گیرید همین وقت را می توانید در جهت ارتقا و گسترش مامبو قرار دهید البته در عین اینکه این نرم افزارهای متن باز و آزادهستند اما مشمول قوانین کپی رایت یا حق تالیف موسوم به گنو GNU General Public Licens می شوند با این تفکر ؛ سیستم عامل اپن سورس لینوکس Linuxهم با تغییراتی در این نرم افزار به فارسی و البته سیستم عامل ملی تبدیل شده استدر این گفتار قصد ندارم در خصوص سیستم عامل ملی لینوکس فارسی توضیحاتی بدهم سعی می کنم در گفتار مجزا به سیستم عامل لینوکس و به صورت نگاه خاص به سیستم عامل ملی لینوکس فارسی بپردازم ؛ اما بعنوان یک سیستم عامل اپن سورس و متن باز بدان اشاره می کنم .
نگاهی به تاریخچه سیستم عامل لینوکس یک نرم افزار متن باز واقعی
بد نيست اشاره ای به يک مثال واقعی در دنيای نرم افزارهای Open Source داشته باشيم . در سال 1991 ، Linus Torvalds ، دانشجوی دانشگاه هلسينکی فنلاند يک سيستم عامل جديد مبتنی بر Minix ( اقتباس شده از يونيکس ) را ايجاد که نام آن را لينوکس ( Linux ) گذاشت . وی نسخه شماره 0.02 لينوکس را بر اساس GNU General Public Licens که شامل تعاريف قانونی جامعی در خصوص نرم افزارهای Open Source است ، ارائه نمود . تعداد زيادی از افراد در سرتاسر جهان اقدام به Download لينوکس و استفاده از آن نمودند . گروهی زيادی از افراد فوق خود برنامه نويسان حرفه ای بودند که توانائی انجام تغييرات مورد نياز در لينوکس را داشتند . Torvalds ، نسخه های اصلاح شده توسط ساير برنامه تويسان را دريافت و با لحاظ نمودن تغييرات ، در سال 1994 نسخه شماره يک لينوکس را عرضه نمود .
يک نکته نگران کننده در خصوص نرم افزارهای Open Source ، فقدان ضمانت و پشتيبانی فنی از آنان است . با توجه به اين موضوع که همواره امکان و يا بهتر بگوئيم مجوز اعمال تغييرات و يا اصلاحات در اين نوع نرم افزارها وجود دارد ، تقريبا" حمايت از آنان غير ممکن و يا مشکل خواهد بود . بدين دليل برخی از شرکت های حامی نرم افزارهای Open Source با توجه به ارائه سرويس خدمات و پشتيبانی اينگونه نرم افزارها ، اقدام به فروش آنان می نمايند.
مثلا" نرم افزار Red Hat در سال 1994 توسط Official Red Hat Linux عرضه گرديد. نرم افزار فوق رايگان نبوده و متقاضيان می بايست هزينه استفاده ( مالکيت ) از آن را پرداخت نمايند. مهمترين ويژگی Red Hat ، امکان پشتيبانی فنی از آن است. برای اغلب سازمان ها و موسسات تضمين حمايت های فنی و پشتيبانی يکی از عوامل مهم تصميم گيری در خصوص خريد لينوکس در مقابل Download نمودن آن به صورت رايگان می باشد. علاوه بر Red Hat ، شرکت های متعدد ديگری نيز اقدام به عرضه لينوکس با توجه به سياست ها و ديدگاه های خاص خود نموده اند .در اين رابطه نرم افزارهای متعددی با محوريت لينوکس نيز طراحی و پياده سازی شده است .
نمونه های نرم افزارهای متن باز مرورگر اینترنتی مولیزا Mozilla ( با هسته مرورگر Netscape ) ، سرويس دهنده وب آپاچی Apache ، زبان اسکريپت نويسی وب( زبان تحت وب) پرل PERL و فرمت فايل های گرافکيی PNG ، نمونه هائی در زمينه متن بازها بوده که بر اساس ايده Open Source طراحی و پياده سازی شده اند .
منابع:
http://www.opensource.org
پایگاه اطلاع رسانی http://www.itiran.com
مرجع آموزش و پشتیبانی فارسی http://www.smflearn.com
پايگاه اطلاعات علمي جهاد دانشگاهي http://www.sid.ir
سايت دانلود كتابهاي فارسي http://www.farsibooks.ir
بانك اطلاعاتي جامع متخصصين ايراني http://www.irexpert.ir
درحال حاضر نرم افزارهایی به بازار آمده اند که علاوه براینکه به صورت رایگان عرضه میشوند، همراه باکد سورس ومنبع آن هستند به عبارتی دراینگونه نرم افزارها علاوه بر نسخه ترجمه شده ، کد اولیه نیز دراختیار متقاضیان قرار میگیرد. با در اختیار داشتن کد اصلی برنامه ؛امکان اعمال تغییرات ویا سفارشی نمودن آن متناسب با خواسته استفاده کنندگان توسط کارشناسان فراهم میگردد در این تحقیق قصد داریم به بررسی نرم افزارهای Open Source ؛ علت به وجود آمدن این نرم افزارها وتوضیح مختصری از چند نمونه معروف نرم افزارهای Open Source بپردازیم. امید است این تحقیق برای خوانندگان محترم مفید بوده ودر تکمیل وتصحیح خطاهای این مقاله، این جانب را یاری بفرمایند.
جنبش نرم افزاری رایگان از سال 1983 آغاز شده. در سال 1983 یک گروه از اشخاص نماینده شدند که اصطلاح نرم افزار رایگان را با نرم افزار منبع بسته جایگزین کنند. این جنبش غالبا با یک استراتژی و راهبرد آغاز شده است. خیلی از مردم اعتقاد دارند که تولد اینترنت، از سال 1369 جنبش منبع باز را شروع کرده است در حالی که دیگران تفاوت بین منبع باز و حرکت نرم افزار رایگان را تشخیص نمیدهند در ادامه به تفاوت این دو معقوله نیز خواهیم پرداخت.
اکثر نرم افزارهائی را که شما تهيه و يا از طريق اينترنت Download می نمائيد ، صرفا" به صورت نسخه های ترجمه شده و آماده اجراء در اختيار شما قرار می گيرند . ترجمه ، فرآيندی است که در آن کد برنامه های نوشته شده توسط برنامه نويسان که از آنان به عنوان کد اوليه ( Source Code ) ياد می شود ، پس از استفاده از برنامه های خاصی موسوم به کمپايلرها به بگونه ای ترجمه می شوند که توسط کامپيوتر قادر درک باشند . اعمال تغييرات دلخواه در اکثر برنامه های ترجمه شده ، امری بسيار مشکل و گاها" غير ممکن است . اکثر توليد کنندگان نرم افزار از ويژگی فوق به منظور صيانت و حفاظت از کدهای نوشته شده ، استفاده می نمايند . نرم افزارهای Open Source نقطه مقابل رويکرد فوق می باشند . در اينگونه نرم افزارها علاوه بر نسخه ترجمه شده ، کد اوليه نيز در اختيار متقاضيان قرار می گيرد.بدين ترتيب امکان اعمال تغييرات و يا سفارشی نمودن آن متناسب با خواسته استفاده کنندگان ، فراهم می گردد . افراديکه از ايده Open Source حمايت می نمايند بر اين اعتقاد هستند که با اجازه دادن به اشخاصی که علاقه مند به تغيير کد اوليه می باشند ، امکان استفاده مفيدتر از برنامه فراهم و احتمال بروز خطاء در آنان، کاهش خواهد يافت .
ويژگی نرم افزارهای متن باز Open Source : توزيع رايگان . اين نوع برنامه ها ، ممکن است به عنوان بخشی همراه يک بسته نرم افزاری ارائه شوند که به متقاضيان فروخته می گردند.کد منبع می بايست بهمراه نرم افزار ،ارائه گردد . هر شخص می بايست اجازه تغيير کد اوليه برنامه را داشته باشد . نسخه های اصلاح شده را می توان مجددا" توزيع نمود . به مجوز ساير نرم افزارها نياز نخواهد بود .
بنیان گذار Open Source
اریک ریموند بنیانگذار جنبش منبع باز ویا حداقل یکی از پیشروترین افراد فعال در این جنبش نرم افزاری است وی ضمن فعالیت و تحقیق در روابط انسانی جامعه و فرهنگ هکر اینترنتی، به عنوان یک فرد ناظر در اجتماع هکرهای اینترنتی شناخته شده است. تحقیقات او روشنگر موفقیت های چشمگیر مدل توسعه نرم افزار منبع باز بوده است. در فهرست پروژه های نرم افزاری ریموند، علاوه بر کار بر روی سیستم عامل یونیکس، نام یکی از پرکاربردترین نرم افزارهای انتقال اطلاعات از طریق پست الکترونیک نیز دیده میشود. ریموند علاوه بر فعالیت در حوزه های نرم افزارهای منبع باز، علاقه مندی های دیگری نیز دارد و یکی از طرفداران پروپا قرص ادبیات علمی تخیلی نیز هست. ریموند ضمن داشتن درجه وعنوان کمربند مشکی در ورزش رزمی تکواندو، یک نوازنده ماهر و موسیقی دان نیز هست. اما واقعیت آن است که هیچ یک از موارد فوق در زندگی اریک ریموند به اندازه نقش او در به جریان انداختن جنبش منبع باز اهمیت نمی یابند و افراد بسیاری به درستی او را یک انسان شناس سرگردان و فیلسوف دردسرساز میدانند که بر حسب تصادف، در زمان مناسب در موقعیت درستی قرار گرفته است.
از نظر وی تفاوتی بین نرم افزارهای Open Source و دیگر نرم افزارها نیست. کاربران، مجوزها و ابزارها در هر دو مورد مشابه هستند. تفاوت در روش تبلیغ وگرایش های عرضه کنندگان آنهاست.
بد نیست اشاره ای به یک مثال واقعی در دنیای نرم افزارهای Open Source داشته باشیم. در سال 1991، Linus Torvalds ، دانشجوی دانشگاه هلسینکی فنلاند یک سیستم عامل جدید مبتنی بر Minix را ایجاد کرد که نام آن را لینوکس(Linux) گذاشت. وی نسخه شماره 0.02 لینوکس را بر اساس GNU General Public Licens که شامل تعاریف قانونی جامعی در خصوص نرم افزارهای Open Source است، ارائه نمود. تعداد زیادی از افراد در سرتاسر جهان اقدام به Download لینوکس و استفاده از آن نمودند. گروه زیادی از افراد فوق خود برنامه نویسان حرفه ای بودند که توانایی انجام تغییرات مورد نیاز در لینوکس را داشتند. Torvalds ، نسخه های اصلاح شده توسط سایر برنامه نویسان را دریافت و با لحاظ نمودن تغییرات، در سال 1994 نسخه شماره یک لینوکس را عرضه نمود.
نگرانی های Open Source
یک نکته نگران کننده در خصوص نرم افزارهای Open Source ، فقدان ضمانت و پشتیبانی فنی از آنان است. با توجه به این موضوع که همواره امکان ویا بهتر بگوییم مجوز اعمال تغییرات ویا اصلاحات در این نوع نرم افزارها وجود دارد، تقریبا حمایت از آنان غیر ممکن ویا مشکل خواهد بود. بدین دلیل برخی از شرکت های حامی نرم افزارهای Open Source با توجه به ارائه سرویس خدمات و پشتیبانی اینگونه نرم افزارها، اقدام به فروش آنان می نمایند. مثلا نرم افزار Red Hat در سال 1994 توسط Official Red Hat Linux عرضه گردید. نرم افزار فوق رایگان نبوده و متقاضیان می بایست هزینه استفاده از آن را پرداخت نمایند. مهمترین ویژگی Red Hat ، امکان پشتیبانی فنی از آن است. برای اغلب سازمان ها و موسسات تضمین حمایت های فنی و پشتیبانی یکی از عوامل مهم تصمیم گیری در خصوص خرید لینوکس در مقابل Download نمودن آن به صورت رایگان می باشد. علاوه بر Red Hat ، شرکت های متعدد دیگری نیز اقدام به عرضه لینوکس با توجه به سیاست ها و دیدگاه های خاص خود نموده اند. در این رابطه نرم افزارهای متعددی با محوریت لینوکس نیز طراحی و پیاده سازی شده است. Netscape، Mozilla، سرویس دهنده وب Apache ، زبان اسکریپت نویسی وب PERL و فرمت فایلهای گرافیکی PNG، نمونه هایی در این زمینه بوده که بر اساس ایده Open Source طراحی و پیاده سازی شده اند.
دید تجاری به نرم افزارهای Open Source
Open Source یک Business Model نیز می باشد، و شاید به دلیل برای بعضی ها غریبه است که در محیط و فضای نرم افزار کشور ما، همواره تنها Business Model، فروختن یک برنامه بوده، و تنها چیزی که این مد را حفظ خواهد کرد، محرمانه بودن سورس کد، و اختیارات تام و کامل مالک بر نرم افزار است.
اما این تنها "مدل" کسب درآمد نیست. وقتی میتوان از چیزی کسب درآمد کرد، پس آن مورد میتواند محور یک Business Model باشد. اگر بتوان از انتشار سورس در کنار قواعد و شرایطی، به سبک دیگری کسب درآمد کرد، این یک کسب و کار با ارزش هست. دقت کنید Open Source ارتباط خاصی به قیمت و پول هزینه ندارند، در واقع Open Source در مورد مسأله ی آزادی فکر میکند. طبیعت انسان، در بستر آزادی رشد میکند،نه محدودیت. محدودیت، میتواند روشی برای کسب قدرت و پرداختن به تجارت باشد، چه در سیاست، چه در فرهنگ یا اقتصاد، اما تجربه نشان داده است انسان، بیشتر از کنترل، به آزادی مایل بوده، وحاضر است برای بقای آزادی نیز هزینه پرداخت کند؛ Open Source نماد و پرچم آزادی در صنعت نرم افزار است. کمپانی های زیادی از این طریق به کسب و کار مشغولند، و افراد زیادی صرفا در حال کمک کردن به توسعه هستند، تا به حال خبری مبنی بر مرگ یک توسعه گر منبع آزاد در اثر گرسنگی منتشر نشده.
مهم است که اگر از منظر "تجارت" به Open Source نگاه میکنیم، به مفهوم و معنای Business Model توجه کنیم، و اصرار نداشته باشیم که فرض کنیم، تجارت لزوما باید همان بده بستان انحصاری و اختصاصی باشد که به صورت کلیشه ای به ذهن میرسد. قاعده کلی این است که میتوان از نرم افزار کسب درآمد کرد، و نسبت نرم افزار و پول، ارتباط یک به یک و به خصوصی با سورس نرم افزار مذکور ندارند.
تولید Open Source چگونه است؟
برای تهیه و تولید یک نرم افزار باید ابتدا برنامه نویسان با بهره گیری از کدهایی موسوم به کدهای زبان برنامه نویسی مانند: سی، پاسکال، ویژوال بیسیک و... ترکیب وترتیبی خاص ومنطقی را کنار هم قرار دهند وپس از آن کد برنامه را تست و خطایابی نموده ودر نهایت آن را کامپایل یا ترجمه کنند.
ترجمه، فرآیندی است که در آن کد برنامه های نوشته شده توسط برنامه نویسان که از آنان به عنوان کد اولیه یاد میشود، پس از استفاده از برنامه های خاصی موسوم به کمپایلرهابه گونه ای ترجمه میشوند که توسط کامپیوتر قادر به درک باشند.
اعمال تغییرات دلخواه در اکثر برنامه های ترجمه شده، امری بسیار مشکل وگاها غیرممکن است. اکثر تولید کنندگان نرم افزار از ویژگی فوق به منظور صیانت و حفاظت از کدهای نوشته شده، استفاده مینمایند.
شما به سورس و کد منبع نرم افزارها دسترسی ندارید.
اکثر نرم افزارهایی که در دست ماست صرفا به صورت نسخه های ترجمه شده و آماده اجرا هستند:
نرم افزارهای Open Source نقطه مقابل رویکرد فوق میباشند. در اینگونه نرم افزارها علاوه بر نسخه ترجمه شده، کد اولیه نیز در اختیار متقاضیان قرار میگیرد. بدین ترتیب امکان اعمال تغییرات ویا سفارشی نمودن آن متناسب با خواسته استفاده کنندگان، فراهم میگردد. افرادی که از ایده Open Source حمایت مینمایند بر این اعتقاد هستند که با اجازه دادن به اشخاصی که علاقه مند به تغییر کد اولیه میباشند، امکان استفاده مفیدتر از برنامه فراهم و احتمال بروز خطا در آنان، کاهش خواهد یافت.
جامعه Open Source گروهی برنامه نویس (یا افراد علاقه مند به برنامه نویسی) از سراسر دنیا هستند که برنامه های مختلفی را به طور رایگان تهیه کرده و در اختیار عموم قرار میدهند. علاوه بر خود برنامه، کد اصلی برنامه نیز در اختیار همگان قرار میگیرد تا افراد دیگر روی برنامه کار کنند و در تهیه بهتر کمک کنند.
عمده ترین دلایل برای تولید نرم افزارهای Open Source
دلایل متعددی وجود دارد که باعث شده یک کمپانی مایل باشد نرم افزار تجاری اش را همراه با سورس و به صورت Open Source در اختیار دیگران قرار بدهد از بارزترین آنها میتوان به موارد زیر اشاره کرد:
اعتماد مشتری برای کاربردهای به خصوص
استفاده از پتانسیل جامعه توسعه گران Open Source
ارائه ی قابلیتی برای تکمیل یا افزایش سازگاری با سایر نرم افزارها و پلت فرمها برای کاربران
استفاده از سایر محصولات یا سورس کدهای تحت لیسانس های متداول Open Source در محصول مورد نظر
افزایش و توسعه کاربرد محصول مورد نظر و کسب درآمد از طریق حمایت یا ارائه سرویس و خدمات عمومی یا خصوصی
ارائه قابلیت ها و کسب محبوبیت و آنگاه فروختن پروژه مورد نظر به یک کمپانی بزرگتر یا ترکیب یک پروژه ثروتمندتر با
آزادی در Open Source
پس از پرداختن به کلیات موضوع ما تعریف Open Source را ادامه میدهیم تا به طور واضح نشان دهیم که چه مواردی در مورد یک نرم افزار خاص باید صدق کند تا به عنوان یک نرم افزار آزاد تلقی شود.
نرم افزار آزاد در مورد آزادی کاربران برای اجرا، کپی، توزیع، بررسی، تغییر و بهبود دادن نرم افزار میباشد. به طور دقیق تر نرم افزار آزاد به چهار نوع آزادی برای کاربران یک نرم افزار اشاره میکند:
آزادی سطح 0: آزادی برای اجرای برنامه برای هر منظوری.
آزادی سطح 1: آزادی برای مطالعه و بررسی چگونگی عملکرد برنامه و تغییر آن برای نیاز خود (دسترسی به کد منبع یک پیش شرط برای این آزادی میباشد).
آزادی سطح 2: آزادی برای توزیع مجدد کپی هایی از آن، بنابر این شما میتوانید به همسایگان [اطرافیان] خود کمک کنید.
آزادی سطح 3: آزادی برای بهبود برنامه و انتشار این تغییرات برای عموم، بنابراین تمام جامعه از آن بهره میبرند (دسترسی به کد منبع یک پیش شرط برای این آزادی میباشد).
هر نرم افزار آزاد، چنین آزادی هایی را برای کاربر دارد. علاوه بر اینها، یک شرط هم هست و آن هم این است که اگر شما از این آزادی ها استفاده کردید و نرم افزاری را تولید کردید و آن را به دیگران دادید، باید این آزادی ها را به کاربرانتان هم بدهید. اگر شما این آزادی ها را داشتید پس دیگران هم باید داشته باشند، یعنی نرم افزار آزاد تا آخرین توزیعش باید آزاد بماند.
آزادی نرم افزار های آزاد تا جایی هست که حتی میتوان بدون پرداخت هزینه ای برای مجوز، کپی هایی از یک نرم افزار آزاد را با یا بدون تغییرات،رایگان یا در ازای دریافت وجه، برای هرکس و هر جایی آن را توزیع کرد.
نرم افزارهای آزاد به دلیل ابهام در لفظ free به اشتباه به عنوان نرم افزارهای رایگان و احتمالا بی ارزش تلقی میشدند، به همین دلیل این نرم افزارها به متن باز یا متن آزاد (Open Source) معروف شدند.
از دیگر ضمانت هایی که نرم افزار آزاد تأمین میکند، اجازه نامه عمومی همگانی (GPL) است. GPL برای هرکس امکان دوباره توزیع کردن یا همگردانی (کامپایل) مجدد متن برنامه را فراهم میکند. طبق این اجازه نامه همچنین باید متن برنامه در دسترس قرار داده شود تا امکان استفاده و یا تغییر آن باشد. برنامه های رایانه ای اینگونه را معمولا باز متن گویند. متن چنین برنامه هایی نمیتواند به حالت «محدود شده» درآید مگر با نظر تک تک نویسندگان آن متن. بیشتر نویسندگان متن سیستم عامل لینوکس تحت این مجوز برنامه نویسی میکنند.
نرم افزار منبع باز، نرم افزارهای کامپیوتری هستند که کد منبعش تحت پروانه یا جواز قابل دستیابی است (یا ترتیب داده اند مانند قلمرو عمومی) که به استفاده کنندگان اجازه میدهد بهره مند شوند، تغییر دهند، توسعه دهند نرم افزار، و پخش نمایند.
استفاده از نرم افزارهای Open Source سیر صعودی دارد. به گزارش خبرنگاران و طبق آمار کسب شده استفاده و موارد کاربردی در مقابل تولید و ارائه نرم افزارهای Open Source به طور روز افزونی افزایش پیدا کرده است و این نرم افزارها قابلیت تولید و ارائه کاربردهای کوچک تا پروژه ها و نرم افزارهای بزرگ را دارا هستند و امروزه به دلایل متعددی بسیاری از موسسات برای استفاده از نرم افزارهای Open Source به درجه ای از بلوغ رسیده اند که عملا دایره استفاده از آنها بسیار گسترش پیدا کرده است و کاربرد فراوانی در تمامی ابعاد دارند.
همانطور که در مطالبت قبل نیز اشاره شد یکی از مشکلات استفاده از این نرم افزارها عدم پشتیبانی و ضمانت این نرم افزارها عنوان شده است به گونه ای که در صورت بروز مشکل برای این قبیل نرم افزارها مرجع مشخصی برای برطرف کردن ایرادات آنها وجود ندارد. لازم به ذکر است از جمله معروف ترین نرم افزارهای Open Source میتوان به سیستم عامل Linux اشاره کرد که استفاده و بکار گیری آن به لحاظ بالا بودن فریب امنیت آن به طور روز افزونی گسترش پیدا کرده است.
مقایسه نرم افزارهای منبع باز و منبع بسته
منبع باز در مقابل منبع بسته گاهی اوقات بحث داغی برمی انگیزد. پول درآوردن از طریق روش سنتی، (مانند فروش کپی های افراد و پرداخت حق امتیاز پروانه) مشکلتر و بعضی مواقع غیر عملی است. بعضی افراد از نرم افزار منبع بسته دفاع میکنند که نرم افزار منبع باز به بازار تجاری لطمه میزند.
مطالعه در مورد نرم افزار منبع باز در مقابل نرم افزار منبع بسته نشان میدهد نرم افزار منبع بسته دارای مشاور کمتری است ولی نرم افزار منبع باز معمولا دارای زمان کمتری است بین کشف نواقص و تعمیر کردن آن. نمایندگان منبع بسته مطرح میکنند که هیچ کس در نرم افزار منبع باز مسئول نیست، هیچگونه ضمانت و مشوق وجود ندارد که آن تعمیر شود، و هیچ کس مسئولیت غفلت را بر عهده نمیگیرد. نمایندگان منبع باز بحث میکنند برای اینکه کد منبع در نرم افزار منبع بسته وجود ندارد، هیچ راهی برای فهمیدن آسیب پذیری یا خطا وجود ندارد. هر چند که داشتن کد منبع برای برنامه آن را آسان میکند برای شخص خلافکار که کشف کند امنیت آسیب پذیری که آنها میتوانند از آن بهره مند شوند (به جای گزارش دادن یا تعمیر آن).
ویژگی های نرم افزارهای Open Source
توزیع رایگان (این نوع برنامه ها، ممکن است به عنوان بخشی همراه یک بسته نرم افزاری ارائه شوند که به متقاضیان فروخته میگردند).
• کد منبع می بایست به همراه نرم ازار، ارائه گردد.
• هر شخص می بایست اجازه تغییر کد اولیه برنامه را داشته باشد.
• نسخه های اصلاح شده را میتوان مجددا توزیع نمود.
• به مجوز سایر نرم افزار ها نیاز نخواهد بود.
اصول نرم افزاری Open Source
بسیاری از کاربران تصور میکنند که استفاده از نرم افزار متن باز (Open Source) ، به معنی استفاده کامل و آزاد از کدهای منبع آن نرم افزار است، در حالی که باید توجه داشت یک نرم افزار Open Source الزاما همه کدهای منبع خود را عرضه نمیکند. عرضه یک نرم افزار Open Source باید شامل موارد زیر باشد:
کدهای منبع:
باید کدهای منبع در این قبیل برنامه ها در اختیار کاربر قرار گیرد. در هنگام توزیع، این کدها باید به گونه ای باشند که کاربر بتواند از آنها استفاده کند. با این وجود، برخی از انواع نرم افزارهای Open Source هستند که بدون کدهای منبع عرضه میشوند. این نرم افزارها که از کدهای منبع دیگر نرم افزارهای کد باز استفاده میکنند به صورت رایگان از اینترنت بارگذاری میشوند. کدهای منبعی که در برنامه های Open Source عرضه میشوند طوری نوشته شده اند که برنامه نویسان میتوانند با استفاده از آنها امکانات جدیدی را به نرم افزار بیفزایند.
باید توجه داشت که تخریب کدهای منبع و نوشتن آنها به صورت گنگ و پیچیده مجاز نیست.
فعالیت های قابل استنتاج:
مجوز استفاده از این نرم افزارها باید به گونه ای طراحی شود که قابلیت اصلاح داشته باشد. بر این اساس، نسخه های جدیدی که از یک نرم افزار Open Source تهیه میشوند باید به گونه ای باشد که امکان انتشار نرم افزار همانند نسخه اصلی آن فراهم شده باشد.
راستی و درستی کدهای منبع:
مجوزی که طی آن کاربر امکان دسترسی به کدهای منبع یک نرم افزار را پیدا می کند در برخی مواقع محدود می شود. با این وجود، آن دسته از کدهای منبع که بدون هیچ گونه محدودیتی در اختیار کاربران قرار میگیرند و یا در وصله های امنیتی عرضه میشوندباید صحیح و درست باشند تا تغییر در آنها باعث بروز مشکل در نرم افزار نشود. این کدها ممکن است با اسامی مختلف نوشته شده باشند و یا از نرم افزارهای اصلی متفاوت گرفته شده باشند.
عدم ایجاد مشکل برای اشخاص و گروه ها:
تغییر در کدهای منبع نرم افزارهای Open Source باید به گونه ای نوشته شود که برای هیچ شخص و گروهی مشکلی ایجاد نکند. این کدها که در اصل توسط اشخاص مختلف تغییر پیدا میکنند، به گونه ای خواهند بود که باعث ایجاد خسارت های مالی و غیر مالی برای افراد حقیقی، حقوقی، شرکت ها، ادارات دولتی و... نخواهند شد.
عدم ایجاد مانع برای فعالیت های دیگر شرکت ها:
در حالی که گفته می شود نرم افزارهای Open Source نباید برای هیچ کاربری محدود شوند، اعلام شده که این نرم افزارها نباید در فعالیت های نرم افزاری شرکت های رقیب مشکل ایجاد کنند و مانع ادامه فعالیت های آنها شوند. در کنار این مسئله، یک نرم افزار Open Source نباید به گونه ای طراحی شده باشد که تنها کاربران تجاری و بازرگانی بتوانند از آن استفاده کنند و برای کاربران خانگی مزیتی نداشته باشد.
انتشار مجوز استفاده از نرم افزار Open Source:
مجوزی که برای استفاده از یک نرم افزار Open Source عرضه می شود باید به گونه ای باشد که همه کاربران بتوانند به صورت کاملا رایگان از آن استفاده کنند. این مجوزها حتی برای کسانی که این نرم افزار را از واسطه ها دریافت می کنند نیز باید وجود داشته باشد. برای استفاده از یک نرم افزار Open Source تنها یک مجوز لازم است و کاربر نیازی ندارد که مجوز دیگری را تهیه کند.
مجوز نرم افزار Open Source نباید به یک محصول ویژه اختصاص داشته باشد: نرم افزارهای Open Source باید به گونه ای طراحی و تولید شوند که مجوز استفاده از آن تنها مختص یک برنامه خاص نشود. اگر یک نرم افزار Open Source در مرحله نخست عرضه شود و در اختیار جمعی از کاربران قرار گیرد، در مرحله دوم توزیع این برنامه ها کاربر نباید اقدام به تهیه مجوز جدید کند و باید با استفاده از مجوز اولیه صادر شده آن را به کار برد.
مجوز نرم افزار Open Source نباید دیگر نرم افزارها را محدود کند:
مجوزی که برای استفاده از یک نرم افزار Open Source صادر می شود نباید به گونه ای طراحی شود که استفاده از دیگر نرم افزارها را محدود کند. برای مثال: مجوز یک نرم افزار Open Source نباید بر این اصل تاکید کند که تمامی برنامه های دیگر که روی یک کامپیوتر نصب شده اند باید Open Source باشند.
هویت مجوز نرم افزار Open Source باید بر پایه فناوری های روز باشد:
با توجه به فناوری هایی که امروزه برای تولید نرم افزار به کار برده می شود، تولیدکنندگان یک برنامه Open Source باید توجه داشته باشند که فناوری مورد نظر آنها نباید مطابق با یک فناوری شخصی باشد و باید با استانداردهای تعیین شده مطابقت کند.
اگر شخص یا گروه در نظر دارد یک نرم افزار Open Source تولید کند، باید توجه داشته باشد که رعایت موارد فوق الزامی است. اگر چه رعایت این موارد اندکی دشوار به نظر می رسد، ولی باید توجه داشت که در اصل اجرای این اصول از اجرای اصول تعریف شده برای نرم افزارهای معمولی بسیار ساده تر است. در حال حاضر استقبال از نرم افزارهای Open Source به قدری افزایش یافته که کارشناسان آن را نوعی تهدید جدی برای شرکت های بزرگی چون مایکروسافت قلمداد می کنند.
مزایای نرم افزارهای Open Source نسبت به نرم افزارهای تجاری
• چون تعداد زیادی افراد (در برخی موارد صدها و شاید هزاران نفر) روی یک برنامه کار میکنند و پیشنهادات خود را ارائه می دهند این برنامه ها امکانات فراوانی داشته و با سیستم های مختلفی سازگاری دارند.
• برخلاف برنامه های تجاری که باید برنامه خود را سریع تر از رقبا و با کلی ایراد نرم افزاری به بازار عرضه کنند این نرم افزارها خیلی خوب آزمایش می شوند. برای مثال: ویندوز 2000 با حدود 63 هزار اشکال نرم افزاری (فقط آنهایی که مایکروسافت از آن خبر داشت!) روانه بازار شد در حالی که سیستم عامل Linux تقریبا خالی از اشکال است. (این یکی از ده ها دلیل است که - اگر در اخبار یا در اینترنت خوانده باشید – مایکروسافت از نرم افزار رایگان وحشت دارد و با تمام توان خود با این جامعه مبارزه می کند.)
• خیلی از شرکت های کوچک تر بعد از مدتی درهای خود را بسته و دیگر نسخه جدیدی به بازار عرضه نمی کنند (این مشکل بسیار بزرگی به خصوص در زمینه های مربوط به سخت افزار است) در حالی که نرم افزارهای Open Source در اختیار همگان هستند و هرگز از بین نمی روند.
• این نرم افزارها به هیچ شرکتی وابسته نیستند که شما را به مصرف محصولات آن شرکت مجبور کنند. برای مثال: Internet Explorer همیشه از MSN برای جست وجوی اینترنت استفاده می کند و خیلی از نسخه های آن به شما اجازه استفاده از گوگل (برنامه) را نمی دهد. هیچ نرم افزار رایگانی این طور نیست.
چند نمونه از جامعه ی نرم افزاری
در ادامه به توضیح مختصری از پرکاربردترین و معروف ترین نرم افزارهای Open Source می پردازیم:
Linux: همان طور که قبلا نیز اشاره شد، یکی از مشهورترین این نرم افزارها تینوکس است. لینوکس سیستم عاملی است که بر اساس یونیکس و برای کامپیوترهای شخصی تعبیه شده است. امروزه این سیستم عامل سهم اصلی سرورهای اینترنت را داراست. هم چنین پس از پشت سر گذاشتن سیستم عامل اپل رقیب مایکروسافت در سیستم های شخصی شده است. شرکت های بزرگی نظیر IBM و HP سیستم های سخت افزاری جدید خود را بر اساس این سیستم عامل بنا کرده و شرکت های تولید کننده وسایل الکترونیکی نظیر Sony به آن رو آورده اند. گذشته از مجانی بودن لینوکس از مزایای اصلی آن نسبت به ویندوز امنیت و استحکام آن است. حتی شرکت مایکروسافت برای سرورهای سرویس Hotmail خود هنوز از سیستم های بر اساس یونیکس استفاده می کند.
Mozilla FireFox: موزیلا فایر فاکس مرورگری است که گفته می شود هم اکنون حدود 10% کاربران اینترنت از آن استفاده می کنند و بیش تر بین کاربران لینوکس طرف دار دارد. اما رفته رفته و با آشکار شدن مشکلات مرورگر معروف مایکروسافت (Internet Explorer) کاربران سیستم های عامل دیگر مثل ویندوز و مکینتاش هم به استفاده از فایر فاکس روی آوردند. در زمان نوشتن این یادداشت دست کم 361024562 بار این نرم افزار دریافت (Download) شده است.
ویژگی های فایر فاکس: از «بستن خودکار پنجره های ناخواسته (pop-up bloker)، پشتیبانی منطقی از آخرین نسخه CSS امکان مرور چند صفحه در زبانه های مختلف یک پنجره (tabbed browsing)» به عنوان ویژگی هایی نام برده می شود که سبب محبوبیت فایر فاکس بین کاربران شده است. اما این ها همه هست وهمه نیست! مهم ترین عامل موفقیت فایر فاکس شخصی سازی یا همان Open Source بودن فایر فاکس است که باعث محبوبیت این نرم افزار شده است.
eMule: گاهی اوقات حتی با جست وجوهای متفاوت و زیادی که داریم به دنبال مطلب یا فایلی در سطح اینترنت بوده که متاسفانه چیزی یافت نمی کنیم در این موارد می توان به سراغ اطلاعات کامپیوترهای دیگران رفت و با جست وجویی در میان فایل های آنها به هدف خود نزدیک تر شد البته این مراجعه فیزیکی نبوده بلکه با کمک نرم افزار eMule به راحتی می توان در میان سایر کاربرانی که از این نرم افزار استفاده می کنند و فایل های مفید خود را به اشتراک گذاشته اند جست وجو نموده و فایل مورد نظر خود را بگیریم.
Clamwin: یک آنتی ویروس رایگان مخصوص تمام سیستم عامل های شرکت مایکروسافت از قبیل Me/2000/XP/2003/98 و Vista می باشد. این آنتی ویروس که به صورت متن باز (Open Source Code) ارائه شده است دارای سیستمی قدرت مند جهت جلوگیری از ورود و فعالیت ویروس ها تروجان ها و کرم های اینترنتی هم چنین دارای ستاپی بسیار ساده و روان و آپدیت رایگان و نامحدود می باشد. به راحتی می توان این آنتی ویروس را دانلود کرده و با خیالی راحت به کار در رایانه اینترنت بپردازید.
از قابلیت های مهم این آنتی ویروس می توان به موارد زیر اشاره کرد:
• آشکار سازی ورود ویروس و آگاهی دادن از پاک شدن آنها.
• زمان بندی اسکن کردن کامپیوتر به صورت دلخواه در هر زمان.
• آپدیت رایگان به صورت اتوماتیک و متناوب از سرور اصلی سازنده ی این آنتی ویروس.
• اضافه شدن به منوی کلیک راست برای بررسی فایل ها و پوشه ها و سایت های اینترنتی.
• دارای پلاگین Addin مخصوص نرم افزار Microsoft Outlook برای از بین بردن فایل ها و پوشه های ضمیمه شده به نامه های الکترونیکی به صورت اتوماتیک.
Feedreader: یک ابزار رو میزی برای خواندن RSS . این نرم افزار مطالب بروز شده در سایت های مورد علاقه شما را دانلود کرده و قسمت های اضافی صفحه که موجب سنگین تر شدن صفحات و تلف شدن وقت زیادی می شوند را حذف می کند و شما می توانید به سرعت مطالب مورد نظر خود را مطالعه کنید.
RSS مخفف Really Simple Syndication به معنی تشکیل ارتباط های بسیار ساده است و فایلی با فرمت خاص (XML) می باشد که شامل آخرین عناوین سایت های خبری، وبلاگ ها و سایت هایی از این دست می باشد. در واقع آر اس اس فرمتی برای خروجی اطلاعات می باشد. با بروز شدن سایت، فایل آر اس اس آن به طور خودکار بروز می شود. محتویات فایل های آر اس اس را می توان به کمک نرم افزارهایی از این قبیل مشاهده کرد.
Audacity: یک ابزار آزاد و حرفه ای اما کاربر پسند و آسان است که به کاربران اجازه می دهد موسیقی های خود را ویرایش/ فشرده و یا صدای خود را ضبط و بر روی آن تغییراتی ایجاد کنند.
از قابلیت های این نرم افزار:
• ضبط صدا.
• تبدیل و ضبط نوار ضبط شده را به دیجیتال و یاسی دی.
• ویرایش WAV ، MP3 ، Ogg Vorbis یا AIFF فایل های صوتی.
• کات، کپی، با هم متصل کردن یا ترکیب با یکدیگر برای تلفن های موبایل.
• تغییر سرعت گام یا یک ضبط.
• اضافه کردن عوارض جدید را با دو شاخه LADSPA- قابل فهم.
Zip-7: یک نرم افزار فشرده ساز برای ویندوز با پشتیبانی فرمت فایل های BZIP2 ، GZIP ، ZIP ، 7z و TAR و با قابلیت باز کردن فایل های CPIO ، Z ، CHM ، LZH ، ARJ ، ISO ، CAB ، RAR ، DEB ، RPM و NSIS . این نرم افزار نسبت تراکم بهتری از WinZip برای ZIP کردن فایل ها از خود نشان داده است. (یعنی بیشتر و بهتر از WinZip یک فایل را فشرده می کند)
Joomla: یک سیستم مدیریت محتوا فوق العاده تحت وب است که در ساختن وب سایت و دیگر برنامه های تحت اینترنت به شما کمک می کند . مهم تر اینکه جوملا یک برنامه Open Source می باشد که به طور رایگان در اختیار همه قرار دارد.
جوملا برای قدرت بخشی به کلیه برنامه ها، از یک صفحه شخصی ساده تا برنامه های تحت وب شرکت های عظیم استفاده می شود. چند مورد از موارد استفاده جوملا به شرح زیر است:
• پورتال ها و یا وب سایت های شرکت های عظیم
• تجارت آنلاین
• وب سایت های تجاری در مقیاس کوچک
• وب سایت های سازمانی و رایگان
• کاربردهای دولتی
• اینترنت و اینترانت های شرکت های عظیم
• سایت های مذهبی و مرتبط با آموزش
• صفحات شخصی و خانوادگی
• پورتال های مبتنی بر گروه ها و اصناف
• مجلات و روزنامه ها
جوملا! می تواند به سادگی در کنترل تمامی قسمت های وب سایت شما، از اضافه کردن محتوا و تصویر تا بروز رسانی کاتالوگ محصولات و یا رزرواسیون آنلاین استفاده شود.
تلفیق Open Source و دنیای وب
در صورتی که بخواهیم نرم افزارهای Open Source را بر اساس کارایی و نوع نرم افزار (سیستم های عامل، نرم افزار های گرافیکی، نرم افزارهای مربوط به کار با صدا، مرورگرهای اینترنتی، وب و... ) دسته بندی کنیم مورد های فراوانی وجود دارد که از حوصله این بحث خارج است ولی خالی از لطف نیست اگر نگاه کوتاهی به پرکاربردترین زمینه نرم افزارهای Open Source که بی شک دنیای Web می باشد، بیاندازیم.
نرم افزار مدیریت محتوا مامبو
شاید این حرف درست است زمانی زیادی برای نگارش و برنامه نویسی یک نرم افزار مثلا نرم افزار تحت وب مدیریت محتوا مامبو می شود. خوب ایرانی ها برای داشتن یک نرم افزار مدیریت دوراه دارند یا راه رفته گروه مامبو را دنبال کنند و یکباردیگر نرم افزار جدید بنویسند و یا اینکه مامبو رابا نیاز و سلیقه و کارکرد خود فارسی کنند ؛ البته گروه مامبو با تفکر اپن سورس یا متن باز کدها را به صورت رایگان در اختیار کاربران قرار می دهند شما با دانش کافی و مهارت لازم می توانید بهترین و زیباترین وبسایتها را با هسته مرکزی مامبو طراحی کنید .به عبارتی اگر شما بخواهید از ابتدا شروع به کار کنید و نرم افزاری با امکانات و خصوصیات مامبو طراحی کنید سالها وقت شما را می گیرید همین وقت را می توانید در جهت ارتقا و گسترش مامبو قرار دهید البته در عین اینکه این نرم افزارهای متن باز و آزادهستند اما مشمول قوانین کپی رایت یا حق تالیف موسوم به گنو GNU General Public Licens می شوند با این تفکر ؛ سیستم عامل اپن سورس لینوکس Linuxهم با تغییراتی در این نرم افزار به فارسی و البته سیستم عامل ملی تبدیل شده استدر این گفتار قصد ندارم در خصوص سیستم عامل ملی لینوکس فارسی توضیحاتی بدهم سعی می کنم در گفتار مجزا به سیستم عامل لینوکس و به صورت نگاه خاص به سیستم عامل ملی لینوکس فارسی بپردازم ؛ اما بعنوان یک سیستم عامل اپن سورس و متن باز بدان اشاره می کنم .
نگاهی به تاریخچه سیستم عامل لینوکس یک نرم افزار متن باز واقعی
بد نيست اشاره ای به يک مثال واقعی در دنيای نرم افزارهای Open Source داشته باشيم . در سال 1991 ، Linus Torvalds ، دانشجوی دانشگاه هلسينکی فنلاند يک سيستم عامل جديد مبتنی بر Minix ( اقتباس شده از يونيکس ) را ايجاد که نام آن را لينوکس ( Linux ) گذاشت . وی نسخه شماره 0.02 لينوکس را بر اساس GNU General Public Licens که شامل تعاريف قانونی جامعی در خصوص نرم افزارهای Open Source است ، ارائه نمود . تعداد زيادی از افراد در سرتاسر جهان اقدام به Download لينوکس و استفاده از آن نمودند . گروهی زيادی از افراد فوق خود برنامه نويسان حرفه ای بودند که توانائی انجام تغييرات مورد نياز در لينوکس را داشتند . Torvalds ، نسخه های اصلاح شده توسط ساير برنامه تويسان را دريافت و با لحاظ نمودن تغييرات ، در سال 1994 نسخه شماره يک لينوکس را عرضه نمود .
يک نکته نگران کننده در خصوص نرم افزارهای Open Source ، فقدان ضمانت و پشتيبانی فنی از آنان است . با توجه به اين موضوع که همواره امکان و يا بهتر بگوئيم مجوز اعمال تغييرات و يا اصلاحات در اين نوع نرم افزارها وجود دارد ، تقريبا" حمايت از آنان غير ممکن و يا مشکل خواهد بود . بدين دليل برخی از شرکت های حامی نرم افزارهای Open Source با توجه به ارائه سرويس خدمات و پشتيبانی اينگونه نرم افزارها ، اقدام به فروش آنان می نمايند.
مثلا" نرم افزار Red Hat در سال 1994 توسط Official Red Hat Linux عرضه گرديد. نرم افزار فوق رايگان نبوده و متقاضيان می بايست هزينه استفاده ( مالکيت ) از آن را پرداخت نمايند. مهمترين ويژگی Red Hat ، امکان پشتيبانی فنی از آن است. برای اغلب سازمان ها و موسسات تضمين حمايت های فنی و پشتيبانی يکی از عوامل مهم تصميم گيری در خصوص خريد لينوکس در مقابل Download نمودن آن به صورت رايگان می باشد. علاوه بر Red Hat ، شرکت های متعدد ديگری نيز اقدام به عرضه لينوکس با توجه به سياست ها و ديدگاه های خاص خود نموده اند .در اين رابطه نرم افزارهای متعددی با محوريت لينوکس نيز طراحی و پياده سازی شده است .
نمونه های نرم افزارهای متن باز مرورگر اینترنتی مولیزا Mozilla ( با هسته مرورگر Netscape ) ، سرويس دهنده وب آپاچی Apache ، زبان اسکريپت نويسی وب( زبان تحت وب) پرل PERL و فرمت فايل های گرافکيی PNG ، نمونه هائی در زمينه متن بازها بوده که بر اساس ايده Open Source طراحی و پياده سازی شده اند .
منابع:
http://www.opensource.org
پایگاه اطلاع رسانی http://www.itiran.com
مرجع آموزش و پشتیبانی فارسی http://www.smflearn.com
پايگاه اطلاعات علمي جهاد دانشگاهي http://www.sid.ir
سايت دانلود كتابهاي فارسي http://www.farsibooks.ir
بانك اطلاعاتي جامع متخصصين ايراني http://www.irexpert.ir
+ نوشته شده در سه شنبه بیست و ششم آذر ۱۳۹۲ ساعت 21:40 توسط
|