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

Techboy

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

چرا منبع باز در عصر ابر ضروری است

فن آوری های منبع باز به توسعه دهندگان مهارت های قابل انتقالی می دهد که به فروشندگان کمک می کند تا محصولات مبتنی بر استاندارد بسازند. همه سود می برند.

فن آوری های منبع باز به توسعه دهندگان مهارت های قابل انتقالی می دهد که به فروشندگان کمک می کند تا محصولات مبتنی بر استاندارد بسازند. همه سود می برند.

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

در واقع آنقدر ساده تر است که برخی از افراد، مانند ایوان ویور، یکی از بنیانگذاران FaunaDB، استدلال می کنند که منبع باز ممکن است دیگر لازم نباشد. «مردم علاقه ای به مالکیت کد ندارند. آنها از راه حل ابری راضی هستند،” او یک بار در مصاحبه ای به من گفت.

با وجود این، همانطور که یکی از بنیانگذاران Honeycomb و CTO مهم‌های خیریه استدلال می‌کند، منبع باز در واقع بیش از هر زمان دیگری در عصر ابر مرتبط است. چرا؟ برای شروع، به توسعه دهندگان کمک می کند تا کنترل سرنوشت IT خود را حفظ کنند، حتی اگر آن را به ارائه دهندگان ابری برون سپاری می کنند.

نحوه استفاده از TinyIoC در ASP.NET Core

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

OpenTelemetry (OTel ) در سال ۲۰۱۹ راه اندازی شد تا علاوه بر موارد دیگر، راه های استانداردی را برای انجام ابزار دقیق و ثبت گزارش ارائه دهد. همانطور که ماژور اشاره می‌کند، “OTel استانداردی باز برای تولید، جمع‌آوری و صدور تله متری در یک فروشنده است. – راه آگنوستیک قبل از OTel، هر فروشنده ای کتابخانه های مخصوص به خود را داشت و تغییر (یا امتحان کردن) فروشندگان جدید [واقعاً دشوار] بود.»

اگر فروشنده هستید، ممکن است عالی به نظر برسد. زمانی که مشتری به کتابخانه‌های شما متعهد شد، در آن قفل می‌شد و احتمالاً درآمد آن برای همیشه جریان پیدا می‌کرد. در مقابل، پس از OTel، توسعه‌دهندگان و شرکت‌ها دوباره تحت کنترل هستند. «از آنجایی که می‌توانید بدون ابزارسازی مجدد (!) از فروشنده‌ای به فروشنده دیگر تغییر دهید، این کار فروشندگان را مجبور می‌کند به جای اتکا به قفل کردن، بر اساس شایستگی رقابت کنند،» مجرز می نویسد.

این ارزش برنامه‌نویس است، اما چرا یک فروشنده باید ثبت‌نام کند؟

وقتی در AWS بودم، AWS Distro را برای OpenTelemetry راه‌اندازی کردیم. در بحث چرایی ورود AWS به بازی OTel، آلولیتا شارما و نزار تایروالا توضیح دادند که «پروژه OpenTelemetry… با ارائه «یک مجموعه از باز»، جمع‌آوری و ارسال معیارهای برنامه و ردیابی‌ها به چندین سرویس نظارتی AWS را برای توسعه‌دهندگان آسان‌تر می‌کند. منبع APIها، کتابخانه‌های SDK، و عواملی برای ثبت معیارها و ردیابی‌های توزیع شده از برنامه‌ها.»

مایکروسافت کنترل های رابط کاربری مبتنی بر هوش مصنوعی را برای دات نت معرفی می کند

به عبارت دیگر، اگرچه AWS می‌توانست خدمات مشاهده‌پذیری خود را بسازد، اما بهتر بود که مشتریان استانداردهای صنعتی را بسازند و به آن کمک کنند. به نظر می رسد که آنچه برای مشتریان خوب است می تواند برای فروشندگان نیز بسیار خوب (و ساده تر) باشد، حتی اگر Majors می گوید  مسلماً OTel یک “گام بزرگ به عقب، از نظر قابلیت استفاده” بود.

برای توسعه‌دهندگان و فروشندگانی که شرط‌بندی OTel را انجام می‌دهند، باید این باور وجود داشته باشد که جامعه بزرگ آن این مشکلات را برطرف می‌کند، درست همانطور که با Kubernetes، Linux و موارد دیگر انجام دادند. اما نوآوری در جامعه تنها مزیت منبع باز برای Otel یا به طور کلی برای منبع باز در فضای ابری نیست.

باز کردن خروجی ها و رمپ ها

برای منفعت اولیه، باید به بیانیه Majors برگردیم که «از آنجایی که می‌توانید از فروشنده‌ای به فروشنده‌ای بدون ابزارسازی مجدد (!) تغییر مکان دهید، فروشندگان را مجبور می‌کند تا به جای تکیه بر قفل، بر اساس شایستگی‌ها رقابت کنند. این امر حتی با گسترش فراتر از OTel به پایگاه‌های داده، سیستم‌عامل‌ها و موارد دیگر صادق است. برای مثال، اگر برنامه ای با MySQL بسازید، بین ابرها نسبتاً قابل تعویض است، همانطور که توضیح دادم. بله، تفاوت‌هایی وجود خواهد داشت، اما بسیار کمتر از زمانی که برنامه‌ای را روی SQL Server ساخته باشید و سپس نیاز به اجرای آن در Oracle داشته باشید.

نحوه پیاده سازی احراز هویت در حداقل API ها در ASP.NET Core

نه تنها برنامه نسبتا قابل حمل خواهد بود، بلکه مهارت های توسعه دهنده نیز برای یادگیری آن فناوری سرمایه گذاری می شود. پس جای تعجب نیست که توسعه دهندگان از منبع باز به عنوان راهی برای ارزشمندتر کردن مهارت های خود صحبت می کنند. همانطور که اشاره کردم، “هرچقدر که برای توسعه دهندگان دانستن پیچیدگی های یک فروشنده ابری خاص مهم باشد، بسیاری از فناوری های منبع باز (Kubernetes، Linux، PostgreSQL، و غیره) به توسعه دهندگان مهارت هایی می دهند که انتقال بین ابرها.”

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

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