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

Techboy

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

راحتی ابری و منبع باز

توسعه دهندگان به دلیل بسیاری از دلایلی که برای اولین بار از منبع باز استقبال کردند، از ابر استقبال کردند. آیا این بدان معناست که منبع باز منسوخ شده است؟

توسعه دهندگان به دلیل بسیاری از دلایلی که برای اولین بار از منبع باز استقبال کردند، از ابر استقبال کردند. آیا این بدان معناست که منبع باز منسوخ شده است؟

در سال ۲۰۱۶ نوشتم که “راحتی ابری پایگاه داده منبع باز را از بین می برد.” این کار را نکرد. درعوض، همانطور که اخیراً اشاره کردم، حتی زمانی که شرکت‌های ابری به دنبال تسهیل مدیریت آن هستند، منبع باز همچنان مرتبط باقی مانده است. با این اوصاف، دلایلی وجود دارد که باور کنیم منبع باز به روشی بسیار متفاوت از آنچه برخی از سرسخت ترین مدافعان آن معتقدند، اهمیت دارد.

راحتی تنها چیزی نیست که توسعه دهندگان به آن اهمیت می دهند، زیرا استفان اوگریدی از RedMonk تاکید کرده است، اما “برای توسعه دهندگان، راحتی بیشتر از سایر ویژگی های فناوری برتر است.” بله، منبع باز در “بیشتر ویژگی های فناوری دیگر” گنجانده شده است.

از دست دادن جنگ راحتی

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

اما این تنها چیز نیست.

این فکر هنگام گوش دادن به تماس درآمد سه ماهه چهارم MongoDB به ذهنم خطور کرد. (افشای اطلاعات: من برای MongoDB کار می کنم.) در انتهای تماس، یک تحلیلگر درباره کاربران انجمن (نسخه رایگان و باز MongoDB) که به مشتریان پولی اطلس (یک کاملاً مدیریت شده) تبدیل می شوند سؤال کرد. سرویس ابری). شرکت  مایکل گوردون، CFO/COO، چیزی گفت که مرا شگفت زده کرد: «خود خدمتی اطلس، چه رایگان و چه پولی، به نوعی نسخه مدرن و امروزی دانلود Community Server و مدیریت آن توسط خودتان است.» /p>

به عبارت دیگر، توسعه‌دهندگان به همان روشی که زمانی نرم‌افزار منبع باز رایگان را دانلود می‌کردند، به سرویس‌های ابری مدیریت‌شده رایگان روی می‌آورند. اما ذکر این نکته ضروری است که اکنون، مانند آن زمان، تمرکز بیشتر این توسعه دهندگان، آزادی نیست – نه به معنایی که بسیاری از طرفداران منبع آزاد و متن باز (FOSS) تصور می کنند. توسعه دهندگان بر آزادی نرم افزار متمرکز نیستند (و هرگز واقعاً چنین نبوده اند). آنها فقط می خواهند راحتی استفاده از نرم افزار را بدون نیاز به تأیید امور مالی، حقوقی و غیره داشته باشند. آنها کارهایی برای انجام دارند و در تلاش هستند تا آن را با کمترین موانع ممکن انجام دهند.

به عبارت دیگر، آنها “رایگان” را مانند “آزادی برای ساختن به راحت ترین روش” می خواهند.

به‌طور فزاینده‌ای، «راحت‌ترین راه» ابر است. به عنوان تیم اوریلی یک بار اشاره کرد، “یک باز عملگرایانه و یک باز ایدئولوژیک وجود دارد. و باز عملی این است که در دسترس است.” معنی؟ “به موقع و به روشی غیر ترجیحی در دسترس است، به طوری که برخی از افراد دسترسی بهتری نسبت به دیگران ندارند.” او ادامه می دهد، “وقتی هزینه به اندازه کافی کم باشد، در واقع بسیاری از شرایط مشابه یک کالای مشترک را ایجاد می کند.”

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

