I need to write an application. But what should I do it in?
- Python/PyGTK: Will be pretty much Linux-specific (yes, I know you can run Gtk apps on Windows, but it’s not really the way). Easy to design the application layout in Glade. Get all that ROX goodness, too.
- XUL: Cross-platform. I get to build it in JavaScript, which is my other language of choice along with Python. Requires Mozilla (or possibly a free-standing GRE, if one exists?) I don’t know a lot about it.
- Browser as Desktop UI: start a web server and a browser at the same time and serve web pages. I’m more experienced with web apps than desktop apps. Can get a pretty rich interface with proper DHTML. I’d have to implement a lot of it myself, though, and make sure it was cross-browser. Would be cross-platform (the server would be Quixote with embedded Medusa, which is nicely Python). I lose interaction with the desktop, though; you can’t drag-and-drop into a browser.
- Python/WxWindows Cross-platform, and a proper desktop app (like
Gtk) but I’ll lose the ROXness.
Those are the ways I can write “desktop” apps, I think. (Yes, I know there are others. I don’t know them as well, or I don’t like them as much (if I use a widget set I want Gtk, not Qt, for example). Which of these would be best, and why?