Computers... 'nuff said!
Mozilla's got it right (except their codebase structure maybe). They got a browser to fall in love with, a very nice mail client and a thing called XULRunner.
XULRunner?
What's that? XULRunner basically is the framework Firefox, Thunderbird and several other applications run in. XUL is a XML-based user interface description "language" and supports ECMAScript (JavaScript) and lots of extensions.
Writing a XUL application is about as hard as designing a web-interface. Actually XUL has a browser-element, making it possible to write DHTML applications.
What's so special about it? Mozilla provides binaries for Windows (95+), Linux and Mac OS X. It also runs on FreeBSD and is/can easily be ported to other platforms. The rendering engine, named Gecko, is the most w3c-standards compliant engine ever and pretty fast btw. Even webdevelopers who never programmed a desktop application beyond "hello world!" can now do so without digging through tutorials. And no additional libraries are required to run XULRunner - installation is a matter of copy'n'paste.
So if you planned to embed a webbrowser into your application, sometimes it might be better to embed your application into XULRunner.
Client/Server
Continuing the "Webinterface as Desktop-Application" idea, the Client/Server paradigm comes to mind. While conventional Client/Server-applications eat a lot of time planning structures, communication protocols and the like, using XUL might be as simple as writing some PHP/ASP code. If you prefer to deploy your server/daemon in compiled form, a basic webdaemon written in gcc compatible C/C++ or Java might be enough, while still being platform independent.
If you are in the process of creating either a Cross-Platform and/or a Client/Server application, definately have a look at XUL.
Leave a reply