Practical Steps for Effective Bible Study

Studying the Bible can be a deeply rewarding process, but it can also feel overwhelming due to the length and complexity of the text. Here’s a simple process that you might find helpful:

Pray: Start with a prayer for understanding and wisdom. This sets the tone and prepares your heart and mind for learning.

Select a Passage: If you’re new to the Bible, it’s easiest to start with the New Testament, particularly the Gospels, before moving onto the Old Testament. If you’re a seasoned Bible reader, a topical study might be interesting.

Read: Read the passage slowly and carefully. Consider reading aloud or listening to an audio version. Reading a passage more than once can also be beneficial.

Observe: As you read, note down what stands out. Who are the main characters? What events are taking place? What are the key themes or ideas?

Interpret: Try to understand the meaning of the passage. What is the author trying to communicate? How would the original audience have understood it?

Consult Additional Resources: Use study Bibles, commentaries, or Bible dictionaries for more insights and historical/cultural context. Bible study guides or a trusted spiritual leader can also provide guidance.

Reflect: Think about how the passage applies to your life today. What lessons can you take from it? How can it influence your thoughts, actions, and attitudes?

Journal: Write down your insights, reflections, and any questions that arose during your study. This not only helps you remember what you learned, but allows you to track your spiritual growth over time.

Pray: End your study time with a prayer. You can thank God for His word and ask for help in applying what you have learned.

Share: If possible, discuss what you’ve learned with others. This could be in a Bible study group or with a mentor or friend. They can offer valuable perspectives and insights.

Remember, studying the Bible is not about how quickly you can get through it, but rather about deepening your understanding and relationship with God. Take your time, be consistent, and don’t be discouraged if you don’t understand everything right away.


I’ve been exploring how ChatGPT can help me study the Bible. ChatGPT is an artificial intelligence language model developed by OpenAI. It uses machine learning techniques to generate human-like text based on the input it receives. It’s trained on a diverse range of internet text, but it doesn’t know specific documents or sources used in its training. As a language model, it generates responses to prompts and doesn’t have beliefs, opinions, or consciousness. It’s designed to assist with a wide variety of tasks, such as answering questions, writing essays, tutoring in various subjects, translating languages, simulating characters for video games, and much more. (It wrote this description of itself.)

I asked ChatGPT how to study the Bible and it produced this article. I made only two edits — adding the bit about choosing a topical study and moving “Journal” above the second “Pray” step. I continue to be impressed with what ChatGPT can do. The topic of this particular article is simple, but it wrote it without intermingling negative comments or opinions. It even acknowledged the importance of prayer.

The image at the top of this article was generated by DALL•E 2, another artificial intelligence program developed by OpenAI. While GPT-4, the technology behind ChatGPT, is focused on understanding and generating text, DALL-E is designed to generate images from textual descriptions.

From Bethlehem to Calvary: The Life of Jesus and Our Role as Believers

Following up on our last post, I asked ChatGPT 4 to summarize the life of Jesus as presented in the Gospels, then explain what the New Testament says our response to his life, teachings, ministry, and example should be. It generated a dozen titles for this article and I asked it to pick the best one. It picked the one you see above.

I then asked DALL•E to create an image that depicts an event in the life of Christ in a “realistic, Renaissance style” to use with this article. It seems to have depicted Jesus’ birth going on in his tomb while he teaches at some kind of a dog fight and a two lame men crawl to him to be healed. DALL•E has a ways to go, in my opinion.

The Life of Jesus

The life of Jesus Christ, as depicted in the New Testament’s four gospels, begins with His miraculous birth in Bethlehem to the Virgin Mary and her husband, Joseph. This event, heralded by angels and later celebrated by the visit of the Magi, confirms the fulfillment of Old Testament prophecies regarding the coming of the Messiah.

As an adult, Jesus is baptized by John the Baptist in the Jordan River, marking the beginning of His divine mission. This event is immediately followed by a forty-day period of temptation by Satan in the desert, which Jesus resists. He then commences His ministry in Galilee, recruiting His first disciples – Peter, Andrew, James, and John.

Among the most significant events during Jesus’s ministry is the Sermon on the Mount, where He delivers profound spiritual truths and moral guidelines, including the Beatitudes and the Lord’s Prayer. Jesus’s time on Earth is also marked by numerous miracles, demonstrating His divine power through acts such as healing the sick, casting out demons, feeding a multitude, and walking on water. He conveys His teachings through parables, offering lessons about the Kingdom of God, forgiveness, and love.

