This is the sessions from Code Camp San Diego VIII that was held on the weekend of 7/27/2013

We hope you enjoyed this Code Camp and will join us for the next one.

104 sessions

Hacking Your Memory

Level: 100
Gary Hoffman

As developers and software professionals, we spend a LOT of time learning to think logically and clearly. We also spend a LOT of time gathering and organizing information. However, we spend almost no time learning to use our memory so that we can recall information when we need it.

Not too long ago, it was common for students to be taught how to use their memory to absorb and retain information far more quickly than we do today. Our over-reliance on search engines, to-do lists, and poorly organized notes means we take too long to learn new things, forget to do things we should, and continue to be overwhelmed with information.

This is a rapid, information packed, wide ranging session that draws from recent brain research and discoveries, uncovers what the ancient Greeks, Romans, and Medieval scholars knew about memory, and applies it to the problems modern developers face. I'll show you a better way to read, absorb, and retain information - and it's been around for hundreds of years.

Note: this session presents essentially the same material that was presented in a session at SoCal Fullerton last year. While there is some new information and the presentation is tighter, much of it will be a repeat of previously presented material. Due to huge positive reponse last time (thanks!), I'm doing the same session this year.

Tags: Personal Development | Memory
Interested: 52

ADHD and You on the Job - Leveraging your Brain for Optimum Performance

Level: 100
Steve Kohlenberger

Have it or not, it will affect you.


Do you have ADHD? Not sure? Come find out ... how to find out.


Learn what challenges some people face and what can be done to minimize or work around these challenges to increase your productivity, meet deadlines, be more organized, be on top of your tasks and priorities, become more productive overall, which will likely lead to better reviews, and earning more.


Find out how ADHD will likely show up in you or those around you.

  • Groups of Symptoms
  • Types of symptoms in each group (many)


Types of remedies:

  • 4 different types of mitigation groups for ADHD (none of which can replace any of the others)
  • Listing each of the 4 groups, how they work, and LOTS of specifics about each.


Learn what advantages can be used by those of you with ADHD and how you can Optimize your Brain to the Fullest.

  • How to profile your unique brain.
    • The many scales of measurement and how to track them.
    • Tracking hyper-focus.
    • Tracking the many aspects of distractions (inner and outer), including the first awareness of the distraction, and the ability to control and redirect your attention and activities.
    • Continually increasing your self-awareness (exercises you can do each day).
    • Tracking progress with metrics. Being able to get the value out of the details without getting lost in the details.
  • How to use your profile.
  • Self-Hacking, the Qualtified Self, Personal Informatics.
  • Self-Coaching - the ultimate goal.


Learn what some of the more common challenges are and what can be done about them. Some examples will be offered from a coaching perspective, and how they were resolved.


Questions from the audience will be received and answered.


More about what Steve does at

Steve Kohlenberger, MA, BS, PMP, ASCT

Software engineer for more than 20 years, with a Masters degree in psychology, BS in computer information systems, a PMP, and self-employed or running small businesses most of his life, Steve presently is a Success Coach for those wanting to take powerful next steps forward in their life.

Tags: Training | SQL | software | Developers | coaching | Career counseling | career
Interested: 38

Getting started with Python

Level: 100
Patrick Wolf

An introduction to the widely popular Python programming language.

We'll skip the history and jump right into coding so you are ready to start writing your first unit testable python scripts when you get home.

You can get the slides & code here:

And leave Feedback here:


Tags: Python | Getting Started
Interested: 48

BizTalk Server Best Practices

Level: 300
Brian Loesgen

Seasoned BizTalk consultants tend to accumulate best practices as they implement BizTalk solutions across various projects and clients. In this session we will share some of the tips, techniques and tools that professional BizTalk developers use on a daily basis to improve the quality of their deliverables and reduce development time and effort. We will start with infrastructure aspects such as how to set up projects, naming conventions, and automating tasks for highly repeatable results. Next, we will look at architectural patterns and design approaches that yield more efficient, better performing, more extensible and more robust BizTalk solutions. Join us to learn how you can avoid common pitfalls and improve your BizTalk development experience.

Tags: BizTalk | Best Practices
Interested: 10

Intro to Git Concepts (for SVN users, and DVCS newbs)

Level: 100
Ron Diamond

  • Have you been meaning to make the jump to Git, but just haven't had the time or patience to figure it out?   
  • What makes it so different/better than Subversion, anyway?
  • And what are some of the underlying design features that make it so ingenious? ... and so fast?    
Just in case you haven't heard -- Git rocks! 
It's the new de facto standard distributed version control system (DVCS).  But it's also a very deep toolset, and so can be intimidating at first, and possibly unlike what you've used before.
The goal of this session is to demystify Git and just what makes it different, faster, and more flexible.
With this short session under your belt, you'll finally 'grok' Git, and really understand what makes it different from SVN and others. 
With the basics demystified, you'll be able to proceed onward with confidence, and harness some of its awesome power on your own projects.
We'll also provide a list of helpful resources for further study and practice.
No more excuses -- let's get Git! 
This session will NOT deal with advanced workflows.  The primary focus of the session is understanding its underlying concepts.  WIth those concepts under your belt, you'll now be in a much better position to move ahead on your own, and take advantage of all the other helpful resources available.

Tags: vcs | git | Getting Started
Interested: 45

Windows Azure Mobile Services Introduction

Level: 100
Bret Stateham

<p> Windows Azure Mobile Services allows developers building mobile apps to focus on the app, not the backend. &nbsp;Whether you are building Windows 8, Windows Phone, iOS, Android, HTML5, or really any other kind of app, Windows Azure Mobile Services takes the hassle out of cloud based data storage, authentication, push notifications, and much more. &nbsp;In this session, I&#39;ll show you how to do it!</p>

Tags: Windows Phone | windows 8 | Mobile | iOS | HTML5 | Azure | Android
Interested: 35

Clean Code with SOLID principles

Nickolay Kondratyev

<p> Primarily focusing on SOLID princinples and why they are so important for software to be able to adapt to change, using code examples and visual metophors this session will help you write code that your co-workers will be happy to look at for years to come. In this presentation we will also adress general software practices that could improve overall quality of software as well as presenting a demo of how we can easily abide by DRY principle.</p> <p> &nbsp;</p> <p> Presentation link is included below :&nbsp;</p> <p> <a href=";utm_medium=copy&amp;rc=ex0share" style="color: rgb(17, 85, 204); font-family: arial, sans-serif; font-size: 13px; " target="_blank"><wbr />?utm_campaign=share&amp;utm_<wbr />medium=copy&amp;rc=ex0share</a></p>

Tags: SOLID | reusabilty | principles | Maintainability | Design
Interested: 85

Team Build In TFS 2012

Mike Roth

<p> Are you automating your builds? If not why not? Learn in this session how to take the first step to get your repostitories built in an automated fashion, so easy even a code monkey could do it!</p>

Tags: TFS 2012 | automated builds
Interested: 21

Getting Groovy With Nuget

Mike Roth

Learn the ins and outs of Nuget and Package Repostiory Management. 

Tags: NuGet | automated builds
Interested: 17

Screen casting 101 - Become a millionaire!

Dustin Davis

Want to be come a millionaire doing screen casting? You can! I'll explain how and I'll teach you what you need to know to get started with screen casting. No prior screen casting experience necessary.

In this session, we'll learn

  • What makes and good and bad video
  • Outline for preparation
  • Recording audio
  • Recording video
  • Editing and producing video


Tags: video | Training | screen casting | production | money | fame | camtasia | audio
Interested: 38

What is Parrot?

Level: 100
Ben Dornis

Want cleaner views? Code cluttering up your views? Try parrot, risk free* for 90 days. In this session I'll be talking about my new view engine, Parrot.
Parrot strives to remove code from your views. This hopes to result in cleaner, easier to maintain views.
By the end of this talk, you'll be able to understand the parrot syntax as well as use Parrot in your mvc apps.


