The laser cutter needs a control system, something that reads in information from a file and converts that into the right number of steps/speeds for each motor and on/off signals for the laser. This area has the largest potential for the project, there are a myriad of different ways the same thing could be achieved each with their own merits. This is not the page for that discussion. This page is purely about the simplest control system for the laser cutter, direct drive from a pc program through the computers parallel port. Discussion of the other control systems can be found here (todo: create link here)
There are two main programs available for this kind of control system LinuxCNC, formely known as EMC2. Linux based, open source, free. Mach 3, a windows based controller, 500 line limit on the free version.
Both programs offer very similar functionality, import a gcode file, output the appropriate bits on the parallel port. Configuration of the I/O based upon your specific machine, jog modes, step through program, visual display of the current operation etc etc...
The DIY laser cutter will use Mach3 as an initial controller. The decision is based entirely upon the fact that we have a PC set up with a full version of Mach3, with appropriate IO break out card and parallel port. Both programs can be a pig to set up on a new machine if they don't want to work correctly, as this controller is a place holder for a better control system we don't intend to waste any time on it.