PocketBible for Windows Progress Update #1

As you know, our crowd-funding campaign for PocketBible for Windows ended on September 15 so we’re about one month into the project. While I can’t demonstrate much for you at this point, I do want to fill you in on our progress and answer a few questions.

Over the last couple of years we’ve experimented with a number of programming languages, frameworks, and development tools to try to discover the best way forward for PocketBible for Windows. In the process, we’ve explored some proof-of-concept ideas, some of which will find their way into the finished product.

For example, we needed to be able to display and interact with books with complex layouts, like The NIV with Goodrick-Kohlenberger Numbers and our parsed interlinear Greek New Testaments. You would think that displaying formatted text would be trivial these days, given that it’s 2020 and even Web browser technology from the last century can do it fairly well. PocketBible for Android, iOS, and Mac OS uses HTML rendering built into those platforms that does a very good job. Unfortunately, the similar functionality built into Windows is significantly less capable. So as we explored alternative tool sets for implementing PocketBible for Windows, this is one of the areas we focused on. Our ability to successfully render these complex layouts during our experiments in the summer of 2019 is what led us to settle on our current solution. (We’ll have more to say about that in a future update).

Now that we’ve demonstrated that we can display and interact with the text, we need to be able to extract the text of a book or Bible from our Laridian Book (LBK) file format. The code that does that is fairly extensive and complicated and needs to be translated from its current implementation and thoroughly tested. We’re currently working on that task.

A major area of progress is what we call “user data management”, which is keeping track of your notes, highlights, bookmarks, and daily reading progress. In particular, we wanted to tackle synchronization of that data with Laridian Cloud. This would force us to fully implement the ability to read and write the data from and to the database, and would also require us to solve communication with our cloud-based sync provider — both of which are complex tasks that introduce risk into the schedule. Overcoming those challenges and dealing with that risk during the early part of the project avoids the possibility of unexpected delays right before our ship date, when it is least-practical and most-expensive to deal with it.

As of today, even though the PocketBible app for Windows doesn’t allow you to view or edit notes, it can sync its local notes database with the server. You can’t even see any verses, let alone select one to highlight, but you can correctly sync highlights to and from the cloud. This means we’re able to populate the local database from a customer account, make manual changes using a database editor tool, then request that the program sync again. The app accurately identifies what has changed and syncs those changes to the server. At the same time, it receives and records any modifications or new records sent to it from the server. That means that, at least internally, everything is working. There’s just no user interface to it yet. Sounds weird, but it’s very normal for a software project to be completely working but with no way to see that it’s doing so. That will come later.

It’s also worth noting that even though neither of the current versions of PocketBible for Windows (Windows Desktop or Windows Store versions) support Journal notes or renaming highlight colors (features of the Advanced Feature Set in PocketBible for iOS, Android, and Mac OS), the new version already supports those features. Or rather, the underlying support is there; there’s just no user interface to invoke it.

Until next time, thank you so much for your financial support, prayers, and words of encouragement for this project. We welcome your feedback and suggestions.

Frequently Asked Questions

What will be the effect of the Windows project on work being done on other platforms?

According to comments on a recent customer survey we did, some of you have expressed concern that our attention to the Windows project will take away from work on other platforms. I want to reassure you this is not the case. In fact, the very purpose of the crowd-funding campaign was to allow us to add staff for the Windows project in order to minimize the impact on other platforms. You may not realize it, but you’ve already seen the results — we shipped a new version of PocketBible for iOS coincident with the release of iOS 14, which introduced a number of major new features for PocketBible on that platform, all while work on PocketBible for Windows continued unabated.

When will I get my rewards?

When you get your rewards depends on what type of rewards you are entitled to.

Physical Rewards: Three contributors were entitled to some special rewards (a 1903 KJV New Testament and two framed, first-edition KJV pages from 1611). These were mailed within a week of the end of the fund-raising campaign.

2021 PocketBible Library Collections: Contributors at the $60, $120, $240, and $360 levels will get the 2021 Bronze, Silver, Gold, and Platinum Edition PocketBible Library collections, respectively, when those products are released near the end of the year.

Special Diamond-Level Library Collections: Contributors at levels $720 and above will get the special collection we’re putting together just for those contributors. It will be released either at the same time as the regular 2021 Bronze, Silver, Gold, and Platinum collections are released, or shortly thereafter. We’re aiming for having all of the collections distributed by the end of the year.

Advanced Feature Set Subscriptions: Some contribution levels included multiple years of either the AFS for the new Windows app or for all platforms. Those will be distributed when the new app ships. We haven’t announced a specific ship date but are aiming for late summer, 2021. Obviously, those who are entitled to a mention in the in-app credits will see that when the app ships.