*not actually a product. 'tis a joke, son. nice kid, but about as sharp as a bowling ball.

Tags: parrot | nancy | MVC
Interested: 7

Data Flow Architectures in Software Development Life-Cycle

Virginia Mushkatblat

We will consider different architectures and implementations with Microsft tools to move data across environments during the software development life-cycle. Whether you start from scratch working under eXtremeProgramming, or you have to establish processes in already existing organization working under waterfall methodology, whether the data to move is 1 KB or terabytes, we will uncover ways to handle the tasks and outline the cons and pros of each approach.

Tags: SSIS | SSDT | SQL Server | sdlc | masking | ETL | Data | Architecture | Agile
Interested: 27

Machine learning made simple

Level: 100
Li Chen

Machine learning is proliferating due to the demand from small devices to business intelligence on big data.

In this talk, I will discussion the principle of machine learning from the ground up without relying on any black box package. Such approach can be adapted to a wide variety of situations.

I will first introduce cost function and the gradient descent method for optimization. I will apply the approach to binary classification (true or false). Then I will extend the idea to multiple classifications. Then I will discuss supervised learning on high dimensional problem using neural network and kernel methods (e.g. support vector machine). Time permitting, I will also discuss unsupervised learning such as clustering with k-mean and dimension reduction with principle component analysis.

Tag: Machine Learning
Interested: 76


Level: 100
Don Seidenspinner

This session explores the Arduino open source hardware platform and how to program it using their C++ development environment. Actual hardware will be used to demonstrate how easy it is to learn and what can be done with this platform.

The San Diego Hardware Hackers SIG meets the 2nd. Tuesday each month in the Microsoft UTC offices. There is no cost to attend these meetings & free pizza is provided.

Tags: Open Source | Hardware | hackers | Arduino
Interested: 54

Search Engine-Building with Lucene and Solr

Level: 100
Kai Chan

If your application relies on simple string comparison to search through text-based data, you might want to learn about an alternative approach. In this session, I will introduce you to Apache Lucene and Apache Solr, discuss what they offer, and show you how to use them to build your own search feature.
We will cover:
* inverted index concepts
* how indexing and searching work
* different types of queries
* filtering
* faceting
* sorting

Tags: Text Search | Solr | Lucene | Java
Interested: 36

Rock Your .NET Coding Standards (Part 2)

Level: 100
David McCarter

Make sure you attend part 1.With lots of new material for 2013, this session will guide any level of programmer to greater productivity by providing the information needed to write consistent, maintainable code. Learn about common coding mistakes, code style, defensive programming and much, much more. Code tips are included to help you write better, error free applications. Lots of code examples in C# and VB.NET. This session is based off my latest book, David McCarter's .NET Coding Standards.

Tags: VB.NET | Development | Code | C# | Best Practices | .NET
Interested: 54

Introduction to Big Data & Cassandra

Level: 200
Aaron Stannard

Cassandra has emerged as one of the world's most relied-upon distributed NoSQL databases, invented at Facebook and used by companies like Twitter, Netflix, RackSpace, Instagram, and hundreds of others.

In this talk you'll learn about how Cassandra works, when you should use it, its ecosystem, and how to write a simple app that leverages it.

Tags: NoSQL | Cassandra
Interested: 96

Tour of Big Data

Level: 200
Raymond Yu

<p> This talk presents you with basic concepts in world of big data and data science, with focus on relational databases, noSQL, MapReduce, machine learning, and data visualization, along with demos of MapReduce in action and Pig on Hadoop. The purpose of this presentation is to get you familiar with terminologies and concepts in data science, and whet&nbsp; your appetite for further exploration into the world of big data. This presentation is adapted from an online course by Coursera with similar title and scope.&nbsp;</p>

Tags: Visualization | RDBMS | NoSQL | MapReduce | Machine Learning | Big Data
Interested: 86

Video Streaming on iOS: The Gory Details

James Jennings

iOS has several powerful frameworks and utilities for playing, streaming and creating video. While the APIs provided by Apple are relatively simple, the underlying requirements of video files and video streaming can be daunting to developers. The knowledge about digital video gained in this session will be useful to any technologist, even beyond the scope of iOS.

Tag: ios video streaming
Interested: 32

Aspect Oriented Programming and You

Level: 100
Dustin Davis

Stop wasting time writing unnecessary code and start focusing on the code that really matters. Aspect Oriented Programming keeps us DRY, reduces development and testing time by handling cross cutting “boiler plate” code.

You may have heard about AOP and how it’s great for logging. Sure, it’s great for logging. But what you haven’t heard is the tremendous power it gives you over your code.

What you haven’t heard is how is will reduce your LOC, reduce complexity and increase reusability How does automating the implementation of several well known design patterns such as INotifyPropertyChanged sound to you? Never bother writing that code ever again!

How about retro actively applying aspects to legacy projects with a single line of code?

In this session, you’ll learn how to take advantage of AOP to make your life better and I’ll even show you a capability of AOP that will blow your mind!

Tags: C# | Architecture | AOP | .NET
Interested: 59

Building xRM solutions with Microsoft Dynamics CRM

Level: 100
David Jamriska

Microsoft Dynamics CRM allows for the rapid development of line of business applications building on core Microsoft technologies such as, C#, WWF, SSRS and SQL Server. In this session we will cover the xRM features of Microsoft Dynamics CRM and build a functional application.&nbsp; Using the tools in CRM you can reduce development time by up to 80% while providing a secure robust solutions.

Tag: xrm crm dynamics rad
Interested: 22

Node, Mongo, Backbone, and Kendo UI - Oh My!

Level: 200
Troy Miles

Node.js is one of the most popular repositories on GitHub. Unfortunately it is still difficult to get a good foothold in understand Node since so many of the tutorials show super simple examples and not the way it is used in a production app. In this session I will show how to use Node, Express, Mongo, Backbone, and Kendo UI together to build the core of a real app. 
This session will move somewhat quickly in order to cover all the material but all of the source code and slides will be available after the session. If you would like to check out some Node tutorials before the session, please check out my blog:

Tags: WEB | node | Mongo | JavaScript | HTML5 | Express | Backbone
Interested: 74

PhoneGap in 60 Minutes or Less

Level: 100
Troy Miles

You've probably heard of PhoneGap, the free, open source framework for creating mobile apps using standard web programming, but maybe you're skeptical. You probably have a lot of questions.  How easy is it to create an app with PhoneGap? Can I convert my web site to a mobile app? Will the app be too slow to use? 
In the session I will, with nothing up my sleeves, convert a mobile web site into a PhoneGap app for both iOS and Android. I will take advantage of both device and HTML5 features. I will show solutions to the performance challenges PhoneGap apps sometimes suffer from. I will show to structure your web site to make it easy to convert to a device app. And finally I will show strategies around one of PhoneGaps biggest headaches - debugging. 
All of the source code and slides shown will be available for download after the session. If you would like to check out some PhoneGap tutorials before the session, please check out my blog:

Tags: WEB | phonegap | Mobile | HTML5
Interested: 86

Git & GitHub for Distributed Development

Level: 100
Timothy Strimple

Whether you want to contribute to an open source project, or your company has remote developers. Learn the why and how open source developers are embracing Git and GitHub for distributed development environments.

In this talk we'll learn about the following:

  • Basic Git Operations
  • Branching
  • Github Forks
  • Pull Requests

Learn more about Git and Git Branching!

Tags: vcs | github | git
Interested: 69

Building for the real-time web with Node.js

Timothy Strimple

As websites become more interactive, the demand for real-time updates increases. Learn why node.js is a good fit for the real-time web and how easy it is to get started with it. 
In this talk I will go over the following topics:
  • What are real-time applications?
  • Why is Node.js a good fit for soft real-time websites / applications?
  • Building out an example interactive website that everyone can interact with.

