Bill Reiss is a Windows Platform Development MVP and a Senior Consultant for AgileThought

Biggest Windows Phone 8 Feature? Could be C++

There’s been a lot of talk about new features in Windows Phone 8, and it’s been getting positive responses in general, even from the Verge and other outlets that have been very critical in the past. The one place they still ding Windows Phone consistently is on the ecosystem. There are apps/games available on iOS and Android not available on Windows Phone and many times it’s a killer app that people can’t live without.


One of these apps is Pandora. I have a very big suspicion that the major reason it wasn’t ported to Windows Phone 7 was because they would have to move to managed code (C# or VB.NET), and this was just too big of an undertaking for them. Sure, other apps did it, but I suspect in most cases it was either an influx of cash from Microsoft, or Microsoft itself doing the port. I know when I worked on the iHeartRadio app for Windows Phone 7 we used absolutely none of the code from their existing apps and started fresh.

Windows Phone 8 no longer requires that apps be written in .NET, you can now use C++. When tech pundits talk about the lack of ecosystem they are basing that on the history of Windows Phone 7, but I really think that the changes made in Windows Phone 8, especially the ability to write apps and games in C++ makes a huge difference and now I think you will see Windows Phone be a first class citizen with developers because they won’t have to do nearly as much to support the Windows Phone platform.

Add to this the fact that Visual Studio is the absolute best development environment on any platform, and it’s very possible that we may see some apps on Windows Phone first, followed by iOS and Android. Of course this won’t be the norm, and I’d be happy if we see apps at the same time or not long after.

Of course ideally we would see some killer apps on Windows Phone first, and with the increased options for development there is a much better chance this could happen. Overall I think that Windows Phone 8 has the absolute best development environment of any smartphone in the industry, and I hope and expect that this will translate into a thriving ecosystem. Only time will tell.

By the way, I have two Windows Phone 8 devices now after my recent visits to the Windows Phone launch in San Francisco and at the BUILD conference and personally I’m very impressed with the platform, animations are smoother, most of the major drawbacks have been resolved, and the hardware is up to spec with the other flagship smartphones. I’m very excited to see where this goes.

  • Peter

    Right after I read “Add to this the fact that Visual Studio is the absolute best development environment on any platform”, I realized I’d been had. I’d been scanning for mention of EVC4.0, and the fact that it had been possible to program for windows phone using c++, but alas, there seemed to be a glaring omission of this fact and the implications mentioning it would have. 

    Goodness! One may even get the impression that MS hadn’t added a killer new feature, but rather re-enabled one lost some time ago. 

    How’s planned future support of Silverlight working out for ya?

  • Whut

    I’m sorry to say, but I also have to back VS as the best development environment. It’s fast, it gets the job done, and there is a ton of documentation for it. Also, Intellisense is the best thing since sliced bread.

    • Janinjhb

       Or maybe the most annoying thing since herpes ?

      • AAK

        I’ve been a
        programmer for many years (since the days of x-windows on sun workstations). I
        have done development on all kinds of platforms, programming with languages such
        as C, C++, Java, C#, Python, etc. Needless to say, I have worked with many
        different IDEs based on project/development requirements throughout my career.
        Therefore, please don’t – annoy – me by mentioning eclipse, netbeans and
        solaristudio as they too have – many – shortcomings. I’m so sick and tired of
        hearing one trick pony junior level programmers nagging negatively about anything
        Microsoft as if all the other non-Microsoft crap is so perfect! I have yet to
        work with a perfect technology and IDE and I’m not wasting my time looking for
        one either. I am more than happy to work with Microsoft VS if my development project
        requires it. It is an extremely capable IDE to work with! The point of article
        isn’t which development studio is better! So, just calm down and enjoy the
        article for what it is and don’t turn it into an “everything else vs Microsoft”
        argument! Geeeeeeezzz for crying out loud!!!

        • Anonymous Coward

          It’s not about perfect, it’s about freedom and choice. And it’s not the point of the article that VS is the better IDE, it’s one of a handful points, so I’m going to dig a bit into it.

          Writing plugins for Eclipse is about as horrible as is writing add-ons or automation scripts for VS, IMO, but I can always run the source code through a text filter in a command line and have it automatically refreshed in the IDE, and I can do this on an entire source tree without damaging the VS setup close to making it non-recoverable.

          Almost all mainstream free IDEs, like Eclipse and Netbeans, have a large ecosystem of plugins, and also have a nice way to install and update them. It’s been a while since I haven’t touched VS, but I can’t recall any of these features on VS.

          It’s all about making things work like programmers expect them to work – at least the ones taking their work seriously. I want automation. I don’t want an IDE to be my primary build tool. I don’t want to be tied into a single vendor’s toolchain. I don’t want writing a build script to be an afterthought, I want my CI and my IDE to speak the same build and test language. Given MS’s closed solution, that’s in no way what you get.

          Yes, VS is a capable IDE, but I can set up an almost similar process using a text editor and some shell scripts. I want more than that.

          • AAK

            My point is, and this is through years of experience, I always
            use whatever would be best fit to use for the development project at hand. You get
            at least two benefits out of it. For one, you will be using a development
            platform that – fully – supports the technology platform you are developing for.
            This means, out of the box, one doesn’t have to waste their time on constantly
            twisting and tweaking a non-native IDE with plug-ins to configure their dev environment
            to get things just right. And 2), you get to learn yet another sophisticated
            IDE, therefore, another approach to development and deployment technology. I
            call myself an adaptable programmer and therefore, can develop with any
            mainstream IDEs, whatever is the best fit for the development project at hand to get the job done without wasting my valuable time on things
            that I’m not paid for. And when I hire other programmers for my team, I specifically
            look for programmers that are versatile with different development platforms
            and technologies… Btw, I SO chuckled when you said “I can set up an almost
            similar process using a text editor and some shell scripts…” Wow! This tells me
            how little you know about Visual Studio….if anything at all! Since it is all
            about freedom and choice, I’d like to see you develop custom SharePoint
            applications using eclipse! Lemme know how that goes for you! J

          • Idon’t Know

            Sharepoint being a proprietary Microsoft app is of course the worst possible example you could have used.

        • Idon’t Know

          The OP asked for it by saying VS is the best.  Begged for it in fact.

    • demon

      what? intellisense is still horrible and nowhere near of eclipse/netbeans/solarisstudio…  just type #im and it give you everything but #import… and there’s plenty of other annoying things. Try Qt creator and you’ll see real autocomplete.

      • Henry

        QT Creator doesn’t even have tabs.  Lame.  Also, have you actually used eclipse?  After using VS for years and then switching to eclipse for an android project was a jarring expirence to say the least.  It’s very slow compared to VS, refactoring plugins are nowhere near as nice as say CodeRush, and intisense’ish stuff is orders of magnitude behind even VS 2003.  

        • Den_rick

          Well, VS and CodeRush are not free but Eclipse and Netbeans are. So? I personnaly use Eclipse and VS, and i never saw a better refractoring than Eclipse, Autocompletion too, well free of charge. Refractoring is a very practical tool. But maybe the main problem of comparing those IDE are the language too. Eclipse is mainly based for Java, and MS for .NET, C, C++. Whatever…. if Eclipse focus on C, C++, well with some pubs, VS might fall.

    • Anonymous Coward

      Idunno, I was thinking Intellisense, otherwise known as autocompletion, is available even in some smarter text editors, not just IDEs – maybe not editors running on Windows, though. Makes me think the comparison with sliced bread has something to it …

      I also expect more than just autocompletion from an IDE, without having to add tons of plugins not provided by Microsoft, or via a market-like mechanism. (Makes me wonder how come people criticize Android for fragmentation, when the various alternative markets work on all devices, and you don’t have to use distinct update mechanisms from different vendors – you can’t put W7 on hardware which was supposed to run W95 either.)

      As for documentation, IMO it used to be better in older versions. IMO it got all downhill at some point – the last version I was happy with the documentation was VS6. It’s sort of bloated nowadays. You have to google stuff in order to find it quickly on MSDN.

    • Guest

       I stopped using VS due to the slowness – start-up was horrendous, UI confusing, loss of capabilities.  I did NOT buy a new PC just to develop.  Changing versions of tools should not cripple me, yet it did.

  • b woo

    “Overall I think that Windows Phone 8 has the absolute best development environment of any smartphone in the industry”
    I assume you are speaking of Visual Studio 2012 ? You are going to write C++ apps in VS 2012 that do not use the .NET framework, CIL, etc. ? Where’s your XNA equivalent if you want to do games ?I find little “meat” in this article to support your thesis, and a failure to put in perspective facts such as the Win RT api’s are not going to work in Win 8 phones, etc.

    It may be too early to conclude yet, but it looks to me like development for Win Phone 8 is really quite distinct from development for  Win 8 desktop, Win 8 Surface ARM-powered, etc. The commonality appears to me to be the rectangles+typography UI that MS is actually daring to call a “design language,” Modern (ex: Metro).

  • Guest

    The Android platform is known to struggle with music creation apps, eg latency, and the time between tapping the screen and getting response, , when compared to apple. Do you know what the latency is likely to be on windows 8?

  • joshuaesmith

    I think a lot of people underestimate the significance of the rest of the environment. Not only is there the issue of porting the Objective C (iOS) or Java (Android) program code to C++, but you also have to port all the quickie web-UI components (preferences panels and the like) from WebKit to IE, and you have to port all the graphics code (both scene management and shaders) from GLES to DirectX. And now you have a severely fractured code base that is 30-50% more expensive to maintain.

  • Jorgearbusto

     “Add to this the fact that Visual Studio is the absolute best development environment on any platform”: hahahaha.

    • archimboldo

      That was a good one.

  • Charles Ferguson

    OP “Add to this the fact that Visual Studio is the absolute best development environment on any platform”

    Bill. This is so very, very tiresome. Flamebait much?

  • Bill Reiss

    When I was speaking of best IDEs on any platform I meant for smartphone development. I really didn’t expect this to be so controversial, given what iPhone, Android, and Blackberry offer for their development environments. I’ve seen a lot of people say I’m flamebaiting or clueless but I haven’t really seen anyone say what environment is better. I never said it was perfect but when it comes to productivity I don’t know of any better.

  • Shawn Wildermuth

    Actually, the Pandora problem and others has been the background audio agent wasn’t robust enough for them. Doing your own DRM in a background agent on WinPhone 7.5 was tedious and tended to get your background agent banned.

  • Harrison Whitfield

    Its very hard to make apps in I dont think that its biggest feature of window 8.visual Studio is the best environment to do on it.