Showing posts from February, 2009

Beta Safari 4.0 web browser is fast

With a new Javascript runtime, this browser does seem to be a lot faster with Javascript-rich sites. Try it yourself, but one warning: it overwrites your Safari 3 installation but the uninstall program works fine (I have done two complete install/uninstall cycles with no problems). My computer use time is increasingly in the browser now, except for doing software development, some writing, and editing photos and video. Having a "snappier" web browser experience is great!

Google’s canonical link tag

This is a good idea and I am glad that other search engine vendors are going to support it: allow dynamic web portals to specify a single URL for search engines to use for indexing dynamically generated pages that might have a URL, for example, ending with cruft not required to identify a specific web page (this is one of Google's examples): product.php?item=swedish-fish&trackingid=1234&sessionid=5678 The point is that it is better for search engines to not have many links pointing to the same page and in this example allow a header providing metadata to search engine indexers to use a shortened and common URL like product.php?item=swedish-fish Again using Google's example, here is the addition to a HTML head element to make this happen: <link rel="canonical" href="" /> This obviously saves the search engine companies resources (money!) and makes the user experience better by not having to w

The Sinatra web app DSL rocks

I had experimented with Sinatra several times before but today I really got into it. Setting up routes, handling GET/POST/PUT/DELETE, etc. takes very little code. I am only using Sinatra for publishing REST style web services (my own SPARQL endpoint server - I usually use the full Sesame library and web portal stack, but I wanted something leaner and more hackable).

Bruce Perens on the GNU Affero General Public License

How often do you read something that you totally agree with? Bruce Perens wrote an article that summarizes my own views perfectly. His take that the Apache 2 (gift), GPL 3 (force people to share), and the LGPL 3 (an "in between" license) that cover the spectrum of licensing requirements sounds right to me. I also agree that the GNU Affero General Public License covers an important need: force companies who only provide web services to also share back with the community. When I get some free time (maybe by this May) I want to persue an open source business idea, and the AGPL 3 fits my needs perfectly. Variety and competition are great for improving technology but I agree with Bruce that it may be time to consolidate to fewer open source licenses.

Web 3.0: not just Semantic Web and Linked Data, also interop on languages and platforms

I am working on a 'Web 3.0' book so I am having a lot of fun and extending my own knowledge on linked data and other Semantic Web technologies. However, when thinking about the evolution of the web, I don't think that distributed semantically enabled data stores are anywhere near to the whole story. The evolution of the web now coincides with a very large change in our world-wide society: a move to what I call the "great frugality" of value/production based society and economic systems. While I look forward to a world wide shift towards increased emphasis of local infrastructure (definitely food production, and when possible light manufacturing), the evolving web is what can still keep us connected both to friends and colleagues with the same interests and to potential business partners, no matter where we live. A big part of a shift towards a value/production based Web 3.0 that combines material for human readers and linked business software systems is the reduct

More work on migrating to Ruby 1.9.1

I have everything running under Ruby 1.9.1 on my development system that I need. I may upgrade/migrate my production servers to version 1.9.1 in a week or two if everything continues to go OK. The last problem that I worked around was a problem in Rails/webrick in dealing with headers+bodies if the bodies contained binary data. I locally patched webrick ( my Google groups post ). I can't get mongrel to build with Ruby 1.9.1 so that is an issue since I usually deploy using nginx + mongrel(s) + memcached.