NancyFx for a Simpler Web

8:30 am on

Nancy is a lightweight, built to run anywhere, low-ceremony, open source framework for building HTTP based services on .Net and Mono. The goal of the framework is to stay out of the way as much as possible and provide a super-duper-happy-path to all interactions. Nancy is completely self contained and allows you to go from zero to website in a matter of minutes. Literally. While you’re free to use the MVC pattern, it’s not a requirement.

We’ll start this talk off with a gentle introduction to this stupid-simple web framework, and follow up with a choose-your-own-adventure style followup of examples.

Bower, npm, NuGet – Package Managers All the Way Down

10:00 am on

Today’s developer is seeing a growth in software packages, and not those boxes with floppy disks in them at the store.  These are packages of software that you can download and add to your project quickly and easily.  In this session with the Program Manager leading NuGet, we will review each of these package managers and how you could use them together in your applications.  We will talk about how to restrict access to packages, how to set up your own repositories, and how to build your own packages that anyone can install.

Introduction to Continuous Integration and Deployment with Jenkins

11:30 am on

Learn the basics behind unit testing, continuous integration and continuous delivery (blue-green deployment) as we take an existing ASP.Net application and prepare it for automated testing, building and delivery.

Technologies Covered Include:
Jenkins (of course)
NAnt for driving the automated build and unit testing
NUnit for unit testing
MSBuild for automated build
Webdriver for front end testing

Bonus Topics touched on during the talk may include
Test Driven Design / Behavior Driven Design
Machine.Specification a BDD style testing framework

Continouse Delivery with GO-CD

1:30 pm on

Continuous Delivery (CD) is a design practice used in software development to automate and improve the process of software delivery. Techniques such as automated testing, continuous integration and continuous deployment allow software to be developed to a high standard and easily packaged and deployed to test environments, resulting in the ability to rapidly, reliably and repeatedly push out enhancements and bug fixes to customers at low risk and with minimal manual overhead. The technique was one of the assumptions of extreme programming but at an enterprise level has developed into a discipline of its own, with job descriptions for roles such as “buildmaster” calling for CD skills as mandatory.

