2010 Apr 22, 10:26HTML5 has some notion of a 'null' origin. Not sure how this actually plays out though.
w3c site-of-origin null web browser application html html5 technical 2010 Apr 15, 1:52Gmail now allows you to drag and drop files to make them attachments. This is HTML5 drag and drop plus file API. Awesome
html html5 gmail google file drag-and-drop technical 2010 Apr 1, 2:42Its like a better version of what I was doing with my Web Frotz Interpreter. Its all client side javascript, HTML, & CSS to play Z-machine based interactive fiction games. They even do the saved
game in a URL piece.
if interactive-fiction game web browser webapp 2010 Mar 26, 5:16Interesting point that web browsers block HTML FORMs from submitting to some ports in order to avoid malicious servers from getting clients to do their dirty work. Of course it requires the host on
the other side of that port to be able to interpret the HTTP request as something relevant to the protocol they actually expect.
security web browser ie http html form technical 2010 Mar 18, 7:15This article describes the largest problem with the Acid3 test: "Acid3 often didn’t test things web authors wanted, but instead it tested things that were broken or not implemented regardless whether
anyone truly cared."
acid3 web browser html dom test technical 2010 Mar 12, 1:28
It was relatively easy, although still more difficult than I would have guessed, to hook my bespoke website's Atom feed up to Google Buzz. I already have a Google email account and associated
profile so Buzz just showed up in my Gmail interface. Setting it up it offered to connect to my YouTube account or my Google
Chat account but I didn't see an option to connect to an arbitrary RSS or Atom feed like I expected.
But of course hooking up an arbitrary Atom or RSS feed is documented. You hook it up in the same manner you
claim a website as your own via the Google Profile (for some reason they want to ensure you own the feed connected to your Buzz account). You do this via Google's social graph API which uses XFN or
FOAF. I used XFN by simply adding a link to my feed to my Google profile (And be sure to check the 'This is a profile page about me' which ensures that a rel="me" tag is added to the HTML on your
profile. This is how XFN works.) And by adding a corresponding link in my feed back to my Google profile page with the following:
atom:link rel="me" href="http://www.google.com/profiles/david.risney"
I used this
Google tool to check my XFN
connections and when I checked back the next day my feed showed up in Google Buzz's configuration dialog.
So more difficult than I would have expected (more difficult than just an 'Add your feed' button and textbox) but not super difficult. And yet after reading this Buzz from DeWitt Clinton I feel better about opting-in to Google's Social API.
technical atom google buzz rss social 2010 Mar 12, 2:32Google's indexer now examines HTML5 microdata and they provide a tool to test out your pages microdata
html html5 google search microformats metadata rdf technical 2010 Mar 11, 3:39How to do audio & video in the latest version of Opera
html5 html video audio opera web browser technical development reference 2010 Mar 11, 3:33"The headers and captions on http://diveintohtml5.org/ use an open source font called "Essays 1743." The creator of that font was looking for a tutorial on HTML5, came across my site, and was
pleasantly surprised to see his own work on prominent display. He now wants to update his font to include stylistically appropriate Unicode arrows, which I will then use with my captions.
The internet is awesome. It's so wonderfully intertwingled."
html html5 mark-pilgrim font technical 2010 Mar 10, 5:19Covers same origin policy and how it applies to different HTML and HTTP features.
technical web browser javascript csrf ajax html security xss XMLHttpRequest 2010 Mar 10, 3:40Notes on the features and performance of an HTML minification tool.
html javascript performance toolweb minifier web technical 2010 Mar 5, 10:21Document explaining the relationship between the various web storage APIs coming out of HTML 5. To summarize:
Web Storage (aka DOM Storage) - simple key/value pairs API.
WebSimple DB API - now called Indexed Database API.
Indexed Database API and Web SQL Database - competing database APIs.
Application Cache - Storage of HTTP resources for offline apps.
DataCache API - A programmatically modifiable Application Cache.
html html5 standard programming technical wiki w3c database storage web 2010 Mar 2, 5:25HTML5 Contacts API allows HTML pages access to a user's contacts info.
contact business-card html html5 api javascript technical w3c reference 2010 Feb 28, 2:41"The complete set of HTML elements is the set of elements described in the following sections."
technical reference html html5 w3c web 2010 Feb 26, 8:40
I'm making a switch from the IE team to the Windows team where I'll be working on the next version of Windows. As a going away surprise Jen and Nick added me to my gallery of Bill Gates (discussed previously). Here's a close up of the photoshopped cover.
Before:
After:
microsoft bill gates photoshop windows 2010 Feb 22, 3:19Cristian Adam has created a HTML5 Video plugin for IE. Cool!
html html5 video plugin ie7 ie8 ie technical web browser cristian-adam 2010 Feb 21, 2:58Basics of the EPUB format.
epub book ebook html css xhtml technical 2010 Feb 5, 8:00Font stats on Mac and PC respectively.
font statistics html css web design typography via:kris.kowal 2010 Jan 29, 3:54
Raymond Chen has some thought experiments useful for discovering various kinds of stupidity in software design:
Tim Berners-Lee's principles of Web design includes my favorite: Test of Independent Invention. This has a thought experiment containing the construction of the MMM (Multi-Media Mesh) with
MRIs (Media Resource Identifiers) and MMTP (Muli-Media Transport Protocol).
The Internet design principles (RFC 1958) includes the Robustness Principle: be strict when sending and tolerant when receiving. A good one, but applied too liberally can lead to interop issues. For instance, consider web browsers.
Imagine one browser becomes so popular that web devs create web pages and just test out their pages in this popular browser. They don't ensure their pages conform to standards and accidentally end
up depending on the manner in which this popular browser tolerantly accepts non-standard input. This non-standard behavior ends up as de facto standard and future updates to the standard
essentially has had decisions made for it.
technical design principles software development