Tech Talk: The Dingus and the Gooberizer

If you want to think of this as a PocketBible 3 for Windows progress update, you wouldn’t be entirely wrong. You will surely be disappointed, but you won’t technically be wrong.

The Dingus

We’re experimenting with giving you access to AI-generated commentary and other tools in the Autostudy feature in PocketBible 3 using the ChatGPT API. You won’t have to have a ChatGPT account to use it; we’ll create the prompts and automatically submit them and get responses for you to include (if you’d like) in your Autostudy output.

ChatGPT uses Markdown in its responses. Markdown is an easy way to create formatted text with a plain text editor. PocketBible use HTML for this purpose, which is a very different and more difficult way to create formatted text. So we have to convert from Markdown to HTML to display ChatGPT results in PocketBible. This is not straightforward, as Markdown wasn’t “designed” so much as it was pieced together as needed.

When the nerds who power our tech economy were asked to come up with a “standard” for Markdown, they discovered that even its most formal definition was ambiguous. If someone asked, “What happens if you overlap bold and italic markers in the text?” the only way to find out was to try it and see what happened. In order to make it easy for users to experiment and deduce the rules, they produced what is known simply as “the CommonMark Dingus” — as in “that whatchamacallit on their website”. The Dingus lets you enter text using CommonMark syntax and it shows you how it will render and what HTML tags are required to get the same result.

The Laridian Dingus

After laughing about the CommonMark Dingus every time I used it, I realized the only way I was going to be able to interactively test my server-based Markdown to HTML converter was to write my own “dingus”. Turns out it’s actually not a bad idea. I see now why they created it.

The Gooberizer

While writing this, I (Craig) was reminded of some PocketBible code. Back around 2002, my programming partner, Jeff Wheeler, was working on the DailyReader app. At the time, daily devotional books and Bible reading plans were not a part of PocketBible, but rather, you needed a separate app called DailyReader.

Since DailyReader didn’t know how to read PocketBible books, and since Palm OS, the hot mobile operating system at the time, didn’t have a file system (!!!), we had to come up with a way to store the text of reading plans and devotionals in a way that would be compatible with a Palm OS database, would be quick and easy to decode, and wouldn’t be readable by humans.

Of the two of us, I was the guy who had experience with encryption. I had implemented a simple encryption algorithm that we were able to use on our website and in our apps when we needed something “secure enough” — not something you’d trust your credit card number to, but good enough to obscure other sensitive information that we don’t want you messing with. So Jeff came to me to figure out how to obfuscate his DailyReader data.

“I don’t need some kind of unbreakable encryption. I just want to goober up the text enough that it can’t be read by the average user,” he said. I picked up on Jeff’s goofy terminology and created the skeleton of code called “The Gooberizer“. I created a simple encryption algorithm with a symmetric key — as long as the producer of the encrypted file (his little program that created DailyReader books) and the consumer of it (the DailyReader app itself) use the same key, one can encrypt and the other can decrypt the data. In order to make it slightly more secure, the secret key is not something stored in the program, but rather is computed based on the data in the book. This made it harder for a nefarious (or curious) user to break the code and ungooberize the text for himself.

Jeff fleshed out the code from my design and DailyReader soon had fully gooberized text.

PocketBible and the Gooberizer

Three years later I was adding some code to PocketBible and needed a way to authenticate an LBK (Laridian Book) file. We had decided to release our BookBuilder app as a commercial product but didn’t want a rogue competitor to use it to reproduce our entire library and put us out of business. So we put information into the LBK file that tells us that the file was built by the consumer version of BookBuilder. We needed a way to verify that these imaginary rogue competitors (who were growing more vile and contemptible the more we thought about them) weren’t tampering with the info to convince PocketBible that their books came from Laridian.

Then I remembered the Gooberizer. I rejiggered the Gooberizer code so it could produce a one-way hash of any string you gave it. The idea is that BookBuilder would build a string based on critical values in the LBK file, then store the gooberized string in the LBK itself. When PocketBible opens the file, it builds its own copy of the critical-values string and produces its own gooberized representation of it. If the stored goober and the runtime goober match, you get to read the book.

But seriously…

It can be embarrassing when the terminology you use around the office to describe something makes its way into public. You casually refer to your experimental test page on the website as “that dingus” and the next thing you know it becomes the most important part of your project.

Fortunately, we don’t foresee any need to give the public access to the Gooberizer. So for now it’s our little inside joke. Until somebody decides to write a blog article about it.

The Eclipse Effect

On Friday, April 5, my wife and I took off from our home in Iowa and headed toward New England — the only area along the path of the April 8 total solar eclipse forecast to have clear skies. By Saturday, the weather was improving in central Indiana, so we turned back a bit and spent Saturday night in Indianapolis. Sunday morning’s forecast suggested Cape Girardeau, MO might be the place to be. I saw the 2017 eclipse from Makanda, IL, which is about 2 hours from Cape Girardeau, so we headed to that area to spend Sunday night — with the idea we might move quickly on Monday morning, in time to set up for the 12:40 PM “first contact” (C1) between the sun and the moon.

Monday morning things looked no better in southern Missouri than they were in southern Illinois, so we headed to Makanda to reprise my 2017 experience at the place where the two paths of totality (2017 and 2024) met.

With me was a new Seestar S50 Smart Telescope. The Seestar is just a sophisticated digital camera. You set it on its tripod, calibrate its internal compass, level it up, then tap “sun” in its app. It just rotates and looks up and finds the sun, then follows it across the sky until you tell it to stop.

We got some great footage with the telescope. I combined it with my iPhone footage to document our experience.

The big telescope is just there to impress the kids. The workhorse Seestar is the little guy on the ground on the left.

Meanwhile, At Laridian

If you’ve been paying attention, you’ve figured out over the last 5-6 years that we’ve settled in on a marketing schedule where we announce a new product or sale every Monday morning. The email goes out around 9:30 AM Central Time. This tends to make Mondays our best revenue day. On Thursday, the email goes out to anyone who hasn’t opened it yet, as a reminder that they’re not keeping up. 🙂

