IoC.AddComponent<IBloggingStrategy, CodeBetterBloggingStrategy>();

public class BlogIntro {
  public BlogIntro(IBloggingStrategy blogger) {
    blogger.Post(“Hello CodeBetter”);
  }
}

Hello CodeBetter!

Hi guys, I am excited to be joining the CodeBetter community. Rather than bore everyone with a lot of history, I’ll give a quick intro. I am the product planner for the client program in patterns & practices at Microsoft (apparently the first MSFTie to join the blogging ranks here). You probably heard of some of our deliverables like CAB, SCSF, WCSF, and Mobile Client. As product planner I define the roadmap for the client program and work with the engineering team to provide them the vision for what we deliver. We’re an agile team (XP/Scrum) and I am the customer proxy. That puts a big weight on my shoulders, so to relieve it I do my best to connect with as many customers as possible.

I’ve been at Microsoft for about two years in different planning roles. In years prior, I worked professionally as an Architect / Lead Dev / Dev for about 10 years mostly on the Microsoft platform, but with a short stint in the Java / Linux world. Outside of a professional capacity, I have been coding practically since I could ride a bike. I spent several years working with various OS offerings like NUnit, NANT, NVelocity, etc. I missed the whole NHibernate / Castle wave (until recently), though I did lead a team that built Yet Another ORM Framework (before NHibernate was released). Needless to say, that experience changed my view of inheritance based frameworks and I no longer think of them as “all that”.

So why code better? About 7 years ago I got really serious about my coding. I let go of all my old VB inspired see how fast I can hack something together and started really looking at Software Development as a craft. My first stop was learning about design patterns, my next stop was getting in to refactoring to those patterns (and refactoring in general), and my third stop was agile development. Since then, I have constantly been a quest to “code better”. In the last year one of the places that has really helped in that quest is CodeBetter.com. Blogs that I have frequented here are those of Jeremy Miller, David Hayden and Jeffrey Palermo as well as the infamous Mr Scott Bellware.  The other place that has helped greatly has been working with my team at patterns & practices. At p&p, I am learning new techniques each day and constantly being reminded just how much I don’t know. We’re perpetually seeking to improve, reevaluating how we develop, refactoring our code and refactoring our techniques.

I am hoping to use this blog to share our team experiences as we continue our journey. This does not mean I’ll be using this blog specifically to promote p&p deliverables, I won’t as my other blog is for that. I’ll also probably share some of my own personal experiences as I explore different tools and OS offerings like Castle, StructureMap, RhinoMocks, etc as well as delve into approaches to Software Development like BDD, DDD, etc. I have a personal goal to learn Ruby this year and to build something of meaning to benefit developers. It’s quite likely that I’ll blog about some of those adventures as well. I’ll also (based on prodding from Oren) probably share a few of the pains I’ve experienced along the way throughout my twelve years as a professional software developer.

Let me know if there’s anything in particular you’d like me to talk about on this blog. I value your feedback so please don’t hesitate to share your thoughts (as long as it’s in a constructive fashion)

Thanks for inviting me!

This entry was posted in blogging. Bookmark the permalink. Follow any comments here with the RSS feed for this post.
  • http://www.codebetter.com/blogs/glenn.block/ Glenn Block

    @Derek, ok the gig is up, Ayende is authoring the new DIAB :)

  • http://codebetter.com/blogs/glenn.block Glenn Block

    @David, @Derek, @Patrick….thanks!

  • http://www.NDepend.com Patrick Smacchia

    Welcome Glenn!
    Great to see you here!

  • http://ctrl-shift-b.blogspot.com Derek Greer

    Does your intro give us a glemse into what the next-gen P&P IoC container API will look like? :)

    Look forward to reading your new blog..

  • David Christiansen

    Great to see you on CodeBetter.com Glenn… Talk soon.

  • http://www.codebetter.com/blogs/glenn.block/ Glenn Block

    @karl

    I’ll definately try to do some posts about the proxy role, I also planned on doing a bunch of posts about what it means to be a product planner, etc.

    Thanks

  • http://www.codebetter.com/blogs/glenn.block/ Glenn Block

    Thanks everyone for the great welcome.

  • Brendan Tompkins

    Welcome! This is going to be good!

  • http://thebeelog.com/ Dave Laribee

    Welcome Glenn!

  • http://codebetter.com/blogs/jeremy.miller Jeremy D. Miller

    Welcome aboard Glenn. Glad to have you here.

  • http://www.bluespire.com/blogs Rob

    Glenn, Glad to see you’ll be blogging here. I look forward to hearing a lot more from you in the future. It’s great to know that someone on the p&p team has the variety of experience you do. Looking forward to meeting you in a couple of weeks and watch my blog for a major announcement I think you’ll be interested in very soon :)

  • karl

    Welcome aboard. Looking forward to reading more.

    Maybe down the road, you might spare a couple blog posts on being a client/client proxy in an agile world – it would be interesting (to me at least).

    A lot of developers still come at it from a contract negotiation point of view – which, in my experience, minimizes the importance of the client (to be fair, in the majority of cases, the client minimizes his own important/accountability). Maybe you can start a series called “How to be a Client for a software project”

    I’m smelling a book collaboration :)