Sponsorised links
This month
Vary Header for RESTful Applications at subbu.org
chance to investigate the HTTP/1.1 Vary header. As it turns out, there are interesting implications around setting or not setting this header or setting this header incorrectly. Here is my notes on the rationale behind the Vary header, and design guidelines.
Internet Explorer and cacheing: beware of the Vary - Crisp's blog
To cut a long story short: while reconfiguring my local server to match our production settings I found out that the Vary-header was the actual culprit, and that mod_gzip (a module responsible for compressing content before sending it to the client and thus saving bandwidth) added this particular header, even though we explicitly excluded images from being compressed by this module by means of a mimetype filter (images have a mimetype that matches image/* e.g. image/gif, image/jpeg and so on).
mnot’s Web log: The State of Proxy Caching
WRT Vary - Based on what Co-advisor sees as well as some of my own testing, Vary is safe in the very limited fashion that if you do a simple, one-dimensional vary, the wrong thing won't be returned.
Sponsorised links
September 2009
Chris Heathcote: anti-mega: loca london
This meant I could go from idea to implementation in about 3 hours. Nice.
Testing Google's Rich Snippets RDFa support from Philip Taylor on 2009-09-12 (public-rdf-in-xhtml-tf@w3.org from September 2009)
I tested it a bit, and it seems that what's implemented in that tool bears very little relation to RDFa. It's not simply a buggy implementation - it's not even attempting to handle RDFa remotely correctly.
August 2009
Character encoding detection for external scripts
This is (EF BB BF) C3 B6 3D 22 21 22 loaded into browsers under various labels. That happens to be properly formed ECMAScript code for all the encodings used. The bogus results for Opera9 can easily be reproduced in context of the testing script, but probably not individually from a clean cache; what's going on there is unknown. I also noted in running these tests that Opera claims "Opera supports the entire ECMA-262 2nd and 3rd standards with no exceptions" while in fact their implementation does not, the parser rejects code that follows the IdentifierStart :: UnicodeEscapeSequence production of ECMA-262 section 7.6. Instead it implements Opera-only extensions, like comma-free arrays ala [ 1 2 3 ]. Other fun facts include: IE does not implement onload for iframes and cannot modify the innerHTML or tr elements; Firefox ignores "tags" when setting the innerHTML of dynamically created tr elements with no ownerElement... Oh and Opera again needs /th "tags" so it won't nest adjacent th elements when setting innerHTML.
Benlog » Real-world usage sometimes includes things you don’t like
know about Creative Commons’s use of RDFa to turn the Creative Commons Deed into a loosely coupled semantically aware app? And Yahoo’s implementation of RDFa in SearchMonkey? And Google’s Rich Snippets and the recently released Google Image Search with RDFa support so anyone can get their image metadata into Google Image Search? And the UK government who apparently can’t get enough of RDFa.
April 2009
indiemaps.com/blog » Lens tools and fisheye map browsing
L.A.’s Cartifact recently released Cartifact Maps, a Flash-based tilemaps viewer with custom cartography and advanced map browsing tools. The historic overlays and beautiful cartographic design are perhaps of most interest, but I’m equally impressed by their implementation of a novel map browsing UI featuring a magnifying glass or “lens tool”.
March 2009
How to Make Your Own Twitter Bot - Python Implementation | FlowingData
Following up on my post last week about using Twitter to track eating and weight, some of you voiced some interest in creating your own Twitter bot. This post covers how you can do that.
February 2009
A Lexical Analyzer for HTML and Basic SGML
a self-contained specification of a lexical analyzer that uses automated parsing techniques to handle SGML document types limited to a tractable set of SGML features. An implementation is available as well.
December 2008
py9p | Software Repo random bits of code
scrying:workshop [scrying]
Across three days, the scrying workshop will explore and construct city-wide EM phenomena within the data space domain, examining techniques of digital forensics, of signal archaeology overlapping with contemporary artistic concerns. The scrying platform, an open hardware project concerned with the design and implementation of low power (enabling long-term, solar-powered urban installation) devices interfacing code and EM practice, will be used during the workshop.
November 2008
The Circle of Standards: What is the Circle of Standards?
What is the Circle of Standards? The Circle of Standards is a three-stage cycle that enables the successful adoption and continued implementation of standards by addressing their management, related training and communication, and continual review.
How to Make Your Own Twitter Bot - Python Implementation | FlowingData
Check Email and Do Something with Messages
FXG 1.0 Specification - Flex SDK - Confluence
FXG vs SVG When initial work on an XML-based graphics interchange format began, the natural first thought was to use SVG. However, there are key differences between SVG and Flash Player's graphics capabilities. These include core differences in SVG and Flash's rendering model with regards to filters, transforms and text. Additionally, the interchange format needed to be able to support future Flash Player features, which would not necessarily map to SVG features. As such, the decision was made to go with a new interchange format, FXG, instead of having a non-standard implementation of SVG. FXG does borrow from SVG whenever possible.
September 2008
The "HTTP response with specific status code" app — Arthur Koziel’s Blog
It's interesting to see how different browsers handle responses with various status codes. For example, Safari 3.1.2 returns a "kCFErrorDomainCFNetwork" error for status code 100 and Firefox 3.0.1 offers me to download a "Untyped Binary Data" file.
Safari Web Content Guide for iPhone: Don’t Use Unsupported Technologies
The following web technologies are not supported on iPhone
May 2008
GraphPath Language
GraphPath is a little-language for analysing graph-structured data, especially RDF. The syntax of GraphPath is reminiscent of Xpath. It has a python implementation that can be teamed up with your favourite python RDF API (e.g. Redland, rdflib, or your own API).
Cocoa Packet Analyzer
Cocoa Packet Analyzer is a native Mac OS X implementation of a network protocol analyzer and packet sniffer. It is able to do basic network capturing, filter packets, analyze and display pcap files. CPA uses libPCAP for reading packet trace files and for capturing network traffic (filter expressions from tcpdump may be used).
April 2008
David Baron's weblog: Teaching to the test
We're not planning to cram a bunch of Fixes into Firefox 3 since it's almost ready, and cramming features in at the last minute risks hurting other Web standards support or hurting some of the other things that make Firefox a great browser.
oui. un discours réaliste (bien que nouveau) qui prend en compte tout le contexte. Cela me rappelle une anecdote d'une amie. Au Canada, elle pratiquait le karaté. À la fin de chaque année, elle était préparée pour passer l'examen des ceintures. Au Japon, elle a repris les cours à zéro. Le maître propose enseigne la technique et la philosophie du karaté et les individus ne se présentent à l'examen que quand ils sont prêts. C'est toute la différence entre passer le test Acid 3 avec hack ou pas, et implémenter sérieusement la technologie en étant sur de ce que l'on fait. Et je trouve, dans ce cas ci, la démarche de Mozilla et son changement de discours plutôt bien.
Regarder les communautés évoluer est toujours intéressant. Que ce soit celles du w3c ou ailleurs. Complexe. Y participer, c'est accepté d'avoir les mains sales ou alors on est un sombre ignare idéaliste.
March 2008
January 2008
librdfa - a pure C RDFa parser from Manu Sporny on 2008-01-31 (public-rdf-in-xhtml-tf@w3.org from January 2008)
librdfa is a pure C implementation of a standards-compliant RDFa parser. The library is quite easy to use (there are only 5 functions). librdfa is stream-based, very small and quite fast.
RDFa Implementation Report
This document reports on implementations of the RDFa Syntax and Processing rules [RDFa Syntax]. Such implementations are able to parse an XHTML RDFa document, and extract the embedded RDF graph in order to query, serialise, convert or process it further.
ie7-js - Google Code
IE7 is a JavaScript library to make Microsoft Internet Explorer behave like a standards-compliant browser. It fixes many HTML and CSS issues and makes transparent PNG work correctly under IE5 and IE6.
JScript Blog : ECMAScript 3 and beyond
CoolThe point is that JavaScript developers shouldn’t have to detect and workaround such issues. JavaScript should work the same across all implementations. We believe this is the first step in making JavaScript better. To make it possible to achieve such implementation conformance, the first step is knowing where the divergences are. We in the JScript team are looking into where various browser based implementations diverge, where our engine is incorrect in its interpretation of the specification, what if any de facto compatibility conventions have been reached, and the value of codifying such conventions into the standard. We’ve published the first draft of JScript Deviations from ES3 as a starting point.