After getting back in the office, I looked at Monday’s orders and found an interesting pattern. We had an initial bump around 9:30 AM as expected, but then starting in the hour that the partial eclipse started in southwest Texas, sales fell to all but nothing. They didn’t come up until the hour after the total eclipse ended in northeastern Maine. For the rest of the day they were higher than usual as everyone recovered from staring at the sun.

In this graph I’ve normalized the sales numbers so that “peak sales” is at the same level for both a typical Monday and eclipse Monday. The point is not to reveal exact numbers but to show the dramatic effect of the eclipse. Sales are reported hourly, so the slant in the line that starts at 14:00 (2PM) doesn’t mean that we started to see sales as soon as totality started in the midwest, but rather that there were a lot more sales in the 3:00 hour than the 2:00 hour.

I suspect there might be more to see here, but I haven’t taken time to dig into it. For example, I wouldn’t expect to see as much of a difference in sales from western states as from eastern states, since the former were so far away from the path of totality.

I wouldn’t normally share information like this but it was so dramatic that it seemed like it might be interesting. And I don’t blame you for not buying anything during the eclipse — even those of us at Laridian were doing nothing but watching the eclipse along with you.

Thinking about PocketBible users’ group meetings in Iceland in 2026 and Sydney in 2028.

🤔🥳🌞🌚

PocketBible 2024 User Survey

I’m just going with these AI-generated images now. No excuses. Pretend like it’s a game — find the anomalies. Which person is a ghost? Which is part of the furniture? Where is the sun? Why is there a big red violator in the upper left corner? What is it hiding?

We just completed our annual survey of our PocketBible users and I thought I’d share a few results with you. This isn’t everything and it’s not even every important thing. But some of this is interesting and might help you understand who your fellow PocketBible users are, and in some cases, why we might make the choices we do when it comes to the products we create for PocketBible.

Demographics

The majority of you are male, and are 55 or older. To some peoples’ surprise, most of you are not preachers — though about half of you have some kind of teaching ministry.

This is consistent with what we’ve come to know about our PocketBible users. I believe that our age (yes, I’m in that “over 55” group, too) puts us in a generation that trusts the authority of the Bible and therefore wants to know more about it. We also believe there are people smarter than us who have things to say about the Bible from whom we can learn. Younger people tend to value the experience of God. They learn about God through their community experiences with their fellow believers. As a result they have less dependence on the kind of commentary and research tools at which PocketBible excels. Not all of them, of course; we continue to add new users of all ages to the PocketBible family.

Beliefs

Half of you chose the label “Bible-believing” to describe your Christian beliefs. One-third use the term “evangelical” and one-third “nondenominational”. About two thirds selected “Catholic”, “Orthodox”, or a specific Protestant denomination. These terms aren’t mutually exclusive so the totals add up to more than 100% with a lot of overlap.

It’s interesting to note how our ranking of denominations is different than the ranking of these denominations in the general population. Note that these are cherry-picked to match what we asked on our survey; there could be a number of smaller denominations missing.

Church/DenominationRank (In the US)Rank (Among PocketBible users)
Catholic18
Baptist21
Methodist34
Lutheran46
Pentecostal52
Presbyterian63
Episcopal/Anglican75
Seventh Day Adventist87
Orthodox99
Only denominations that got at least 10 responses on our survey are listed. 80% of you are in the US, so only members of these churches in the US were considered.

This is consistent with what we know from being in the Christian publishing business for over 30 years. People who purchase Bibles and Bible study materials tend to be on the more theologically “conservative” end of the spectrum and they tend to describe themselves as neither Catholic nor Protestant. That “Bible-believing” term sums up who they are. This has been true the entire time I’ve been in this business.

And it makes sense. These are the kind of people who are encouraged by the churches they attend to study the Bible for themselves and not to depend on a formal member of the clergy to answer their questions. Even the least leadership-oriented person in this group has a small but useful Bible library, which may or may not be entirely digital.

Bible Reading

90% of you spend time reading the Bible every day (or nearly every day). The majority of those are either using PocketBible’s devotional features or following an external plan but using PocketBible to read the Bible. Those who do read every day spend 17 minutes each day reading the Bible. This is consistent with the 16.5 minutes we got last year.

I find that encouraging. I believe it’s important for Christians to read and understand the Bible. It’s our most direct way of getting instruction from God.

Online Habits

Most of you are still using Google for searches even though it puts your privacy at risk. The next most popular choice is arguably the right one: Duck Duck Go.

A few of you, when asked what search engine you use, told us you use Edge, Firefox, or Safari. Please — these are browsers. A browser is how you access the Web. A search engine is a website you use to perform searches. Most browsers allow you to choose a default search engine. This allows you to type some search words into the address line in your browser and it will automatically invoke your chosen search engine to perform the search.

Use of PocketBible

Most of you use PocketBible every day and almost 90% use it more than just in church on Sunday.

Over 80% of you use PocketBible most of the time on either a phone or tablet. This is consistent with how we target our marketing of what we do — we are a mobile app developer and always have been. That less-than-20% who use it primarily on a desktop or laptop will argue with us about that and point out that Windows is the most popular operating system. Until we point out that Windows is the most popular desktop operating system. If you expand your scope to all computing devices, then Android OS is actually installed on more devices than Windows.

Satisfaction

94% of you are somewhat or very satisfied with PocketBible. You are most interested in the same kinds of resources that we are already producing — commentaries, dictionaries, Bibles, and atlases. You have some very specific recommendations in some cases, and we’ve made a note of those.

2% of you are dissatisfied with PocketBible, so we’re pouring over your criticisms and suggestions. We don’t respond to these of course, but we do read them. We don’t enjoy it, but we do it anyway.

This is just a quick overview of the portions of the survey that I thought might be of general interest. The complete report is 49 pages long, including your comments, suggestions, and complaints in 10-point font.

