We are moving towards a new era dominated by Web Apps instead of web sites. Web applications are moving out of the browser and onto the desktop. On top of that, tablets and other mobile devices are changing our world and the way we build web applications.

A new era is upon us requiring new technologies and a different approach to building web applications. With Nooku Desktop, we have taken our first step towards making that happen.
Free your apps from the browser
Nooku Desktop is a cross-platform desktop application that lets you easily manage your Nooku Server sites with a simple and easy to use interface.
Nooku Desktop is joining our Nooku Platform empowering developers to create multi-site web applications and making them available as a native desktop application requiring nothing more than existing web skills like Javascript, HTML, CSS and PHP.
… continue reading …
Recently I have been working on the demo server that will house our various demo sites.
One of the common issues with a demo site is that to preserve its integrity you may need to either restrict access or have a periodic rebuild. Restricting access may work sometimes but it’s likely to inhibit people trying out anything that is administrative in nature. Hence rebuilding the site is a far more appealing alternative.
The idea is basically delete everything and replace with a fresh copy, but to do so with minimum downtime. The result should be a quick and secure rebuild. With that in mind we set about creating bash script that would rebuild the site as often as required (run as a cron job).
To get started I mapped out the process.

As you can see we do everything using version control which in this case happened to be subversion.
By updating then exporting into a temp folder, the longest part of the process is done prior to any impact on the site. I threw in the checkout logic so that the same script could be used to build a brand new site (as in, one that does not already exist).
The first impact on the public site is the dropping of the database unless there have been changes to the repository that required database modifications.
For a typical site the whole process takes 13 seconds when no changes have been committed to subversion, with less than 2 seconds of downtime.
… continue reading …