 |
Agenda NDC 2011To plan your conference or decide which days you want to participate, log in here | Color codes for sessions:
|
Programming Languages |
|
|
Web |
|
|
Architecture |
|
|
Mobile |
|
|
Testing |
|
|
Security |
|
|
TDD |
|
|
Domain Driven Design |
|
|
SharePoint |
|
|
Cloud |
|
|
Agile |
|
|
jQuery |
|
|
Client |
|
|
Tools & Techniques |
|
|
JavaScript |
|
|
NoSql |
|
|
Ruby |
|
|
UX |
|
|
BI |
|
|
BDD |
|
|
REST |
|
|
Architecture & Design |
|
|
HTML5 |
|
|
Kanban |
|
|
AOP |
|
|
| Time | Track 1Cloud Computing | Track 2 | Track 3Client | Track 4Agile | Track 5Testing & Quality | Track 6 | Track 7Languages | Workshops | | Time: 9:00 - 10:00 | Scott Guthrie | A few weeks ago Scott changed roles, and he now spends the majority of his time working on Windows Azure – Microsoft's Cloud Platform. In this opening keynote for NDC 2011, he will cover why cloud computing will be a huge opportunity for developers, and then provide an inside look into how the Windows Azure Platform works. He'll discuss some of the architecture considerations involved in running large scale services, how to design for elastic scale and fault tolerance, and how you'll be able to take advantage of the Windows Azure Platform to deliver even better solutions.
|  Scott Guthrie is corporate vice president of Microsoft's Azure Application Platform team, and runs the development teams responsible for delivering Microsoft’s Windows Azure, AppFabric, and Web Server Technologies and Tools. | |
| | Read more |
| | | | Maarten Balliauw | Windows Azure - Under the hood Time: 10:20 - 11:20 (Track 1) | Maarten Balliauw | Windows Azure - Under the hood As a happy Windows Azure user you’ve probably been wondering about the internals of Windows Azure. How is provisioning of services happening, how do all components scale seemingly infinite? What happens if my role instance goes down? Come join me and balance on the thin line between software architecture and system architecture that forms the base of one of the most complete cloud platforms out there: Windows Azure. |  Maarten Balliauw is a technical consultant in web technologies at RealDolmen, one of Belgium's biggest ICT companies. His interests are ASP.NET (MVC), PHP and Windows Azure. | |
|
|
| Damian Edwards | JavaScript, jQuery & Ajax with ASP.NET Time: 10:20 - 11:20 (Track 2) | Damian Edwards | JavaScript, jQuery & Ajax with ASP.NET JQuery turned the world on its ear. Do we still write JavaScript or do we just write jQuery? Damian will answer that question with new JavaScript techniques and AJAX as well as some jQuery plugin surprises up his sleeve. What are the best libraries and practices for using jQuery and JavaScript with ASP.NET? How should balanced applications be designed to make the best use of the power of the server and the power of the client? |  Damian Edwards is a Program Manager at Microsoft on the ASP.NET team where he works on Web Forms and Microsoft’s work with jQuery, and a former Microsoft MVP in ASP.NET. | |
|
|
| Billy Hollis | Fundamental Design Principles for UI Developers Time: 10:20 - 11:20 (Track 3) | Billy Hollis | Fundamental Design Principles for UI Developers New UI technologies increase user expectations, and developers need to ramp up better design sensibilities to help meet that challenge. Billy Hollis distills out the most important concepts and ideas for developers to learn and understand when they take on a more design oriented role. Design concepts covered include use of color and animation, progressive disclosure, prototyping processes, aesthetic–usability effect, feedback loops, recognition vs. recall, and several others. If you expect to design XAML–based user interfaces, or work with a professional designer on a project, this session is a great starting point. |  Billy Hollis was the author or co–author of many of the earliest books on .NET, and is also the author of a forthcoming book on Windows Presentation Foundation from Microsoft Press. | |
|
|
| David Anderson | Driving a Kaizen Culture using regular Operations Reviews Time: 10:20 - 11:20 (Track 4) | David Anderson | Driving a Kaizen Culture using regular Operations Reviews Both of David J. Anderson's books have featured chapters describing the use and value of regular operations reviews of the technology development organization. David has described operations review as the keystone or lynch pin of a Kanban initiative to drive the evolution of a Lean organization. Despite this it remains the least often implemented of the Kanban practices. This talk will present the why, what and how of operations reviews and advocate for their greater use as part of a Lean initiative and focal point for creating a Kaizen culture within your business. |  David J. Anderson leads a management consulting firm focused on improving performance of technology companies. He has many years management experience leading teams on agile software development projects. | |
|
|
| Daniel González García | Learn Your Tools. NUnit Time: 10:20 - 11:20 (Track 5) | Daniel González García | Learn Your Tools. NUnit Sure you already do some flavor of unit testing. You use "x"Unit. But.. Do you know what the toolset can do for you? How can its features impact your style of testing and how your style of testing can be reflected on the use of features? Would you like to know how to extend the capabilities of the toolset?
Come to this session if you:
a) use NUnit you can learn more of its features by watching code
b) use another testing framework and feel that it falls short on your demands
c) just feel like hanging around with those unit testing fellows |  Daniel González is a developer, architect, trainer, coach and team lead with Vertica A⁄S, a Microsoft Gold Partner in Århus, Denmark. | |
|
|
| Kevlin Henney | Things You Can Learn from 101 Things I Learned in Architecture School Time: 10:20 - 11:20 (Track 6) | Kevlin Henney | Things You Can Learn from 101 Things I Learned in Architecture School The book 101 Things I Learned in Architecture School, by Matthew Frederick, is a great little book on the skills and practices needed by architects of the built environment. It is not a book about software architecture, but it turns out to have a lot to offer software architects and other software development roles. Rooted in a different creative and design–centred discipline, it offers alternative and fresh perspectives on familiar concepts, reinforcing practices and providing inspiration. |  Kevlin Henney is an independent consultant and trainer, based in the UK but consulting and training throughout Europe and further afield. The focus of his work is in programming, practice, process and patterns. | |
|
|
| Robert C. Martin | Clojure - The Last Programming Language Time: 10:20 - 11:20 (Track 7) | Robert C. Martin | Clojure - The Last Programming Language We have explored an amazing range of different computer languages over the last 50 years. It might seem that this exploration could continue forever. But in recent years we’ve begun to revive older languages and explore them again. Consider languages like Ruby, Clojure, Scala, and F#. These languages are simple variations of older languages. Have we completely explored the domain of computer languages? Have we come full circle? Have we found the last programming language? If there is a final programming language, what should it look like? |  Robert C. Martin has been a software professional since 1970. In the last 35 years, he has worked in various capacities on literally hundreds of software projects. | |
|
|
| Sebastien Lambla | Building hypermedia applications Time: 10:20 - 11:20 (Workshops) | Sebastien Lambla | Building hypermedia applications Building a ReSTful service can be challenging, and deciding how to build an API often dictates how client applications are built. In this workshop, we’ll start from a typical client consuming a json API, and through the use of links, forms and late binding, see how we can build our applications more like browsers, unleashing the power of hypermedia to reduce complexity and coupling.
|  Sebastien Lambla runs Caffeine IT, a .net consultancy ⁄ contracting company helping the good people of London adopt new technologies, new processes, new methodologies and in general anything that's new and shiny. | |
|
|
| | | | Maarten Balliauw | Architecting for a cost effective Windows Azure solution Time: 11:40 - 12:40 (Track 1) | Maarten Balliauw | Architecting for a cost effective Windows Azure solution Cloud computing and platforms like Windows Azure promise to be “the next big thing” in IT. This is certainly true as there are a lot of advantages with cloud computing: computing and storage become an on–demand story that you can use at any time, paying only for its effective usage. But this also poses a problem: if a cloud application is designed like one would design a regular application chances are that the cost perspective of that application will not be as expected. This session covers common pitfalls and hints on improving the cost effectiveness of a Windows Azure solution. |  Maarten Balliauw is a technical consultant in web technologies at RealDolmen, one of Belgium's biggest ICT companies. His interests are ASP.NET (MVC), PHP and Windows Azure. | |
|
|
| Barry Dorrans | Don't get stung - an introduction to web security Time: 11:40 - 12:40 (Track 2) | Barry Dorrans | Don't get stung - an introduction to web security The OWASP Top 10 vulnerability list is the resource for discovering the most popular attacks against web applications on the internet right now. This session aims to go through them, demonstrate them and show you how to protect your ASP.NET web site. |  Barry Dorrans has spent 15 years cutting code, starting with mainframes, through DOS, Visual C and MFC before finally ending up on the .NET platform. | |
|
|
| Billy Hollis | Radically Advanced Templates for in Silverlight Time: 11:40 - 12:40 (Track 3) | Billy Hollis | Radically Advanced Templates for in Silverlight Data templates and control templates allow user interfaces in Silverlight unlike anything available in most other technologies. However, most Silverlight applications look like colorized versions of older applications, with too many data grids and lists with no feedback. This session challenges you to do better. Both technical and design techniques are discussed for creation list interfaces that make the user more productive and effective. You’ll first learn the basic technologies needed for templating, and then see how to use Expression Blend to create data and control templates that open up completely new ways to provide the user with information and feedback. |  Billy Hollis was the author or co–author of many of the earliest books on .NET, and is also the author of a forthcoming book on Windows Presentation Foundation from Microsoft Press. | |
|
|
| Scott Bellware | Beyond Agile Time: 11:40 - 12:40 (Track 4) | Scott Bellware | Beyond Agile Beyond Agile? Didn't Agile just get started? Why would we need to move beyond it already? Agile Development has became the dominant methodology choice for software development, but it's not just because Agile is now popular that we need to consider what's beyond it. Just as Agile emerged to address mindset problems with methodologies of the late–90s, ten years later, Agile shows the same symptoms of the methodologies that it sought to challenge. Lessons–learned in a decade of Agile point to the evolution of the next generation of approaches. Deeper explanations of why Agile (or any methodology) works are clearer after a decade of experience with Agile, as are explanations of how it can fail, and what early warnings of failure to look out for. Wether you plan to continue to use Agile, or whether you're looking to move beyond it, this talk will help you to make the best of your software development without getting caught up in the methodological conflict that pops up every ten years as a once–revolutionary methodology becomes entrenched. |  Scott Bellware is a software product designer, developer, manager, and agile coach living in Austin, Texas. He is a five–time recipient of Microsoft's Most Valuable Professional award and the founder of the AgileATX community of agile software practitioners in Austin. | |
|
|
| Kristoffer Dyrkorn | The benefits of simple, automated performance testing Time: 11:40 - 12:40 (Track 5) | Kristoffer Dyrkorn | The benefits of simple, automated performance testing The benefits of integrating and orchestrating simple and common open–source tools can be surprising. This talk will describe an approach to simple performance testing that has proven very valuable when building public, content–rich web sites. Automation and data gathering during development, testing and maintenance has provided a way to ensure robust and predictable performance on web sites that now deliver more than one million pages per day.
By running a web crawler and doing some careful processing of the output, we have experienced that it is possible to investigate and gain control over important server–side performance aspects like:
* What is the baseline performance of our setup?
* What happens with the overall performance as we add feature X to our site?
* How is the performance influenced as we change code, server software, server hardware, network or architecture?
* How efficient is the caching in our system?
* How has the performance changed the latest three months?
* What are the main resource hogs in our system?
...without resorting to time–consuming testing.
The approach detailed in this talk puts an emphasis on doing low–cost but effective testing and can be used both before and after putting a site into production. |  Kristoffer heads the systems architecture group at BEKK Consulting, a leading Norwegian business and technology consulting firm. He has been working on web projects within large organizations in the private and public sector in Norway for more than 10 years. | |
|
|
| Daniel González García | Designing Software with SOLID principles Time: 11:40 - 12:40 (Track 6) | Daniel González García | Designing Software with SOLID principles Do you think about software design? Do you want to know what those fancy acronyms mean? Do you kind of know what they mean but want to see the concepts in flesh and bone?
I you answered yes to any of the questions, you might not get bored in this session when we talk about
the good, bad and the ugly from those principles and show C# code to exemplify the concepts. |  Daniel González is a developer, architect, trainer, coach and team lead with Vertica A⁄S, a Microsoft Gold Partner in Århus, Denmark. | |
|
|
| Amanda Laucher | Introduction to F#, a multiple paradigm language Time: 11:40 - 12:40 (Track 7) | Amanda Laucher | Introduction to F#, a multiple paradigm language Welcome to F# 101. This new language is getting quite a bit of airtime by .NET alphageeks.. This is a discussion for those who have not yet written their first F# application. We’ll look at VS2010, the F# REPL, and why you would want to get started with F# at all. We’ll discuss what makes F# a functional language and we’ll break down the syntax and conceptual barriers. By the end of this discussion you should feel comfortable starting a new F# project and diving into your first application. |  Amanda Laucher is a Geek at ThoughtWorks in Sydney, Aus. She's been helping teams work with functional programming languages for the past 2 years, and before that in C# and Java. | |
|
|
| Sebastien Lambla | Building hypermedia applications Time: 11:40 - 12:40 (Workshops) | Sebastien Lambla | Building hypermedia applications Building a ReSTful service can be challenging, and deciding how to build an API often dictates how client applications are built. In this workshop, we’ll start from a typical client consuming a json API, and through the use of links, forms and late binding, see how we can build our applications more like browsers, unleashing the power of hypermedia to reduce complexity and coupling.
|  Sebastien Lambla runs Caffeine IT, a .net consultancy ⁄ contracting company helping the good people of London adopt new technologies, new processes, new methodologies and in general anything that's new and shiny. | |
|
|
| | | | Magnus Mårtensson Björn Ekengren | A journey to the other side Windows Azure + Java Time: 13:40 - 14:40 (Track 1) | Magnus MårtenssonBjörn Ekengren | A journey to the other side Windows Azure + Java Your Java applications will purr in Windows Azure just like a cat! You can easily host your Java application that run on a regular Windows Server as easily in Windows Azure. More over you can build your Java Windows Azure applications in Eclipse with full tooling support and JDK. Microsoft has gone public with Java being "a first class citizen" in Windows Azure. Come to this session to see how to do all this and to listen to experiences from real Java + Windows Azure cases. |  Magnus has a burning passion for technology and for sharing his knowledge with others. As a .NET Architect consultant and Cloud expert, he works as a tutor, lecturer, process coach and technical lead.
 Björn is passionata about building advanced solutions which are easy to use. He started as a game developer and has continued in the fincance sector. | |
