Microsoft Insights

I’ll be interviewed at an upcoming online Microsoft Learning event. Join to get tips from experts on emerging opportunities for developers. The panel will include senior executives from Dice, PayScale, and the Center of Excellence for Information & Computing Technology for Bellevue College. Register now

Death of the PC... I Think Not

Ugh… if I hear one more time about the death of the PC…

I don’t mind naysaying persay, although I try not to partake. It’s very popular to be negative. Complainers are a plenty. A person can do better though than to spend their time getting frustrated as a response.

I I tend to enjoy more talking about what’s good about this and that whether it’s born out of a tech giant or a tech startup. I don’t mind pointing out what’s great about the competition. Where would we be without competition?

But the death of the PC topic is annoying because it is carrying so much more momentum than sense, and I don’t like things that carry momentum and not sense.

Critics talk about the recent 14% decline in PC sales as if it’s the locked trend that will soon see us into a world where PCs don’t exist, and furthermore, they continue to attempt to tie the future of Microsoft to that number.

A couple of thoughts. First, 14% is not a linear trend to the demise of PCs. Second, Microsoft is decoupled.

To my first point, I think we are quickly headed into a world where PCs don’t exist… at least, PCs as we now know them. The big box you slide under your desk - going away. The laptop that confines you to a mouse and keyboard and requires a special backpack - goodbye. The PC is already experiencing an evolution swift enough to call a revolution. Watch this Intel commercial for example.

“That’s just dinosaur PCs taking their right place”

So what’s with the 14% decline? That’s just dinosaur PCs taking their right place. When my wife wanted to look up a recipe three years ago, she dragged her 75 pound Dell laptop out and looked it up. And it seemed great compared to trekking to the office to spin up a desktop. But today the dinosaur is simply not the right tool for the job. If we were contemplating a device purchase for looking up recipes, we would contribute to the 14% decline in sales by buying a tablet device that turns on faster, stows quicker, and can be held in one hand. And actually, that feature on the Surface where you can turn the page without getting brownie batter on the screen is pretty awesome too!

There are a lot more than 14% of the use cases that a tablet or a phone will do great, yet people are still using their dinosaur PCs for that. Why? Because they have them. Not everyone goes out and buys the latest gadget in its infancy. But they’re not going to spend money on a new 15” screen when all they need is 8. We know that.

So expect to see PC sales drop. They’ll take their right place, and consumers will be better off using technology that applies to the task at hand. But don’t bet the farm that PCs are going to dye, because I know a lot of people that would sooner cut steak with a butter knife than use a get real work done.

And to my second point. Microsoft is not a static entity and does not have its future tied to the dinosaur PCs. Some components of Microsoft’s business that I think you’d agree are significant mostly if not entirely immune - Azure, Office, Xbox. And even Windows has proved its agility.

Never underestimate the creative engine at Microsoft constantly innovating and pivoting to not only keep up with this higher tech world, but to lead where possible as well.

That’s all.

Where to Start

There was a feature of Windows 8.1 Preview that opened the Start Screen on whichever screen you were actively using. This drove me nuts. I expected my Start Screen to be on a certain screen. The constancy is important and I also wanted it to appear on the touchscreen of my laptop, not my external touchless monitor.

In the final release of Windows 8.1, however, this is configurable.

Simple right click your task bar, choose properties, go to the Navigation tab and uncheck the box for Show Start on the display I’m using when I press the Windows logo key.

Giveaway - Prometric Exam Coupons

If you’re looking to take an exam and get MCSD certified, have I got a deal for you!

I’m going to give away 25 (that means you have a high chance of winning!) coupons that will get you two exams for the price of one.

Here’s what you do to qualify…

I’ll randomly draw 25 people out of everyone that qualifies and send them a code via email to redeem your prize.

The drawing will be Friday, Oct 25.

The Design of Rustic Citrus - Interview with an Indie Game Dev

I love writing code, but I also love the developer community and talking to other developers that have made or are working on great apps.

The way I see it, apps are a medium for expression much like so many other forms of media. Apps take it a bit further though, since they have form and function as well. I know that good art adds real value to our lives, and so do good apps. They inspire us, but they also offer entertainment, communication, and time savings – true utilities.

Does a game have function? Of course it does. A game conquers boredom, stimulates the brain, entertains the children, and much more. Enter Rustic Citrus.

