I disagree, it is great for smaller machines. You can periodically attach your external storage and send incremental snapshots there; or to a server if you've got one. Local snapshots give you the time machine like features that sparked this discussion, along with rollback (+forward if you like) on your updates.
For the failing drive in a laptop/single drive pool scenario, I use a dock adapter* to plug in the new hard drive, turn the pool into a mirror (zpool attach pool vdev ; (+do whatever your OS needs to boot off it)), wait for it to resilver, power off, switch the drives and then detach the now missing faulty device. Exactly the same process to expand to a larger drive (+one more reboot).
* Get USB 3 or eSATA or you will be there for days