Thursday, June 7, 2012

One man's poison is another man's wine

Back when we first introduced Real Studio in 1998, almost all software development was about creating applications exclusively for Windows. We provided an easier way to build software for the significantly smaller Mac market. The following year, we added the ability to build Windows applications from the Mac. This was useful to Mac developers that needed to provide Windows versions of their software.

Things have changed a lot since then. Not only is the market share for Mac on the rise while Windows is flat, but there are many other platforms for which software is needed. In additional to the Mac and Windows desktop, there's Linux, web applications (with each browser being different enough to almost be another platform) and mobile too. With software developers needing the ability to support so many different platforms, rapid cross-platform development is more important than ever. Anything that helps create a more level playing field promotes cross-platform development, and that is is good for us.

Microsoft is in trouble. They still have enormous market share on the desktop but they are losing ground. PC sales are flat because more people are using web and mobile applications, though some PC users are switching to Mac. The "halo effect" is real as it turns out.  And in the growing mobile/tablet markets, Microsoft is weak. In response, Microsoft is doing something they are not accustomed to doing: they are being bold.

Microsoft has designed Windows 8 as a hybrid OS that can run on phones, tablets and desktops. Having  the underpinnings shared between the desktop and mobile makes sense. Apple does this with OS X and iOS. Android is based on Linux. Having the same user experience on the other hand, is a bold though questionable move. From the demonstrations I have seen, this isn't a good idea. Check out this demonstration where an experienced Windows user is have trouble figuring out how to do basic things in Windows 8 such as sign into their account or shut off the computer. Chris Pirillo posted a video of his dad, a long-time Windows user, having his first experience with Windows 8 and not even realizing it was Windows! In another video Chris had his dad try Mac OS X, an OS he had never used, and he quickly was up and running. These are not good signs for Microsoft. In addition, putting the desktop and Metro user interfaces together is jarring. Microsoft might see this as a temporary situation until traditional desktop applications migrate to Metro but I doubt that. Metro is designed for phones and tablets primarily. It works on the desktop because the desktop/laptop computers have larger screens than phones and tablets but the reverse is not true. I'm not convinced that all applications can be ported with full functionality to a tablet. Apple reduces the features set of the iOS versions of Pages, Numbers and Keynote. But perhaps you disagree with me and think that all Windows applications can be Metrofied. If that's the case, then Metro becomes a whole new platform that must catch up with the already entrenched Android and iOS platforms.

Microsoft has made another bold move. Previously, they provided free "express" versions of Visual Studio. While they will continue to do this, according to Peter Bright's article for arstechnica, they are limiting these to building Metro applications only. If you want to build a traditional desktop application, you will have to purchase Visual Studio which starts around $500. They are still going to provide the 2010 Express versions for free. Clearly, this move is designed to push new developers towards Metro and that makes sense for Microsoft.

To survive, Microsoft now needs to be humble. They need to acknowledge that their lunch is being eaten by Apple and Google. Their first goal should be to slow, then stop the migration away from Windows. So far, however, I haven't seen any humbleness coming from Redmond. In fact, their public funeral for the iPhone in 2010 shows just the opposite. If Windows 8 and Metro are not well-adopted, the Windows market share will continue to erode.

That's actually good news for us. In the perfect world, Windows, OS X and Linux would each have 33% market share for desktop operating systems. Desktop, web and mobile would each have 33% market share for devices. The more equal the market share, the more important cross-platform development becomes. From what I'm seeing, Microsoft is going to help us with Windows 8.


DMW said...

Nowadays it's all about diversity where business and consumers make their decision based on their needs and joy.

From my point of view, it's difficult for one company to have a monopoly on a market filled with options.

Competition is healthy and that's exactly what Microsoft must have to get back on course. After all, when Microsoft only compete with previously version(s) of Office and VS than there exist a major issue. Both for Microsoft and its customers.

In view of the past we know that Microsoft must do things at least twice before get it right. I still believe this is true.

If Microsoft find themselves behind its competitors they can either buy some companies to get back to the front or put its great number of co-workers in one area to catch up.

Although not all above can be applied for Apple they also need competition to improve their products.

Even if we see a present decline and some desorientation with Windows and VS Microsoft is still a giant in software business. The largeness of the company is its biggest strength as they can manage bad times much better then other small software companies.

For me, as a developer and consumer, I welcome the increased competition and changes as I can always benefit from it.

Real Software faces also some challenges. Can You compete on all platforms? Can You support all platforms?

I assume that the new product line and the new improved upcoming versions of RS must be success otherwise it will be difficult to focus on all major platforms.

In other words, we all must change and become better on what we do to stay in business in a healthy way.

Thanks for a good article, Georg.

Kind regards,
Dennis W

DMW said...