Tags: real-time | node.js | JavaScript
Interested: 85

Node.js: A gentle introduction

Level: 100
Timothy Strimple

Learn why someone would choose to use Node.js over competing platforms as well as how to get started on your own Node.js website.

In this talk I will go over the following topics:

  • What is node.js and what problems does it solve?
  • Why Javascript?
  • Performance and scalability with node.js
  • Hosting and deploying node.js applications 


Tags: node.js | JavaScript
Interested: 104

Building an IT support team people like!

Level: 100
Matt Penner

We will have a fun time using videos, comics, jokes, etc to learn how to create a team that loves to help its users.

We'll go over topics like:

  • The various reputations IT support departments have and why, sometimes, they are well deserved.
  • Creating a culture passionate about service
    • 1st hint: You're a service department.  If your users weren't there you wouldn't have a job.
    • 2nd hit: you're a serivce department. Your users' success should be directly and positively impacted as a result of your service, not despite it.
  • Learn how to communicate effectively in person. via email or support tickets (not geek speak or one word responses)
  • Create a reputation of professionalism and confidence
    • When your users call do they do it with dread or excitement and confidence that they'll get helped.
    • When your users hang up, read your email, see the support ticket closed, how do you want them to feel?
  • Working with other teams:
    • Your boss (and their boss) should be your greatest advocates
    • Developers are your best friends
    • Get involved in the decision process, not just dumped on when anther department expect you to fix something they already bought
  • Using effective tools to build a more efficient and dependable team:
    • Help desk ticketing systems
    • Inventory management (hint: this includes people too)
    • Protocols and workflow so things don't get "lost"

Be involved.  This is more of a discussion than me simply presenting to you.  Hang out, ask questions, give tips about things you see that work well or you'd like to see done.

Tags: Service | passion | leadership
Interested: 31

Customizing Orchard websites without limit

Level: 200
Li Chen | Christopher Chen

Orchard is an open source content management system (CMS) based on the modern ASP.NET MVC framework. It has a very clean architecture, and is extensible and developer-friendly.

In this presentation, we will discuss about customizing Orchard with WebMatrix and Visual Studio. We will start by discussing the architecture and the design tool. We will then drill down into creating custom theme and create custom modules.

This presentation requires familiarity with html and css. Some knowledge of javascript and C# is helpful.

Tags: Orchard | CMS
Interested: 25

Creating an Orchard website on Azure in 60 minutes

Level: 100
Li Chen | Christopher Chen

Orchard is an open source content management system (CMS) based on ASP.NET MVC technology. It is created by the ASP.NET team and other contributors from the ASP.NET community. Borrowing good ideas from WordPress, Orchard has a proven user interface design, modern architecture and is extremely developer friendly and capable. In this presentation, we will give a gentle introduction to the Orchard CMS. We will start with installing WebMatrix tool and downloading Orchard to create a local development environment. We will demonstrate the basic concept and workflow. We will show how to enhance the site by downloading themes and modules. At last, we will demonstrate how to publish an Orchard website to a free Azure website. It is possible to create a fully functional website running on Azure completely free in 60 minutes Time permitting, we will also demonstrate the workflow including git version control system and automatic Azure publishing from git. This presentation does not have any prerequisite. Familiarity with html is helpful but not required.

Tags: Orchard | CMS
Interested: 36

Beginning HTML5 Mobile Game Programming

Level: 100
Troy Miles

Beginning HTML5 Mobile Game Programming
HTML5 is the hottest buzzword on the web. It gives a lot of new features to websites, so many in fact that it makes it possible to create a fairly decent game in the browser without using a proprietary solution like Flash. Now, we aren't talking about a sequel to Call of Duty, but instead a casual game more in the vein of Bejeweled. When you combine HTML5 with jQuery Mobile you have a great platform for making games which can be played on all of the latest and greatest mobile devices.
In this session, I will present a simple HTML5 game engine, explain the various pieces of its architecture, and most of all explain how you can further expand it. All of the source code and slides shown will be available for download after the session. 
For more cool mobile tutorials, be sure to visit my blog:

Tags: Mobile | HTML5 | Games
Interested: 98

Getting Started with Ruby on Rails

Rob Davarnia

In this session I will cover the basics of Ruby on Rails framework. Join me for some fun RoR action!

Tags: web development | ruby on rails | Ruby | Rails | MySQL | MVC | Agile
Interested: 81

Rock Your Technical Interview (Part 2)

Level: 100
David McCarter

Have you ever not gotten a job due to not being prepared for the technical interview? I've have interviewed 100's of software developers and will share my knowledge on how to survive, what we look for and even divulge some of the secrets we use during the process. This session will include advice from hiring managers, recruiters and engineers that were recently hired at a new company!

Tags: Training | Microsoft .NET | Interview | Developers | coaching | Career counseling | career | .NET
Interested: 85

Rock Your Technical Interview (Part 1)

Level: 100
David McCarter

Have you ever not gotten a job due to not being prepared for the technical interview? Do you want a big raise?I've have interviewed 100's of software developers and will share my knowledge on how to survive, what we look for and even divulge some of the secrets we use during the process. This session will include advice from hiring managers, recruiters and engineers that were recently hired at a new company!

Tags: Training | Microsoft .NET | Interview | Developers | coaching | Career counseling | career | .NET
Interested: 96

Rock Your .NET Coding Standards (Part 1)

Level: 100
David McCarter

With lots of new material for 2013, this session will guide any level of programmer to greater productivity by providing the information needed to write consistent, maintainable code. Learn about common coding mistakes, code style, defensive programming and much, much more. Code tips are included to help you write better, error free applications. Lots of code examples in C# and VB.NET. This session is based off my latest book, David McCarter's .NET Coding Standards. Make sure to attend part 2.

Tags: VB.NET | Development | Code | C# | Best Practices | .NET
Interested: 64

Voice Enable Mobile and Web Applications

Level: 200
Wolf Paulus

You don’t have to put you ear on the ground, and still, can literally hear it coming. The broad introduction of Voice User Interfaces, allowing the interaction with mobile devices through voice, may become the biggest advancement in user interface design since the transition from text-based to graphical user interfaces.
We are taking a closer look at Android’s Speech-To-Text (STT) and Text-To-Speech (TTS) capabilities – and will develop and deploy three small apps, each a little more capable, and finally walk through the steps of building a voice controlled assistant.
Finally, we will turn our attention to the Browser and voice-enable Web applications.


Tags: TTS | Speech Synthesis | Speech Recognition | NLP | Mobile | HTML5 | ASR | Android | AIML
Interested: 45

Bootstrap your web site with Twitter Bootstrap

Level: 100
Scott Reed

There is so much to cover here, depending on time we will cover as many of these as possible: Navigational tabs, pills, and lists, Navbar, Button groups, Button dropdowns, Labels, Badges, Page headers and hero unit, Thumbnails, Alerts, Progress bars, Modals, Dropdowns, Tooltips, Popovers, Accordion, Carousel and Typeahead

Tags: HTML | CSS
Interested: 85

Simplify your services with OData

Level: 200
Scott Reed

If you are exposing data using WCF you have probably experienced a number of problems.  The problems boil down to creation and maintenance of large amounts of methods to support a large number of types or types of queries.  Using WCF Data Services and the OData protocol you can expose your entire data model (not your database) in a REST-based standard using one line of code.  In addition clients can craft custom queries against your model without having to modify services to create additional methods.

In the introductory talk, we will talk about how to expose a WCF Data Service using an Entity Data Model, how to customize the Atom feed that results, and how to consume that service from a .NET client.

Tags: WCF | OData | EF | .NET
Interested: 51

Build a WordPress Blog and Photo Gallery Site in 60 Minutes