Thanks to those of you who participated! This is an important part of what we do to make PocketBible into a useful tool.

My Favorites

ChatGPT imagines what it looks like when I’m studying the Bible with PocketBible.

I’ve been writing Bible software and publishing Bibles and Bible reference books for over 35 years now. For some reason, people think I’m intimately familiar with every one of the hundreds of titles we publish. Obviously I can’t be and I’m not. But I do have some favorites. I’ve never taken the time to say which ones I like and why, so let’s do that today.

I’ve intentionally not linked these to our online catalog, as I don’t want to give the impression that I’m promoting any of these titles over others we might carry. Feel free to list what you think are indispensable Bibles and reference books for your own study in the comments.

Bibles

At the risk of offending those who think there’s only one English translation of the Bible with God’s imprimatur, here are my faves.

Modern English: The World English Bible

The WEB is an updated version of the 1901 ASV text. It doesn’t go out of its way to be overtly “modern” but rather just updates the language to sound more natural to today’s readers. I especially like that it uses “Yahweh” for the name of God in the Old Testament, which I believe “personalizes” God and makes him more of an active character in the narrative instead of a distant and disconnected force that meddles in human affairs in ways beyond our understanding.

Because I use this Bible in my 7-Minute Bible devotional, I’ve read through it a few times and have been happy to have been able to suggest some corrections to it in a handful of verses.

“Literal” Translation: The New American Standard Bible (2020 Edition)

When the 2020 NASB was introduced, I started in Genesis and read it cover-to-cover. I was expecting to be disappointed, as I had always been when trying to read the 1995 edition. While the latter was good for word studies, it didn’t read well. It was rather jarring to the ears. The 2020 edition seemed much smoother without resorting to paraphrase or functional equivalence.

I tend to use the version of this Bible that includes Strong’s numbers when I need to reference the original languages. I like the literal translation better in that case.

When I Can’t Remember a Verse: The King James Version

As a new Christian, I attended churches that taught from the KJV for about 25 years. I’m one of a shrinking number of people that don’t find the KJV, which mixes a little Middle English grammar into its Early Modern English text, to be off-putting. When I remember a few words of a verse and need to do a search to find it, I tend to do that search in the KJV, betting that the dark corners of my memory are recalling its particular wording.

As you know, back in 2014 Laridian switched its KJV text to the 1910 Cambridge version to bring it into line with what most modern KJV readers expect. We then added Louis Klopsch’s original red-lettering to the New Testament to make ours a very special edition of the text.


Commentaries

This is where we really get into differences of opinion. But I’m the one writing this article, so I get to express mine here.

Whole-Bible Commentary: Constable’s Bible Study Notes

Dr. Tom Constable from Dallas Theological Seminary does an outstanding job of presenting a conservative, evangelical point of view while making room for alternative explanations. He backs up both his own opinions and alternative opinions with quotes from third parties who champion those points of view. Since these are literally just his own personal notes collected over the years, they don’t suffer from having been over-edited by a publisher and a marketing department.

Because the book hasn’t been overly edited, it doesn’t contain anything superflous, like random color images of sites in Israel. But it does contain charts and maps when appropriate to understanding the text.

New Testament Word Studies: Robertson’s Word Pictures in the New Testament

This is an update to Vincent’s Word Studies in the New Testament, which is also a recommended book. You would think a book on word studies would be a dictionary in PocketBible, but Robertson presents his work verse-by-verse, which makes it easy to find what you’re looking for while reading.

This book is intentionally written to people like me with an interest in the original languages but not the expertise to study word origins and learn how to parse nouns and verbs on my own. I feel like I get the benefit of knowing the languages without having to learn them.

Expository Commentary: The Expositor’s Bible Commentary (full edition or abridged)

I tend to keep the full edition of this commentary on my devices, but the abridged edition is an affordable alternative that doesn’t lose much in the abridgement. I like this commentary for its deep, scholarly treatment of the subject matter and its willingness to discuss alternative points of view.

We used to be able to sell this 12-volume set for a very reasonable price. But recent changes at the publisher make this one hard to discount. It’s worth every penny, but if you ever catch it on sale, you should scrape together the shekels to buy it.

Old Testament Commentary: Keil and Delitzsch Old Testament Commentary

This is not for the faint of heart. You don’t have to be able to read Hebrew, but it might help. This commentary isn’t for everyone, but it’s one place I look when sussing out nuance of meaning from Hebrew.

Most of the time, almost any other commentary will do when studying the Old Testament. But if you really want to get into the meanings of words and how they’re used, this is the tool you need. It’s not something you can give a quick read and learn everything you need — it takes some effort to figure out what they’re talking about and where they’re going. But if you want that level of detail, this is the place to find it.


Dictionaries

In PocketBible, atlases are often categorized as dictionaries, so I’ll cover those here as well.

Strong’s Numbers: Complete Word Study Dictionaries

These dictionaries (OT and NT volumes) are ideal companions to any of our Bibles that contain Strong’s numbers. They provide significantly more detailed definitions than do the default dictionaries that come with those Bibles.

For each word you’ll see its Strong’s number, Hebrew or Greek spelling, transliteration, forms, synonyms, antonyms, and definitions of every usage of the word. There are many links to verses where the word is used and links to related words in the dictionary.

Atlas: Deluxe Bible Maps and Timelines or the Holman Bible Atlas Bundle

Deluxe Bible Maps is a thorough atlas of every region, battle, time period, people group, etc. The maps themselves are pretty simple, but the place names are linked to short descriptions in the accompanying dictionary of Bible places.

The Holman Bible Atlas Bundle consists of the Holman Bible Atlas and the Holman Book of Biblical Charts, Maps, and Reconstructions. The atlas contains over 130 maps plus hundreds of timelines, charts, and articles. The book of charts, maps, and reconstructions is a perfect supplement, containing dozens of images that are ideal for both study and teaching.

Topical Dictionary: Dictionary of Bible Themes