My sincerely apologize. I just discovered that I misspelled Your name.

Please accept my apologize for it.

Kind regards,
Dennis W

Steve said...


I appreciate and agree with much of what you've written here. However, I think that Real Software is making a bold and perhaps unfortunate gamble by not including support for Metro in its current roadmap. I understand why you aren't supporting Metro for tablets yet (iOS, afterall is the priority), but Metro-style desktop apps is another matter. Here are a few reasons why I think you should reconsider and put Metro (for Desktops) on the roadmap:


1. I wouldn't bet against Microsoft. Just the sheer size of their user-base (not to mention the size of their bank account) means that it will likely make more than a little splash.

2. You point out a couple of negative reviews and videos. But, there has been a tremendous amount of good press and anticipation for this. I'm no Microsoft fanboy by any stretch of the imagination, but I have to admit, they've finally come up with something that's kind of cool. It may require some adjustment at first, but I think people might get past this.

3. Real Studio developers are going to want to be included in the Windows App Store, and to my knowledge, this is going to be for Metro-style apps. And even if I'm wrong about this, the Metro apps will be spotlighted and be given all of the attention because this is where Microsoft sees their future.

4. Agreed, Microsoft Office will not be a metro app, so Desktop apps will certainly live on. But I would bet that very few RealStudio developers are working on apps the scale of Microsoft Office. Less complex apps can certainly be metro-ized, and the trend now (look at all the apps on the Mac App Store for proof) is towards simpler more specialized apps. Do you really want to hinder Real Studio developers from being able to capitalize on this segment of the Windows market, and force us to use Visual Studio to build Metro desktop apps.

I'm a huge supporter of Real Software, and in general, I agree and am grateful for much of the ways you've steered the company. However, I think you might be making a big mistake in this regard and would ask you to re-consider.

I would hope that at the very least you're expending some R&D into seeing what it would take to metro-ize RealStudio apps (isn't it primarily an HTML/Javascript overlay. And isn't that something your company now has some expertise in).

You may be right in that a dwindling market share for Microsoft is good for Real and for cross platform development. But, it's not good for Real if their software for the desktop is no longer truly cross-platform because it doesn't support fully the latest operating system of the market leader.

Geoff Perlman said...

@ Steve - we are investigating Metro. We don't include it in the road map just yet because (a) we have other priorities for Windows support that we are still working on (such as 64 bit) and (b) I want to see more signs that Metro is in fact going to see wide adoption.

And at this point, if we were going to support Metro, it would be via the new framework we have planned. That would make the most sense.

the_sboss said...

I can only talk about Windows Phone 7.5 (and the new WP8). The Metro style is awesome on the phone. and it doing very well and lots of people have a great experience with it. So microsoft is pushing that interface over to the desktop.

now windows 8 and windows phone 7.5/8 has almost zero common code. they call both windows to build up the market share of that name. the little they share in common is the look/feel.

my personal opinion (and I can be wrong), WIndowPhone support by Real is more important than Windows Metro. And yes there is a WP7.5 feedback request.


Brad Hutchings said...

Touch on OEM desktop models is the wildcard here. If that ends up being compelling, it will drive sales of new hardware. But the installed base without touch enabled screens may be a bit overwhelmed with Metro.

Anonymous said...

Well, personally, I am taking a wait and see attitude. I didn't start installing Windows 7 until a year after deployment.

I have a feeling most corporate IT shops will delay deployment, especially if it requires new hardware like touch or motion sense.

You've probably seen this before, but history does repeat . . .

Windows 2 - Failed
Windows 3.11 - Success
Windows 95 - Failed
Windows 98 - Success
Windows ME - Failed
Windows XP - Success
Windows Vista - Failed
Windows 7 - Success
Windows 8 - . . .

Likely Windows 8 will need a second attempt.

Geoff Perlman said...

Interestingly enough, Microsoft has reversed course on the decision regarding VS2012:

Anonymous said...

As Windows 7 will be the next XP for business and power users, Microsoft doesn't care if 8 will be a success or not. Remember the first year of Vista marketing? Vista was a complete success and sold well (with new HW and the users downgraded to XP - bought 4 Dells during this period, all with Vista preinstalled but XP Disks included...)
Windows 8 and Mountain Lion are bold moves towards the dumbing of the desktop that I have great fears for.

Bold to be against Microsoft, wish you best of luck. However, as a Windows-only developer using RS looks like 2012 will be a lost year. Still plenty of Windows 7 related bugs and lack of features.

A good thing to make the IDE free as I can follow the development during 2012 without paying the renewals, looks like the RS cycle is bi-annual - my development have been using 5.5, 2009r5.1 and now 2011r4.3

See you late 2013 (unless our Delphi migration goes well)