Showing posts with label Computer Science Reading. Show all posts
Showing posts with label Computer Science Reading. Show all posts

Thursday, 6 October 2011

Computing without Computers by Dr Paul Curzon


'It is a good idea to read as much as possible before starting any course. However text books can be daunting (and a bit boring). The booklets and articles contained in this book have been written to be suitable for complete newcomers. I wrote most of them partly for my own amusement - I hope you will find them fun too. You will definitely learn a lot of computer science.' Dr Paul Curzon

This book aims to be a gentle introduction to the main concepts of computer programming and the related subject of data structures and algorithms.

Rather than focussing on particular programming languages that can appear alien and incomprehensible to beginners, it concentrates on the underlying concepts common to a whole range of programming languages. Whatever language you might be learning it should be of use if you are struggling to understand. It is intended primarily for people with little background in the subject and for those for whom programming appears a little scary.

The approach taken is that of understanding by analogy. The idea behind this approach was very clearly captured by Hideki Yukawa: the first Japanese winner of the Nobel Prize for Physics, here quoted from (Wilson 1999). “Suppose there is something which a person cannot understand. He happens to notice the similarity of this something to some other thing which he understands quite well. By comparing them he may come to understand the thing which he could not understand up to that moment.” He is discussing how scientists come to understand new areas at the frontiers of science. However, the words are just as applicable to those of us following behind and trying to understand things previously discovered by others. Computer Science text books full of programming fragments can be hard to read. The details of particular languages can obscure the things that are common.

It is the general concepts that matter most if a deep understanding of programming is to be obtained. Here I avoid discussing computer examples directly and instead explain the terminology and concepts using a variety of non-computing examples that should be familiar and understandable to all. By understanding how the concepts apply to everyday examples, I hope it will then be easier to follow the more technical details of a formal text book. Of course analogy has to be treated with care. If pushed too far, the analogy breaks down and we can be left drawing wrong conclusions. By looking at each topic from a variety of different examples and looking at their commonality, I hope that this problem can be at least reduced.

People do not learn just by being told things or reading about them. The fact that I have read a booklet telling me how to juggle does not mean I can then pick up juggling balls and immediately juggle them without dropping them. I can only learn properly by lots of practice. We learn best by actually doing. This book also therefore contains lots of puzzles.

If your aim in reading this book is to learn about programming you will help yourself achieve this if you actually try the puzzles rather than just reading them. If your aim is to learn how to program you will then need to actually go away and write programs. It is my hope that in reading this book before (or at the same time as) learning about programming more conventionally you will understand more deeply than otherwise.

The Singularity is Near: When Humans Transcend Biology by Ray Kurzweil

'Ray Kurzweil is the best person I know at predicting the future of artificial intelligence. His intriguing new book envisions a future in which information technologies have advanced so far and fast that they enable humanity to transcend its biological limitations - transforming our lives in ways we can't yet imagine.' Bill Gates

Inventor and futurist Ray Kurzweil examines the next step in the evolutionary process of the union of human and machine.

Kurzweil foresees the dawning of a new civilization where we will be able to transcend our biological limitations and amplify our creativity, combining our biological skills with the vastly greater capacity, speed and knowledge-sharing abilities of our creations.

In practical terms, human ageing and illness will be reversed; pollution will be stopped and world hunger and poverty will be solved. There will be no clear distinction between human and machine, real reality and virtual reality.

'The Singularity is Near' offers a view of the coming age that is both a dramatic culmination of centuries of technological ingenuity and a genuinely inspiring vision of our ultimate destiny.

Ray Kurzweil proposes a coming technological singularity, and how we would thus be able to augment our bodies and minds with technology. He describes the singularity as resulting from a combination of three important technologies of the 21st century: genetics, nanotechnology, and robotics (including artificial intelligence).
Four central postulates of the book are as follows:
1. A technological-evolutionary point known as "the singularity" exists as an achievable goal for humanity.
2. Through a law of accelerating returns, technology is progressing toward the singularity at an exponential rate.
3. The functionality of the human brain is quantifiable in terms of technology that we can build in the near future.
4. Medical advancements make it possible for a significant number of his generation (Baby Boomers) to live long enough for the exponential growth of technology to intersect and surpass the processing of the human brain.

Want to find out more about the book? Click here...

Watch the video to find out how we're likely to develop in the future...