Archive for January, 2006

Embedding RDF into XHTML

Tuesday, January 31st, 2006

RDF/A Primer 1.0 is an effort to allow embedding RDF into XHTML. To me, this problem of “How do I get my RDF into my web pages?” is only second to creating a friendly RDF XML format. Solve these two problems and you’ll immediately see a greater adoption of semantic web technologies.

> RDF/A is a set of attributes used to embed RDF in XHTML. An important goal of RDF/A is to achieve this RDF embedding without repeating existing XHTML content when that content is the metadata. Though RDF/A was initially designed for XHTML2, one should be able to use RDF/A with other XML dialects, e.g. XHTML1, SVG, given proper schema additions.

From what I could see, this is a simple way to add more semantics to your web page. It doesn’t appear that the authors explicitly mention how to get the semantics out of the document, though. However, I’ve never been too fond on GRDDL and it’s use of XSLT so hopefully RDF/A will provide an easier metadata extraction technigue.

Google’s BigTable

Monday, January 30th, 2006

Andrew’s Website has a very interesting writeup on Google’s BigTable, their system for storing large amounts of data in a semi-structured manner.

> BigTable has been in development since early 2004 and has been in active use for about eight months (about February 2005). There are currently around 100 cells for services such as Print, Search History, Maps, and Orkut. Following Google’s philosophy, BigTable was an in-house development designed to run on commodity hardware. BigTable allows Google to have a very small incremental cost for new services and expanded computing power (they don’t have to buy a license for every machine, for example). BigTable is built atop their other services, specifically GFS, Scheduler, Lock Service, and MapReduce.

There’s some audio available, too.

Java.net App Hosting

Monday, January 30th, 2006

Hong Zhang’s Blog mentions that java.net is now hosting J2EE applications for free through LocalWeb. Here’s the quote that scares me:

> The actual deployment of an application is done by a small team of engineers from Sun.

Yikes. Even with all the deployment descriptors, it takes “a small team” to host and deploy a single J2EE application. There’s something wrong with that.

I’ve always said that deploying Java applications is Java’s Achilles Heel. The LAMP community mocks Java not necessarily because the language is more verbose, but because it’s so dang hard to deploy the applications. Compare with PHP, which is as easy as editing the file and then hitting reload in your browser. That’s nearly impossible with a full J2EE application. So many libraries have memory leaks that play havoc with classloaders that a full application server restart is required.

In any case, this is one of the main reasons I’ve been moving to Rails. I can deploy an application in no time (especially when using SwitchTower).

Waterfall 2006 - International Conference on Sequential Development

Saturday, January 28th, 2006

Waterfall 2006 - International Conference on Sequential Development

> After years of being disparaged by some in the software development community, the waterfall process is back with a vengeance. You’ve always known a good waterfall-based process is the right way to develop software projects. Come to the Waterfall 2006 conference and see how a sequential development process can benefit your next project. Learn how slow, deliberate handoffs (with signatures!) between groups can slow the rate of change on any project so that development teams have more time to spend on anticipating user needs through big, upfront design.

This is a must-attend conference. Don’t miss sessions like wordUnit: A Document Testing Framework and Introduction to Dogmatic Programming.

Trend Lines and Regression Lines

Friday, January 27th, 2006

Regression: Fitting Functions to Data shows us how to create trend lines, or regression lines. These lines are very popular in graphs, helping to visualize the trend of the data.

> …we see how to obtain a linear or exponential model from two data points: we only need to find the equation of the line or exponential curve passing through them. However, it often happens that we have many data points that don’t quite all lie on one line or exponential curve. The problem then is to find the line, exponential curve, quadratic curve, or what have you coming closest to passing through all of the points. the relationship between price and demand, or cost. In this interactive module, we discuss how we can come up with such a model.

Web 2.0 Validator

Friday, January 27th, 2006

The Web 2.0 Validator tells you just how cool your web site is.

> The validator came to life as the result of some goofing around, and was primarily intended to provide some amusement. But the implementation is itslef an exploration into some of the themes that seem to pop up around the Web 2.0 meme.

Using simple rules like “Does the site mention Ruby?” and “Does the site use AJAX?”, this validator will give your web site a score based on how Web 2.0 it is.

The rules for Web 2.0 compliance are written by the community, using simple bookmarks on del.icio.us. Now that is Web 2.0.

SPARQL Protocol

Thursday, January 26th, 2006

> SPARQL is a query language and protocol for RDF. This document specifies the SPARQL Protocol; it uses WSDL 2.0 to describe a means for conveying SPARQL queries to an SPARQL query processing service and returning the query results to the entity that requested them.

Of interest is that there are HTTP bindings specifically mentioned in the WSDL 2.0 document.

Developers Guide to Semantic Web Toolkits for different Programming Languages

Wednesday, January 25th, 2006

Developers Guide to Semantic Web Toolkits for different Programming Languages

> This guide collects Semantic Web toolkits for different programming languages and gives an overview about the features of each toolkit, the strength of the development effort and the toolkit’s user community.

EulerMoz - Inference Engine in Javascript

Wednesday, January 25th, 2006

EulerMoz is an inference engine written in Javascript. Based on the original Euler proof mechanism.

> EulerMoz is an inference engine supporting logic based proofs based on EulerSharp project.

Internationalize Rails

Tuesday, January 24th, 2006

Globalize

> Globalize is a Ruby on Rails plugin designed to support multilingual applications. It’s under the MIT License, same as Ruby on Rails.