بنابراین، چگونه می‌توانیم راحتی منبع باز را به روشی که توسعه‌دهندگان واقعاً به آن اهمیت می‌دهند به عصر ابر ترجمه کنیم؟

مناسب کردن منبع باز در فضای ابری

یکی از راه هایی که به طور فزاینده ای طنین انداز می شود، تعامل بین منبع باز و چند ابری است. اگرچه قبلاً درباره آن نوشته بودم، این یک مکالمه با کریگ کرستینز، رئیس محصول در Crunchy Data (و یکی از اعضای فعال انجمن PostgreSQL)، که ترکیب منبع باز و چند ابری را برای من کاملا واقعی کرد. .

Kerstiens این استدلال را مطرح می‌کند که برای کارکرد چند ابری، توسعه‌دهندگان باید «با بهترین فناوری‌های کلاس اما باز مانند PostgreSQL، MongoDB یا Redis» بسازند. نکته این نیست که کدام فناوری‌ها، بلکه این ایده است که چنین فناوری‌هایی می‌توانند در تمامی محیط‌های ابری، مرکز داده یا لپ‌تاپ مختلف که یک توسعه‌دهنده می‌خواهد اجرا شود.

حتی نیازی نیست که اینها به خودی خود منبع باز باشند، اما یک توسعه دهنده باید بتواند آنها را در فرمت وانیلی خود اجرا کند تا برنامه را در ابرها قابل حمل کند. توسط vanilla Kerstiens به چیزهایی مانند PostgreSQL اشاره می کند: نسخه ای که می توانید دانلود کنید شبیه به سرویس های PostgreSQL مدیریت شده است اما وفاداری خود را از دست می دهد (زیرا آنها وصله ها و سایر بهبودهای عملکردی را اضافه کرده اند. به PostgreSQL بالادست کمک نکنید).

Kerstiens به من گفت: «افرادی که من می‌بینم که موفقیت‌های [چند ابری] دارند، آن فناوری‌های باز آزمایش‌شده در نبرد را انتخاب می‌کنند و آن‌های وانیلی را انتخاب می‌کنند، نه نسخه‌هایی با سس جادویی ویژه اضافه شده». او تخمین زد که این رویکرد برای بیش از ۹۰ درصد از حجم کاری سازمانی کار خواهد کرد. این بسیار بزرگ است.

یک راه بزرگ دیگر که منبع باز اعمال می شود به این نکته اول مربوط می شود. با توجه به اینکه هر ابری چقدر متفاوت است – حتی در حوزه‌های به اصطلاح کالاهایی مانند ذخیره‌سازی، محاسبات، و غیره – منبع باز نوعی “زبان فرانکا” را ارائه می‌دهد که توسعه‌دهندگان می‌توانند با خود بین ابرها حمل کنند. همانطور که نوشتم، در حالی که ابرها ممکن است در نحوه پیاده سازی PostgreSQL متفاوت باشند، به عنوان مثال، اشتراکات کافی وجود دارد که توسعه دهنده ای که PostgreSQL را می شناسد می تواند با AWS، Google Cloud یا Microsoft Azure سازنده باشد. Kerstiens می‌گوید: «هرچقدر که برای توسعه‌دهندگان دانستن پیچیدگی‌های یک فروشنده ابری خاص مهم باشد، بسیاری از فناوری‌های منبع باز (Kubernetes، Linux، PostgreSQL، و غیره) مهارت‌هایی را به توسعه‌دهندگان می‌دهند که بین ابرها منتقل می‌شوند.

Cloud بسیاری از دلایلی را که توسعه دهندگان برای اولین بار از منبع باز استقبال کردند، کامل می کند. این بدان معنا نیست که ابر منبع باز را منسوخ می کند. حتی نزدیک نیست. اما این بدان معناست که طرفداران FOSS بهتر است به اکثریت ساکت توسعه‌دهندگان توجه کنند که وقت خود را در توییتر تلف نمی‌کنند و در عوض به ابر (و منبع باز) نگاه می‌کنند تا کار واقعی را در ابرها انجام دهند.