Boston Code Camp 21 - Sessions

held in June 2014

There were 26 sessions at BCC21.

Xamarin 3 is a ground-breaking new release that enables you to design and develop mobile apps faster. We will walk you through and demo the major new features in Xamarin 3 – including the Xamarin Designer for iOS, Xamarin.Forms, IDE Enhancements, easy code sharing, and more. More

Looking for a CMS to power your next website? Kentico is a popular ASP.NET based CMS that's friendly to both content administrators and developers. Kentico's development model is based on master pages and user controls, and comes with many controls out of the box. If the built in controls don't suit your needs develop your own with a simple API. Hook into the many integration points with custom event handlers, scheduled tasks, custom modules, and more! Come join this session to find out why you might want to build your next website with Kentico. A high-level overview of the CMS will be provided along with deeper dives into developer topics. More

With the emergence of cloud services in the past several years we, as developers, want to be able to capitalize on the power of these services while still being comfortable in our development IDE. In this session we'll go into some of the Core AWS services and how we can implement them within the Visual Studio Environment. More

Ever think about being an independent consultant or freelancer? In this talk I’ll provide you with some real information that can help you decide if it is for you (including real income and expense numbers). I’ll also provide some tips on things you’ll need to get started. The majority of the information in this presentation is based on what I’ve learned in the past 4+ years as a freelancer/independent consultant. More

AngularJS is a natural migration path for Silverlight and other .NET developers. Requirements: familiarity with JavaScript and preferably HTML5 and XAML Topics covered include AngularJS history, program structure, extending HTML, Controllers, Directives, Working with Data, Two-way data binding and more. More

Getting Started with Azure: Websites, Services Virtual PCs, SQL Data, No SQL Tables, Blobs.. What do I need to know to get started? This is an intro session to Microsoft Azure Cloud. If you are just getting started, or still on the fence, you'll learn how Azure fits into you toolbox. This isn't a marketing tour. It's developer to developer. Pat Tormey MS MVP More

Abstract: You just found out that a client needs a SQL database to be designed from scratch. However, you existing DBA has given two week notice. This presentation is meant for the Accidental DBA that has little to no experience with creating Transaction SQL objects. After this presentation, will be ready to meet that clients need. Coverage: 1 - How is a view better than ad-hoc SQL? 2 - Abstracting underlying tables via a view. 3 - Avoiding DML updates to views. 4 - Using triggers to enforce business rules. 5 - Using triggers to prevent data modifications. 6 - What are the different types of functions? 7 - Simple use of each type. 8 - Using stored procedures as an application interface. 9 - Batch programming using stored procedures. 10 - How to... More

Git is fast, flexible, and a distributed version control system. In this session we will take a closer look at why you may want to consider Git, how to have a state-of-the-art setup on Windows, some useful commands, and some advanced workflows. In short, you will become a Git Ninja! More

We, the organizers of Boston Code Camp, are looking to add a Single Page Application (SPA) to enhance the attendee experience for Code Camp 22. We are in the early stages of planning this open source community development effort and are looking to use Angular and Breeze with WebAPI2 and the HotTowel structure. We'll spend part of the time looking at HotTowel and how we can get started, and some time talking about next steps. If you'd be interested in contributing to the design, development effort or testing, and would like to give something back to the community, come to this session to learn more. More

This session will help you understand how to get started writing Single Page Applications (SPA) using Knockoutjs, Durandaljs and several other supporting javascript frameworks/libraries. I’ll cover some of the lessons I’ve learnt in the past two years developing SPA applications and hopefully help you learn it more effectively. I’ll be using ASP.NET and their webapi for the server side, but really anything that would serve JSON would suffice. The focus will be on the javascript code, not the server side code. More

Methods of working with data has evolved over the years as has our mechanisms to access it through services. In this session you'll learn not only how to expose data through the Web Api, but also learn ways to tune and improve your data interactions with Web API, IQueryables and the Entity Framework. More

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. More

When it comes to web application security testing, there are few tools that can match BurpSuite by Portswigger. In 2013 at the HackMiami "Pen-Test Tool Shootout", BurpSuite was confirmed as best value web security scanner. While many of its users are security professionals, BurpSuite has a lot of value to offer throughout the development lifecycle. As a developer I have used BurpSuite over the last few years to test many websites and various SOAP and RESTful APIs. In this talk we will quickly look at how to get up and running with the tool before moving to a demonstration against a local vulnerable web application where we will cover uses of the tool for finding common security vulnerabilites and how to create targeted attacks specific... More

HTML5 presents a great opportunity to create browser based games that work across the array of tablet and smartphone based devices. In the near future, as the device environment becomes more diverse, developers will begin to adopt standards that work across all devices. With HTML5, Javascript and the free createJS engine, surprisingly sophisticated games can be created. In this workshop session, you'll be invited to code along with the instructor as you create a basic game and deploy it to a mobile environment. The games graphical and audio assets will be provided to you as you learn the techniques to create HTML5 based game that includes sprite-based graphics, audio, animations and more. What will attendees learn? • Understand the Tools,... More