I met over coffee recently (because that’s what we do in the Pacific Northwest) with Jacob Wenger to talk about his game Rustic Citrus - published on Windows 8 under his publisher name, Floating House Studios.

Jacob's day job is working on the Internet Explorer team at Microsoft. Naturally, he's adept at all things HTML and JavaScript, and so he chose the web platform for implementing his first game. In fact, Windows 8 offers all kinds of help to a developer that is choosing to write a JavaScript app - an animation library, some composite UI controls, and more, but Jacob decided to go almost entirely with pure JavaScript - even deciding to take on very little in the way of JavaScript libraries as dependencies.
Just like I did with [My Q&A with Indie Game Dev Studio, Random Salad](/randomsalad), I interviewed Jacob to try and get some of his experience and learning out to you - my readers. Here's what transpired.

Meet Jacob Wenger of Floating House Studios

ME: Hi, Jacob. Tell us who you are, what you do, and how you came to create Floating House Studios?

JW: Hey, Jeremy! Thanks for having me. I graduated from the University of Notre Dame in 2012 as a computer science major and soon after I began working as a software developer for Microsoft. Ever since my first computer science class years ago, I have constantly had some sort of side project going on outside of class or work. I created Floating House Studios as an umbrella company for all of these projects to fall under in order to give them a consistent branding. Rustic Citrus is my first app for the Windows Store and it is also the first big title for Floating House Studios.

ME: So naming and branding is important to you?

JW: To me, naming and branding lends a real air of legitimacy to products. For a small indie developer like myself, I feel like it’s important for me to establish a brand which people recognize and towards which they associate positive experiences. I want people to assume an app is beautifully designed and addictive simply by the fact that it comes from Floating House Studios. Towards that end I’ve spent a lot of time tuning the look and feel of Rustic Citrus to provide a high-value, beautiful experience in order to start the Floating House Studios brand out on a good foot.

ME: What is your role at Microsoft and how long have you been on board?

JW: I’ve been a software developer on the Internet Explorer team within Microsoft for a little over a year now. My team within Internet Explorer is focused on both the performance of the browser’s myriad APIs and compatibility with other browsers.This is my first full-time job after college and I have to say that after working on class projects seen by a dozen people at most, it’s quite an experience working on a product with hundreds of millions of daily users. Working on a browser has also shown me how powerful the modern web standards are and how much easier it is now to create games like Rustic Citrus than it was even five years ago.

ME: Did you work alone on Rustic Citrus?

JW: Right now Floating House Studios is a one-man shop. I’m the only one writing code and actively promoting Rustic Citrus but I work with a fantastic graphic designer named Amanda Jonovski who I went to school with at Notre Dame. Outside of the beautiful graphical assets she made, the rest of the app is my own creation. I of course should give a hat tip to several friends and family members who helped me test the app by finding bugs and offering suggestions for new features.

Let’s talk about the design and the code of Rustic Citrus

ME: So you created Rustic Citrus. Can you tell us how you came up with the game idea and where you got the name?

JW: Rustic Citrus initially began as a class project during my sophomore year at Notre Dame. I was a big fan of TextTwist growing up but I never really liked how the game looked. I wanted to create a game in the same spirit while focusing more on providing a delightful experience. This meant I had to have a great name. Since the game is about spelling words given a set of random letters, I wanted a name which was inspired by this. I wrote a program to generate all six letter words which are anagrams of each other to see if anything promising showed up. When I saw the words “rustic” and “citrus” next to each other, I knew Rustic Citrus was what I had to call it. It provided me with not only a great theme and color palette but also a nice play on words. Even after that class ended, I couldn’t get the idea of turning Rustic Citrus into a full-fledged app out of my head. The summer after I graduated in 2012, I started developing Rustic Citrus as a Windows Store app and have been working on it ever since.

ME: The design and user experience in Rustic Citrus are first class. Can you give us a few examples of things a game developer can do to create great user experience and attractive design?

