Milwaukee Code Camp 2016 - 10/15/2016

From Legacy MVC to Modern MVC: An ASP.NET Core Migration Path

With all the buzz around Microsoft’s revitalized ASP.NET MVC Core framework, you may wonder what has changed since your “legacy” ASP.NET MVC application was written. Sure, there are new framework features and development tools available; but, which of these things are actually worth adopting and when? Should I stick with ASP.NET Web Optimization for bundling & minification, or should I use Gulp? What’s the difference between a tag helper and an HTML helper? Which package manager(s) should I use …
Beginner : aspnetcore mvc aspnetmvc aspnet web javascript migration

Hands-On with Angular 2!

JavaScript is taking over web development.  The little scripting language created 20 years ago (in 10 days, no less) has turned into a legitimate tool for everything from corporate websites to native mobile applications to web servers.
The shift from minor web scripting language to multi-purpose powerhouse has brought on an explosion of new JavaScript frameworks and libraries.  There are many different ones currently available, with more popping up each day.
How on earth are you supposed…
Beginner : angular angularjs javascript

Algorithmic Trading Engines

Ever wonder if you could write code to manage your investments?  Well, you can!  Come find out how to get started! Talk will cover the key components of an algorithmic trading engine, some of the key libraries, API’s, tools, resources, etc. available to build a system and numerous demos in Python.
Beginner : trading algorithm libraries api

Applying Design Patterns to Everyday Problems

Have you read about design patterns but weren’t quite sure how or where to apply them in your application?  Have you heard of principles like loose coupling and programming to an abstraction, but didn’t know if you were really doing it right?  If so, this talk is for you.  
In this talk, I’ll work from several example code segments and show how to recognize which design pattern would be appropriate.  I’ll then show how to refactor the existing code to use the chosen design pattern and demonstra…
Beginner : patterns designpatterns

ASP.NET Core 1.0 Tag Helpers

ASP.NET Core 1.0 has introduced Tag Helpers which are a much more HTML-centric approach to using server-side code to help construct HTML elements in Razor views.  ASP.NET will ship with built in tag helpers such as the “environment” that can include specific HTML (such as links to CSS or script tags) based on the level of server like development, stage, or production.  Tag helpers provide specific attributes for elements like the “asp-fallback-*” attributes for automatic fallback to local resour…
Intermediate : "ASP.NET Core" "Tag Helpers" Razor

ASP.NET Core Dependency Injection now Implements IFirstClassCitizen

With dependency injection finally a first class citizen in the .net core framework, building scalable and flexible applications has never been easier.
In this session we will explore some of the new and updated built in extensibility points around dependency injection in .net core.  We'll see how the built in abstractions and implementations are separated out so we aren't tied to any defaulted implementation details.  How to configure some of the basic implementations around entity framework…
Beginner : aspnetcore dependenyinjection interfaces web

Augmented Reality - Let's Make Some Holograms!

Do you want to explore Mars?  Model a building on your conference room table? Play Minecraft in your living room?  All of these things are being done today using Augmented Reality.  Augmented Reality has shifted from mobile app gimmick to an immersive UXD experience that is unrivaled.

This talk will use the Hololens, Unity 3D, and C# to give a crash course in AR concepts and the code that makes them a reality. This includes:
* Control (Gaze, Cursor, Gestures, Speech)
* Real World Understand…
Beginner : hololens ar augmentedreality

Back-ends? Where we're going, we don't need...back-ends...

Dynamic back-ends are great. If you have content that is frequently changing, or user-generated content, you almost can't build your site without some sort of dynamic back-end - whether it is a framework like ASP.NET MVC or a CMS like WordPress.

But dynamic back-ends are complex, and often our websites are not. A dynamic back-end is just not the right tool for something as simple as a blog or style guide. If you've found yourself spinning up an instance of your favorite CMS to get a simple we…
Beginner : backends dynamic jam

Bash on Ubuntu on Windows

Windows 10 now provides developers with a familiar Bash environment. This environment will allow users to:
1.       Run common command line utilities such as grep, sed, and awk
2.       Navigate the file system using these commands
3.       Run bash shell scripts which rely on supported command line utilities
Windows accomplishes this through the Windows Subsystem for Linux which allows Ubuntu user-mode binaries provided by Canonical to run on Windows 10. This means that the command line uti…
Beginner : bash ubuntu linux windows scripting sh

Building Smart contracts on the Ethereum World Computer

We will discuss the unique properties of blockchains with development in mind. We will do a brief introduction of the tools in the ethereum ecosystem for dApp development. Using metamask, truffle, solidity, and web3 will will right a simple smart contract on the ethereum blockchain. 
Beginner : algorithm blockchain ethereum