At one point, Jesus is transfigured on a mountaintop before Peter, James, and John, where He converses with Moses and Elijah, further affirming His divine nature. Eventually, He journeys to Jerusalem, resurrecting Lazarus from the dead along the way. His triumphant arrival in Jerusalem, marked by crowds greeting Him with palm branches, signals His role as the prophesied King.

During His final week in Jerusalem, Jesus cleanses the Temple and engages in heated debates with the Pharisees and Sadducees. He foretells His death and resurrection and, at the Last Supper, establishes the practice of sharing bread and wine as symbols of His body and blood.

The climax of Jesus’s life story unfolds with His betrayal by Judas, subsequent arrest, trial, and crucifixion under Pontius Pilate. However, death does not claim Him; on the third day, He rises from the grave, first appearing to Mary Magdalene, then to His disciples. After spending forty days further instructing His followers, Jesus ascends to heaven.

Although the Apostle Paul does not contribute directly to the gospel narratives, his epistles provide profound insights into Jesus’s teachings and their implications. Paul emphasizes Jesus’s role as the Messiah, advocating for justification through faith in Christ, the transcendence of the law by God’s grace, and the concept of the Church as the body of Christ. His teachings illuminate the transformative power of God’s love in Christ, the reconciliation between God and humanity through Jesus’s sacrifice, and the hope of eternal life offered by His resurrection.

Our Response to Jesus’ Life

In response to Jesus’ life, ministry, teachings, and example as depicted in the New Testament, there are several fundamental actions that individuals are encouraged to take.

The cornerstone of this response is faith, a deep-rooted trust in Jesus Christ as the Son of God and acceptance of His sacrifice for humanity’s sins. This faith goes beyond intellectual agreement, involving an inner commitment to Jesus as one’s savior, leading to salvation and eternal life.

Repentance is another pivotal aspect. It means turning away from sin, acknowledging our shortcomings, and striving to change our ways to align our lives more fully with God’s will. It’s an ongoing process of spiritual growth and moral improvement that Jesus’ teachings continually emphasize.

Love, as taught by Jesus, is central to the Christian response. This involves the Greatest Commandment: loving God wholeheartedly and loving our neighbors as ourselves. It means embracing kindness, compassion, and justice, reaching out to others in empathy and understanding.

Obeying Jesus’ teachings and commandments is another vital response. Adherence to His guidance involves ethical and moral conduct such as honesty, forgiveness, humility, and non-retaliation. It’s about living out the principles laid out in the Sermon on the Mount, embodying the values Jesus championed.

Jesus also calls for followership, a commitment to follow His example of humility, service, and sacrificial love. This means willingly bearing individual crosses, forsaking selfish desires, and potentially suffering for Christ.

Finally, Christians are charged with spreading the Good News of Jesus’ life, death, and resurrection to all people. Jesus commissioned His followers to share His message, to engage in evangelism and discipleship, leading others to faith and supporting them in their spiritual journey.

Overall, the New Testament presents a transformative response to Jesus’ life and teachings, calling for personal faith, repentance, love, obedience, followership, and commitment to sharing the gospel.

How Did it Do?

ChatGPT 4 did a good job summarizing the life of Christ and teachings of the New Testament, without adding a bunch of expected disclaimers about how opinions vary and that the authenticity of the accounts should be questioned. It also taught me and my spell-checker a new word, “followership”, which is the capacity or willingness to follow a leader.

Let me know what you think in the comments.

PocketBible 1.4.x for macOS Released

This is the original 1.4.0 announcement updated to mention features in 1.4.1 (released on May 26) and 1.4.2 (June 6). Updates are highlighted. If you downloaded 1.4.0 immediately after release, you’ll want to select Check for Updates from the PocketBible menu and follow the instructions to update.

As mentioned a while back, we had to make some changes to our Bible format that required PocketBible on all platforms to be updated. The macOS version is the first of these, mainly since it shares a lot of code with the macOS version of BookBuilder, which also had to be updated, and was the easiest version of PocketBible to test the BookBuilder changes with.

While we were editing the code, we took a look at the to-do list and made a number of other changes. Here’s what’s new.

Bug Fixes

When macOS is updated, there are inevitable little changes to various behaviors that affect apps in unexpected ways. We resolved some unintended horizontal scrolling in Study Panel, Open Book, and Cloud Library lists and adjusted the height of some message windows to accommodate text that was being drawn a little differently and getting cut off. We also made some changes to a toolbar button that wasn’t being drawn correctly. These still may be problematic in macOS 10, but they work a lot better in macOS 13.

When right-clicking on a Bible link, the Autostudy option on the context menu would sometimes do a word autostudy rather than a verse autostudy. We were able to fix that.

