My New Blog - with Lucene

Today is the day – my new blog has been made live

It has taken a while, because I got side tracked with getting my AKCMoney application working but I have completed my blog.

I had been wanting to replace textpattern for a while, as I was unhappy with running two simulteneous database engines at the same time, and I had already decided to standardise on Postgres for my other applications. I did make a start on attempting to convert Textpattern over to Postgres, but once my experience of getting up to speed with Java took over, I wanted to use Java for my new blog.

The original idea was to just use a standard database (just as the old TextPattern application had) to store the articles, but I also needed to figure out a way to search the articles. It was then that I decided to try out lucence. The more I started to understand how to use it for searching, the more I realised that it would be just as good a tool to store the articles as well. So thats how I proceeded.

I also needed a “language” to write my articles in – Textpattern has Textile, and I needed something similar. As you can see in my article WYSIWYG v WYSIWYM we used to have a system based on nroff macros to make very high quality documentation. Using that as an inspiration, Roffer was born.

More use of interesting open source libraries, I built the language using JavaCC. and it seems to work very nicely indeed. All the articles in this site have been written using it. I made roffer act as the tokenizer in Lucene, so the combination of the two can act as a complete database system.

So I built a database layer, that is then used by the rest of the code to work with the basic concepts of articles, categories and some simple searching.

Using tapestry for the basic application completes the picture.

Source Code for the application will be released soon under the GPL.

UPDATE: 26th February 2011. The software has been retired some time ago, and I have since used WordPress, Drupal, and now back to WordPress for this software. The original Java application is available in my old-apps repository

UPDATE 19th April 2020. I am in the process of retiring the old WordPress system and have moved over to Jekyll. My rationale was the difficulties I had with nginx talking to php and the overall resources it was using. nginx is retained but I can stop relying on php and move over to to effectively (by the time its loaded on the server) a static site.