Thursday, September 29, 2005

Sakai Developers Meeting

Monday and Tuesday of this week I spent at a Sakai Developers meeting in Cambridge organised by CARET. It was an interesting couple of days and I got to see a little into the world of Sakai. They are progressing along nicely and it seems that they are getting adopted at an institution level in quite a few places.

Wednesday, September 28, 2005

Tea Towel Holders


Cloth Holder
Originally uploaded by buckett.
I got these as a christmas present last year, they are simply the best tea towel holders I have ever seen. Inside the wooden jaws is a small marble that can move vertically. You just slide in the tea towel and the marble falls down and you can let go and the weight of the towel wedges the marble onto the towel holding it in place. Then to remove you just pull upwards and sideways and the towel comes out. Beautifully simple.

Friday, September 16, 2005

Tomcat Security and Development

Often when I am doing development with Bodington on Tomcat I have very little security enabled in the application so that I can easily login and so on. To slightly improve things I always make sure my development version of tomcat is only listening on the loopback interface. Todo this you just edit the connector section of your server.xml file: <Connector port="8080" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" debug="0" connectionTimeout="20000" disableUploadTimeout="true" address="127.0.0.1" /> adding in the address bit, then only people on your machines will be able to access the tomcat web server. Just remember demoing things to other people becomes a little harder.

Thursday, September 08, 2005

PostgreSQL and datetime

I have just been looking at getting an old copy of Bodington to install. I wasn't even after having a working version, just a complete database schema so that I could see how the schema had changed between versions. I tried installing a WAR on my desktop box but it seemed to be failing when trying to create a table with a column type of datetime. Looking in the PostgreSQL 7.4 documentation for date types I found that datetime was no longer a supported date type (is was in 6.x). However after a bit of Googling I found that you can alias a type by creating a domain, eg:
upgrade=# \h CREATE DOMAIN
Command:     CREATE DOMAIN
Description: define a new domain
Syntax:
CREATE DOMAIN name [AS] data_type
    [ DEFAULT expression ]
    [ constraint [ ... ] ]

where constraint is:

[ CONSTRAINT constraint_name ]
{ NOT NULL | NULL | CHECK (expression) }

upgrade=# CREATE DOMAIN datetime as timestamp;
CREATE DOMAIN
Creating this domain means that the database now thinks a datetime is the same as a timestamp and doesn't complain when it is asked to create a table containing one. Later versions of Bodington have the SQL changed so that it doesn't attempt to create timestamps, but people will probably see this bug if they try a new copy of Bodington with a very old PostgreSQL database.

Bodington 2.6

A little late but finally a new Bodington Release has been made. This release adds some new tools and fixes a few bugs, a fuller description is available in the release notes on SourceForge. Now onto working on Bodington 2.8!

Saturday, July 16, 2005

Wireless Networking and Walls

One problem with having too much PC junk lying around is finding somewhere to plug it in. One piece of hardware I have had a problem finding a home for is my Linux server. It's only a small desktop PC that normally runs headless but it still produces too much noise to put anywhere in the house. However we do have an outhouse (old outside toilet) which has mains power in it. So my first plan was to connect to the the PC to the wireless network we have at home. I had a spare wireless card which I installed in the PC and then tried to get a signal. I could sometimes see the acess point but I couldn't manage to get a reliable connection no matter how I positioned the antenna. Moving the access point was also not an option because it is an intergrated access point and ADS router and I don't have a phone socket in a better position. Then I had the idea to look at powerline networking (networking over mains), commonly known as homeplug and discovered that they have now come down to acceptable price (20 pounds per adaptor). After a little bit of research I opted for a pair of Acer Homeplug Adaptors from eBuyer. When they arrived I plugged them in they it just work, so now I happily have a reliable network connection between all my PCs.

Friday, July 15, 2005

del.icio.us and Bodington

The current trend in the Bodington community is to try and incorporate preexisting services into Bodington rather than building the extra functionality into Bodington. The hope with this design is that these services can then be interchanged at a later date without too much disruption to the VLE. I have a little bit of experience in this area from the work I did on the Ramble Project which looked at intergration of blogs into a VLE. In Ramble an external blog server was used to provide most of the functionality and then a little bit of code was written for the VLE to allow them to work together. One tool that I think has the possibility for intergration is in the area of social bookmarking. The service leader in this area at the moment is del.icio.us which provides the user with the ability to bookmark URLs and access previous bookmarks from any internet connected PC. My idea is provide the ability for users of Bodington to be able to create a "Social Bookmark Resource" which uses del.icio.us to store all of the data behind the scenes. The way I would do this is del.icio.us uses the concept of tagging where every URL that is bookmarked is tagged with one or more keywords that the user decides are related to the content of the page. So I might tag the URL http://www.crockford.com/javascript/ with the tags javascript, programming & web. Now although most of the tags people use are common there is nothing stopping me from creating a unique tag and this is how I would build the intergration with Bodington. When someone decides to create a "Social Bookmark Resource" in Bodington it has a id associated with it and this combined with the web address provides a unique tag. For example if I create a resource in Bodington at http://test.bodington.org/bodington/site/myfloor/bookmarks and this resource gets the ID of 342234 then any bookmarks that want to be added to this resource should be tagged with 342234@test.bodington.org del.icio.us then provides an API through which queries can be made and using this Bodington can ask del.icio.us for all the bookmarks that are tagged with 342234@test.bodington.org and these can then be rendered within Bodington. This means users who are already using del.icio.us can contribute through thier existing accounts and have the entries they add also show in thier own bookmarks.