Hi folks,

Time to return to generatedata.com! I admit, I rather let that project go over the last few months while I focussed on my Form Tools script. But after attending Google I/O this week, I feel a renewed enthusiasm for the project. It’s a really cool script, but there’s a lot of room for improvement.

I’ve been hemming and hawing over which features I’ll be working on, but here’s the list that will definitely be done.

Totally revamp using HTML 5
- when I first released the existing generatedata.com script, I deliberately targeted the modern browsers. Generally I don’t do this, but for generatedata.com, the people that would be using the script would be technical, and that means: less IE users. Well, now it’s 2010 and browsers have come a long way in the last couple of years. So I’m going to rewrite the script using HTML5 technologies. Initially I think it will only support Chrome and Safari, but Firefox isn’t a long way off.

Rewrite using jQuery and jQuery UI
- I love Prototype, it’s a great library – as is Scriptaculous. But jQuery has more traction and for this project feels more appropriate – I only ever used a fraction of Prototype’s massive functionality, and it was a lot of overhead. Plus I’ve been using jQuery more and more and actually prefer it in a number of respects. Without getting into a philosophical debate, I prefer jQuery’s no-conflict implementation instead of Prototype’s “Missing API” approach.

Features to be added

  • option to generate SQLite and MSSQL content, in addition to MySQL and Oracle
  • rows will now be sortable (by dragging them) and deletable
  • data consistency across rows (e.g. if row is US, should have US postal codes for example)
  • use jQuery datepicker
  • li’s instead of table’s for the construction (generally improve the awful existing markup!!)
  • UI in multiple languages & provide default translation of all (50 languages or so).
  • option with XML to define own output XML structure
  • be able to log in as different users on local version, so it can be installed once & used by multiple people
  • lats & lngs
  • extensible via modules. This will let you add your own options to show up in the data type dropdowns. So if you need a particular range of numbers, some weird mathematical things, images – anything – you can do it. Unfortunately, this will only be available on the downloaded version – not on the live site.

As I said, this is just the shortlist – I have a list a mile long of other features I want to add. But I’ll roll then out in stages, I think.

I also REALLY, REALLY want to add an API so that you can call the generatedata.com engine from your own JS / backend code to get random data directly in your own code. But that takes bandwidth. I’m going to think about that some more. Worst case scenario is that you can only call your local installation for it (or people who donated can call it directly from the site).

- Ben