|
|
| Keith Braithwaite | DDD Time: 13:40 - 14:40 (Track 2) | Keith Braithwaite | DDD Has the DDD community embarked on an epic journey of wheel re–invention? The preface to Domain Driven Design claims that "surprisingly little has been written about [domain modelling and] how to do it" That isn't really true, so what are the DDD folks missing?
This session will explore why domain modelling became unfashionable and examine its long history and rich collection of techniques. Along the way we will discover some wheels ready–made for us to use. |  Keith is a Principal Consultant with Zuhlke. He also manages their Centre of Agile Practice. This group provides training, coaching, mentoring, toolsmithing, and straightforward development to enhance client teams capabilities. | |
|
|
| Gill Cleeren | Switch on the LightSwitch Time: 13:40 - 14:40 (Track 3) | Gill Cleeren | Switch on the LightSwitch Is LightSwitch something for you? In this session, we'll show how you can build professional LOB applications quickly using LightSwitch. We will cover why you should look at LightSwitch, binding to data, and building out the user interface. LightSwitch is however more than just some predefined screens: developers will love it for its extensibility. |  Gill Cleeren is Microsoft Regional Director ( www.theregion.com), MVP ASP.NET, INETA speaker bureau member and Silverlight Insider. | |
|
|
| Kevlin Henney | Cognitive Biases and Effects You Should Know About Time: 13:40 - 14:40 (Track 4) | Kevlin Henney | Cognitive Biases and Effects You Should Know About In software development, developers, architects and managers often like to think of themselves as rational and clear thinking, not prone to the chaotic and contradictory thinking they see at home, in politics or in the world of business. Although it is possible to get further from the truth than this, it is not likely.
Those involved in software development are just as human as people in other walks of life, and are just as subject to the cognitive biases and effects that skew, truncate and bypass clear thinking. The effects on rationality affect everything from testing to estimation, from programming to project delivery. It is easier to see and react to these effects in yourself and others when you know what some of them are.
|  Kevlin Henney is an independent consultant and trainer, based in the UK but consulting and training throughout Europe and further afield. The focus of his work is in programming, practice, process and patterns. | |
|
|
| Gaspar Nagy Jonas Bandi | SpecFlow: Pragmatic BDD for .NET Time: 13:40 - 14:40 (Track 5) | Gaspar NagyJonas Bandi | SpecFlow: Pragmatic BDD for .NET Behavior Driven Development (BDD) and Specification by Example are recent trends in the agile community. SpecFlow is a tool for the for .NET ecosystem that supports the implementation of the ideas behind those methodologies.
SpecFlow builds upon the success of Cucumber, the famous BDD tool from Ruby &Rails. SpecFlow provides integration to Visual Studio, MonoDevelop, NuGet and Silverlight.
This session gives a brief introduction to using SpecFlow and shows the latest interesting features.
The session provides a hands–on demonstration how to get from zero to your first automated specification in a .NET project with an outside–in approach.
It also shows the most common usage scenarios and possible integrations common testing frameworks.
Last but not least, it highlights some ideas about future evolvement conceptions. |  From the dreamy world of building fascinating LEGO constructs and drawing plans of automated machines, Gáspár Nagy switched almost seamlessly to dive into the growing possibilities of programming personal computers.
 Jonas Bandi studied electrical engineering and information technology at the ETH Zurich and continued his studies with post–diploma courses at the ETH Zurich and at the SWS Bern. | |
