Computational Thinking

A beginner's guide to problem-solving and programming

By (author) Karl Beecher

Publication date: 31 Aug 2017

Computational thinking (CT) is a timeless, transferable skill that enables you to think more clearly and logically, as well as a way to solve specific problems. With this book you'll learn to apply computational thinking in the context of software development to give you a head start on the road to becoming an experienced and effective programmer. Beginning with the core ideas of computational thinking, with this book you'll build up an understanding of the practical problem-solving approach and explore how computational thinking aids good practice in programming, complete with a full guided example.
Karl Beecher is an author and software developer. Before moving into academia, Karl worked as a software engineer and in 2009, he was awarded a PhD in Computer Science. He worked at the Free University of Berlin before returning to industry to co-found Endocode, an IT services firm. In 2014 Karl published his first book, Brown Dogs and Barbers.

Dimensions: 244x170mm

Print ISBN-13: 9781780173641

Ebook ISBN-13: 9781780173665

306 pages

Preface

Part 1: Computational Thinking

1. What is Computational Thinking?

2. Logical and Algorithmic Thinking

3. Problem Solving and Decomposition

4. Abstraction and Modelling

5. Anticipating and Dealing with Errors

6. Evaluating a Solution

Part 2: Computational Thinking in Software Development

7. Tutorial for Python Beginners

8. Effective Building Blocks

9. Organising Your Code

10 . Using Abstractions and Patterns

11. Effective Modelling

12. Testing and Evaluating Programs

13. A Guided Example

Appendix
'A ‘must-read’ for students embarking on their first major projects, and any teacher stepping up to the challenge of teaching Computing at school. This is not just a book about programming, more a template for teaching. Karl Beecher speaks in plain English. Incisive insight and practical advice, standing independent of the Python exemplars used, predicated as it is on a holistic understanding of the subject terrain.'

Roger Davies
and Editor, Computing At School, Tenderfoot Training Project