A little while after the dust of a new release settles, the development team will meet to discuss the plans for the next release. These are some of my favorite meetings to be a part of, because I get to lobby for the new features I think are really important. I've learned over the years that you can't always get what you want, and some of what you lobby for gets deferred even further into the future. Whenever you get frustrated because a feature you've requested doesn't appear in the latest upgrade, comfort yourself with the knowledge that there are features on our list which I've been pushing for years, and for which I'm still waiting.
Ultimately, we can't do everything at once, so we have to pick and choose those features we think will add the most value. And it's not just Accordance users and OakTree Software employees who sometimes have to wait for hoped-for features. Even our company president and lead programmer has had to see some of his own cool ideas tabled for years. Such was the case with the feature I want to talk about today: the new INFER command.
I can't remember when he first started talking about what he called the "inference engine." I'm thinking it goes back at least to our discussions of what to include in version 4, and it may even go farther back than that. The idea was simple enough, and was first proposed by a couple of Qumran scholars: create a way to search one text for quotations from and allusions to another text. For example, what if you could search the Dead Sea Scrolls for allusions to Genesis, or the Mishna for allusions to the Dead Sea Scrolls? Such a tool would break new ground in intertextual studies. (And lest you assume this is only useful for scholars, such searches would work just as well in English to show literary relationships between various biblical books.)
In spite of this feature's obvious utility, every time our lead programmer would voice his desire to add it, there would always be some more pressing need which, while far less visionary, was likely to have much broader appeal. So the "inference engine" was put off "until the next version" again and again and again.
While the concept of having Accordance infer some kind of literary relationship between texts was simple enough, it raised all kinds of questions: How do you interface such a feature? How do you account for differences in word order? How do you account for words which get dropped from a phrase, or words which get added to it? How do you avoid getting too many false hits, or too few meaningful ones? Frankly, while we all thought the idea was revolutionary, we were afraid it raised too many issues to be worth the effort, at least as long as there were more pressing features to develop.
When we began planning Accordance 8, there were still pressing development needs, but none so important that it would justify further delaying the "inference engine." The new INFER command was therefore one of the first new features developed for version 8, and it is easily the most significant.
Once we had decided to interface the "inference engine" as an additional advanced search command, a working prototype was developed remarkably quickly. Personally, I was amazed at how soon we were able to play with this feature we had put off for so long. And play with it we did. The INFER command was rigorously tested, both by the development team and by serious scholars who saw the potential for this feature in their own work. With their help, we continually tweaked and improved the INFER command so that it would be easier to use and yield better results. Now we're excited to get it into your hands and have you use it in your own studies.
After years of waiting in the conceptual stages, the new INFER command is an idea whose time has come. It's something which has never been done in Bible software before, and you get to be the first to try it.
In my next post, I'll show you how it works! :-)