I am not an expert.
Computer programming is about constant learning. I like to think that I'm competent in my field (currently doing .NET programming). But with the depth and breadth of the technologies, it's also very easy to feel lost and inadequate. Still, I keep moving forward and keep learning new things along the way. If I ever get to the point when I've come to the end of another project and I haven't come across some new technique or optimization along the way, then it probably means that it's time to move on to another field.
But I don't see that happening for a while.
My professional programming career began in 2000. I was fortunate enough to have been given access to good training, knowledgeable colleagues, and access to the occasional technical conference. I'm also an avid reader and can usually be found with some 600 page tome in my bag.
So, what's this all about? My goal is to help other programmers take a step up. Together, we will be looking at various topics ranging from general programming techniques (such as common design patterns) to specific technologies (such as WCF and WPF) to application architecture. The focus will be on those elements that have made me more effective as a programmer. But I will also include mistakes that I've made along the way. Many times, basic tenets become clear when you look at the way not to do things.
Be prepared to think. And above all, keep learning.