Level: 100
Alice Pang

<p> WebMatrix makes it easy to create, customize, and publish your website. It&amp;rsquo;s an all-inclusive, simple web development tool from Microsoft that includes everything you need for website development. You can start with open source web applications, built-in web templates, or your own code. This talk will briefly introduce you to WebMatrix before diving into demos of how WebMatrix makes it easy for two potential users to create, customize, and publish a WordPress blog and a photo gallery site. You will learn how to use Razor syntax, set up membership, leverage useful helpers, and other tips and tricks to get these two different types of sites (one from the Web Gallery, one from a template) up and running.</p>

Tags: WordPress | Windows | WebMatrix | web development
Interested: 33

Build a cross-platform app for iOS, Android, and Windows by leveraging useful frameworks

Level: 100
Alice Pang

Do you have a great app idea and want to see that app on iOS, Android, and Windows quickly?  Learn how you can leverage frameworks such as Unity, Xamarin, and Scirra Construct2 to build a cross-platform app.  We will take a look at a few frameworks and walkthrough building an app and porting the app.


Tags: Xamarin | Windows Store | Windows Phone | windows 8 | Windows | Unity | Scirra | iOS | Construct2 | app development | Android
Interested: 101

What's new in ASP.NET 4.5

Level: 200
Adam Tuliper

Finally, the long awaited release of ASP.NET 4.5 is here. This session explores the great new features that have been added to in place update known as ASP.NET 4.5. Features explored will include the new request validation options, membership additions and changes including OpenId, OAuth, and Simple Membership, the Web API, MVC4 changes, and Web Forms additions. There will be some discussion of the Entity Framework features involved, since they directly relate to some of the new ASP.NET features as well. Web Forms developers suffering from MVC envy now have reason to celebrate with some great new Web Forms strongly typed control additions as well. We'll explore some new Visual Studio 2012 tooling features that really solidify Visual Studio as the best tool for ASP.NET development.

Interested: 72

Hack Proofing Your ASP.NET Web Forms and MVC Applications

Level: 200
Adam Tuliper

Developers are notoriously lax with including security in their applications. In an age of hacking, this talk aims to arm the developer with an arsenal of protections to use while developing. This presentation explores the most common attacks on web applications, how they work to exploit your app, and most importantly, how to protect against them. Techniques from the OWASP Top 10 list such as Cross Site Scripting, SQL Injection, Session Hijacking, and Cross Site Request Forgery will be covered. ASP.NET Web Forms and MVC will be covered, as both have pros and cons that will be explored. We will start with a 'broken' application and secure it throughout the presentation. Leave this presentation empowered to immediately start protecting your applications!

Tags: Web Forms | Security | MVC | ASP.NET
Interested: 78

Windows 8 (Windows Store) HTML/JavaScript Apps for the ASP.NET Developer

Level: 200
Adam Tuliper

As ASP.NET developers we've harnessed the power of HTML, JavaScript, libraries, controls, C#/VB.NET, and more to develop some of the finest applications. Armed with your existing HTML/JavaScript/CSS knowledge, know that your languages are first-class citizens in the Windows 8 world. This talk leads you through the similarities and differences between the platforms, controls, data binding, navigation, and more all to get you up and running quickly to develop your Windows 8 applications. Love your current language too? No problem, we'll cover how to include other managed code in an HTML/JS application as well. We'll talk about other framework integration too such as jQuery and Knockout. Wondering if the time is right for you to develop a Windows 8 app? Windows 8 currently has a reach of over 100 million installations - each with access to the Store application that is installed by default so let's get started now!

Tags: Windows Store Applications | windows 8 | JavaScript | HTML | ASP.NET
Interested: 43

25 Tips and Tricks for the ASP.NET Developer

Level: 200
Adam Tuliper

This session will cover at least 25 tips and tricks for the ASP.NET Developer. There are many ways to be a successful ASP.NET Developer and it no doubt involves knowing many separate tips and tricks about development, technology, and tools. If you have any interest in topics such as:

• Do you know how to deploy apps retail mode?

How about easily configuring SSL on your dev box?

• How do multiple ajax requests and the session object affect your application?

• How can I debug when I get the dreaded "?" icon on my breakpoints?

• How can I effectively cache in MVC and how can this help me replace the lack of Viewstate?

• How can I debug an error that is happening in production? Then this session is definitely for you! Help fill your head with useful tidbits to help you cruise in your next web project!

Interested: 97

Introduction to WCF Routing Service

Level: 200
Muhammad Nabeel

One of the amazing new feature of .NET 4.0 is addition of System.ServiceModel.Routing namespace (aka: routing service). Out of the box the routing service allows us to route messages from one endpoint to other endpoint(s). This is really nice in creating optimized architecture implementation. A good example of such implementation is a load-balancing application.


The purpose of this presentation is to introduce you to a method where you can not only route messages using the System.ServiceModel.Routing namespace but also modify its contents.

Tags: WCF Routing Service | WCF | Routing Service | Message Routing
Interested: 33

Best Practices for Agile Work Management

Level: 100
Michael Krasowski

Waterfall is Dead: Move On!  In today's world, the success of your career is hinged on the ability to adapt to your environment. Learn what the Agile Manifesto is and why it is important. Discover how to manage unpredictability through sprints. Understand the basics of an Agile Project Lifecycle. Increase work team productivity with timeboxing and stand-ups. Learn who owns the product backlog and how it gets worked.

Tag: Agile Project Management Planning
Interested: 80

Introduction to Graph Databases with Neo4j

Level: 100
Andrew Karcher

<p> <span style="color: rgb(102, 102, 102); font-size: 11px; line-height: 16.5px;">In this session we&#39;ll focus on the characteristics of graph databases for managing connected data and the kinds of problem domains for which they are best suited. To reinforce how useful graph databases are, we provide a rapid, code-focused introduction to Neo4j, a leading open-source graph database, covering the APIs for manipulating and traversing graphs. We&#39;ll then use this knowledge to explore an example domain, using Neo4j to infer knowledge from connected, semi-structured data.</span></p>

Tags: NoSQL | Graph Computing
Interested: 50

A Hands-On Introduction to Ruby

Level: 100
Zach Latta

A hands-on introduction to Ruby, the best programming language in the world. We'll be going over what Ruby is, what it's used for, and how to get started programming in it. Bring your laptops!

Tags: Ruby | Getting Started
Interested: 99

Introduction to Flask

German Eichberger

Microframeworks are the new black and Flask is one of the more popular ones. It's for Python and fun to use for REST applications.

We will explore how microframeworks differ and how to use flask in your (RESTful) projects.

Tags: Webservice | WEB | Python | Microframework
Interested: 21

Raising your first $1M from angel investors and VCs for your startup

Level: 100
Giang Biscan

This talk discusses how to understand the funding landscape to prepare your startup for fund raising.  

Giang Biscan is a serial entrepreneur and a supper connector, helping early staged technology startups raise seed and series A funding.    Her three successful exits include a technology that she invented for the minerals processing industry that was acquired by Ludowici in 2001, a technology transfer platform that was acquired by HITES Ltd in 2005 and an entertainment network that was acquired in 1998.  She has a PhD in Chemical Engineering from the University of Newcastle in Australia, and an MBA from UCLA.  Currently she is the Founder and CEO of, a boutique consulting firm that, in the last 3 years, have empowered many entrepreneurs through its fund raising and peer group programs.

Tags: Startup | fund raising
Interested: 71

IIS for Developers: Choose Your Own Adventure

Level: 300
Steve Evans

Are you tired of sessions that don’t quite cover what you want to learn about? Here is your chance to take part in customizing a session just for you. Attendees will have the opportunity to vote on a selection of IIS related topics and we will cover as many of the top picks as time allows.

