۲۹ شهریور ۱۴۰۳

Techboy

اخبار و اطلاعات روز تکنولوژی

۷ نقطه ضعف فرهنگ منبع باز

اشتیاق منبع باز به خلاقیت، یادگیری و جامعه توسعه دهندگان دامن می زند، اما Shangri-La نیست. در اینجا هفت دام وجود دارد که باید قبل از پیوستن به یک پروژه منبع باز در نظر بگیرید.

اشتیاق منبع باز به خلاقیت، یادگیری و جامعه توسعه دهندگان دامن می زند، اما Shangri-La نیست. در اینجا هفت دام وجود دارد که باید قبل از پیوستن به یک پروژه منبع باز در نظر بگیرید.

در شایستگی فلسفه منبع باز برای نوشتن کد و تولید نرم افزار تردیدی وجود ندارد. بسیاری از بسته های نرم افزاری در هسته محاسبات مدرن، از سیستم عامل لینوکس گرفته تا MySQL، با استفاده از مدلی از اشتراک گذاری باز و توسعه مشارکتی ایجاد شده اند. چهار دهه کد عالی، که توسط فلسفه باز بودن تغذیه شده است، هر گونه سوال در مورد اینکه آیا ایده منبع باز کار می کند یا خیر حل و فصل کرده است.

اما با تمام عظمتش، منبع باز بدون ایراد نیست. اکنون که منبع باز به جریان اصلی وارد شده است، اجازه دهید برخی از جنبه های منفی آن را در نظر بگیریم. – نه آنقدر فلسفه که واقعیت روزمره. در اینجا هفت دلیل وجود دارد که توسعه دهندگان ممکن است دو بار در مورد مشارکت در یک پروژه منبع باز فکر کنند.

متن باز با ابر کار نمی کند

بسیاری از مجوزهای منبع باز فعلی قبل از ابر ایجاد شده اند، زمانی که کاربران با دانلود و اجرای نرم افزار روی دسکتاپ خود به نرم افزار دسترسی پیدا کردند. شرکت‌های ابری از زمانی که راه‌هایی برای بارگیری رایگان در اخلاق منبع باز پیدا کرده‌اند در حالی که تغییرات کد آنها اختصاصی است. یکی از مدیران منبع باز در یک شرکت ابری بزرگ به من گفت که آنها نرم افزار را توزیع می کنند، بنابراین نیازی به اشتراک گذاری کد منبع ندارند.

چرا آپاچی کافکا ZooKeeper را حذف می کند؟

ده‌ها نمونه از فروشندگان ابری وجود دارد که نسخه‌های خاصی از پروژه‌های منبع باز را برای فروش مجدد در فضای ابری ایجاد می‌کنند. یکی از مشهودترین شکاف ها بین خدمات وب آمازون و سازندگان Elasticsearch بود. وقتی دو طرف نتوانستند به توافق برسند، split، و اکنون دو نسخه موثر از پایگاه کد Elasticsearch وجود دارد.

برخی از حامیان منبع باز با ایجاد مجوزها یا اصلاحیه‌های سخت‌گیرانه‌تر مانند شرایط مشترک، از اشتراک‌گزینه ابری عقب‌نشینی می‌کنند. ممکن است شاهد پیشرفت‌هایی در آینده باشیم، اما به سیستم‌های قدیمی که تحت مجوزهای منبع باز اصلی ارسال می‌شوند کمکی نمی‌کنند.

مشکل منبع باز مشکل تنوع دارد

کلمه community زیاد در حلقه‌های منبع باز پرتاب می‌شود، اما این بدان معنا نیست که فرهنگ منبع باز نوعی Shangri-La است. توسعه دهندگان منبع باز می توانند گروهی پرخاشگر باشند: بی حوصله، حواس پرت، متفکر، و حتی بی شرف. همچنین به خوبی شناخته شده است که منبع باز دارای تنوع است مشکل، و برخی از چهره‌های برجسته به نژادپرستی و تبعیض جنسی. زمانی که افراد با ناشناس بودن نسبی در پروژه های منبع باز مشارکت می کنند، نابرابری ساختاری ممکن است کمتر قابل مشاهده باشد و فقط از طریق ایمیل یا تابلوهای اعلانات ارتباط برقرار کنند. اما گاهی اوقات این ناشناس بودن باعث ایجاد احساس قطع ارتباط می‌شود، که می‌تواند فرآیند مشارکتی را کمتر لذت‌بخش، و کمتر فراگیر کند.

ساخت و نگهداری جامعه به زمان نیاز دارد

بسیاری از شرکت‌های سازمانی نسخه‌های منبع باز محصول خود را به عنوان “نسخه انجمن” منتشر می‌کنند. این یک ابزار بازاریابی عالی و همچنین یک راه خوب برای جمع آوری ایده ها و گاهی اوقات کد برای بهبود محصول است. ساختن یک جامعه واقعی حول آن پروژه، به زمان و منابع نیاز دارد. اگر یک کاربر و مشارکت کننده بالقوه سؤالی را در تابلوی اعلانات انجمن آنلاین ارسال کند، انتظار پاسخ دارند. بله، بسیاری از مشارکت‌ها با روح منبع باز آزادانه انجام می‌شوند، اما پرورش جامعه هنوز زمان می‌برد. هنگامی که به خوبی کار می کند، نتیجه می تواند یک گروه در حال رشد باشد که در حال ایجاد کدهای عالی هستند اما اغلب کارهای زیادی در این راه وجود دارد. یکی از پیامدهای این مبادله این است که پروژه های بزرگتر و سازمانی تمایل دارند بر این حوزه تسلط داشته باشند. آنها می توانند از طریق نقش های پولی که شرکت های کوچکتر نمی توانند آن ها را مدیریت کنند، مدل جامعه را تامین مالی کنند.