GO-CD was developed by Thoughtworks based on the proprietary Cruise platform and implements the best practices outlined by Martin Fowler and Jez Humble (see http://www.amazon.com/Continuous-Delivery-Deployment-Automation-Addison-Wesley/dp/0321601912). It is a mature open source product with strong community support and enterprise ready to medium and large size projects. The majority of commercial products like OctopusDeploy, Microsoft Release Manager and others.

In this session we will review our basic understanding of CI/CD, the architecture and implementation of the GO on the live project and do the demo deployments of of web and DB projects from VS. We will discuss the integration with Git/TFS and other systems.

The attendees will gain understanding sufficient to get started with GO after the class. In this presentation, I will share the experience we got after using GO as a primary CD tool for a large custom app dev project for ~7 months.

Introducing Agile to the Enterprise

3:00 pm on

Still Living in a Waterfall World? You’re Not Alone! Convincing your company to use an Agile development approach for application development can be surprisingly difficult. While the initial benefits excite everyone, that enthusiasm often disappears when the true trade-offs of Agile become apparent. You may even find that many members of the development team aren’t willing to give up their waterfall patterns of development. How do you convince the business that good software doesn’t begin and end with a giant Microsoft Project Plan? In this session we’ll discuss how you can get your company moving down the path to more effective software development and bridge the gap between traditional practices and the current software development landscape

•How to discuss Agile with the Business: It’s their money, you need to make sure they’re on board with how you’re going to spend it.

•Convincing the Team to Work Differently: Without the right patterns of development within your team, your first Agile project may be the last for a while.

•Useful Compromises: When you can’t change the world overnight, how do you at least get the ship turning in the right direction?

Presented by one of the founders of Gibraltar Software, we’ll discuss how we’ve worked with many enterprise customers to marry agile practices into traditional teams. Sometimes successful sometimes a brilliant failure – come and learn from our mistakes so you can produce better results and have happier customers and team members. We won’t be focusing on a specific technology or Agile approach but rather how you get businesses to accept giving up the Gantt chart and learn to love software development.

Game Development Made Easy and Fun

10:00 am on

You’re a developer, right? Then you have all the skills you need for game development. Philly GameWorks (http://bit.ly/pgwmeetup) presents this showcase of great tools to make your first game.

We are going to focus on three toolsets in this session: Unity, Construct2, and Phaser. This showcase session will highlight the key features of each and show you games running in a browser. There will be plenty of demonstrations and we’ll look at the highlights of how you build your game in each tool.

Whether you want to publish to mobile devices or the Windows stores, you can do it. You can even publish on your own web site thanks to today’s modern browsers. There’s never been a better time to enjoy the fun of game development and send your creations to the world!

Building the Internet of Things with Windows 10

11:30 am on

This session will cover how you can become a “maker” using Windows 10 IoT Core. I’ll briefly cover how to set up tools for Win10 IoT development, and then demonstrate creating an application that reads sensor data and creates a real-time data stream over the Internet to mobile phones and wearable devices such as the Moto360 and Apple Watch.

IoT: Building a Rasberry Pi WiFi Controlled RC Car

1:30 pm on

If you are excited about the Internet of Things (IoT), this is the session for you. Let’s create something smarter together. You can use IoT to make things around you intelligent.
We will cover the following topics:
Introduction to IoT
Applications of IoT
Raspberry Pi 2
Understanding GPIO (General Purpose Input/Output)
Future of IoT
Demo: This will cover soup to nuts about how to get started with IoT using Raspberry Pi. We will take a dive in to all the required Hardware, Software and everything in between to complete this project. You will be able to control this RC through your phone using Wifi.

Rapid Mobile App Prototyping with Xamarin.Forms

3:00 pm on

Prototypes are extremely useful, but can be expensive and time consuming to create – especially if you are asked to create them for multiple platforms. In this session, you will be introduced to wireframes, mockups, and prototypes and learn about their differences. We will then talk through the features of Xamarin.Forms that make it a powerful tool for prototyping. You will see how you can use Xamarin.Forms and XAML to write a few lines of code in one file that will create a UI with native controls on all three major mobile platforms. We will wrap up with a live demo that shows how to create a Xamarin.Forms prototype application that will run natively on iOS, Android, and Windows Phone with 100% code sharing.

How To Create an Alexa Skill

8:30 am on

The Amazon Echo is quickly becoming a beloved gadget in the home. Recently, Amazon published a REST API to build your own Alexa Skill that can be made available to all Echo owners. The skill is what is used to interact with Alexa about a topic. It’s relatively easy to build your own and have it hosted in the cloud. This session will cover an introduction to the Echo and the current development environment for building skills. Then, we will use Node.js and AWS to build our own Alexa Skill. We can also cover an overview on building skills in other languages.

Slack-Driven Development

10:00 am on

Shortening the feedback loop allows us to improve the quality and increase the efficiency of a development team. Come and learn how the versatile team communication tool called Slack can become the heart of your process, allowing you to reduce the feedback loop and centralize the information produced by the large number of tools and utilities involved in your software engineering process.

Some of the practical examples are:

– Continuous integration build failures and successful builds
– Application deployments
– API test failures
– Pull requests
– Team meetings and reminders
– Other integrations

We will be discussing these and many other recipes to improve your team’s productivity.

The Functional Compiler to Javascript

11:30 am on

It may seem the world didn’t need yet another compiler to JS, but Fable brings some new features to the table you should take a look at. With a philosophy similar to TypeScript, the compiled code stays very close to idiomatic JS and adheres to new ES6 standards like modules, classes or iterators, making it easier to interact with other libraries or development tools from the huge JS ecosystem and avoiding any performance penalty. Fable builds on the work of the F# compiler and Babel.js to unlock the full potential of combining two worlds. And of course it lets you take all the advantages of the F# language and compiler we know and love when targeting Node.js or the browser: like static typing, pattern matching, functional standards, terse syntax and great editor support.

Programmatic Interfaces to Minecraft (or how to look cool to your kid)

1:30 pm on

Minecraft’s popularity has resulted in an abundance of mods – however coding a mod in Java is not the only way to extend or interact with Minecraft. In this session we will interact with Minecraft through the Raspberry Jam interface and learn how to build structures in Python. Almost everything is available at the API level and it’s relatively easy to build complex structures that will amaze your children. We will also briefly cover using this as an intro to programming for your kids – they will realize the power of programming saves them time in building their worlds and maybe it will get them more interested in learning to code.

Making cool gadgets with IOT

3:00 pm on

I’ll demo some cool ways you can use Rasberry Pi’s and some web technologies to have fun.

Wearable Hands-on Labs Intel Curie

8:30 am on

Agenda:

1) Introduction to Wearables
2) Sensors( Gyro, Accelerometer, Magnetometer)
3) Introduction to Intel Curie

