Tuesday, October 5, 2004

Personal Web site framework


I want to build a framework to update this website. The first cut of the feature list is as given below. One of my main requirements is a site-wide/ central module for common functionality such as search, calendar, etc.



  • Central Calendar


    • in ICalendar format

    • in RSS format


  • Central Search

  • Central Templates/ Skin

  • Central Response system


    • Online posting

    • Email

    • IM

    • Polls


  • Blogger

  • Photo/ Image gallery

  • Online Article publishing


    • Updateable online

    • Draft

    • Schedule release


  • RSS/ Atom


    • Website

    • Blog

    • Calendar


  • Present documents in multiple formats


    • Single-page/Multi-page HTML

    • Printable HTML

    • XML

    • PDF

    • PostScript

    • MS Word


  • Keyword replacement

  • Visitors


    • Registration

    • Personal Page






I have seen all this functionality in different open source projects. But I want to know if there is ONE integrated web site software already available in Java. Let me know if you find one.

If it does not exist, I am planning to integrate a set of existing open source projects. Which ones would you suggest?

Let me know if anyone is already working on a similar thing or is interested in developing it with me.

Friday, October 1, 2004

A little (Artificial) Intelligence never killed anyone!


As I had mentioned in my earlier blogs, I am trying to master Lisp. As all languages, it is going to take a lot of experience and a lot of code to master. Moreover it is a new paradigm (Functional programming and Lisp Macros). I am still reading "On Lisp" by Paul Graham.


I wanted to look at some good Lisp source code that I could study and get a "real life" feel. Even though it is bad to try to learn two unknowns at the same time, I picked the Lisp code of the book "Artificial Intelligence, A Modern Approach" by Russel and Norvig. I am trying to implement it in CLOS (since I think I know Object Oriented programming well).


One advantage I have is that my partner Ravi wrote the Java code for the book and is just a phone call away to clear any doubts. In short, I have taken upon myself the task of learning the basics of Lisp and AI in the next two months. Meanwhile I also plan to "pair" with Ravi when he develops the modules that require AI knowledge for our clients.