The third-party automatic update component we were using to install updates has always been flaky. We took this opportunity to remove it and replace it something simpler. Now you’ll be informed when an update is available and given the opportunity to download it, but you’ll have to exit PocketBible and complete the installation yourself. This amounts to opening the update and dragging an icon about 3 inches into your Applications folder. Much more reliable. It was only working about half the time before.

Enhancements

A few features were enhanced. The toolbar will look a little different due to changes in the way macOS handles toolbars. Because of those changes, 1.4.2 added an option (Settings > General) to control whether you’d like to adopt the new “unified” toolbar or stick with the “expanded” view from earlier versions. If you’re still using macOS X (version 10), you won’t see this option since the unified view isn’t available in that version of macOS.

Link preview pop-ups now use the same text size as your books, which will make them easier for some users to read. In version 1.4.2 we added a small gap to the right of the link, between the link and the pop-up, to make it easier to move off the link and dismiss the pop-up.

We also built this version as a “Universal App” to support both Intel- and Apple Silicon-based Macs. Newer Macs may notice a performance improvement.

New Features

We didn’t tackle anything huge because we have a lot of work to do on all the various versions of PocketBible, but we managed to squeeze in some new features.

Obviously, we implemented book reader engine 1.078 to support newer Bibles. You won’t see any benefit from that for a while, but it’s in there.

We expanded the types of links that will show a preview when hovering in both books and user notes. Previously, you would only see a link preview when hovering over a linked Bible reference. Now more types of links, including footnote links, will show pop-up previews. In 1.4.2 we added a half-second delay before popping up these previews so that you wouldn’t be inundated by pop-ups as you move your mouse across the screen.

Added menu items and toolbar buttons to toggle the “Sync Bibles/Commentaries” feature and to do a one-time sync to the current verse in the active Bible. This allows you to assign a short-cut key to that function and turn off the automatic feature so that you have the flexibility to scroll your Bibles independently but to sync them all up when you want to. We also added that one-time sync feature to the right-click context menu when you click on a verse.

We added the ability to hide the “Note” link that appears at the start of a verse that has a note. You can also turn off your highlights, or only highlight the verse number. This is similar to how the iOS version currently works.

Many users are confused by the way PocketBible applies a light highlight to a verse or passage that is the target of a hyperlink. You now have the option of turning that feature off. (You might find it unnecessary now that the hover feature works on more types of links.)

Links to document fragments were added to notes. If you know what you’re doing, you can add a tag of the form <a href="#name">see name</a> to link to a tag with its id value set to “name”. This is only implemented in the Mac version, so the links won’t do anything in the other versions of PocketBible until/unless it gets implemented there, too.

Controlling Location Sync

This is perhaps the biggest change, and was rolled out in 1.4.2. Users who have an active Advanced Feature Set subscription will have the option to control which of their Bibles and commentaries respond to changes in the active Bible. This will let you keep your commentary on the primary passage while exploring other passages with other Bibles.

Devotionals participate in a slightly different form of location sync. It’s always been the case that when you tell any one devotional to go to today’s reading that you can have all your other devotionals do the same. 1.4.2 added “first unread reading” to “today’s reading” with respect to this behavior. If you ask any one devotional to go to its first unread reading, you can ask other devotionals to follow. This is handy if you’re reading from more than one devotional book or reading plan each day. And if you have an active AFS subscription, you can control this on a pane or book level.

Dictionary sync didn’t change, but 1.4.2 added the option to exclude particular panes or dictionaries from normal dictionary sync. Again, you need an active AFS subscription to take advantage of this feature.

Advanced Feature Set Enhancement

The changes to location sync, described above, apply if you own the AFS subscription. This is the first new feature we’ve added to the AFS since it switched to a subscription, so if you own the “permanent subscription to the legacy AFS” you will not be able to take advantage of this feature. You need a subscription to do that.

How to Upgrade

If you’re running a version before 1.4.0, select Check for Updates in the PocketBible menu and choose the option to install and relaunch. If you have trouble with that, just go here and select the Download button. Download the file, find it in your Downloads folder, open it, and drag PocketBible into your Applications folder.

If you’ve already downloaded 1.4.0 or 1.4.1, select Check for Updates in the PocketBible menu and follow the instructions.

        

The Story of the Old Testament, by ChatGPT

I asked ChatGPT to recount the history of the Old Testament, without getting bogged down in the details — just focusing on the significant parts of the narrative. I then asked it for a creative but appropriate title for its work. I have to say, it pretty much nailed the assignment.

