Jan 25, 2012, 10:47 PM
|
|
|
Minnesota
Joined Sep 2004
480 Posts
|
Hi Happy, I'll toss in a couple quick thoughts.
For games that have a 6 month shelf life, you develop for what ever technology is popular today and it doesn't matter what's coming around the corner next year. For applications that plan to stick around a bit longer on the scene, I do think it is wise to consider a cross platform development strategy. You never know when the computer world will shift out from under you. 2 years from now, maybe we'll all be running android based tablets/laptops (even desktops?) all our applications will be on the cloud -- or maybe we'll all be running windows 2015 or pear-pads or maybe we'll all be running something no one has heard of today? Who knows, maybe we'll have an official federal government OS and the choice will be made for us. :-)
So putting all your eggs in the .net basket isn't necessarily a bad thing -- if you can't deliver a good windows solution you'll cut out a lot of your potential customer base. But it does limit you to the windows world and the windows way of thinking and if something new comes along (cough ipad/android) you could be left with all the other dinosaurs fighting for a shrinking water hole.
The challenge is can you do something that looks and runs nice on all your target platforms (and doesn't look like an eye sore or completely out of place compared to all the other apps on your device?)
Another thing to consider: if you don't build in a cross platform strategy from the start, it can be really difficult to reverse engineer this in later. From the start you need to strategically pick portable supporting libraries -- how you handle networking, serial communication, menus, windows, dialog boxes, save and load files (even how do you deal with file names), the list goes on and on.
But at the end of the day, if your users follow the normal trend -- probably close to 80-90% of them will be running windows with the rest divided between mac and linux.
Speaking very generically -- there will be pluses and minuses to any choice you make. The challenge is always to navigate through the various options and pick a set of paths that have a lot of good strengths. But there is always a downside to any choice so you also have to figure out a way to work around that and minimize the amount of negative while maximizing the positives that your choice will bring.
Another thing that could affect your decision is how you plan to license the result. If this a commercial product developed in-house, then whatever you do, it probably should run well on windows and you may not care about anything else (at the end of the day, the cost of a laptop is noise in the total price of an advanced UAV "system" so just include the laptop with the required OS. If it's going to be open-source, then I think that adds a lot of motivation to keep everything cross platform. You'll miss out on a lot of potential talent to help if you lock into a specific OS.
|
|
|
|
|