Wait… Isn’t that a Mac in the picture?

Yup.

We Reached Our Goal!

Thanks to the kindness of 492 of our closest friends, we were able to reach our goal of raising $50,000 for the development of an all-new version of PocketBible for Windows! The final total came to exactly $53,000.

If you contributed to the project, you’ll get an email from us letting you know how we’re going to keep you updated on our progress. We’ll publish updates here on the blog. Some will be public like this one; others will be for supporters only.

To get things started, I met yesterday with the outside developer responsible mainly for user experience to bring him up to speed. And since the beginning of the crowd-funding campaign I’ve been working with another in-house developer to bring her up to speed on the development tools and the initial tasks we need to work on.

Even though we already have two different Windows versions of PocketBible, this version is going to be implemented a whole new way (more about that later). So we have to treat it as if we’re doing it for a whole new platform. When we launch into PocketBible for a new platform, I like to tackle the hard things first. That is, I try to identify what is going to be a challenge for us and do some prototyping or proof-of-concept tests to make sure we’re going to be able to solve those problems before they become hinderances to the schedule.

What that means is that we’re going to start kind of in the middle of the project, focusing on the note editor and user data synchronization, because those seem to always present problems on every platform. We’ve already done some experimenting with simply displaying and scrolling through text, as that’s another problem area. We’ve actually written and thrown away a few different attempts at some of those problems already.

This approach creates interesting paradoxes. We’ll be able to sync your notes, highlights, bookmarks, and daily reading progress to and from the server before the program can create or display a note, highlight a verse, or set or go to a bookmark. We’ll be able to scroll through Bible text before we can choose and open a Bible to read. But such is the world of software development, especially with a mature product like PocketBible. Even though the new version of PocketBible for Windows doesn’t exist, PocketBible itself exists both as an abstract concept and in several concrete implementations — not just the existing Android, iOS, and Mac OS apps, but our soon-to-be extinct Windows apps and our already-extinct Windows Mobile Smartphone, Pocket PC, Handheld PC, Palm-size PC, webOS, Blackberry, Palm OS, and browser-based versions. So this new Windows version already exists in our heads. Starting in the middle or at the end or the beginning is all the same to us. 🙂

Photo by Danielle MacInnes on Unsplash

Original Crowd-Source Funding Campaign for PocketBible 3 for Windows

This is the original campaign description that we did for the next version of PocketBible for Windows. Since the crowd-source funding campaign only lasted about 6 weeks, we’ve removed or edited the call for contributions, but the story about the motivations behind rewriting PocketBible for Windows is useful for understanding how we got here and what our goals are.

The PocketBible Story

We are working on a new version of PocketBible for Windows. The new version of PocketBible will replace both the older Windows Desktop and newer Windows Store versions of PocketBible. Books and Bibles you bought for those apps will work with the new app, and books that you previously could only use on Android, iOS, and macOS will be available for this new Windows version.

You can learn more about the motivation for the campaign by watching the short video above, or by reading further…

PocketBible for Windows

PocketBible is primarily a mobile Bible app. But we also make versions of PocketBible for macOS and Windows.

We actually have two versions of PocketBible that run on Windows. There’s an older one that was designed for Windows XP, and a newer one that isn’t an upgrade to the older one. It was designed for Windows 8 and is an entirely separate program. Both versions run just fine under Windows 11.

Laridian originally released PocketBible for Windows in 2007.

The Original PocketBible for Windows

It was a great little Bible app, based a lot on what we had learned writing QuickVerse back in the 1990’s at Parsons Technology. Like many apps of its day, it was rather complicated. There were a lot of tiny buttons around the book window, and dozens of configuration options. This version, while designed for Windows XP, ran great under the next two versions of Windows (Windows Vista and Windows 7).

But then came Windows 8.

PocketBible for Windows Store

With Windows 8, Microsoft completely changed the way you interact with Windows and its apps. They were attempting to merge the user experience on the desktop with the emerging market for tablets with touch screens.

FAQ from parallels.com explaining how to find apps in Windows 8

Windows 8 apps with what Microsoft called its “Modern User Interface” filled the screen with information (in our case, the text of your Bibles and reference books) and hid the menus, toolbars, and buttons that we had all grown accustomed to. Swipes and other gestures were required to reveal the hidden controls.

Apps that implemented this user interface were distributed exclusively through the new Windows Store. Older apps like PocketBible were now called “Windows Desktop” apps and were relegated to their own area of the Windows Start menu — that is, if you could find the Start menu at all.

