برای دههها، مایکروسافت در یک پارادوکس گیر کرده بود: اکوسیستمی که به طور همزمان به پیشرفت مهارتهای نرمافزاری (Software Craftsmanship) کمک کرد و در عین حال، کنترل انحصاری (Proprietary Control) خود را تقویت نمود. با ظهور و رشد چشمگیر متنباز (Open Source) و به ویژه لینوکس در زیرساختهای ابری، بسیاری از متخصصان فناوری به این فکر افتادهاند که آیا مایکروسافت در حال برنامهریزی برای عرضه توزیع دسکتاپ لینوکس خودش است؟ در نگاه اول، این ایده منطقی به نظر میرسد، اما با بررسی عمیقتر، متوجه تضادهای استراتژیک، ایدئولوژیک و تاریخی میشویم که این اقدام را هم بعید و هم بسیار پیچیده میکند.
واقعیت امروز: رابطهی مایکروسافت و لینوکس
مایکروسافت در حال حاضر توزیع لینوکس اختصاصی خود را با نام CBL-Mariner توسعه داده است. با این حال، این توزیع یک سیستمعامل عمومی برای دسکتاپ نیست، بلکه نقشهای داخلی مشخصی در زیرساختهای Azure و Edge Deployments ایفا میکند. CBL-Mariner تحت مجوز MIT منتشر شده و نه GPL. این انتخاب نشاندهنده تمایل مایکروسافت به حفظ حداکثر کنترل و حداقل درگیری با جامعه متنباز است.
به عبارت دیگر، استقبال مایکروسافت از لینوکس یک رویکرد زیرساختی است، نه ایدئولوژیک. لینوکس امکان مقیاسپذیری (Scalability)، قابلیت حمل (Portability) و عملیات مقرونبهصرفه را در فضای ابری فراهم میکند، اما این به معنای پذیرش فرهنگ یا بنیانهای فلسفی جامعه لینوکس توسط مایکروسافت نیست.
تجربه 35 ساله در اکوسیستم مایکروسافت و .NET
کسانی که از دهه 90 میلادی با فناوریهای مایکروسافت کار کردهاند، تحسین عمیقی برای کیفیت مهندسی آن دارند. محصولاتی مانند Microsoft Office، Windows Server و Visual Studio نمونههای بارزی از طراحی کاربرمحور و افزایش بهرهوری توسعهدهنده هستند. در این میان، اکوسیستم .NET با زبان C#، فریمورک ASP.NET و قدرت LINQ، لحظات درخشانی را در طراحی نرمافزار مدرن رقم زده است.
با این حال، برخی از توسعهدهندگان از سالها پیش به لینوکس مهاجرت کردهاند، نه به دلیل عدم وفاداری به مایکروسافت، بلکه به این دلیل که معماری دسکتاپ ویندوز، اغلب مبهم (Opaque)، شکننده (Fragile) و در تضاد بنیادین با اخلاق حاکمیت نرمافزار بلندمدت (Long-term Software Sovereignty) است.
چرا دسکتاپ لینوکس مایکروسافت بعید است؟
اینکه از خود بپرسیم آیا مایکروسافت یک توزیع دسکتاپ لینوکس میسازد یا خیر، در واقع یک سوءتفاهم از مدل کسبوکار مایکروسافت است. مایکروسافت فناوریها را به خاطر خودشان تولید نمیکند، بلکه اکوسیستمها را پولساز (Monetize) میکند.
یک دسکتاپ مبتنی بر لینوکس نمیتواند به همان شیوه ویندوز درآمدزایی کند. مجوز GPL محدودیتهایی را برای انحصار ایجاد میکند. رقابت با توزیعهایی مثل Arch، Fedora یا Debian مایکروسافت را مجبور میکند در زمین فرهنگی و حقوقیای فعالیت کند که کنترلی بر آن ندارد.
این دقیقاً دلیلی است که .NET MAUI از لینوکس پشتیبانی نمیکند؛ نه به دلیل محدودیت فنی، بلکه به این خاطر که لینوکس هیچ گونه قفلشدگی (Lock-in) به Azure ایجاد نمیکند. پروژههای متنباز جامعه مانند Uno و Avalonia، که به درآمدهای Azure وابسته نیستند، به راحتی از لینوکس پشتیبانی میکنند. این یک تصمیم استراتژیک است، نه معماری. وقتی توسعهدهندگان با MAUI اپلیکیشنهای موبایل یا دسکتاپ میسازند، به طور طبیعی به سمت APIهای Azure هدایت میشوند. مایکروسافت دلیلی ندارد که این مسیر را به دنیای دسکتاپ لینوکس گسترش دهد، جایی که احتمال پذیرش Azure به طور قابل توجهی کمتر است.
تهدیدهای واقعی: SteamOS و ChromeOS
رقبای واقعی مایکروسافت، توزیعهایی مانند Fedora یا Arch نیستند، بلکه SteamOS و ChromeOS هستند. هر دوی آنها مبتنی بر لینوکس بوده، به طور فزایندهای قدرتمند شدهاند و به تدریج سهم ویندوز را از بازار دسکتاپ کاهش میدهند.
به ویژه SteamOS ثابت کرده که لینوکس میتواند در برخی زمینههای بازی، که مدتها سنگر نهایی مایکروسافت محسوب میشد، عملکرد بهتری نسبت به ویندوز داشته باشد. لایه سازگاری Proton که توسط Valve توسعه یافته، مسیری را باز کرده که به طور کامل مایکروسافت را دور میزند.
اگر قرار باشد مایکروسافت یک دسکتاپ لینوکس عرضه کند، این کار در واکنش به یک تهدید وجودی (Existential Threat) خواهد بود و حتی در آن صورت، تنها در صورتی که بتواند یک زاویه درآمدزایی برای آن تضمین کند. چیزی که هنوز رخ نداده است.
تضاد فلسفی و نکتههای فراموششده برای داتنتکاران
مایکروسافت DNA فلسفی جامعه لینوکس را ندارد. اگرچه اکنون در پروژههای متنباز مشارکت میکند، اما جهانبینی آن عمیقاً تجاری باقی مانده است. این یک قضاوت اخلاقی نیست، بلکه صرفاً شناسایی یک هدف سازمانی (Institutional Telos) است.
در مقابل، اکوسیستم لینوکس توسط جوامع و فروشندگانی مدیریت میشود که بر پایه ارزشهای متفاوتی مانند شفافیت، ماژولار بودن، حاکمیت کد و حکومتداری مشارکتی (Participatory Governance) شکل گرفته است. مایکروسافت نه خلق و خو و نه انگیزههای ساختاری لازم را برای همسویی کامل با این مدل ندارد.
با این اوصاف، برای برنامهنویسان داتنت فارسیزبان، دو نکته مهم وجود دارد که در متن اصلی کمتر به آن پرداخته شده است:
- قدرت داتنت کراسپلتفرم (Cross-Platform .NET): مهمترین نکته برای یک داتنتکار، همین است که شما نیازی به سیستمعامل لینوکس مایکروسافتی ندارید! .NET Core از زمان معرفی، به صورت کامل از لینوکس پشتیبانی میکند. شما میتوانید اپلیکیشنهای Web API یا Console خود را روی سرورهای لینوکس Deploy کنید و از مزایای آن بهرهمند شوید. این قابلیت، یکی از نقاط قوت بزرگ داتنت مدرن است و به طور کامل با فلسفه متنباز و کراسپلتفرم همخوانی دارد. اینجاست که مشارکت مایکروسافت در متنباز به اوج خود میرسد، یعنی در پلتفرمهای توسعه، نه در سیستمعاملهای دسکتاپ.
- پروژههای جامعه برای دسکتاپ لینوکس: اگر یک برنامهنویس داتنت به دنبال توسعه اپلیکیشن دسکتاپ برای لینوکس است، .NET MAUI تنها گزینه موجود نیست. پروژههای متنباز دیگری مانند Avalonia UI و Uno Platform وجود دارند که به شما اجازه میدهند از کد C# و .NET برای ساخت اپلیکیشنهای دسکتاپ لینوکس (و سایر پلتفرمها) استفاده کنید. این پروژهها "پلی" میان جامعه داتنت و دنیای لینوکس ایجاد کردهاند و نشان میدهند که جامعه متنباز داتنت به طور فعال در حال پر کردن خلأهای استراتژیک مایکروسافت است.
نتیجهگیری:
آینده توسط یک شرکت ساخته نخواهد شد. این آینده در تقاطع بسیاری از سیستمها، فرهنگها و ایدئولوژیها شکل خواهد گرفت. مایکروسافت ممکن است در این مسیر قدم بزند، اما آن را رهبری نخواهد کرد. بهترین مشارکتهای این شرکت - .NET Core و C# - در حال حاضر روی لینوکس شکوفا شدهاند و شاید همین کافی باشد.