Enter every challenge that has at least 10 upvotes even if you are weeks or months late, and even if your solution isn't so great. (You don't have to actually post it unless you want to, but get each one working...)
We will be watching.
Update: This question is in the most-viewed and highest-voted lists. This answer is in the most-commented list.
Laura has already entered her first challenge, so at least it is leading to practice.
Code-golf on stackoverflow may be a bit different than elsewhere
The c-g scene is a bit deeper than it sounds, especially as it relates to SO.
Yes, there are some "true Perl c-g" entries. But most entries are not Perl. I enter in Ruby usually; most people enter in the language they are currently most interested in, and the objective is not as simple as just beating Perl. (Though I do keep trying.)
C-g has zillions of benefits; the character-crunching thing is an entirely optional part of the activity.
In fact, often most of the entries are uncompressed, and they are in Java and C# and other languages that have no chance of winning. So why is that? It's because c-g is more than a golf-scoring contest. We get at least as many entries from people who are learning or showing off their favorite language than we do from people who are writing crunched Perl. And that's great.
Obviously, no educational opportunity will be perfect. One is unlikely to be building binary trees or hash tables, but it does seem like C-G on SO is worth it for many people.