|
|
| Scott Guthrie | ASP.NET MVC 3, EF Code First, NuGet, and IIS Express - Part 1 Time: 13:40 - 14:40 (Track 6) | Scott Guthrie | ASP.NET MVC 3, EF Code First, NuGet, and IIS Express - Part 1 We'll spend 2 hours building an application with ASP.NET MVC 3, EF 4.1 (aka "Code First"), NuGet and IIS Express. The audience will get to choose what type of application they want built, and then watch Scott code it live on stage. Along the way you'll learn how the Microsoft web stack fits together and learn new features and useful tips and tricks along the way. |  Scott Guthrie is corporate vice president of Microsoft's Azure Application Platform team, and runs the development teams responsible for delivering Microsoft’s Windows Azure, AppFabric, and Web Server Technologies and Tools. | |
|
|
| Amanda Laucher | F# 2 - Things I've learned the hard way Time: 13:40 - 14:40 (Track 7) | Amanda Laucher | F# 2 - Things I've learned the hard way This talk will go over some of the more complex F# ideas and getting beyond simple syntax seen in intro talks. I'll skip right to the stuff you learn as you are writing production F# code. We'll discuss some good practices and design patterns and I'll offer advice that I wish I had gotten before getting started. Prerequisites: F# Intro from earlier in the day or some tinkering in F# code before the conference. |  Amanda Laucher is a Geek at ThoughtWorks in Sydney, Aus. She's been helping teams work with functional programming languages for the past 2 years, and before that in C# and Java. | |
|
|
| Jon Jagger Olve Maudal | CyberDojo - browser based collaborative coding practice Time: 13:40 - 14:40 (Workshops) | Jon JaggerOlve Maudal | CyberDojo - browser based collaborative coding practice A CyberDojo is deliberately designed to stimulate deep experiential
learning of both aspects of software development:
- the technical side – coding and test–driven development
- the social side – communication and collaboration
In a CyberDojo you practice developing software whilst playing "musical chairs"!
- the players work in small groups
- each group works at a single computer
- each group writes their code and tests totally inside a CyberDojo web page
- each group submits their code and tests to the CyberDojo server as
- often as they wish
- the CyberDojo server saves their submission, runs their tests, and returns the tests–outcome to their browser (green if all tests pass)
To encourage collaboration every few minutes...
- all keyboard drivers must rotate to a non–driver role
- either at the same computer or a different one
A CyberDojo is fun and stimulating.
Participants are asked to please bring their laptop. |  Jon Jagger is an independent software coach–consultant–trainer–enthusiast based in England.
 Olve Maudal loves to write code, but is perhaps more interested in how software is developed than what it actually does.
