ogli72 (3) [Avatar] Offline
#1
Hello,

first off, I think this is going to be a great book and fills a void by bringing together computer science, programming practice, and cutting edge technology. The first chapter is a very good introduction into the topic.

I know you are aiming at the practioneer, this is not to become a student textbook. However, you are going to make a leap from very basic stuff to highly advanced tools and frameworks. My suggestion is to add a chapter about the foundations of those frameworks: To elaborate further on the CAP-theorem, about distributed algorithms, event ordering, causality, Lynch's Theorem, self-stabilization.
You write a lot about functional programming, what I'm missing is a section on purely functional data structures (get a "copy" in O(1) time -- how reactive is THIS?).
Besides, I don't have the feeling that "time disappears" in declarative programming. In some sense, you are right: The ordering is mostly irrelevant which simplifies separation of concerns and unit testing. It is also easier to do multi-threading then. On the other hand, it is very hard to reason about timing constraints when it matters, for instance when implementing a data structure or algorithm which involves laziness.

This is only a suggestion -- write YOUR book and keep on with the good work.

Cheers

Oliver
jamie.allen (13) [Avatar] Offline
#2
Re: Suggestion: A section or chapter on foundations
Thanks, Oliver! Roland and I will talk about it and see if and how we can fit it in. We appreciate the kind words!