This is a hidden gem in our catalog. It’s actually two books. The Dictionary of Bible Themes is like Nave’s Topical Bible. The topics are organized like a systematic theology. Each contains links to verses and other related topics. Also included is the Dictionary of Bible Themes Scripture Index, which functions like the Thompson Chain Reference Bible and is organized like a commentary in PocketBible so that it follows along with verses as you read them and links you to topics appropriate to that verse.


Devotionals

I’m more of a read-through-the-Bible guy than a daily-nugget-of-truth guy, so my preferences are going to lean in that direction. I don’t like the plans that scramble the Bible up by chapter or by OT+NT+Psalms+Proverbs each day. I just get lost that way. I strongly prefer to read chronologically. I feel I know the history better that way.

Chronological Bible Reading: The 7-Minute Bible

Yeah, I know — this is my book so of course I picked it. Think of it this way instead: This is how I prefer to read through the Bible in the morning, so I wrote it. The 7-Minute Bible is the text of the World English Bible (WEB) organized chronologically, harmonized where appropriate (i.e. Kings/Chronicles and the Gospels), the edited to remove the things that are going to cause you to stop reading through the Bible (like 9 full chapters of names at the beginning of 1 Chronicles). I find I can read through the entire 7-Minute Bible in 4 months if I read just 15 minutes per day.

Reading in Bible Order: OT in One Year and NT in 6 Months (Twice)

If I feel I must read ever verse in the Bible, I have done it by reading one day from the Old Testament in One Year plan and one day from the New Testament in 6 Months plan each day. When I finish the New Testament at the end of June, I start over. These reading plans are free when you register PocketBible, so everyone has access to them.


Other Books

There are a few books that PocketBible categorizes as “other” (because they don’t fit in any of the categories above) that I find useful.

The “Lost World” Series

This is a recently published series of books that takes a fresh look at the Old Testament in the light of our best understanding of the Hebrew language and the literature of the Ancient Near East. The goal is to read the text from the perspective of the people to whom it was originally written.

While all “Bible background” commentaries try to provide historical and cultural information, this series focuses on key passages, such as Genesis 1, Adam and Eve, Noah and the Flood, the Israelite Conquest, etc. to find hints in what we know about Ancient Near East cultures to help us understand how those who may have heard or read what we know of as the Old Testament would have understood it.

Scottish Metrical Psalms

I’m not a fan of the Psalms. It’s an interesting little book of song lyrics but I find it hard to identify with. I’m not pursued by my sworn enemies into caves and crevices on a regular basis. I’m not a song-writer looking for lyrics. But — if I have to read a song book, I need it to rhyme and I need it to be singable in standard meter. This little book translates the book of Psalms into truly singable works. I thought about modernizing the language and using this for my 7-Minute Bible, it’s that good. Maybe in version 2.

The Trail of Blood

This is a fascinating little pamphlet that makes the case that there has always been one true, biblical church fashioned on the principles of the New Testament and not falling under the hierarchy of any denomination. It argues that Catholicism (and subsequently Ortodoxy and Protestantism) split from this true version of the Church and went off in their own direction but that there still exists pockets of real New Testament churches today. Whether you believe that or not, it’s a fascinating hypothesis that happens to be correct. Like I said — my article, my rules. 🙂

Understanding the Bible Collection

This 22-volume collection provides a wealth of historical, cultural, and geographic background on what we read in the Bible.

Each volume covers a different subject and is loaded with photos, maps, and charts.

About the Image

I asked ChatGPT to create a picture of me studying in my home office. Unfortunately I couldn’t get it to make me clean-shaven except for a mustache, give me a knuckle for every finger and a finger for every knuckle, give me an Apple Watch instead of some generic Android watch, give me just one rectangular phone and not an additional trapezoidal phone, make sure my books aren’t bound along two opposite or two perpendicular edges, put any less than 14 or 15 hours on my alarm clock, and give me a spiral bound notebook that wasn’t bound along one edge and also across the middle. Other than that — nailed it.

PocketBible for Android Updated – Version 1.7.15

On Tuesday, August 29, 2023 we uploaded a new version of PocketBible for Android to Google Play (version 1.7.9, build 290). This is the first update in quite a while — we’re a little embarrassed to say it’s been about 5 years. Since the end of August we’ve uploaded several revisions — the latest being 1.7.15.

Because of the issues you’ll read about below, it was necessary to get this update released as soon as we could. As a result of jumping 5 Android versions (from version 8 to 13 — that’s “Oatmeal Cookie” to “Tiramisu” for those of you who follow Google’s cutesy naming system for their operating systems), we knew we would discover little things that would need to be fixed right away and so far that has indeed been the case. Updates are documented near the end of this article under “Phase 1”.


Why So Long?

I don’t want to make any excuses but I also want to be honest about what the situation is. You may know that the development team here is pretty small. We don’t have people assigned to each platform. We move from iOS to Windows to macOS to Android as needed. I originally developed our Android app, but pretty quickly passed it off to a more junior person. When that person left, I hired a replacement. About 5 years ago, that person left, too.

By then, the app was in pretty good shape and didn’t need a lot of updates. It had gotten to where I no longer knew my way around the code. And since I’m not an everyday user of the Android platform in the same way I am iOS, the operating system changed to where I no longer knew it either.

So when the Android app eventually needed updating I went to an Android programmer I knew who worked on it as a side gig for a few months. Eventually he took a different full-time job and couldn’t work on it any longer. So I found a really good contract developer who did a lot of the work to bring it into the 2020’s and get us almost up to Android 12.

And then this Bible thing happened…

Why Update Now?

If you’re a regular reader of this blog (that’s about 4 of you I think), you know that earlier this year we discovered a problem in the way Bibles are processed and stored for use in PocketBible. When we first wrote PocketBible, any time a new Bible was released we had to update the code in PocketBible and release a new version. This is because Bibles are very special and form the heart of how PocketBible works. That means any unique aspects of how they interact with other Bibles and with Bible reference books often has to be done directly in the PocketBible code.

