Seven Languages in Seven Weeks - pragmatic programmer bookshelf