This week I tried to read Hacking Secret Ciphers With Python by Albert Sweigart. I say ‘tried’ because I did not start reading the book until yesterday. I spent so much time during the week working on other things that I kept putting it off. So I did not finish the book as planned.
I did get halfway through, however. And I feel confident providing some commentary on the book’s quality and content based on that.
More About Python Than Ciphers
The book makes it clear that its intent is to teach the Python programming language but I can forgive readers who initial think it is about teaching ciphers. The text does teach historically interesting and fundamental ciphers, such as the classic Caesar Cipher that is over two-thousand years old.
Nonetheless, the primary focus of the book is to teach the reader how to write Python programs. It assumes no prior programming experience and so it approaches the subject by beginning with the absolute fundamentals. Mr. Sweigart does a great job at framing the context of each cipher in chapters and then using them to introduce Python concepts via example code, easy to read paragraphs, and diagrams to help the reader visualize the relevant data structures and algorithms involved.
As I said, I have not finished reading the book. I have stopped at the halfway point. But I can already tell you with confidence that it is a well-written introduction to the Python language and keeps the reader entertained by basing its lessons around the interesting concept of cryptography. If you want to learn Python and are unfamiliar with ciphers then I absolutely recommend the book.
No Next Book This Week
This coming week I’m going to be neck deep in writing code for my game, along with my cohorts Jeff and Jesse. So I will not have time to read a new book or finish this one. I will attempt to update this site during the week with some information about our progress on the game, but no promises.
In the mean time those of you who read Hacking Secret Ciphers With Python may be interested in my code based on the book. It includes my implementation of the book’s concepts and some of the answers for its exercises.
So no new Book of the Week this time, but I’ll be back with a new one next Sunday!