So years ago we updated the Bible format PocketBible uses so that these unique aspects could be embedded into the Bible and not require PocketBible itself to be updated each time we released a new Bible. Turns out we didn’t go far enough. We have several new Bibles coming out that are just different enough that they couldn’t be published without updating every version of PocketBible. So we decided to stop what we were doing on the new Windows version of PocketBible and update every other version of the app. Then go back to the Windows version and update it, too, for this new format.

The macOS version with these changes was released a couple months ago. The iOS version is in beta.

And then this Google thing happened…

PocketBible Disabled on Google Play

Google decided late last year that if your app wasn’t built with the latest or next-to-latest version of their SDK, that you couldn’t be on Google Play. (It is more complicated than that, but that’s the net effect.) They said they were going to disable apps starting in May 2023. But they gave us the option to request an extension to August 2023, so we took it.

Then, after acknowledging we had until August, they said they changed their mind and they were going to pull the app in May.

We were right in the middle of macOS and iOS updates at the time and had been planning to get to Android before the end of August, so we have spent about 3 months explaining to people how to side-load PocketBible and bypass Google Play.

This forced us into a two-phase approach to making the Bible-format updates to the Android app. First, we needed to bring it up to date with the latest SDK. Google required version 31 compatibility, but version 33 is the latest so we went all the way to 33. Until that was done, it was pointless to start into the change for Bible files

Phase 1

Version 1.7.10 (September 2, 2023) addressed these issues:

  1. If you were using an SD card to store your books, they seemed to have disappeared. The method of finding your SD card changed in a recent version of Android OS and PocketBible was looking in the wrong place. It should be able to find them now.
  2. When using the dark UI theme, the list of books open in the active pane was displayed with gray text on a gray background. Similarly, the pop-up list of recently visited verses was similarly gray-on-gray.
  3. The dark mode theme was inexplicably using a dark blue color instead of a black color for the top and bottom action bars. Turns out this change was introduced as a debugging tool by a contract developer and we kind of liked it so we left it in. You did not like it. We reverted to black and very dark gray for the action bar, bottom action/tool bar, pane tabs (AFS), and go-to-verse buttons.
  4. An issue with viewing and saving Autostudy reports (AFS) was resolved.
  5. Resolved an issue that caused the app to crash when “Buy/Apply Upgrade” was selected from the navigation menu.
  6. Books that include the Laridian logo on the title page now use our newer blue and orange logo. In the process of doing this we fixed some previously unreported problems with displaying images.
  7. In the process of doing this upgrade, the minimum supported version of Android OS went from 4.1 “Jellybean” up to 4.4 “Kitkat”.

Version 1.7.11 (September 7, 2023) addressed these issues:

  1. We thought we had fixed Strong’s number searches but we hadn’t.
  2. Title page logo image was not being displayed on newly downloaded or moved books.
  3. Splash screen image was too tall on tablets in landscape orientation.
  4. Changed the image on the login screen to the new Laridian logo.
  5. Made internal changes related to how colors and styles are applied in the dark and light UI themes. There could be minor color changes as we seek to better organize the code in this regard.

Version 1.7.12 (September 20, 2023) addressed these issues:

  1. Re-architected the process of launching the app to get control over the transition from the onboarding slideshow, registration reminders, and registration/login screens to the main book view.
  2. Addressed a problem where deleting a book would remove it from the list but not actually delete the file.
  3. Added new UI color schemes for AFS subscribers.
  4. Minor changes to the default “Light” and “Dark” UI color schemes to improve general appearance.
  5. Treat the legacy AFS and AFS subscription differently, since features are now different between the two.
  6. Revert to “no AFS” if the user logs out of their account.
  7. Show logged-in customer ID, feature set, and AFS expiration date in About box.
  8. Get rid of boxes around bottom action bar buttons.
  9. Style the audio and autoscroll context menu bars with rounded corners and slightly more transparency.
  10. Added an option to control whether or not pane tabs show the book category (AFS). Only show the category when pane is inactive. Active panes always show abbreviation of active book.
  11. Removed “Exit” from the action bar menu. This is a hold-over from when mobile operating systems did a bad job of managing memory when apps were left running. It’s 2023 and nobody exits apps anymore.
  12. Don’t do the navigation menu animation demo. We all know there’s a slide-out menu on the left side of the app.
  13. Updated Help to describe tabbed panes. Include info on turning on/off categories in pane tabs. Document new AFS features.

Version 1.7.13 (September 25, 2023) addressed these issues:

  1. Restore “Journal” to the navigation menu for Legacy AFS owners. In 1.7.12 it accidentally required an AFS subscription.
  2. Make standard “Dark” and AFS “Black” themes darker based on user feedback.
  3. Adjust splash screen blue to match launch icon blue.
  4. Add an option to disable linked-to verse highlighting.
  5. Fixed some problems running on Android 4.4

Version 1.7.14 (September 28, 2023) addressed these issues:

  1. If the user deletes the Users Guide then selects “Help”, it is automatically reinstalled from the app bundle.
  2. Words of Christ could be unreadable or appear be displayed in the wrong color when certain highlight colors were used and “words of Christ in color” option was turned off.

Version 1.7.15 (October 6, 2023) addressed these issues:

  1. Resolved an issue where bottom action bar was getting partially hidden (or over-compensated for) under certain circumstances related to pixel density:
    • Split screen
    • Side panel open
    • Note editor (or any time keyboard was showing)
  2. Addressed several aesthetic issues when font size was set to its largest and smallest sizes in Android Settings and when “make everything bigger/smaller” was set to its extremes:
    • Pane tabs (AFS).
    • Note title above editor.
    • Go-to-date dialog for devotionals
    • Go-to-verse spinner and book/chapter/verse picker for Bibles.
    • Margin preference screens
    • Splash screen
  3. Made the text color used for book titles on the library lists have more contrast.
  4. More correctly position the autoscroll and audio toolbars in more circumstances (AFS).
  5. Addressed further problems with saving and printing Autostudy reports (AFS).

