How to Create a Global Leaderboard for Unity 3D Using Azure Mobile Services

If you missed the sessions presented by Microsoft MVPs at the 2015 Microsoft MVP Virtual Conference, you should check them out on Channel 9

I was given the opportunity to speak here and decided to give a talk on creating a global leaderboard in Azure, using Azure Mobile Apps (or Azure Mobile Services). The client that was using the leaderboard information was Unity 3D.  I also used Postman REST Client quite extensively during the presentation.

If you are interested, you can check out the talk here:

https://channel9.msdn.com/events/MVP-Virtual-Conference/MVP-Virtual-Conference-Americas-2015/Dev2-How-To-Create-GL-Unity-3D-Azure-Mobile-Services

If game development interests you, make sure to check out another webinar I did where I created a 3D game in 90 minutes using Unity 3D!

Microsoft MVP Virtual Conference

The Power of Community

Microsoft MVP Virtual Conference
May 14 & 15, 11AM to 9PM (EST) / 8AM to 6PM (PST)

Microsoft has put together an online virtual conference, called the Microsoft MVP Virtual Conference, that will have their MVP as speakers. I’ve been fortunate enough to be a Microsoft MVP since 2009. For the first several years, I was a XNA/DirectX MVP. For the last two years, I’ve been awarded the ASP.NET/IIS MVP award.

I’ll be bringing both worlds together in a talk I’ll be giving on Friday at 5PM EST called “How To Create A Global Leaderboard For Unity 3D Using Azure Mobile Services”. This will be a fast paced talk that goes through setting up an Azure Mobile App (a backend Azure service) that will allow me to store high score information. I’ll be going through how the REST API works and how to test it and to create a backend data store to hold the data. To use the data, I’ll be using a Unity 3D demo that shows setting and retrieving high scores from the cloud.

So that is my talk, but there are a total of 5 tracks that will be running over the course of two days! Here are a list of all of the sessions. And here is where you can find a breakdown of each track and each talk’s timeslot within that track.

So if you are into IT, software development, or just someone who wants to know more about Microsoft products (via the consumer track) you should definitely check out some of the sessions in the Microsoft MVP Virtual Conference. There are even tracks for Spanish and Portuguese! So make sure to register today so you can pop in on the sessions you care about. Don’t miss this very unique community event.

As of last week, there are over 5,000 people that have signed for this virtual conference. There are some great presentations that will definitely be a benefit to you if you take the time to attend.

When attending the sessions, I’d also suggest utilize the hashtag #MVPvConf for the event.

Start Time shown in the table below is PT (Pacific Time). You may use the Time Zone Converter to find out the time based on your location.