Hands-on Examples:
1) Fall detection
2) Attitude Heading Reference System (AHRS).
3) Step Counter
4) interface to mobile phone over Bluetooth Low Energy

4) Visualization using the Processor Software.

Introduction to Microsoft Cognitive AI

10:00 am on

Maybe you’ve seen the video online that allows a blind person to “see” using an AI that can recognize faces and objects. You’d be surprised now how easy it is to use those seeing APIs for your own projects! Microsoft’s Cognitive Services, formerly called Project Oxford, is an evolving portfolio of REST APIs and SDKs enabling developers to easily add intelligent services and leverage the power of natural data understanding and machine learning with Azure cloud. This talk will introduce you to vision and speech APIs that can recognize objects, detect emotions, read text from photographs, and more. Learn how to get started making your own applications that have that personal touch.

Anyone can build games on Xbox One

11:30 am on

Microsoft broke new ground with its creator’s club, later dubbed Xbox Live Indie Games (XBLIG) in 2007. For the first time ever, game development was democratized and anyone could be a developer. Building on that, Microsoft welcomes everyone to use their retail Xbox One console to build games.

Prepare to learn how to convert your retail Xbox into a development kit, see some of the latest middleware engines out there, and understand how this could start your career as a game developer.

Whether you’re a veteran C++ or a student just learning how to code, you’ll find value in this overview of the UWP platform, Xbox hardware, and middleware tools.

Developing for Mixed Reality with Microsoft HoloLens

1:30 pm on

Microsoft HoloLens is the first fully self-contained, holographic computer, enabling you to interact with high‑definition holograms in your world. Development editions of the device are shipping now, but you can get started right away with the HoloLens Emulator, HoloLens Documentation, and development in Unity 3D HoloLens Edition. In this talk, Microsoft Tech Evangelist Amanda Lange will discuss the information that’s available now for you to learn how to develop in mixed reality holograms. Explore holographic computing with APIs that enable gaze, gesture, voice, and environmental understanding on a self-contained device.

Scaling Up: going from MBs to TBs quickly

3:00 pm on

Scaling yourself (or your app) up is a wild ride. Your daily choices can yield unpredictable results, and your (or your colleagues) prior choices can suddenly blow up in your face. You’re faced with a number of daunting challenges that can keep you and the team around you on their toes.

In this session we’ll focus on the experiences of going from a small (100’s of MB’s) to a large-ish (dozens of TB’s) environment and thriving. We’ll cover the lessons from the school of hard knocks learned during a rocky launch, enhancing a moving application at scale, and navigating the waters of getting applications to AWS without breaking much along the way.

This talk will not spend too much time on practical code examples, but instead focus on the patterns used to fix database issues, fix C# application issues and work with the infrastructure you’ve got.