JW: When it comes to designing the look and user experience of an app - especially a mobile app - a lot of small things add up quickly. Having a consistent theme to your game makes your game memorable and stand out. For Rustic Citrus, this meant repeating the fruit theme on the game’s buttons and the rustic theme on the wood and paint background images. In a similar vein, you also need to maintain a consistent color palette and font choices. Another thing to focus on is making your game look like a native app on the operating system for which you are developing. A lot of games on the Windows Store don’t necessarily follow the modern look of Windows 8. Making an app which does this can help you stand out in a crowded market. With games it is also important to not make the app overly complex. You want to provide quick access to things like instructions, options, and of course the ability to actually play the game.

ME: What sort of work did you have to put into the UX of the app?

JW: I’ve already logged plenty of hours playing with a wide range of apps across the Windows 8 platform. One of the great things about them is that they all follow a similar design philosophy, making each one look like it was developed specifically for Windows 8. This is true for almost every app category in the Windows Store except games. As I just mentioned a minute ago, most games don’t follow the grid and animation paradigms Windows 8 tries to champion and I thought this was a shame. So that was one of my major goals in building Rustic Citrus - follow the design guidelines provided by Microsoft while taking some liberties to make the app shine. Thankfully, the WinJS library Microsoft provides makes it easy for any app to adopt the look and feel of Windows 8. I chose to embrace this and give it my own spin.

ME: Can you explain your monetization strategy for Rustic Citrus and your reasoning behind it?

JW: I wanted to price Rustic Citrus competitively with other games on the Windows Store platform while still allowing me a chance for it to generate revenue. I noticed that, on a whole, apps on tablet, laptop, and desktop devices cost more than on smaller mobile devices like phones. For example, a game like Angry Birds may be $0.99 on an iPhone but it was $4.99 in the Windows Store. For this reason, I figured that offering a high-quality game at $1.99 would give people a sense of getting a deal on the app. I also wanted to offer a free one day trial to get people hooked on the app without having to pay upfront. Everything I read online told me that apps on the Windows Store with free trials made many times more revenue than those without one. I also created a slimmed-down, free version of Rustic Citrus available at which I use in my marketing efforts to try to give people a taste of what to expect before actually paying for the game. My whole focus was to provide just enough incentive in the free versions to convince people to pay the $1.99 for the full app.

ME: What languages, libraries, or frameworks did you use to create Rustic Citrus?

JW: My experience on Internet Explorer has shown me just how far native web technologies like HTML5, CSS, and JavaScript have come over the past few years. Thanks to the fact that Internet Explorer is now so standards-compliant, I had access to a huge range of APIs out of the box. Therefore, Rustic Citrus is almost built entirely out of web standards. However, I do make use of three JavaScript libraries: the WinJS library provided by Microsoft, the ever-useful jQuery library, and a vector graphics library called RaphaelJS to create the game board. I’m hoping in the future that I can even get rid of some of those dependencies.

ME: Is game development something you genuinely enjoy?

JW: I enjoy game development because it allows me to express my creative side. Building an app from the ground up allows me to tap into a part of my brain that I don’t get to use during my day job. Controlling every aspect of a project from how it looks to how users interact with it to how you get people to buy it is at the same time challenging and rewarding. And there really is no greater joy for a programmer than seeing someone using your app or playing your game with a smile on their face. I’ve worked on a lot of projects that never saw the light of day, so seeing my friends, family, and especially strangers playing Rustic Citrus and enjoying themselves has been very fulfilling.

ME: Can you tell us why you chose to develop for the Windows platform first?

JW: I actually always figured I would build Rustic Citrus for iOS first. iOS has consistently been the platform which generates the most revenue for app developers and I had already done some iOS development with a previous project of mine. However, the issue with the App Store is that it is over-saturated and app discovery is entirely broken. It’s next to impossible for a small studio to get an app in the top 25 which is where you have to be if you want your app to generate any substantial amounts of downloads or money. Right around when I started to focus on Rustic Citrus development, Microsoft released Windows 8 and I saw the Windows Store as a huge opportunity. I could get access to hundreds of millions of users on a new operating system with a young app store without a lot of big names to compete against. I was hoping the youth of the Windows Store would allow me to get a foothold there and then I could use that momentum to get into the top 25 on other app stores on platforms.

ME: How much time did it take to develop Rustic Citrus?

JW: I don’t have an exact count of the number of hours I’ve been working on Rustic Citrus, but it has definitely been north of 100 hours. I unfortunately don’t get to work on it as much as I’d like to since I have to fit time in after fulfilling my duties for my full time job, but I do get to work on it for an hour or two on most days.