| |
|
|
| | | | Dale Ragan | Let me introduce my Moncai! Time: 15:00 - 16:00 (Track 1) | Dale Ragan | Let me introduce my Moncai! Cloud services are changing the way we approach developing application's. Learn how Platform–as–a–Service (PaaS) takes it a step further and helps you forget about server's and focus on your problems. We'll start by discussing the philosophies behind PaaS and then dive into using Moncai to deploy, build, and scale your web, mobile, or social application's written in .NET.
|  Dale Ragan has been a software professional since 2001. He studied electrical engineering at The Ohio State University and proudly served in The United State Army honorably. | |
|
|
| Tore Vestues Jonas Follesø | When less is more - Agile web architecture Time: 15:00 - 16:00 (Track 2) | Tore VestuesJonas Follesø | When less is more - Agile web architecture Are you using the (minimum of) three layers architecture? Is that choice based on fear of not handling future problems on a project? Or maybe you abide to the buzz, favoring domain driven design, and thus several layers? Or are you afraid that choosing little or no architecture at all will make you look ignorant? Or maybe you just do not know of any alternatives? We've been there. But we've had enough.
We've done a systematic rethinking of the traditional three layer architecture, questioning its foundation. Taking an agile approach, we're looking for simple solutions for the web that can grow when needed. We present principles, ideas and concrete examples of how to build web solutions faster, easier, more fun and simply: more agile. |  Tore is a software development enthusiast, speaker and C# MVP. He works as a managing consultant at BEKK Consulting in Trondheim, Norway.
 Jonas is a scientist at BEKK in Trondheim. He has broad experience and in–depth knowledge of the .NET Framework, ASP.NET, WPF, Silverlight and the C# programming language. | |
