Reflections and Projections

One last bug...

Well, according to our bug list, we have one last bug to fix. And in the traditional style of bugs, it's proving to be the most elusive. Derek and I are both working on it, so we're hoping to have it solved pretty soon.

One thing to take note of is that the XML format for the themes has changed slightly. Fortunately this is not a big problem, and will cause at most a minor inconvenience. The simple way to "upgrade" your themes from the older to the newer format is to edit them and save them with their original settings.

These last few changes will be the last ones for 1.0. After RC6 we will clean up any additional bugs in, and then release the final version.

We're hoping to have RC out in the next week or so, and then 1.0 final by the end of January. It's a little later than Derek or I expected, but then again, we didn't expect our day-job workloads to be that much either...

Documentation Editor

I've had various offers in the past for help with the documentation, and I'm sad to say those have all fallen through. However, someone has contacted me, and he seems VERY keen to help out with the documentation.

One of the things I have been wanting to do is to extract the documentation from the site, and be able to work on it "offline" as it were. To this end, I extracted the documentation in XML format, and I'm writing a little editor that will be able to parse the XML and allow you to edit the pages of the documentation using a WYSIWYG HTML editor (currently it can do all of that, it just can't save).

So, if you're still interested in helping out with the documentation, you think you can spare an hour a week perhaps, then please contact me, and I'll give you stuff to do!

The all-new Theme Gallery has been launched!

I've just launched the new Theme Gallery, here on You can upload themes exported from, and upload them to the site for others to download.

To upload a new theme, simply click on the "Theme" item of the "Create content" submenu, in your account menu.

The new theme gallery is in place of the Theme Gallery page in the menu on the left.

Help Wanted: Technical Support Consultant

I was just chatting this evening to our head of support, David, about how he was holding up on the support side of things, and he mentioned to me that he's not getting much time these days to attend to the support issues coming in. David is at college, studying up a storm, which doesn't lend itself to copious amounts of free time.

So, if you're interested, and you can spend about half an hour 3 times a week, just checking up on the support requests, I know David would appreciate the help. Please get in contact with him, his contact details are on the Contact Us page.

The all-new Bible CSV Importer

Well, I had to make some adjustments to the CSV Bible Importer because of the new format of the Bibles, and it was starting to get a little crowded, so I ended up creating a whole new wizard. This new wizard adds some new things, only found in the new format Bibles, such as a full version name, copyright information (required when you display the verses) and a permission field as well. More on that when RC6 is released.

In terms of the state of development, we've gotten about half way through our task list for RC6. Derek has been tied up at work, but he reckons that he should be getting more free time in the near future, and he hopes to spend some of that time on I've been getting time to work on since we got back from honeymoon, but I'm wondering how long that will last. Hopefully long enough for us to get 1.0 out the door.

Just a side note about contacting us, I've been getting a number of e-mails recently with feature requests, bug reports and support queries. I don't have the time to go through all of those and then still develop Please use the correct channels for all those items. The Contact Us page has all the details of who to contact for what.

Reworking the Bibles, part 2: Speeding things up.

Since I've been redoing the Bibles, I've been selecting ridiculously large ranges of verses to test out my other code, and I've been getting fed up with how long it took to fetch all the verses in order to display them.

Let me explain a bit of the process first. When you do a search for verses, it doesn't actually fetch the verses at that time. It just runs through the database and sees how many verses there are, and then shows that to you. Only when you use the "Preview," "Go Live!" or "Add to order of service" does actually fetch the text of the verses.

So what would happen is that I would select about 8 chapters' worth of verses, which amounts to about 150 to 200 verses, and when I clicked on "Preview" it would take anything from 30 seconds to more than a minute to fetch those verses. Nope, that's not satisfactory for me, I decided. So this evening I sat down and decided to rewrite the code completely.

The rewritten code is definitely more complicated than the old code, but now instead of fetching each and every verse by itself, my code writes a bit of a crazy SQL query, which then fetches all the verses at once. A much more elegant solution, and MUCH faster. It now takes less than 5 seconds to fetch those 150 to 200 verses.

Unfortunately most of you will probably not notice much of a difference. I think most passages are only a few verses long... usually no longer than about 20 verses, so the performance gain will not be significant. However, it should be far faster now for the minority who like to read 300 verses in a go .

Reworking the Bibles

We've run into a couple of unforseen problems with the Bibles. Some translations use different names for some books. Some translations are not english, and so ALL their books have "different" names! So I'm rewriting how the Bibles work. We used to have an abbreviations file which we'd use when you're doing a Bible search using a book's abbreviation, and then the full search version of the Bibles page used to use that abbreviations file for it's lookup list.

So now we're making the Bibles self-contained. Each Bible file will contain it's own abbreviation table, and instead of doing a text lookup on the name of the book in the verses table, we'll get the id of the book from the abbreviation table (which has become a fully-fledged book table) and use that for the lookup.

So, for those interested, here are the create statements (SQLite) for the tables in the new format Bible files:

CREATE TABLE testament (
    name VARCHAR(30) NOT NULL

   testament_id INTEGER NOT NULL DEFAULT 1,
   name VARCHAR(30) NOT NULL,
   abbreviation VARCHAR(5)

   text BLOB

What's great about this new format is that if you are Spanish, you can have all the names of the books in Spanish! So not only do you get in Spanish (through the Language interface) but you can also have the Bible in Spanish.

Ok, let me get back to IRC channel

I have created an channel on the freenode IRC servers. So fire up your IRC client (you can use ChatZilla with Firefox on any platform, or something like Konversation for Linux) and join me (who_da_fly) on being put through it's paces

I'm back from honeymoon, and feeling relaxed and refreshed. I was pleased to see all the bug reports and related requests when I got back. Thanks to you folks, is being put through it's paces and refined into an almost bug-free piece of software.

So I just wanted to say thanks to all those folks who have been rigorously testing to see that it meets their requirements and operates without problems. Without you folks we wouldn't be able to put out such a fine piece of software (if I might say so myself).

Please continue to test, and send us bug reports (if we don't have them already), Derek and I would like to kill as many bugs as possible in RC5, probably have an RC6 to make sure we have no more bugs left, and then release the final version.

Release Candidate 5 released

Hi All. Release Candidate 5 has now been released. Due to the nature of some of the issues/problems raised in RC4, we felt that we should add an additional RC version before going to a full V1.0. This was mainly due to a lot of rewriting of code to sort out some of the 'little quirks'.

The main issues corrected were:

  • A theme import/export problem (involving the delete option)
  • In the Bible verse 'Verse' layout mode, verses are not split across slides
  • A Bible verse bug seen in imported Bibles was fixed
  • A bug in the deleting of songs was fixed
  • Auto Open Last OOS feature was fixed
  • Missing last slide character bug was fixed

For all you Vista users out there, the missing DLL (d3drm.dll) that was causing issues, will now be installed if you are running on Vista. It has also been confirmed that Powerpoint in Office 2007 is compatible with

With any luck, this will now be the last release before V1.0.

God bless, Derek.