|Print List Price:||$29.95|
Save $11.96 (40%)
Penguin Random House Publisher Services
Price set by seller.
Cracking Codes with Python: An Introduction to Building and Breaking Ciphers Kindle Edition
|New from||Used from|
"Children of Blood and Bone"
Tomi Adeyemi conjures a stunning world of dark magic and danger in her West African-inspired fantasy debut. Learn more
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Customers who bought this item also bought
Would you like to tell us about a lower price?
Top customer reviews
There was a problem filtering reviews right now. Please try again later.
After a rollicking introduction to Cryptography the book launches into an introduction to Python from the very basics, like starting IDLE and using variables and strings. If you’re already familiar with Python you can skip these chapters but it ramps up quickly and everything introduced has a direct application to cryptography.
Each chapter starts with a helpful introduction to the cipher and a list of topics covered in the chapter. You then get to see the full Python program for the task at hand, and then the author discusses the code line by line or section by section. This could be overwhelming to a beginning programmer, to sift through dozens or hundreds of lines of code. But the alternative, starting simply and building up the code, runs into the problem of the user not knowing exactly where new code goes or how much each block is indented, and so on.
By the halfway point of the book, if the reader has been coding along, they will have seen and used everything from if __name__ == ‘__main__’, lists and code tests to “%” formatting and writing to files using Python. The second half includes even more topics an expert Pythonista should be proficient with, like dictionaries, tuples and regular expressions. Not to mention they’ll have learned about cryptography topics like frequency analysis and the Vigenère Cipher through hands-on programming projects.
The code is well commented, but line numbers are added to the code snippets, unlike what a reader sees when they are using IDLE. This might be confusing at first.
Code not working? The book has its own online “diff” tool into which you can paste your code and it will show you where your code differs from the code in the book.
I like the Practice Questions at the end of each chapter! They’re not trivial and they make sure the reader is practicing the chapter’s lessons through doing.
Long story short (too late?), this book is a clear, engaging introduction to Python and to Cryptography, and learning the two together makes it a fun and useful application of Python and a masterful project-based Cryptography course.
but the content of the book other than that is interesting so far.
As a Code Cracking tutorial, it is, as declared in the book sub-title, an "Introduction". You'll see how various algorithmic strategies can be used against comparatively simple ciphers. The techniques include frequency analysis, word pattern matching and dictionary tests for decrypted text.
But the book is more about Learning Python than it is about Cracking Codes. Upon completing it you'll emerge a journeyman Python programmer and a novice cryptographer.
By chapter 3, readers learn how to save and run programs. I like that the book covers good programming practices and not just the basics. While I know Python, the book was a good review. I had forgotten a few things like __name__ from disuse. I like that the book included performance testing and complexity of algorithms.
Towards the end of the book, the code examples are quite long. Normally, I don't like this in a book, but there were great comments.
In conclusion, I recommend this book for anyone who wants to learn Python/programming and is interested in security or puzzles.
I give this book 9 out of 10 horseshoes.
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.
The book seems to assume zero Python programming experience, which I didn't expect from the cover or the subject matter. I think that it could have been improved by assuming at least minimal competence - even just that gained by running through the official tutorial, or any beginner's book. The first couple of hundred pages dragged for me. While cool, I don't think that the 'pyperclip' module added enough value to the example scripts to warrant its inclusion.
All-in-all I really enjoyed this book, especially the chapters on cracking the substitution and vigenere ciphers. I would heartily recommend it to anybody who has ever played around with making or breaking codes - on paper or on a computer. Excellent!
Most recent customer reviews
Al Sweigart an excellent teacher of Python with different publisher completes another...Read more