I thought I'd share what worked for me in passing the CW exam. I've shared it in a couple of other forums and thought it might be helpful to post here. Hope someone here finds it useful. This is not the only way, nor perhaps the best way, but it worked for me. I've since passed the General exam as well.
First and foremost you should go into this with a positive outlook. CW is no different from anything else you try to learn for the first time. If you're not interested in it you'll have a much harder time. If you approach your study times positively and tell yourself you *can* do it, you won't create mental barriers that prevent you from rapidly learning the code. Don't psych yourself out before you start. Who knows? You might just find that you like it. That's what happened to me.
There are numerous methods out there and a plethora of code tapes, practice sites, etc. One of the key things to stress is don't learn dots and dashes. Learn the sounds. Don't build a lookup table in your head that says dot-dash is A. You need to get to the point that you just recognize the sounds and know without thinking about it what the character is that you just heard.
In my experience, the preferred method is the Koch method with Farnsworth spacing. I'll let you research these if you want to know more in depth info. The short description is that Koch teaches that you learn at the speed you want to work at rather than starting slow and building your speed as you go. The Farnsworth method sends the code at the faster speed but uses character/word spacing to reduce the effective rate. It's my understanding that the code exam is supposed to be 15 wpm Farnsworth at 5 wpm effective. Personally it seemed slower to me than that.
There are a handful of free software tools and websites that I used to learn the code and I'll explain how and why I used each in this next section.
G4 is the very first CW-related package I downloaded and tried. I loved it from the beginning due to its flexibility and the recent release is even better. G4 is also called the Koch Method CW Trainer. It's capable of sending 15-80 wpm (actual) and 1-15 wpm (effective). You also have great control over such things as introducing noise, QRM, dither, signal strength, etc.
With the Koch method, you start learning two characters. Once you learn those you add a new character. This process continues until you learn all of the characters at the desired speed. In the latest release you can play text files, words (200 common words as well as call signs are provided). You can also play a text file and have it record the associated code for you to listen to later.
This is what I used when I first started and was handcopying to a notebook. Just turn up the volume and start listening to the code. Don't get used to using headphones because you probably won't be able to use them when you take the actual exam. One problem I had was checking my accuracy. It became tedious going through my handcopy to compare it with what G4 said it sent and then figuring out the overall accuracy. There's a tool someone wrote for G4 that'll let you type in the text you copied and it'll compare it against what was sent, but I wanted a better way.
Just Learn Morse Code
After kicking things of with G4, I stepped things up with JLMC. Not only did I have many of the same options as before, I also had immediate feedback about my accuracy. Without having to do any checking or calculating on my own, JLMC told me not only my overall accuracy, but also my per character accuracy. I knew as soon as I was finished what characters I needed to work on and which I had a firm grasp of. I found myself using G4 and JLMC in conjunction and they complimented each other well.
Once you have a good grasp of the characters it's time to start generating random text messages, sample call signs, and eventually full QSOs. This website is a great tool for doing this. Just like the tools already mentioned, AA9PW will create audio files for you to listen to along with the text spelling out the contents so you can ensure you're copying things correctly. You can really mix things up as far as what you study so there's a good bit of flexibility. I'd definitely recommend creating a lot of call signs files since you know those will be on the test w/o a doubt.
The QSOs generated here are not quite what you'll get for the real test. These are about twice as long at roughly 10 min. The actual test consists of a 1 min practice session followed by a 5 min QSO. Regardless, they give you great practice in copying code that you will really here in the exam.
One thing I would caution against is getting too complacent with the QSOs. They tend to send the information in roughly the same portion of the QSO and it's easy to find yourself anticipating what's coming next and getting thrown off if you're wrong. This is when I recommend using a very cool feature of the site: RSS feeds. There are numerous sites that can be used to create CW audio files for based on current news. Once you're copying the QSOs well you can use this feature to ensure you can copy regardless of what information is being sent. You won't be thinking ahead since you won't have any idea what the headlines are.
This last tool was the perfect end to my CW study. CW Com is basically an Internet chat tool that utilizes CW instead of text. You connect to a CW Com server along with everyone else and pick a channel to talk on. There's a website that shows who's connected so you can pick an active channel or you can pick one at random. I would often pick an empty channel so I could practice sending code. This was great for reinforcing what I was learning with the other tools. My method was to pull up a news site and practice sending the headlines.
Well, one day after I was done practicing my computer started beeping at me and I found myself in a real QSO. Immediately after that I was in another. It was terrifying yet exciting at the same time. I struggled and I had to pause on occasion to come up with the right code to send, but I survived and have exchanged QSL cards with both contacts. Everyone I have talked to so far has been very understanding that I'm new and still learning. If you really want to reinforce what you know and you've covered all of the characters already, get online and start talking to real people. Trust me, it's a great exercise and you'll meet some cool people. One benefit is that the software will translate the code that it receives so if you miss something while you're copying you can look at it to see what was sent. This isn't foolproof as the software will sometimes misinterpret but it works fairly well.
If you can, find someone else working on the code and practice communicating with each other via CW Com. I know of at least a few folks here that would be willing to join you online to practice. I've had the chance to meet folks from Canada, France, Denmark, Ireland, and England as well as guys here in the States. I really never thought I'd get into the code but talking to real people encouraged me to get better and work harder. It made it enjoyable and now I look forward to meeting new people around the world.
While you can use your keyboard (down arrow) to control sending, I'd recommend buying a decent straight key. I picked up a cheap MFJ key for $15 and connected it to my serial port. It's not the greatest key but it works. I'm ready to upgrade.
What to expect for the test
As I already mentioned, you will have a 1 min practice session which is to help you get ready and more importantly to ensure the volume is ok. When you're ready, the VE will start the real test and you'll have about 5 min of code.
FCC rules require that all 26 characters of the alphabet, all numbers 0-9, and at least four punctuation marks be sent. While you're copying, make an underline to mark any character you miss. At the end of the test fill in as many blanks as you can by discerning the missing letters. Be careful not to make any extraneous marks on your exam sheet or your VEs might have a fit. Apparently the ARRL/FCC frown on that when they send in your paperwork. See which characters you haven't used and use those to help fill in the blanks.
There are two ways to pass the exam: correctly answer 7 of 10 questions based on the QSO or have 1 min (25 chars) of solid copy. Be aware of how a normal CW QSO goes. The call signs of the sender and receiver will be at the beginning and the end. The test will generally consist of questions about locations, weather, rig, antenna, RST, job, and names. If you know the various radio mfgrs, antenna types, etc. this can help you fill in the blanks as well. For example, if you copy _ _ E S U it's pretty easy to fill in the Y A.
Whatever you do, don't let yourself get flustered. Even if you don't answer all of the questions right, if you maintain your composure and keep copying, you can still pass. Characters are worth 1 point and numbers/punctuation are worth 2. Here's something I learned after the exam: this includes complete words, not partial. For example, let's say you were copying and recorded: YAESU FT8_7D = ANT HR IS DIPOLE You missed a character in the rig type so even though you got the 7D correct, since the entire word isn't correct, you can't include those characters and have to start counting again at the ANT word giving you 13 characters for that phrase.
Well, I guess this has been a lot to read, but I had a lot to say. I really hope that someone finds it useful. I wouldn't have bothered with this if I hadn't come to really enjoy the code side. I know a lot of people are waiting for the day the code requirement is dropped, but I think you'll be missing out if you don't at least give it a chance.
Best of luck to you and if you find this helpful I'd love to know. Especially after you pass your exam!
--. --- --- -.. / .-.. ..- -.-. -.- .-.-.-