[jsword-devel] Future Direction for BibleDesktop

Adam Thomas adam-thomas at cox.net
Mon Mar 2 06:01:05 MST 2009


My comments are below...

DM Smith wrote:
>
> On Mar 1, 2009, at 9:33 AM, Adam Thomas wrote:
>
>> Hi all,
>>
>> Recently I began thinking about the current state of BibleDesktop, 
>> its community, and the vision held by the leaders of the project. I 
>> want to contribute more to the project but find myself struggling to 
>> sacrifice the time on a project that seems to be unknown to the 
>> masses and have outdated goals. As a result a few questions came to 
>> mind that I would like to pose to the project's community members.
>
> We'd love to have you contribute as you can!
I certainly will as time permits.
>
>>
>>
>> BibleDesktop appears to be THE reference implementation for JSword to 
>> both act as a functioning application and a JSword API testing 
>> sandbox. I think thats great and it makes complete sense to do that, 
>> however I am saddened to see the mission statement and roadmap 
>> "vision statements" fall behind. Maybe the website isn't getting 
>> updated to reflect the latest goals or vision? I simply would like 
>> some clarification on whether BibleDesktop is going to be moving 
>> forward any time soon.
>
> Right now, I am the lead developer for JSword and BibleDesktop. For 
> all practical purposes, I am the only one making code changes to 
> BibleDesktop. I do accept patches and commit them after reviewing 
> them. (Joe Walker was the original lead.)
>
> Peter leads the efforts to localize BD and JSword into other 
> languages. In practical terms, that means, if someone is willing to do 
> the effort, he will make the commits after reviewing them.
>
> Tonny is working on AlKitab and supplies patches to JSword and common.
>
> Brian is working on FireBible and also supplies patches.
>
> Others have supplied patches from time to time.
>
> I haven't revisited the vision statement in quite some time, so 
> specifics might be/are out of date. After discussion on this list, I'd 
> be glad to accept patches against it.
>
Thanks for the info.
>
>>
>>
>> The Future Direction page has statements such as "Able to use any 
>> 1.4.2 Java runtime, with GJC being a specific target". Really, even 
>> with the release of OpenJDK and newer Open Source platforms that are 
>> supported on Mac, you still want to mess with GJC?
>
> This goal statement is outdated. Joe and I wanted to have BD/JSword be 
> completely free and open. It would have been better to state that.
I'm assuming based on your statements that "completely free" means 
doesn't require Sun's JRE to run?
>
> The statement regarding gjc was that it was the only free/open 
> implementation. But it suffered that it did not support Swing and thus 
> Bible Desktop. Now that OpenJDK is available, this a lot less 
> important. JSword/BibleDesktop run well with it. But it has only been 
> available for a short period of time.
>
> It's not that I want to "mess" with GJC. But, if gjc ever gets to the 
> point that it has a full Swing implementation, then I'd like to 
> support it as well.
>
Sure, GCJ could be targeted, but for now I would recommend focusing on 
OpenJDK as the "open" alternative to Sun's JRE.