JavaScript is now a Real Programming Language. That means it's time to apply Real Best Practices in our JavaScript development. What could be a better practice than unit testing!? Enter the Jasmine unit-testing framework. Simple and powerful, it is suitable for testing everything from client-side validators to complex AngularJS directives. By the end of this session, you will be equipped to use Jasmine with all your JavaScript projects. In fact, you will have many examples available in an on-line sandbox so you can experiment to your heart's content. Incidentally, this session beautifully complements the AngularJS sessions. As the AngularJS documentation says, "Angular developers prefer the syntax of Jasmine’s Behavior-Driven Development framework... More

In this session I will present how using JavaScript code in C# development, we can create interesting architecture for application configuration, extensibility (plug in) and create a DSL for a simple rule engine. All about mixing static and dynamic languages. More

In C# mobile development, design patterns are more important than ever. From MVC to MVVM. From Delegates to Protocols. Views and Controllers are central to mobile development and Models are as helpful as ever. We'll explore how to take advantage of this pattern-heavy development environment using Xamarin. From UI, data-binding, to services, we'll discuss built-in Android and iOS patterns as well as third-party frameworks such as MVVMCross and MVVM Light. The Gang of Four is in your phone and we will wield their power. More

A whirlwind introduction to the Microsoft Azure public cloud platform followed by a bunch of pragmatic ways to use it. From simple Web Sites to web-scale Cloud Services, from on-the-cheap dev-test environments to auto-scaling production services, Windows Azure covers the spectrum. What's the story with designing for failure? What happens if I need to scale? How do I manage costs? These and more questions will be addressed. Presented by Azure MVP Bill Wilder, it is based on real-world insights from an Azure-focused consultant who's been working with the platform since the day it was announced in 2008. Some of the topics will be drawn from Bill's Cloud Architecture Patterns book (O'Reilly Media, 2012). More

This session will cover an Introduction to using Twitter Bootstrap. Twitter bootstrap is a great, open-source front-end framework for designing and developing sleek web applications. It's been out for a while, but if you haven't had a chance to take it for a spin, this session will be a great launching pad. We'll cover some of the basic principles of responsive design, and discuss how Bootstrap (or any front end framework) can make designing a modern UI much easier. Kyle is currently 24th on the top twitter-bootstrap answerers on StackOverflow of all time. But don't just take his word for it: http://data.stackexchange.com/stackoverflow/query/185479/ More

R language has been extensively used for big data projects -- from XBox to cloud computing apps. If you are a C# developer and care about big data, R is a key supplementary language to your .NET languages. In this session, I will begin with comparing R and C#, and tell you what are the same, similar, different, and new to a .NET developer. Then we are going to walk through an example to show you how to explore data and answer questions using data and visualization. If you can bring a laptop, I suggest you install R, http://cran.r-project.org/; and RStudio, http://www.rstudio.com/products/rstudio/. More

You may have seen the theoretical discussions of Reactive Extensions and heard about the duality of IEnumerable and IObservable, but are still scratching your head to know how and when to use them. In demo filled session, we'll cover a number of cases where it makes sense to consider RX to declaratively compose complex operations over observable sequences in an elegant LINQ like syntax. We may even have some chocolate induced audience participation along the way. More

There are many ways to share code between .Net, Windows Phone, and Window Store applications.  Reduce duplicate code and copy/paste code sharing with Portable Class Libraries, linking code files and Universal Apps.  Learn how to include platform specific code through partial classes and dependency injection to maximize code reuse. More

Delivering delightful user experiences across form factors is what Bing Apps do best. This session showcases cool Cortana scenarios and sheds light on the challenges around developing apps for varying screen sizes & screen resolutions. More

This session will provide an overview of the ASP.NET (http://ASP.NET) MVC Web API which provides the ability to create HTTP services that can be accessed by a range of devices from a browser to a mobile device. The purpose and concepts associated with Web API will be discussed first to provide a basis for the implementation details. This will include how Web API controllers differ from "traditional" MVC controllers, specifically how HTTP GET, POST, and DELETE are the basis for Web API controller actions. Next, a demo Web API project will be reviewed including a discussion of how JSON plays a major role in data input and output for Web API actions. Lastly, there will be a facilitated discussion of how the Web API might be used to provide services... More

The use of wireless devices to access the Internet has become ubiquitous. The security of these devices has improved considerably since the advent of the first encryption protocol, the poorly named Wireless Equivalent Privacy (WEP), which was very weak and easily broken. Even with the contemporary protocols, devices remain vulnerable to focused attacks if not properly configured. This presentation is geared as a basic introduction into wireless security. The presentation will cover: • A basic overview of WEP & WPA/WPA2 • Open source tools for testing WiFi • Hardware including antennas & network cards • Live attack demonstrations • Countermeasures & proper configurations Easy to follow step-by-step materials will be provided for anyone who is... More

Continuation of part 1 - The use of wireless devices to access the Internet has become ubiquitous. The security of these devices has improved considerably since the advent of the first encryption protocol, the poorly named Wireless Equivalent Privacy (WEP), which was very weak and easily broken. Even with the contemporary protocols, devices remain vulnerable to focused attacks if not properly configured. This presentation is geared as a basic introduction into wireless security. The presentation will cover: • A basic overview of WEP & WPA/WPA2 • Open source tools for testing WiFi • Hardware including antennas & network cards • Live attack demonstrations • Countermeasures & proper configurations Easy to follow step-by-step materials will be... More