|
|
| Christian Westlye Larsen Tor Livar Flugsrud | Modernizing a large desktop application through vertical porting Time: 15:00 - 16:00 (Track 3) | Christian Westlye LarsenTor Livar Flugsrud | Modernizing a large desktop application through vertical porting Schlumberger’s market–leading desktop seismic–to–simulation software Petrel® helps geophysicists, geologists, and reservoir engineers maximize oil and gas reservoir performance. The first version of Petrel was launched in 1998 and was developed using C++. During the past years, Petrel has gradually adopted C# and .NET technologies through a new managed API, called Ocean, which is built on top of the legacy C++ core and facilitates plugin development. However, significant parts of Petrel still use a stack consisting of C++ for business objects and C++⁄CLI with Windows Forms for the UI (which is also used in the pure C# parts). In order to utilize new technologies such as WPF, increase developer productivity and decrease maintenance cost, replacing the old C++ and C++⁄CLI stack with a pure C# stack as much as possible is desirable.
In this talk, we describe how we did a vertical port of a subsystem in Petrel, the Seismic Attribute system, from a C++⁄CLI⁄Windows Forms stack to a new managed architecture using C# and WPF. Doing a port vertically means porting the entire subsystem at once rather than porting each layer separately. The Seismic Attribute system consists of user interfaces, storage, advanced algorithms and an external interface which enables plugin development of new algorithms with custom user interfaces. Porting the old C++⁄CLI–based system to a new managed architecture is thus no small undertaking.
We will describe the considerations which led to us doing the vertical port versus keeping the legacy system, the WPF–based Model–View–ViewModel (MVVM) design of the new system, how we integrated our new architecture with the rest of Petrel, how we collaborated with teams doing ports of other parts of Petrel, new innovations resulting from the porting work, and – most importantly – mistakes and lessons learned. |  Christian Larsen obtained a Master’s degree from the Norwegian University of Science and Technology (NTNU) in 2007, where he wrote a Master’s thesis on GPU and cluster computing in collaboration with Schlumberger Ltd., Trondheim.
 Tor Livar Flugsrud graduated from Norwegian University of Science and Technology (NTNU) in 2003 and has seven years of experience as a software developer and software architect in Schlumberger | |