>
>>
>>
>> I also understand the current or old reasons for using JDK 1.4.x, but 
>> especially since Sun has moved that version into its effective 
>> end-of-life phase wouldn't it be wise to attempt migration? Sun made 
>> me register on their site simply because I was attempting to download 
>> an outdated JDK. I think they made me register so they could track 
>> how many people are still actively using the outdated JDK. Regardless 
>> of their reason, do we really want to be hanging on to that platform? 
>> I'm not advocating bleeding-edge, or even leading-edge, simply 
>> somewhat current would be nice and still allow the maximum number of 
>> users to take advantage of BibleDesktop.
>
> There are only one reason to hang on to JDK 1.4.2: MacOSX 10.3.
>
> Our stated goal is that after Bookmarks are implemented, we'll move to 
> Java 1.5. Again the reason not to move to Java 1.6 is MacOS 10.4.
Did you mean to say MacOS 10.3 or 10.4 in both comments above? Again, 
I've heard that OpenJDK has ports for Mac, just not certain which 
versions. Need to investigate further.
>
> Basically, I see the addition of Bookmarks as making BibleDesktop as 
> fairly feature complete. At that time, it would have enough features 
> that I would have not qualms about leaving it as a legacy 
> implementation for legacy OS users.
Makes sense.
>
> At one point I updated JSword, Common, Bible Desktop, ... fully to 
> Java 1.5. I found that there was no performance improvement. The 
> features of Java 1.5 were syntactic sugar that slightly improved code 
> quality. (It did spot some bugs!) If I had replace StringBuffer, I 
> might have seen some.
JRE 1.5 and 1.6 have been proven faster than previous implementations, 
however simply moving to an updated JRE oviously doesn't mean noticeable 
speed improvements. The whole issue of moving to a newer platform is not 
specifically an issue of performance anyway. Sure, there are tons of 
syntactic sugar in 1.5 and newer, but I see three main benefits. First 
you can take advantage of new JRE features such as the concurrency utils 
and other powerful enhancements. Second, development is theoretically 
made faster/easier/safer via the syntactic sugar you refer to (ie. 
Generics). Third, I am certainly not opposed to running outdated JREs 
and realize many companies across the globe are stuck on 1.4, however 
going out of our way to obtain and develop to an outdated platform 
doesn't make sense from a modernization and usability perspective. I 
like your idea of keeping the current version once it has bookmarks, 
then lets move along into the current century with the main trunk of 
development using 1.5 or 1.6.
>
> But I got numerous support requests from those using Mac OS 10.3, that 
> I reverted the changes.
>
>
>>
>>
>> I am also very saddened that BibleDesktop does not appear in the 
>> repositories for Linux distros like Ubuntu by default. Last time I 
>> checked there wasn't a .deb package for BibleDesktop. GnomeSword and 
>> BibleTime both steal the show for users who don't realize that 
>> BibleDesktop is out there as an alternative. I'm not saying we are in 
>> a competition, but simply saying wouldn't it be nice to allow users 
>> to use our product? They can't use it if they don't see it in the 
>> repository listing.
>
> There are two parts to this. Until recently, Java (that could run BD) 
> was not available as part of the core of any distribution. Under 
> Debian/Ubuntu the version of BT and GS were very out-dated and this 
> was a frustration to the BT and GS developers. Peter started the ball 
> rolling to get this fixed. The Debian freeze for the next version was 
> coming up soon, so there was a concerted effort to get these current.
>
> I am a part of that effort and would like to see BD be inculded in the 
> distribution. I have no experience with Debian or Ubuntu packaging, so 
> I rely on others to help. Daniel Glassey has volunteered in the past 
> and I think he'd still be willing to help.
Unfortunately I have never created a package either.
>
> Anyway, given the time constraints toward the freeze, getting BD in 
> was not possible. It would be reasonable to get it going now.
>
> There is a mailing list for this if you are interested: 
> pkg-crosswire-devel [at] lists.alioth.debian.org
>
> Regarding Fedora/RedHad and other RPM systems, the issue is that 
> JPackage does not contain a JavaTar package. Once that is solved, it 
> would be relatively simple to package BD/JSword as an RPM. I'm willing 
> to be the owner of the package and have started conversations with the 
> JPackage folks regarding this.
>
>
>>
>>
>> I am not expressing these concerns in anger, but rather trying to 
>> "feel" the community for their perspective and visions for this 
>> project. I would really like to rekindle my interest in developing 
>> for this project, but currently can't get the motivation since to me 
>> it feels like the BibleDesktop application is growing stagnant. I 
>> realize many of the decisions were made in an effort to reach users 
>> running old machines on a variety of platforms, but who says we have 
>> to throw away what we've already built?
>
> In a way, BD development is stagnant. Last year, I was unable to spend 
> much time with it. Too many family/work obligations and other SWORD 
> efforts took me away from it. Right now, I have more time, but I still 
> have two other SWORD efforts I am working on. (The NAS Bible and 
> lexicons; and changes to osis2mod)
Same here, it is understood that people contributing to Open Source 
efforts have lives outside the project, which is why I haven't been 
working on the project recently either.
>
>>
>>
>> Maybe I am totally out of place saying this and nobody else agrees 
>> with me? Maybe I should go off and start my own project that meets my 
>> vision? However, I would really like to contribute to THIS project 
>> since you guys have already done so much great work and I don't think 
>> that building a new car is the solution when an oil change and tire 
>> rotation is all that is required.
>
> What is your vision? To make BD more visible? Then go for it! Is it to 
> improve BD by adding new features? Then go for it!
My vision is to make BibleDesktop a modern and sought after Bible 
application. It will be the reference implementation to JSword. It will 
have packages for most major Linux distros that are available on our 
download site and via the official repos. I would like to begin "going 
for it" however my efforts need to be coordinated with yours and others 
if we want to succeed. Finishing the current implementation would be a 
first step toward moving forward.
>
> Let's use this list as a place to discuss your ideas.
I have some ideas about what I would like to see from BibleDesktop in a 
future version. Most Bible software does exactly what has been done by 
BibleDesktop. The texts are presented inside the GUI in a vertical 
scroll browser window with panels on the left, right, and above that 
expose functionality such as searching and bookmarking. What if there 
were a Bible application that felt like an actual Bible, complete with 
page flipping. Imagine an application where the user interface 
disappears and is secondary to the content being presented. Imagine an 
electronic Bible sitting on your computer screen that allows you to open 
it and flip to the page of your choice or bookmark of your choice. 
Searches and all other functionality is intuitively built into and 
hidden from the user until needed. No clutter on the screen, simply 
content until you need functionality. And for heavens sake, no more 
vertical scrolling, instead we use digital page flipping to make it feel 
like are real book.

