This document provides information on programming CNC milling machines. It discusses five categories of programming commands and techniques needed to maximize the power of modern CNC milling machines: 1) basic programming commands, 2) compensating offsets, 3) fixed cycles, 4) macro and subroutine programs, and 5) advanced programming features. It also provides details on specific programming codes like G-codes for tool motions and M-codes for miscellaneous functions. Sample programs are provided to demonstrate linear, circular and arc feed moves.