The various different parts of this complex protocol and its subcomponents are explained very thoroughly and easily maFantastic book by all measures!.
The various different parts of this complex protocol and its subcomponents are explained very thoroughly and easily make you understand how it's implemented, and it's role in the OAuth dance(as the book refers to it)
The book shines in where you build all of the subcomponents in the protocol. Which is enough to give a solid understanding of how things are, and how you can implement them. The code examples shown however, were using outdated JavaScript syntax. ECMAScript seems to not have been acknowledged, which is my only point in reading this book, the code samples were not the best, and i wouldn't write mine in the same way.
It backs away to discuss the gotchas within the protocol and how to combat them.
This books contains some interesting ideas, some make sense.
The parts i liked about the book is how the author points out Complexity and Obscurity. HeThis books contains some interesting ideas, some make sense.
The parts i liked about the book is how the author points out Complexity and Obscurity. He examines the reason that leads to incremental addition to complexity. The reasons are your normal reasons, poorly-named variable, modules that expose too much information, etc.
I also liked how he emphasis on code-comments. Indeed, code comments are an investment that you make into the project. He debunks the excuses programmers bring so as to not comment their code. However, he also tells that we must try to express everything in code. But, by nature, some complexity cannot be expressed in code, like why there is a magic number floating inside a method, when this happens, a comment would do your coworkers, and your future self a huge favor.
His discussion on shallow-vs-deep modules is debatable. He argues that a module/class/interface need to be deep and expose a minimal interface to the user. He argues that a deep/long module will encapsulate all of the complexity inside itself, exposing simple interfaces to the user. He does not mention the limit on deep modules. If carried away to the extreme, this would result in files that are over 1000 lines. Personally, i would rather jump between 50 to 100 line files, that being forced into reading one big 1000 line file. The examples he give also do not clear the confusion....more