Building the Age of Experiences: Hololens + IoT

The Information Age has Evolved, Welcome to the Age of Experiences!

We are living through another critical stage in the evolution of technology, we are at the very beginning of looking at our world through augmented eyes.  We –  and those that follow us — will no longer be satisfied with looking at a flat computer screen at our desks, or even on our mobile devices.  We will come to expect and demand to be immersed within our environment with but a single glance through augmented eyes.

Intermediate : HoloLens IoT C# Unity Augmented Virtual Reality

Chrome DevTools: Unleash the Awesome

If you’ve done any front-end development, you are probably familiar with Chrome Dev Tools. But do you truly know how powerful Chrome DevTools can be? In this talk, which will benefit everyone from a “what is DevTools” newbie to a power user, I'll will provide you with useful tips and tricks you can use to improve your front-end code immediately. 
Beginner : chrome devtools f12

Creating a Portable and Isolated Environment Using Docker Compose

Transporting your application across environments and between developers can be painful. “It worked on my machine” is rooted in missing dependencies and environment variables, port conflicts, and operating system variances to name a few. Maybe you’ve heard of Docker but don’t know how to start. Or perhaps you’ve been using it and want to take it to the next level. This talk will offer something to learn for Docker enthusiasts of all experience levels. Follow along as we use Docker to containeriz…
Beginner : Docker Containers

Decomposing Page Objects

The Page Object pattern has been used in User Interface automation testing since at least 2004 when Martin Fowler presented the Window Driver pattern. While a great pattern for UI testing, decomposing the pattern into three core responsibilities allow for much more maintainable and expressive code. Too often, Page Objects become God-objects which know-all and can do-all leading to fragile testing code. Instead, organizing code into Models, Orchestrations, and Scenarios gives you all of the power…
Beginner : patterns oop models

Full Stack ASP.NET MVC Performance Tuning

"Performance is a feature"

- Jeff Atwood

Application performance is often under-appreciated. At least until the user complaints start rolling in. Spending time tweaking your application can be tough to justify to management, but performance is the ultimate feature. Even small increases in performance can drastically improve adoption of your application. Performance impacts the bottom line like a meteorite impacts the Earth.

In this talk, we're going to explore how to improve the perform…
Beginner : performance mvc aspnet

Getting Hands on with Xamarin.Forms

As more business turn to having a mobile platform presence or product offering, Xamarin at some point gets mentioned as a possible option to build a cross platform app. But even with all the talk, most developers are still new to Xamarin. This talk will cover the basic concepts that are important to know when getting started with Xamarin as well as help put you on track to get started building an app of your own.
Beginner : Xamarin Xamarin.Forms MVVM

Getting up to Speed with UWP, It Really Is Universal Now!

Microsoft has called things Universal in the past, but the Universal Windows Platform (UWP) has really delivered on it's promise of allowing you to write code once for many different platforms. We'll cover the basics of what a UWP app is, and see it cover the spectrum of Desktop, mobile, IoT, HoloLens and more. In addition to getting your code universally deployed to these platforms, we can see how we can really target a specific platform and code to it's unique features. 
Intermediate : UWP mobile desktop device .Net

Giving your mobile apps the finger...print

Want to make your mobile applications faster? Min Maung will show you how natively on iOS, Android, Windows, or Xamarin. Fingerprint sensors are on all iOS devices, and are being implemented on Android devices. They make our login process quicker and easier. Come and explore with Min Maung on Touch ID, Android Fingerprint, and Windows Fingerprint Biometrics. There will also be discussion on best practices of implementing this technology. At the end of the day you just need one finger to rule the…
Beginner : iOS Android Windows mobile biometrics

Hitchhikers guide to Azure IoT & Event Hubs

Getting started with IoT, there is a lot to know, and finding your way from device to cloud can be rather tedious and cumbersome. This talk will help you get from device to cloud with Azure IoT hub and Event Hub without all the mucking about in Cyberspace. Attendees will also learn about tools and other offerings with Azure to make Integration as seamless as possible. Don’t forget your towel!
Beginner : Azure IoT Azure Iot Hub

HTTP/2: What You Need to Know

The HTTP protocol is now over 15 years old and it has served us well, but a new version will address some of the fundamental problems with how it was implemented “on the wire”.  The changes are based on experience with Google’s SPDY protocol, but standardized for everyone to use.  Major features of the current version such as methods and status codes will be unaffected.  Existing sites should just work with the latest version, but they can drop many of the old tricks they used to squeeze out per…
Intermediate : HTTP/2 Web Performance

Ionic Framework Development

