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.