<p>Even though it's true that you don't need a class necessarily, it would be equivalent to saying the same for like Biology self-study. Of course you can study on your own and pull of a 5, but you won't get lab experience, and that is a big part of Biology that you will be missing out on! I'd have to disagree with randomperson. The test questions aren't so straightforward if you don't practice on what your code does. For all we know, randomperson could have guessed his way, and randomly put something for the free response that was just decent, and popped out a 5. I'm not saying he did...but the more practice you have with actual programming (a class would add structure to your learning) in real life, the more beneficial. You can realize why your program doesn't work, learn from your mistake, and move on.</p>