ميت برامج الحاسوب بهذا الاسم لتمييزها عن مكونات جهاز الحاسوب"الهارد وير" التي تشمل الوصلات والأجهزة المادية اللازمة لتخزين وتشغيل البرامج. وعلى المستوى الأدنى، يشمل مصطلح السوفت وير لغات البرمجة الخاصة بجهاز الحاسب أو ما يُعرف باسم لفة الآلة (Machine Language) والتي تتعامل مع معالج (أو بروسيسور) واحد. وتتكون اللغة البرمجية الخاصة بجهاز الحاسب من مجموعات من القيم الثنائية التي تعبر عن تعليمات المعالج والتي تغير حالة الحاسب عن حالته السابقة.
* "السوفت وير" عبارة عن سلسلة مرتبة من التعليمات لتغيير حالة "الهارد وير" بتسلسل معين. وعادةً ما تكون هذه التعليمات مكتوبة بلغة برمجة عالية المستوى يمكن للإنسان التعامل معها بسهولة وكفاءة (وهي أقرب إلى لغة البشر الطبيعية) من اللغة البرمجية التي يفهمها جهاز الحاسب لغة الآلة (Machine Language).
ويتم تحويل جميع الجمل البرمجية المكتوبة بلغات برمجة عالية المستوى وتنفيذها جملة جملة باستخدام المفسر (Interpreter)أو تنفيذها دفعة واحدة باستخدام المترجم Compiler. والشفرة الناتجة من هذا التحويل يُطلق عليها لغة الآلة Machine Language أو شفرة الهذف Object Code. يمكن أيضًا كتابة البرامج باستخدام لغة الأسيمبلي( Assembly)- وهي - عبارة عن ترميز للغة البرمجية التي يفهمها الحاسب باستخدام الأحرف الهجائية الإنجليزية. هذا ويجب تحويل لغة Assembly إلى اللغة البرمجية التي يفهمها الحاسب باستخدام أداة Assembler .
أول من استخدم مصطلح "سوفت وير" بهذا المعنى "جون وايلدر توكي" في عام 1958.[4] إن النظرية التي تعتبر الأساس لمعظم برامج الحاسب الحديثة قدمها لأول مرة "آلان تورينج" في مقاله الذي تم نشره عام 1935 Computable numbers with an application to the Entscheidungsproblem . "مايك هالي" 2005.