DALL•E kind of punted on generating an appropriate image, but hey; it’s just an AI so cut it some slack.

From Creation to Covenant: Unveiling the Tapestry of Ancient Israel

In the beginning, according to the Old Testament, God created the heavens and the earth, forming the world and everything in it. Adam and Eve, the first humans, were placed in the Garden of Eden but disobeyed God’s command and were banished from paradise.

The narrative then moves to the story of Noah and the Great Flood. God saw the wickedness of humanity and decided to cleanse the earth. Noah, a righteous man, built an ark and saved his family and pairs of animals from the floodwaters.

Next, the focus shifts to Abraham, who is considered the father of many nations. God made a covenant with Abraham, promising him descendants as numerous as the stars. Abraham’s son Isaac and his grandson Jacob continued the lineage.

Jacob’s twelve sons became the twelve tribes of Israel, and his son Joseph was sold into slavery by his brothers but rose to power in Egypt. Through a series of events, Joseph eventually saved his family and brought them to Egypt during a severe famine.

Generations later, the Israelites became enslaved in Egypt. God raised up Moses as their leader and used him to deliver the people from bondage. Through miraculous signs and wonders, God brought about the Exodus, leading the Israelites through the Red Sea and into the wilderness.

In the wilderness, God gave Moses the Ten Commandments and established a covenant with the Israelites at Mount Sinai. Moses led them on a journey towards the Promised Land, but due to disobedience and lack of faith, they wandered for forty years.

Joshua succeeded Moses as the leader, and under his command, the Israelites conquered the land of Canaan. They established themselves as a nation and settled in the Promised Land.

The Israelites went through a cycle of obedience and disobedience to God, with various judges rising to lead them during times of crisis. Eventually, they desired a king, and God anointed Saul as the first king of Israel. However, due to Saul’s disobedience, God chose David as his replacement.

David, a renowned king, established Jerusalem as the capital and desired to build a permanent dwelling place for God, but it was his son, Solomon, who built the magnificent Temple in Jerusalem.

After Solomon’s reign, the kingdom split into two: the northern kingdom of Israel and the southern kingdom of Judah. The prophets played a crucial role during this time, calling the people to repentance and warning of the consequences of their actions.

The kingdoms faced threats from various empires, leading to the exile of the northern kingdom by the Assyrians and the eventual destruction of Jerusalem and the Temple by the Babylonians. The people were taken captive to Babylon.

After seventy years, the Persians conquered Babylon and allowed the Jews to return to Jerusalem and rebuild the Temple under the leadership of figures like Ezra and Nehemiah.

The Old Testament concludes with prophecies of a coming Messiah who would bring salvation and establish an eternal kingdom. These prophecies set the stage for the events of the New Testament and the birth of Jesus Christ.

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.

PocketBible for Windows Progress Update #13

It’s been a while since I posted an update. With the madness of Christmas weekend behind us, I thought I’d take a moment while the house was still quiet to go back through the last three months (yes, it’s been that long) and let you know where things stand.

First, let me say that this was a slow quarter for progress. It has gotten to where I (Craig) am usually the only programmer working on this project and the end of the year has required me to turn my attention to other things. Probably the biggest of these was wrapping up my 7-Minute Bible so that we could finally get that out the door. It was the result of several years of work that required reading all the way through the Bible multiple times, including a very interesting final pass (performed mostly in the 3 months prior to release) to add subject headings throughout the text. If you want an exercise in really learning the Bible, I suggest you create an outline of the entire text for the purpose of adding your own subject headings. I speak from experience.

During this same time I negotiated contracts for 2 new Bibles, 2 significant updates (NRSV and NET), and 2 minor updates. In addition I spent quite a bit of time trying to work with a new publisher (new to Laridian, not new to publishing) who refused to tell us whether or not digital files existed for any of the titles we wanted, refused to provide any sample files so we could understand how difficult they might be to tag, and refused to describe (even in the most basic terms) what value they have added to several public domain titles to justify licensing their version of the text vs. just finding a public domain source. We have been unable to work with this publisher, who insists that the other software publishers just sign the contract without asking any questions about what they’re going to get.

On top of this, 2 of the Bible contracts were perhaps the most poorly written I have ever seen. One wanted a fixed dollar amount per unit sold, to be negotiated later (we’re negotiating now — how about we include a discussion of what this is going to cost). They wanted to write the contract as being between Laridian, Inc. and a “nickname” they have for the imprint under which the Bible is published (that is, not a legal entity). In that situation, they would have no legal obligation to uphold their end of the deal.

