By now you may have seen some of our blog posts regarding the new fundraising interface, and a few of you may have had demos or be using it right now. I’m going to give a developers-eye view of how we put together a major new feature at Spektrix.
When I first joined Spektrix last October, I was mainly working on our Seating Overlays feature (released in Februrary 2013). In the meantime the management team were thinking ahead, drawing up and revising a written specification ('spec') for the Fundraising module. Our user interface (UI) expert Alec was coming up with ideas for how the interface should look, and as the plans got more concrete, myself and the rest of the development team became more involved.
We were in the great position of starting with a clean slate - we could look at what tools would be the most useful for fundraisers, rather than being constrained by processes already in place - so we spent a long time understanding the processes fundraisers go through, and what information they want to get at quickly.
We then picked the spec apart with a fine toothcomb, working out exactly how the concepts related to each other, and what users should (and shouldn’t!) be able to do in the system.
Then we spent several meetings working out how we could represent the concepts in our database, and in computer memory - and this lead to a few changes to the spec as we realised the practicality of what we wanted.
By this time Alec had produced designs for all the main screens, and we could navigate our way through the system on paper to ensure that everything was workable, and that our spec, database designs and the screenshots all agreed (surprisingly tricky). One of the things I love about Spektrix is because our development team is small, I get to be involved in this decision making and planning.
As well as working within our team, we asked fundraisers to come in and give their thoughts on our plans and which features they needed - this helped a lot to ensure we were focusing in the right areas, and concentrating on the most useful features in the user interface. Several of the developers have a background in theatre so have a good instinct for what box office staff want (and the Spektrix support and projects team are able to help us work through the more tricky parts), but fundraising was a whole new area for us, so this was very helpful.
Finally it was time to start coding; we gradually checked off the features as we implemented them. I remember the activities editor going through several different versions - we wanted to make sure that fundraisers can start making notes on an activity after a single click, e.g. if a phone call comes in and you want to get notes down - but also to ensure that you can’t save an activity without giving it a meaningful subject, date and assigning it to someone. We finally came up with a way to allow you to have several draft activities at the same time, but ensuring you have entered everything you need to before they are saved and visible to everyone else.
There was a lot of freedom in the fundraising interface, both in the look and feel and the code, as we were working on something new - so we could play around with better ways to present the data, and immediately rework anything that needed tweaking without worrying about how we converted existing customer data.
I love the new UI - we used various tricks to ensure the new interface makes use of the full size of the client’s screens, so that those with bigger monitors can see more information, while those with smaller ones can still use everything they need to. This becomes progressively more tricky when you have to support several different internet browsers, each with their own quirks. The development team are pretty much split 50-50 between Firefox and Chrome fans, so we tend to pick up any differences in those pretty quickly; then we test with Internet Explorer to ensure everything works there.
With any complex system there will be bugs in the first version; we hired several temporary staff from some Spektrix clients to help us test all the changes we’d made and ensure everything worked as expected. Although you won’t necessarily notice it, there were many backstage changes in 'Release 29' (as the fundraising release was known to us) to facilitate adding the fundraising features; they helped us ensure that these changes didn’t compromise data integrity or prevent the system working, and could make sure that every screen was tested in every browser.
Since we released, it’s been really positive hearing the feedback through our sales and support teams; releasing it to the wild is a bit like the opening night of a show, you’re confident it’s going to go down well, but until you actually hear the audience reaction you’re still nervous. I’ve been able to meet a few of our clients at the last Spektrix Social, and hopefully will meet others of you at the next one; it’s a great feeling hearing that something you’ve worked on has made their lives easier.
One of the things I love about working here is that the entire team is proud of the software that we produce, and that it makes a real difference to our customers.