Category Archives: Books

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

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

How I Write Books about Python

I get asked questions about my book writing process from time to time and I have been meaning to write about this topic for a while. The main reason I wrote my first book, Python 101, was because of the readers on my blog. They had been encouraging me to write a book on wxPython for a while and I decided that I should start by writing an introductory book so I wouldn’t need to include a bunch of introductory information in my intermediate level book if I ever got around to writing it.

When I was writing that book, I had to search for ways to generate PDF, mobi (Kindle) and epub formats. I skipped Microsoft Word because I hadn’t seen good ways to convert that document type to other file types and it didn’t work well cross-platform anyway. Continue reading How I Write Books about Python

Less than 2 Days to Go on wxPython Book Kickstarter

My latest book, Create GUI Applications with wxPython, is coming along nicely. I just wanted to let my readership know that the Kickstarter for it is coming to a close in a little less than 2 days.

If you’d like to get a copy at a cheaper price than it will be when it is released in May later this year, the Kickstarter is really the way to go. You can check out the current table of contents in this post from last week.

Thanks for your support!

Table of Contents for Creating GUI Applications Book

We are coming into the last week of the Kickstarter and I thought I would give you all a quick update. I finished writing up the chapter on creating a calculator today and got started on chapter 7.

Creating GUI Applications with wxPython

I also wanted to let you know what the current table of contents looks like right now:

  • Chapter 1 – Intro to wxPython
  • Chapter 2 – Creating an Image Viewer
  • Chapter 3 – Enhancing the Image Viewer
  • Chapter 4 – Creating a Database Viewer
  • Chapter 5 – Database Editing with wxPython
  • Chapter 6 – Calculator
  • Chapter 7 – Archiver (tarball creation utility)
  • Chapter 8 – MP3 Tag Editor
  • Chapter 9 – XML Editor
  • Chapter 10 – NASA Image Downloader / Search Tool
  • Chapter 11 – PDF Merger / Splitter

There will also be a chapter on creating executables and installers for your application and a couple of appendixes.

Thanks so much for your support!

Mike