اوپن سورس (open source) یک اصطلاح است که به نرم افزارهایی اشاره می کند که source code آنها به صورت عمومی در دسترس است و می تواند توسط هر کسی modifyو توزیع شود.
نرم افزارهای open source معمولاً توسط یک جامعه از برنامه نویسان توسعه داده می شوند که در پروژه با هم همکاری و مشارکت می کنند. نرم افزارهای open source لزوماً رایگان نیستند، اما محدودیت های کمتری دارند .
ما بسته به نیازها، ترجیحات، و اهداف خود، دلایل مختلفی برای استفاده از نرم افزارهای open source داریم، مثلا:
می توانیم این نرم افزار ها را مطابق سلیقه یا هدف خود سفارشی سازی کنیم، تغییر دهیم و توزیع کنیم، بدون اینکه licenceها یا فروشندگان ما را محدود کنند.
نرم افزارهای open source همکاری و نوآوری بیشتری را بین توسعه دهندگان و کاربران ترویج میکنند. می توانیم از یکدیگر یاد بگیریم، ایده های خود را به اشتراک بگذاریم، و همزمان به بهبود و گسترش نرم افزار کمک کنیم. و یا اینکه می توانیم source code را بررسی کنیم، باگها را رفع کنیم، و ضعفهای نرم افزار را گزارش کنیم.
همچنین نرم افزارهای open source هزینه و وابستگی به نرم افزارهای انحصاری را کاهش می دهند. می توانیم به این نرم افزار ها دسترسی داشته باشیم، از آن استفاده کنیم، و آن را به صورت رایگان یا با هزینه اندک به اشتراک بگذاریم.
پلتفرمهای موفق بسیاری هستند که به صورت open source توسعه یافته اند. از جمله:
لینوکس:
محبوب ترین سیستم عامل open source، که توسط میلیون ها دستگاه، سرور، و رایانه در سراسر جهان استفاده می شود. لینوکس محصول تلاش جمعی هزاران توسعه دهنده است که برای توسعه و بهبود هسته لینوکس و توزیع های مختلف آن همکاری می کنند.
تنسورفلو:
یک پلتفرم پیشرو open source برای ML و هوش مصنوعی است که توسط گوگل توسعه یافته است. تنسورفلو یک مجموعه جامع از ابزارها و کتابخانهها را برای ساخت، آموزش، و استقرار مدل ها برای مسائل و برنامههای مختلف ارائه می دهد.
جنگو:
یک framework محبوب پایتون برای توسعه وب است که سایتهایی مانند اینستاگرام و موزیلا از آن استفاده میکنند.