Posts with tag: Web Design (page 2)

22 Oct 2009

We need a distributed social networking protocol…Could Opera Unite be a key?

(Written July 2007) The digital dark ages is already a reality for a lot of people who grew up with hosted e-mail services like Compuserve and AOL. A lot of those users had no choice but to accept the loss of all their received and sent e-mail when they unsubscribed, the service went under, or

[...read the post]
22 Oct 2009

Smallest valid HTML documents

HTML4 <!DOCTYPE html PUBLIC “-//W3C//DTD HTML 4.01//EN”> <title></title> <p> HTML5 <!DOCTYPE html> Smallest “useful” HTML5 document <!DOCTYPE html> <link rel=stylesheet href=site.css> <script src=site.js></script> <title>Page Title</title> <h1>Heading</h1> <p>Content… Check em if you want. To avoid problems in IE you might want an opening body tag, but you don’t need a closing one!

[...read the post]
23 Sep 2009

Chrome Frame

The idea of a plugin that replaces one browser’s rendering engine with another’s has been floating around for years. Google is going to give this crazy idea a shot with Chrome Frame. The idea is that an IE6+ user gets bugged that a site requires the Chrome Frame plugin. After she installs it, web pages

[...read the post]
28 Aug 2009

Javascript files don’t auto-update

On a panel of 4 Javascript library developers at Ajax Experience 2008, a question came up about how their libraries use browser detection. When John Resig suggested that libraries should strive for full feature detection (hardly used at all at the time) instead of browser/object detection, the other developers reacted like he was crazy. They

[...read the post]
3 Aug 2009

IE6 Lurches On

Despite popular demand, IE6 just won’t die. While I feel for front end developers who struggle with this daily, it was once much worse. RichInStyle.com maintained a comprehensive CSS bug guide (I can’t imagine the hours of work put into this) for the popular browsers around 2000 and the Navigator 4 list is two long,

[...read the post]
31 Jul 2009

The Quickening of Facebook

If you’ve used Facebook in Opera and Firefox, you might have noticed that Facebook is several magnitudes faster in FF, but this has nothing to do with FF’s speed. For FF and IE users, Facebook uses a client-side architecture called “Quickening” that basically makes a few popular pages into full AJAX applications that stay loaded

[...read the post]
4 Jul 2009

PDF readers: Help us read.

PDF articles are notorious usability disasters, with the worst being multi-column documents that require you to constantly scroll in opposite directions as you move through the columns. PDF readers should let us draw a simple path through the document (maybe zoomed out) to outline the flow of text through the article (better, it could try

[...read the post]
3 Mar 2009

You Probably Don’t Need ETag

(updated 3/4 to include the “Serving from clusters” case) As I see more server scripts implementing conditional GET (a good thing), I also see the tendency to use a hash of the content for the ETag header value. While this doesn’t break anything, this often needlessly reduces performance of the system. ETag is often misunderstood

[...read the post]
24 Feb 2009

Safari Cache-Control:must-revalidate bug

Update Apr 8 2009: Apparently this bug existed in previous Safari versions (at least back to 3.1), i.e. including “must-revalidate” in Cache-Control means Expire and max-age will both be ignored by Safari. Here’s the Apple bug, if you happen to be an employee. I created an Apple account but still couldn’t find it. Short version:

[...read the post]
10 Jan 2009

Minify getting out there

Interest in Minify seems to be picking up: Version 2.1.1 is approaching 51K downloads. This is almost 5x the total for all previous versions. More issues fixed. Several developers have cornered down bugs and submitted patches and we’re getting more experience on misconfigured servers (e.g. invalid DOCUMENT_ROOTs). There’s one particular bug I want fixed before

[...read the post]
5 Jan 2009

Hopes for 2009

In no particular order, I hope… the release of IE8 will spur organizations currently standardized on IE6 to finally bite the bullet and either upgrade their users to IE8 or move them to other browsers. Killing off IE6 (and IE7 really) will significantly decrease web development costs and reinvigorate CSS by opening up a world

[...read the post]
13 Oct 2008

Where’s the code?

Google’s free open source project hosting has been awesome for Minify, so when I was looking around for Subversion hosting for my personal code, I figured why not host it there? So here’s a bunch of my PHP and Javascript code. Hopefully some of it will be useful to people. A few PHP highlights: HashUtils

[...read the post]
19 Sep 2008

Minify 2.1 on mrclay.org

A new release of Minify is finally out, and among several new features is the “min” application that makes 2.1 a snap to integrate into most sites. This post walks through the installation of Minify 2.1 on this site.

[...read the post]
24 Jul 2008

Multibyte Input Bookmarklet

All modern web applications should be using UTF-8 encoding. For developers with English keyboards (where all keys produce 7-bit ASCII), testing web forms with multibyte characters can be a pain. You can, of course, enter Unicode characters via obscure key combinations, but using this bookmarklet may be easier: Get it You must enable Javascript! (right-click,

[...read the post]
3 Jun 2008

Pre-encoding vs. mod_deflate

Recently I configured Apache to serve pre-encoded files with encoding-negotiation. In theory this should be faster than using mod_deflate, which has to re-encode every hit, but testing was in order. My mod_deflate setup consisted of a directory with this .htaccess: AddOutputFilterByType DEFLATE application/x-javascript BrowserMatch \bMSIE\s[456] no-gzip BrowserMatch \b(SV1|Opera)\b !no-gzip and a pre-minified version of jquery-1.2.3

[...read the post]
25 May 2008

Apache HTTP encoding negotiation notes

Now that Minify 2 is out, I’ve been thinking of expanding the project to take on the not-straightforward task of serving already HTTP encoded files on Apache and allowing Apache to negotiate the encoding version; taking CGI out of the picture would be the natural next step toward serving these files as efficiently as possible.

[...read the post]
27 Mar 2008

Minifying Javascript and CSS on mrclay.org

Update: Please read the new version of this article. It covers Minify 2.1, which is much easier to use. Minify v2 is coming along, but it’s time to start getting some real-world testing, so last night I started serving this site’s Javascript and CSS (at least the 6 files in my WordPress templates) via a

[...read the post]
22 Dec 2007

Awesome Holiday boredom

88 I got: A, ABBR, ACRONYM, APPLET, AREA, B, BASE, BASEFONT, BIG, BLOCKQUOTE, BODY, BR, BUTTON, CAPTION, CENTER, CITE, CODE, COL, COLGROUP, DD, DEL, DFN, DIR, DIV, DL, DT, EM, FIELDSET, FONT, FORM, FRAME, FRAMESET, H1, H2, H3, H4, H5, H6, HEAD, HR, HTML, I, IFRAME, INPUT, INS, ISINDEX, KBD, LABEL, LEGEND, LI, LINK, MAP,

[...read the post]
9 Oct 2007

LoadVars implements HTTP caching

Searching for info about Flash’s caching mechanism turned up endless posts on how to prevent caching, but none mentioned how LoadVars.load() handled server-sent Cache-Control headers. So I tested this myself. In the SWF, I loaded the same URL once every 5 seconds using setInterval() and LoadVars. The URL ran a PHP script that sent content

[...read the post]
18 Jul 2007

Actionscript pains

I have an Actionscript 3 book lined up to tackle at some point, but generally my interaction with Actionscript is having to modify someone else’s SWF, most commonly old code from the 1.0 days. When I open one of these source files it sometimes takes time to even figure out where the code is. When

[...read the post]