Title: Defensive Design for the Web
Author: 37 Signals
Rating: ★ ★ ★ ½
Publisher: New Riders
Copyright: 2004
Pages: 246
Keywords: programming, web
Reading period: 23 December, 2007 - 9 January, 2008
This book contains 40 usability guidelines for websites,
ranging from
Eliminate the Reset button and
disable the Submit button after it's clicked to
Give an error message that's noticeable at a glance to
Be upfront about item unavailabiity.
The topics include error messages, clear instructions,
friendly forms, overcoming missing pages, helpful help,
obstacles to conversion, and search.
When I state them that baldly, they sound obvious.
But they're not.
The 37 Signals guys have amply illustrated each guideline
with examples of sites that violated the guideline,
and …continue.
Title: Ajax Design Patterns
Author: Michael Mahemoff
Rating: ★ ★ ★
Publisher: O'Reilly
Copyright: 2006
Pages: 352
Keywords: web, ajax
Reading period: 29 October-?? November 2007
Title: Bulletproof Web Design, second edition
Author: Dan Cederholm
Rating: ★ ★ ★ ★ ½
Publisher: New Riders
Copyright: 2007
Pages: 312
Keywords: css, web
Reading period: 10-29 October, 2007
Cederholm clearly explains the CSS techniques required to build a
"bulletproof" website: one that is robust in the face of
text resizing, window resizing, disabled images, etc,
with minimal, semantically correct markup that works across
all the major browsers.
Anyone who's serious about building a modern website should read this book.
Cederholm builds up his examples, one step at a time,
in a clear manner. For the shorter examples, he tends to show
the entire CSS or XHTML again and again, with the latest changes
highlighted …continue.
I've grown fond of the JavaScript || idiom:
function FrobImage(img) {
var width = img.width || 400;
var height = img.height || 300;
// ...
}
FrobImage({height: 100, name: "example.png"});
If img.width exists and it's truthy,
then width = img.width; otherwise, width = 400.
Here, it will be 400 since the img hash
has no width property.
More than two alternatives may be used:
x = a || b || c || ... || q;
A few weeks ago, while cleaning up the error handling in some batch files,
I came across a similar idiom:
foo.exe bar 123 "some stuff"
…continue.
Picture this.
An external USB hard drive plugged in to a machine running Win64.
The OS has virtualized the underlying transport so that it's
essentially indistinguishable from an internal IDE, SCSi, or SATA drive.
Call the machine, Boss, and the USB drive, L:.
Boss is running Virtual PC, which is hosting a 32-bit virtual machine
on top of Boss's 64-bit OS.
Let's call the 32-bit VM, Sidekick.
Sidekick is not only a VM, but a virtual network host.
Boss is bridging connections to Sidekick, and
Sidekick and Boss both appear on the LAN as separate network hosts.
The USB drive has several ISO images, which Sidekick wants to use.
Sidekick connects to …continue.
I've been meaning to play around with Greasemonkey for a couple of years.
Greasemonkey is a Firefox extension that allows users to install
scripts that make on-the-fly changes to the look and feel of third-party websites.
For example, adding price comparisons to Amazon
or thumbnail images to Google search results.
UserScripts.org has a large repository of Greasemonkey scripts.
I finally built my first script the other day.
We're putting together a new feature at Cozi that integrates
partner websites with our site.
Since the feature is not yet announced, I'll just say that partners
will add a link to Cozi on many of their database-driven pages.
That link has a complex, …continue.
Title: Pro JavaScript Techniques
Author: John Resig
Rating: ★ ★ ★ ½
Publisher: Apress
Copyright: 2006
Pages: 347
Keywords: programming, javascript
Reading period: 16 September-4 October, 2007
At Cozi.com, we use the jQuery JavaScript library to do all kinds of
complex and wonderful DHTML and Ajax tricks in our web client.
Extremely powerful, very elegant: I commend it to your attention.
John Resig is the lead developer on the jQuery team.
This book is not about jQuery, though if you work your way through it,
you'll be well equipped to understand the jQuery source code.
This book covers modern JavaScript techniques,
in particular, object-oriented JavaScript,
unobtrusive DOM manipulation, Ajax, and cross-browser warts.
It covers a lot …continue.
Title: RESTful Web Services
Author: Leonard Richardson, Sam Ruby
Rating: ★ ★ ★ ★ ½
Publisher: O'Reilly
Copyright: 2007
Pages: 419
Keywords: programming, web services, REST
Reading period: 22 August-8 September 2007
Anyone who has attempted to build a Web Service
has come away scarred by the complexity of all the WS-* standards.
Heavyweight standards that in many ways reinvent
earlier distributed object technologies like CORBA and DCOM,
providing Remote Procedure Calls over HTTP.
The promised interoperability hasn't really happened:
a web service built with one stack of tools may or may not be
consumable by another stack.
A movement has arisen in the last few years,
arguing for RESTful Web Services:
lighterweight services built on top …continue.
This week, I have written code in C#, C++, Managed C++, C, WiX, NAnt,
ActionScript, VBScript, JScript, cmd batch, NMake, HTML,
XSLT, and Ruby. And I will probably get some Python in before the weekend
is over. <boggle/>
I want to be able to write some reviews and graphically rate them with stars.
I put together some transparent stars in Gimp and added a macro to dasBlog.
I'm going to rate this effort:
$stars(4.5)
To get this effect, I simply wrote $stars(4.5).
(And I had to carefully construct the previous sentence so
that dasBlog wouldn't invoke the stars macro.)
I'm hardnosed. I rarely give 5/5 to anything. I don't really expect to need
the half stars, but I may want that fine control at some point.
To use this in your own blog, download the zipfile of star images.
Copy 5star*.gif to your blog's images directory.
The *.xcf files …continue.
Previous »
« Next