March 16, 2005

'Just' use HTTP

Writing about web page

Sam's slides are all online so I don't need to annotate everything. Everyone who develops web apps should read them

  • understand unicode: it is an attractive nuisance . Inexperienced developers will screw it up. c.f. the recent (p)unicode domain name hijacking bugs in mozilla

  • The default encoding for HTML is iso-8859–1, for XML it's utf-8. This is why you can't put HTML directly into RSS, win-1282 (the default enctype on windows) isn't compatible with either (27 differences, mostly around quotes and the euro symbol)

  • URIs: Encoding is not defined – it's up to you to document yours clearly to your clients. Equality of URIs is not well-defined; the CLR uri.equal method is broken.

  • layering is problematic e.g. the rules for encoding a URI don't apply in an XML document (can't encode a ~ as %7e )

  • RSS/Atom: Lots of unanswered questions / ill-defined points in the spec

  • Layering is the problem, not the solution. Layered designs inherit the bugs from all layers.

Q: If everything is broken, how come it still works? A: because people are very fault-tolerant. The more machine-machine communication you have the more problematic it becomes.
Q: Are web services genuinely better than HTTP, or just newer? A: because the client stacks have (sometimes) been written with the spec to hand, they're generally more reliable.
Q: How do you avoid the attractive nuisance problem e.g. when writing the atom spec? A: make the spec force people to think about the problems e.g. by specifying the content-encoding for specific element types.

- No comments Not publicly viewable

Add a comment

You are not allowed to comment on this entry as it has restricted commenting permissions.

Most recent entries


Search this blog

on twitter...


    Not signed in
    Sign in

    Powered by BlogBuilder
    © MMXXI