Ionic Framework is the best way to build cross-platform mobile apps. Join one of the core engineers for an introductory crash course and get up to speed with the brand new Ionic 2.
Beginner : ionic javascript framework

Keys to Startup Success

Startup success sometimes occurs by accident, other times it happens through sweat and determination.  Moving from the “myth and mystique” of creating a startup, to an understanding of the “tires meeting the road” knowledge of what it can take, can increase the success of an endeavor and is incredibly valuable.  This session explores these variables and the observations we have made in seeing successful companies launch and with working with those teams.  Wishing all entrepreneurs and innovators…
Beginner : startup softskills

Scalable application hosting using Kubernetes

Kubernetes is an open source container management system developed by Google. With containers raising in popularity, Kubernetes is fast becoming a standard for large scale container management. In this talk, we will walkthrough a real application that is hosted using Kubernetes. The multi-tier architecture of this application makes it possible to infinitely scale different parts of the application. We will discuss how to build a kubernetes cluster from scratch and scale it as application grows.
Beginner : kubernetes containers

The Future with Augmented and Mixed Reality - HoloLens

Revolutionary technology can lead to disruptive innovation. We are witnessing the dawn of augmented reality and the Microsoft HoloLens is leading the way. The HoloLens provides a new landscape for us, as developers and innovators, to break new ground with more emerging experiences.  

This discussion will briefly introduce tools for the HoloLens that are often not shown in the videos you may have seen and then spend the majority of time on various developer scenarios. We will go beyond the bui…
Beginner : 3D 2D unity enterprise hololens ar vr mr augmentedreality virtualreality mixedreality apps games

Trilateration with iBeacon (How the big brother watches over you in retail and more…

You are walking down an aisle of BestBuy looking for a new Wireless router. You receive a message on your phone from BestBuy with sales ads on selection of routers. No it is not blind luck that you received that message. It is a perfectly timed piece of ads that us produced by technology that used trilateration and iBeacons to determine your location within an indoor space.
This session will feature live code on iBeacon usage and tracking on iOS (and Android time permitting) by using Xamarin…
Beginner : beacons ibeacons bluetoothlowenergy btle mobile iot

TypeScript, JavaScript Reimagined

Are you a web developer? If you answered “yes”, then I ask how many hours of your life have you wasted on attempting to track down JavaScript errors at runtime? Of those times, how many times has it simply been because a member was undefined and was a result of a typo? Do I have your attention? In the early 1990’s the world was introduced to JavaScript and since then, JavaScript has become one of the most popular programming languages of all time. TypeScript is a superset of JavaScript and makes…
Beginner : typescript javascript

Virtual Reality (VR) with the HTC Vive

This session will cover the topic of creating a good user interface in virtual reality. Using the HTC Vive, demonstration will be given on both good and bad examples that either enhance or damage the user experience in VR. 
Beginner : vr vive

What is Firebase and What Can I Do With It?

Get your backend up quickly and inexpensively with Firebase; no server code required! With the recent upgrade, Google has added many new features, and has integrated some of the Firebase services into their core cloud services. Firebase provides a real-time JSON database for storing and synchronizing data among all clients without having to manage connections or write complex sync logic. Firebase also provides tools to authenticate users with only client-side code using the flexible security rul…
Beginner : firebase backend

You Too Can Build a Bot!

From Google to Disney, Slack and Facebook, enterprise and consumer, conversational bot interfaces are a hot new trend for 2016. It seems everybody wants to get in on the craze, but they are not sure how. You may think that programming a decent chat bot involves years of artificial intelligence research, designing data structures, and a whole team of engineers. The truth, however, is different. With some knowledge of Node.JS, and a few APIs available to developers, you will learn how to build, ma…
Beginner : bot javascript nodejs microsoft

Adding Image and Voice Intelligence to Your Apps with Microsoft Cognitive Services

Cognitive Services is a set of APIs that use the power of Machine Learning to enhance your application. Using these APIs, you can quickly add image recognition and analysis; facial recognition, speech recognition, text-to-speech capabilities, and many other features to your application.
In this presentation, you will learn about the capabilities of these APIs, how to test them, and how to call them via a REST web service and using some helpful .NET libraries.
Beginner : cognitive services api machinelearning ai

Android: Finding Divinity Between Marshmallow and Nougat

This session was once entitled "Android 6.0 Marshmallow - Making Some Campfire S'mores", covering the great features coming to your device: Doze + App Standby, Google Now on Tap, and Auto Backup. It also included a look at how to handle the new (and much better) way Android handles permissions. It was an overview of the listed features plus others, allowing you to not only discover how Marshmallow will make your phone better (and last longer), but how to develop Android apps to utilize (or prote…
Beginner : android mobile

Previous Years