Gone are the days when you could whack together a quick windows app and call the job done. Back when Microsoft had over 85% market share on the home desktop pc you didn’t really need to worry about mac OSX, or linux. It was only the hardcore programmers that would play around with grep and regex etc. commands on linux.
Nowadays, the situation is quite different. Almost everyone I know is moving to an iMac or Macbook. One of the main reasons I moved over was because I could still run windows on a macbook. That made the decision so easy. Such a smart move on apple’s part to integrate Intel processors into their systems. Now I run Windows and OSX at the same time using vmware fusion and it works great.
Linux still doesn’t seem to be a major player in the desktop operating system scene, but there’s always rumours of linux making big moves to compete in this space. Generally I find that most cross platform development applications that support mac and windows will also support linux so there’s usually no need to setup a linux box to create and test applications. I only ever bother testing on mac and windows. That’s probably not a die hard developers ideal point of view… but it gets me by.
You can still develop windows apps, and do quite good sales volume. I have noticed that quite a few internet marketers are still developing windows only apps, but I think those marketers will need to adapt to cross platform apps very soon as more and more people are using OSX and are demanding a compatible solution. Specifically I’m thinking of Alex Goad’s Rank Builder app which I bought when it was released. A very good app and lucky for me I could run it on windows using vmware fusion. It looks like it’s built as a windows form application in Visual Studio. Quite a complicated application using multiple dll library files and xml files for data storage. I would be interested to know the stats on how well that application sold and what the support requests we’re like. I am thinking he may have had a lot of people refund because they couldn’t get it to work on their mac.
So, what’s the options when creating applications for end users?
Well, not only do you have to think about multiple operating systems but you also have to think about whether the app is going to be web based or a hybrid desktop/web application. Adobe’s AIR environment is quite a good option as it is cross platform and there are a lot of tools around to develop AIR applications. The popular Market Samurai software uses AIR.
The other option for cross platform desktop apps is java, but I haven’t played with that yet. At the moment I’m satisfied with AIR for desktop applications or hybrid web/desktop apps, and developing extensions or addons for widespread applications like Google Chrome, Mozilla Firefox, and possibly in the future mobile devices like the iPhone.