The other poorly written contract required that we submit every new update to PocketBible to them for review before releasing it for you to use. And if we ever stopped selling their Bible, we’d have to stop distributing PocketBible. In addition, there were very specific guidelines for how they wanted their Bible formatted. Unfortunately, it was worded in a way so that it applied to every Bible we published. It wouldn’t have allowed you to control the widths of the margins, the font, or the font size. And wouldn’t have allowed us to distribute some Bibles at all. Their response to these concerns was, “Everyone else just signs this.”

Finally, this quarter is when we update our PocketBible Library Edition collections. This year we added a new Emerald Edition with a significantly expanded selection of books. This required both a review of available products that weren’t already in the Bronze, Silver, Gold, or Platinum libraries and a review of royalties and other contract restrictions. It also required revisions to the script that creates the comparison chart on our website. You would think this would be easy, and it isn’t bad. The hard part is that it automatically calculates your personal upgrade price, and that has to be carefully updated to include the new resources in the Emerald and other 2023 collections.

OK let’s get into this…

New Features

The active study tab was made to persist between sessions so that you can exit the app and relaunch it later and the screen should look like you never left.

We added a “new note” button for notes. This seems obvious, but on other platforms, you add a note by right-clicking (or long-clicking) on some text then selecting the option to add a note from the context menu that appears as the result of your right/long click. Adding a Journal note is only a little easier — a button appears on the note editor view. For the new Windows version, we expanded the behavior of that button so that it works for Bible and book notes as well as Journal notes. By default, the new note is added to the “current” verse for a Bible (the top verse on the screen), but you can also just type a Bible reference to add the note to any arbitrary verse.

Throughout development, searching has been a background process so that long searches can happen while you’re doing other things in the app. This has presented some problems related to being able to get this work in a production build of the app (that is, a build of the app that can run on your machine and not just one of ours). It works reasonably well in our internal development builds but since Electron apps are not really designed to be able to spawn new threads, it has been challenging to get a production build to work. To get around this, we moved searching into the main thread. This makes the program less responsive during searches, but searches don’t take very long. We’ll have to continue to work on this but at least we’re in a position where the program could be released as-is and it would be acceptable.

Last time I mentioned the ability to attach custom accelerator keys to most program functions. The user interface for this feature was enhanced significantly to make it easier to find the function you’re looking for.

The new app will have a selection of color schemes much like the iOS version of PocketBible. We took a couple days and finalized the full set of color schemes and divided them between standard and advanced feature sets. We made the custom color scheme feature only accessible if you own an Advanced Feature Set subscription.

One of the reasons we haven’t implemented a custom color scheme option on other platforms is that there are too many variables that have to be considered and too many colors that need to be defined. For example, the shade of red you choose for “words of Christ” could be invisible against a dark background. To help both you and us to create color schemes, we added a feature that displays the WCAG contrast level for each text or icon color along with an indication of its acceptability. There are three levels of acceptance: OK, bad, and bad for small text. This doesn’t address issues related to color blindness or other vision impairment, but we figure you can handle that on your own — if you’re able to distinguish the text from the background, then it must be OK. If you are unable to distinguish text from background in one of our built-in schemes and you don’t own the AFS (and therefore can’t customize the theme), you can probably find a different color scheme that will work.

Toward the end of this reporting period, significant progress was made on supporting multiple saved layouts if you own the Advanced Feature Set. Tabs are displayed for each layout, similar to the macOS version. Tabs (layouts) can be created, renamed, deleted, and re-ordered.

Finally, with respect to creating a production build, we made quite a bit of progress. We believe we can build the app in its final format, but we’ve yet to see it packaged into an exe that can be distributed to users. But we’re much closer to doing that than we have been to date.

Little (And Not So Little) Things

  • Many small tweaks were made throughout with respect to font sizes, colors, and wording of the user interface text.
  • Operations on selected verses (such as “copy” and “add bookmark”) were not retrieving the selected verses correctly.
  • The program was crashing while trying to update the title bar when no book was open.
  • Switching from having the study pane on the left to having it on the right resulted in corruption of the user interface. Ditto switching from right to left.
  • There were versification issues in bookmark lists, highlight lists, and note lists. These items could be appear to be attached to the wrong verse.
  • There were problems being able to consistently open “newer” Bibles (the ones that don’t work with the current Windows versions of PocketBible). This was related to the fact that they carry information with them that makes them work on macOS, Android, and iOS. This information was not always being interpreted correctly.
  • Features weren’t getting added correctly when you upgrade from the standard to advanced feature set or when your Advanced Feature Set expires.
  • The screen wasn’t being updated after searches were complete. Search hits that you could see on the screen were not being highlighted, and highlighted results from the previous search remained visible.
  • Interlinear rows and Strong’s numbers weren’t using the right color.