ME: Would you rather have high reviews or a ton of downloads?

JW: That’s a great question. While both are obviously great things to strive for, I would have to say getting high reviews are more important to me because they should lead directly to a ton of downloads. It’s of primary importance for me to put out a product which makes people smile and keeps them coming back. That means making the app experience addictive, easy to understand, and crash-free. I feel like I’ve done that with Rustic Citrus so far and my app rating of around 5 stars has proven that. I know that putting together such a great experience will ultimately lead more people to give it a try and it will garner more downloads. I’m hoping someday the time I’ve put into making this a first-rate app will lead to a snowball effect in the number of downloads I see.

ME: So what’s next for Rustic Citrus?

JW: I recently released version 1.1 of Rustic Citrus which adds some new features including 55 achievements which users can earn, the ability to end rounds early instead of waiting for the timer to run out, the ability to reset all your game data, and some miscellaneous bug fixes and performance improvements. The next big thing on my to do list for Rustic Citrus is to add a multiplayer mode where you can play against your friends or against other random players. Once I have that working, I’m going to look to expand to other platforms like Windows Phone, iOS, and Android. I want to get Rustic Citrus into as many people’s hands as possible.

Big thanks to Jacob for doing this interview with me. It’s great to get people and projects like this in front of the rest of us that are working hard to get our apps in the store. If you have Windows 8, you should download Rustic Citrus and give it a whirl.

Student Resources

If you’re a student and you want to get involved in developing apps for Microsoft, then this page is for you. I’m going to outline and maintain all the resources I know about that are specifically designed to give you free software, train you, and prepare you for making great apps on Windows and Windows Phone.

I’ll likely have far more resources here in the future. If you need any help getting your system app ready, just let me know.

Create Something

I recently found a wallpaper for my desktop that reminds me that it is a fundamental human tennant to create. Creation is built into us, but it’s an inherantly difficult process. Many of us in many small ways forego creation for the fear of “doing it wrong” or making something that doesn’t have value. But we also realize that foregoing creation is frustrating because it’s what we’re meant to do.

One of my favorite things about software development is the opportunity to create things that are both expressive and functional. When you make an app, you are filling a need and at the same time you are inspiring someone. If you remember that you have the opportunity to do both of those things well (as well as the opportunity to do them poorly), you’ll be on your way to an app that users fall in love with.

Game On Events

Join us for this FREE, hands-on event and learn how to build a Windows 8.1 and/or Windows Phone game in record time. We’ll cover everything you need to create, upload and publish an amazing game. Expert developers will outline different game frameworks and give you the tools you need to start building. They’ll also explain how to add graphics, levels, and sound to base games, while sharing other cool ways to make the game your own. In one jam-packed day of learning and coding, turn your idea into reality – by dinner time! How awesome is that? Students, first-time developers, or seasoned pros - everyone is welcome! Register today for Game On:

My Q&A with Indie Game Dev Studio, Random Salad

Jake Poznanski

Jake Poznanski and Sam Kaufmann lived in LA and Seattle respectively when I first met them, and now I guess you could say they live in LA and Seattle irrespectively. That is, they switched - Jake has moved up to Seattle (Bellevue actually) and Sam to LA, but the distance doesn’t keep them from running a very active and progressive indie game studio that - judging by user reviews - is also very successful.

Jake and Sam attended Carnegie Mellon, and after graduating and working for a relatively short time at what many (including themselves) would consider dream jobs, the game duo - decided their after hours work on Windows Phone games was where they wanted to throw all their efforts, and they did exactly that.

I want to introduce you to this pair and give you a little glimpse into their daily game dev lives. My goal is to fire a barrage of questions at them and see what they say. Hopefully their answers will be inspiring and encouraging and motivating, but no pressure, guys.

Here we go…

Who is Random Salad?

ME: Hi, guys. How are you? And who are you?

JS: Hi Jeremy, let us just give a quick introduction about ourselves. We are Jake Poznanski and Sam Kaufmann, and we run Random Salad Games, a small indie game studio. We focus on Windows Phone and Windows 8 primarily, though we’ve branched out into Android as little bit as well.

ME: Tell me what you think would be your favorite among the many games you’ve created. And while you’re at it, tell me what is your favorite among games you haven’t created as well.

