Bible translation software development

When people ask what I do, I usually say something like “I develop software to help Bible translators.” That is probably about the shortest accurate answer to that question that I can muster, at least for my “main” job. I do many other things, too, but this is the bulk of what I spend my working hours on. I often see a puzzled look in response to that question. Every once in a while, I get a pleasantly informed response from someone who knows about software development who asks a question indicating that he or she really gets it. I really don’t have room to explain things very well in our newsletters and emails, because of the artificial limits we place on ourselves for length. We know that our partners are mostly busy people and won’t take the time to read much detail, for the most part… but some do care to know more. For you who care, we have this blog. 🙂Old computers on display at JAARS

Software that Bible translators use covers a broad range of things, on a broad range of platforms. Computer technology keeps advancing, making the older computers and older software seem rather quaint, but even the old stuff really helped Bible translators to do their work. There are many things that computers help any missionary to do, such as email, accounting, correspondence, mailing list management, etc. There are also more specialized tasks related to Bible translation. These include:

  • Studying culture and language.
  • Analyzing language elements in many ways, including audio processing of speech samples, analyzing phonetics, phonemics, grammar, vocabulary, and discourse.
  • Preparing linguistic reports.
  • Developing and using writing systems, where needed.
  • Preparing literacy educational materials so that people can learn to read and write their own language, including the Holy Bible.
  • Editing, analyzing, checking, printing, and publishing the Scriptures.
  • Adapting the Scriptures from one language to one or more other closely related languages.

Right now, my focus is on the publishing side, taking Bible translation raw text in whatever format it is available in, preferably Unified Standard Format Markup and Unicode, and turning it into any of several formats for publication in print and various electronic formats. (Eventually, I hope to do more with the Scripture adaptation area, building on some brilliant ideas in existing products and adding a little more inspiration and work to the mix.) This turns out to be a rather interesting process, with all kinds of twists and turns with complications caused by economics, different writing systems, different (and often strongly-held) ideas about what constitutes good Bible publishing, and different cultural viewpoints. I have written some software that works (WordSend), and is easy enough for the Bible translators to use themselves. Of course, there is always more in the way of requests. My current work list includes:

  • Integrating WordSend into the JAARS/SIL Translation Editor via a plug-in mechanism.
  • Making the build and acceptance tests of WordSend more automatic.
  • Reworking the user interface for better user-friendliness.
  • Reworking the user interface to support localization to various languages.
  • Recreating the work done to export to Microsoft Word XML document (WordML) format to export also to Open Document Text (ODT–the native format of OpenOffice.org Writer). This not only makes using WordSend on Linux useful, but also opens up easy access to taking advantage of the SIL Graphite complex script rendering that is being built into OpenOffice.org products, but not Microsoft products. Some minority lanugages need that capability.
  • Making the GUI user interface of WordSend work cross-platform with Microsoft Windows, Linux, and Mac OS X. (The “guts” of the program already works on all three platforms.)
  • Integrating several new features into WordSend affecting layout within WordML and ODT documents and supporting a larger subset of the USFM standard.
  • Creating export and import functions for several additional Scripture file formats to facilitate electronic publication via the World-Wide Web and Bible study software.

Who writes specialized software for Bible translators? If the software is something useful for other purposes and profitable to sell, then it is usually written by commercial interests. However, an increasing amount of free software is being written for philosophical and practical reasons, and much of this also suits some of the needs of Bible translators. However, some of it is so specialized that it really only is of benefit to Bible translators, who form a market so small and so cash-challenged as to not merit serious commercial consideration. Therefore, it is generally the same sort of people who do the Bible translation who do the Bible translation software development: missionaries on support, with some volunteers who work other jobs but contribute a little part time. The majority of the code, of course, is written by those who devote their full-time efforts to this job. This includes teams at JAARS and SIL located at Waxhaw, North Carolina, and Dallas, Texas, USA, as well as contributors scattered on various mission fields and home country locations. It also includes individual or small team efforts scattered around the world. We try to coordinate efforts with communication via the Internet (using mailing lists, wikis, chat, web sites, etc.) and face-to-face interaction like we had at the recent Computer Technical Conference and Workshops in Waxhaw. This helps us keep duplication of effort down to a healthy level and helps us achieve data format compatibility between applications.

Because of the economics of Bible translation and software development, the vast majority of Bible translators and Bible translation software developers prefer to develop free software, provided that the software developers’ needs are met by financial partners just like the missionaries they serve.

What kinds of computer hardware do Bible translators use? They vary from cutting-edge performance to almost-good-enough-for-the-missionary hand-me-downs. While most run Microsoft Windows (including some ancient versions), some run Apple OS X or 9, some run Linux, and some run Palm-OS-based low power computing devices. There is a great deal of interest in the One Laptop Per Child low-cost, low-power, rugged computer project. It’s computing specs are really whimpy, but the ruggedness, low power, and low cost make it attractive for use in very remote locations lacking commercial power. Most of the software being developed for Bible translators now is written for Windows XP, and probably runs OK on Windows NT, 2000, or Vista. Some is cross-platform, running on Linux and/or Mac OS X, as well; but not enough that most Bible translators can work comfortably in Linux most of the time. I have been inspired by some great examples of cross-platform software, like Thunderbird, Firefox, the OpenOffice.org office suite, etc., and have resolved to follow suit in my contributions to Bible translation software to the maximum extent practical.
What is my biggest challenge? Right now, it is defeating the temptation to move back into a high-paying software engineering job instead of contributing to the work of Bible translation and living on missionary support. 🙂 Still, I would rather not disobey the calling of God, so I press on.