В узком смысле под программированием (или кодированием) понимается написание программ (инструкций для компьютера) на определенном языке программирования по созданному алгоритму. Обычно, они имеют понятный для человека синтаксис. Люди, которые занимаются программированием, называются программистами (кодировщиками или просто «кодерами»), а те, кто создает алгоритмы, алгоритмистами. В широком смысле под программированием следует понимать весь спектр деятельности, который связан с созданием, а также поддержанием в работоспособном состоянии программных продуктов (ПО ЭВМ). Наиболее точным является современный термин — «инженерия программного обеспечения» (или просто «программная инженерия»). Специалисты данной области занимаются постановками задач, проектирование программ, построением алгоритмов, написанием текста программы, тестированием, отладкой, документированием и сопровождением.Любое программирование компьютеров основано на использовании языков программирования. Для запуска программы на ЭВМ необходимо использовать трансляторы, которые переведут понятный человеку язык (написанную программу) в язык машинных команд. Трансляторов существует два вида – интерпретаторы и компиляторы. Основное отличие между ними заключается в том, что первый сразу выполняет программу, а второй просто переводит ее в язык машинных команд, без последующего ее выполнения. Для выполнения программы ее сначала нужно откомпилировать или интерпретировать. Раньше необходимо было писать программы, а затем отдельно их компилировать, что усложняло процесс тестирования и отладки. В настоящее время существуют различные интегрированные средства разработки Integrated Development Environment. IDE включают в себя редакторы для редактирования и ввода текстов программ и различные трансляторы с разных языков. Кроме этого, могут включать различные другие подпрограммы, облегчающие процесс создания, тестирования и сопровождения программных продуктов.