**Product Description**

Second Edition – Programming This is a textbook for computer science for secondary school students. It provides complete and comprehensive coverage of the Edexcel GCSE Computer Science specification for first examination in 2018. There are 30 chapters divided into 8 sections with over 100 questions and exercises to test your knowledge and understanding. Now it can be used as a single textbook covering both the theory and the practical (programming) sides of computer science. Practical Problem Solving – Programming There are now many practical, problem-solving, exercises to be implemented in Python. These range from quick coding challenges to problems that span several chapters. Students who complete a selection of these exercises will acquire all the necessary skills and knowledge to approach the “practical controlled assessment” (NEA) with confidence. At the very end of the book there remains a step-by-step “solution” to a large, analytical problem, which follows exactly the instructions in the Edexcel specification. The principles of Abstraction based on Encapsulation, Generalisation & Modularisation are stressed wherever relevant, not just in section 2 on Computational Thinking. Other Changes in the Second Edition: The students who sit the Edexcel exam in June 2017 will be the last group of the “old” specification, so some “editing” was required. The short section on databases has been edited to clarify and simplify some key points and the pages on SQL have been removed. “Readability” has been improved by moving some work, such as binary floating-point numbers and the implementation of some algorithms in Python, to an extended appendix. The clarity of many diagrams has been improved. Edexcel: The textbook remains primarily orientated to the specification for Edexcel GCSE Computer Science – first exam in June 2018. Nonetheless it would also be an excellent book for other exam boards, such as OCR and AQA, particularly if the chosen programming language were Python. (Of course the reader would need to carefully read their specification.)