26 February 2007

Breaking the Silence

Well, it's been far too long without an entry in this blog. My sincere apologies for that, I just couldn't find the time with all the work piling up for my course (finals coming up in May) and I'm afraid the frequency of messages won't improve soon... In any case, although I have neglected the project website, particularly the development section, the BibWorm Core is growing in C#. Most DAL classes have already been implemented (actually only 3 and a number of collections are missing) but need revision, particularly concerning the implementation of the IComparable interface. Saravanan M recently wrote an article on Code Project entitled Sorting Generic Collections; his discussion could prove really useful for the BibWorm DAL and I hope to implement it sometime in the near future. Ideally, a first release of the BibWorm core should become available sometime this summer. In the meantime, feel free to take a look at the code via the project's SVN space. If you have any comments, please leave them in the project's open discussion forum.

30 October 2006

Updates & Pumpkins

It's been a long time since my last post but to be fair, there isn't anything to report at the moment. Work on the class reference will certainly not be completed until after Christmas as my studies currently leave me little time to add new information. :( The whole reference actually exists, but it takes a long time to enter it into the project's MySQL database. From mid-December, however, I hope to be able to work more continuously on the project. If you have any suggestions or comments on what has been published so far, please feel free to post in the BiBWorm project's forums. Have a scare Halloween, everyone!

05 October 2006

A Mind Map on the BibWorm Standalone Client


Mind map illustrating essential BibWorm standalone client functionality


Yesterday I sort of rediscovered a mind map I had done for the BibWorm standalone client back in July to present my ideas to Cambridge University's Centre for Applied Research in Educational Technologies (CARET). It illustrates the kinds of tasks which the standalone application must enable users to deal with. Since this map dates from a time predating the current modular design and the different flavours of BibWorm applications it is slightly outdated but nonetheless provides a good reference for the standalone client's essential functionality. Which is why I have put it on the website. Scrutinize it here.

01 October 2006

Moved My Blog to Blogger.com

Today I moved my blog to blogger.com. That should make things a little easier for me in the future. So far I quite like this service. And the WYSIWYG editor is a nice change from entering my stuff into the project database using phpMyAdmin. It's just a pity that I wasted time developing a PHP script to transform my posts into RSS... Oh well, at least I learnt something doing this. :) I have posted the script in one of BibWorm's forums, in case anyone might like to take a look at it. You can view it here. Apart from this, work on the core class reference will most probably slow down considerably now, as term at university starts tomorrow.

30 September 2006

BibWorm Core Class Reference Growing

As some of you may have noticed, the class reference for the BibWorm core is steadily growing. I have also improved the PHP code behind the class reference page a little, but these improvements are minor, concerning mainly the structure of the script and displaying additional info such as generics (especially allowing crossreferences to generic classes by separating type parameters from the class name) and calls to constructors of super classes (base in C#).


I'm not sure whether I've said this anywhere before, but the class reference generally follows C# syntax e.g. for class headers, method signatures, properties (accessors), and especially the notation of events. I do realize that these things are somehwat differently put in Java, but firstly I'm more familiar with C# and secondly I believe that C# notation is a little less complicated for the purpose of this reference, which is essentially a design document. I am also vastly in favor of C#'s convention concerning the naming of interfaces since in my humble opinion IComparable is so much clearer than Comparable, or IDatabaseWrapper to DatabaseWrapper. At least you know straight away that you're dealing with an interface, whereas Java had me a little confused about these things at first (I'll just say List, which in C# refers not to an interface but a class).

24 September 2006

Started Publishing Class Reference for BibWorm Core

Finally I've come up with a solution to the publication of the class reference for the BibWorm Core. Last night I figured out a managable way which has a PHP script assemble the whole thing from data contained in the project database, and this also allows me to have crossreferences dynamically generated. It's technically neither impressive nor difficult, but it's the easy solutions that seem to evade us most of the time...


I only just started entering all the class details, so please don't be disappointed at the lack of information. More will be added continuously as I find the time. I am also going to produce a little diagram to illustrate inheritance. Stay tuned for more! :)

21 September 2006

Web Survey Online!

Finally I managed to put a user survey online. Its intention is to gather further information from users to provide the kinds of features they need. I am not expecting, however, that its results will have much of an impact on the fundamentals such as the data abstraction layer. The survey's main impact will rather be on the design of user interfaces, plugins and other modules.


At this point very many thanks to Dan from Cambridge University's CARET for his input while drafting the questions. For all those interested, the survey has been realized with phpESP. Due to the peculiarities of sourceforge.net's web hosting environment, I had to configure the survey on my local XAMPP server and feed the SQL dump into BibWorm's MySQL database. Voilá!


Over the next days and weeks the main focus will be to update the development documents to include the core's interfaces and the data abstraction layer classes. Drafts for all of these exist, but I am as yet uncertain how to present them. If all else fails, I'll try to finish coding them (probably in C# contrary to my former intentions of completing the Java core first - I just can't afford losing too much time right now learning a new language as term is about to start), so that there will at least be something in our subversion repository.