Years ago, in the not too distant past, I envied mobile app developers. They had the power and capability to develop and publish their own mobile apps, taking control of their career all while building an impressive portfolio of their work. Some even went on to become overnight successes.
As a .NET developer looking to cultivate a hobby as a mobile app developer (and secretly rule the world), it seemed that the only option I had was to learn a new platform and development language. All seemed lost, until Windows Phone 7 was born. This was the point that .NET Developers around the world collectively shouted for joy, myself included. Why? Because anyone with exposure to WPF or Silverlight could easily develop managed apps for Windows Phone using the skills and development tools they already had at their fingertips. If you knew XAML along with C# or VB.Net, you were as good as gold. There was no learning curve, aside from familiarizing yourself with the Windows Phone APIs. All this really meant was including an additional using directive or two (Imports if you’re a VB.Net developer), making a few function calls, and you were off to the races. If you didn’t have a copy of Visual Studio on your personal machine, you could simply download Visual Studio Express for Windows Phone from MSDN for free. No muss. No fuss.
Microsoft decided to take it one step further, and do something even better. They welcomed both web and native developers into the fold with the announcement of the new Windows 8 and Windows Phone 8 SDKs. And with Windows Azure Mobile Services thrown into the mix, it opened up a new world of opportunities for developers to build cloud-connected apps.
Here is a new platform that makes it easy for desktop, web, and native developers alike to use the skills they already have to create their own mobile apps across multiple Windows devices: laptops, desktops, smartphones, tablets - the sky’s the limit!
What Microsoft provided was an all-inclusive platform that welcomes developers with different skill sets, empowering them to build mobile apps without having to undergo lengthy training or a massive mind shift, which is the pain point for every developer when being told to learn something new.
As a developer who has specialized in building enterprise applications for well over a decade, I was very excited at the prospect of developing my own apps – something completely different from my day job. With a hectic schedule between work and family, my biggest obstacle was time. I had developed a couple of mobile apps for other platforms in the past, and became frustrated that a simple, single purpose app had taken months to complete. Impatience had reached an all-time high. I just wanted to be able to develop my app without being bogged down with a finicky API, or dealing with low-level code to integrate with the device’s capabilities. This is where the Windows Phone SDK became the saving grace. Being able to leverage the knowledge and skills I already had, combined with an easy-to-use API, had renewed my excitement and interest in mobile app development. I was able to include advanced functionality and provide the appearance of seamless device integration in my app, such as lock screen integration, camera integration, and speech capabilities, with only a few lines of code. My hobby as a mobile app developer had been revitalized.
Believe me when I say that you have the ability to develop a mobile app in an evening, or over a weekend using the Windows Phone SDK. In hosting a handful of Windows Phone workshops for our local area .NET User Group, I have witnessed this phenomenon. Newbie Windows Phone developers were able to design, develop, and publish apps over the course of a single day or a weekend workshop. The range of apps that emerged during such a short timeframe were impressive – Emergency Contact apps, Soundboards, and even a Walkie Talkie app! There was a common, resounding sentiment among developers at these workshops – surprise, excitement, and a state of disbelief at how easy it was to develop an app for Windows Phone.
At some point, while stuck in a meeting, chugging away on documentation, or enjoying lunch with colleagues, I’m 99.9% sure that you came up with a new app idea. Is it a utility app that will enhance device usability? Maybe a new social media feed aggregator? Or perhaps, you have come up with an idea for a fun and simple game? If only you knew where to begin.
Stick With What You Know And Turn It Into Something Awesome
As it stands today, you can apply the skills you have to develop some pretty amazing apps for either the Windows Store, Windows Phone Store, or both. Whether your experience has been focused on desktop or web applications, you can take the current knowledge you have and put them to use to develop mobile apps.
Still skeptical? Let’s break it down:
Desktop Developers (WPF, C# or VB.NET)
Web Developers (Silverlight, C# or VB.NET)
Web Developers (HTML/CSS/JS)
Native Developers (C++)
Mobile App Developers (Windows 8, Windows Phone 8)
Visual Studio 2012
Don’t get me wrong, there are still things you will need to learn along the way, but it’s not a major life-changing, earth-shattering learning curve. You simply need to learn about the APIs you can leverage to enhance the functionality of your app.
White Papers, Tutorials, and Sample Code, oh my!
To encourage developers to build engaging apps for Windows 8 and Windows Phone 8, Microsoft provides developer-centric web sites - Windows Phone Dev Center and Windows Store Dev Center - which contain everything you need to know to get started. Looking for the Coles Notes to learn quickly without surfing online for too long? Pick up a good book or two that get straight to the point on the most popular features that developers love to incorporate in their apps.
Not much for reading?
Microsoft has recently added quite a number of video tracks on Microsoft Virtual Academy to help you get up to speed quickly. Or you can head on over to the Channel 9 site, where you will also be able to watch video sessions on Windows Store and Windows Phone development for every level. You may even spot a familiar face in the mix (hint, hint).
The Greatest Journey Begins With a Single Line of Code
You already have the skills and the know-how to design mobile apps. You have the tools at hand to make it a reality. You have access to an endless supply of free online resources provided by Microsoft to help you learn along the way. Tap into your creative side, put thought to code, and publish your very first Windows Phone app! You have what takes, so what are you waiting for?
Not sure where to start? Check back here as I will be posting additional articles in this series - from setting up your development environment to building and publishing your first Windows Phone app. No more excuses! Let’s get you building!
Image Credit: eocs
Good job Lori! Looking forward to more in this series.