The phase in which the programmer encodes the algorithm in a specific programming language, which includes all details necessary to compile and execute the program.