The difference between smart quote and apostrophe

Improper use of “smart quotes” (aka “slanty quotes”, “curly quotes”) came up in a code review. Get Smart with Smart Quotes was a great resource.  Here are some quick take-aways:

  • Smart quotes consist of an open and a closed version (also referred to as left and right quotes).
  • Don’t confuse apostrophe () with a single quotation mark ().
  • Contractions should use the apostrophe character.
  • There are named HTML entities for smart quotes: ‘ (‘) ’ (’) “ (“) ” (”)



HTML5 boilerplate

HTML5 Biolerplate (by Paul Irish of Modernizr fame) is a nice skeleton for starting new projects. The pieces I’m most interested in and have copied from are the CSS (reset and baseline), .htaccess (MIME types, cache settings, rewrites for pretty/canonical URLs), HTML skeleton (asynchronous Google Analytics, iOS directives and touch icons, IE conditional classes).

Even if you don’t have an immediate use for these things, it’s worth a peruse to become familiar with some of the more widespread browser compatibility and performance problems, and the popular techniques to solve them.

Browser tab management

I’m one of those people that uses the browser as a todo list – there are multiple 100s of tabs open across my browsers and several computers.  These are extensions and settings that I’ve found invaluable.

Vertical Tabs

Tab Thumbnail View

These aren’t exactly tab-related, but they allow for mostly seamless hopping between browsers and between computers.

  • Password Sync for both Firefox 4 and Chrome: LastPass extension
  • Bookmark Sync for both Firefox 4 and Chrome: Xmarks extension

Intel RAID5: pretty much worthless

I have a co-located server with a 3-disk RAID5 array (Intel ICH8 controller).  Things seemed fine when I was setting up the server – pull a disk drive, re-insert, volume rebuilds, everything keeps working.

What I didn’t test though is how degraded the performance is while rebuilding.  A disk array that was getting 100MB/s reads during normal operation is now getting < 1MB/s reads while rebuilding, and my database application can’t complete requests at that speed.  To add insult to injury, the completely idle server with all disks healthy takes over 100 hours to rebuild a 2TB volume (~5.8MB/s).

Googling reveals dozens of similar horror stories with Intel RAID5 rebuilding.  Do yourself a favor and rule out Intel’s RAID5 if you care about usable uptime.

Edit: I’ve changed to a 2-disk software RAID1 and am getting 80MB/s read during rebuilds.