|
|
| Michael Feathers | The Mistake at the Heart of Agile (and how to get past it) Time: 15:00 - 16:00 (Track 4) | Michael Feathers | The Mistake at the Heart of Agile (and how to get past it) It's been ten years since the signing of the Agile Manifesto and quite a bit has happened. Agile has spread throughout the industry and, rather than being an upstart movement, it is now considered mainstream. Over the past several years, however, it's become obvious that enterprise transition to Agile is not easy. Quite often it fails, or fails to yield benefits that are easily realized in smaller organizations. In response to this, we an adapt, or try harder, and those strategies seem to be pervasive in the industry. However, we can take time to question why it is so hard and consider that there may be a reformulation or change in emphasis which sidesteps the difficulty.
In this talk, Michael Feathers will explain a bit of the early history of Agile and talk about how there are organizations outside the Agile community that are taking advantage of a key insight that we missed early on. |  Michael Feathers provides training, coaching and mentoring services in Agile⁄XP programming practices, test–driven development, refactoring, object–oriented design, Java, C#, and C++. | |
|
|
| Gaspar Nagy Jonas Bandi | Building .NET applications with BDD Time: 15:00 - 16:00 (Track 5) | Gaspar NagyJonas Bandi | Building .NET applications with BDD The idea of behavior–driven development, specification by example, acceptance–test driven development is more and more popular in the .NET development community. As bigger and bigger projects are built this way, new challenges have been appeared in the horizon. People, who participate in such projects have to answer questions, like
- How do you organize feature documentations and keep an overview?
- How do you find the right balance between the abstractness and concreteness of your examples to ensure readability and maintainability?
- On which level do you bind the automation and what are the trade–offs?
- How do you organize the refinement of requirements to keep the feature stream flowing?
- How do you make the living documentation accessible for the business?
Jonas and Gaspar have collected their working experiences of several .NET projects using SpecFlow. In their presentation, they will discuss questions they ran into when doing BDD with SpecFlow and possible answers they found. |  From the dreamy world of building fascinating LEGO constructs and drawing plans of automated machines, Gáspár Nagy switched almost seamlessly to dive into the growing possibilities of programming personal computers.
 Jonas Bandi studied electrical engineering and information technology at the ETH Zurich and continued his studies with post–diploma courses at the ETH Zurich and at the SWS Bern. | |
