So what do I say to someone who wants to know how to get started learning CNC programming?
I ask they why do they want to learn CNC programming? Their answer to this question makes all the difference.
If you are a supervisor wanting to learn CNC programming so you can better communicate with your operators / machinists, then what you need to know is different from the hobbyist. If know why you are learning CNC programming, or any other subject for that matter, your ability and motivation to learn is greatly enhanced.
Why knowing why makes it easier and more motivating to learn a subject
Imagine picking up a guitar and deciding you want to learn to play. It gets pretty boring just learning chords, scales and picking styles. Day after day you do your scales and chords but still don’t know a song or a piece. But when you start with a song in mind, you get focused, you learn the chords and scales specific to that song and pretty soon you can play it and enjoy it. In a matter of time you can play it flawlessly. The next song you want to learn is much easier.
It is easier because you have learned a lot more than scales and chords, you have learned a music system that includes, rhythms, strumming or picking all fused together.
Learning CNC programming is much like learning music
When you decide why you are learning CNC programming, you narrow the field to what you need to know. And, what you learn is immediately applicable to your situation. For the supervisor, learning about coordinate systems and the general concepts behind CNC machines, you are far more able to communicate with your operators. The more you know the less likely you are able to be fooled or confused by an operator.
If you are an operator and want to have more control over your machine and your career, you need to learn more than generalities. You need to learn the specifics of the various canned cycles, subroutines, looping, G and M codes. As you develop your understanding of the CNC language, coordinate systems and efficient programming methods, the easier your job becomes.
Learning to program CNC machines is significant step you can take to get off the shop floor and into the CNC programming office.
Where do you begin to learn CNC programming
After you have decided why it is important for you to know CNC programming, there are a lot of resources available to help you. Here are some suggestions:
- Check out the available books like 7 Easy Steps to CNC Programming . . . A Beginner’s Guide
- Check out the available books on CNC programming at http://haydenpub.com/cnc.html
- If you are interested in learning CAD/CAM here are some great online training courses http://haydenpub.com/cadcamonlinetraining.html
- You can also use this coupon code ( RES-10-HAYPB) to get a 10% discount on any CAD/CAM training offered by MyIGetIt.com
So how do you get started learning CNC programming? Do these 5 simple steps:
- Determine a goal or why you want to learn CNC programming
- Knowing why, now determine what you need to know to achieve that goal
- Search the internet, book stores, libraries and school resources for information you need to know
- Study your books with the intention of meeting your goal and measure your progress
- Set new goals and continue learning to expand your knowledge and horizons
Do you have a question about CNC Programming? Simply post your question on this blog, I will do my best to answer the question or point you to a resource that will answer your question.

I don’t usually reply to posts but I will in this case.
my God, i thought you were going to chip in with some decisive insght at the end there, not leave it
with ‘we leave it to you to decide’.
By: viagra fuer die frau on November 4, 2010
at 12:31 am
I recruit a lot of experienced CNC Programmers in the UK and most of them learnt their programming skills during an engineering apprenticeship
By: CNCJobs.Org.UK on March 4, 2011
at 3:47 pm
i work with mazaks setting them up and programming in conversational. i want to learn more about speeds and feeds. currently we just guess on both, but i don’t want to be one of those people. i would like to be able to to calculate the speeds and feeds. i know the calculations are just a starting point. what books or courses do you recommend!
By: jerry on April 24, 2011
at 7:13 pm
Jerry,
I started answering your questions with this posting http://cnctips.wordpress.com/2011/04/25/cutting-speed-calculations/
I will add another posting in a day or so to discuss calculating feed rates.
By: davidhayden on April 25, 2011
at 1:17 am
Hi really cnc programming is not that easy to master, it takes time, I have 17 years experience in cnc programming and cnc machining and I am in love with cnc machine programming still sometimes I have to jerk my minds.. I have a CNC Programming Blog tanvon CNC Blog.
By: tanvon malik on September 8, 2011
at 2:38 am
When I tried to view your blog I got a script error that froze up IE. But from what I can see you have some good CNC information there. Thanks for sharing the link.
I started progamming machines that were NC machines without computers. Controls like the early GE 100S or GE 500 and GE 550 controls. These had no cutter compensation, no canned cycles, etc. One machine did not even have absolute programming and since it was an 8 bit processor, the largest value we could put in was 99999 which equated to 9.9999 inches. The machine was a large 72″ VTL so to move the tool to the center of the machine required incrementally moving
X- 9.9999
X- 9.9999
X- 9.9999
X- 6.0003
Just to get to the center of the table. Keeping track of where the tool was all the time required good concentration.
It was a pretty exciting day when we got our first Fanuc 6 CNC machine.
By: davidhayden on September 8, 2011
at 9:41 am
hi, no doubt cnc machine makes our lives easier in workshops, but now the the time is tough again, there are CAD/CAM software to help us but again we have broaden our boundaries, now people are making such component in very limited time that I just get amazed.
By: tanvon malik on September 21, 2011
at 11:59 am