To-Do List

Since I posted this last time, here it is again…

Bugs

  • Thoroughly test back/forward. May be capturing view state for history too often, like after normal scrolling.
  • If book panes get too small, it’s easy to scroll well past the end and confuse the loader.
  • Go To pane doesn’t appear to scroll to the correct location for devotionals. Current reading is correct but may not be scrolled into view.
  • Handle versification issues when following links. Links that begin or end on verses that don’t appear in the active Bible should still get resolved.
  • Font size changes may not be being recognized when switching to the bookmark list.
  • Manage input focus throughout.
  • Not search appears to start a search on mount(); never finishes.

Note editor/viewer

  • (Low Priority) See if we can honor newlines in plaintext and retain those in the rich editor. Right now they are retained in the viewer but not the editor.

Note search

  • (Low Priority) Switch to enable/disable enhanced search (even for book searches where it defaults “on”)

Search

  • (Low Priority) Figure out how to move search back into its own thread; solve problem of syncing SourceManager and other functionality between threads.

User Data

  • Verify we’re tracking the last-synced customer and don’t sync when it changes.
  • Verify we’re always requesting data from the server when we need to and saving when we should.
  • Use the logged-in customer rather than the test customer.

Advanced Feature Set

We will release the standard “free” version before finishing AFS features.

  • Journal (partially implemented)
    • Handle AFS state changes.
    • Handle delete operation better.
    • Solve duplicate Journal notes problem.
  • Navigator
  • Autostudy
  • Listen (may not be possible due to weird Chromium “security” issues)
  • Library Search
  • Saved Desktops (partially implemented)
    • Today button
  • Preview when hovering over links

Prepare for Release

  • Finish resolving issues related to doing a release build
    • Search task
    • Locations of pre-installed books and images
    • Locations of image caches; rendering caches
  • Onboarding
  • Website
    • Add platform landing page and catalog page for the app.
    • Add catalog page for AFS subscription.
    • Remove other Windows platforms (consider leaving the desktop version for Win7 die-hards).

What’s Your Excuse for Not Reading the Bible? #5

Rubens, Peter Paul. The Meeting of Abraham and Melchizedek. 1626.
Oil on panel, 65.5 x 82.4 cm. National Gallery of Art, Washington DC.

This is the fifth in a series of articles on common excuses for not reading through the Bible.

I’ve spent the last 40+ years studying the Bible, but not necessarily trying to read each word from cover to cover. Several years ago I began setting aside time each day just to read the Bible, with the goal of getting through the whole thing over the course of a year. Having spent many years coming up with excuses not to read the Bible this way, I thought I’d record them here for you. But take note: I’ll be shooting them down in the end, so don’t get your hopes up.

Excuse #5: Why bother reading the entire Bible anyway?

It can be reasonably argued that we only need to read the New Testament.

We meet Jesus in the Gospels. One of the things I like about reading a different translation of the Bible is re-reading the Gospels and re-meeting Jesus. Same characters, same events, but different words so that it sounds fresh and makes you think.

The book of Acts is both an adventure story, as Paul travels thousands of miles on foot to establish churches and preach the gospel, and it is where we first see the teachings of Jesus being put into action by his disciples.

The Epistles address the kinds of issues we face in our churches. Your issues will be different from mine, but they’re all covered.

The Revelation of Jesus Christ to the Apostle John tells us about the future. Well, it does with imagery and symbols, but it does nonetheless.

What could possibly be in the Old Testament that would benefit us in any way? I mean, once you have a general idea of what’s there then what’s the point of slogging through it? Creation? Yep; got it. Flood? Know about that. Chosen people? The Jews; heard about ’em. Exodus from Egypt, the Law, the tabernacle, wandering in the wilderness, taking of the promised land, establishment of a king and kingdom, building of a temple, division of the kingdom, good and bad kings, and deportation? Sure, fine, whatever. Return to the land, rebuilding of the temple, promise of a messiah? Yes, yes, I know.

The Familiarity of Home

I was never an athlete, but at 50 years old I started running because my heart was trying to kill me. I started slow. And dumb — the first time I ran a mile, I did it by running straight away from my house, then I had to walk back. It took time for me to figure out that I should run a circular route so I’d end up at home.

