End To End Development with Schwammy’s Favorite Patterns and Practices

8:30 am in
Andy SchwamMVP

This full day session will combine application architecture discussions with code samples to support them. Unlike in traditional short talks, with the full day session you’ll see how all the pieces fit together. Throughout the day I’ll build upon a real application that leverages C#, ASP.NET, Entity Framework and SQL Server on the server following SOA. The client we’ll be MVVM with HTML, JavaScript and CSS using some popular frameworks including Bootstrap, Knockout, and more. In addition we’ll work through the Application Lifecycle with TFS for task tracking, source control, and deployments. I’ll provide C#/VS/TFS tips and tricks along the way. Additional topics include SOLID, Repository pattern, Unit of Work pattern, ASP.Net MVC vs Web API, ELMAH, and Dependency Injection. The session will not be hands-on for attendees however I’ll provide the complete solution with which you can review and experiment.

Share your mobile UI code with Xamarin.Forms

8:30 am in
Georgian Grigore

Xamarin comes as a better solution for mobile cross platform development, not just because the code sharing, but it delivers high performance compiled code with full access to all the native API, allowing creation of native apps with device-specific experiences. Anything one can do in Objective-C or Java, can be done in C# with Xamarin

However, using only Xamarin.iOS and/or Xamarin.Android, the most that can be shared is business logic and application code, while UI still needs to be written separately for each platform. But with Xamarin.Forms, the UI code can be shared as well across all three major platforms, making the cross development process more productive. Also, Xamarin.Forms supports XAML for UI definition, data binding and commands as first class features – making MVVM an adequate programming model.