Do you want to discuss site deployment, SSL, the art of application pools, site troubleshooting, performance optimizations, load balancers? . . . Trust me you will have a hard time choosing!
You rely on IIS to host your applications. Come learn what you need to know about IIS and how it can make your life easier.
Chapter 1: Site Creation; Never again type in a port number
Chapter 2: SSL Sites; Finally understand the requirements of SSL
Chapter 3: Site Settings; What did IIS do to your Web.config file?
Chapter 4: Application Pools; Learn the art of application pool config
Chapter 5: IIS Extensions; Add functionality to your web server
Chapter 6: Site Deployment; Death to FTP!
Chapter 7: Load Balancers; Grow your site
Chapter 8: Session State; Get your session state out of process and never fear the recycle again.
Chapter 9: Troubleshooting; Is it broken? Let’s fix it!
Chapter 10: Web Performance; Is it slow? Let’s make it go fast!
Chapter 11: What’s new in IIS 8; Another step forward
Chapter 12: IIS Express; IIS for laptops (and workstations)

Tag: IIS
Interested: 45

Getting Started with Raspberry Pi

Level: 100
Tom Paulus

The Raspberry Pi is a small credit-card sized linux computer. Developers and hobbyists around the world are creating miraculous applications and projects, and now you can join them. This year's presentation covers the first steps to using your Pi. From the basics, like burning your SD Card to creating a Weather Reporter, you will learn GPIO Basics and simple Python tools. Communication between other components using SPI or I2C will also be covered. It is recommended, but not required that you have a Raspberry Pi, some knowledge of Python and simple electronics.




Tags: Raspberry Pi | Linux | GPIO | Getting Started | Embedded
Interested: 116

New T-SQL Features in SQL 2012

Level: 100
Andrew Karcher

<p> &lt;p&gt; &lt;span style=&quot;color: rgb(39, 39, 39); font-family: Arial, helvetica, sans-serif; line-height: 20px;&quot;&gt;With SQL 2012 comes a slew of enhancements on the Programmability side. This session will explore some of those new features such as Analytic Functions, Over Clause (Window Functions), Date Functions, Conversion Functions, Sequence Objects, Paging and FileTables to name just a few. If you want to get a jump on those features you will be seeing in SQL 2012 this is the session for you.&lt;/span&gt;&lt;/p&gt;</p>

Tags: SQL Server | SQL 2012 | SQL
Interested: 73

Ten Groovy Little JavaScript Tips

Level: 100
Troy Miles

JavaScript, like it or not, has become the most important language on the web. Nearly every developer who builds Internet apps has to use it. But JavaScript can be tough to write and even tougher to read. So here are ten tips to help you get groovy with JavaScript.

Tags: JavaScript | HTML
Interested: 121

Agile Success Metrics!

Level: 100
Chris Lucian


How should non-technical manages gauge agile team success?

What metrics can we use to gauge the success of an Agile team?

Why are these metrics useful?
How do we use those metrics to guide a team to better results?
What actions can teams take to improve the teams results?
How should we prioritize these actions to get the maximum value out of our time?
Can we datamine to find this information?

Tags: Success | metrics | Agile
Interested: 59

Introduction to Amazon Web Services

Level: 100
Neil Aragon


Whether you need to deploy a web application to production, convey a proof-of-concept to an audience, or practice development skillsets on the latest server platform, working with EC2 and RDS may give you the technology you need to be up and running in a pinch.

In this session, we will discuss the setup of Amazon Web Services: Elastic Compute Cloud (EC2) and Relational Database Service (RDS). We will setup a simple ASPX web application on Windows Server 2012 in EC2 with SQL Server 2012 in RDS.

Tags: SQL | Cloud | AWS | ASPX | Amazon
Interested: 123

Clean Code III - Software Craftsmanship

Theo Jungeblut

Following the principles of software craftsmanship will allow you to end up with better maintainability and extensibility of your software and the success of the project in the end.

All 3 Clean Code presentations provide great value by themselves, but taken together are designed to offer a holistic approach to successful software creation.</p> <p> 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, seeing code in a holistic way. You will learn how to apply them by using an existing implementation as the starting point of the presentation. Finally, patterns &amp; practices benefits are explained.</p> <p> This presentation is based on C# and Visual Studio 2012. However, the demonstrated patterns and practice can be applied to every other programming language too.</p>

Tags: Software Craftsmanship | Clean Code
Interested: 155

Clean Code II - Cut your Dependencies with Dependency Injection

Theo Jungeblut

<p> &lt;p&gt; 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, seeing code in a holistic way. You will learn how to apply them by using an existing implementation as the starting point of the presentation. Finally, patterns &amp;amp; practices benefits are explained.&lt;/p&gt; &lt;p&gt; This presentation is based on C# and Visual Studio 2012. However, the demonstrated patterns and practice can be applied to every other programming language too.&lt;/p&gt;</p>

Tags: Maintainability | ioc | Dependency Injection | Decoupling | Clean Code
Interested: 169

Clean Code I – Design Patterns and Best Practices

Level: 100
Theo Jungeblut

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, seeing code in a holistic way. 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 2012. However, the demonstrated patterns and practice can be applied to every other programming language too.

Tags: Design Pattern | Clean Code | Best Practises
Interested: 194

Debugging, Troubleshooting & Monitoring Distributed Web & Cloud Applications

Level: 300
Theo Jungeblut

Within this session, we will explore different possibilities for collecting and analyzing the needed information to solve issues on modern distributed application and discuss the advantages and disadvantages of each approach like debugger, log files, performance counter and third party solutions. The focus of this session will be on Developer and DevOps needs, as increased release cycles and third party dependency more and more result in the need for troubleshooting also on production system, rather than in an isolated test environment.

This session requires a solid understanding of distributed applications and knowledge of SOA, but most principles also apply to and can be beneficial for more traditional application design approaches. The used code examples are in .NET but the shown principles generally apply to other languages, too, and shown software is often available for a variety of environments.

Tags: Troubleshooting | SOA | Monitoring | Distributed | devops | Debugging | Could
Interested: 50

Responsive Web Design, an Introduction Part 2

Mario Hernandez

Conitnuing where we left off in part one of this session, we will create a simple one page website.  See the example below for a sneak peak of what we will be builing.

Items to cover (completing pending topics from part 1):

  • Elements of RWD
  • Mobile First Approach
  • Third Party Libraries that simplify building a responsive website
  • Hands-on demo

You can view the slides for this presentation (subject to change). I've spoken about this topic to the San Diego .NET User Group:

You can also see the one-page website we will build in this session:


Tags: RWD | responsive web design | responsive | Mobile | media queries | CSS3
Interested: 134

Responsive Web Design, an Introduction Part 1

Level: 200
Mario Hernandez

In this introductory session we will cover what Responsive Web Design or RWD is all about.  We will discuss the elements of RWD and best practices involved in buiding a web application that not only looks great but works great on any devices including mobile devices.

Items to cover:

  • Elements of RWD
  • Mobile First Approach
  • Third Party Libraries that simplify building a responsive website
  • Hands-on demo

You can view the slides for this presentation (subject to change).  I've spoken about this topic to the San Diego .NET User Group:

You can also see the one-page website we will build in this session:


Tags: RWD | responsive web design | Mobile | media queries | grids | Design | CSS3
Interested: 143

Super-Charged Debugging for the New Developer

Level: 100
Jon Bachelor

You've officially leveled-up in the world of software development with Visual Studio, and you now find yourself working on projects that are infinitely larger and far more complex than anything you've worked on before. Time to beef up your debugging skills not only to debug, but sometimes just to learn the flow of a given process! Plain old break-points have always gotten you by, but now you quickly run into trickier situations that come close to making your head explode. Come and learn some new debugging tricks & tips to bring your debugging skills to new heights.

Tag: Debugging
Interested: 55

Discover SQL# (SQL CLR library)

