It's certainly good for beginners who are looking to get into competitive programming. The problems can be somewhat challenging to someone not familiar with algorithms or computer science fundamentals I think. The code for solutions often isn't complex at all, but they typically involve applying some sort of algorithm to a made-up (often funny) real world problem. You're not building a to-do list app, you're writing algorithms.
It's sort of like a word problem in high school math. The math itself is often just addition and multiplication, the hard part is figuring out which math to use and which numbers to apply it to.
All of the old problems are on the CodeJam website though so you can go check them out and give them a go!
That is one of them! :) To be honest, I bought "Authority" but never got around to reading it - I am not an ebook author myself so just put it aside until one day I decide to write a book.
The other books of his that I found very useful (and inspirational) are "The App Design Handbook" and "Designing Web Applications". They are here: http://nathanbarry.com/books/