Computer programming involves writing instructions for a computer in a particular programming language. It is done by writing source code which is then translated by compilers, interpreters or assemblers into object code that computers can understand. There are many programming languages at different levels, with high-level languages being easier for humans but slower for computers compared to machine-level languages. Popular high-level languages include Java, Python and C++, which allow programmers to focus on solving problems without worrying about the specific computer hardware.