Phase 2

The above just gets us to where we can start doing the work we came here to do. We need to port the C++ code that has already been implemented in PocketBible for macOS and iOS to Java for Android.

Beyond

Once we get this work done, we hope to more actively update the Android app. Admittedly, it has been a bit of a problem child over the years and we’ve let it get away from us. But more importantly, finishing work on this version will let us return our focus to PocketBible 3 for Windows, where we have to do it all again in yet another programming language.

Thanks for your patience.

Why Your Tech Support Questions Go Unanswered

Have you checked your spam folder lately?

The most common reason that we are unable to help a PocketBible user solve a problem is that they have an over-aggressive spam filter, and it is redirecting all our helpful replies to the user’s spam folder.

This means that not only do they not ever see our answer to their problem, but they won’t see any subsequent email in which we tell them to check their spam folder. This problem happens about once a week. In most cases, the user eventually figures it out. But in the worst cases, they never do. We’ll get a message from them every day or two for a month, then they’ll curse us and give up.

Spam is an Inconvenient Fact of Life

Almost as long as their has been email, there has been spam. Various methods have been implemented to deal with it, but none are perfect. In particular, none of the fully automated methods are any good at all.

What this means is that you must manually go through all your spam every day even if it is being routed to a spam folder. Sorry to say it, but if you don’t do that, you will miss some measurable percentage of your very legitimate email.

That Applies to Us, Too

We hate sorting through spam as much as you do. We’ve been doing this for a very long time and have found the best we can do is install some kind of spam filter, then check its activity every single day. Fortunately the service we use (a link to which you’ll find a link at the bottom of this page) sends us a summary by email each day, so it’s fairly easy to scan in the normal course of business. Every morning, our tech support department gets a list of all the email that has been quarantined by our spam filter. They have to sort through it looking for email from customers. A couple times each week, we find messages that have been incorrectly categorized as spam. We release these from quarantine so that we can answer them.

We Answer ALL Tech Support Emails

If you ever send us a message and don’t get a response, you should immediately be suspicious of your spam folder. This is especially true if you use Yahoo for email. Their filters are very aggressive, to the point of even deleting email rather than delivering it to your spam folder.

We have people monitoring Tech Support tickets 7 days a week, 52.18 weeks per year. We answer every question even if it is just to ask you for more information. If you don’t get an answer from us, check your spam folder.

For Your “Allow” List

We send support email from [email protected], customer service email from [email protected], and marketing email from [email protected]. From time to time we send email to beta testers and VIPs (including any of you who have ever given us a High5!) from [email protected]. You might find it helps to add these to your email server’s “allow” list so that it will always get through. We do the same for you if we receive an email that gets incorrectly categorized as spam.

PocketBible for Windows Progress Update #14

Seriously, this should have been our first clue, right?

The last 3 months have been interesting. One of our ticking time-bombs exploded and we’re working hard to rebuild. Let me explain…

As we explained in the video that launched this project, when we originally designed PocketBible we put a lot of intelligence about specific Bibles into the program itself. This was done so that PocketBible could handle differences in versification between Bibles. A simple example is 3 John 14-15. These are two separate verses in some Bibles and are combined into verse 14 in other Bibles. As a result, if you highlight 3 John 15 in a Bible that has that verse but are reading a Bible that does not have that verse, we apply the 3 John 15 highlight to 3 John 14 (if it isn’t already highlighted), not because it’s the last verse of the chapter and there isn’t a verse 15, but because, in a 14-verse version of 3 John, verse 14 contains the contents of verse 15 and therefore is verse 15 (and verse 14).

3 John 13-14 (King James Version)3 John 13-15 (New American Standard Bible)
13I had many things to write, but I will not with ink and pen write unto thee:
14But I trust I shall shortly see thee, and we shall speak face to face. Peace be to thee. Our friends salute thee. Greet the friends by name.
13I had many things to write to you, but I do not want to write to you with pen and ink; 14but I hope to see you shortly, and we will speak face to face.
15Peace be to you. The friends greet you. Greet the friends by name.
Some Bibles split 3 John 14 into two verses (or, if you prefer, some Bibles combine verses 14 and 15 into one verse and call it 14).

Solving issues like this was originally done in the code. So there’d be a whole sequence of steps like, “If this Bible references is in 3 John and the verse number is 15 but the Bible you want to map it to has a version of 3 John that only has 14 verses, then set the verse number to 14.” This was fine when the number of these cases was relatively small. But as we added more and more Bibles, there turned out to be hundreds of these.

The solution was to describe all the mappings in a table containing the “from” book, chapter, and verse, and the “to” book, chapter, and verse for each weird situation. The data tables that describe this mapping are huge and complicated. There are between 1500 and 2000 of these “special cases” in PocketBible. And this is just one of the required data tables. There is another table that tell us which version of each book of the Bible is in each of the Bibles (so we can tell if a particular Bible has the version of 3 John with 14 or 15 verses, for example). Another table maps each of these different versions of the books of the Bible to their names. (So that we can tell that both versions of 3 John should be called “3 John”.) A variety of other data tables help us deal with these issues.

The problem with putting this information into PocketBible (whether directly in the code in a series of “if this then do this” statements or in tables that can be iterated and processed by code) is that anytime we release a new Bible with a new versification scheme for one or more of its books, we have to update every version of PocketBible. Currently that list would include PocketBible for iOS, Android, macOS, Windows Store, Windows Desktop, and the new Windows Version — six different apps would have to be modified. Three of those six share the code that contains these tables. That is, they all use the same code in the same language to process Bible references, and it is written in C++. So once we add a new Bible to the C++ code, the iOS, macOS, and Windows Desktop products are done. But the Android app is in Java, the Windows Store app is in C#, and the new Windows app is in JavaScript. So that means the same changes have to be made in 4 different languages, then 6 different apps have to be rebuilt.

