Widget-Fu

Shelley Powers has an excellent post on design considerations when working with Ajax-y sites.  Even if you're not using Javascript extensively, she makes a number of good design points: first that HTML tables cause a layout to render much more slowly (I've disliked tables for layout for a long time, it's good to have a practical reason for this opinion), and second, that when designing a layout, content should be placed first in the page, regardless of where it's actually rendered (another reason not to do literal layouts with tables).  Shelley also takes up the issue of caching, along with a number of useful links.  The tips aren't just for UI developers, though.  Ultimately, it comes down to performance, which means that servers need to serve up the smallest possible dataset as quickly as possible:

If a widget makes a request to a server that quickly returns a small amount of data, which is simply rendered and doesn't impact on the page layout or loads, or how the page validates, it is a good widget: use it proudly; use it often. If it somehow also gracefully degrades when scripting is turned off, pet it nicely, give it a warm home, feed it chocolate and call it 'dear', 'honey', and 'my cute wittle squidgy widgey'.

— Gordon Weakliem at permanent link