نرم افزارها زنده می مانند؟
شما هم مثل من از فایرفاکس استفاده میکنید؟ چه عالی! اما اگر بنیاد موزیلا فردا صبح تصمیم بگیرد توسعه فایرفاکس را متوقف کند چه؟ برای مرورگری که اینقدر به آن وابستهایم، چه رخ خواهد داد؟ مرورگرهای خوب دیگری هم البته هستند: اپرا، سافاری و به تازگی کروم. اما من و شما میدانیم که فایرفاکس خودمان را میخواهیم توقف توسعه آن برای ما مانند یک مصیبت خواهد بود. اما بیشتر کاربران اینترنت هنوز هم از IE استفاده میکنند.
اگر مایکروسافت پس فردا ظهر تصمیم بگیرد توسعه IE را متوقف کند، آنها چه خواهند کرد؟ (آنها را نمیدانم، اما من از مایکروسافت تشکر خواهم کرد). ممکن است من از IE خوشم نیاید، اما نمیتوانم انکار کنم که کاربران زیادی. در واقع بیشتر کاربران، از IE استفاده میکنند و کم و بیش به آن وابستهاند. در هر کدام از این دو مورد، کاربران انتخابهای متعدد دیگری پیش رو دارند که میتوانند به آنها بگردایند، اما تصور کنید سرنوشت بسیاری از شرکتهای نرمافزاری که از Eclipse به عنوان ابزار اصلی توسعه کد استفاده میکنند، چه خواهد شد اگر IBM هفته آینده اعلام کند، پروژه اکلیپس را دیگر ادامه نخواهد داد؟ باز هم البته ابزارهای مشابه بسیاری وجود دارند که بتوان به آنها اندیشید، اما در اینجا با کسب و کارهای گسترده و آموزش گروهی برنامهنویسان و دشواریهای مهاجرت از یک مجموعه گسترده ابزارها به مجموعهای دیگر روبه رو هستیم. دشواری کار بسیار بیشتر از تغییر مرورگر وب است. به عنوان آخرین نمونه، فرض کنیم مایکروسافت اعلام کند پروژه Visual Studio را به طور کامل تعطیل خواهد کرد. پیامد چنین تصمیمی برای کسب و کارهایی که به این محصول وابستهاند، چه خواهد بود؟
به احتمال زیاد، متوجه تفاوتی که میان دو مثال اپنسورس و دو مثال تجاری در بالا وجود دارد، شدهاید. اکنون باید پرسش خود را درباره فایرفاکس و اکلیپس بازآرایی کنیم: آیا چشمانداز متوقف شدن پروژه فایرفاکس یا اکلیپس اساساً محتمل است؟ به نظر من، نه. اگر بنیاد موزیلا فایر فاکس را رها کند، محتملترین حالت آن است که فایرفاکس به چندین شاخه جدید تقسیم میشود، به این شکل که چندین گروه مختلف، هر کدام آخرین کد فایر فاکس را میگیرند و توسعه آن را خود ادامه میدهند و باز هم احتمالاً به تدریج یک گروه با اقبال بیشتری از جانب کاربران رو به رو خواهد شد. در مورد اکلیپس هم با توجه به بزرگتر و پیچیدهتر بودن کل نرمافزار، میتوان پیشبینی کرد که دستکم یک گروه بزرگ، احتمالاً با پشتیبانی یک شرکت بزرگ، کار توسعه آن را بر مبنای آخرین کد منبعی که IBM منتشر میکند، ادامه خواهند داد. در مورد نرمافزارهای آزاد یا اپنسورسی که میزان استقبال از آنها از حد معینی فراتر میرود، میتوان اطمینان بسیار بیشتری داشت که در درازمدت نیز زنده و فعال خواهند بود و در قالبهای تازه به رشد خود ادامه خواهند داد. در مورد نرمافزارهای تجاری چهطور؟
اگر شرکت ادوبی فردا اعلام کند، از توسعه و ارائه Flash خسته شده و میخواهد تمام توانش را روی توسعه مجموعه CS قرار دهد (با فرض اینکه ترس از وال استریت مانع چنین تصمیمی نشود). تکلیف سایتهای بیشماری که کمی تا قسمتی مبتنی بر فلش هستند، چه خواهد شد؟
شاید چنین مثالهایی غیرواقعی به نظر برسد، اما در واقع هر سال شاهد توقف توسعه چندین پروژه نرمافزاری تجاری بزرگ هستیم که در حقیقت به معنی مرگ آنها است. آیا راهی برای زنده نگه داشتن نرمافزاری که در عین کار بر پسند و موفق بودن، عرضه کننده تجاری آن از توسعه دادنش به تنهایی ناتوان شده، وجود دارد؟ بله. مثال؟
نمونههای دیگری از اپنسورس کردن نرمافزارهای تجاری را نیز هر سال شاهد هستیم. به این ترتیب، یک توسعه دهنده پروژهای را که فربه شده و خودش توان نگهداری آن را ندارد، از مرگ میرهاند.
از این نگاه، میتوان مدل توسعه نرمافزارهای اپن سورس را بیشتر مانند روش جامعه علمی دانست. بسیار شنیدهایم از دانشهای پنهان ماندهای که با کاشفان خود به خاک سپرده شدهاند. تلاش همیشگی جامعه علمی بر این است که میان امانتداری علمی و دسترسپذیر کردن دانستهها برای همگان، تعادل معقولی بر قرار کند، به گونهای که تا حد ممکن یافتههای تازه از نظرها دور نمانند و زمینهساز پیشرفتهای دیگر شوند و از سوی دیگر در دسترس بودن آثار علمی باعث نشود کسانی نقض امانت کنند و پیمودن راه پیموده را به خود نسبت دهند.
در مدل توسعه اپنسورس نیز همگان امکان دسترسی آزاد به کد منبع را دارند و امکان یافتن ایرادها و افزودن ایدههای نوبه مجموعه حاضر بسیار بیشتر میشود از سوی دیگر، در جهان نرمافزارهای اپنسورس نیز متاسفانه شاهد رفتارهای نادرست هستیم که اثبات کردن و پیگیری آنها دشوار است، زیرا در این حالت راهی به سوی کدر و مبهم شدن وضعیت پیموده میشود. برخی از توسعه دهندگان از گواهی نامههای کدهای اپنسورس و آزاد(ماند GPL، اما نه فقط محدود به آن) تخلف میکنند و گاهی نرمافزاری تجاری و کدبسته عرضه میکنند که تا حد زیادی بر پایه کدهای آزاد یک یا چند نرمافزار آزاد یا اپنسورس، ساخته شدهاند. در بسیاری از موارد ثابت کردن چنین تخلفی دشوار است (اگر غیرممکن نباشد)، زیرا ادعای تخطی یک توسه دهنده از گواهی نامههای آزاد نیازمند دسترسی داشتن به کد منبع است و در مورد نرمافزاری که به شکل بسته ارائه شده، چنین امکانی به سادگی وجود ندارد.
اما دست جامعه نرمافزارهای آزاد نیز بسته نیست. همچنان که جامعه علمی برای یافتن متخلفان، متکی بر دانش پیشگان در همه جا و در تمامی رشتهها است، جامعه نرمافزارهای آزاد نیز کاربران و برنامهنویسانی دارد که موارد تخلف از گواهینامههای رسمی نظیر GPL را یافته و پیگیری میکنند. نمونههایی از این تلاشها را میتوانید در سایت www.ghl-violations.org ببینید.
به یک تعبیر شاید بتوان گفت نرمافزار هر قدر به افق آزادی و اپنسورس بودن نزدیک شود، زندهتر است و دور ساختنش از این ساحت به مفهوم میراندن آن است. میراندن نرمافزار جُرم است.
برگرفته از شبکه