If you were nice this year (or maybe even a little naughty), Santa and his elves are preparing something just for you. But how will you know when jolly old Saint Nick leaves the north pole? And how do you know what time you need to be fast asleep? With Where is Santa for Windows Phone and Windows 8 of course!
So grab the apps and a cup of hot chocolate. Set out the cookies and watch to see when Santa is on his way to see you!
I hold weekly Office Hours on Wednesdays from 12pm to 2pm. On the 1st and 3rd Wednesdays of the month I hold them at the Microsoft store in the Galleria mall. On the 2nd and 4th Wednesdays I hold them online.
What are Office Hours?
Simple, it’s a time where I’ll be available for folks who are working on Windows 8 apps to come by and ask questions, show off apps in progress, and in general get help getting their apps in shape for publishing to the Windows Store. I’ll also will be able to help with Windows Phone 8 apps and Windows Azure questions… I just may have to do additional research before I can get you an answer.
Please sign up for a slot via the ohours.org button above so that I can manage my time more effectively, and let me know if you’re coming to get some questions answered (and a heads-up on the questions will give me some time to do any needed homework) or just to spend some quiet time coding. Feel free to email me at jbienz [at] microsoft.com.
There are so many incentive programs for our developers right now that I needed a list just to keep track of them all. Below is what I have so far, thanks in large part to Jeff Blankenburg and Ryan Lowdermilk.
I’m sure we’ve missed other incredible opportunities, so if you know of anything that should be on the list please e-mail me and let me know.
Student Store Accounts (Students Only)
Students, did you know that you can get your Windows Phone and Windows 8 developer accounts for free?
Here are all the details, step-by-step:
Generation App is an ongoing loyalty program for developers of Windows 8 and Windows Phone 8 store apps.
Platforms: Windows 8 and Windows Phone 8
Hours: M-F 6:30 AM to 5:00 PM Pacific
- Up to 30 minutes with a Windows 8 design expert to review your app and provide guidance on creating a stunning user experience.
- Up to 30 minutes with a Windows 8 architect to assist with building on Windows 8.
- More incentives to be announced soon…
Windows 8 App Madness (Students Only)
With this challenge we hope to excite and motivate thousands of students to build Windows 8 apps over the next 2 months!
Platforms: Windows 8
- $100 gift card per app! (limit 5)
- Accelerator: 4 sprints during the challenge. The student who publishes the most apps during the sprint wins a trip for 2.
- Facebook poll of students will determine the trip destination. Get voting!
Ultimate Experience has some cool prizes and it’s more like a raffle than a competition.
Platforms: Windows 8 and Windows Phone 8
- 1 App: Store account fees reimbursed and a copy of Halo 4
- 1+ Apps: Every app increases the chance of winning one of 12 XBOX consoles with Kinect
- 1+ Apps: Every app increases the chance of winning one of 3 trips to visit Microsoft Game Studios
WP Next App Star
Your chance to be on TV, win devices and more!
Platforms: Windows Phone 8
64 Winners Receive:
- A Nokia Lumia 920 Windows Phone
- Featured promotion in the Windows Phone Store
- Exposure via online media
- A 1-year free Dev Center subscription
- All of the above, PLUS Featured placement of your app in a Windows Phone primetime TV ad in the U.S
This Nokia developer loyalty program keeps the fun and prizes coming year round. This program is currently in beta and a code is required to join, so you can e-mail me and I’ll see if I can get you a beta code.
Platforms: Windows Phone 8
- Get credit for old phones (any make and model) toward a new Nokia
- Submit applications to challenges and win experience points
- Cash in experience points for prizes like Nokia phones, gift cards (Amazon, Starbucks, etc.), XBOX consoles and more
- New challenges and new prizes every month
Nokia Buy 1 Get 1 Free
While this is not specific to developers, Nokia is running a buy-one 920, get the second 920 for free. On AT&T, this comes out to two Nokia 920s, for $99. For people wanting to develop for Windows Phone 8, this deal might be the icing on the cake. — Thanks to Wiliam Fink for the tip!
Platforms: Windows Phone 8
- 2 phones for the price of one!
Social Good Contest
Windows 8 Apps for Social Good invites both new and seasoned developers to create an app for “social good”.
Platforms: Windows 8 and Windows Phone 8
- Best Overall Windows 8 App: $15,000 + Windows Phone
- Best Overall Windows Phone 8 App: $15,000 + Windows Phone
- People’s Choice: $10,000 + Windows Phone
Dev support, design support and more awesome goodness on the way: bit.ly/winappsupport
As we’re doing game development labs at colleges and universities, I wanted to share some of the awesome free resources that are available to game developers.
Metro Studio – 600 free metro style icons from the cool folks at SyncFusion.
The Noun Project – Hundreds (if not thousands) of icons for just about anything you can think of, all free. These icons will download in Scalable Vector format (SVG) and will need to be converted to PNG at the size of 48 x 48 pixels. Either InkScape or Expression Design can be used to do the conversion.
BRKR Design Icon Pack – This pack costs $20 but it includes 350 of the most commonly used icons already sized and ready to go. This single package includes all 350 icons for Windows Phone, iPhone and Android.
Every Stock Photo – Search thousands of images, many of which can be used in apps and games. Click on advanced search, then click the Licenses dropdown and check ONLY the boxes for Public Domain and Custom Free. When you find the image you’re looking for, be sure to follow the search result back to the original site and read the license to make sure it can be used in your application.
Soundjay – Hundreds of sound effects that are licensed for use in apps and games. Most (if not all) of these sound effects should play as-is on Windows Phone. You can use a tool like Audacity to convert any sounds that don’t play into ones that do.
Freesound – Thousands of free sound effects. Carefully check the license for each sound effect because not all sound effects can be used in commercial applications. Some sound effects may also require you to give attribution (credit) to the author in your application. Not all sound effects on this site can be played on Windows Phone. You can use a tool like Audacity to convert sounds that don’t play into ones that do.
Audio Micro has a free music and sounds tab on their home page.
Incompetech – Hundreds of high quality songs available for use in apps and games. They’re even organized by genre, "feel" and keyword. Many of these songs require attribution (listing in credits) or can be purchased for royalty-free use.
FreePD – Another great resource for finding free music in the public domain. Their FAQ states that all of the songs listed are available for use without attribution. Double-check that the page shows "CC Zero" at the bottom.
Open Clipart (.org) – Hundreds if not thousands of free images, most don’t even require attribution!
Video Game Sprites – Actual sprites from original games, not able to use in commercial games
Lost Garden – Game graphics, asks for acknowledgement.
Open Game Art – Graphics, sprites, icons and sounds. Asks for donations.
CGTextures – Amazing, pretty exhaustive collection of tillable textures that can be used for free in commercial games. Attribution is appreciated but not required.
A few months ago I bought a VirtuaPin digital pinball machine. I bought it as a hobby and knew it would be fun to discover new tables and create custom add-ons for the device. What I didn’t realize at the time is how much effort goes into adding a new table. Here’s what I usually have to do:
- Download the table file itself
- Download Backglass image (for HyperPin)
- Download Playfield image (for HyperPin)
- Download Playfield video (for HyperPin)
- Download Wheel image (for HyperPin)
- Download Animated backglass (for UltraVP)
- Add the table in the right HyperPin database.xml file
- Run the table to position and resize the DMD window
- Edit the table script to run UltraVP instead of PinMAME
That’s a lot of steps to go through and I found myself always forgetting one piece or another. This table’s missing the playfield image, that table’s missing the animated backglass. Repositioning the DMD turned out to be a pain too, especially after I had a bunch of tables running and decided to change resolutions. All of my DMD windows were off the screen! I had to reset all ROM settings and position them all over again.
What does it do?
In the current release PinTools can…
List all installed tables and show which additional files are missing
The configuration file allows you to set which folders to look in and also allows you to specify which files are required for the table to be considered “complete”. In the screenshot above, Back to the Future is considered complete even though I don’t have a table video. That’s because I’ve set table videos to be optional.
Automatically generate HyperPin database files
You can select All tables, “Complete” tables or even individual tables, then let PinTools generate HyperPin database files for you. Easily add tables in HyperPin when they’re ready to be put on display.
See DMD locations for all ROMs in the registry
See the DMD position size and rotation settings for every ROM at a glance.
Bulk update DMD settings
Select an existing ROM to copy settings from or type in new values. Then, apply the settings across all ROMs or even individual ones.
This was a quick project for me (created in two afternoons) so let me set some expectations about the quality of the code:
There is no settings screen. You must edit PinTools.exe.config to change folder paths and change which files are required for a table to be considered “complete”.
If you don’t edit the config file and set the right folder paths for your system, the app may crash.
The app may also crash because it’s Tuesday, or it’s raining, or it’s just moody. There’s no warranty, back up your files, use it at your own risk, blah blah blah.
I made absolutely no attempt whatsoever to deal with threading. If you have hundreds of tables this app will appear to be locked up while it loads data and scans for files. This is absolutely horrible and unacceptable. No one should ever block the UI thread, that’s just being lazy. I was lazy. I might try to fix this at some point but for now, hey it’s free, enjoy.
Important Note: Many Full Screen (FS) tables include code in the script to rotate the DMD left or right. Look for “rol” or “ror” (including quotes) and comment these lines out. Otherwise PinTools can update the rotation settings in the registry but they’ll just get overwritten on the next run.
PinTools requires .NET 4.0 (at least Client Profile). If you don’t have it, get it here.
For developers: Because I hate it when somebody makes a tool, ends up not having time to support it and won’t release the source code, here’s the source code on Git.
For most users: Download PinTools1_0.zip, unzip, edit PinTools.exe.config, run PinTools.exe.
As a Mobile Evangelist a big part of my job is trying to figure out how to get people excited about building apps. My team and I have tried a number of strategies this year ranging from training to creating tools and even hosting our own events. Unfortunately, we just weren’t reaching the numbers we were hoping for and I had this nagging feeling we were missing something important. Over the holidays I worked with some really smart people to come up with a few ideas that resulted in 169 apps in 24 hours. This blog post is the story of how.
Back in October I bumped into Paul DeCarlo at Houston Techfest. I had originally met Paul a year earlier when I was teaching Windows Phone development at U of H and Paul was completing his masters. In the time that followed, Paul actually started his own side business selling applications in the Windows Phone marketplace and business was good. I had an idea that I wanted to do something with students, but I didn’t quite know what. While we were talking at Techfest I found out that Paul was the Microsoft Campus Rep, Asus Campus Rep and Rockstar Campus Rep all at the same time while he was at U of H. He told me about these crazy LAN parties where they would bring in Rockstar and bands and stay up all night. I knew there was an idea there, but I didn’t know what it was.
Fast forward to December and Paul was reaching out to me because he had a friend he wanted to nominate as the new Microsoft Rep at U of H. That friend was Rick Gentry and I was able to help get Rick nominated and hired in that same month. About that time I was talking with Deanna Robison about our marketing budget and about trying to excite students. We kicked around the idea of buying a bunch of $10 Amazon cards as a way to entice students to build their first app. She also knew we were getting a bunch of phones. We didn’t know how many but we liked the idea of giving students a phone for every three apps they got into marketplace.
On a Tuesday night in early February, Paul and Rick and I all got together at a small Vietnamese place on Bellaire. I got Microsoft to pay for the meal and the three of us brainstormed for several hours about how we could do something big at U of H. We knew we wanted apps and we knew we wanted to include as many people as possible. Going on the assumption of cards and phones, we identified three different “groups” of students that might attend our event. The first group were Sr. CS students who had development experience and just wanted the challenge. The second group were actually business students who didn’t have strong development skills but were interested in being able to say they had put an app in the marketplace. The third group were Jr. CS students that were somewhere in between. Meaning they had some development experience but were new to coding and maybe hadn’t seen .NET before.
For each group of students we tried to identify what we could do to make that group a success. For the Sr. students we thought it’d just be best for me to sit with them and answer all their questions. Easy enough. For the business students we thought it would be great to teach them AppMaker. We knew we needed something different for the Jr. developers, but what? Something that could take a little experience and turn it into a lot. Then I remembered the awesome starter kits people like Chris Koening and Danilo Diaz had been creating and I put together a Resources for New Phone Developers blog post that ended up getting used at BAOC and other student events. One starter kit in particular really stood out to us, and that starter kit was the Social Viewer template by Nick Randolph. Paul had recently started the basics of his Just a Fan apps on the Social Viewer template and Social Viewer had far more functionality than AppMakr ever would. More importantly, we had access to the Social Viewer Source. We knew we wanted to leverage it but we didn’t know how.
January ended up being a busy month. I reached out to Nick Randolph with the idea of creating a UI configuration tool for his Social Viewer template. The idea was to make Social Viewer as easy as AppMakr. Nick was very supportive and gave me access to everything I needed. But then things started to fall apart when I found out that our Windows Phone hackathon was going to be competing for students against an Android hackathon scheduled at the same time. We decided it would be best to either lead the Android event or follow it so that we weren’t competing. But the Android event was scheduled for the third week of February and pushing ours out into March would be too late. It would have to be in early February, and to make matters worse, new rules were coming down that required the use of dev tools at our events (meaning AppMakr would not be allowed). We did manage to get an exception for AppMakr since the event was already scheduled, but we knew we needed a strategy that would be successful without it going forward.
On January 26th, Paul, Rick and I stood in front of a room full of Cougar CS students at U of H. Paul gave a presentation on the amount of money he’d made creating apps for Windows Phone and we talked about why having a smaller marketplace is actually better for developers. We closed by announcing the Windows Phone hackathon and, thanks to Deanna, $1,000.00 worth of Amazon cards and 10 phones. We knew we could get more phones and cards, so we hinted that there would be something going on past the event too. All of the students seemed interested and even suggested we plan it for a full 24 hours. The three of us went home excited that night. Rick created a flyer and I started work on a super secret project.
Two weeks later AppFactory was born and I let Paul know what I’d been working on.
AppFactory is, for all intents and purposes, a glorified MSBuild script with a pretty front-end. It’s purpose in life is to take template projects (or starter kits) and turn them into factories of applications. Paul had actually a simplified version of AppFactory for his Top Music Videos and “Just a Fan” suite of applications. Paul wasn’t alone. Anyone who’s built a company based on multiple applications on a similar codebase knows this problem. You start from a template, add custom logic, bring in your data, sprinkle in artwork, reconfigure services, build the solution, rinse and repeat. This problem has been solved before, but it’s always been solved uniquely for one project and never shared for others to use. And that, specifically, is what I wanted to fix with AppFactory. I think Paul was a little surprised and shocked to see AppFactory, but he realized right away what it meant for him. It meant he could get out of managing his build process and focus specifically on the part he cared about – his IP. In less than 24 hours Paul had completely replaced his custom build process with AppFactory. 24 hours after that he had used AppFactory to rebuild all 300 Just a Fan Applications. AppFactory would come back later to help with our event.
On February 10th, Paul Rick and I met for dinner on the U of H campus just before our hackathon. We had Asian food, as seems to be our tradition, and we talked about how we thought the night would go. I personally expected about 25 students and I expected to lose half of them before the night was over. We knew we’d start with Rick giving a presentation on AppMakr and follow it up with Paul giving an overview of the Social Viewer template. In a last minute stroke of genius we thought it would be cool for Paul to use a football team as the subject for his Social Viewer talk. Then, if we had time later, I could do a walkthrough of converting that to a suite of applications using AppFactory. We didn’t discuss the number of apps we thought we’d end up with, but I remember thinking I’d be happy to get 30 or 40 by the time we were done.
At 6:00 PM we walked into a computer lab packed wall-to-wall with students.
There were more than 50 people waiting to get started, and there were so many unexpected attendees that we had to overflow some of them into the next room.
Because we had so many people that had never done Windows Phone or .NET before, I started with a 20 minute overview of Visual Studio and Expression Blend. After running to the gas station to get us some ice, Rick followed up with his presentation on AppMakr. Not long after that Paul did his presentation on Social Viewer. It was awesome.
Rick, being the Rockstar promoter, got everyone hopped up on caffeine and within three hours we’d already given away our first phone.
The second phone went about 30 minutes later and the pace just kept up like that the rest of the night.
I knew a 24 hour event would be tough, even for college students hopped up on Caffeine. Luckily I had thought of that ahead of time and my awesome boss Nathan approved budget for food and for an XBOX. I brought my own copy of Rock Band and I also brought my own personal RC helicopters and RC trucks to drive around. Together with some loud music between Rock Band sessions, these distractions proved to be just enough to keep everyone going all night long. Though we did still lose probably 50% of the attendees at night, keeping 25 college students interested in anything for 24 hours is no small feat. 🙂 Here’s a photo of us playing Rock Band at 4:00 AM.
About an hour after that picture was taken I was given a special surprise. Paul had been taking notes when he gave his Social Viewer presentation and he noticed a team of four guys were really paying attention. Entirely on his own, and without me knowing it, Paul sat down with that team and walked them through using AppFactory to take his football sample and turn it into a suite of 32 applications for the NFL. Those guys showed up with very little programming experience and left with $320, a phone for each of them and the start of a new business. It doesn’t get any better than that.
When 6:00 PM rolled around on Saturday I was surprised at how lively everyone was; even me. I felt like I could have stayed a few more hours (and part of me really wanted to since apps were still getting submitted at a regular rate) but luckily I had just kicked of AppTastic with U of H allowing students to continue submitting apps even after the event was over.
When I finally sat down and really looked at the spreadsheet I couldn’t believe my eyes. I checked and double-checked to make sure there wasn’t a copy-and-paste mistake. Did we really make 169 apps in 24 hours? We did. Not only that but I had created a column called ‘Is AppMaker’ to keep an eye on how we were doing with custom dev. Out of 169 apps, 104 were custom code. That means that only 38% of the applications were AppMakr. Many of the students started with AppMakr to get something done quickly and then moved on to custom code. Lots of the AppMakr apps were quality work too, like the Recipes app and Adventure Time.
All in all we consumed more than $300 worth of pizza, 36 kolaches, a dozen doughnuts, 2 crates of Rockstar and 12 liters of softdrink. We gave away $1,500.00 worth of Amazon gift cards and I still owe $180 more. We gave away 10 phones and I still owe 31! This has been one helluva learning experience, and I hope I get to do it again.
Facebook Event Page – Lots of great commentary, especially the oldest pages.
Photos of the Event – Photos shown in this article and many more.
App Photos – Photos of 48 custom applications written at the event.