We Need Developer Tools, Not Platform Development Tools

It’s been almost a year since I left my role at Microsoft as Director of Product Management for Visual Studio. Ever since I left, I’ve had lots of people asking what I am working on now, and I’ve been pretty quiet about it (the running joke is that I am the VP of Black Ops). The truth is that my team and I have been very busy solving what we believe to be one of the biggest challenges facing developers today and building a new product that I believe will dramatically reduce the barrier to entry for developers wanting to build applications that run natively on mobile devices.

I firmly believe that mobile devices are the single biggest opportunity today for developers. Cell phones are ubiquitous, and smartphones are becoming so common place, it’s surprising when someone doesn’t have one. According to the March 2012 U.S. Mobile Subscriber Market Share from comScore 234 million Americans age 13 and older used mobile devices, and more than 106 million people in the U.S. owned smartphones. That’s roughly one-third of the US population, and if you are anything like me, your smartphone is the only computing device you have with you at all times, from the time you wake up, to the time you go to bed. While a smartphone (or tablet) may not be your primary productivity device, it is arguably your primary device –the only one you always have within reach.

From a developer’s perspective, this represents a huge opportunity. While lots of developers have already entered the mobile device development arena, only a fraction of the entire developer population is actively doing development for mobile platforms. As businesses embrace mobile devices and start to extend their line-of-business applications, business-to-business applications and direct to consumer applications, more and more developers will have to transition into mobile platform developers.

While mobile platforms are one of the biggest opportunities for developers, they are also one of the biggest challenges for developers. Like the browser-wars of the 90’s, the mobile platform arena is hugely challenging. Every mobile platform provider has their own SDKs, uses a different programming language, and different tools. In fact, if you want to target all of the mobile platforms out there, you need multiple development machines—one for Mac OS X and one for Windows (at the very least you need a Mac and a BootCamp image of Windows). To build one app that runs natively on all platforms requires significant duplication of effort—essentially building and rebuilding the same app on different platforms. None of the platform providers are eager to solve this problem for you—they don’t make developer tools, they make platform development tools.

When I was at Microsoft, my job was to ensure Microsoft built the best platform development tools possible As a result we created awesome tools for development on the various Windows platforms (client, server and phone). What we didn’t do was build great developer tools—tools that made developing applications easier and more enjoyable regardless of what platform was being targeted. The only way to do that in the Developer Division would be to secede from Microsoft and become an independent software vendor (ISV)…and DevDiv would be a big one. Since that wasn’t going to happen I decided that it was time to find an ISV that had the ability to create great development tools regardless of platform. That quest led me to Telerik, where my team and I have been doing just that.

I’d like to invite you to join the Icenium private beta. Icenium is a work in progress (hence the private beta) and steadily becoming the product that I envisioned—a development tool that makes building applications easier and more enjoyable regardless of platform. With Icenium, we intent to build the worlds first Integrated Cloud Environment (ICE) that combines the power and flexibility of the cloud with the convenience of a local coding environment to massively eliminate the complexity of building cross-platform mobile applications. In its current beta state Icenium enables you to build applications for Apple iOS and Google Android, and more platforms will follow. My team and I are very excited about this beta, and we are looking forward to getting your feedback.

D7

There are Only Two Kinds of Device Apps

Just the other day a colleague and I were having an interesting discussion. After a while we realized we were talking about the same things but we each used different vocabulary to describe the things we were referring to. I hate when that happens.

I thought it would be useful to provide a common definition for the types of device (aka mobile) apps we see in the market to help establish a common vocabulary.

As I see it, device applications can be categorized as being either consumer applications or business applications (my colleague likes the term “corporate applications”). These are then also sub-divided, but I’ll get to that soon.

Consumer Applications

IMG_0057Consumer applications are exactly what the name implies – applications used by consumers. These are typically purchased through an app store or market place by the consumer directly. I tend to sub-divide these into five types: data snacking, social/mash-up, content/media, casual games and graphical games.

The key attribute here is that these are acquired directly by the user for a specific non-business purpose. Facebook, Angry Birds, etc. are examples of these types. There is some easy confusion here when we start to think about business (or “corporate”) applications, specifically those intended to connect the user to the business. Is Facebook a B2C app? Not really. It is the product of a company, but primarily a consumer app.

Business Applications

Business applications are built for only a couple reasons – B2C or internal line-of-business (LOB), and it can be easy to blur the line (or at least see the line with blurry vision) if you’re not careful. Some may argue that B2B is another type, but my position is that there is no such thing as a B2B device applications. They are B2C applications where the “C” is simply a user from a client “B”.

B2C

Business to Consumer (B2C) apps are the apps most easily confused with “direct” consumer apps. Is Facebook a consumer app or a B2C app? I think I could argue this one successfully in either direction, but I prefer to think of it as a consumer app (Facebook’s primary business is Facebook, even though IMG_0058their revenue comes from sources other than the user). For B2C I like to think about the company’s primary business. Is the app their primary business, or are they in the business of something else, and the app helps them provide a better experience for their customer?

