<% ''' HJ, 02/28/06, Put this as per clients request #3818 dim lsHitBoxURL if instr(Request.ServerVariables("SCRIPT_NAME"),"e_") > 1 then lsHitBoxURL="a2z/exhibitor" else lsHitBoxURL="a2z/attendee" end if%>
Email this page Print this page Bookmark this page

Dev Connections

Dev Connections, the #1 independent conference covering all things developer, offers an array of sessions that will help you leverage development technologies such as HTML5, ASP.NET, Visual Studio, .NET Framework, and Windows Azure to the fullest within your organization.

Among the multiple sessions offered, you'll learn:

  • How to increase the performance of your ASP.NET applications
  • How to create effective Windows 8 applications
  • Practical tips and instructions for Visual Studio
  • How to leverage Windows Azure that will consume fewer resources and save costs
  • How to use ASP.NET MVC 4 and jQuery Mobile to build an optimized application for smartphones and tablet devices
  • From industry experts, who will be able to outline how you can utilize both Windows Communication Foundation and ASP.NET Web Forms technologies to save time and resources.

No matter what platform you develop for, there's something for everyone. You'll get face-to-face time with industry experts, who will be able to answer your questions directly. You'll also be able to network and interact with similar development professionals in the industry. And best of all, you'll walk away having the knowledge that will benefit yourself and your company.


Session Description Speaker Format
Dev Connections Keynote Miguel is CTO at Xamarin and responsible for their cross-platform mobile app development products, including Xamarin.iOS and Xamarin.Android. Miguel has directed the Mono project since its creation in 2001 and oversaw the launches of Mono's desktop, server, and mobile offerings at Novell from 2003-2011. Before Mono, he co-founded the GNOME project in 1997. In 1999, Miguel co-founded Ximian and worked on Gnumeric, and the Linux kernel. He received the Free Software Foundation 1999 Free Software Award and the MIT Technology Review Innovator of the Year Award in 1999, and he was named one of Time Magazine's 100 innovators for the new century in September 2000. Miguel de Icaza Keynote
Creating Highly Performant, Scalable Websites: From SPA to Backend Architectural Principles and patterns: SOLID principles, OWASP threats, Data Access patterns Quick 20 Year History of Web Site Architecture Review: Request/Response Architecture, HTTP Fundamentals, AJAX, HTML5, Mobile and Modern Browsers, Rising User Experience Expectations - Speed, Interactivity, Animations, etc. A Simple SPA - Introduce Concept of View Swapping Backend is important: Sql Modelling, Comparing No-Sql databases, Best practices for scalability Using a JavaScript Template to Generate Markup: Quick Intro to Using JavaScript Templates, A Dive into Handlebars, Retrieving JSON and Dynamically Create HTML, Stuffing Content in Storage: localStorage, IndexDB, Review How to Offload Markup to Storage, Use Markup & Templates On-Demand Leverage Storage to Minimize Network Traffic: Local data before AJAX call, eview the jQuery way, Review using reqwest (ajax micro library), Adding Offline Support Create an end to end SPA SEO: Tactics to Keep Search Engines Happy Chander Dhall & Chris Love Workshop
Architecting Device-driven Mobile Web Solutions Usually a solution is sought for a clear and well-defined problem. In mobile, instead, sometimes it seems that we’re looking for solutions without having first clarified what the problem is. Mobile, however, is a term that is quickly getting obsolete replaced by the term device. Any solution that involves mobile devices should be planned for a multitude of devices. This basic fact changes the approach to the design of the presentation layer (and to a good extent, also the application layer) putting the user experience on top of everything and, at least for new systems, taking precedence over domain and infrastructure. In this demo-laden workshop we’ll first focus on multi-view client-side aspects such as Responsive Web Design and related frameworks such as Bootstrap and AngularJS. Next, we identify possible pitfalls of RWD and ways to work around them. In doing so, we’ll introduce server-side feature detection and device capabilities. Dino Esposito Workshop
ASP.NET Web API and HTTP Fundamentals ASP.NET Web API is the de facto framework for building HTTP-based services in the .NET ecosystem. With its WCF and MVC lineage, Web API brings to the table better architecture, easier configuration, increased testability, and as always it is customizable from top to bottom. But to properly use Web API it is not enough to get familiar with its architecture and API, you also need to really understand what HTTP is all about. HTTP is the most common application layer protocol in the world, and yet, not many web developers are familiar with HTTP concepts such as of chunking, caching, and persisted connections. In this 1-day tutorial, we will focus on designing and implementing HTTP-based services with ASP.NET Web API, and learn how to better use it to implement the features provided by HTTP. Ido Flatow Workshop
Writing Next Generation JavaScript with TypeScript TypeScript evolved from JavaScript, so if you’re writing in JavaScript, TypeScript is worth checking out. Come to this session and learn all about the TypeScript language, from its object-oriented features to its ES6-style capabilities. You will learn how to use TypeScript’s language features, which make JavaScript an application-scale and more manageable language for building websites and apps. You will also learn how to leverage TypeScript in Visual Studio 2012. Rachel Appel Session
Creating Data-Driven Mobile Web Apps with ASP.NET MVC and jQuery Mobile If you need to create new apps or update existing apps, using jQuery Mobile is the easiest way to develop solutions that meet the needs of the ever-increasing audience of the mobile market. jQuery Mobile provides a lightweight, cross-platform framework for developing mobile websites and applications. In this session, you will learn what you need to get started writing data-driven mobile web applications in Visual Studio with ASP.NET Model-View-Controller (MVC). You will also learn how to integrate jQuery Mobile into current ASP.NET applications. Rachel Appel Session
Touch-Enabled and Data Connected Sites in Hours, Not Weeks Visual Studio LightSwitch has an amazing secret: You can build a data model (create new tables, connect to databases, or consume OLAP feeds) and bolt on a touch-enabled HTML client in a fraction of the time it would take developing from scratch. The simplest applications can take minutes and even the most complex applications can be done in days. You just give LightSwitch instructions, and it generates the code and even deploys the application for you. Of course, you can customize the application along the way. This session will show how LightSwitch works, how you can assemble a mobile optimized web application, and where the customization points are. Dan Beall Session
Unit Testing ASP.NET MVC ASP.NET Model-View-Controller (MVC) is designed for testability. However, the out-of-the-box templates and examples are not well suited for good unit testing. This session will show how to modify a simple MVC application in a way that makes it testable. Along the way, we'll visit such things as repositories, mocks, dependency injection, and more. Craig Berntson Session
Software Gardening Creating great software isn't like construction. It's more like gardening. In this session, you'll learn about important software gardening concepts such as soil, water, seeds, light, pruning, insecticide, weeding, and more. Along the way, you'll see processes, concepts, tools, and techniques that you can use in your software gardening project. By applying the ideas presented in this session, your software will be lush, green, and vibrant. This session has often been named "best of Code Camp" by attendees. Craig Berntson Session
Branches and Merges Are Bears, Oh My! One of the most important tools you need is a Version Control System (VCS). While it can be very useful, it can also be very frustrating. It's common to branch your code, but when it comes time to merge, it can be a big problem. In this session, you'll learn concepts to avoid branching in the first place, when branching makes sense, and how to branch effectively. Whether you use a centralized or distributed VCS, you'll see how to apply practices that can make a big impact in managing your VCS. Craig Berntson Session
Exploring Domain-Driven Design Implementation Patterns in .NET Domain-driven design (DDD) is a pattern language for effectively managing complexity in software solutions. DDD has evolved as an approach for conceptualizing a project's problem-space, but as software developers, we're also interested in translating the DDD patterns to code. If you've always wanted to know how to get started with using DDD in your projects, this is the talk for you. We'll begin with a brief introduction to DDD concepts, then explore various implementation patterns to translate DDD concepts into .NET code. We'll investigate implementations for repositories, specifications, entities, services, and other DDD constructs. We'll also discuss some considerations for how to structure projects and solutions to maximize flexibility and manage the evolution of a domain over time. This discussion will focus less on offering prescriptive guidance and more on helping the attendee understand some of the potential trade-offs that alternate implementation approaches can provide. Stephen Bohlen Session
Behavior-Driven Development: Turning User Stories into Executable Specifications You’re agile. You write user stories. Now what? The next step is often to turn those user stories into executable tests that can help you validate the proper behavior of your complex software systems. Behavior-driven development (BDD) is the engine that can help drive this process in your project. In this session, we'll begin with a series of simple user stories and demonstrate how the BDD process supports codifying them into a series of "executable specifications" that can be used to validate the proper functionality of a complex software system. At first, we'll work without the overhead of so-called "BDD Frameworks" to demonstrate the important BDD concepts, but then we'll investigate how and when you might use various "BDD Frameworks" to offload some of the repetitive work often involved in the BDD process. Attendees should expect to leave with a good understanding of the BDD conceptual process and some of the technical practices that can help support its successful adoption. Stephen Bohlen Session
CQRS: Crack for Architecture Addicts? Command-Query Responsibility Segregation (CQRS) represents a fundamental shift in how we look at architecting complex software solutions. It suggests that decomposition of complex systems into (relatively) narrowly focused isolated subsystems with carefully considered discrete responsibilities is the best way to manage complexity and achieve scalability. But CQRS has come under fire from its critics, who say that it introduces needless complexity to solve what are otherwise simple problems. Which is it? Perhaps both. In this session, we’ll take a look at understanding CQRS as a set of fundamental design principles and explore common implementation patterns used to translate these principles into practice. Along the way, we’ll demystify terms like event sourcing, read-models, command-handlers, write-only domain models, message buses, and more. We’ll explore all of these in the context of a working CQRS-based system that demonstrates these concepts in action. Stephen Bohlen Session
Get More Bang for Your Windows Azure Buck! Cloud computing offers the potential for cost reduction through its pay-as-you-go billing model. Instead of running as many instances as you need to handle peak loads, you run as many instances as you need to handle the current load. However, to reap this potential benefit, you need to closely monitor your application, and continuously rebalance capacity and load to maintain responsiveness while minimizing hosting costs. Doing so manually is very time-consuming. Thus, automation is key to unlock this cost benefit. This talk explores automatic, rule-based scaling of Windows Azure applications using the Windows Azure Autoscaling Application Block (WASABi). In this session, you'll learn what WASABi is, how to use it to address various scale patterns, and how to extend and customize its functionality. The session will also cover ways you can address load changes, such as automatically adding and removing instances and throttling applications' functionality. Shy Cohen Session
Grokking Caching Caching is a key technology for improving application performance and scale. It does so by taking the load off your database and moving frequently used data into a distributed memory storage that resides close to the application components accessing it. This session focuses on caching as a whole and Microsoft AppFabric Caching specifically. We will discuss the three types of data that exist in any type of system, how to best cache each one of them, how to manage concurrent cache access, various advanced topics, and even caching in the cloud. If you want to really, really understand caching and how to use it in the most optimal manner, this is the session for you! Shy Cohen Session
From Developer to Architect: 10 Things You Must Know The motivation for this talk lies in the speaker turning failed projects into successful legacies. In this talk, Chander Dhall discusses 10 things that make you a great architect. This talk covers UI patterns, architectural best practices, NoSQL databases, and scalable and easily maintainable solutions. It includes real-world case studies of successful projects by the speaker. The speaker has a known record of 100% successful projects as a consultant. Chander Dhall Session
Everything You Need to Know About Trends in Application Development In this talk, Chander Dhall will throw light on emerging trends in application development, both in the enterprise and the start-up world. He will compare web apps and native apps, compare SQL and NoSQL, and discuss the software metrics needed to create scalable, high-performing applications. By the end of this talk, you will know which emerging trends and technologies to focus on for a better developer career. Chander Dhall Session
Linq to Everything Language-Integrated Query (LINQ) is a great addition to a developer’s toolbox. It provides SQL-like syntax and vocabulary to each of the languages, which can be used to query data sources. LINQ can be used to query a wide array of data sources. The great thing is that the syntax does not change based on the data source. From XML to SharePoint to SQL Server, LINQ may be the last query language you need to learn. Matthew DiFranco Session
Asynchronous Programming with Async and Await Visual Studio 2012 and .NET 4.5 have added a simplified approach to asynchronous programming. Asynchronous programming can improve the responsiveness of your user interfaces and applications. In the past, asynchronous code was difficult to write and even more difficult to debug, but the new features provided make these tasks much easier. Matthew DiFranco Session
Build your first Angular Web Application Learning AngularJS can be confusing at first, but this session will help you understand the basics of AngularJS. AngularJS is one of the new and upcoming client-side frameworks and allows you tou use some of your favorite design patterns.Come and get an into to AngularJS and get up and running with your first application in no time. Matthew DiFranco Session
Building Games for Windows 8 – Using GameMaker Building games for phones and tablets is not only fun but also can mean big money. In this session, we will discuss how to build games for Windows 8 using GameMaker Studio. Specifically, we will discuss monetization strategies, game play scenarios, game types, and asset creation. Finally, you will build a sample game from scratch. Even if you have never come close to developing a game before, you will walk away from this session with the tools you need to jump into game development head first—and have fun doing it. Daniel Egan Session
Best Practices for Building Windows Phone and Windows 8 Applications In this app-to-app world, more and more people want to have their favorite application on both their phone and tablet. No matter whether they are identical apps or companion apps, it makes sense to be on both platforms. In this session, we will discuss the strategies needed to build both a Windows Phone app and a Windows 8 app. We will discuss the use of design patterns such as Model-View-ViewModel (MVVM) and the use of Portable Class Libraries (PCLs) to share the most amount of code between applications. Daniel Egan Session
Domain-Driven Design, CQRS, and Event-Sourcing for the Busy Developer The majority of enterprise systems are database driven, but the majority of architects would like to work with business and application logic at a higher level of abstraction. Domain-driven design (DDD) is an obvious methodology to consider, but is it the ideal choice for everybody? In this session, you'll learn about the benefits of DDD and explore Command-Query Responsibility Segregation (CQRS), a variation of DDD. CQRS uses distinct models for commands, queries, and event-sourcing—one of the biggest changes in modeling in recent years. Dino Esposito Session
Do’s and Dont's of Software Projects Software is complex because it's called to model the complexity of real-world processes. In addition, inconsistent requirements, pet technologies, and methodologies that never make the last mile help prepare the ground for software disasters. This session examines the mechanics of software projects and patterns that may prevent a system from growing in an uncontrolled fashion. As a developer, you'll likely recognize common patterns that you've seen and learn ways to smooth their otherwise deep impact. Dino Esposito Session
Fast Facts of Social Network Programming Social networks like Twitter, Facebook, and LinkedIn have long since become part of our lives. The level of integration between general-purpose software applications and social networks is, however, surprisingly low. Twitter and Facebook offer widgets to integrate basic post and like capabilities in a website, but what about a desktop application? And what about gaining total control over the post mechanism and make it happen automatically and programmatically?In this talk, we'll first look at basic HTML-focused ways of adding Twitter and Facebook functions to a website. Then, we'll look into the Twitter and Facebook SDK to see how to authenticate and post on behalf of an agreeable user from any kind of .NET application. Dino Esposito Session
Creating Data-Driven HTML5 Applications HTML is the markup language that every web developer uses in order to structure and present content on the Internet. HTML5 is the standard that is currently being shaped and developed. It extends and improves the HTML4 standard, taking it to the next level with support for multimedia, communication, semantics, and more. In this session, we will dive deep into the new storage options that HTML5 brings and how to use them. The session will discuss the Web Storage, IndexedDB and Application Cache (AppCache) APIs. Gil Fink Session
Building End-to-End Web Apps Using TypeScript Creating cross-platform, application-scale JavaScript code that runs in any browser or in any host is very hard. TypeScript is a programming language that changes that situation. In this session, you will get to know the TypeScript language. You will also learn how to build a client-oriented web application using the language. Gil Fink Session
jQuery Fundamentals jQuery is a cross-browser JavaScript library that helps web developers write less and do more with JavaScript. It simplifies HTML document traversing, event handling, animating, and Ajax interactions for rapid web development. In this one-day tutorial, you will learn how to use the jQuery library to create better Rich Internet Applications (RIAs). Gil Fink Session
Automating Windows Azure from the Command Line Today, unattended installation is a necessary part of any application deployment strategy. So why do we keep using the graphical user interface of the Windows Azure portal and Visual Studio to create our servers and deploy our applications?In this session, we will see how to automate Windows Azure Cloud Services, websites, virtual machines, and more. We will explore how to do this in Windows and Linux using various command-line and PowerShell tools. Ido Flatow Session
Caching in Azure: There’s More to That Than Azure Caching When you scale your applications, distributed cache is a must-have tool. Windows Azure Caching is the newest dedicated distributed cache solution for Azure, but it’s not the only option. In this session, we will explore the caching options available in Windows Azure, including some non-Microsoft solutions, such as Memcached and Redis. Ido Flatow Session
Debugging the Web with Fiddler Every web developer needs to see what goes on "in the wire," whether it is a jQuery call from JavaScript, a Windows Communication Foundation (WCF) service call from a client app, or a simple GET request for a web page. With Fiddler, the most famous HTTP sniffer, this is simple enough to do. Fiddler is more than just a sniffer. With Fiddler you can intercept, alter, record messages, and even write your own message visualizer. In this session, we will learn how to use Fiddler from bottom to top to debug, test, and improve web applications. Ido Flatow Session
IIS for Developers Developers rely on IIS to host their applications, but for years it was considered the IT department's domain and they weren’t allowed near it. But ever since IIS 7 introduced new architectural changes, more control has been delegated to the developers.In this session, we will learn how IIS 8 works, how to deploy applications to IIS, how to configure it for better performance, and how to use it to debug applications. Ido Flatow Session
Doing It Right: Continuous Delivery Doesn't Have to Suck One of the main tenets of agile development is to deliver business value to the production environment early and often. That's easy enough if you are delivering one small web app, but what if your application is composed of several web apps across multiple tiers with a large database and maybe even a few Windows services and scheduled tasks? Now you need a deployment system that is built to scale and allows you to automate all of these tasks to achieve consistency in your deployments. In this talk, I will show you how to deploy a complex application to multiple environments with just the click of a button using TeamCity and Octopus Deploy. Jeff French Session
Building a Windows 8 App from Scratch See how to build your first Windows 8 app. We will use what I learned to create apps: ".NET Gurus Can Cook," which contains recipes from famous folks in the software industry such as Scott Hanselman and Mary Jo Foley. Join ComponentOne developer evangelist and former Microsoft developer evangelist Russ Fustino in this session and learn the new programming paradigm for creating Windows 8 style apps. You will see how to build an application that incorporates many of the key characteristics of a great Windows 8 style app. Russell Fustino Session
Git for Visual Studio Developers You've heard all the hype about Git and know a lot of people who are using it, but as a Visual Studio user, you've never worked with a distributed version control system like Git. This session will cover when to use Git, when to use Team Foundation Server (TFS), and when to use a hybrid. It will also cover how to get started with Git, how to set up a repository, and the tools that are available to you. Esteban Garcia Session
From Manual Testing to Automation with Visual Studio ALM Microsoft Test Manager helps testers define and execute system test cases. These tests can be executed as exploratory and scripted test cases, and you can use action recording to manually replay test cases in the future. But it doesn’t stop there! Coded UI Tests can help your teams leverage manual test cases by automating them. They can then be executed as part of your builds.In the session, we'll cover how to:• Create a test plan and test cases• Create an action recording for a test case• Convert a test case recording into a Coded UI Test• Add assertions to the Coded UI Test (associate the Coded UI Test to a test case in Microsoft Test Manager)• Execute the test cases automatically Esteban Garcia Session
New Features in Visual Studio 2013 and TFS 2013 Portfolio Management Git integration with on-premises TFS New Test Management features Revamped Team Explorer Coding Indicators in Visual Studio: Method dependencies, unit Test information, and more Cloud Load Testing New Release functionality Team Room Esteban Garcia Session
Strategies for Refactoring and Testing Legacy Code Many developers cringe at the thought of inheriting and maintaining someone else's code base, particularly if that code base consists of large, complex classes and methods with little separation of concerns. It can be difficult to apply the principles of clean code and to write effective unit tests when you inherit code that is difficult to test. In this session, I will show you strategies for working with, maintaining, testing, and refactoring legacy code. You will learn how to explore a complex code base and how to refactor it in order to make it more maintainable and testable. David Giard Session
Connecting the Dots: Using HTML5, jQuery, and Web API Together Today, users expect more out of web applications than ever before. They expect your web applications to be as rich and interactive as native applications. In this session, I will demonstrate how to use Web API to create RESTful web services; to call those services from client-side code with jQuery; and tie it together with HTML5.  You will learn how to use the tools for building robust, interactive applications that run in a browser. David Giard Session
Advanced Debugging with WinDbg and SOS Visual Studio has an incredible debugger, but problems encountered in the production environment and exceptionally tough bugs still warrant the use of WinDbg and SOS in all their glory. In this session, you'll see how to dissect memory leaks with SOS and CLR Profiler, how to solve deadlocks with wait chain traversal and SOSEX, and how to immediately pinpoint application crashes from dump files. Sasha Goldshtein Session
Task and Data Parallelism: Real-World Examples Many developers have seen the Task Parallel Library APIs for concurrent applications, but have only played around with toy examples. In this session, you'll see how to extract concurrency and parallelism from seemingly impossible situations, how to gain scalability from lock-free code, and how to analyze real-world parallel applications with profilers to see the precise benefits gained from parallelization. Sasha Goldshtein Session
.NET Garbage Collection Performance Tips The .NET garbage collector is probably the most complex part of the CLR, which explains why there are so many myths and partial truths about its internals and performance characteristics. In this session, I'll unveil some of this complexity and provide concise, specific tips that application developers can use to improve garbage collection performance by an order of magnitude. I'll also discuss generations, GC flavors, finalization, GC segments, and virtual memory. Sasha Goldshtein Session
How to (Remote) Control Office 365 with Windows Azure With the new version of Office 365, developers have new possibilities for integration and automation. Companies are able to automate business processes with Office 365 APIs and PowerShell. They are able to control the cloud as they wish.In this session, we will show you a demo scenario in which we automate Office 365 with Windows Azure. You can see how to control and automate with the magic of jQuery, SignalR, Snowmaker, Exchange Web Services, PowerShell, Windows Azure Worker and Web roles, Windows Azure Active Directory, .NET 4.0, Razor, and Visual Studio 2012. Martina Grom & Toni Pohl Session
Using Async in Your Mobile Apps C# 5 added first-class support for asynchronicity in the language through the introduction of the async and await keywords. A powerful and brilliantly simple language tool, async makes it easy to write responsive user interfaces on mobile applications, which in turn, makes for delighted users. Async also makes complex workflows with error handling easier to write. This translates into proper error messages and proper program recovery. Finally, async eliminates bugs from your code by letting the compiler do the work for you. As a result, you can enjoy your work and focus on what really matters in your application. This session will show you how to get the most out of your apps by adding a little async. Joseph Hill Session
A .NET Developer’s Guide to Mobile Apps The landscape for Visual Studio developers is changing rapidly. If you haven't been asked to write a mobile app yet, you soon will be. This session will tell you what steps you can take to begin making the move to mobile apps, regardless of whether you'll be developing for Windows Store, Windows Phone, iOS, or Android. This session will also give you the tools to assess your current code base, arm you with strategies to prepare your existing .NET code base for mobilization, and help you start writing mobile-ready C# today. Joseph Hill Session
Cloud Data for the Everyday Developer To most developers, the database is a black box phenomenon that few dare to explore. As cloud computing becomes more popular and cloud-based solutions the norm rather than the fringe, the need to understand the different data services is more critical to application developers. This FUN demo-filled session will introduce and uncover the Windows Azure data “black box” by discussing the PaaS data services available and how your applications can easily and efficiently leverage these services. We'll begin by looking at a Windows Azure SQL database, then look at the details of Microsoft’s NoSql data store services and Windows Azure Table and Blob storage. We'll look at how these data services can ease some of the storage burdens many organizations face. We’ll cap the session off by looking at each of these in terms of performance and scalability, and how these offerings can be used together to create highly scalable cloud-based solutions. In essence, we'll have a performance throwdown! Scott Klein Session
Building Solutions in the Cloud with Apps for Office The Apps for Office platform lets you create engaging new consumer and enterprise experiences running within supported Office 2013 applications by using the power of the web and standard web technologies like HTML5, XML, CSS3, JavaScript, and Representational State Transfer (REST) APIs. An app is basically a web page that is hosted inside an Office client application, which can extend the functionality of a document, spreadsheet, email message, meeting request, or appointment. Apps can run in multiple environments and clients, including rich Office desktop clients, Office Web Apps, and mobile browsers. They can run on-premises and in the cloud. This session will provide an overview of the developer tools and resources for building apps for Office. It will also include demonstrations on how to build task pane and mail apps using both Visual Studio 2012 and the Napa browser tool. Eric Legault Session
Developing Professional Solutions for Office 2013 and Outlook With an install base of 500 million users, Microsoft Office is a well-established productivity and collaboration platform embraced by enterprises across the globe. Developing solutions for Office is a continuously changing story, and this session will review the extensibility landscape for all versions of Office using native Microsoft tools as well as professional developer components from other providers. Content will focus on providing the developer with an understanding of the capabilities of the platform and when to use each technology. Part of the presentation will highlight building Outlook solutions and teaching tips, tricks and best practices as learned by someone with over a decade of experience in the field. Eric Legault Session
Doing Modern Web in the Enterprise HTML5, touch devices, and JavaScript have radically changed the enterprise application development game. No longer can development teams treat the user experience as second or third fiddle. The bar has been raised for performance, interactions, and demand for mobile first solutions.These are all good things, as they give developers a first-class context to create web clients that can surpass users' expectations while making the code scalable, maintainable, and testable. Problems persist as developers continue to apply yesterday's development techniques to these modern applications.This session will demonstrate how to structure extensible, scalable, and maintainable modern enterprise applications. We will cover various HTML5 features to enhance data entry, animations, and continuous communications. We will also review project architecture and how to properly use good JavaScript coding techniques to create these rich line-of-business experiences. Chris Love Session
Web Performance Optimization for Modern Web Applications Users crave a great experience with any application. The web is no different. Slow website experiences not only cost you search engine placement but also cut into your profitability. As we dive deeper and deeper into richer and richer web client experiences, the need to ensure performance becomes more important. The 14 points originally provided by Steve Souders' research several years ago are just the starting point. Today there is so much more to consider. How do we manage data, handle markups, reduce data usage to the bare minimum, work offline, and provide rich animations and other moments of user delight? I will demonstrate how little things can add up to mean a lot, show you how to test and debug performance bugs, and leave you with some tools and techniques to make you look like a hero to your company’s CFO! Chris Love Session
Debugging and Testing JavaScript in Today's Browsers Web applications have gotten complicated lately. Advances in JavaScript engines, HTML5, and CSS3 support mean that we can build some extremely impressive client-side web applications. In the past, one thing that has held client-side web development back was lack of development and testing tools. No longer is that an issue, as all modern browsers support a rich set of debugging tools. These tools go way beyond console.log or even setting a break point. Memory profiling, waterfall charts, and API emulations are just some of the common features. JavaScript unit testing frameworks have also advanced to a level that makes it easy for developers to build a strong set of tests. This session will review various browser developer tools and testing frameworks so attendees can start making better web applications. Chris Love Session
Developing Neural Networks with Visual Studio Neural networks are powerful but complex programs that can analyze data to make predictions. For example, they can be used to examine NFL football data to predict the winner of an upcoming game and to investigate loan applicants' financial data to predict whether a loan should be approved. Although there are existing neural network tools, these tools can be difficult to integrate into a software system, are often impossible to customize, and may have hidden legal issues. In this brief and informal session, Dr. James McCaffrey from Microsoft Research in Redmond, Washington, will explain exactly what neural networks are and how to code them using C# and Visual Studio. You will leave this session with the resources to begin creating your own neural network programs. James McCaffrey Session
Introduction to iPhone Programming with C#, .NET, and Xamarin.iOS This session will introduce developers to programming the iPhone and iPad with Xamarin.iOS. Xamarin.iOS allows a developer to natively target iOS with C# and .NET—tools that developers already know. In this session, developers will learn how to:• Create an application that targets the iPhone.• Implement some features found in iPhone applications. These features include Model-View-Controller (MVC) in iOS, common user controls, mapping and location, and other iOS services.• Share code between the iPhone, Android, and Windows development so that developers only have to write code once.Attendees will be able to use the information from this talk to immediately start developing applications for the iPhone. Wally McClure Session
Introduction to Android Programming with C#, .NET, and Xamarin.Android This session will introduce developers to programming Android with Xamarin.Android. Xamarin.Android allows a developer to natively target Android with C# and .NET—tools that developers already know. In this session, developers will learn how to: • Create an application that targets Android.• Use the Xamarin Designer for Android to quickly build a user interface.• Implement some features found in Android applications. These features include Model-View-Controller (MVC) in Android, common user controls, mapping and location, and other Android services.• Share code between the iPhone, Android, and Windows development so that developers only have to write code once. Attendees will be able to use the information from this talk to immediately start developing applications for Android. Wally McClure Session
Introduction to Mobile Web with HTML5 Mobile development is a hot item. Customers are buying iPhones, iPads, Android devices, and many other mobile computing devices at an ever-increasing record pace. Devices based on iOS and Android constitute more than 90% of the marketplace. RIM continues to be dominant in the business area across the world. With Windows Phone, Nokia will grow on a worldwide basis. At the same time, web development is clearly a tremendous driver of applications, both on the public Internet and on private networks. How can developers target these various mobile platforms with web technologies? Developers can write web applications that take advantage of each mobile platform, but that is a lot of work. This session will provide an overview of mobile web development with HTML5 and ASP.NET. Wally McClure Session
Essential Typescript In this session we walk through the Typescript language constructs from classes and namespaces all the way to delegates and even the process for creating Tyepscript declaration files. The session kicks off with an understanding of "Why Typescript" and where it fits into the world of web development. Finally, the session closes with a how to presentation on creating a websites using Typescript, and the corresponding Visual Studio solution structure - including a library project, the production website, and the corresponding test projects. Attend this session to learn all that Typescript brings to Javascript development while still allowing for cross platform deployment. Mark Michaelis Session
Unit Testing Web Development When it comes to testing, Web Development is fraught with challenges whether it be from variations in browser behavior, the lack of compilation on JavaScript, or the traditional coupling between the UI and the code. In this session we walk through the complexities surrounding the testing of web projects and cover how to overcome these. This includes leveraging everything from source code analysis and JavaScript unit testing to UI and performance testing. Don't miss this session to learn a multitude ways to significantly improve the quality of your web development. Mark Michaelis Session
Customizing the SharePoint 2013 user interface with JavaScript Developers often have a need to amend the HTML rendering of SharePoint, especially around lists and list forms, but in previous versions of SharePoint, this was not always easy. Many developers resorted to using JavaScript to manipulate the page after it had loaded, even though this was potentially unreliable and unsupported. SharePoint 2013 solves this problem by providing the ability to specify a JavaScript "display template" for several user interface elements. This session examines key developer scenarios, such as implementing custom rendering for SharePoint lists (including conditional formatting for fields), customizing the display of the Content Search web part, and providing an enhanced search "hover panel" for specific items. Come and learn how to transform the SharePoint interface the supported way! Chris O'Brien Session
JavaScript for Windows 8 Developers One of the nice things about Windows 8 development is that you can leverage existing JavaScript skills. But how does JavaScript fit into the Windows 8 application space? What is WinJS? Can you use other frameworks like Knockout or jQuery? In this session, I'll cover the basics of what a Windows 8 HTML/JavaScript/CSS application looks like and how JavaScript fits in. I'll also cover how you can use JavaScript to build your own Windows 8 applications. John Petersen Session
JavaScript Testing - An Introduction Over half the JavaScript code written today suffers from two problems: 1) It's not testable, and 2) even if it's testable, it's not tested. In many languages, you can control the client. That's often not the case with JavaScript. Your JavaScript code is affected by the browser, other JavaScript libraries, and other things. In this session, I'll walk you through the basics of how to get started with JavaScript testing. We'll examine how asserts work. We'll also examine how to create a test framework and how to use open-source libraries like QUnit. John Petersen Session
Building Cross-Platform Mobile Applications with PhoneGap, Part 1 Would you like to know how to build cross-platform mobile applications using only JavaScript, CSS, and HTML? Look no further! This double-sized session will demonstrate how to build an application for iOS, Android, and Windows RT using PhoneGap. In this session, you will learn:• What PhoneGap is• About the power of PhoneGap and when you'd want to use it• How to build an application using a common code base• How to configure an application to call Representational State Transfer (REST) services• About the idiosyncrasies in building asynchronous JavaScript applications• Techniques for using local storage and other mobile features• How to deploy PhoneGap applications. Rod Poddock Session
Building Cross-Platform Mobile Applications with PhoneGap, Part 2 Would you like to know how to build cross-platform mobile applications using only JavaScript, CSS, and HTML? Look no further! This double-sized session will demonstrate how to build an application for iOS, Android, and Windows RT using PhoneGap. In this session, you will learn:• What PhoneGap is• About the power of PhoneGap and when you'd want to use it• How to build an application using a common code base• How to configure an application to call Representational State Transfer (REST) services• About the idiosyncrasies in building asynchronous JavaScript applications• Techniques for using local storage and other mobile features• How to deploy PhoneGap applications. Rod Poddock Session
Developing with the SharePoint 2013 App Model SharePoint 2013 introduces a new development model, and chances are you have questions. Developing with this new model is a paradigm shift from typical SharePoint development. You'll learn about the available tools to develop apps and how to get started. We'll talk about the three hosting models available and when you should use each one. We'll cover how to do common tasks such as interacting with lists and search using Representational State Transfer (REST) and the client-side object model (CSOM). You'll also learn when to use the App Model and when development tasks are more suitable for full trust solutions. Finally, we'll cover some of the aspects of how you can publish your own apps to the Office Store. If you want to get started with app development but don't know where to start, this talk is for you. Corey Roth Session
Creating Line-of-Business Apps in HTML5 and MVC/Web API In this session, you’ll learn to use some of the latest HTML5 and ASP.NET APIs to create an application that includes many of the cross-cutting concerns important to a typical line-of-business application. During the dissection, you’ll learn to build a Bootstrap-based HTML5 offline application that is supported by an ASP.NET Model-View-Controller (MVC)/Web API/Entity Framework Code-First backend, which enforces security, handles exceptions, and applies validation on the client and server. If you’re building web apps for businesses, this session is for you. Craig Shoemaker Session
Everyday Bootstrap Everyone seems to be talking about Bootstrap, the flexible and responsive front-end framework developed at Twitter. In this session, you’ll get a deep-dive introduction to Bootstrap. You'll learn not only how to use the framework to help quickly build well-structured, beautiful, and responsive layouts, but also how it can help solve everyday problems found in most web applications. Beyond Bootstrap, you’ll learn about the ecosystem of custom layouts and resources available to make the framework work well for you. Craig Shoemaker Session
Simplify Your API: Creating Maintainable and Discoverable Code Developers don't read documentation. This is a fact. It is also a fact that an API that depends on its documentation to get developers to understand and discover its features is at a huge disadvantage in the marketplace. Fortunately, there are some simple, easy-to-use mechanisms for wrapping complex APIs and making their functionality both easy to use and highly discoverable. Imagine being able to use tools like IntelliSense that the Visual Studio IDE already provides as a way to expose the functionality of your service or library. In this session, we will build a fluent Domain Specific Language interface over an existing API to create an interface that is easy to use and discoverable through IntelliSense. Barry Stahl Session
Practical Web Application Security and OWASP Top 10 with ASP.NET MVC This session is a hands-on introduction to web application security threats using the OWASP Top 10 list of potential security flaws. Focusing on the Microsoft platform with examples in ASP.NET and ASP.NET Model-View-Controller (MVC), we will go over some of the common techniques for writing secure code in the light of the OWASP Top 10 list. In this code-centric talk, we will discuss the security features built into ASP.NET and MVC (e.g., cross-site request forgery tokens, secure cookies) and how to leverage them to write secure code. The web application security risks that will be covered in this presentation include injection flaws, cross-site scripting, broken authentication and session management, insecure direct object references, cross-site request forgery, security misconfiguration, insecure cryptographic storage, failure to restrict URL access, insufficient transport layer protection, and invalidated redirects and forwards. Adnan Masood Session
Things Every Developer Must Know About HTTP HTTP is by far the most common application layer protocol in the world. You have been using it in your applications for as long as you can remember. But do you know how it really works? Have you ever wondered what is that “persisted-connection: keep-alive” thingy you keep seeing in fiddler? How HTTP caches really work? What the heck is HTTP Chunked transfer and what is it good for? In this session we will take a look at some of HTTP’s hidden gems and see how we can unleash them to enhance our HTTP based applications. Yaniv Rodenski Session
Introduction to .NET Web Development on Azure This session will cover .NET web development on Windows Azure, focusing primarily on Windows Azure websites. The talk will cover the capabilities the Azure website platform and its architecture. It will also cover tools (Visual Studio and command-line tools) that the platform offers developers for publishing, troubleshooting, and maintaining their applications. Other compute options, such as Azure Cloud Services and Azure IAAS, will also be discussed. Saurabh Pant Session
Microsoft ASP.NET, Web, and Cloud Tools Preview ASP.NET and Visual Studio 2012.2 include some amazing new tooling enhancements for HTML5, CSS3, and JavaScript. We're marching forward with even more great stuff. There's powerful features like Model Binding + Friendly URLs. ASP.NET Web Forms allows you to build an application with all the bells and whistles of an MVC 4 application with all the productivity of Web Forms. ASP.NET Web Forms are also "DRYer" than ever with Models + Model Validation + Model Binding + Clean URLs + Mobile support. ASP.NET Web Pages along with ASP.NET Web API plus HTML5, JavaScript, and modern development techniques makes development fun again. Join Saurabh as he shows you how it works together and where we're going tomorrow. Saurabh Pant Session
Microsoft ASP.NET SignalR: The Real-Time Web Made Simple SignalR is one of the latest components of the ASP.NET runtime, but it can do a lot more than just web. Come learn how you can build a real-time web application with minimal heavy lifting, without needing to learn another large framework. Then, take those lessons and use nearly identical syntax to give Modern Apps, Windows Azure Worker Roles running in the cloud, and other types of applications real-time HTTP functionality. The SignalR abstraction is a shift in how you think about web programming and in what's possible across a multitude of platforms and environments, and this session gets you started quickly with simple demonstrations that walk you through all the major capabilities of the #1 most followed open-source C# project on GitHub that grew to become the latest trick in the ASP.NET developer tool chest. Pranav Rastogi Session
Web Deployment Done Right With virtually every method of deployment available to you for publishing your site to Windows Azure - Team Foundation Services integration, GitHub.com integration, CodePlex, FTP, Web Deploy, even DropBox - it's never been easier to get your site up and running. In addition to the simple deployment model, Windows Azure Web Sites makes it easier than ever to set up multiple environments for testing and production, and integrates fabulously with the deployment models to streamline your process of multi-environment deployment and maintenance. In this session, get a glimpse of all of these methods and see how the Kudu Project allows for further customization of your build process by enabling custom functionality that's executed during deployments. Pranav Rastogi Session

Go back to top