I'm in my first job, I've been doing this for almost 2 years now. Everything about this place screams "Mediocrity". Most of my coworkers are middle-aged programmers with average skills and no hope of ever becoming anything beyond average. All they want to do is work their 9-5 hours (in all fairness most of them stay until 6), and daydream about the next way to spend their 35day/year vacations (not to mention the ~20 days of public holidays. Yay France!).
I'm not satisfied, a better word would be "fulfilled" at work. I am the youngest of a 50+ programmer team, (not-so-)freshly graduated and I'm regarded as the best dev on the team. Because I love programming, because I don't want to stop learning, because I care.
The only thing that's kept me going for so long is the 2-3 hours of "real" programming I put in every evening. So far my gf's being very comprehensive about that, but I know things will change when kids will come into play. One of the main reasons I read HN is to remind myself that interesting, fulfilling jobs do exist. One day...
This might be true for some, but there are plenty of reasons why someone may be completely satisfied with their work while also wanting to program extensively in their free time.
Anecdotally, I find that I program the most in my freetime when I am feeling the most fulfilled at work, which would seem to be the opposite of what you describe. That said, rather than just use myself as an example, I can think of other scenarios where individuals may like to program a lot outside of work:
Some pople enjoy entrepreneurship but also desire and/or require the stability and benefits of working for someone else. In that case, they may use their free time to build products of their own.
Some people enjoy much different levels of "hacking" than what you could find at a single work place. They may be someone who is primarily interested in the work they do, so they are eager to put in 40 hours doing it. But then when they get home, they might like to do something entirely different. Maybe they make mobile productivity apps in Objective-C, but in their free time they like to hack up algorithms for AI opponents for board games in Lisp.
Still others may be in a position at work that while they do program, they also thoroughly enjoy the responsibilities for and time they must dedicate to managing teams or training individuals. Those things, rewarding as they may be, mean that there are just not enough hours in a single work day for the individual to get their fill of programming, so they do it in their free time as well.
And some may just like the social aspect of being active open source contributors. They may program really innovative and cool stuff at work, but the choose to do some more mundane open source stuff in their free time because they like collaborating and contributing back to projects that have helped them get to the point where they are today.
That wouldn't surprise me, because the distribution of development work that companies need done is very different from development that is fun. CRUD apps are often necessary to the business, and tolerable if you enjoy programming, but not terribly good at satisfying intellectual curiosity.
I'm satisfied with my work, but I also realize that because of the industry that I'm in (low-level embedded), I'll be writing about 90% of code in C. So if I want to dabble in something else, then I'll be doing it on my own time.
Work can't satisfy everything. I enjoy making useless things, sometimes! I enjoy owning a project entirely. I enjoy helping friends. It's okay those itches aren't scratched by work, because work pays me.