Building the app for every platform is tedious, error-prone, and time-consuming. On top of that, over time it gets to where it can’t be done. We were still supporting PocketBible for Palm OS long after it got to where it was impractical to build a new version of the app. Ditto PocketBible for Windows CE and Pocket PC. And then there was PocketBible for webOS and Blackberry that were created by outside developers. In other words, this was just a bad design.

So in 2015 we decided to redesign our LBK files so that these tasks were not performed in the code, but were all described in tables that could be packaged with each Bible. That way, the app could look at each Bible as it was installed and if it contained a more recent version of these tables than what the app already knew about, it would update its tables with those contained in the LBK file. This would allow a new Bible completely unknown to PocketBible to be released and it would function as if PocketBible knew about it all along.

When we contacted the developer of the Windows Store app about these changes, he wasn’t excited about making them because of the time involved. And when we started digging into the old (old at that time; older still now) Windows Desktop code, we realized it would be all but impossible to update that app to include compatibility with these new Bibles. (Remember also that at this time it was unclear whether the Windows Desktop app was even going to continue to be used because supposedly the world was transitioning to the awful Modern User Interface paradigm of Windows 8. So it was unclear whether or not it would be worth the time to update it.)

We decided to go ahead with the new LBK Bible format anyway. It would just mean that new Bibles wouldn’t work on the Windows platform — at least not until the Windows Store version was updated. What we didn’t know at the time was that it never would be.

As you know, this became one of the primary motivations to re-write PocketBible for Windows. The new version already implements compatibility with the new LBK format for Bibles.

Psalm 68:11-14 NASBPsalm 68:12a-15 NAB
11The Lord gives the command;
The women who proclaim good news are a great army:
12“Kings of armies flee, they flee,
And she who remains at home will divide the spoils!”
13When you lie down among the sheepfolds,
You are like the wings of a dove covered with silver,
And its pinions with glistening gold.
14When the Almighty scattered the kings there,
It was snowing in Zalmon.
12aThe Lord announced the news of victory:
13a“The kings and their armies are in desperate flight.
12bAll you people so numerous,
14awill you stay by the sheepfolds?
13bEvery household will share the booty,
14bperhaps a dove sheathed with silver,
14cits wings covered with yellow gold.”
15When the Almighty routed the kings there, the spoils were scattered like snow on Zalmon.
This is the same passage in two different Bibles. Verse division is completely different and involves the rearranging of the text and suffixes on the verse numbers.

What we didn’t realize is that we had been lying to ourselves about no longer needing to update the code in PocketBible when a new Bible was released. There were conditions under which that lie was definitely true. But there were still small, special cases scattered throughout the code and not handled by a data table in the LBK file. For example, some Bibles contain verses with suffixes, like Isaiah 14:25b and Psalm 68:12a, 12b, 13a, 13b, 14a, 14b, and 14c. In the apocrypha, Sirach has a chapter called “Prologue” that is called “Forward” in some Bibles. Esther has chapters A-F in addition to its numbered chapters. While we could map all of these verses to their corresponding verses in other Bibles using the tables that we had moved into the LBK file, when we wanted to print out the Bible reference “Psalm 68:12b” there was a piece of code that got called to look at the stored verse number (which was 14 in this case — 12a was 12, 13a was 13, and 12b was 14) and return the correct “spelling” of that verse number (the 14th verse in Psalm 68 is “12b”).

This all came to the boiling point with the pending release of several new and updated Bibles. While updating the data tables that would make these new Bibles work on any version of PocketBible including the new Windows app, I realized I would also have to deal with some of the special cases in the code itself. And that meant doing the very thing that we had told ourselves we’d never need to do again — simultaneously updating the iOS, Android, macOS, and new Windows versions of PocketBible.

The only reasonable plan forward is to finish what we started back in 2015. So for the last couple of months I’ve been working in both our BookBuilder app and the macOS version of PocketBible (since its code is easiest to work with while working on BookBuilder) to move special cases out of the code and into data tables, then adding code to write those data tables into the LBK file, then adding code to read them into PocketBible when necessary. For each special case in the code, the code has to be rewritten to use the data tables instead. All of this has to be tested and will have to be tested on each platform into which we roll this new code.

What this means is that once I finish doing this in the macOS version, I need to do the same in the iOS version (should be quick since it’s the same code that is used in both the macOS and iOS versions), then re-write it in Java for Android, then release all those new versions to their respective stores, then update the new Windows version (re-write for a third time, this time in JavaScript) and test it there.

So that’s what I’ve been doing so far this year. How’s your 2023 going?

Meanwhile…

In the meantime, we’re moving on to Advanced Feature Set features in the Windows version.

The ability to create saved layouts has been implemented similar to how it exists in the macOS version. You can create a new layout, give it a name, and it will appear as a tab across the top of the screen. These tabs can be dragged around to re-order them, and they can be renamed. This will get awkward if you have more than a handful of layouts, but should work for most people who would like to dedicate a screen layout to devotional reading and another to study.

Screenshot showing 3 layout tabs: “Default Layout”, “Greek and Hebrew”, and “Today”. When “Today’s Reading” is selected on the toolbar, we’re taken to the “Today” tab and our devotional goes to the reading for today (which was March 17, 2023). Note that the date at the top of the pane (January 1) is incorrect; this is a debug build with some diagnostic code in place.

Related to the above, we’ve added a toolbar button labelled “Today” that will activate a devotional and take you to today’s reading. If you have a layout named “Today”, this button will activate your layout named “Today” and show today’s reading in the active devotional. This is not unlike the same feature in the macOS version of PocketBible.

Setting voice preferences. Note that we’re running on a Mac here, so the available voices are those from macOS. They would be different on Windows.

Quite a bit of progress has been made on implementing a “Speak” feature. The app uses the synthesized speech voices built into Windows to read to you. You can read the selected text, the selected verse(s), or start reading at the top of the page and continue until you tell it to stop. Toolbar buttons have been added to control this feature. You’ll be able to choose your voice and the rate at which it is speaking. Different voices will be available for English, Spanish, and Greek, assuming you have them installed. This will all be similar to the macOS version, which uses the synthesized voices built into macOS.

