Summited my sessions for the Silicon Valley Code Camp 2011

April 18, 2011  |  Blog, Code Camps, Events, Silicon Valley Code Camp  |  Share

After being offline for almost a month due to a bigger backyard project, I finally found the time to work out the sessions, I just summited for the SVCC2011 Oct 8th and 9th at Foothill College. The SVCC is free like the years before and an amazing volunteer powered event organized by Peter Keller. Great job Peter!

The session Clean Code session is now strongly focusing on clean code only. It does not include Code Contracts or supportive VS2010 tools anymore to allow a stronger focus and more time for the main subject.

The Contract-First Development session completely focuses on Microsoft Code Contracts and Pex, giving attendees the time needed to really dive into the advantages of using it.

The session overview on the Silicon Valley Code Camp 2011 website:

Below are the session details with some more links included:

Clean Code – Why writing Clean Code makes us more efficient

Over the lifetime of a product, maintaining the product is actually one – if not the most – expensive area(s) of the overall product costs. Writing clean code can significantly lower these costs. However, writing clean code also makes you more efficient during the initial development time and results in more stable code. You will be presented design patterns and best practices which will make you write better and more easily maintainable code. You will learn how to apply them by using an existing implementation as the starting point of the presentation. Finally, patterns & practices benefits are explained.

This presentation is based on C# and Visual Studio 2010. However, the demonstrated patterns and practice can be applied to every other programming language too.

Contract-First Development with Microsoft Code Contracts and Microsoft Pex

Design by Contract/Programming, or also called Contract-First development with Code Contracts and Pex, is a design/development approach which first defines a contract for class and its methods before implementing it. Since VS2010, by specifying invariants, pre and post conditions for methods with Code Contracts, Microsoft provides the platform support for taking advantage of this programming paradigm. This allows for writing less and cleaner coder, which is easier to read, test, and document.

Pex, like Code Contracts a development out of the Microsoft Research Lab, allows for automatically creating unit tests. By integrating with Code Contracts, many of the needed Unit Tests can be actually generated instead of written manually.

Finally, Code Contracts also integrate tightly with Microsoft Sandcastle, generating more detailed and accurate MSDN style API documentation and utilizing the conditions specified through Code Contracts.

Within this session, I will give an introduction to Contract-First Development, Code Contracts, Pex and Sandcastle, pointing specifically to the advantages while also addressing limitations and risks.

Design by Contract/ Contract-First Development links

Code Contracts links

Pex links

Sandcastle links