I will be speaking at Microsoft Developer Days 2004 back in Pittsburgh on March 9th. It looks to be a very exciting event with a strong emphasis on security. I will be presenting “Threats and Threat Modeling – Understanding Web Application Threats and Vulnerabilities” on the Web Development Track.
There will be great speakers from the local area and an opportunity to get the latest message from Microsoft as well interact with developers in your community. Maybe we can even get in a plug for the Pittsburgh .NET User Group?
Last night I presented on the above topic at the Pittsburgh .NET User Group.I had been having trouble in my preparation trying to figure out the best way to not only explain the concepts but to win over the audience to the TDD process. Looking at the two wonderful books (Beck, Astels) available on TDD made me realise something – they both explain by example! The more I thought about it, I realised that this was the XP/TDD way – “pair with the new guy“.
But how do you pair with 50 people? We did! In about 40 mins (during a 2 hour session), we created the projects from scratch in VS.NET and worked on a fictitious TODO list adding features TDD-style. People got involved – yelled out questions, helped find compile areas, questioned the small steps :-), questioned the “fake it“ implementations and so on.
Did it work? I had several people come up to me afterwards saying they had dabbled with TDD before but had never really got it but the practical exercise had shown them the light. Quite a few people even mentioned that they would like to continue working on the TODO list again to see how it evolves.
My slides and code sampleswill be available online soon!
What are your experiences in converting people to TDD?
Jason Beres spoke at the Pittsburgh .NET User Group tonight on Remoting in .NET. It was fascinating to see how easy it is to setup a Remoting client and Server using configuration files. This was so much easier than my previous dabblings with Remoting which involved lots of custom SOAP wrapper editing.