I hear ya, gotta have good assembly power and mechanisms. I went for a job interview a while back, I don't remember the CAD system they had, but it was old and busted, not taking that job. I mean it was at a farm shop, but still...
I worked at a company in the early 2000s that was using DOS, I [PooPoo] you not. And get this, they had a 3D modeller (Euclid 3D (not parametric), bonus points if you've ever heard of that!), but you had to shut down DOS and reboot into Windows to use it. So it was just this cluster of 2D and 3D.
Aaannyway
CNC building pitfalls:
Ball screw bind: They bind when misaligned.
Ball screw wobble: This isn't huge but it can make a pattern in a fine 3D surface. Wobble can be from too high a speed (and too long of span) but mostly it seems to be from poorly aligned drives. I have direct solid connectors. Usually I see a rubber or spring type coupler of some sort, but I wanted solid. And that caused some problems, but I was able to move the steppers further away in the axial direction and make a much longer connector. I also had a stepper motor with a slightly bent shaft that was causing a similar wobble with the connector shaft.
Axis balance: in my case I really needed to counter the weight of the head/z axis, it's like 80lbs. I have roller chain going over a pulley to 50lbs of lead on a slide.
Stepper properties: I've had great luck with steppers as opposed to servos, but they have their limits, they dramatically lose torque at high speed. I've gotten the y-axis up to around 400 ipm with some futzing, but I have the limit set around 100 ipm for actual milling. With the 205-in-oz steppers I can barely prevent the table from moving at 100 ipm. Probably over 100 lbs of force.
Wood warps from season to season: If you build a wood CNC expect it to warp during the seasons. I did recently remake the y-axis gantry out of steel tubes. Normally if I'm doing something accurate I check squareness and flatness before and usually take a skim cut on the table for things that need to be flat.
The square you get from the hardware store may not be square: Get a square square.
Lost steps: That is the weak spot for steppers, but when properly set up it's not a problem. I had an issue with the HobbyCNC board where it would go into a "low power mode" and it would lose a few steps upon restarting motion or at unusually slow steps, but that has since been fixed. Normally I don't lose steps, even after 10,000,000 lines of 3D surfacing. I would go with bigger (slower more torque) steppers the next time around, but hey, it was my first CNC build.
Power system isolation: Something to do with grounds loops, that's why a transformer is used instead of a switching power supply. The computer connects to the control board via the Parallel port and in some case, wires melt if you try to use a switching power supply for the stepper power.
Don't use a router for the spindle: My first spindle was a small trim router, crappy bearings, worn out brushes, runout, slow, loud and just plain annoying for doing anything of significance.
One of the "lost pics" from the forum crash, an aluminum upright and my STAMP controlled servo squirter system. I have since put plastic sheets up anytime I use coolant. Oh, I also remade the head in aluminum since then too.
LinuxCNC is open source and available to install (obviously on Linux). Even if you don't have a CNC, you can play around with it.
This is one of my favorite homebuilt CNCs:
http://oneoceankayaks.com/madvac/madvac_index.htm