Day 1 – May 14th, 2015
Time
IT Pro
Track
Developer
Track
Consumer
Track
LATAM (Spanish)
Track
Brazil (Portuguese)
Track
8:00 AM
(PT)
Keynote Address:
Steven Guggenheimer
Keynote Address:
Steven Guggenheimer
Keynote Address:
Steven Guggenheimer
Keynote Address:
Steven Guggenheimer
Keynote Address:
Steven Guggenheimer
9:00 AM
(PT)
BYOD with Microsoft Enterprise Mobility Suite (EMS)
Microsoft Band: Project Online Task Updates from your Wrist.
How to present with your audience’s needs in mind, all within PowerPoint!
Implementing End-to-End High-Availability: Hyper-V, Network, Storage, and Cloud Architecture
Interfaces com Xamarin – O que eu preciso saber?
10:00 AM
(PT)
Microsoft Surface in the Enterprise
Fireside: Cooking with Open Source
Create Custom Icons in PowerPoint
Herramientas SQL-Server Best Practices Analyzer y Microsoft MAP para apoyo en la administración de Bases de Datos
Visual Studio 2015 – Novidades e Produtividade!
11:00 AM
(PT)
What is new in Skype for Business
Detecting Facial Expressions with Azure Machine Learning and Kinect for Windows
It’s Not A Windows Phone, It’s MY Windows Phone
Windows 10: productivo en cualquier tamaño
Introdução ao C#6
12:00 PM
(PT)
Power BI as a Self-Service BI Platform: Architecture, Use Cases, Strengths, and Shortcomings
Supercharge your Development with Azure Websites
Xbox music, the cloud and your Beiber collection
Extendiendo tu Infraestructura Local con Cómputo + Redes de Microsoft Azure: una Implementación en el Mundo Real
Primeiros Passos no ASP.NET 5
1:00 PM
(PT)
Azure Test Labs: From Zero to Hero
DevOps: What Is This Puppet You Speak Of?
Using Office Mix from Boardroom to Classroom
Introducción a Azure Machine Learning
Executando ASP.NET MVC 6 no Mac OS X e no Linux
2:00 PM
(PT)
Azure Remote App for your Line of Business Applications
Mongo Baseball.NET
Windows 10: Making School Life easier with Windows 10 and Cortana
Desarrollando para Office 365
Introdução ao HDInsight Hadoop Tools for Visual Studio
3:00 PM
(PT)
Securing Your Azure Data Center
Node.js for .NET Developers
Migrating from an iOS mobile device to a Windows mobile device and how to keep your Outlook data, emails, and contacts intact
10 Características que todo desarrollador debería utilizar con su sistema de control de versiones. Parte 1
Usando os dados de Mail, Calendário e Contatos do Office 365 em suas aplicações C#
4:00 PM
(PT)
Deploying Highly Available SQL Server in Microsoft Azure IaaS
Introduction to AngularJS in an Office 365 context
Ransomware – Key tools for prevention and recovery
Implementación de Recuperación de Desastre/ Respaldo de Datos con Azure
Project Online – gerenciando projetos e portfólio
5:00 PM
(PT)
Dynamics CRM MVP Ask the Experts
Native iOS Apps using Swift for Office365
Understanding Windows updating
SQL Server 2014 + Azure = Bases de datos hibridas
ALM para Apps for SharePoint
Day 2 – May 15th, 2015
Time
IT Pro
Track
Developer
Track
Consumer
Track
LATAM (Spanish)
Track
Brazil (Portuguese)
Track
8:00 AM
(PT)
Microsoft Azure Infrastructure Automation with PowerShell
Surviving in an Async-First Development World
I’m an uber chic hipster that runs my business on only Apple products; Why would I want Office365?
Implementando Exchange 2013 con las mejores prácticas em cada rol, evitando del principio problemas futuros
Otimizando o gerenciamento de máquinas virtuais no Microsoft Azure
9:00 AM
(PT)
Modern IT: DevOps to ITIL
Roslyn for Normal Developers: It’s Not Just for Compiler Geeks!
Using Access and SharePoint for Travel Expenses and Pulling up Maps
Generando Comunidades Corporativas con SharePoint
Automating Azure Management using PowerShell
10:00 AM
(PT)
Just Enough Explanation of JEA, Windows’ New “Just Enough Administration” (JEA) Tool
10 New Things for Developers on Windows 10
Pivot Table Data Crunching
Power BI 2.0 – la revolucion en inteligencia de negocios en la nube
Designing and Building a Hybrid Cloud, co-starring Microsoft Azure and Your Datacenter
11:00 AM
(PT)
Automating Service Delivery with System Center 2012 R2
Windows 10 and Spartan
Use your Windows Phone to tap into the Contacts, Calendar (and shared Calendars) and OneDrive
Enterprise Mobility Suite (EMS) – Cómo manejar dispositivos móviles en la empresa con System Center R2 Configuration Manager 2012 + Intune
Migrating Active Directory to Windows Server 2012 R2
12:00 PM
(PT)
Best Practices for Virtualizing and Managing SharePoint 2013 with System Center Windows Server 2012
A Lap around ASP.NET vNext!
Delve and the Office Graph – A crash course
Adoptando Marcos Ágiles con Visual Studio Online
Segurança em ambientes virtualizados com Hyper-V e Vmware
1:00 PM
(PT)
Troubleshooting Hyper-V Performance Issues – Black Belt Notes from the field
A Brief History of OWIN
Windows 10: New Features and New Directions
Administración y configuración de Microsoft Deployment Toolkit – MDT 2013 – para el despliegue de Windows 10
Prepare seu datacenter para a Nuvem
2:00 PM
(PT)
Migrating from VMware to Hyper-V for VMware Professionals
How To Create A Global Leaderboard For Unity 3D Using Azure Mobile Services
Windows Phone 8.1: “Hey Cortana” you make my life easier
Cardinality Estimator en SQL Server 2014. ¿Qué es? Y cómo nos beneficia
Deployment ágil com Microsoft Deployment Toolkit 2013
3:00 PM
(PT)
Healthy SQL III
One XAML UI to Rule them All with Universal Apps and Xamarin.Forms!
These Are a Few of My Favorite Things – The OneNote Edition
Accesando Office 365 desde un App Android / Windows Phone
Controlando cargas de trabalho com Resource Governor no SQL Server 2014
4:00 PM
(PT)
PowerShell Desired State Configuration – Custom Resource Development
Cross-Platform Localization for Mobile Apps Using .NET
Windows 10: Productivity Tips
10 Características que todo desarrollador debería utilizar con su sistema de control de versiones. Parte 2
Why is my index still fragmented after REBUILD on SQL Server?
5:00 PM
(PT)
A pain-free migration to Office 365
Resolving Conflicts in Collaborative Occasionally Connected Mobile Apps
Virtual Tour of Microsoft’s Security Response Center
Identidad y Acceso en la nube
Construindo ambientes com o Quórum dinâmico