Eventually, I ran into parts of my neighborhood that, while just blocks away, were unfamiliar to me. A curious thing began to happen: my concept of “home” was expanding. My “home” went from the yard I mowed every week to an entire neighborhood. My “neighbors” were not just the ones who lived next door to me, whose names I couldn’t remember but whose faces were familiar, but now included a woman a mile away who was always out on her front porch smoking a cigarette. And after you run past the house a few times you happen to see a woman dropping off some kids, and realize the smoking lady is a grandmother who watches her grandkids while mom works.

When we read the entire Bible and not just the few passages our preacher quotes on Sunday morning, our spiritual neighborhood expands. We meet more of our biblical neighbors. We discover Job’s dark sense of humor, not just his suffering. We find that the woman at the well was no unclean Gentile, but, like Jesus, could probably trace her lineage back to Jacob, but through Manasseh and Ephraim. Her debate with Jesus over the correct mountain on which to worship was not the idle babble of some random pagan but accurately stated a religious difference between the remnant of Israel that returned and settled in Shechem, and that of Judah, which settled in Jerusalem.

We also begin to appreciate our own place in history; especially in the history of how God has related to his creation through the ages. Familiar New Testament passages take on new meaning as we see similar thoughts being expressed hundreds of years before. And we’re amazed at the degree to which the Old Testament prophets accurate predicted the events of the New Testament.

Continuity of History

I like to read the Bible chronologically. The more I do this the more I begin to see the entire Bible as one long story. When I start reading Genesis, I will first read John 1:1-5:

1In the beginning was the Word, and the Word was with God, and the Word was God. 2The same was in the beginning with God. 3All things were made through him. Without him, nothing was made that has been made. 4In him was life, and the life was the light of men. 5The light shines in the darkness, and the darkness hasn’t overcome it.

It reminds me that this is a book that isn’t just ultimately about Jesus, but it’s literally the story of Jesus. I like to describe the logos or “the Word” or “the Word of God” as God’s message — what God has to say. That message was embodied — took on human flesh — in Jesus. Jesus is the embodiment of what God has to say. In Genesis, God spoke and the universe came into existence — that is, without that spoken message from God, that message that we know as the person “Jesus” — nothing was made that has been made.

God wants to have a relationship with humans; humans rejected God; God punished them and selected one family with which to start over; God tried giving them laws, tried living among them in a tabernacle, tried giving them a king they could see — but none of these things restored that relationship he originally had wanted. So he said he would send a prophet, then the “righteous branch” of David.

All of this happens before we even get to the New Testament. When reading chronologically, you come out of the Old Testament reading Malachi, which is as big of a build-up and as big of a cliff-hanger as you get in the Bible.

“Behold, I send my messenger, and he will prepare the way before me! The Lord, whom you seek, will suddenly come to his temple. Behold, the messenger of the covenant, whom you desire, is coming!”

You come out of the Old Testament knowing that a prophet like Elijah is coming, and you read about John the Baptist. You know how it began in the Garden, how humans messed it up, and you know the only way this is going to every work is if God comes down here and does it himself. And then he does in the next day’s reading. Hollywood couldn’t write this kind of story.

And you wanted to skip the Old Testament — especially the prophets.

Jesus Death Has No Meaning Apart from the Old Testament Law

This is why some people get Jesus all wrong. They haven’t read the Old Testament. They say, “Jesus died as an example.” An example of what, exactly? “Well, Jesus died to show us he loved us.” Couldn’t he have just bought us flowers? How does just dying for some random crime (threatening to destroy the temple, I guess — of which he was innocent) demonstrate ‘love’? “He died for his disciples.” In what way? None of them were being threatened with death — he didn’t die instead of them.

But now insert the Law. Jesus was innocent of his crime, like an unblemished lamb. Jesus died in our place, like that lamb does when it gives its life on the altar to satisfy God’s justice.

At the same time, Jesus’ sacrifice was different. The next day, the Old Testament priest had to sacrifice another lamb, then another the day after that. But Jesus needed to die just once because he perfectly satisfied God’s need for sin to be punished.

The New Testament tells us that Jesus became a high priest after the order of Melchizedek. If you haven’t read the Old Testament, you don’t recognize what the New Testament is talking about. Melchizedek was a priest of Yahweh before Abraham, before Isaac, before Moses, before Aaron, before the Law. (And FYI, he was a contemporary of Job, which you won’t know if you don’t read the Old Testament, and if you did read it, you won’t know it if you read it in Bible order after the book of Esther instead of in chronological order.) He took a tenth of the spoils of Abraham’s battle with Chedorlaomer in the Valley of Siddim before the tenth (or “tithe”) was written into the Law. Jesus isn’t a high priest in the way that Aaron was a high priest; he’s of an entirely different order. An earlier order that wasn’t under the Law.