|
|
| Scott Guthrie | ASP.NET MVC 3, EF Code First, NuGet, and IIS Express - Part 2 Time: 15:00 - 16:00 (Track 6) | Scott Guthrie | ASP.NET MVC 3, EF Code First, NuGet, and IIS Express - Part 2 We'll spend 2 hours building an application with ASP.NET MVC 3, EF 4.1 (aka "Code First"), NuGet and IIS Express. The audience will get to choose what type of application they want built, and then watch Scott code it live on stage. Along the way you'll learn how the Microsoft web stack fits together and learn new features and useful tips and tricks along the way. |  Scott Guthrie is corporate vice president of Microsoft's Azure Application Platform team, and runs the development teams responsible for delivering Microsoft’s Windows Azure, AppFabric, and Web Server Technologies and Tools. | |
|
|
| Douglas Crockford | ECMAScript 5: The New Parts Time: 15:00 - 16:00 (Track 7) | Douglas Crockford | ECMAScript 5: The New Parts The first revision to JavaScript in ten years is now coming on line.
This is what you are getting. |  Douglas Crockford was born in the wilds of Minnesota, but left when he was only six months old because it was just too damn cold. He turned his back on a promising career in television when he discovered computers. | |
|
|
| | | | Magnus Mårtensson | Build Friendly Applications that like to Chit-Chat Time: 16:20 - 17:20 (Track 1) | Magnus Mårtensson | Build Friendly Applications that like to Chit-Chat The AppFabric Service Bus is a very powerful service in the cloud that you can harness to easily and securely interconnect your distributed applications. It does not matter whether you have a classic client–server solution, whether you want to connect to a partner, whether you want to do one way or two way communications or whether you want event based broadcasting with message caching. The Service Bus is a common place in the Cloud where you can just tap into and use a Service that otherwise would have been very hard to build and maintain. In this session we will look at the Service Bus and its features and investigate what you need to do in your applications in order to use it. |  Magnus has a burning passion for technology and for sharing his knowledge with others. As a .NET Architect consultant and Cloud expert, he works as a tutor, lecturer, process coach and technical lead. | |
|
|
| Rob Ashton | Document databases with ASP.NET MVC Time: 16:20 - 17:20 (Track 2) | Rob Ashton | Document databases with ASP.NET MVC Having already built applications with ASP.NET MVC and various ORMs, what knowledge can we apply from this when deciding to utilise a document database, and indeed why would we?
Over the course of an hour, we will survey several patterns and strategies that can reduce friction when utilising a document database in a online transaction environment. |  Rob Ashton is a freelance software consultant from the UK, but currently operating in Belgium. He primarily works on an primarily open source .NET stack and is passionate about good design and continuous improvement.
| |
|
|
| Peter Myers | Introduction to Analysis Services 2008 R2 Cubes Time: 16:20 - 17:20 (Track 3) | Peter Myers | Introduction to Analysis Services 2008 R2 Cubes Analysis Service’s OLAP component allows organizations to implement a cube that is designed for rapid ad hoc information retrieval of their data. The cube, as a single version of the truth, can be enriched to encapsulate business rules and calculations, and advanced Business Intelligence features including KPIs and actions. |  Peter Myers has 13 years solid experience working in OLTP database design and development, DBA support and Data Warehousing?Business Intelligence with SQL Server. | |
|
|
| Ian Robinson | Business Architecture Foundations of IT Time: 16:20 - 17:20 (Track 4) | Ian Robinson | Business Architecture Foundations of IT An organisation's systems estate reflects the degree to which it has aligned its operations with its software delivery capabilities. Successful outcomes flow from a shared understanding of the purpose and value of a business's capabilities. The progress we make depends on where we start.
In this session, I discuss how our models of what the business does and what it's trying to achieve influence the progress of large software initiatives. I describe a number of practices and activities that together create a useful representation of a firm's operating model – one that can be used to identify, prioritise and plan strategic IT investments. |  Ian Robinson (@iansrobinson) is the SOA practice lead for ThoughtWorks Europe, having spent many years architecting and implementing distributed systems for clients in the telecommunications, entertainment and financial services sectors. | |
|
|
| Christian Johansen | Test-driven JavaScript in practice Time: 16:20 - 17:20 (Track 5) | Christian Johansen | Test-driven JavaScript in practice Join me for an hour of live–coding JavaScript TDD goodness. Together we will explore functional tests and unit tests alike, as we implement a fully functional browser "widget". Throughout the session I will walk you through some of the tools currently available for JavaScript testing, discuss some of the
hardest challenges and show you the workflow – all the way from the first test to the green light on the continuous integration server. |  Originally a student in informatics, mathematics, and digital signal processing,Christian Johansen has spent his professional career specializing in web and front–end development with technologies such as JavaScript, CSS, and HTML using agile practices. | |
|
|
| Kevlin Henney Anders Norås | Introducing The FLUID Principles Time: 16:20 - 17:20 (Track 6) | Kevlin HenneyAnders Norås | Introducing The FLUID Principles When it comes to object––oriented software, the SOLID principles have become almost synonymous with good design practice. While every letter stands for a principle, some developers obsess over them as if there were no more to good code than these five principles. Since the introduction of SOLID many alternatives to traditional object––oriented programming have risen in popularity, suggesting that other design principles may have a role to play. In this talk Kevlin Henney and Anders Norås introduce their FLUID principles for software design. |  Kevlin Henney is an independent consultant and trainer, based in the UK but consulting and training throughout Europe and further afield. The focus of his work is in programming, practice, process and patterns.
 Anders Norås has been an luminary within the Norwegian IT––]community for ages. He’s give lots of talks at industry conferences and user group meetings on everything between hardcore programming to classic literature’s relation to computer culture. | |