JS: I think our favorite game would be Paper Dash. It’s sort of our new and modern take on an old classic game, and I think it was a lot of fun. We had a lot of chances to put in little easter eggs in the levels, and we also put in a lot of nice touches like a custom soundtrack. Sam had a chance to record all the game music himself, and it really gave a nice feel to the game.

We are both fans of simulation games, like the Sims, or even some crazy titles like Dwarf Fortress, but I don’t think we are ready to tackle such a challenge just yet. In good time… perhaps :)

ME: What was the most difficult game you’ve developed and why was it so difficult to make?

JS: I think the most challenging game we’ve done so far is Super Golf Land. It involves a fully featured 2D golf simulation, so it was a lot of work to get that tuned and working just the way we liked it. There were also a huge number of levels and courses to create, and balancing the game required a lot of testing. We think it turned out really well though.

ME: And finally the most obvious question - who in the world came up with the name Random Salad for your outfit?

JS: Haha a very funny question indeed…

We were at lunch with a friend when we were trying to figure out the name for our company. We wanted the word “random” in it and we started looking around the restaurant for things to put in front of that word. Someone was eating a salad, and the rest is history :)

I wish there was a more intense and significant reason for our name but we are happy with the result nonetheless.

Sam Kaufmann

Advice for other developers

ME: Do you think one person can run a successful game development venture?

JS: Yes, it’s definitely possible to be successful with Windows Phone and Windows 8 development. I would suggest starting small, with one or two smaller games before tackling a larger game project. Don’t get discouraged, and remember that the last 10% of any project is where 90% of the work lies.

ME: Do you motivate yourselves with the hope of a runaway hit game?

JS: Of course, everyone dreams about creating the next Angry Birds. Remember though, you have to start somewhere, and it’s not likely that your first game will sell millions of copies. Start small, learn from your earlier games, and listen to your users.

ME: What do you think about the opportunities in the relatively small and young Microsoft marketplaces?

JS: The best part of Windows Phone and Windows 8 is that they are still emerging markets compared to Android and iOS. This means that your indie game has a much higher chance of getting featured and noticed. Also, the market is still large enough that if your game sells well, it can end up being a nice investment.

**ME: What does the breakdown of a day’s work look like for someone in the indie game development business like you? **

JS: Usually in the morning we review our game statistics and see what sort of feedback our users have sent in or left in game reviews. In the early afternoon, we are usually working on coding, creating game graphics, or often times simply running errands. Usually by the evening we are planning our steps for the next day. The best part of being an indie developer is that we have flexible schedules, sometimes it’s nicer to code in the evening when it’s nice and quiet too :)

ME: I think a lot of potential game developers doubt they’ll have the capacity and resources to develop for the many platforms that exist. What would you say about the prospects of choosing fewer platforms and concentrating your developement efforts?

JS: I think it’s totally possible to develop for multiple platforms, especially with the tools available today. I would suggest taking a look at the very nice Monogame framework, which lets you run XNA across Windows Phone, Windows 8, but also on Android and iOS. These tools are at a sweet spot right now, as they are mature enough for production-quality games.

ME: After being game developers for a considerable time, would you say you still have fun in your job? Do you still have fun playing games yourselves?

JS: We get to stay at home everyday and make games, so it’s a great experience. We are really glad to be where we are, and we continue to work hard everyday at it. And we certainly play games, both indie and large publisher. I know I had a lot of fun recently with Sim City, and also this great indie title called The Swapper :)

Well, thanks a lot to Jake and Sam for answering a few questions for me and my readers. I definitely wish them massive success in their venture, and I hope my readers too will have success in their endeavors. If there’s anything I can do to support, please ask.

By the way, if you are a student or a startup and want access to a lot of free Microsoft software and resources, make sure you checkout DreamSpark and BizSpark. Furthermore, our AppBuilder program will give you some good resources and even rewards for doing what you love!

You can find Jake and Sam and more information about Random Salad Games on their website

Please leave comments below. Jake and Sam will be monitoring and responding.

Going Paperless

It’s been the goal for a really long time - let’s get rid of paper and live digitally. Well, how are we (people… humans… earth dwellers) progressing and what more can we do to get there?

It’s takes a long time to turn a big ship. Actually, not that long, but so goes the analogy. And it takes a long time to change habits. Paper has long been an integral part of our world and for many - especially the older generations - hitting print is the ingrained habit.