Go ahead and register for the conference.

See you in there!

The first day of Build 2015 blew my mind!

Satya NadellaYesterday I spent quite a bit of time watching the live stream for Build 2015. I was able to be at Build a couple of years ago but I was unable to get into the registration page when it opened a couple of months ago. I’ve been super busy with client work for the last month so it was probably a good thing that I didn’t travel 3,000+ miles to San Francisco. I’ve been looking for a new laptop / tablet machine and have been thinking about getting the Surface Pro 3, but I wanted to see what was given away at Build. Microsoft gave away the HP Spectre x360. So I spent about $1,500 (after tax) on the 512GB SSD version of that laptop last night. I’ll be digging into that before too long. It will be my presentation machine. My previous machine was an Asus EP-121 Windows 7 tablet that I made a Windows 8 machine. Anyway, I wasn’t able to attend Build, but I spent part of what the conference ticket would have been and bought the “give away”. But this post isn’t about the hardware given away at Build. It is about all of the AWESOME announcements made! Let’s dig in…
I’m going to take you on the journey as I saw things. I went to twitter feverishly as I saw all of the technical goodness that Microsoft was sending our way. First up, we get to hear from relatively new CEO, Satya Nadella.

After Satya, is a hero of mine – Scott Guthrie. I first hear Scott talk back in 2000 in Orlando where he introduced this thing called ASP+ and showed off IBuySpy (later to become DotNetNuke) and of course when ASP+ got to beta, it became ASP.NET. To see a developer rise over the past decade to a very influential and respected member of Microsoft has done my heart good. I always sit in to listen to Scott anytime I get a chance. He has done a lot for Azure since he went to that position a few years ago. He does love his red polo :)

 

Next up on stage was Mark Russinovich, who is super smart and really understood how the operating system worked more so than almost anyone who worked at Microsoft. Microsoft did well to bring him on board and make him a fellow. During his part of the keynote, he demo’d Docker working in Windows. Super awesome! He also showed an actual breakpoint being hit from Visual Studio while remote debugging a .NET app on Linux.

Being able to run .NET Core on Windows, Linux and Mac is awesome. It was around this time that this was reiterated. ASP.NET 5 is great. If you haven’t taken a look at it, do yourself a favor and take a look and watch some of the weekly community stand-ups the teams do. It is open to everyone! At this point the first BIG bombshell was dropped. Below, you will see this is Visual Studio Code running in both Mac and Linux. Too awesome!

 

Oh, and it’s free! The installation experience is super smooth. From download to install it was less than 90 seconds. It was probably closer to 60 seconds.
The next thing was saw was more information around Universal Windows Apps (for Windows 10). Universal Windows Apps have been around for a while, but this time it’s for real. :) You can finally write once and deploy across all of Windows – even including the Hololens! But I’m getting ahead of myself.

After talking about Universal Windows Apps, they started to talk about 4 new ways to bring apps to Windows. This included bringing in existing web applications, bringing in existing .NET and Win32 applications, bringing in Android apps that used the Java/C++ “subsystem” and finally, even bringing in Objective C apps. That is pretty incredible to make it as painless as possible to let all developers to bring in their apps from all the different ecosystems (even Windows desktop). It was around this time that my head felt like it was going to explode and I spit out this tweet:

And then I promptly retweeted @Windows (along with well over 1K other people):

Then there was talk about the project previously known as Spartan. Microsoft introduced their new browser that will ultimately (read as a long time from now) replace Internet Explorer. This browser is called Microsoft Edge and it looks to be pretty awesome.

