Category Archives: Books

Books that I’ve read, reviewed or cited for this article

Book Review: Practical Python and OpenCV

I bought Practical Python and OpenCV a couple of years ago during one of its authors Kickstarters. I started reading it and then got busy with other things. The past couple of weeks, I decided to give the book another go and was able to finish it. Note that I started reading the 3rd edition of the book without realizing there was a 4th edition. After finished the 3rd edition, I compared it to the 4th side by side and it looks like they are nearly identical, so I don’t think it matters all that much.


Quick Review

  • Why I picked it up: Computer vision / machine learning sounds interesting to me and the author has a fun blog
  • Why I finished it: It’s short and the writing style is engaging
  • I’d give it to: Anyone looking to get started with OpenCV in Python

Continue reading Book Review: Practical Python and OpenCV

PyDev of the Week: Sean McManus

This week we welcome Sean McManus (@musicandwords) as our PyDev of the Week! Sean is the author of several books, including Mission Python: Code a Space Adventure Game!, which was reviewed on this site in March. There are free chapters from his book available here. You can learn more about Sean on his website. Let’s take some time to get to know him better!

Can you tell us a little about yourself (hobbies, education, etc):

I’m a writer specialising in technology. In recent years I’ve written several books to get children and young adults into coding. The launch of the Raspberry Pi and initiatives such as Code Club have helped to make coding much more accessible to young people than it was for many years.

As a kid, I loved programming my Amstrad CPC computer and in many ways it started me on my career path. I had listings and articles published in the leading magazines of the day, and my first book was about Amstrad programming. Today, I can still remember how much I loved programming as a kid, and I hope that my books bring some of that excitement to today’s budding coders.

As well as writing books and articles, I help some of the world’s leading technology companies with their copywriting requirements.

Outside of writing, I enjoy photography and making music. I have recorded an album of electronic music I plan to release online later this year, and I am a member of a singing group which is a great way to unwind. Continue reading PyDev of the Week: Sean McManus

Creating GUI Applications with wxPython Now Available

My latest book, Creating GUI Applications with wxPython is now available for purchase.

Cover art for Creating GUI Applications with wxPython

Creating GUI Applications with wxPython is a book that will teach you how to use wxPython to create applications by actually creating several mini-programs. I have found that while learning how the various widgets work in wxPython is valuable, it is even better to learn by creating a simple application that does something useful.

In this book, you will be creating the following applications:

  • A simple image viewer
  • A database viewer
  • A database editor
  • Calculator
  • An Archiving application (tar)
  • PDF Merging application
  • XML Editor
  • File search utility
  • Simple FTP application
  • NASA Image downloader

As you learn how to create these applications, you will also learn how wxPython works. You will go over how wxPython’s event system works, how to use threads in wxPython, make use of sizers and much, much more!

The eBook version is on sale on Leanpub for $14.99 until May 15th. You can also purchase the book on Gumroad, or get the paperback or Kindle version on Amazon.

Books on Sale for PyCon 2019

In honor of PyCon 2019 that is starting this week, I am putting three of my books on sale. You can get any of the following books for $9.99 through May 6th by clicking on the links:

Python 201 is a fun book for those of you who would be interested in learning intermediate and advanced topics in Python.

My ReportLab book covers how to create PDFs using Python and ReportLab. It also covers many other topics related to PDFs, such as splitting, merging and overlaying PDFs to name a few.

Finally my Jupyter Notebook 101 book is a good way for you to learn about the Jupyter Notebook and many of its capabilities.

Creating a GUI Application for NASA’s API with wxPython

Growing up, I have always found the universe and space in general to be exciting. It is fun to dream about what worlds remain unexplored. I also enjoy seeing photos from other worlds or thinking about the vastness of space. What does this have to do with Python though? Well, the National Aeronautics and Space Administration (NASA) has a web API that allows you to search their image library.

You can read all about it on their website.

The NASA website recommends getting an Application Programming Interface (API) key. If you go to that website, the form that you will fill out is nice and short.

Technically, you do not need an API key to make requests against NASA’s services. However they do have rate limiting in place for developers who access their site without an API key. Even with a key, you are limited to a default of 1000 requests per hour. If you go over your allocation, you will be temporarily blocked from making requests. You can contact NASA to request a higher rate limit though.

Interestingly, the documentation doesn’t really say how many requests you can make without an API key.

The API documentation disagrees with NASA’s Image API documentation about which endpoints to hit, which makes working with their website a bit confusing.

For example, you will see the API documentation talking about this URL:

  • https://api.nasa.gov/planetary/apod?api_key=API_KEY_GOES_HERE