Some smaller tasks have also been accomplished:

  • Ability to remove an installed book.
  • Solved some very tricky issues related to date calculations in devotionals.
  • More tricky issues related to going to a particular place in a book (say the reading for today in a devotional) and the program getting confused about where it was at.
  • Better detection of AFS subscription changes and how that affects options you may have selected that require an active subscription.

No, Not That Apple

Adam and Eve in the Garden of Eden by Wenzel Peter

Because we’re a Bible software company and because we produce software for Apple devices (iOS and macOS), we sometimes hear from people who are concerned because of Apple’s deep connections to evil and the influences of Satan. The most frequent evidence cited is the Apple logo, which is clearly the same apple from which Eve took a bite before handing it off to her husband, thus condemning all of humanity.

First of all, the fruit of the Tree of the Knowledge of Good and Evil was not an apple. Apples grow on apple trees. You’ve never seen a Tree of the Knowledge of Good and Evil, so you don’t know what its fruit looks like. Or tastes like. And the Bible just says “the fruit”, not “the apple”.

So we could stop there and move on to a more useful topic. But let’s continue.

The Original Logo

Ignoring for a moment that there was no apple in the story of the fall in Genesis 3, and therefore the Apple apple could not refer to the Eden “apple”, it’s reasonable to ask, “Then where did the Apple logo come from?”

The original logo of Apple Computer Co. was this woodcut. In it, we see Sir Isaac Newton about to “discover” gravity when an apple falls on his head. The story is undoubtedly apocryphal, but, just like we imagine naked Adam and Eve gorging themselves on apples behind conveniently arranged foliage, the image of Sir Isaac Newton sitting under an apple tree in his Sunday best while reading a book is how we imagine gravity being discovered.

The falling apple inspired Newton to think about gravity. The name “Apple Computer Co.” stands for inspiration and discovery. That’s what the company wanted to be identified with. Hence the incorporation of the apple (and Isaac Newton — a God-fearing Christian, by the way) into Apple’s logo.

The Modern Logo

Very early in their history, the folks at Apple discovered it was difficult to reproduce this complex image on their products. So they reduced it to the essential image of the silhouette of an apple with a bite taken out of it.

“Aha!” you might exclaim. “That’s the bite by which Eve disobeyed God!” You would exclaim that right before I smacked you upside the head and reminded you that the fruit of the Tree of the Knowledge of Good and Evil was not an apple, but rather was the fruit of the Tree of the Knowledge of Good and Evil.

No, the bite out of the Apple logo apple serves three purposes. First, it distinguishes the silhouetted apple from the similar-looking cherry (which is also not the fruit of the Tree of the Knowledge of Good and Evil, by the way). Second, it is a play on the word “byte”, the technical term for 8 bits of computer memory*. Finally, it is an homage to famed computer science pioneer Alan Turing, who died by his own hand and was found with a half-eaten apple at his bedside.

As tempting as it is to don my tinfoil hat and go looking for conspiracies behind every (apple) tree, I’m not biting. Not on this one. Sorry.


* A byte is 8 bits of memory. A half-byte (4 bits) is called a nybble. Yes, we computer nerds are a witty lot.

Let’s Keep the “X” in “Xmas”

From time to time, PocketBible users will complain about our use of XMAS in a promotional priority code in one of our marketing emails — hence this article.

Christians and Christian values are under attack in America today. It’s nothing like what’s happening elsewhere in the world, of course, but given that this country was founded on biblical principles by people who held Christian beliefs, it is especially troubling to see those principles and beliefs under direct attack.

Because of the constant bullying we all face from people who claim to be “open minded” and “tolerant of differences”, we are sometimes quick to see offense where none really exists. The concern that some Christians have over the use of the abbreviation Xmas for Christmas is one such situation.

The X in Xmas is actually the Greek letter chi, which is the first letter in the Greek word Χριστος (christos), from which we get “Christ”. Its counterpart “X” has been used as an abbreviation for Christ for as many as 1000 years — maybe more. The abbreviations X, Xt, and Xr can be found in Early Modern English texts written by Christians from the 1700’s. In no case was it used to “remove Christ” from the text, but rather as a simple shorthand. It may also have been a recognition of the sacred nature of the name — in the same way that speaking the name of God was prohibited among the Jews, resulting in the unpronounceable 4-letter name (יהוה) that we sometimes see as YHWH in English. The substitution of chi for “Christ” was never meant as an insult but was used by Christians as a way of writing Jesus’ name.

Christianity is full of symbols. The cross in its various forms (the simple ✞ and many variations, including ⳩ and ⳨) is one. The dove that we use in our PocketBible icon is another. Then there’s the “fish” symbol. None of these are intended to denigrate the name of Jesus nor are they some kind of blasphemy. Instead, they are just easily recognized shorthand for the concepts they represent.

To the Christian, the X or chi in Xmas honors Jesus, while at the same time connecting us across time to our ancient brothers and sisters in Christ. It is the “secret handshake” that communicates deep spiritual truths that are evident to the believer but hidden from the world. So well hidden, in fact, that some well-meaning believers actually resist its use, arguing that it removes “Christ” from “Christmas”. But they are ignorant of the long history of Christian symbolism. “Xmas” is a Christian term, invented by Christians, with a long history of use in Christian literature, based on the ancient practice of abbreviating the title “Christ” with the Greek letter ​chi​. It is not the invention of modern political progressives to remove Jesus from the name of the holiday that celebrates his birth.

Ironically, when a modern-day enemy of Christianity tries to remove Christ from Christmas by replacing it with an X, they are actually acknowledging him. 🙂

There are plenty of reasons to be concerned about the animosity that exists in our society between Christians and non-Christians. But the use of Xmas as shorthand for Christmas is not one of them.