I have a rather progressive grandma, but the average person over say 70 would not consider a picture a picture unless they were holding it. They wouldn’t consider themselves formally invited to a party without the ink and cardstock to prove it. And they wouldn’t imagine approaching the security line at the airport with nill but a weird QR code on their phone.

There’s a new generation afoot though. My son is 18 months old. I think about the things that I find commonplace that he’ll find bizarre and antique - home phones, thumb drives, CRT’s, wired mice, inkjet printers (not that I know what will replace them), and optical media (IMHO). Screwdrivers and shovels will still be staples (in the Foster home anyway), but anything run by bits will be altogether different when he’s old enough to form memories.

I recently did a Twitter poll and most of the respondents (as you would expect from people using Twitter) were at least 80% paperless. I do believe we’re making progress.

I recently witnessed a fascinating facsimile storm between my wife’s parents. She was visiting us here in Seattle and some “paperwork” needed to happen and it needed to happen NOW, and so they did what anyone in their place in our culture would do. They started faxing! The flurry took a few back and forths, and before all was said and done, I think there were some considerable charges racked up at our local FedEx Store. Would you believe it can cost $18 to receive a fax? Obviously it depends on the number of pages and I’m not sure how many there were. This is not an isolated event. There was actually a line at FedEx and I don’t think you’d be surprised to hear that it wasn’t the younger generation standing in line.

Now, obviously, you can’t go entirely paperless, because you’re still going to get the letter and photos from grandma, the junk mail in your mailbox, and the receipt at the store (Home Depot will email me my receipt and save my preference, but they still print the paper one too). But you can reduce your own personal dependence on the printed word and the number of times you deliver paper to your fellow man.

Scanning all of the documents you have is fun (in one sense of the word) and will save you storage space, but it doesn’t directly save any trees because of the sunk cost theory which dictates that the paper you have stored has already been printed - already incurred the cost.

One of the best effects you can create is to start filling out forms on your computer. Most places have an online applicaiton, but many of the places that don’t will still offer a PDF version of their application. When you make a doctor appointment, get the PDFs off of their website, fill them out, and email them.

Unfortunately, I’m not aware of any tricks to getting mortgage or mortgage refinance paperwork turned digital. I have still had to drive across town to sit across from someone, sign 87 lines on a 300 page document, and then trust that they’ll deliver (on a truck) that heap to the right people. Because a lot of my paperwork and processes are paperless at this point, however, I was able to get back to my mortgage broker within 5 minutes most of the time with my tax information, bills, identification, or whatever else. It’s fast, it’s free, and it’s efficient!

TIP: fill out forms using Nitro Reader

Here’s my trick for filling out forms paperlessly.

Download Nitro Reader.

Open your PDF in Nitro Reader.

Hit CTRL + T to switch to text mode, click on a form field, and start typing.

Click the QuickSign button to set up your signature.

To create your signature, just sign a blank piece of paper and then get it saved as a PNG. You’ll have to figure out how to knock the white background out in your graphics software of choice.

Save your results and email away.

TIP: use your phone as a scanner

I don’t keep work receipts anymore. I immediately take a picture and save it in a OneNote notebook. Unlike real receipts, they’re always in once place, they don’t fade, and they’re searchable… vastly superior.

TIP: ditch the filing cabinet and get filing boxes

Where you store your paper - in a cabinet or in a desktop box - is mostly a matter of quantity, and that’s the point. Many people keep far more than they need. See about trimming your archive down to one or two IKEA filing boxes that you can put on the shelf above your desk. That way you won’t be tempted to fill a lot of space. I experienced the same thing when I lived on a sail boat in Seattle. I didn’t have space for stuff and so I didn’t acquire stuff. An alligator will only grow as large as its home (I have no idea if that’s true, but it sounds good).

TIP: get your head in the clouds!

Use OneNote or EverNote or some kinda note that gets your brain into the cloud. The strong advantage to a note system like this is that you have access to the data from anywhere - your phone, your tablet, your PC, your pocket watch, your glasses, etc. And in that case, you reduce the need to write on a post it note (will those be around when my son is older? hmmm) and carry paper around with you.

Anyway, those are just some musings by codefoster about our increasingly paperless society and how we can all participate and advance the notion.

Hope it helps!