But in the Image API documentation, the API root is:

  • https://images-api.nasa.gov

For the purposes of this tutorial, you will be using the latter. Continue reading Creating a GUI Application for NASA’s API with wxPython

My Cover Story for Creating GUI Applications with wxPython Book

I thought it would be fun to write a bit about the cover art for my new book, Creating GUI Applications with wxPython. I had meant to post about that during the actual Kickstarter campaign.

My original idea for the cover was to have the mouse directing a Phoenix to attack a snake. The Phoenix is a reference to the code name for wxPython 4 before it was released and you can still see references to Phoenix in the documentation and the artwork on some of the pages for the wxPython project.

In fact, I commissioned that cover to be done. Here’s a sketch of it:

Original cover concept art

As you can see, the artist had trouble remembering that the snake should be a Python. He continued to make lazy mistakes in the finished product and I ended up scrapping that cover. I am not sure if I will use that cover for a future book or not. I personally like the look of the mouse and Phoenix, but the Python will always bother me. Continue reading My Cover Story for Creating GUI Applications with wxPython Book

Python for Programmers eBook Giveaway

UPDATE: All copies of the book have now been claimed! Thanks for checking it out!

Pearson recently contacted me about doing a giveaway of their new Python book, Python for Programmers: with Big Data and Artificial Intelligence Case Studies

I have 5 copies of the eBook to giveaway. All you need to do to claim a copy is tweet this article and tag me @driscollis and then send me a direct message on Twitter with the link or send the link to me via the Contact form on this blog.

Here’s some more information about the book from their website:

Written for developers with a background in any high-level language, Introduction to Python and Data Science for Programmers explores the Python language and Python APIs in depth, applying the Deitels’ signature live-code approach to teaching programming. Paul Deitel and Dr. Harvey M. Deitel present concepts in the context of fully tested programs, complete with syntax shading, code highlighting, line-by-line code walkthroughs, and program outputs. They feature hundreds of complete Python programs with nearly 20,000 lines of proven Python code, and hundreds of tips to help you build robust applications. You’ll start with an introduction to Python using an early classes and objects approach, and then rapidly move on to more advanced topics.

Throughout, you’ll enjoy the Deitels’ classic treatment of object-oriented programming. By the time you’re finished, you’ll have everything you need to build industrial-strength Python applications.

Book Review: Mission Python

A couple of months ago, No Starch Press asked me if I would be interested in reading one of their new books called Mission Python: Code a Space Adventure Game! by Sean McManus. I enjoy reading new tech books, but it’s hard to work them in when I’ve been so busy this past year. However one of my resolutions for 2019 is to read through my backlog of tech books, so I decided to tackle this one next!


Quick Review

  • Why I picked it up: Originally, the publisher asked me check the book out, but I was also interested because I think game programming is intriguing
  • Why I finished it: I mostly skimmed this book, but it’s definitely worth a read to see how to put a game together
  • I’d give it to: Developers that want to learn how quickly and easily it is to write a 2D game in Python

Continue reading Book Review: Mission Python

Book Review: Serious Python

No Starch Press asked me to do a technical review of one of their upcoming books, Serious Python: Black-Belt Advice on Deployment, Scalability, Testing, and More by Julien Danjou last year. I had never worked with No Starch before, but decided to give them a try and see how they differed from Packt Publishing. I ended up liking their process and the book was fun to read as well. It should be noted that No Starch did not ask me to do a book review. They only wanted me to do a technical review for them before the book was published.

I am writing this review because I think this book should get a little bit more notice. Also I interviewed its author a few years ago, so you might want to check that out too.


Quick Review

  • Why I picked it up: Originally, the publisher asked me to do a technical review
  • Why I finished it: The book covers intermediate level material and has an engaging writing style
  • I’d give it to: Beginners that want to grow beyond just knowing Python’s syntax

Continue reading Book Review: Serious Python

Pros and Cons of Indy Publishing

I personally really love self-publishing or Indy Publishing, so I am a little biased. In this article, I will go over what I think are the pros and cons of Indy Publishing versus going with a “real” publisher.

Pros

Here are my favorite parts about indy publishing:

  • I control the release date
  • I control the content
  • eBooks can be updated within minutes
  • Your royalty rate is 70-90%
  • Prices can be changed in seconds
  • Flash sales are easy
  • It looks good on a resume / cv

I’m going to expand a bit on some of these points. I have worked with two publishers as an author: Packt Publishing and Apress. Packt has very aggressive timelines for getting things done. Chapters have to be done according to the schedule. A publisher can throw you curveballs when you are getting close to the end as well. When you self-publish, you control all of that. Continue reading Pros and Cons of Indy Publishing