Deciding how to distribute the software.

I've spent a few hours contemplating on whether a first version of the software should be distributed through thick desktop clients, or on the web. I concluded that there was no obvious winner, and that there are several pros and cons to both alternatives.

  • Desktop client
    • Pros
      1. Functionality available everywhere.
      2. Rapid production of maps, - dedicated cpu and no waiting on others.
      3. Less personal bandwidth usage.
    • Cons
      1. Personally I'm less experienced in creating desktop clients (Especially UI).
      2. Software is bound to be updated rapidly in its first incarnations. Extra work to implement auto-update functionality.
      3. Not platform-independent.
      4. Software is cpu and memoryintensive. Old hardware might have trouble handling the requirements.
  • Website
    • Pros
      1. Pretty experienced with technology.
      2. Platform-independent.
      3. Very easy deployment. Updated website is immediately available for everyone.
      4. Software runs on a server with enough juice to run the software.
      5. Easier to detect errors in the software.
      6. Better general overview of the userbase (How many maps are created daily, for instance).
      7. Can easily apply trending to the software usage, to analyze where future effort should be focused.
      8. A community around the software can be embedded into the website seamlessly.
    • Cons
      1. Possibly longer map-generation time, if many users generate concurrently.
      2. More bandwith usage, as end-users have to download mapfiles.
      3. You have to be online to use it!
      4. I'll have to pay for hosting :)

In the end I decided that to start with, I'll be going with the website. Further down the road, I also want a feature-rich desktop client where you can turn and tweak all possible settings though. But the website alternative offers me the most at early stages. At least that's my opinion. (Yes, you're entitled to your own!)