PocketBible for Windows Store with “Modern User Interface”

This was a confusing time to be a Windows developer. It wasn’t clear in which direction the user experience for Windows was going. While we released a new version of PocketBible designed for the Modern User Interface, we hedged our bets by keeping the old version of PocketBible available and renaming it, “PocketBible for Windows Desktop”.

The Challenge

PocketBible itself has been evolving on other platforms while remaining static on Windows. We haven’t been able to update the older Windows Desktop version just because of its age and incompatibility with the newer development tools. The Windows Store version was actually written by a volunteer PocketBible user whose full-time job is as a contract Windows developer. His other work has kept him from spending as much time on PocketBible as we both would like, and as a result it hasn’t kept up with the changes.

This is further complicated by the fact that there are features we’ve implemented on the other platforms that simply can’t be done in the Windows environment.

One of the things we haven’t been able to implement is support for our newest Bibles, especially interlinear Bibles. It’s getting to the point where there are enough issues — the interlinear Bibles, the absence of a good WYSIWYG note editor, and the absence of a number of Advanced Feature Set features — that we really need to update PocketBible for Windows. And we don’t have a good way to do that.

It has become clear that we need to start over.

The Next Version of PocketBible for Windows

The plan is to build a brand new version of PocketBible for Windows. Because we’re more familiar with the code in the Windows Desktop version, and because it makes use of the shared “book reader engine” we also use in PocketBible for iOS and macOS (and thus has been kept up-to-date), we’ll start with that version of the code.

We’ll take what we’ve learned in the last 20 years about how you use our apps for Bible study, both on the desktop and on your mobile device, and apply it to a fresh, new user interface that draws from our iOS and macOS apps.

We’ll build this new version of PocketBible on a unique new technology stack that supports the innovative things that Microsoft makes it hard to do with the standard tool set, and gives us more options for the future than we’re ready to talk about at this point.

We’ll be able to implement the full range of features you see in the Advanced Feature Sets in PocketBible for Android, iOS, and macOS.

The PocketBible Jump-Start Campaign

We’re a mobile Bible software company. Because Windows is not a significant revenue source for us, it’s hard to justify investing in that platform. But we’re going to have costs that are a little out of the ordinary to get this done. In particular, we need to hire some temporary and contract developers to supplement what we can do in-house, and of course that costs money.

PocketBible Platform Distribution (March 2020)

[In 2020, we asked] that you consider participating financially in this project. Reaching the funding goal that we’ve set will allow us to hire the additional people we need. Any additional funds we receive will allow us to add resources to the project to enhance the feature list and ensure that we make our schedule.

Questions or Comments?

We invite your feedback during this campaign. You can contact Craig directly at [email protected] with any questions, comments, or suggestions you might have about PocketBible for Windows.

Risks and Challenges

Every software project presents challenges that can’t be predicted in advance. Laridian is a small company with only a few employees, so it’s possible that development on one project might slow down or be halted for a time while we put out a fire on another project. Part of the purpose of this “jump-start” fund-raising campaign, though, is to help us fund the additional staff we will need to keep this project on track.

The technology we work with is constantly changing. New versions of tools and of Windows itself constantly introduce new challenges. But we’ve been doing this for a long time — over 20 years now — and feel we have a track record of being able to work through and around challenges like that.

In short, we feel confident that we have the skills, tools, people, plan, and expertise to complete the project. Delays should be minimal. We’ve used crowd-funding to fund development projects in the past. Regardless of the problems we encounter along the way, we’ll be keeping you up-to-date with regular progress reports so you won’t be left wondering what ever happened to PocketBible for Windows.

Terms and Conditions

All contributions made to the PocketBible for Windows Jump-Start Campaign [were] made subject to the following conditions:

  • Laridian is not a religious or 501(c)3 organization. Your contribution is not tax-deductible as a charitable donation.
  • While we promise “rewards” in return for contributions, you are not purchasing the reward. We are giving it to you.
  • You may request a refund of your contribution within 30 days of making it. Access to rewards that are downloadable will be revoked upon refund. Physical rewards that have been mailed to you are not returnable. In the event you wish a refund of a contribution that resulted in a physical reward, the retail value of the reward will be deducted from your contribution, and the balance refunded.
  • You are contributing toward a software development project. The results and schedules of such projects are widely known to be variable and unpredictable. While Laridian has every intention of completing the project and doing so according to the schedule that it from time to time will disclose to supporters, it does not guarantee that the project will be completed, or be completed by a certain date.