Alaska Airlines is a company I do a lot of business with. They have a great B2C app. As the consumer, I got the app from the Apple AppStore, even though it’s not a consumer app (see, I told you it could get blurry). This app is a great example of a company that is primarily in a different business (moving people and stuff through the air),who has a great app for their customers. I can use the app to check my upcoming trips, check in for flights, and—for those of you who aspire to be truly paperless—even use it as my boarding pass.

My colleague likes to refer to these B2C apps as “Corporate Consumer Apps.”

LOB Apps

Line-of-Business apps are built by companies (or vendors) for use within the confines of their business. Examples include expense tracking apps, conference room schedulers, and lunchroom debit apps (at Microsoft we even had a game app that the food services division put out enabling you to win a discount on lunch using your Windows Phone). Typically these are developed in house for a specific need, and distributed through some form of internal or enterprise app store.

These are what my colleague refers to as “Corporate Enterprise Apps.”

What Do You Think?

Do you agree with me? When thinking about the different app types for mobile devices, do we agree on the following terms:

  • Consumer apps
    • Data Snacking
    • Social/Mash-up
    • Content/Media
    • Casual Games
    • Graphical Games
  • Business Apps
    • Business to Consumer (B2C)
    • Line-of-Business (LOB)

D7

Telerik’s Q1 Release is Coming!

Blog_Image-ninjaRegistration for Telerik’s Q1 release webinar week is now open! Does this seem a bit early to you? If it does you are very observant, the release is coming out one month earlier than usual (we are shifting our releases based on your feedback…see, we really do listen).

It’s time for all .NET Ninjas to sharpen their skills! The latest Telerik release is just around the corner and we have tons of new stuff to show off. If you are eager to see the new bits and sharpen your .NET skills, be sure to sign up for Release Webinar Week. This 3-day event is packed with hour-long webinar sessions on the coolest new features shipping with the Q1 2012 release. Release Webinar Week will be held on February 20th – 22nd, so mark your calendars. One lucky winner from each webinar will leave with a Telerik Ultimate Collection license worth $1999. To enter the drawing and participate in the Q&A session, you must attend the live webinar.

Registration Link:  http://www.telerik.com/support/webinars.aspx

D7

Build: Day 0

Here I am at the Starbucks in the Marriott Anaheim, which is connected to the Convention Center where Build will take place beginning tomorrow. Already people are milling about and I’ve seen a few friends and former colleagues (in fact, Dave Mendlen, my old boss, and the new CMO for DevExpress, gave me a ride from the airport). There’s a bit of buzz in the air, but also still a lot of uncertainty.

With all of the leaks there have been, it seems the more connected people have an idea of what will be said tomorrow, although they are still unsure what it will really mean. It seems the confidence in Microsoft will not come from them getting into the touch-centric user experience model, nor from a light weight, long-battery life tablet/slate form factor (such as implied by the Windows 8 on ARM announcements at the last CES). The confidence will come from implementation. How well can Microsoft enter this space, or how badly can they mess it up. Those seem to be the two camps.

A lot of folks I have spoken with don’t think Microsoft has the ingenuity to get into this game the right way. Perhaps its from years of tablet devices that were merely laptop PCs that could be used with a stylus. On the goos side for Microsoft, that means the bar is relatively low – simply don’t screw up and whatever else you do will be acceptable.

On the other hand, I know a number of people who believe Microsoft is going to do what Microsoft historically has been good at – enter late and envelop the market. We’ve seen this with the OS wars of the early to mid 90’s, the browser wars of the late 90’s and even the game console market in the 00’s. Unfortunately we have yet to see this with the smartphone market, where Microsoft is still effectively in last place.

Personally I am a believer. I think we will see and hear things tomorrow that will wow us, make us curious, and inspire us to learn a new way of programming for the Microsoft stack. I am not without concern, however. There are plenty of ways Microsoft can mess this up, but I don’t think they will. I believe that Sinofsky and the Windows team have been working diligently to make a compelling experience for Windows developers, such that it may even do what they want mosts, and attract non-Windows developers to the platform. I also think the Developer Division has been working hard to create a compelling tooling environment for the platform. I think most people will be happy with what they see….it just may take a few days.

Telerik is here at Build, but we are here mostly as attendees. We are hear to hear from Microsoft and learn from Microsoft. Our goal is to provide great additions to the Microsoft development tools, through UI controls, additional productivity tools, and whatever else may be appropriate. Of course we could come to Build and totally blend in, so if you are here, look for us and ask for a t-shirt. In fact, Tuesday morning, look for me driving the .NET Ninja Mobile (a Lamborghini with the Telerik logo) and take and post a picture of yourself with me and I’ll give you a t-shirt and a coveted pass to the GeekFest party on Thursday. If you need a ride to the conference Tuesday morning, send me a direct message on Twitter (@dseven) and I’ll come pick you up and drop you off in style.