Level: 100
David Sumlin

Quick overview of the SQL# CLR library and then we'll examine a few implementations of some of the functions that I've found useful. Some examples will include string manipulation, file handling, as well as some RegEx usage. There are over 225 procedures and functions, user defined aggregates, and user defined types ... and counting. Come explore some of the interesting problems that SQL# can solve. If you'd like to download an view the CLR library ahead of the presentation, you can get most of the CLR features for free at

Tags: SQL | CLR
Interested: 58

WordPress Workshop 101

Level: 100
Don Seidenspinner

WordPress is a very popular web tool for building and publishing blogs. Did you know you can build a full featured website, as well? Over 60 million websites use WordPress for eCommerce, club sites, and more. PayPal can be integrated into your subscription membership to monetize it. This WordPress Workshop level 101 provides what you need to get started building and monetizing your creativity!

Tags: workshop | | hands-on
Interested: 47

Agile Games: Games with Cards and Dice

Level: 100
Mike Clement

Play is a powerful method to learn! Come and play some simple agile games to explore the different values that are at the foundation of Agile and Lean development practices.

Tags: Software Craftsmanship | Lean | Agile Games | Agile
Interested: 54

Transformation Priority Premise: TDD Test Order Matters

Level: 300
Mike Clement

When coding using TDD, do you often run into a point when you have to “implement the whole thing”?  The sequence of tests that we write significantly impacts where are code ends up!  We’ll explore Uncle Bob’s Transformation Priority Premise, looking at the transformations that code goes through and how our tests can drive the code in different directions.

Tags: TDD | Software Craftsmanship
Interested: 29

Power of Patterns: Refactoring to (or away from) Patterns

Level: 200
Mike Clement

What is a design pattern? Why should you care? What it the power of design patterns? How do design patterns tie into object oriented programming? If I'm using objects in my code, isn't that object oriented programming? (The answer is not necessarily!) When should I use them?

Design Patterns are great but the temptation is to use Design Patterns as a golden hammer. This can lead to unnecessarily complicated, over-engineered code in an effort to be flexible and ready for the future. That sounds reasonable - if you happen to be a psychic. More commonly, you will refactor to a pattern when the code (that you’ve written simply and minimally) demands it.

We'll talk about why you should know common design patterns, why they are powerful, how they relate to object oriented principles, different composite refactorings that will move you to (and sometimes away) from patterns and the smells that help you know when to apply them.

Tags: Software Craftsmanship | Refactoring | Design Patterns
Interested: 112

10 Awesome SQL Tips

Level: 300
Ike Ellis

In this session we'll quickly go over our best tips on using SQL Server.  We'll show you shortcuts, tools, great practices, and hidden gems on how to manage SQL data.  We'll have a great tip for SQL Server Reporting Services, SQL Server Integration Services, SQL Server Performance Tuning, Architecture, Design, and Software Development.  Come prepared to share your own tips and be interactive.

Tags: SSRS | SSIS | SQL | Excel
Interested: 118

Continuous Integration for the Database

Level: 300
Ike Ellis

In this talk, we spend time introducing the key concepts and importance of continuous integration.  We then discuss why SQL databases are challenging in a CI environment and how to overcome those challenges.

Tags: SQL | Software Leadership | continuous integration
Interested: 83

(NEW)- 10 things Every Developer Must Know

Level: 200
Chander Dhall

There is a big difference between a coder, a developer and a
craftsman. How to get to the next level? This is an easy question with
a hard answer. In this talk of International acclaim, Chander Dhall talks about how to go to the next level
and primarily talks about at least 10 things every developer must

Tags: webdev | Developers | C#
Interested: 156

Windows Azure in real life

Level: 200
Robin Shahan

Come get an overview of the Windows Azure features and hear about my company's migration from hardware maintained in a hosted environment to a no-infrastructure shop with everything running in Windows Azure at 90% less cost. I'll also talk about some cool ways that we're using Azure Blob storage.

Tags: Cloud | Azure
Interested: 62

Put your website in the cloud

Level: 100
Robin Shahan

Windows Azure Web Sites are easy to deploy and maintain, and are not limited to .NET development. Come learn about WAWS using Visual Studio, and learn about the differences between this feature and the traditional PAAS web roles offered in Windows Azure.

Tag: Azure
Interested: 56

Intro To Not Sucking At Presentations

Matt Grommes

Giving good presentations is a skill that all programmers should have. Whether you're talking about something at your work or at a conference, this talk will go over some of the basics and some things to avoid. I'll also talk about why you should want to present, show some different types of presentations and give examples of how to apply the ideas.

Be warned: Once you get better at presenting, other people's terrible presentations will bug you. But luckily you'll have some tools to help them. :)

Tags: presenting | presentations | not sucking
Interested: 74

Android talks to .Net via ksoap2

Level: 100
Andrew Champagne

I'll go over how to setup the ksoap 2 library and get it to talk to a .Net Webservice which will in turn pull data from a MS SQL Server. I'll also go over common traps I've found myself in while using it and debugging techniques that I've found helpful. It's really great if you want to have a .Net website with an addon Android app.

Tags: Webservice | Android | .NET
Interested: 28

Moving Your Organization into the Fast Lane - Making Scrum Stick

Level: 200
Mike Vincent

Organizations today want to be more responsive to their marketplace opportunities, more productive and more efficient; they want to be agile. Many have implemented Scrum for improving software development but the rest of the enterprise remains stuck with old waterfall habits and management practices. Over time even the improvements in software development are compromised and everyone slides back into the old way of doing things.

This session discusses how to break from this old &amp;quot;organizational gravity&amp;quot; by embracing the concepts of Scrum at the organizational level to build toward the realization of a truly agile enterprise. An enterprise characterized by new levels of productivity, continuous innovation, a work force with elevated levels of sustained motivation and job satisfaction, and delighted customers on a continuous long term basis. I call it making Scrum stick.

Making Scrum stick is a big change of culture for most organizations. It requires adopting new ways of doing things and forgetting the old. It requires a new focus on leadership, the active commitment of the entire organization, a change of how we manage and treat people, and an emphasis on creation and satisfaction of customers.

Embrace Scrum for your whole organization; move into the fast lane. It&amp;rsquo;s hard work but immensely rewarding.

Tags: Scrum | organization change | motivation | managing people | leadership | delighting customers | culture change
Interested: 42

Managing Self-Organizing Teams - An Old School Management Dilemma

Level: 200
Mike Vincent

Two of the principles of the Agile Manifesto are Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done; and the best architectures, requirements, and designs emerge from self-organizing teams.

The Scrum Guide says “Scrum Teams are self-organizing and cross-functional. Self-organizing teams choose how best to accomplish their work, rather than being directed by others outside the team.”

The game has changed. So, how do you manage self-organizing teams? And, what do we do with traditional managers? That’s what this session is all about. We want our teams to be highly productive, to grow professionally, to enjoy their work and be in it for the long haul. All while being good organizational citizens and driving on the proper side of the road. We’ll cover a little management theory on motivation and maintaining a positive, healthy work environment and I’ll show you how to put it to work.

Get ready for some serious management re-factoring.

Tags: team | self-organization | Scrum Master | motivation | Management | leadership | coaching
Interested: 58

Moving Your Organization into the Fast Lane - Delighting Your Customers

Level: 200
Mike Vincent

Organizations today want to be more responsive to their marketplace opportunities, more productive and more efficient; they want to be agile. Many have implemented agile practices for improving software development. But if you want to move out of traffic and into the fast lane it requires leadership that emphasizes creating, satisfying and delighting customers every day.

This session focuses on leadership techniques for delighting your customers that you can take back and put to use.  You will learn how a culture of delighting customers is built around a work force characterized by high levels of productivity, continuous innovation, and elevated levels of sustained motivation and job satisfaction.

