3 DAY CONFERENCE

Progressive .NET Tutorials

Topics covered:

Monday, 11th - Wednesday, 13th May at Old Sessions House, London

8 experts. will be speaking. Starts at 9:00 AM.

The Progressive .NET Tutorials will feature 16 intensive .NET Tutorials on various modern .NET technologies that increase programmer productivity and help us do our work better. All tutorials are very much hands-on, so be sure to bring your laptop if you are coming!

Thanks to our sponsors

Writing Internal DSLs in C#

Ian Cooper introduces the ideas behind Internal DSLs and shows how C# 3.5 helps to write them. Get a grounding in the elements of writing a fluent interface such as expression builders and method chaining, as well as looking at how lambda expressions help us do parse tree manipulation.

Ian started his talk with a brief introduction to main reasons behind need for internal domain specific language . He continued his presentation with further elaboration with fluent interfaces such as expression builders and method chaining, he also showed how lambda expressions assist to do parse tree manipulation. He touched areas on DSLs in C#3.5 and finally concluded with language-oriented programming.

Ian Cooper

Ian Cooper has over 20 years of experience delivering Microsoft platform solutions in government, healthcare, and finance. When he is not writing C# code he is also the and founder of the London .NET user group.

Panel Discussion

Progressive .NET Tutorials Panel Discussion

Specification by example and Agile acceptance testing

In this workshop, participants will learn the basics of Specification by Example and Agile Acceptance Testing to improve the communication between stakeholders and software implementation teams. Learn how to distil the specification and how to write and manage acceptance tests efficiently.

Gojko Adzic

Gojko has helped numerous teams implement best specification-by-example practices, written two books on the subject and contributed to several open source projects. He frequently speaks at leading industry conferences.

OpenRasta - An MVC framework with strong opinions

This tutorial shows how OpenRasta embraces web technologies, whilst providing for a very large amount of extensibility. You'll also learn what resources are, how to design your code around them and how to leverage REST.

While MVC frameworks have recently been gaining acceptance in the .net world, few leverage the full richness of web technologies. OpenRasta has been designed from the ground-up to embrace them, while providing for a very large amount of extensibility.

In this workshop, you'll learn what resources are, how to design your code around them and how to leverage the power of REST. You'll see how to use the same code and the same web app to serve rich clients, javascript code, xml services and html pages. And finally, you'll learn how an opinionated framework, thanks to applying the right patterns and principles, helps you make the right decisions when designing, testing and deploying your code.

Sebastien began his presentation with defining what resources are. He further explained using lots of code snippets, how to apply OpenRasta techniques to develop rich clients and JavaScript code which are in accordance with the right principles and assist the OpenRasta users to make the right decisions when designing, testing and deploying a web app.

Sebastien Lambla

Sebastien Lambla has been involved in software development since receiving his first web browser, back in the days of Netsape Navigator 1.2. After a few years of hacking on javascript, he turned his attention to the .net platform, on which he would spend the next few years building software in many companies.

FitNesse.NET workshop

This practical workshop teaches participants how to automate acceptance tests and connect them to the domain code efficiently with FitNesse.NET, covering topics such as basic fixtures, mapping to domain services and classes and best practices for FitNesse.NET.

Gojko Adzic

Gojko has helped numerous teams implement best specification-by-example practices, written two books on the subject and contributed to several open source projects. He frequently speaks at leading industry conferences.

Intro to NHibernate Workshop

In this NHibernate workshop, we will cover the first nhibernate application, basic mapping, using Fluent NHibernate and how to properly use NHibernate within your application.

What would you say if I told you that you can stop writing data access code in .Net? Aren't you tired of writing the same thing over and over again, opening connection, querying the database, figuring out what to return, getting back untype data that you need to start putting on the form? Do you really see some value in writing yet another UPDATE statement? Data access concerns can consume 75%(!) of the code base

NHibernate is one of the most popular persistence frameworks in the .Net space. It dramatically reduce the time and effort you would put into dealing with the database.

In this NHibernate workshop, we cover the first nhibernate application, basic mapping, using Fluent NHibernate and how to properly use NHibernate within your application.

Ayende introduces his audience to NHibernate and explains why he can’t stop using NHibernate by demonstrating to them using code snippets. In this video oren showed some code regarding basic mapping and other best practices of the NHibernate persistence framework.

Oren Eini aka Ayende Rahien

Oren Eini is the author of Rhino Mocks, one of the most popular mocking frameworks on the .NET platform, and is also a leading figure in other well known open source projects including NHibernate, RavenDB,the Rhino Tools Suite and the Castle project.

Magnus Henoch - TFL Journey Angel

Magnus Henoch gave a talk on TFL Journey Angel

Castle Workshop

Hammett, lead of the Castle project, will run this 1/2 workshop on the Castle Framework

Hamilton Verissimo de Oliveira

Hamilton Verissimo is an open source enthusiast who has started and participated in several projects, inside and outside Apache Software Foundation. He is a seasoned software developer constantly reviewing his beliefs and pursuing...

Windsor WCF integration: building component based web services

In this workshop Mike Hadlow will go in depth with the Windsor IoC container's new WCF integration facility. Learn how it allows components built with the Dependency Injection pattern to be published as WCF services and remote services consumed as windsor components.

Mike will also show how the WCF facility provides a fluent API that is a compelling alternative to WCF XML configuration. We'll see how we can re-configure applications over physical tiers without changing a line of code, and some cool patterns and heinous anti-patterns for this kind of service orientation. Testing and debugging distributed software can also be a chore, so we'll look at tools that can relieve some of the pain. A Visual Studio solution will provided, so come on down and code along.