Next, they showed Continuum which allows your Windows Phone to be your PC. This will be huge in emerging markets where many people have a smart phone but don’t have a conventional computer. Paul Thurrot said it best with his tweet:

 

And finally, we started to see the bit I was soooo excited about. Microsoft Hololens. It is hard to believe it is real. When they first showed this when they announced Windows 10, I was down right giddy. Sersiously, I was almost aggravated with myself over how excited I was over a piece of technology. But I couldn’t help myself. It was exciting. Seeing the demos again at Build just brought in even more excitement. I’m finding it extremely hard to wait for Windows 10 simply because of the Hololens. It is going to be awesome.

 

Then we got to see a cool robot named B15. I’m telling you, this is going to change the way we interact with the world.

 

And with that I’ll wrap up my experience with the keynote from the first day of the Build 2015 conference. It was awesome and I think this image of Satya shows how he thought it went:

East Coast Game Conference 2015

I was able to speak at the East Coast Game Conference last week. It was a good time. I gave a talk on Unity 3D. The room was pretty full and I was able to meet quite a few folks afterwards. I always enjoy talking to people after my talks.

I was able to attend some good talks as well. I listened to Luis Cataldi, from Epic talk to students and those trying to get into the game industry. He had several great points. He said,

Good habits trump raw talent.

This is so true in almost every field. Talent is awesome, but many times it is about grit. It is about sticking with something and working it out. Figuring out what went wrong and what the problem was and then fixing it. It is about not giving up and continuing to move forward. It is nice when we can work smarter and not harder, but sometime we just need to dig in and work harder. And that is ok. In fact, usually that is much better than having all the talent in the world and not working that hard. So, if you aren’t the best developer in the world, or the best artist, writer or whatever … don’t worry – just work. Diligence pays off – every time.

He also said,

Do less, better. … Make an awesome broom closet, not a mediocre city.

Here, he was discussing creating portfolio work to present to companies to try and get a job. If you want a job in a game studio, chances are you will be working on some part of an engine, or creating some tool for the game developers to use, or you will be tasked with making the flooring of the buildings. These are all very limited in scope and require a great deal of domain knowledge. These types of game companies want someone who can spend time getting something done at a fantastic level. He also mentioned, that in regards to your portfolio, you are judged on your worst piece, not your best. So if there is one in question, it is best to leave it off. Only show your absolute best work.

I met up with Dave Voyles and David Crook, both Microsoft employees, and was able to enjoy a meal with them. There was great conversations and plenty of good food. I then headed back to put the finishing touches on my presentation. It felt a little awkward talking about Unity 3D in Epic’s backyard. I love both engines and am so jealous that these tools weren’t available 25+ years ago when I was getting started.Dinner with Dave Voyles (photographer) and David Crook

The keynote was presented by Mike Laidlaw, the Dragon Age Creative Director at Bioware. His talk was fantastic. I enjoy the Dragon Age series, but unfortunately, I hadn’t had the opportunity to play Inquisition yet. I’ve been working on getting my game development site off the ground and between that and consultant work, I’ve had very little game playing time. Still, it was great to hear him talk about the game.

I dropped in on David Voyle’s talk on WebGL. Unity is working on getting this to work, but there are still some missing pieces in many of the browsers. WebGL is still a great way to get your website to be able to utilize your GPU. If you haven’t taken any time to look at this great technology, spend some time to get to know it.

I had lunch with David Voyles and David Isbitski, formerly with Microsoft, currently with Amazon. After lunch, I was able to hear @thedavedev talk about in app purchases and a lot of support data that discussed best practices for monetizing apps.

I also attended a talk from David Crook where he gave an overview of Azure for game developers. I personally think Azure and Game Development go together like peanut butter and jelly.

I wrapped up the sessions I went to by attending a session on “Idle Games”. I had never even heard of the term. These are games that basically play themselves or require you to click to progress. It was fascinating hearing Anthony Pecorella, from Kongregate, talk about this new genre of games. He talked about games like AdVenture Capitalist 2014, Cookie Clicker, A Dark Room, Candy Box, Tap Titans, Bitcoin Billionaire, DripStat, and Swarm Simulator.

Overall, it was a great conference and I had a good time. This was the second time I’ve spoken at the East Coast Game Conference and I hope to go back next year.