Tue 14 Aug 2007
When I got my first computer, a TI-99/4A, I learned to program it by reading Compute! magazine and typing in the sample programs line by line. At first, I had no idea what I was doing, but by the third or fourth program, I had picked up enough that I felt inspired to go to the programming manual. That programming guide, combined with volumes of Compute! samples, formed the basis how I learned to program. Eventually, I studied computer science in college , graduated, got a job, and wound up buying a lot of books along the way because it was the best way to learn at the time. I have a small forest worth of computer books, some of which I knew inside and out and can’t part with to this day, despite how outdated they are. Book learning is good, but not very interactive.
Around 2003, I found something that would change the way I learned programming… Code Project. Over the years, I’ve learned more from Code Project than I ever could have with all of the books on my shelf. It’s also only in the last few years that it’s become that type of deep resource; the volume and sophistication of the submitted articles there is so high that chances are, if you need to program it, someone’s already done it before you and has written an article about it. If I sound like a Code Project fanboy, it’s because I am.
I’m the type of developer who learns best by example. Show me a working piece of code that solves a problem I’m having, then let me take it and reshape it to my needs. For me, this is an extremely powerful way of learning and achieving code reuse. It’s an alternate approach to open source software. Personally, I’ve never been a big fan of open source development. For me, it’s too big of a commitment to involve myself with, and the projects are too big and bulky to serve as ad hoc learning tools. However, open sourced example software is another story. There aren’t very many sample projects at Code Project that are complete applications… that’s not the intent. The purpose is learning, sharing and helping the community.
Had it not been for all of the people who submitted the articles I’ve made use of, I’d still be flooding my bookshelves with those programming guides and reference manuals. Code Project itself is great, but even more important than the site is the incredible community that’s been built there. It’s the community that supplies the articles and discussion, not the web site itself. It’s a concept that I’m resolving to take more seriously, in terms of giving back.
We’ve put several “advertorials” on Code Project advertising our Tools product. However, our latest submission there was the Code Project Browser add-in. It’s something we contributed as a company, not as marketing, but as a way to give something back to a community that’s been very good to us… a community that we like to be participants in. At the same time, it allows us to share some of our knowledge of programming for the Visual Studio environment.
This is from a previous blog post of mine, but I think it’s worth repeating…
Just like a picture is worth a thousand words, a sample project is worth a thousand reference books. If you write something that makes you smile and say “cool”, consider telling the world about it. You’ll make someone’s day who’s out there wondering, “now how the heck am I ever going to do that?”