views:

91

answers:

1

i am wondering if there is any way i can create an app that starts as a desktop application, for personal use for now. and since desktop applications can work with my HDD files which i may want to manage but don't feel secure throwing them onto a web server. but what i think i may want to do in the future is port the app to the web since that is where i think is the future of applications to come. web apps are available everywhere eg. web apps can be used on smart phones etc. facilitate team collaboration etc.

i have looked at some technologies but all seem to have some disadvantages


Adobe AIR 2

Advantages

  • Use of existing web technologies make it easy for me (mainly a web developer) to design and develop applications based on HTML5, CSS3, JS (jQuery, Dojo) which can be ported to a web platform in the future with greater ease
  • can access file system

Disadvantages

  • i guess speed maybe an issue
  • i may encounter limitations with what can be done in JS (vs languages like C#, Python, Java etc)

C#/F#/WPF/EF/LINQ

Advantages

  • C#/F# powerful languages
  • EF/LINQ makes data access very simple
  • WPF provides good data binding, styling capabilities

Disadvantages

  • WPF harder to use/learn than what i already know (HTML/CSS/JS)
  • WPF abit more complex
  • Harder to port over to a web platform (... maybe with a .NET platform its still ok? but i think Open Source PHP/Apache is more widely used)

Silverlight (Out of Browser)

Advantages

  • C#/F# more powerful than JS

Disadvantages

  • complexities of WPF vs HTML/CSS

Mozilla Framework

i dont know much about this option yet

Advantages

  • XUL as a layout tool, i guess provides more flexibilities than HTML?
  • uses CSS/JS existing web technologies so porting maybe still quite straightforward
  • i think it can use native API/Code tho i dont know how it works yet
  • in general, i think it will be a more powerful option over adobe air

Disadvantages

  • Architecture of software seems messy, chrome folders etc? i think WPF seems like a much more powerful and elegant option compared to this?

i have seen QT-Webkit too, but same as Mozilla Framework, WPF seems like a much more powerful and elegant option

just FYI, i am thinking of building a Project Management/Organizer type application. most parts of it i think it will work on a web platform except i wanted to integrate features like screen capture, managing project files, resources (eg. web site inspirations, resources like fonts, videos, etc). i am also exploring Adobe XMP to add metadata to files (images, videos etc).

+1  A: 

You might consider Adobe Air or Silverlight which are platforms that allow an application to run on the desktop or web. There is also an open-source alternative called Titanium that, like Adobe Air, is also multi-platform.

Turnkey