گوگل در مورد Gitops جدی می شود

آموزش متن باز به طور شگفت انگیزی نادر است

در خطوط مشابه، بسیاری از توسعه‌دهندگان خوشحال هستند که کد خود را با هر کسی به اشتراک می‌گذارند، اما این بدان معنا نیست که آنها می‌خواهند به دیگران در یادگیری کمک کنند. دادن دسترسی به یک مخزن Git چند دقیقه طول می کشد، اما حمایت از رشد آنها به عنوان یک توسعه دهنده و همکار یک تعهد مهم است. برخی از پروژه‌ها حتی در توافق‌نامه‌های مشارکت‌کننده خود عبارتی را درج می‌کنند که مشارکت‌کنندگان نباید انتظار داشته باشند که در هیئت مدیره یا حمایت شوند یا حتی به سؤالاتشان پاسخ داده شود. در اصل، مشارکت در یک پروژه متن‌باز می‌تواند مانند یک ضربه به انتهای استخر باشد: در اینجا هزاران خط کد و مشکلی وجود دارد که باید آن را حل کنید. نظرات بسیار کمی برای توضیح آنچه در حال وقوع است پیدا خواهید کرد. با تشکر و موفق باشید!

حتی افراد سرسخت هم نیاز به چک حقوق دارند

اکثر توسعه‌دهندگان منبع باز ایده‌آلیست‌هایی هستند که انگیزه شهرت و ثروت ندارند، اما همچنان باید زیر یک سقف بخورند و بخوابند. دنیای واقعی محدودیت های فیزیکی زیادی دارد که با اخلاق اشتراک گذاری رایگان منبع باز سازگار نیست. کمبود ممکن است یک مفهوم بیگانه برای دنیای دیجیتال باشد، اما یک مسئله بسیار واقعی برای اشکال حیات بیولوژیکی است.

متن‌باز برای پشته‌های کوچک و پروژه‌های پرشور به خوبی کار می‌کند، جایی که هیچ‌کس انتظار دریافت پول را ندارد، اما می‌تواند برای پایگاه‌های کد بزرگ‌تر که توسط کدنویس‌های تمام وقت پشتیبانی می‌شوند، مناسب نباشد. اگر تعداد زیادی از کاربران نسخه رایگان را انتخاب کنند، کل پروژه ممکن است دچار مشکل شود.

استفاده از TypeScript با جهش در حال افزایش است - گزارش

هیچ چیز واقعا رایگان نیست

به اندازه کافی با منبع باز معاشرت کنید و احتمالاً با مخفف TANSTAAFL روبرو خواهید شد که مخفف عبارت “هیچ چیزی به عنوان ناهار رایگان وجود ندارد” است. ریچارد استالمن دوست داشت بگوید که می‌خواهد نرم‌افزاری بسازد که «در گفتار آزاد باشد، اما مانند آبجو آزاد نباشد».

پس از اینکه کاربران نرم افزار منبع باز را دانلود کردند و از آن استفاده کردند، شروع به کشف محدودیت های آن خواهند کرد. گاهی اوقات، کد فقط نیاز به اصلاح جزئی دارد. گاهی اوقات، اصلاً ویژگی های مناسبی ندارد. هیچ کس نمی خواهد از نیمه پر لیوان شکایت کند، به خصوص وقتی قیمت آن صفر است. اما پر کردن بقیه لیوان می‌تواند برای توسعه‌دهنده در یک مهلت زمانی سنگین باشد. حتی زمانی که کد رایگان ۹۹ درصد راه را به هدفتان می‌رساند، آن ۱ درصد آخر می‌تواند یک مشکل واقعی باشد.

برخی پروژه ها نباید منبع باز باشند

یکی از توسعه دهندگان یک پایگاه داده به من گفت که هرگز واقعاً به پروژه خود منبع باز فکر نکرده است. مشتریان او چند شرکت بزرگ با مجموعه داده های عظیم بودند. آنها بودجه داشتند و حاضر بودند برای انجام کار به او پول بدهند. اگر مشتری می خواست کد منبع را بخواند، بیشتر از آن مایل بود که به او اجازه دهد آن را داشته باشد. اما او نمی‌خواست مشکل جدا کردن نسخه رسمی و باز پروژه را تحمل کند.

نسخه‌های منبع باز برای کدهایی مناسب هستند که توسط گروه وسیعی از توسعه‌دهندگان استفاده می‌شود که می‌توانند به توسعه کد با هم کمک کنند. با این حال، در برخی موارد، مبادله پول یک راه ساده تر و در نهایت پایدارتر برای سازماندهی کار ساخت نرم افزار است.