As we have seen in previous articles, I’ve been looking at what we might call Personal Cloud Databases. There are many Cloud Data tools out there. I found a review article here, and then looked at these and other alternatives.
- ZOHO Creator – 3 apps free. $15/mo basic plan.
- Dabble DB – free public data. $24/mo for private data. Very cool concepts.
- Web Office – $53/mo includes data.
- Google Docs – Free. No database. Spreadsheet only.
- BaseCamp – No free option. Starts at $24/mo.
- Windows Azure – Clearly not personal. Impossible to tell what it would cost.
And there are more, mostly pitched at small businesses and enterprises, and expensive. At least very expensive compared with Blogging or Photo Galleries. So my question is: Why are database tools so expensive compared with Blogging and Photo tools, which are usually free or almost free? The reason I believe is Open Source.
I think there is a very interesting opportunity for a platform, like WordPress for personal data tables.
Like WordPress for Data
WordPress is a very popular blogging platform and it has an Open Source model. The software is free, but there is a combined Hosting Service / Blog based on wordpress that costs a modest amount. It seems to me that we need to have this model with web data tools, or what I’m going to call Personal Cloud Databases. What I want is a WordPress like platform for Personal Data. It would have the following attributes:
- The software would be OpenSource under GPL licensing and
- would be suitable for personal and small business use. The target is not the Enterprise, those folks already have many cloud solutions.
- You could easily install it on your own hosting service or
- there would be one or more paid services that provide reasonable plans – $5-$10/mo – that would provide hosting possibly with co-located blog/sites and domain purchase.
- Hosting sites like SquareSpace could integrate the software to provide data services in addition to their site creation and hosting.
- The platform would allow import and export of data in some common forms, including SQL so that more complex databases could be accomodated.
- The methodology would be simplified. More at the level of MS Access or OpenOffice Base, rather than the level of SQL tools or phpMyAdmin.
- WordPress features of Themes, Plugins, Widgets would be provided to allow a rich eco-system of contributors to develop. The real success of WordPress, I think, is the nature of this large eco-system. And themes, and plugins are key to this eco-system.
- WordPress features like ease of install and ease of update are provided. The ability install plugins/themes directly with no download/upload cycle and the ability to upgrade the wordpress directly on the site are key ease-of-use features for any modern web platform.
- It would fit nicely with, or embed in, Joomla, Drupal, WordPress and Forums. This means that it can be embedded to add data, as well as view it, and it can have complementary themes, or use, themes from these CMS systems – and possibly others. Joomla and Drupal do not have serious data management plug-ins, and the use of these CMS systems to build serious business sites points to the need for a data tool that works with these environments.
Starting a Design but DHX Quick Tables is Better
I have started design of such an environment as I just described, based on the DOJO Javascript toolkit and a php back end. But then I found the DHX tools and specifically DHX Quick Tables and I’ve re-directed my efforts.
At this point, I’ll be forwarding these ideas to the creators of DHX tools and continue, at some level, to investigate using DHX tools to build a Personal Cloud Database.
DHX QT Enhancements for Personal Cloud Data
As I understand it, DHX QT has the following limitations that should be enhanced to provide the PCD platform:
- Ability to build tables and fields directly in the tool rather than importing tables that are created with another tool.
- Support for field types. See below.
- Support for forms. While one can to CRUD [Create Update Delete] on a table using only a grid view, there are more complex tables [or support for long text fields like the book example] where forms are useful.
- The elimination of a table creation step in favor of table creation as a form is created has much appeal in simplifying the process. ZOHO creator does this. Study of ZOHO Creator may lead to interesting insights into the entire design.
- Support for multiple users and passwords in the style of WordPress.
- Support for multiple databases under one installation. Currently DHX QT supports only one database per installation, so a separate installation is required to support multiple databases.
- Storage of meta data in a database table rather than a text file. This makes backup easy. Currently backing up a DHX QT application requires backing some some configuration data files.
- Themes. Incorporating the Skin Designer into the platform and allowing Themes to be exported would solve the problem. Of course apply and manage themes
- Ability to easily embed table views in other CMSs / web pages. Export an <IFRAME> at minimum.
- Plug-ins, Auto-install, update etc. as for WordPress.
- Plugins probably take the form of filters and datatype widgets. Complex layout like wordpress is not needed since the data tables can be embedded in other CMSs to provide this layout.
Support for the following datatypes is interesting. These are pretty much those provided by ZOHO Creator:
- Text with max width.
- Multi-line text.
- Text with an input mask.
- Numeric field: Integer, Decimal, Real?
- Date, Time and Date/Time. All with popup widgets for setting and display preferences.
- Enum – with an easily edited set of choices. Display as Pull-Down or Radio box as edit.
- Set – with an easily edited set of choices. Displayed as a set of checkboxes when modifying the field, rather than requiring “armor,pants,gloves” style entry.
- Single Checkbox.
- Image – as file path on the server or url or blob.
- URL – as link to web with New Window option default.
- Table Link or Lookup field. This relates a field on one table to a field in another table. This provides the ability to build 1st normal form databases. For example, A Char_Table contains an ID and a CharName field. In another CharArmor table, the Char holding the armor is specified as a CharID field which contains the ID number from the Char_Table. In the UI it is displayed as the CharName text field and is set with a drop-down populated by the CharNames from the Char_Table. ZOHO Creator has a Lookup field, which appears to work this way.
Most of the complicated parts of the platform are already present in the DHX tools, including the widgets – maybe not image – and the grid display and “connector” which provides a simple way to build a server in php, or other languages.
I would hope that the DHX folks pick up the torch and proceed to build the environment as an Open Source platform in the style of WordPress so that we can get on with building the eco-system.
Enjoy,
Windy