New Member

7 views
Skip to first unread message

DORMANTROOT

unread,
Jul 17, 2011, 6:10:29 AM7/17/11
to bpbibl...@googlegroups.com
Hi Folks,

I'm the newest member in your team! I was wondering if someone could guide me so that I can get started with this project.

thanks,
dorman

Jonathan Morgan

unread,
Jul 17, 2011, 7:41:29 AM7/17/11
to bpbibl...@googlegroups.com
Hi Dorman,

On Sun, Jul 17, 2011 at 8:10 PM, DORMANTROOT <dorma...@gmail.com> wrote:
Hi Folks,

I'm the newest member in your team! I was wondering if someone could guide me so that I can get started with this project.

To some extent that is going to depend on what you want to do, which operating system you are on, and so forth.  Currently development is a bit sporadic (depending on when we have time available and what needs doing).  The main focus at present is trying to get the release of 0.5 finally finished, which has dragged on far longer than even my most pessimistic predictions would have predicted (which would have been end of June).  However, the key things to ask are:
1. What role are you wanting to play in the project? (e.g. Are you wanting to be a developer, or something else?  What operating system do you use?  What tools?)
2. What experience do you have?
3. Do you have any particular goals for BPBible?  Things you would like to have changed or improved?  Why pick BPBible?
4. How much time are you likely to have available? (note this can be almost anything - the hours I spend on the project can vary wildly, and in fact I haven't done a huge amount in the last month or two, and a lot of that work isn't visible anyway).

I don't mean this to be a prescriptive list of questions that you must answer, but I think we can help you get started best if we understand better where you're coming from.

Thanks,
Jon

john

unread,
Jul 17, 2011, 12:54:35 PM7/17/11
to bpbibl...@googlegroups.com
Hi Jon,

Well, I'm a Software Developer by profession and have been architecting/developing applications for the last 6 years. I primarily do Microsoft technologies, like .NET, EF, WPF, Silverlight etc. Lately I've been doing Android development as well. For this project, I'm hoping to do something along the development line, if it's available. If not, I can wear any other available 'hat'. As far as the contribution is concerned, I am aiming to put in couple of hours a week. However, I can't guarantee that, but I will try my best.

To get started, I was hoping to read some documentation/wiki about this project, the technologies that is being utilized, a project plan etc. Also, it would be nice if others could also introduce themselves and let me know what 'hat' each of you are wearing.

thanks,
dorman

Jonathan Morgan

unread,
Jul 18, 2011, 11:54:13 AM7/18/11
to bpbibl...@googlegroups.com
Hi Dorman,

On Mon, Jul 18, 2011 at 2:54 AM, john <dorma...@gmail.com> wrote:
Hi Jon,

Well, I'm a Software Developer by profession and have been architecting/developing applications for the last 6 years. I primarily do Microsoft technologies, like .NET, EF, WPF, Silverlight etc. Lately I've been doing Android development as well.

Sounds good.  I am aware of all those technologies but have not used any of them (all my work is in Delphi and Javascript, and most other things I do including BPBible are done in Python).
 
For this project, I'm hoping to do something along the development line, if it's available. If not, I can wear any other available 'hat'. As far as the contribution is concerned, I am aiming to put in couple of hours a week. However, I can't guarantee that, but I will try my best.

I'm sure there is room for many more software developers.  Almost all development work has been done by me and Ben.
As I said, number of hours are not really a concern.  I recognise that it is volunteer work, and there are certainly some weeks when I do no work on it at all.  I think the most important thing is that you are doing something that you think useful.

To get started, I was hoping to read some documentation/wiki about this project, the technologies that is being utilized, a project plan etc. Also, it would be nice if others could also introduce themselves and let me know what 'hat' each of you are wearing.

None of that is really very effectively documented.  It has essentially been a shoe-string project, with things getting done as they come up.  Sometimes the design of the system reflects this.  However, the following information is probably useful:
1. The principal development language is Python (though 0.5 has a lot in Javascript, and this can probably only go up).
2. The principle UI libraries are wxPython and wxWebConnect (where WebConnect is embedding the Mozilla Gecko engine underlying Firefox 3.6 - so basically HTML, Javascript and CSS).
3. Most support for Biblical content comes from the SWORD library.

Major areas of the system include:
* swlib/pysw.py: A slightly simplified wrapper around the SWORD Python bindings, used anywhere we are parsing verse strings and so forth.
* backend/: Contains most of the remaining logic wrapping the SWORD bindings.  It includes custom filters for OSIS and ThML modules (for turning these into HTML), and the BibleInterface class which we use to manage all the state of which is the current module (it contains different instances of the Book class, so that you can refer to e.g. biblemgr.dictionary or biblemgr.bible and get the current dictionary or bible).  This does restrict us to having only one current version of all the different book types, which is a design problem, but I think at least at the moment our UI constrains us to work this way too, and so it's not something we need to deal with.  There are matching
* css/; js/: CSS and Javascript files included in the generated HTML.
* search/: Everything to do with searching, including the custom, regular expression based search engine.

Other commonly used variables/classes (some of them unfortunate) are guiconfig.mainfrm (which contains the single instance of the main application window, and probably shouldn't be used in a lot of the places where it is used) and DisplayFrame (which is our wrapper around the wxWebConnect HTML control).

I can answer lots of other questions, but at the moment some of the design is not as clear as it might be.

If you are on Windows, a good way of getting started is to check out the source code (see http://code.google.com/p/bpbible/source/checkout), download the Windows binary, and then copy all the pyd and pyc files and the xulrunner directory into the base of the source directory.  Then make sure you have Python 2.6 installed and run it with that version of Python and it should all work fine (though I haven't actually done that for a while).

I've added you to the project committers list.  Basically, that means you are able to check out a read-write version of SVN and to commit if you need to.  It doesn't mean that we expect you to start committing immediately (I know there are some on that list who have never actually committed anything).  It's just that this project is small enough that we don't have a lot of need for formal control.

Thanks,
Jon
 

john

unread,
Jul 19, 2011, 8:24:22 PM7/19/11
to bpbibl...@googlegroups.com
Jon,

That was a very long email! You have given me enough information to get started. In the next couple of days I'll setup the environment on my machine and will contact you early next week. 

One side note...are y'all interested in implementing SCRUM methodology? We use that at our place and it has helped us a lot. It's a very efficient way to monitor project development.

dorman.

Jonathan Morgan

unread,
Jul 20, 2011, 11:32:25 AM7/20/11
to bpbibl...@googlegroups.com
Hi Dorman,

On Wed, Jul 20, 2011 at 10:24 AM, john <dorma...@gmail.com> wrote:
Jon,

That was a very long email! You have given me enough information to get started. In the next couple of days I'll setup the environment on my machine and will contact you early next week.

OK.  Sounds good.

One side note...are y'all interested in implementing SCRUM methodology? We use that at our place and it has helped us a lot. It's a very efficient way to monitor project development.

I'm not familiar with Scrum (I mean, I've heard the name referred to frequently, but don't have a clear idea of what it covers apart from the fact that it is "agile").  The thing I hear most about is "stand up meetings", which makes it sound like it's designed for face to face projects, not remotely distributed projects, but I could be completely wrong.  I suppose I have never really thought much about process as there has not been a large number of people to coordinate (much can be done just by putting an item on my todo list for "later" or chatting with Ben).   However, having someone with experience at it could be good if we need more organisation.

Thanks,
Jon
 
Reply all
Reply to author
Forward
0 new messages