A thousand times this. If you can't get someone to pay you to improve yourself, do it anyway. "I contributed significant patches to Major Open Source Project" sure as hell counts as experience to any hiring manager. Programmers have it damn easy compared to a lot of people - we don't have to be hired to get experience, and the barrier to entry to practicing our trade is non-existent. If you download a programming language installer and a text editor, you can get experience.
Find something you're passionate about, and work on it. For example, in the WoW community, there are a lot of people writing addons for the game. They don't have any appreciable economic value, they aren't world-changers, they aren't the Next Great Instant Millionaire idea, but I've personally seen dozens of people hired out of the community because of their hobby work (and I've gotten probably 6-8 job offers as a result of my similar work). As it turns out, there are Real World Problems to solve behind the shiny game veneer, and that counts for a lot.
It doesn't have to be a game. It can be a Javascript physics engine, or a database driver bugfix, or an experimental compression algorithm, or anything. Find something on GitHub you're interested in, take a look at the issues list, fork the repo, write tests, fix the issue, push your code, and issue a pull request back. Congrats, you're now a bit smarter and a bit more experienced. Repeat. In no time, you're going to have experience and perspective that will blow away the 98% of your hiring competition that you used to belong to.
Find something you're passionate about, and work on it. For example, in the WoW community, there are a lot of people writing addons for the game. They don't have any appreciable economic value, they aren't world-changers, they aren't the Next Great Instant Millionaire idea, but I've personally seen dozens of people hired out of the community because of their hobby work (and I've gotten probably 6-8 job offers as a result of my similar work). As it turns out, there are Real World Problems to solve behind the shiny game veneer, and that counts for a lot.
It doesn't have to be a game. It can be a Javascript physics engine, or a database driver bugfix, or an experimental compression algorithm, or anything. Find something on GitHub you're interested in, take a look at the issues list, fork the repo, write tests, fix the issue, push your code, and issue a pull request back. Congrats, you're now a bit smarter and a bit more experienced. Repeat. In no time, you're going to have experience and perspective that will blow away the 98% of your hiring competition that you used to belong to.