There is a fine tactic regarding pacing yourself as a developer/engineer - and this is part of it. I think this really helps stave off boredom, especially the kind that might lead someone to want to quit. Sometimes this isn't possible, such as when you're being micromanaged, in which case, it's clear the employer has no interest in you growing your skill, learning, or becoming more valuable.
Oh, I'm aware. I always have very specific stipulations put into my employment contracts.
Regardless, I never write anything of worth for those side projects -- mostly experimental things, or using new languages/frameworks I had never tried.
It's more complicated than that, it also has to be "not along the lines of business of your employer".
That phrase can mean different things for different employers. If you work at Morgan Stanley then doing a social bookmarking tool in your spare time is probably fine, if you work at Intuit then doing an iPhone game is probably fine. If you work at Google then everything is potentially problematic, as Google has a knack for poking its head into any line of business imaginable.
If I'm finishing all my rote work within regular day, at previous jobs I've started working on stupid side projects.
A physics engine in Lua, a maze generator in PyGame, and so on.