:: From one geek to another ::

Archive for October, 2009

I have been working nearly full time on the Evernote backup implementation and things are shaping up nicely. I became inspired by Tweetie 2’s refresh tweets idea so I decided to implement something similar in our app. I have been wondering for a while how we could have a sync button without a sync button and this works perfectly. Simply pull the table view down beyond the end of the list and release. If the user does not want to sync they can push the list back up before releasing and no sync will occur. The beta testers have been testing it although we do not have as many testers for this round due to my warning to our testers that this may very well wreck your notes. Users are pretty partial to those things so only a few have been brave enough to try it and so far its gone well. None of our testers, to my knowledge, have lost any of their notes, and as an added bonus their notes are making their way to the evernote server and back.I am hoping to release another beta to our users later this week as we are shooting for a final release to Apple by the end of the month so that we can have something to show off at ETS next month.

So after a slight delay I finally posted a new beta for our beta testers today. It was a long haul but worth every bit of work in the end. I totally underestimated how much work would need to be done on our end when using someone else’s services. I figured that since they were doing the heavy lifting we had it easy, but I was wrong. There is just as much book keeping on our end as there is on their end. Adding the concept of a trash bin is what really tripped me up and exposed some hidden bugs in our already existing notes system.
See, when I promised a beta last week I had not yet added the trash bin and really didn’t give it much thought, but as I played with the two together I found not having the trash bin on our side was clumsy and short-sighted so I decided to add it. That unraveled everything on my end for a few days and in the end I learned something about myself.
Isn’t God amazing, He uses my simple little problems at work to teach me something about myself. What I learned is that I am easily unsettled and expect everything to go smoothly. I feel like just because I ask God for a good day at work He should grant it. (After all I am doing the Lord’s work, right?) Then I hit these obstacles, and I freak out inside. If you could have seen me (inside) these last few days you would laugh, because I was pretty frantic trying to pin down what ended up being about 3 bugs stacked on top of each other. Funny thing is I should expect that this is going to happen as I write code, that I am human and do not write perfect code, but I don’t always do that, I rarely do that. Instead I freak out that my code does not work and second guess every design decision I have made in the last week. Things might have gone more smoothly had I been a bit more calm inside.I think I might try that next time.Matthew 6:25-34Prov 12:251Pe 5:7

Progress on the Evernote backup is moving along quite nicely and I expect to be releasing our first beta with Evernote integration to our beta testers later this afternoon or early tomorrow morning. I am excited to hear their initial reactions and feedback on how to make it better.

Because Evernote is not intended to backup bible notes I had to get creative with the note tags that Evernote does offer, and I think I came up with a simple yet effective system that does not intrude on a user’s experience when using Evernote for notes outside of BibleReader.

Every note has associated with it a category, a verse reference, and an icon. I used tags to store this information, so a note referencing John 3:16 will have a tag [Verse:Jn 3:16]. If that note is in a folder such as “Bible Studies” I create a tag [Category:Bible Studies] and associate the tag with the note. Also it should be noted that in order to keep a user’s notes separate from their bible notes I create a notebook in Evernote called “Bible Notes” and place all the notes we sync from BibleReader in that notebook.

We are trying to make this as open and as generic as possible so that end users do not feel like their notes are forever tied to Olive Tree and so that hopefully other bible programs such as Accordance can make use of the Evernote system and we can have desktop to mobile note synchronization.

Stephen and I put a lot of time into iPhone’s BibleReader 4.09 which was partially released last week in the App Store. I say partially because of the way in which we post our application to the app store. Due to the limited search capabilities of the app store and because users looking for a specific resource such as the NIV or ESV Study Bible may miss the finer details of these resources in the BibleReader app we release bundled applications. These bundled applications are the same application but bundled with some specific resource such as the NIV. This makes it easier for the person who is looking for the NIV to learn that Olive Tree’s BibleReader has access to the NIV Bible. Thus we have several bundled applications including but not limited to the ESV, ESV Study Bible (a personal favorite), Amplified, NLT Study Bible (another great bundle) and so on. Each of these bundles is powered by the same underlying software just sold separately for the reasons I mentioned above.

This typically is not an issue but with our latest release things got a bit more complicated. This latest release includes a new way of purchasing resources from Olive Tree using an iPhone feature known as in-app purchasing. Due to the complexity of implementing the new system and the app approval process we decided to hold off on submitting the update for all our bundled apps and just submit the Amplified and a new BibleReader app known as BR Free (See BibleReader price change for more on that). The Amplified was our test case for the new purchasing system. Things went as well as we had hoped so we submitted the rest of our bundled apps shortly after receiving news that Apple had approved the Amplified Bible bundle.

This brings me to the reason I am writing this blog… I know many of you are anxious to get your hands on the latest release and I am excited to get it into your hands, and guess what its possible. If you are currently running one of our bundled resources all you need to do is get an Olive Tree account (if you don’t have one already) and from within the BibleReader 4.08 go to the Settings page and tap the “Olive Tree Account” item where you will find a place to enter your Olive Tree login info and a “Synchronize books” button which will sync your purchases from iTunes with the Olive Tree server. Once this step has been completed we will have an accounting of your purchases that you made with us, allowing us to allow you to re-download those titles into any of our iPhone BibleReaders including the new BR Free. Simply install BR Free onto your iPhone, go to the Library page, find the “My Account” tab. Note: You may be prompted to enter your iTunes password at this point; you can enter it but you will still need to perform the next step. Now tap the “Syncronize books with your Olive Tree account” where you will be prompted for your account information enter it and wait for the synchronization to happen, if it worked your purchased items will appear in a section labeled “Books in your Olive Tree account”. All your past purchases will show up in the reader and you can download them and start enjoying 4.09.

I must warn you however this BR Free does not allow for doing in app purchases as it is Apple’s policy that only paid apps can have in app purchasing. So you must either wait for the generic BibleReader app that is now $0.99 to be approved, or make purchases directly from OliveTree.com.

If this sounds like a lot of work, it really isn’t but if you need some incentive to try it allow me to whet your taste buds. BibleReader 4.09 includes:

Full screen support

Auto-rotation locking

New color options

Nicer looking note popups

A focus visual that subtly gives you a queue as to which window currently has focus.

Overall the app performs better, looks better and has quite a few new features. As I said at the start of this post, Stephen and I put a lot of time into this release and that is no understatement. We also had a great beta testing team help us iron out several of the kinks and bugs along the way. Many of our testers put in several hours per beta release to ensure that your experience was top notch, we all really owe them a debt of gratitude.

If you still want to hold out and wait for your specific version of BibleReader to be approved, you can 😉 but be warned it may be another week before it is. Yours In Christ,David