Both are based on JSP, although entirely developed using our own Custom Tag Library, jTalk.
My first blog was started in December 2000 using UserLand's ManilaSites. Unfortunately most of their servers are currently maxed out which results in unacceptable performance. Since the service is provided free of charge (or advertising), there's really not much to complain about; although one could easily argue that the value of a piece of software being actively beta tested by such a vast number of simultaneous users easily outweighs the cost of any additional hardware or bandwidth.
Using Manila for close to a year, gave me a pretty good idea of what I really needed in a blog. Manila is very powerful, which also makes it fairly complex at times. I knew I wanted something similar but straightforward, simpler, and more importantly, database driven.
It quickly became apparent that the technology we were engineering for our E-commerce portal could easily be used to develop a weblog. So, I did.
The core development was done over one weekend. I think I actually spent more time working on the HTML templates than I did on the logic. One of my focus was to make sure that, contrary to Manila, all of the HTML and CSS templates were fully W3C validated. It probably took another couple weeks (1-2 hours per day) to work all of the kinks out. The only real challenge was with exporting my old Manila weblog data and importing it into a database. I ended up modifying the TheXmlFiles script with Radio UserLand in order to export the data in a database-friendly format, although I still had to do quite some cleanup by hand.
I also devoted a little time implementing some of the key Manila features such as RSS content syndication and Weblogs.Com update notification.
Behind The Scene
The blog administration interface is what I use the most. As it is an area you don't normally see, here are a few screen shots.
|From this panel I can easily edit/create stories or news articles.|
|The stories and new articles editor.|
|The search panel is used to find specific stories or articles.|
|This panel is used to configure the navigation bar.|
|The global settings are changed using this panel.|