You won’t know this if you don’t read the Old Testament.

It’s great that you want to read the Bible, and it’s fantastic that you want to read and understand the New Testament. But it’s just one part of the story. And it’s a part that’s going to seem mighty strange if you don’t know what came before it.

What’s Your Excuse for Not Reading the Bible? #4

Distant Shores Media/Sweet Publishing, CC BY-SA 3.0, via Wikimedia Commons

This is the fourth in a series of articles on common excuses for not reading through the Bible.

I’ve spent the last 40+ years studying the Bible, but not necessarily trying to read each word from cover to cover. Several years ago I began setting aside time each day just to read the Bible, with the goal of getting through the whole thing over the course of a year. Having spent many years coming up with excuses not to read the Bible this way, I thought I’d record them here for you. But take note: I’ll be shooting them down in the end, so don’t get your hopes up.

Excuse #4: I’m not a levitical priest. I don’t need lessons in animal dissection.

Several long passages in Exodus, Leviticus, Numbers, and Ezekiel describe, in minute detail, how to cut up, clean, discard, wave, dip one’s thumb into, and burn a variety of animals. These instructions were extremely important to the priests who ministered in the tabernacle and later, the temple. But beyond knowing that these sacrifices were done and what their purpose was, we don’t really need the details. We won’t be donning our ephods and slitting the throats of sheep during the Sunday morning worship service any time soon.

The passages I’m talking about go beyond “sacrifice a bull to Yahweh”. They explain how it is to be done — in detail. This makes sense in context, since these are literally instruction manuals for Aaron, his sons, and their descendants.

5The anointed priest shall take some of the blood of the bull, and bring it to the Tent of Meeting. 6The priest shall dip his finger in the blood, and sprinkle some of the blood seven times before Yahweh, before the veil of the sanctuary. 7The priest shall put some of the blood on the horns of the altar of sweet incense before Yahweh, which is in the Tent of Meeting; and he shall pour out the rest of the blood of the bull at the base of the altar of burnt offering, which is at the door of the Tent of Meeting. 8He shall take all the fat of the bull of the sin offering from it: the fat that covers the innards, and all the fat that is on the innards, 9and the two kidneys, and the fat that is on them, which is by the loins, and the cover on the liver, with the kidneys, he shall remove, 10as it is removed from the bull of the sacrifice of peace offerings. The priest shall burn them on the altar of burnt offering. 11He shall carry the bull’s skin, all its meat, with its head, and with its legs, its innards, and its dung 12—all the rest of the bull—outside of the camp to a clean place where the ashes are poured out, and burn it on wood with fire. It shall be burned where the ashes are poured out. — Leviticus 4:5-12

Yeah, but there’s not a lot of these verses, right?

I counted 468 verses (12,866 words) on this subject. That’s around 1.7% of the text (counting by words). If you’re reading the Bible in a year, you’ll spend just short of one whole week reading nothing but procedures for wringing the necks of doves and removing the lobes that cover the liver of bulls.

But it wouldn’t be there if it wasn’t important!

These details are absolutely important — if you’re a descendant of Levi ministering in the tabernacle or temple. But a more general understanding of the Old Testament sacrificial system is all that is needed for Christians trying to read and understand the Bible today. We need to know that God required a blood sacrifice for sin. Then we can understand what we read in Hebrews:

1For the law, having a shadow of the good to come, not the very image of the things, can never with the same sacrifices year by year, which they offer continually, make perfect those who draw near. 2Or else wouldn’t they have ceased to be offered, because the worshipers, having been once cleansed, would have had no more consciousness of sins? 3But in those sacrifices there is a yearly reminder of sins. 4For it is impossible that the blood of bulls and goats should take away sins. — Hebrews 10:1-4

11Every priest indeed stands day by day serving and offering often the same sacrifices, which can never take away sins, 12but he, when he had offered one sacrifice for sins forever, sat down on the right hand of God, 13from that time waiting until his enemies are made the footstool of his feet. 14For by one offering he has perfected forever those who are being sanctified. — Hebrews 10:11-14

One of the fascinating things about the Law is that it ostensibly existed as a guide for its followers to make themselves righteous before God, but that in reality its purpose was to teach us the futility of believing that merely following a set of rules can make us right with God. This more subtle and enlightened (i.e. “basic Christian”) understanding of the Law makes the idea of spending a week learning how to dissect a goat in a way that pleases God even less rewarding than it literally is.

Save yourself a week

I skim and skip these passages when I run into them. I give you permission to do likewise. Don’t let a description of the fat around the kidneys keep you from getting all the way through the Bible.