چرا VSCode استفاده نکنیم؟

در قدرتمند بودن نرم افزار VSCode یا همون Visual Studio Code هیچ شکی نیست. نرم افزاری که عده زیادی ازش استفاده می‌کنن و به لطف متن باز بودن و افزونه‌های قدرتمندی که داره، بسیار مفیده. شما هم اگر برنامه نویس هستید احتمالا ازش استفاده کردین، حتی شاید استفاده کردین و خبر ندارین. اما آیا هر چیزی که در مورد این نرم افزار می‌دونین درسته؟ آیا واقعا باید ازش استفاده کرد؟ و آیا واقعا این نرم افزار آزاد هست؟VSCodeدر جواب این سوالا، احتمالا اولین چیزی که به ذهن میرسه اینه که VSCode با لایسنس MIT عرضه میشه. MIT مورد تایید بنیاد نرم افزار آزاد و گنو هست و خیلی هم خوبه. ولی یک نکته دیگه هست. «محصول VSCode» با «پروژه VSCode» فرق داره! محصول VSCode اون چیزی هست که شما از سایتش دانلود می‌کنین. ولی پروژه VSCode، کد نرم افزار هست که می‌تونین روی گیت هاب بهش دسترسی داشته باشین.حالا فرق این دو تا چیه؟ پروژه VSCode تحت لایسنس MIT موجوده. موقع هر بار توزیع، مایکروسافت کد رو بر میداره، فایل Product.json رو عوض میکنه و خودش اون رو کامپایل میکنه. این باعث میشه یک سری ویژگی‌های خاص مایکروسافت بهش اضافه بشه. مثلا Telemetry که کارش جمع آوری داده از کاربرا هست و علاوه بر کاهش امنیت و حریم خصوصی شما، سبب مواردی مثل استفاده از اینترنت و کند شدن نرم افزار هم میشه. بعد مایکروسافت این نسخه باینری رو تحت عنوان «محصول VSCode» و با لایسنس متن بسته و غیر آزاد خودش روی سایت قرار میده. این لایسنس رو می‌تونین روی سایتش بخونین. این هم دو تا از بخش‌های مهمش هست:The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights.you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not reverse engineer, decompile or disassemble the software, or otherwise attempt to derive the source code for the software except and solely to the extent required by third party licensing terms governing use of certain open source components that may be included in the software; remove, minimize, block or modify any notices of Microsoft or its suppliers in the software; use the software in any way that is against the law; share, publish, rent or lease the software, or provide the software as a stand-alone offering for others to use.خب. همین طور که احتمالا متوجه شدین، این سبب مشکلاتی مثل کاهش امنیت کاربر و کاهش شفافیت کار میشه. حالا چطور می‌تونیم از این جلوگیری کنیم و از VSCode آزاد استفاده کنیم؟برای این کار می‌تونین کد رو از گیت‌هاب دانلود کنین و خودتون کامپایلش کنین. یا این که از یک پروژه کامپایل شده ای که تغییرات مایکروسافت رو توی خودش نداره مثل VSCodium استفاده کنین.VSCodiumخیلی هم خوب. پس تا این جا مشکل حل شد دیگه؟ متاسفانه جواب منفیه. هنوز هم مشکل هست. همون طور که می‌دونین، استفاده از افزونه‌ها یکی از مهم‌ترین قابلیت‌های VSCode هست و این نرم افزار بدون افزونه‌هاش، تقریبا به هیچ دردی نمی‌خوره. مایکروسافت هم از این فرصت استفاده کرده و بهره بردن از بازار افزونه‌ها (Visual Studio Marketplace) رو فقط برای محصول VSCode که خودش عرضه میکنه فراهم کرده.این مشکل هم یه راه حلی داره: استفاده از open-vsx. ولی این خودش به دو تا مشکل دیگه میرسه: یکی این که open-vsx ایران رو تحریم کرده. دوم این که افزونه‌های مایکروسافت روی open-vsx منتشر نمی‌شن. پس این روش هم به درد نمی‌خوره.نتیجه اینه که ما یا باید از VSCode که توسط مایکروسافت ارائه میشه استفاده کنیم. یا باید کلا بریم سراغ یه ادیتور دیگه. و قطعا دل کندن از VSCode برای خیلی ها از جمله من سخته. هر کس باید خودش تصمیم بگیره که قدرت VSCode رو می‌خواد یا امنیت و حریم خصوصی خودش رو. ناگفته نماند که حتی اگه مایکروسافت حریم خصوصی کاربران رو نقض نکنه، باز هم این محصول اختصاصی میتونه سبب بشه مایکروسافت بتونه قدرتش رو پس بگیره. و خب تجربه خیلی خوب نشون داده که قدرتمند شدن مایکروسافت چه ضرر‌هایی میتونه برسونه.من تصمیم گرفتم که از ادیتور‌های واقعا آزاد، مثل VIM و Qt Creator استفاده کنم. امیدورام همه بتونن تصمیم درست رو بگیرن و باعث بشه کسی آسیب نبینه.خیلی ممنون که این مطلب طولانی رو خوندین. لطفا کامنت هم بذارین. بدرود.