فرسودگی کاربران از پرداخت هزینه اشتراک نرمافزارها به مسئلهای جدی تبدیل شده است. گروهی از توسعهدهندگان ناراضی با راهاندازی پروژه متنباز OccupySaaS قصد دارند با استفاده از ابزارهای هوش مصنوعی، نسخههای جایگزین سرویسهای نرمافزاری پرکاربرد و گرانقیمت را تولید کنند. شبیهسازی نرمافزار با هوش مصنوعی به یکی از موضوعات داغ دنیای فناوری تبدیل شده است.
فرسودگی کاربران از پرداخت هزینه اشتراک نرمافزارها به مسئلهای جدی تبدیل شده است. گروهی از توسعهدهندگان ناراضی با راهاندازی پروژه متنباز OccupySaaS قصد دارند با استفاده از ابزارهای هوش مصنوعی، نسخههای جایگزین سرویسهای نرمافزاری پرکاربرد و گرانقیمت را تولید کنند.
شبیهسازی نرمافزار با هوش مصنوعی به یکی از موضوعات داغ دنیای فناوری تبدیل شده است. شرکتهای نرمافزاری احتمالاً از تلاش برنامهنویسان برای بازسازی محصولاتشان رضایت ندارند، اما کاربران خسته از مدلهای اشتراکی، افزایش قیمتها و افت کیفیت نرمافزارها از این حرکت استقبال میکنند. توجه گسترده به پروژه ArtCraft که جایگزینی برای محصولات ادوبی محسوب میشود، نمونهای از این روند است. اکنون پروژه OccupySaaS نیز با هدف ایجاد جایگزینهای متنباز برای سرویسهای رایج و با استفاده از ابزارهای هوش مصنوعی وارد میدان شده است.
جایگزینی سرویسهای گرانقیمت با نسخههای متنباز
پروژه OccupySaaS تاکنون توسعه دو جایگزین جدید را برای سرویسهای Auth0 و Salesforce آغاز کرده است. این محصولات بهترتیب ZeroAuthy و SalesCompel نام دارند. از آنجا که سرویسهای اصلی روی سرورهای شرکتهای ارائهدهنده اجرا میشوند، امکان بررسی مستقیم فایلهای اجرایی و مهندسی معکوس آنها وجود ندارد.
به همین دلیل، توسعه نسخههای جایگزین با تکیه بر مستندات عمومی، رابطهای برنامهنویسی کاربردی، رفتار کیتهای توسعه نرمافزار و استانداردهای متنباز انجام میگیرد. هدف نهایی نیز ارائه محصولاتی است که در صورت امکان، بدون نیاز به تغییرات گسترده در سیستمهای موجود، جایگزین سرویسهای اصلی شوند و با رابطهای برنامهنویسی آنها سازگاری داشته باشند.
این پروژه قوانین اخلاقی و فنی مشخصی برای توسعه محصولات خود تعیین کرده است. تمام نرمافزارها باید کاملاً مستقل و با روش موسوم به Clean Room بازسازی شوند. استفاده از کدهای مهندسی معکوسشده، اطلاعات محرمانه از جمله کد منبع شرکتهای محل کار قبلی توسعهدهندگان و همچنین کپیبرداری از عناصر رابط کاربری یا علائم تجاری دیگران ممنوع خواهد بود.
توسعه نرمافزار با این روش هم آسانتر و هم دشوارتر از شیوههای معمول به نظر میرسد. از یک سو، مهمترین معیار این است که نرمافزار جایگزین بتواند ورودیهای کاربران را پردازش کرده و دقیقاً خروجی مشابه محصول اصلی تولید کند. بخش زیادی از این رفتارها نیز در مستندات و مشخصات فنی سرویسها تعریف شدهاند.
با این حال، نرمافزارهای میزبانیشده معمولاً مانند جعبهای سیاه عمل میکنند و بسیاری از رفتارهای داخلی و جزئیات غیرمنتظره آنها بهسادگی قابل شناسایی نیست. درست مانند شبیهسازهای کنسولهای بازی، یک جایگزین واقعی باید حتی خطاهای موجود در رابطهای برنامهنویسی نسخه اصلی را نیز بازتولید کند تا سازگاری کاملی داشته باشد؛ موضوعی که سرویس جیرا نمونهای از پیچیدگیهای آن به شمار میرود.
سرویسهای دیگری که در فهرست جایگزینی قرار دارند
OccupySaaS علاوه بر Auth0 و Salesforce، قصد دارد برای چندین دسته دیگر از نرمافزارهای تجاری نیز جایگزینهای متنباز توسعه دهد. این دستهها شامل مدیریت اسناد و ویکی، پیگیری مشکلات و وظایف، مدیریت قابلیتهای نرمافزاری، نظارت بر عملکرد نرمافزار و سرورها و پشتیبانی مشتریان هستند.
بر اساس پیشبینیها، سرویسهای هدف در این بخشها احتمالاً شامل موارد زیر خواهند بود:
- کانفلوئنس (Confluence) برای مدیریت اسناد و ویکی
- جیرا (Jira) برای پیگیری مشکلات و مدیریت وظایف
- لانچدارکلی (LaunchDarkly) برای مدیریت قابلیتهای نرمافزاری
- دیتاداگ (Datadog) برای نظارت بر عملکرد سیستمها
- زندسک (Zendesk) برای پشتیبانی مشتریان
زبان برنامهنویسی انتخابشده برای این پروژه Go است. توسعهدهندگان بهجای Rust سراغ Go رفتهاند، زیرا این زبان امکان کامپایل و پیوند تمام وابستگیهای نرمافزار در قالب یک فایل اجرایی واحد را فراهم میکند. چنین فایلی به نصبکننده جداگانه نیاز ندارد و کاربران میتوانند آن را مستقیماً روی سیستم مقصد کپی و اجرا کنند. به گفته تیم OccupySaaS، این ویژگی برای بستهبندی نرمافزار در کانتینرهای داکر و همچنین میزبانی مستقل روی سرورهای شخصی یا سازمانی بسیار مناسب خواهد بود.
برخی ممکن است معتقد باشند دلیل اصلی استفاده از نرمافزارهای SaaS این است که کاربران مجبور نیستند مسئولیت مشکلات کدنویسی، زیرساخت و نگهداری سرویس را بر عهده بگیرند. از این منظر، اجرای نسخه اختصاصی نرمافزار روی سرور شخصی میتواند رویکردی غیرضروری و حتی عقبگرد به نظر برسد.
با این حال، مجوز Apache 2.0 که برای نرمافزارهای این پروژه در نظر گرفته شده، مانعی برای ارائه خدمات تجاری توسط شرکتهای دیگر ایجاد نمیکند. نمونههای موفق چنین مدلی را میتوان در محصولاتی مانند ردهت انترپرایز لینوکس، گیتلب و وردپرس مشاهده کرد؛ پلتفرمهایی که امکان ارائه خدمات پشتیبانی و میزبانی توسط شرکتهای مختلف را فراهم میآورند.
به نظر میرسد ایده اصلی OccupySaaS متعلق به توماس میدوز، مهندس نرمافزار با حدود ۲۰ سال سابقه فعالیت در این حوزه، باشد. او در وبسایت شخصی خود مدیریت پروژه را یکی از مهمترین مهارتهایش معرفی کرده است؛ مهارتی که در دوران هدایت عاملهای هوش مصنوعی برای دستیابی به اهداف مشخص، اهمیت بیشتری پیدا میکند.
وبسایت این پروژه لحنی شبیه به یک بیانیه اعتراضی دارد و در آن به این موضوع اشاره شده که دریافت هزینه اشتراک برای هر کاربر، مانعی در مسیر رشد کسبوکارها ایجاد میکند. همچنین به تناقضی در صنعت نرمافزار اشاره شده است؛ جایی که افرادی که محصولات نرمافزاری را ساختهاند، اکنون با خطر اخراج از شرکتهای خود مواجه هستند.
تیم OccupySaaS در بیانیه خود گفت:
نرمافزاری که توسط ۹۹ درصد مردم ساخته شده، باید متعلق به همان ۹۹ درصد باشد.
