REVIEW - Introduction to Programming in Python - An Interdisciplinary Approach


Title:

Introduction to Programming in Python

An Interdisciplinary Approach

Author:

Robert Sedgewick, Kevin Wayne, Robert Dondero

Publisher:

Addison-Wesley Professional (2015)

Pages:

792pp

Reviewer:

Barry Nichols

Reviewed:

January 2017

Rating:

★★☆☆☆


Reviewed: January 2017

This book is very ambitious, attempting to teach programming to first year undergraduates of any scientific discipline. It not only aims to introduce basic programming concepts, but also recursion, object oriented programming and the fundamentals of algorithms and data structures. I believe this would be challenging for a computer science student within an introductory course let alone a student from another subject, especially if using this book for self study in addition to their own workload. However, this book generally explains these concepts well and contains some interesting problems from a range of application areas, including mathematics; physics and biology.

A problem encountered by most beginner Python programmers is that Python 2 is still widely used alongside Python 3. The two versions having significant differences, such as print being changed to a function and the behaviour of the division operator on two integers. The authors go out of their way to ensure this book is compatible with both versions. Unfortunately, the approach they take is to write their own "std" modules which the student must download and use to accomplish even basic tasks, without being clearly instructed to do so. Even the hello world program requires the module "stdio" for the function "writeln". This could have been avoided by using the future module. This standard Python 2 module allows the use of the print function and can change the division operator to be equivalent to Python 3. The standard Python functions, i.e. without using the authors modules, are not discussed. This continues throughout the book, even where the module functions simply call built-in functions.

If this book was written using Python libraries; built-in data types; and, where required, common external libraries such as NumPy and SciPy it would be a very good introduction to programming in Python. As it is this book is a good introduction to several programming topics in the authors non-standard version of Python, after which the student must invest more time and effort to learn the actual Python programming language.


Book cover image courtesy of Open Library.





Your Privacy

By clicking "Accept Non-Essential Cookies" you agree ACCU can store non-essential cookies on your device and disclose information in accordance with our Privacy Policy and Cookie Policy.

Current Setting: Non-Essential Cookies REJECTED


By clicking "Include Third Party Content" you agree ACCU can forward your IP address to third-party sites (such as YouTube) to enhance the information presented on this site, and that third-party sites may store cookies on your device.

Current Setting: Third Party Content EXCLUDED



Settings can be changed at any time from the Cookie Policy page.