This week's book giveaways are in the iOS and Features new in Java 8 forums. We're giving away four copies each of Barcodes with iOS: Bringing together the digital and physical worlds and Core Java for the Impatient and have the authors on-line! See this thread and this one for details.
Personally, I would say you can read all the books in the world, but that doesn't make you a good programmer. I can read every book ever written on being a baseball player, but until I start swinging a bat, it's only academic.
And unless you play with a team, you're also missing out on a lot. So even if you write a bunch of code, until other developers start seeing it and critiquing it, and you start seeing other developer's code, you're only getting about 20% of the education you could.
There are only two hard things in computer science: cache invalidation, naming things, and off-by-one errors