Thursday, August 27, 2009

This Just In: Developers Value Passion And Fundamentals!

I just received my MSDN Flash newsletter in my inbox and noticed the results of last week’s poll. The question was “what is the most important trait of a programmer fresh out of college” and I was pleasantly surprised by the results!




I would like to think that these are traits that are valued in programmers of all skill levels. One could also argue that if you combine the top two results, then programmers that have a passion for continuously learning about fundamentals are the most valued programmers of all! If you agree, then I have fantastic news for you because a new track has been added to TechDays in Vancouver and Toronto!


I will be presenting Test-Driven Development Techniques in the Developer Fundamentals track and I will also be presenting about…wait…ummm…something really cool and worthwhile in the newly announced Developer Foundations track. More info on that one when the MS legal department stamps their approval.

Friday, August 7, 2009

New Developer Foundations Track at TechDays Vancouver!

It has been a crazy couple of weeks since my last post about the lack of fundamentals at TechDays.  Shortly after, John Bristowe (Developer Evangelist for Western Canada) contacted me about presenting the TDD session at TechDays in Vancouver.  After some back-and-forth, I decided that what better way to influence the material at TechDays than to present it myself, so I agreed and will be presenting.

In the meantime, we also announced the evening sessions presented by ALT.NET Vancouver.  We’ll be hosting a keynote speaker and a series of lightning talks in the evening of Sept 14th, followed by an evening of open spaces on the evening of Sept 15th.  This will be a great opportunity for you to bring up any topics that you would like to have covered that were missing from the main conference.

Also, earlier this week Justice Gray contacted me about what I thought was missing from TechDays and what sessions I would add if given the chance.  This was right around the time that he was hinting that there might be something in the works, but I couldn’t have guessed that he had actually managed to get a new track added to TechDays Vancouver!  That’s right, TechDays Vancouver (and Toronto) will now have a Developer Foundations track that will be expanded to all TechDays in the future if it is successful, and who is going to doubt that?

It’s awesome to see that Microsoft listened to the community and added this track.  A big thank you goes out to the TechDays people, Justice and Peter Ritchie for making this happen!

Thursday, July 23, 2009

Software Development Fundamentals at TechDays 2009

A conversation on the lack of fundamentals being covered at TechDays has been going on in the blog-o-sphere.  It started with Justice Gray expressing his concern, to which Joey Devilla replied, and then Peter Ritchie got in on the act too.

Fundamentals are sorely lacking in much of the Microsoft development community, and yes, it would be awesome if Microsoft embraced this and flooded TechDays with sessions about SOLID, TDD, design patterns and lots of other technology-agnostic goodness.  I totally agree with Peter that this would ultimately be good for Microsoft’s bottom-line, but I just don’t see this happening anytime soon.

We’ve all seen the Microsoft demo where the presenter opens up a designer, drags a few things around, presses F5 and then proudly proclaims that “I did it all without writing a single line of code!”  Come on people, we’re DEVELOPERS!  Writing code is what we do!  If it were really that easy then why did I bother going to university to get a Computer Science degree?  Why do I read books and blog to keep learning?  Why do I still think that development is really tough?

When we adhere to the fundamentals of software development we end up with higher quality code with a lower overall cost of ownership.  But here’s the catch, fundamentals are hard!  Microsoft is a platform/tools vendor and they have every right to market their products at events like TechDays, but none of those products will make me a better developer as much as a solid understanding of software development fundamentals will.  If Microsoft continues to market their products without a healthy dose of software development fundamentals, the community needs to pick up the slack.

Let’s keep calling out Microsoft when they focus too much on the tools.  Let’s keep writing blogs to promote what we believe is important.  And let’s reach out to those attending TechDays with our own message.  Will there be an opportunity for TechDays attendees in Vancouver to learn about SOLID and other fundamentals?

Dddddddddddddefinitely!!!

It just might not be during the hours of the TechDays event.  Stay tuned for more…

Monday, June 15, 2009

ALT.NET Canada 2009

Last weekend after DevTeach in Vancouver we had the ALT.NET Canada open spaces event.  It was a good idea to have it right after DevTeach because that meant several speakers stuck around for an extra two days of good conversation.

This was my second ALT.NET open spaces event and both have had a heavy dose of Domain-Driven Design sessions.  There was one very interesting session title “Non-Relational Databases” which was an awesome discussion about the practical uses of products like CouchDB, BigTable and db4o.

The last session of the event was convened by Greg Young in which he proposed making ALT.NET Canada into a formal entity with a mandate to promote ALT.NET principles and practices within the Canadian .NET development community.  A discussion also got going about starting up an ALT.NET user group in Vancouver.  More on those to come later.

It was an exhausting week with both DevTeach and ALT.NET Canada, but well worth the lack of sleep.  Can’t wait to do it again soon!

DevTeach Vancouver 2009

Last week I attended my second DevTeach and ALT.NET Canada conference and it got me fired up enough to finally start blogging.  I first set up my blog account over a year ago and wrote three posts that I never ended up publishing.  So now I am officially entering the blog-o-sphere and am excited to share my journey as a software developer.

DevTeach was awesome as usual, even though the economy took its toll and significantly reduced the number of attendees.  On the up side, I did find that the sessions I enjoy the most are often the ones with only a dozen people in the room and the session turns into a big discussion rather than just a speaker talking at the front.

Greg Young’s “Unleash Your Domain” was one of those sessions.  Even though it was the fourth time that I have seen this talk, I still enjoy the conversations that come up and hearing how Greg is fine tuning his technique.

Ayende’s “ORM += 2” session (basically advanced NHibernate) gave me tons of new ideas how I can get even more out of NHibernate.  I had rolled my own natural IDs which I can now throw away and I love the idea on future queries.  More on those features to come later.  I have been using NHibernate for nearly 3 years and am still amazed at the power I can get out of it.

David Laribee’s “Behavior-Driven Development Installed” session has me back trying BDD style tests.  I had previously abandoned them because they made the use of test doubles (mocks, stubs, etc) very cumbersome, but with the AAA syntax of RhinoMocks that problem has gone away.  Also more to come on this later.

The DevTeach sessions are awesome, but the truly best part is that the speakers don’t just hang out in the speakers lounge with each other.  I had several conversions about a whole range of topics over lunch, in the hall, or in the bar afterwards.  This kind of accessibility is what sets DevTeach apart from most larger conferences.  All in all it was a fantastic 3 days and I can’t wait until the next DevTeach.