Selected Writings on Computing: A personal Perspective


Book Description

Since the summer of 1973, when I became a Burroughs Research Fellow, my life has been very different from what it had been before. The daily routine changed: instead of going to the University each day, where I used to spend most of my time in the company of others, I now went there only one day a week and was most of the time -that is, when not travelling!- alone in my study. In my solitude, mail and the written word in general became more and more important. The circumstance that my employer and I had the Atlantic Ocean between us was a further incentive to keep a fairly complete record of what I was doing. The public part of that output found its place in what became known as "the EWD series", which can be viewed as a form of scientific correspondence, possible since the advent of the copier. (That same copier makes it hard to estimate its actual distribution: I myself made about two dozen copies of my texts, but their recipients were welcome to act as further nodes of the distribution tree. ) The decision to publish a se1ection from the EWD series in book form was at first highly embarrassing, but as the months went by I got used to the idea. As soon as some guiding principles had been adopted -preferably not published elsewhere, as varied and as representative as possible, etc.




Selected Writings on Computing


Book Description




Edsger Wybe Dijkstra


Book Description

Edsger Wybe Dijkstra (1930–2002) was one of the most influential researchers in the history of computer science, making fundamental contributions to both the theory and practice of computing. Early in his career, he proposed the single-source shortest path algorithm, now commonly referred to as Dijkstra’s algorithm. He wrote (with Jaap Zonneveld) the first ALGOL 60 compiler, and designed and implemented with his colleagues the influential THE operating system. Dijkstra invented the field of concurrent algorithms, with concepts such as mutual exclusion, deadlock detection, and synchronization. A prolific writer and forceful proponent of the concept of structured programming, he convincingly argued against the use of the Go To statement. In 1972 he was awarded the ACM Turing Award for “fundamental contributions to programming as a high, intellectual challenge; for eloquent insistence and practical demonstration that programs should be composed correctly, not just debugged into correctness; for illuminating perception of problems at the foundations of program design.” Subsequently he invented the concept of self-stabilization relevant to fault-tolerant computing. He also devised an elegant language for nondeterministic programming and its weakest precondition semantics, featured in his influential 1976 book A Discipline of Programming in which he advocated the development of programs in concert with their correctness proofs. In the later stages of his life, he devoted much attention to the development and presentation of mathematical proofs, providing further support to his long-held view that the programming process should be viewed as a mathematical activity. In this unique new book, 31 computer scientists, including five recipients of the Turing Award, present and discuss Dijkstra’s numerous contributions to computing science and assess their impact. Several authors knew Dijkstra as a friend, teacher, lecturer, or colleague. Their biographical essays and tributes provide a fascinating multi-author picture of Dijkstra, from the early days of his career up to the end of his life.




On a Method of Multiprogramming


Book Description

Here, the authors propose a method for the formal development of parallel programs - or multiprograms as they prefer to call them. They accomplish this with a minimum of formal gear, i.e. with the predicate calculus and the well- established theory of Owicki and Gries. They show that the Owicki/Gries theory can be effectively put to work for the formal development of multiprograms, regardless of whether these algorithms are distributed or not.




The Varieties of Scientific Experience


Book Description

“Ann Druyan has unearthed a treasure. It is a treasure of reason, compassion, and scientific awe. It should be the next book you read.” —Sam Harris, author of The End of Faith “A stunningly valuable legacy left to all of us by a great human being. I miss him so.” —Kurt Vonnegut Carl Sagan's prophetic vision of the tragic resurgence of fundamentalism and the hope-filled potential of the next great development in human spirituality The late great astronomer and astrophysicist describes his personal search to understand the nature of the sacred in the vastness of the cosmos. Exhibiting a breadth of intellect nothing short of astounding, Sagan presents his views on a wide range of topics, including the likelihood of intelligent life on other planets, creationism and so-called intelligent design, and a new concept of science as "informed worship." Originally presented at the centennial celebration of the famous Gifford Lectures in Scotland in 1985 but never published, this book offers a unique encounter with one of the most remarkable minds of the twentieth century.




Computational Thinking: A Perspective on Computer Science


Book Description

This textbook is intended as a textbook for one-semester, introductory computer science courses aimed at undergraduate students from all disciplines. Self-contained and with no prerequisites, it focuses on elementary knowledge and thinking models. The content has been tested in university classrooms for over six years, and has been used in summer schools to train university and high-school teachers on teaching introductory computer science courses using computational thinking. This book introduces computer science from a computational thinking perspective. In computer science the way of thinking is characterized by three external and eight internal features, including automatic execution, bit-accuracy and abstraction. The book is divided into chapters on logic thinking, algorithmic thinking, systems thinking, and network thinking. It also covers societal impact and responsible computing material – from ICT industry to digital economy, from the wonder of exponentiation to wonder of cyberspace, and from code of conduct to best practices for independent work. The book’s structure encourages active, hands-on learning using the pedagogic tool Bloom's taxonomy to create computational solutions to over 200 problems of varying difficulty. Students solve problems using a combination of thought experiment, programming, and written methods. Only 300 lines of code in total are required to solve most programming problems in this book.




Bootstrapping


Book Description

This tells the story of Douglas Engelbart's revolutionary vision, reaching beyond conventional histories of Silicon Valley to probe the ideology that shaped some of the basic ingredients of contemporary life.




A Discipline of Programming


Book Description

Executional abstraction; The role of programming languages; States and their characterization; The characterization of semantics; The semantic characterization of a programming language; Two theorems; On the design of properly terminating; Euclid's algorithm revisited; The formal treatment of some small examples; The linear search theorem; The problem of the next permutation.




Grid and Cloud Computing


Book Description

In today’s dynamic business environment, IT departments are under permanent pressure to meet two divergent requirements: to reduce costs and to support business agility with higher flexibility and responsiveness of the IT infrastructure. Grid and Cloud Computing enable a new approach towards IT. They enable increased scalability and more efficient use of IT based on virtualization of heterogeneous and distributed IT resources. This book provides a thorough understanding of the fundamentals of Grids and Clouds and of how companies can benefit from them. A wide array of topics is covered, e.g. business models and legal aspects. The applicability of Grids and Clouds in companies is illustrated with four cases of real business experiments. The experiments illustrate the technical solutions and the organizational and IT governance challenges that arise with the introduction of Grids and Clouds. Practical guidelines on how to successfully introduce Grids and Clouds in companies are provided.




The Point Is to Change the World


Book Description

Radical activist, thinker, and comrade of Walter Rodney, Andaiye was one of the Caribbean’s most important political voices. For the first time, her writings are published in one collection. Through essays, letters, and journal entries, Andaiye’s thinking on the intersections of gender, race, class, and power are powerfully articulated, Caribbean histories emerge, and stories from a life lived at the barricades are revealed. We learn about the early years of the Working Peopl’s Alliance, the meaning asnd impact of the murder of Walter Rodney and the fall of the Grenada Revolution. Throughout, we bear witness to Andaiye’s acute understanding of politics rooted in communities and the daily lives of so-called ordinary people. Featuring forewords by Clem Seecharan and Robin DG Kelley, these texts will become vital tools in our own struggles to “overcome the power relations that are embedded in every unequal facet of our lives.”