Senior manager, adaptive systems
"To me, writing is about creating order out of chaos by organizing seemingly unrelated facts and ideas into a coherent structure. I find this very satisfying."
On the book: Feedback Control of Computing Systems (2004)
What made you decide to write a book on this topic?
For many years, I’ve been frustrated by the ad hoc way that computing practitioners design resource management systems, especially to deal with changes in workloads such as flash crowds (e.g. when a web site catches the attention of a large number of people, and gets an unexpected and overloading surge of traffic). About four years ago, I was talking with a mechanical engineer who described how she goes about building systems using control theory. While considerable practical judgment is required, control theory provides a simple analytic framework for making design decisions. I wanted to see if this could be applied to computing systems in a way that is useful to practitioners.
How did you go about the research necessary to write such a technical book?
Well, the first step was to learn control theory. All the introductory books are geared to mechanical and electrical engineers. They require that you model the system being controlled using differential equations, which is often not a good fit for computing systems. And the typical examples in these texts are dash pots and inverted pendulums, which don’t have an intuitive connection with computing systems. The next step was to show that control theory could provide insights of value to real computing systems, and so we conducted experiments on IBM software. Last, we wanted to show that control theory is useful in practice, and so we worked with IBM product groups who had resource management problems that could be addressed by control theory.
What are the greatest challenges to you as an author?
Four of us wrote the book—two computer scientists and two control theorists. We did chapters in parallel in an attempt to make faster progress. Of course this created challenges in terms of the consistency of notation, examples, and writing style. While it took some time to resolve these differences, I believe that being able to combine the perspectives of multiple authors resulted in a much better book.
What or who inspires and encourages you to write?
To me, writing is about creating order out of chaos by organizing seemingly unrelated facts and ideas into a coherent structure. I find this very satisfying.
What advice do you have for aspiring authors?
Books take a long time to write. So, you have to be passionate about the subject. Also, I find it extremely helpful to teach the subject first to figure out a logical sequence of presentation that is most effective for the audience. In addition, it’s important to have large blocks of time so that you can focus on the material.
Who are some of your favorite authors today?
I really enjoy authors who can explain complex material with great clarity. David Patterson and Andrew Tanenbaum are two of my favorites.
What role did books play in your childhood?
I have always liked learning from books, especially science and mathematics text books. A particular joy is finding an author who can present material on a complex subject in a way that is understandable. This has been a strong motivator for me.
Other books by Joe Hellerstein
JL Hellerstein, DA Klein, KR Milliken. Expert Systems in Data Processing, 1990, Addison-Wesley.