Here's some very rough examples of page flipping technology with 
non-cluttered user interfaces, similar to what I have in mind for the 
future version of BibleDesktop: 
http://www.flipviewer.com/flipbook/apfinovdec07/ and another example 
http://www.turnpagepro.com/doc/Turn-Page/LuxuryReportOpt/2008120202/

Think about it, an electronic Bible sitting on your virtual desktop. 
BibleDesktop would certainly live up to its name if the application 
looked and behaved more like I am describing.

This is simply one idea and by no means represents that path we must 
take. I kinda like the idea of making a Bible reading application that 
feels like a real book. The vertical scrolling Bible with massive user 
interface idea have been overdone. Just a thought!
>
> The way it works here is that after you have submitted enough quality 
> patches, you'd be given commit privs.
>
>>
>>
>> Let's make BibleDesktop a well known reference implementation and 
>> further more let's make it a well known application to end users! 
>> I'll certainly help, but it won't work if I am the only one with this 
>> vision.
>
> I share this vision, but I have not pursued it.
>
> The road map reflects my interests and how I would address the Jira 
> issues. Part of the road map is that after adding Bookmarks, we'll 
> revisit the GUI to replace the HTML renderer with a native browser. 
> This is critical for RtoL texts and many other things. That means that 
> we might replace Swing with SWT/JFace/RCP.
>
> The other wish I have is that JSword could be used on a mobile device. 
> I'm not sure if this is realistic.
>
>
>>
>>
>> Warm Regards,
>> Adam Thomas
>
> Thank you so much!
Let's get the troops rallied, get some more participants, and get this 
thing going. Are there specific Jira ticket numbers I could help you 
with to rapidly get the current version stabilized for freeze? I'd like 
to get the current version done and locked down ASAP and then start 
planning for our move to the new 1.5/1.6 platform and also start 
discussing what we want BibleDesktop to look like in the future versions.

You are very welcome!

Warm Regards,
Adam Thomas
>
>
> Working together to advance His Kingdom,
>     DM
>
>
>
>
> _______________________________________________
> jsword-devel mailing list
> jsword-devel at crosswire.org
> http://www.crosswire.org/mailman/listinfo/jsword-devel
>



More information about the jsword-devel mailing list