|
|
| Hadi Hariri | Dynamic in a Static World Time: 16:20 - 17:20 (Track 7) | Hadi Hariri | Dynamic in a Static World # 4.0 introduces the Dynamic keyword. The team said it was to add better support for COM, yet we’ve already seen its usage extend to ASP.NET MVC 3 and other scenarios. The truth of the matter is, when it comes to working with things such as XML and JSON, dynamic types can really enhance productivity. If you’re a fan of static typed languages and whether or not you like dynamic languages, come to this session and learn to love the new dynamic keyword. We’ll see how you can really gain productivity and flexibility when using it appropriately. Used in quite a few OSS projects already, dynamic really has changed the scenery when it comes to writing applications in C#. |  Hadi Hariri is a Developer, Speaker, Podcaster and Technical Evangelist at JetBrains. | |
|
|
| | | | Hadi Hariri | Refactoring Legacy Code Bases Time: 17:40 - 18:40 (Track 1) | Hadi Hariri | Refactoring Legacy Code Bases Not everyone has the possibility of working on Greenfield projects or doing TDD or BDD. Many of us often end up having to work with legacy code bases that have little notion of what SOLID design principles are and unit tests are non–existent. It can be daunting to have to maintain these types of systems. However, with a little bit of effort, we can try and make the best of the situation. By applying a series of patterns and principles, we can gradually refactor legacy systems to produce a better, friendlier and more sustainable design. Come and see how! |  Hadi Hariri is a Developer, Speaker, Podcaster and Technical Evangelist at JetBrains. | |
|
|
| Shay Friedman | ASP.NET MVC 3 Vs. Ruby on Rails 3 Time: 17:40 - 18:40 (Track 2) | Shay Friedman | ASP.NET MVC 3 Vs. Ruby on Rails 3 Last year was the year when two great web development frameworks arrive at the .NET world – ASP.NET MVC 3.0 and Ruby on Rails (via IronRuby). It is the time to get to know these frameworks and learn their advantages and disadvantages. In this session, Shay Friedman will walk you through the good, the bad and the ugly of both frameworks providing you points to consider when coming to choose one of them. |  Shay Friedman is a Visual C#⁄IronRuby MVP and the author of IronRuby Unleashed and ASP.NET 4 Programmer's Reference. | |
|
|
| Peter Myers | Taking Your Application to the Next Level with Data Mining Time: 17:40 - 18:40 (Track 3) | Peter Myers | Taking Your Application to the Next Level with Data Mining Data mining as a technology is designed to analyze large volumes of data looking for patterns that accurately predict behavior. These patterns can then be used to derive knowledge about data, and in turn this knowledge can be used to enhance application designs and the user experience. In this presentation, you will be introduced to Microsoft SQL Server 2005 and 2008 Data Mining and demonstrations on how to develop data mining models that can be embedded into your applications. Demonstrations are based on SQL Server 2008 R2 Data Mining.
This presentation is a must for any developer looking to embed “Artificial Intelligence” into their solution design to take their applications to the next level. It is guaranteed to thrill you with potential, and excite you with the ease in which it can be accomplished. Note that there is no requirement that attendees have any data mining background. Be warned that this session includes numerous demonstrations that show you how to embed data mining into your application designs. The demonstrations range from simple (involving no code!) to more sophisticated examples. |  Peter Myers has 13 years solid experience working in OLTP database design and development, DBA support and Data Warehousing?Business Intelligence with SQL Server. | |
|
|
| James Shore | Evolutionary Design Illustrated Time: 17:40 - 18:40 (Track 4) | James Shore | Evolutionary Design Illustrated In an agile environment, programmers must deliver working software in the first iteration. Requirements may change at any time, so there's no way to design the software in advance. Instead, you must design your software based on its current needs, and evolve the software design as the requirements change. This process is called evolutionary design. (It's also called continuous design, or iterative and incremental design.)
But how does it work? How can evolutionary design result in high–quality code? In this visual and example–filled session, James Shore will demonstrate how evolutionary design works in practice, using real–world examples culled from his decade of Agile development experience. You'll see how designs evolved in response to external forces, and how responding to those forces yielded in designs that were clean, flexible, and maintainable. |  James Shore is a thought leader in the Agile software development community. He consults with development teams worldwide to help them achieve high throughput, market focus, productivity, and quality. | |
|
|
| Robert C. Martin | The Transformation Priority Premise Time: 17:40 - 18:40 (Track 5) | Robert C. Martin | The Transformation Priority Premise This just might be the thing that brings a mathematical rigor to TDD! If nothing else, it will certainly help programmers choose which tests to write next, and how best to make them pass.
Transformations are like refactorings in that they are simple incremental changes to code. They are unlike refactorings in that they change the behavior of code. This talk presents a set of transformations sufficient to create any application. It also suggests that when they are applied in a certain order developers can avoid many of the common problems with TDD such as painting yourself into a corner, or taking steps that are too large. It also suggests that the ordering helps developers to find better algorithms. |  Robert C. Martin has been a software professional since 1970. In the last 35 years, he has worked in various capacities on literally hundreds of software projects. | |
|
|
| Vagif Abilov | Practical OData with and without Entity Framework Time: 17:40 - 18:40 (Track 6) | Vagif Abilov | Practical OData with and without Entity Framework The Open Data Protocol (OData) has rapidly gained popularity as an efficient way of exposing data sources via REST services. Platform neutrality of the protocol makes it a great choice when developing both data services and clients, and with Visual Studio 2010 and .NET 4.0 tools and libraries adding OData support to a data repository can be as easy as subclassing a generic type.
Default implementation of OData services generated with Visual Studio is concise and powerful, but in this session we will consider scenarios when default is not enough. Canonical RESTful service should conform to certain rules, does your OData service obey them? How can you expose a conceptual data model shared by databases from different vendors, for example Microsoft SQL Server and Oracle? What does it take to replace Entity Framework with NHibernate? And how to capture errors, so exceptions raised from a data layer will not be buried by standard WCF exception handlers?
The session is based on a practical experience gained during a large project at Norwegian Broadcasting Corporation (NRK). |  Vagif Abilov is a Russian–born developer living and working in Norway. He has more than twenty years of programming experience. After spending his early years with Prolog and expert systems in Moscow, Vagif moved to Norway and took more product–oriented approach to development. | |
|
|
| Jon Skeet | Async 101 Time: 17:40 - 18:40 (Track 7) | Jon Skeet | Async 101 If you missed all the fuss near the end of 2010 about the "async" feature which will be in C# 5, this talk will bring you up to speed on why many developers are "awaiting" the next release with so much ancipation. I'll take you through the language features and the Task–based Asynchronous Pattern from a high level, explaining why it's so painful to write asynchronous code today, and how the future language will help you. We'll look at how the pattern encourages task composition, and how you can start preparing for it today – both in terms of your codebase and your professional development. |  Jon Skeet is a Java developer for Google in London, but he plays with C# (somewhat obsessively) in his free time. | |
|
|
|
|
|  |
|