Come for a session of fun building a cross mobile app with your favorite tools and language (Visual Studio and C#), with 100% shared code between all 3 platforms!

The Psychology of In App Purchase

10:00 am in
Atley HunterMVP

Are you interested in app monetization but not sure what works? There is a ton of bad information out there on best practices and developer tips. There is NOTHING out there though like the research Atley has done in the area of in app purchase psychology.

Join Atley as he guides you through the ins and outs of your user’s inner purchasing thoughts.

Creating Cross-Platform Mobile Apps Using C# with Xamarin

11:30 am in
Brent SchooleyMVP

iOS and Android present great opportunities for developers. Unfortunately, many developers shy away because of the unfamiliar development environment. It doesn’t have to be that way! Come learn how to build Android and iOS applications using C# with Xamarin 3.0. You’ll learn how to use your existing C# skills to build apps for these platforms (and Windows Phone+Windows 8!) from within the same solution in Visual Studio! You’ll also see how Xamarin.Forms allows you to achieve up to 100% code sharing between iOS, Android, and Windows Phone while still preserving native performance and look & feel.

Reach New Android Customers with Xamarin Studio, C# and Amazon Fire Devices

1:30 pm in
David Isbitski

Did you know the Amazon Appstore now has over 300,000+ apps, in 200+ countries, and runs on Android devices, BlackBerry devices and Amazon Fire devices? With the recent launch of new Amazon Fire Tablets and Fire TV Stick the opportunity for you to reach new customers has never been higher. This session will walk you through everything you need to know to get started selling your apps and games in the Amazon Appstore and offer tips for success. It will cover getting your Xamarin development environment set up for Amazon devices and exactly what you need to know to get published quickly with minimal code change. Now is the time! Using the same C# language you love and the power of Xamarin you can reach millions of potential new Amazon customers.

Responsive Design with Bootstrap 3.3

3:00 pm in
Bill WolffMVP

Bootstrap is a free collection of tools for creating websites and web applications. It contains HTML and CSS-based design templates for typography, forms, buttons, navigation and other interface components, as well as optional JavaScript and jQuery extensions. See how Bootstrap fits into MVC sites created in Visual Studio that deliver a mobile first design approach. CSS development frameworks including LESS and SASS are also demonstrated.

ASP.NET 5 and MVC 6 Hands on Training

8:30 am in
Ken Lovely, Rob KeiserMVP

Sold Out

ASP.NET 5 is an open source web framework for building modern web applications that can be developed and run on Windows, Linux and the Mac. It includes the MVC 6 framework, which now combines the features of MVC and Web API into a single web programming framework. ASP.NET 5 is also the basis for SignalR 3 – enabling you to add real time functionality to cloud connected applications. ASP.NET 5 is built on the .NET Core runtime, but it can also be run on the full .NET Framework for maximum compatibility.

With the help of coding and development exercises, attendees will be able to both start developing in these new frameworks and be able to successfully create fully functional ASP.NET 5 and MVC 6 web applications

ASP.NET – Expect to get a handle of the changes to ASP.NET
• Command line commands
• New solution structure
• Startup.cs
• Visual Studio Code and Yoeman
• Tag Helpers
• Bower, NPM and Gulp

MVC 6 – You can expect to leave this training with your own fully functional MVC 6 Web Application
• Getting Started
• Understanding the new look of the project / solution
• Scaffolding
• Bootstrap
• Mobile vs desktop browser
• JQuery
• Data handling with Web API and Entity Framework
• Forms

ASP.NET 5: Future of Web Apps

8:30 am in
Shahed ChowdhuriMS

As a .NET developer, you’re probably curious about what ASP.NET 5 (aka ASP.NET vNext) has in store for you. Join Shahed Chowdhuri in learning about how you can build web apps with ASP.NET 5, which is open-source and cross-platform across Windows, Mac OS and Linux operating systems.

Interoperable web development and coding with web standards

10:00 am in
David VoylesMS

During this talk I’ll cover what it means to write front end web code which uses the latest and greatest HTML5 features while remaining platform agnostic. These best practices will cover:

  • Edge mode and feature detection
  • Web dev best practices
  • Cross browser testing
  • Mobile first w/ responsive design

You can find more information and hands-on labs at: http://www.davevoyles.com/interoperable-web-development/

Get started with cross-platform ASP.NET 5

11:30 am in
Jeffrey FritzMS

Are you a web developer that wants to use ASP.NET and haven’t because you want to run on Linux or OSX? In this demo filled session lead by one of the ASP.NET program managers we will show: step-by-step instructions of how to get ASP.NET 5 running on Linux, how to get the most out of Linux and .NET when writing new code with our favorite Linux editors and we will build out production quality ASP.NET resources running on docker. At the conclusion of this session you’ll have everything you need to collaborate with your friends coding ASP.NET on Windows.

SignalR – Get the maximum from the Real Time web

1:30 pm in
Chris GomezMVP

We’ve all seen the SignalR demos with the chat application and the stock quotes updating from the server. So let’s move past that and get to high performance real-time web applications. You might need fast bidirectional capability for a game or you simply need to support more clients than one SignalR host can handle. So how can you test those limits on your servers? And how do you figure out what is wrong with your hub when it doesn’t work?!?

After a quick refresher on how to use SignalR, we’ll dive into these more advanced topics. We’ll stress test a server, debug through real problems that kept me up at night, and have a little fun with everyone’s Internet connected devices.

Web Dev Panel

3:00 pm in ,
Chris GomezMVP, Jeffrey FritzMS, Jess ChadwickMVP

A Journey through C#

8:30 am in
Steve MichelottiMS

Sold OutThis all-day session will take you on a journey through all of the major language features of C#. Generics were incorporated into C# years ago – but do you feel like you have a firm grasp on the benefits on generics and how to write your own generic methods and types? What about how to write you own lambda expressions and extension methods with and without the context of LINQ? Do you feel confident you know how to effectively use async/await in C#? What about how to incorporate the dynamic keyword into real-world C# code? Are you up-to-speed on all the new language features that were just introduced into C# 6.0? We will cover all these and more during this demo-heavy all-day session! Come sharpen up your C# skills!

Angular 2 Tooling for Angular 1.x with Visual Studio

8:30 am in
Aaron Marisi

Angular 2 is the next evolution in Angular and along with the framework comes a recommended set of tools to increase developer productivity. Whether or not you are ready for Angular 2, you can start using these tools now with your current Angular projects. Attendees should have a basic understanding of Angular 1.x concepts. This talk demonstrates the fundamentals for using tools and frameworks such as TypeScript, SystemJS, and EcmaScript 6 in an Angular 1.x application. Armed with this knowledge, you can prepare for migrating to Angular 2 and more importantly improve your developer workflow today!

Put your ASP.NET Core and everything else in a Container

10:00 am in
Jeffrey FritzMS

Containers are a hot topic for developers and operations right now. What exactly is a container? What is a virtual machine? In this demo-filled session, we will learn about these new deployment technologies and get started deploying some really complex applications with the Docker container toolset.

MVC 6 – Getting Started

11:30 am in
Ken Lovely

Getting started with your first MVC 6 application ASP.NET Core is our future. Learn the new features and changes that will enhance both your development experience and the end user’s experience.

A Deep Dive on ASP.NET Core

1:30 pm in
Jeffrey FritzMS

Are you considering ASP.NET Core for your next project? In this session, join one of the Microsoft program managers responsible for this new development platform as we take an in-depth look at the new ASP.NET Core platform. We will cover how the new .NET command-line interface enables you to build applications inside and outside of Visual Studio. We’ll look at how to use ASP.NET Core with docker and how you can build re-usable components with NuGet integration. Attendees of this session will have a deeper understanding of the topics they need to deliver more effective and faster applications with ASP.NET Core.

[Panel] Hack Your Career: tools, tips, and techniques that help you grow as a developer

3:00 pm in
Chris GomezMVP, Jess ChadwickMVP, Todd Snyder

A new programming language is created every 13 days. A new framework is announced every 47 hours. And, a new cloud API is unveiled every 5.2 minutes. Are any of those statistics true? Who knows. But one thing’s for sure: staying up-to-date as a developer is a full-time job in itself… so how the heck do you do it?

Come join Chris Gomez, Todd Snyder, and Jess Chadwick – the hosts of the Static Void Podcast – as they lead an open discussion about the ways that developers not only keep up with the quickly changing landscape of software development, but maybe even gain a little productivity and (dare we say) enjoyment while doing it.

This isn’t any normal panel discussion, however – this is crowd-sourcing at its finest. In this session, you and your fellow peers are the panelists and we are the moderators, just there to keep the conversation going… and maybe throwing in a few colorful comments of our own. Regardless of whether you are a starry-eyed coder who just wrote your first app last week or a veteran with a stare of someone who’s seen the horror of their buddies overwhelmed by stack overflows, you have something to offer. So, come down and join the conversation – we promise you won’t be disappointed!

Oh, and no need to wait for the session to begin in order to start the discussion: feel free to submit topic suggestions on JabbR (HackPhillyCC room on jabbr.net), or tweet them with the hashtag #HackPhillyCC.

Introduction to ASP.NET Core

8:31 am in
Jeffrey FritzMS, Maria NaggagaMS

You’ll learn about ASP.NET Core directly from the team that built it in this high-powered workshop. ASP.NET Core is a lean and composable framework for building web and cloud applications. ASP.NET Core is fully open source and available on GitHub. What does that ASP.NET Core mean for compatibility? What powerful new cloud scenarios does ASP.NET Core enable? We’ll cover ASP.NET Core both inside and outside the IDE, on Windows, Mac, and Linux.

Functional Techniques for Imperative Object Oriented Languages

8:30 am in
Kathleen DollardMVP

You are effective with the imperative, object oriented core of Java or .NET but you look longingly at the winsome smile of functional languages. You play with your language’s functional features, never quite sure you’re getting it right or taking full advantage of them. This talk is for you because you’ll learn which code to attack with functional ideas and how to do it. The core demo (C#) takes a 100 line method with a dozen way to mess up and transforms it to 24 lines that are easy to understand, hard to mess up and straightforward to debug. Better yet, functional approaches ensure that patterns like async, logging and exception handling are consistent and transaction usage is clear. Apply these techniques while leveraging delegates, lambda expressions, base classes and generics.

Securing your Azure Web App with ASP.NET Core data protection

10:00 am in
Mike Melusky

One of the new features of ASP.NET Core is the data protection stack, an easy to use cryptographic API developers can use to protect their data. This session will showcase this new API, going over all of the features including key management and rotation. We will build a simple ASP.NET Core web application and deploy it to an Azure instance. The final part of this session will demonstrate how to integrate a free SSL certificate from Let’s Encrypt into Azure to fully secure your Azure Web App.

A Great Team Starts With You…and You, and You

11:30 am in
Kathleen DollardMVP

You develop software as part of a team – some combination of other developers, managers, end-users, business stakeholders and QA. This team starts with you, the individual. You are the first step to team effectiveness and this keynote starts with a humorous look at the habits and external factors that threaten individual effectiveness. Switching gears, there’s no guarantee that great individual contributors will make a great team and in almost all cases what matters is team productivity. Scientists study this, Google explores the question, and new techniques like mob programming explicitly tackle it. Use their experience to discover ways to make your team more effective and your job more enjoyable.

Angular 2 for ASP.NET Developers

1:30 pm in
Mike Yeager

Angular.js 2 is the state of the art when it comes to web applications. Whether you’re an MVC or Web Forms developer, after this session you won’t find it hard to make the leap to client-side single page app (SPA) development. You’ll see how to use Angular.js 2 and TypeScript to build amazing web experiences in the browser instead of on the server as you take all of the familiar architecture, patterns and best practices you know in C# or VB.NET and apply them to a new environment. Modern web applications are just not that hard once you learn a little bit of the lingo and see a few examples. This session cuts through the hype and shows you what you need to know to launch a successful transition from old to new and become one of the cool kids of web development.

MVP and Community Panel Discussion

3:00 pm in
Joe DarkoMS

This open forum covers a number of topics of interest to the developer community. Joe is the Microsoft Southeast MVP Lead and will field questions from the audience.

Modern patterns of concurrent and parallel programming in .NET

8:30 am in
Riccardo TerrellMVP

Sold OutBecome the master of the multicore domain. Learn how to harness the powers of parallel computation and multicore computation to dominate peer applications in finance software, video games, web applications and market analysis. To yield the most performance, computer programmers have to partition and divide computations to maximize the performance while taking full advantage of multicore processors. Start your path from Padawan to Jedi, after this workshop you will be ready to return to work and have code bend to your will.

Concurrency, multi-core parallelism, and distributed parallelism are powerful and accessible. These computing concepts promise big impacts on the full spectrum of software applications, including video games, web applications and market analytics suites. Programmers of these products know how to partition computations over large distributed datasets in order to take full advantage of modern hardware and computing environments. These programming skills are not easy to master. This course will introduce technologies and tools available to developers at every level who are interested in achieving high-performance, reliable and maintainable code through functional-style parallelism and concurrency.

We are facing a new era of geographically-distributed, highly-available systems with processor designs that are scaling out in core counts quicker than they are scaling up in core speeds. In keeping up with performance expectations as complexities and dataset grow, scaling out software architectures over these modern computing resources is one of the biggest challenges facing developers today.

This course will introduce you to technologies and tools available to developers at every level who are interested in achieving exceptional performance in applications. You will gain an insight into the best practices necessary to build concurrent and scalable programs in .NET using the functional paradigm, which covers OnPrem and Cloud based applications.

Notes and comments
The following objectives will be satisfied during the duration of the course:

1. Functional Programming Techniques for Concurrency
2. Building high-performance concurrent systems
3. Implementing high-volume real-time event stream processing
4. Implementing concurrent patterns such as divide-and-conquer, fork/join, producer-consumer, Map-Reduce, pipeline and more
5. Asynchronous Functional Combinators
6. Applying Reactive Programming Everywhere with Agents and Actors
7. How to develop applications that scale up & out using the same programming model (Agents and/or Actors)

Target Audience
Any developer who want to improve their skills and employ polyglot techniques to solve concurrent problems

The preferred audience for this course is as follows:
– Developer with 2-3 years’ experience and/or architect.
– Basic knowledge a programming language, recommended either C# or F#
– No experience in functional programming is necessary
– Developers who want to improve their skills and employ polyglot techniques to solve problems.

The Future of C#

8:30 am in
Scott Kay

It’s an exciting time to be a C# developer! C# is now open source with a modern compiler which makes it easier and quicker than ever before to extend the language. In this session, we’ll review recently released C# 7.x features, demonstrate what’s scheduled for the next release, and explore the concepts under consideration for future major milestones.

TypeScript: JavaScript Evolved

10:00 am in
Jess ChadwickMVP

JavaScript is in your browser, your freezer and everywhere in between. Though it’s true that today’s world runs on JavaScript, the language was created with form validation and basic DOM manipulation in mind so it leaves a lot to be desired when it comes to writing real-world applications with it. So much so that Douglas Crockford felt the need to write a book entitled, “JavaScript the Good Parts” and Anders Hejlsberg, the father of C#, decided to focus his decades of language development expertise into bringing JavaScript into the world of mature, respectable languages by creating TypeScript.

In this presentation I’ll show just what TypeScript is, how it relates to the concepts you already know today, and why you would might consider writing all your web applications in TypeScript rather than plain old JavaScript from now on.

Getting pushy with SignalR and Reactive Extensions

11:30 am in
Jim WooleyMVP

As our systems increasingly demand more real-time updates, we need better ways of working with these live streams of information. Traditional pull models fail to provide the real-time responsiveness and scale needs that modern systems expect. Moving to a push model allows us to scale easier and react to new data as it becomes available. SignalR facilitates push notifications over HTTP to a variety of clients. The Reactive Extensions were designed to allow for asynchronous LINQ over push based collections. In this talk, you’ll see how the synergy of these two technologies merge to make otherwise difficult tasks, a push over.

Intro to Razor Pages

1:30 pm in
Jess ChadwickMVP

The release of http://ASP.NET Core 2.0 introduces Razor Pages – an alternate web development approach that sits on top of http://ASP.NET Core MVC and brings a simplified, page-based web development model to the .NET Core ecosystem.

In this session I’ll show you how the framework works, how it relates to http://ASP.NET Core MVC and how/when you can begin using it today, even in your existing http://ASP.NET Core MVC projects. Then we’ll talk about when and why you might want to use Razor Pages, when you might want to use http://ASP.NET Core MVC… or when you might want to use both!

Cross-platform web apps with ASP .NET Core

3:00 pm in
Shahed ChowdhuriMS

Whether you’re developing on PC, Mac or Linux, learn how you can use Visual Studio Code on your development platform of choice and deploy to the cloud with ease. Get busy with the full-featured Visual Studio for Windows or the all-new Visual Studio for Mac. Start your project on a Mac, add new developers on Windows and deploy to Linux on Microsoft Azure. Pick and choose one of many ways of developing cross-platform web apps with the all-new open-source ASP .NET Core 2.1!

Join Microsoft Sr. Technical Evangelist and CSE Engineer Shahed Chowdhuri in a fun and engaging session of web app development!