Welcome to EMC Consulting Blogs Sign in | Join | Help

Howard van Rooijen's EMC Consulting Blog (2004 - 2010)

This blog has now moved to http://howard.vanrooijen.co.uk/blog - please update your subscriptions if you wish to receive new content.

Continuous Education - what will you learn in the next 12 months?

Last Community Day I did a short presentation to the Conchango .NET Development Community about all the .NET projects that we’re currently working on and some of the Web 2.0 / Windows Vista / .NET Framework 3.0 initiatives we’re involved with; we’re really busy at the moment and I know all of the developers are involved with making their own individual projects succeed, but it’s also important to ensure that they know what’s going on with other projects; what technologies, tools, patterns and practices are being implemented – so that when a particular problem arises with their own project, for example the need to set up and configure a Continuous Integration Server or having a problem breaking down requirements into a Product Backlog, people are aware that projects X,Y & Z have successfully tackled the same problem and will be able to offer advice.

A secondary aim of the presentation was to get the Community to realise that with the Vista wave, we are on the brink of a brave new world of technologies and it’s up to each individual to ensure that they are up-to-speed with what’s going on. I tried to emphasise this in two slides – the first shows my career at Conchango over the last 6 years in terms of the technologies used on the projects I've been involved with (which are named Project01, Project02 etc for client confidentiality reasons):

My Career at Conchango 2000 - 2006

 

There are several interesting trends in this slide – firstly you can see that the projects I’ve been involved with have become more and more sophisticated – early Windows DNA style projects were simple (though non-trivial) n-tier affairs with x-copy style deployments, which then transition into Microsoft Server based projects with more traditional data access , which then transition into .NET 1.0 projects – which is where more advanced engineering practices start to come into play; automated builds (via the Microsoft SDC Build Tools), Unit Testing and Continuous Integration, they also have more complex data access strategies utilising an SOA approach to wrap legacy systems and expose them as web services rather than building new siloed data environments (which seemed to be the trend in DNA type projects). This strategy, could be related to the economic downturn experienced in the first part of this decade and the knock-on effect in shrinking IT budgets, where companies were forced to maximise return on their current infrastructure combined with trend that some companies running legacy systems, based on disparate technologies were attempting to make the transition to a unified development platform based on the .NET ecosystem.

The most recent projects have been the most sophisticated, with fully automated build, test and deployment processes and consolidation of source control, project management and reporting via Team Foundation Server. Also with the transition to the .NET space, came a change in methodological approach – I’ve already talked in detail about “Post-It Driven Development” in a previous post and you can find more information about Agile Software Development and Scrum by using the categories on my blog.

Being a developer on the first project meant having to know 4 separate technologies (ASP, COM+, Sql Server 7 and Data Mirror) but being a developer on my current project means having to know 10, plus being able to work in an Agile way using Scrum (which can be enough of a shock to the system for people who come from a waterfall background).

The second slide shows a list of development oriented Microsoft technologies (Stuart just reminded me that I've missed off all the new Operational Management tools) that are either going to be released in the next 12 months or tools and patterns that are going to enter the mainstream:

Linq, Ruby, Atlas, SharePoint 2007, Agile, Extreme Programming, Windows Communication Foundation, WCF, Model View ViewModel, WinFs, Windows Live!, Software Factories, Visual Studio for Database Professionals, Visual Studio Orcas, Office 2007, Script#, Windows Workflow, MonoRail, Microsoft Expression Tools, TDD, Test Driven Development, Powershell, Windows Presentation Foundation, WPF, C# 3.0, IOC, Commerce Server 2007, Guidance Application Toolkit, SQL Server 2005, SQL Server Everywhere, Team Foundation Server, StructureMap, WinFX, .NET Framework 3.0, Compact Framework, Windows Vista

 

Enterprise Software Development, in the Microsoft world, is becoming more sophisticated and more complicated. This is in no way a bad thing – at last with .NET we have a platform where good Engineering Practices can be more easily integrated into everyday working cycles. I’m a firm believer in Continuous Education, which is why I enjoy being a .NET developer so much – there is always something new to learn and the development community is one of the most vibrant in existence. I’m well aware that within the next 12 months I’m going to have to do a whole lot of new learning – not only am I going to have to grok a new operating system, application suites, tools, patterns, programming languages and frameworks but I’m also going to have to alter the way I develop and interact with my team. With Windows Presentation Foundation the whole development story is going to change – developers are going to need to integrate much more tightly with their Design and User Experience counterparts - hopefully this shouldn't be too much of a problem as on my current project, we are taking the first steps towards a User Stories based approach to help facilitate better cross-functional cohesion - hopefully this will improve after I attend the internal User Stories course Mike Cohn's is running for Conchango in July. 

If you take your career seriously, the next 12 months are very important – some of the technologies being released are brand new and because of that comes the opportunity for any developer to carve out a niche and become a guru in that area – with enough effort you could easily take any particular product space and make it your own – this has happened several times before – the best two examples that I can name are Ingo “.NET Remoting” Rammer and Conchango’s own Jamie “SSIS” Thompson - maybe now is the time to give your career a boost.

Published 23 June 2006 17:00 by howard.vanrooijen
Filed under: , , ,

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

Subscribe to this post's comments using RSS

Comments

 

Rob Caron said:

Howard van Rooijen recently blogged about the need for continuous education in an industry...
July 6, 2006 11:58
 

Andrew Stopford's Weblog said:

Howard has an interesting post on continous education, Rob Caron has a follow up post with a few more
July 7, 2006 11:57
 

TrackBack said:

July 8, 2006 15:35
 

用感情编码 said:

淹没在新技术中
August 4, 2006 01:49
 

Web Dillies said:

As a software developer, you should be aware of that !

May 28, 2007 16:14
 

Howard van Rooijen's Blog said:

While catching up on long overdue flagged post to read - I spotted a familiar meme on becoming a better

March 5, 2008 12:37

Leave a Comment

(required) 
(optional)
(required) 
Submit

This Blog

Syndication

News

This blog has now moved - please visit http://howard.vanrooijen.co.uk/blog for new content!
Add to Live.com
Powered by Community Server (Personal Edition), by Telligent Systems