Austin asks: "As an undergraduate seeking a degree in Computer Science, I am very interested in expanding my programming skills and tools. Much of the platform specific knowledge, such as the usage of unique languages and APIs such as .NET and Cocoa, are rarely taught on an academic level, and independent projects are looking very appealing as a way to broaden my abilities. I find it difficult to maintain motivation developing software that there are already excellent alternatives to, and contributing to mainstream open source projects is an intimidating endeavor due to their size and complexity. What have many Slashdot readers done to gain experience with tools not taught inside the classroom?"
I've never been canoeing before, but I imagine there must be just a few
simple heuristics you have to remember...
Yes, don't fall out, and don't hit rocks.