This weekend I have managed to finish the online version of the book “Python Programming Fundamentals”, kindly provided to me by Springer.
In general, I have almost no experience with Python, so I have read the book with the eyes of an unexperienced user, the type of reader that reads books for programming fundamentals.
The book is easy to read, quite small for a programming book (200 pages), giving you good basis for python fundamentals. The introduction is well written and enables you to configure the WingIDE within minutes and start using the book. At the end of each chapter, there are programming tasks, most of which are resolved quite well a few pages after. This is a big plus 🙂
What I liked in the book was its simple language and way of telling the Python story – the author inserts parts such as “What is a computer and what is a programming language”, which are easy to follow and make the reading more interesting and not so tense.
The second thing I liked was the fact, that the book actually builds some real GUI applications, after the first 100 pages. This was crucial for my motivation to reach the end of the book. Python comes up with plenty of libraries, which were well-used to show its power. This is a simple example, what man can achieve in Python libraries with just 8 lines of code:
1 2 3 4 5 6 7 8 9 10 11 |
from turtle import * t = Turtle() screen = t.getscreen() for x in range(0, 5): t.forward(100) t.left(72.5) t.circle(100) screen.exitonclick() |
Now, let’s hate a little:
- I have read the book with an online version and some of the code was not quite visible with it. I have made some errors in writing the code, because the “(” and the “[” are quite familiar from the monitor.
- The code from the book was not provided, thus I should have written it by myself, which was not that pleasant, considering the point above.
- Some of the code provided in the book was quite a lot to be written down, considering the fact that the code was written in more than one place in the chapter (actually this could have been the style of the author, because the code snippets were explained, but I prefer to be able to get the whole picture of what the code is doing).
- So, if I could summarize the minuses – please, provide code somewhere in the internet, if you are writing a programming book. A sentence such as “Solutions are available upon request” is really somehow not acceptable. This is a Python fundamentals book, not a NASA project.
In conclusion, if you have passion for easy-to-install scripting languages and you are interested in Python – the book is quite OK for a start!