Your customers are your lifeblood; it’s not enough just to satisfy them. You need them sharing their delight with others, sharing opportunities with you, and coming back again and again.

Move into the fast lane! Focus your organization on delighting your customers on a continuous long-term basis. It’s hard work but immensely rewarding.

Tags: Scrum | organization change | motivation | managing people | leadership | delighting customers | culture change
Interested: 42

Best Practices for Estimating Projects

Level: 100
Michael Krasowski

Are you afraid of making estimates? You are not alone! Do you know why making quality estimates AND tracking actuals is so important? Can you really estimate how long a football game will be? Learn the importance of accurate estimating and how that skill will help you define and manage your customer’s expectations. Discover the difference between ‘ideal time’ and ‘elapsed time’ and why your estimates need to encompass both. Join others in learning the anatomy of an estimate and lean techniques to make your life easier. Come learn some great tips you can begin using your first day back on the job.

Tag: Project Management Estimation
Interested: 115

Best Practices for Requirements Gathering

Level: 100
Michael Krasowski

Have you wondered…why your applications just don’t seem to match your customer’s expectations? How do you manage the ‘moving target’ of requirements? Learn key, common sense, concepts to provide an improved foundation to your skill set. Today’s economic conditions have helped drive the need for new tools and methods for requirements gathering. Discover approaches to matching requirements and customer’s expectations. Understand the intricacies of balancing scope, schedule and budget. Learn how to balance the need for rigor and the need for speed and efficiency in gathering your requirements. Grasp how to embrace uncertainty that is inherent and inevitable in software development projects. These best practices presented to you will enable you to leverage what you learned at your first day back at the office.

Tag: Project Management Requirements
Interested: 116

Project Manager’s Survival Guide

Level: 100
Michael Krasowski

Are you having difficulty managing your projects? Are you about to enter the uncharted territory of project management? Do you know how to communicate effectively to your customer, teammates, and your management? Come early, sit close and get some common sense, experienced based tips and pointers on how to improve your skills.  Discover how to find the ‘right’ people for your team. Learn the practical elements of working with customers, people, technology, process, and “connecting” them successfully to be more effective at your job. You will leave with demonstrable actions that you can apply at your next day back at work.

Tag: Project Management
Interested: 63

From CodeMonkey to CEO: Breaking out of the cubicle farm

Level: 100

Time to make a career move? Afraid to make the jump into the deep end of the pool?  Looking for direction?  Want to create a new company?


Let's discuss your options.


Hate your job? This is a safe environment to talk out loud and hear from experiences that worked for others.

Tags: job search | counseling | career
Interested: 58

An Introduction to MVVM featuring Knockout JS

Daniel Lewis

What’s this?  Another acronym?  Well if you haven’t yet seen MVVM in action this will be a good class for you. 

In this class we will discuss what MVVM is, what it isn’t, and see it in action using Knockout JS.

We will be using ASP.NET MVC, the WEB API, Twitter’s Bootstrap, and of course Knockout JS

Tags: Web API | MVVM | Knockout JS
Interested: 122

NancyFX – A lightweight web framework you didn’t know you should be using.

Level: 100
Daniel Lewis

If you like MVC you’re going to love NancyFX.
In this presentation we will build a basic web application on the framework from the ground up showcasing many of the best features of the framework.

Based on the Ruby DSL Framework named Sinatra NancyFX is a lightweight framework that is easy to use, deploy, and extend.  Its main features are ease of use, small resource requirements, and support for extensibility.  

Tag: NancyFX
Interested: 54

F# for the C# developer

Mathias Brandewinder

Back in 2010, Visual Studio came with a new language on board: F#. Out of curiosity, I started playing with it, and got hooked. F# is a fantastic language - it mixes functional and Object Oriented approaches seamlessly, encourages writing bug-free code (it is virtually impossible to get a null exception...), comes with great features, and is incredibly productive. In this talk, I will give a intro to F# for C# developers, illustrated with live code samples, and discuss where it fits and how you can get started with it.

Tags: Functional | F# | C#
Interested: 57

Architecting for Multiple User Interfaces

Level: 200
Paul Sheriff

The techniques for building applications have changed dramatically in the last few years. Gone are the days of single-tier, battle-ship gray, boring user interfaces. Users demand that your applications (or portions) run on more than one device. This session will take you on a tour of how you should be architecting your application by breaking it up into services. You will learn how to create your business rules and data layer as a service. This seminar will assume you have some knowledge of .NET but have been developing applications the old way and you are now looking to see how to use WCF and the Model-View-View-Model (MVVM) design pattern to create applications that can be run one more than one user interface platform. This session has many demonstrations and you will be led step-by-step through the code. You will walk away with a sample set of services that run on Silverlight, Windows Forms, WPF, Windows Phone and ASP.NET.

Tag: Architecture
Interested: 92

Creating Collections of Entity Classes

Level: 200
Paul Sheriff

<p> &nbsp;You know should be creating collections of objects instead of using a Data Reader, a DataSet or a DataTable in your applications. The reasons for using collections of objects are many. You get strong typing, IntelliSense, compile-time errors instead of runtime and many other reasons. You can use LINQ to SQL or the Entity Framework to generate code that creates these collections of objects for you. However, Microsoft loves to abandon technologies every other year, so if you know how to build your own object collections using technology that is tried and true, then you are not relying on Microsoft staying consistent. Using ADO.NET for data access and building classes with properties and methods has not changed since .NET 1.0. In this seminar you will learn to use a DataTable to fill a collection of objects. You will then see how to use a DataReader to fill the same collection of objects. You will also see how to use LINQ to iterate over a DataTable to build your entity collection. Finally, you will learn the use of nullable and non-nullable data types and finally see how to use reflection to fill your collections.</p>

Tags: Entity | Collections
Interested: 68

Computing with Network/Graph Data

Steve Bearman | Nuri Halperin

More and more of our data is now structured with interrelationships as a network or graph: social networks, business rules, dependencies, knowledge, transportation, finance, communications, ...