Prerequisites: This workshop assumes some familiarity with both WCF and Windsor.

Mike Hadlow

Mike Hadlow works as a freelance .NET developer and architect. For the last few years he's been especially interested in messaging systems and service oriented architectures. He writes a blog, 'Code Rant', and is the author of several open source projects including Suteki Shop, an eCommerce framework, and EasyNetQ, a simple API for RabbitMQ. He lives in Lewes on the south coast of the UK.

Advanced NHibernate Workshop

Watch this SkillsCast and see how you can utilize an ORM in untraditional ways to get an additional, better, approach to solving complex issues. Some of those ways include business rules, localization, state transitions, inversion of control, etc.

Object relational mapping are becoming only more popular, as people developing complex systems find that they need more than the tabular model to work with in their applications.

A sophisticated ORM can do a lot more than merely get the data out of the database in object form, it can be a valuable assest in simplifying development and making things possible.

In this SkillsCast, you will see how you can utilize an ORM in untraditional ways to get an additional, better, approach to solving complex issues. Some of those ways include business rules, localization, state transitions, inversion of control, etc. All done via the ORM layer, and all can be used to drasticly simplify the complexity of the given scenarios.

Oren Eini aka Ayende Rahien

Oren Eini is the author of Rhino Mocks, one of the most popular mocking frameworks on the .NET platform, and is also a leading figure in other well known open source projects including NHibernate, RavenDB,the Rhino Tools Suite and the Castle project.

Towards a New Architect

Manufacturing companies like Toyota have realized the key to a successful organization was in defining work, eliminating waste, and producing just what's needed, when it's needed...

The various Agile methodologies get us closer to these business goals by driving out impediments and working in small batches, but what happens after we're executing and we start worrying about prioritization? Inexorably we're lead to seemingly radical new ideas like systems thinking, single piece flow, pull, and release-per-feature.

In this new paradigm, the things that used to work for us – release planning, continuous integration, TDD, evolutionary design, etc. – require tweaking or, in certain cases, out-and-out innovation.

David explains to his audience release planning, continuous integration, TDD, evolutionary design, etc. – require tweaking or, in certain cases, out-and-out innovation. And he identified the architect as a key player in the realm of Lean software development.

The tutorial continued with David grouping the audience in to practical work groups, these groups worked together to solve various case studies.

David Laribee

David Laribee has trucked in software for over 15 years. He favors collaboration, design thinking, simple, domain-driven design paired with low ceremony process, tools and platforms.

F# Tutorial

F# is succinct, efficient and an enormously productive foundational language. In this tutorial you'll learn the basic building blocks for using F# productively and to start having fun with it. We'll show you the language basics and look at how composing functions and immutable data types make programming simpler.

Functional programming is perhaps the next big wave in application development. As experienced developers know, functional programming makes its mark by allowing application developers to build solutions to complex solutions by composing a number of simple and elegant building block.

F# is the premier functional programming language on the .NET framework, and the recent decision to included it as part of Visual Studio 2010 is a significant step towards making F# development viable in real world application and component development. F# is succinct, efficient and an enormously productive foundational language.

In this tutorial we present the basic building blocks you will need to use F# productively and start having fun with it. We'll show you all the basics of the language and look at how composing functions and immutable data types make programming simpler. We'll be showing a number of interesting applications of F# including, using F# in concurrent and reactive programming and using F# to create Domain Specific Languages (DSLs).

Robert Pickering

Robert is an experienced software engineer, community leader and author of Beginning F# (Apress). In his 10 year career he has participated in a wide range of projects building large, scalable and fault tolerant systems on the Microsoft .NET platform.

MEF - Microsoft's Managed Extensibility Framework

Half day workshop on Microsoft's MEF - Microsoft's Managed Extensibility Framework, presented by Hammett, programme manager for MEF

Hamilton Verissimo de Oliveira

Hamilton Verissimo is an open source enthusiast who has started and participated in several projects, inside and outside Apache Software Foundation. He is a seasoned software developer constantly reviewing his beliefs and pursuing...

Defining and Improving Standard Teamwork

Working as a team can be a challenge. It's easy to fall into the trap of owning "your feature" or succumb to ego or deadline pressure and live as the specialist; that person that knows, inside and out, the esoteric dark matter of a codebase.

eXtreme Programming and Lean Software Development give us powerful conceptual tools to break these bad habits and truly start working together as a team. Before we can roll out proven practices such as TDD, Pair Programming, and the like, we need to settle on a set of values that drive our improvement efforts.

We begin with a set of shared and well-known values. In this workshop we'll focus on coaching techniques that build a solid foundation for your team based on values and principles.

Once we're speaking the same language, we'll survey several concrete practices that collude to help groups gel and achieve collective ownership, including (but not necessarily limited to): User Stories, BDD/TDD, retrospectives, Andon and Kanban.

David Laribee

David Laribee has trucked in software for over 15 years. He favors collaboration, design thinking, simple, domain-driven design paired with low ceremony process, tools and platforms.

Old Sessions House

Ideally situated close to the City and to the West End of London, the Old Sessions House is the only building on the west side of Clerkenwell Green just five minutes walk from Farringdon Station.

This fantastic venue is accessible by rail, underground and road.

Old Sessions House

22 Clerkenwell Green, London, EC1R 0NA, GB


View details, travel and nearby hotels

To discuss sponsorship opportunities please contact the team:

Thanks to our sponsors