D7

My (New) Life as a MacOS X User

Now that I no longer work at Microsoft, I have the opportunity to try new things. Today I begin a journey to see what life on the other side of the pendulum looks like. Today I begin my life as a non-Microsoft web developer. Don’t get me wrong, I still love Microsoft, but I want to see what life on the other side is like. Don’t worry Ballmer, this isn’t permanent. I’ll be back…after all, the company I work for makes its business building and selling tools, controls and extensions to Microsoft products.

Today I start a two-week trial using non-Microsoft platforms and tools. I’ll use the Microsoft software that I need to for my job (e.g. we use Exchange, so I’ll use that, and we use Skype, so I’ll use that too). At the end of the two week I will be attending the Build conference, and I’ll be coming into it with a better understanding of life on the other side, and hopefully be able to be more objective about the announcements being made.

But that’s not why I am doing this. It has been over 8-years since I owned a MacBook, and I’ve forgotten what its like to work on anything other than Windows, and use tools other than Visual Studio for development, and for the past year, using only a Windows Phone as my phone/device. I spent this morning setting up my new MackBook Air with all of the apps and tools I want, and getting my email configured, etc. I have my iPhone 4 set up with my work AT&T account, and an iPad one one side of my desk, and a Android 3.1. tablet on the other side. I’ve installed Eclipse and Adobe Creative Suite 5. It’s safe to say I am ready to shut off my Microsoft life (temporarily). Goodbye Lenovo – I’ll be back (OK, I have the Lenovo K1 Android tablet, so I am not really leaving).

My goal over the next two weeks is to use Eclipse and Adobe tools to build a website and PhoneGap to build a device extension to the site (e.g. an iOS and Android app for the website). I’ll post my experiences over the course of the next couple weeks. I expect some frustrations along the way, because its been a long time since I lived in this world, and the tools and technologies have changed. This will be a learning experience for me.

Day 0

As for Day 0 – it was easy. The new MacBook Air is ridiculously simple to set up, and I’ve gotten most everything I need installed and running in a couple of hours. My iPhone is synced, and my email accounts are set up. I’ve installed FireFox and Chrome. I’ve set up Evernote and DropBox. I registered for Trillion, and installed Skype.

The biggest issue so far is the slight learning curve switching from

Windows to MacOS X Lion. It has taken me a bit to remember how Mac OS works (I came into the Windows world after years as a Mac user). The muscle memory is coming back.

  • I LOVE the new TrackPad gestures. It is amazing how quickly the three-finger scroll became an unconscious reaction – its actually very natural.
  • I had to enable Tap to Click because that muscle memory (from Windows laptops) is not going away anytime soon.
  • The thumb-finger pinch is awkward, but I’ll keep at it.

After Build I will set up a Windows environment on this machine so I can switch between environments, but until then I am a Mac OS user.

Here we go.

Goodbye Microsoft. Hello Telerik.

If you keep up with me on Twitter you know that last Friday was my last day at Microsoft. I joinned Microsoft as a vendor in 2004 after I sold my company (dotnetjunkies.com) – I was hired in to fix a broken community program that dotnetjunkies had been part of, and a few months later accepted a full-time position to implement the supporting infrastructure. It was my second tour of duty (my first was in 1999-2000, where I met my dotnetjunkies partner). Over the past seven years I was fotunate enough to have some great experiences running a development team, and owning the product management of one of the most successful and widely used IDEs on the planet, Visual Studio. Itwas a good run, but it was time for a change.

Today was my first day as an empployee of Telerik – whom I believe to be a fantastic company that is doing some very innovative work, and working in a very agile way. While today was uneventful (travel day from Seattle to Boston for my onboarding and a management summit), it was a good day. I spent a lot of time thinking about what is to come. About the excitement the coming months and years will bring. I thrive in fast moving, agile, start-up style environments and expect that the culture at Telerik will suit me well.

There is of course an immense pressure that I feel as well – I supose anyone transitioning jobs, especially after seven years, is likely to feel a sense of pressure to prove themself quickly. My hope is to balance that pressure with the common sense to not try too hard too soon. A friend of mine gave me a book a while back – The First 90 Days: Critical Success Strategies for New Leaders at All Levels by Michael Watkins. This is a great (and short) read for anyone moving into a new leadership postition either in a new company, or a company you already work at. The cornerstone is to understand why you were brought in, and implement a matching strategy for the first pivitol 90-days. The wrong strategy, while successful in another situation, could spell dissaster. The right strategy – one that matches the purpose for you to move into the role – should yield good or better (potentially stellar) results.

As I embark on my first 90-days, I plan to share what I can. Telerik has a reputation for being very connected to the community, as I have been for over a decade. If you’re interested, then plan to hear from me regularly as I share the amazing work we are doing here at Telerik.

D7