What's New in the 3rd Edition of "Automate the Boring Stuff with Python"
Thu 09 November 2023 Al Sweigart
Here are all the new additions and updates in the third edition.
Writings from the author of Automate the Boring Stuff.
Thu 09 November 2023 Al Sweigart
Here are all the new additions and updates in the third edition.
Thu 15 June 2023 Al Sweigart
My 2022 book, The Recursive Book of Recursion (read online for free, buy direct from the publisher) covers recursive algorithms, a notoriously tricky subject for programmers and computer science students. I feel like I did a good job writing it (and my editors at No Starch Press did an incredible job editing it), but I wondered how well Large Language Models (LLMs) like ChatGPT could understand it. I ran the entire book through to see what mistakes or changes ChatGPT would make. The results were disappointing in some places but pleasantly surprising in others, so I wrote this blog post about the role AI could play in editing technical books.
Tue 28 March 2023 Al Sweigart
5 stars. Python Distilled has a perfectly suited title: This book is for experienced programmers who want to learn Python and need the Python programming language's core syntax, standard library, and Pythonic idioms. However, if you're a developer who wants to add Python to your toolbox, I recommend Python Distilled as one of the first books you should read.
Tue 28 March 2023 Al Sweigart
5 stars. Python in a Nutshell is an excellent book for professional developers who have some experience with Python but want to take the leap to being a senior Python developer, Python in a Nutshell is required reading.
Fri 27 January 2023 Al Sweigart
Sun 20 November 2022 Al Sweigart
If you are an instructor leading a Python programming workshop, getting third-party PyPI packages installed on students' machines with pip has several hurdles: navigating the command-line, operating system differences, distinguishing between pip
and pip3
, dealing with multiple versions of Python, misconfigured PATH environment variables, and virtual environments are all possible pitfalls.
You can avoid all of this and save time by using pipfromrepl, which allows you to install PyPI packages from the interactive shell. These same steps work no matter what the computer's Python setup is.
Sat 19 November 2022 Al Sweigart
As you can tell from the lengthy title, there are many linting tools for Python. Some of them have near-identical names as each other. In November 2022, I upgraded my text editor to Sublime Text 4 and then took the opportunity to spend a few hours reviewing all of the Python linters I could find. After personally reviewing all of them, I've selected the following as must-haves: Pyflakes, Mypy, and Black. If you'd like additional tools, I also liked: Radon, Pyroma, and docformatter. I'm using Python 3.12.0. I don't care for my linter to point out when I stray from the certain dictates in the PEP 8 document, and my linter choices reflect that. You might have different needs and values than I, so in this blog post I give my reasoning and views for each linter.
Tue 15 November 2022 Al Sweigart
I like to program computers. An army of a million file clerks wouldn't be as productive as my laptop running the right code. And my house only has one bathroom so the line would be quite long too...
Mon 31 October 2022 Al Sweigart
JavaScript is not the only programming language you can run in the browser. Brython is a Python interpreter implemented in JavaScript so you can run Python code in your browser. This lets you have a Python interactive shell without having to install Python. You can also write Python code to interact with the DOM and create browser apps just like you could with JavaScript. The primary downside is that a browser must download about 6 megabytes of JavaScript files before it can run, which can be a significant delay. This blog post guides you through setting up Brython.
Sun 30 October 2022 Al Sweigart
Installing Python is easy, but maybe you're on a smartphone/tablet, are on a library computer that doesn't let you install software, or can't install Python for some other reason. This article has a list of 10 free Python interpreters and interactive shells (also called REPLs) that you can access from a web browser.
Sat 29 October 2022 Al Sweigart
Programming and hacking in movies often involves streams of ones and zeros flowing across the screen. This looks mysterious and impressive, but what do these ones and zeros actually mean? You're probably aware that binary numbers (numbers written using only the two digits, zero and one) have something to do with computers but don't know why.
Mon 10 October 2022 Al Sweigart
Thu 25 August 2022 Al Sweigart
Installing Python modules with the pip tool is surprisingly hard to describe to beginners learning to code. There are several potential issues: multiple Python installations, virtual environments, PATH environment variable settings. You have to introduce command-line terminals and file system navigation, and the differences between Windows and Mac/Linux. However, there is a line of code you can run from the interactive shell to handle all this for you.
Tue 23 August 2022 Al Sweigart
Regular expressions (aka regexes) are a mini-language to specify a pattern of text to look for. However, regex syntax is composed of various punctuation marks that can be hard to remember. Humre is a Python module that gives a more human-readable syntax that works better with code editing tools. You can install Humre just like any other Python module with pip install humre
and the full documentation is available in the git repo's README file.
Mon 22 August 2022 Al Sweigart
I've been writing programming books for beginners since 2009. All of them are free to read online at InventWithPython.com Many people email me asking which of my books they should read, so I wrote this guide to help beginners get started with my free learning materials.
Tue 09 August 2022 Al Sweigart
My new programming book, the Recursive Book of Recursion, is released in August 2022. The book covers several classic recursive algorithms and breaks down recursion's fearsome reputation as a programming technique. The book has the code for its numerous programs in both Python and JavaScript. When you buy it direct from the publisher, No Starch Press, you'll receive a DRM-free ebook copy with your print book order.
Sun 20 March 2022 Al Sweigart
Let's look at a simple example of a recursive function to see what it needs at minimum.
Fri 11 March 2022 Al Sweigart
Here's the boilerplate that you can copy and paste when creating a new web page with Bootstrap 5.
Wed 09 March 2022 Al Sweigart
FractalArtMaker is a module for creating fractal art in Python's turtle
module. You can install the module by running pip3 install FractalArtMaker
Wed 23 February 2022 Al Sweigart
Python 3.11 will include a TOML parsing module called tomllib
. Let's learn what TOML files are (they're similar to JSON), how they're useful for configuration files, and how you can write Python code to read them.