We introduce network/graphical data, its features, how to represent it, and how to compute on it. As an example that you can adapt for your own software, we will develop a critical, but simple and practical algorithm that calculates a best path over relationships (Dijkstra's shortest path algorithm).

Tags: Shortest Path | Networks | Graphs | Graph Computing | C# | algorithms
Interested: 64

Building a simple Glass app with Node.js and the Mirror API

Level: 100
ben monro

This session will cover the following topics:

  • Using the googleapis in Node.js to interact with Glass.
  • Inserting Cards into the Glass timeline.
  • Adding a contact to Glass
  • Subscribing to events on Glass.
  • a Demo of Glass!

Tags: node.js | Mirror API | Glass
Interested: 83

For those about to Mock

Mathias Brandewinder

If you want to prove that a complex system works, a good place to start is to check that each piece is working right. Unit testing intends to do just that: take a unit of your code, and verify that it behaves properly. Unfortunately, in "real software", classes interact with other parts of the system, which makes testing in isolation difficult. Mocking is a technique designed to overcome that issue: replacing dependencies by Mocks, lightweight versions of the "real thing", allows you to validate the interactions of a class with its collaborators.

I will discuss reasons you should care about mocks, illustrate how you would go about addressing them by rolling your own mocks & stubs, and demonstrate free, open-source frameworks, Moq and NSubstitute, which greatly simplify the process. Mocks and Stubs can sound intimidating; the goal of this presentation is to demystify the topic and give you a clear understanding of what they are, where they can help you, and to give you a good quick-start so that you can productively use them in your own code.

Tags: Testing | TDD | Clean Code
Interested: 93

Writing Maintainable JavaScript

Level: 100
Paul Mendoza


Learn how to write JavaScript you and your coworkers will be happy to work in later. This is a topic for those who have done a little bit with JavaScript already. We’ll cover things such as null vs undefined, feature testing, design patterns, tricky gotchas of JavaScript and more.

JavaScript is becoming a more powerful and popular language every year. Not only is it the basis for the interesting interactions that happen on every web page but it will also be a major part of Windows 8 development. jQuery, MooTools and dojo have made JavaScript a popular platform and they solve part of the JavaScript problem but not all of it. Let’s learn how we can write better, easier to extend, easier to understand JavaScript code.

The first session will be going over the concepts with some code demos. This is a fast paced session that will be reinforced during the second session. The second session we will go through some bad JavaScript and figure out how to clean it up, make it maintainable and how to put it under unit test.

Tags: JavaScript | HTML5
Interested: 146

Learn the Lingo: Design Patterns

Level: 100
Jeremy Clark


You already use Design Patterns but probably don't know it. Observer, Adapter, Iterator, Proxy -- Learning the lingo allows you to better communicate your ideas with other developers. We'll take a look at several GoF patterns that we regularly use without realizing it. Don't know who the GoF is? Join us to find out.  No prior knowledge of design patterns is required (but some .NET experience will be helpful). Slides, Demo Code, and Walkthrough available here:

Tag: Design Patterns
Interested: 126

Clean Code: Homicidal Maniacs Read Code, Too

Level: 100
Jeremy Clark

There's no such thing as a write-once application. The world is constantly changing, and our code needs to change with it. We'll think in small pieces and take a look at some techniques to keep our code manageable and understandable. Think about the developer who will come after you. Now, imagine he's a homicidal maniac who knows where you live. Examples will be in C#, but the principles apply to pretty much every programming language.  Slides, Demo Code, and Walkthrough available here:


Tags: Clean Code | Agile
Interested: 110

T, Earl Grey, Hot: Generics in .NET

Level: 200
Jeremy Clark

Let the compiler work for you. Generics shift the burden of type-safety from the developer to the compiler. To understand Generics, we'll take a look at some .NET classes from the BCL (such as List), comparing the generic and non-generic versions. Then we'll add Generics to our own methods to add flexibility and type-safety.  We may even run into topics such as covariance and contravariance along the way.  No prior experience with generics is required, but knowing the basics of .NET programming will be helpful.  Slides, Demo Code, and Walkthrough available here:

Tag: Generics
Interested: 67

Dependency Injection: A Practical Introduction

Level: 200
Jeremy Clark

What is Dependency Injection? The answers to the question seem to cause more confusion than help. We'll take a look at what Dependency Injection (DI) is, when we should use it, and what design patterns we can use to help us implement it. Benefits range from extensibility to late binding to testability. We can implement DI with or without a container (such as Unity, Ninject, or StructureMap), but we'll see how a container can do a lot of the work for us. No prior experience with dependency injection is required, but knowing the basics of .NET programming will be helpful. &amp;nbsp;Slides, Demo Code, and Walkthrough available here:

Tags: Inversion of Control | Dependency Injection
Interested: 121

Creating HTML5 Pages Using Visual Studio LightSwitch

Level: 100
Michael Washington


The purpose is to demonstrate how LightSwitch allows you to create professional business applications that would take a developer days to create. With LightSwitch you can create such applications in under an hour.

You will learn:

  • How to set up and configure LightSwitch for web applications
  • How to read, write, update, and delete data


The Scenario

In this example, we will be tasked with producing an application that meets the following requirements for a order tracking system:

  • Products
    • Add Products
    • Edit Products
    • Delete Products
  • Orders
    • Add Orders
    • Edit Orders
      • Add Order Details
      • Edit Order Details
      • Delete Order Details
    • Delete Orders
  • Business Rules
    • Allow the current user to only see their orders
    • Show the number of orders for the current user
  • Features
    • Display the number of orders for a User



Live Demo: (use your username and password from


ComponentOne will raffle off a license to their Ultimate suite. Plus, plenty of additional swag will be available.



Michael Washington is the author of: Creating Web Pages Using the LightSwitch HTML Client In Visual Studio 2012


Tags: LightSwitch | HTML5 | ASP.NET
Interested: 84

Angular JS with ASP.NET MVC and WebAPI.

Level: 100
Hattan Shobokshi

In this talk we will look at Angular JS, a front end javascript framework and see how we can integrate angular into an ASP.NET MVC app. We’ll look at the various features of angular including support for data binding, client side routing, services, filters, dependency injection and testing. We will use WebAPI to persist data back to the server.

Tags: WebAPI | JavaScript | ASP.NET MVC
Interested: 87

Building a Business Application in ASP.NET MVC

Level: 200
John Kuhn

In this session, you will learn the alternatives available for building a line of business web application using ASP.NET MVC and see a working sample of a time tracking business application built on the ASP.NET MVC platform.

Takeaways: An understanding of the challenges inherent in developing business applications in ASP.NET MVC as well as approaches and alternatives for building business web applications on this platform.

Interested: 126

Getting started with TypeScript

Level: 100
Hattan Shobokshi

TypeScript is a language for application-scale JavaScript development. With TypeScript, you can use existing any JavaScript library, & be called from other JavaScript code. In this talk, we will look at TypeScript and many of its features including support for classes, inheritance, types and more. We will also look at installing and using TypeScript in Visual Studio.

Tags: TypeScript | JavaScript
Interested: 62

HTML5 Media APIs : Let’s build a camera web app in ASP.NET MVC!

Level: 200
Hattan Shobokshi

HTML5 gives front end developers many cool tools. We have native access to the camera, video and audio. I will show you how to play media files and how to capture input from a webcam. We will also look at the Canvas tag and learn to draw simple shapes and even video. We will host our camera app in an mvc application and allow users to save photos.

Interested: 77

10 Things I learned from building a Windows 8 App

Level: 200
Hattan Shobokshi

Lets look at some best practices for building real world Windows 8 apps. That includes using MVVM light to provide dependency injection & messaging. I’ll go over tips for using the app bar, toast notifications & the settings charm. I'll show you how to share data from your app via the share contract. We'll also look at responsive design, file picker, credential locker & facebook authentication.

Tag: windows 8
Interested: 71

Serialization and Formatting in .NET

Level: 200
John Kuhn

A lot of work in .NET gets done by converting objects into other formats in order to store (or transmit) the values and then convert back into an object later on.  This is known as serialization and deserialization of object state.  In this session, you will learn the options available for serialization, formatting and deserialization of objects in .NET, using in order to create SOAP, binary, JSON and XML representations of object state, and how you can customize objects to control what information is serialized and how it  is restored.

Takeaways: An understanding of the options for serialization and deserialization, and how to control the formatting of serialized objects using features in the System.Runtime.Serialization and System.Xml.Serialization namespace in .NET.

Tag: .NET Framework
Interested: 83

ASP.NET MVC - What a View!

Level: 300
Hattan Shobokshi | Ben Dornis

Let's take a detailed look at ASP.NET MVC View Engines. We'll see how the framework takes your model and builds a View that can be sent back to the client. We'll examine the two built in View Engines, the WebForms View Engine and Razor View Engine. We'll also look at open source view engines such as the Spark, NHaml and Parrot view engine. We'll show you how to build your own ViewEngine and Parrot creator Ben will give you a detailed look at the it's source code and give you tips on building your own View Engine. So come on over and enjoy the View! :)

Interested: 96

MongoDB first steps - Getting started by example

Level: 100
Nuri Halperin

MongoDB is a very prominent and popular NoSQL database. You may have heard about it, now you can see it in action!


Tags: NoSQL | Database
Interested: 88

Async your IIS app like a champ!

Level: 300
Nuri Halperin

When you want your site to perform under load, you should know how when and why async can help you. Doing it wrong can actually hurt your performance. We&#39;ll cover the simple facts and methods you must know in order to solve scalability problems in your application.

Tags: MVC | Async | ASP.NET
Interested: 65