Fabric.js Tutorial Part 2
Posted by Al Sweigart in misc
This is Part 2 of the Fabric.js tutorial canvas/graphics library for JavaScript, where we learn about Polyline shapes and styling shapes by drawing a gingerbread figure.
Posted by Al Sweigart in misc
This is Part 2 of the Fabric.js tutorial canvas/graphics library for JavaScript, where we learn about Polyline shapes and styling shapes by drawing a gingerbread figure.
Posted by Al Sweigart in misc
This is part 1 my tutorial series on the Fabric.js canvas/graphics library for JavaScript, where we learn about drawing basic shapes like rectangles, circles, and triangles to draw pine trees.
Posted by Al Sweigart in misc
Tweening functions allow you to easily add many different styles of natural-seeming movement to the graphics in your program. In this blog post, you'll learn about how tweening functions can make more lively movement animations using Pygame and the PyTweening third-party library. Tweening functions apply to any programming language, but this tutorial has actual Python code for you to run and experiment with. Start by installing these libraries by running pip install pygame
and pip install pytweening
from the terminal. Then follow along with the code examples.
Posted by Al Sweigart in misc
4 stars. I came across Selçuk Artut’s Geometric Patterns with Creative Coding while researching several topics on computer-generated art for beginners. I admit, the single 1-star review for this book annoyed me enough to read and review. I’ve come away believing that this book certainly deserves wider and better attention than that.
Posted by Al Sweigart in misc
The third edition is has new chapters, programming projects, and revised editing. The third party module coverage has been updated to the latest available version (including OpenPyXL). You can run pip install automateboringstuff3
to install the latest version of all modules covered in the book that are compatible with the book's code examples.
Posted by Al Sweigart in misc
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.
Posted by Al Sweigart in misc
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.
Posted by Al Sweigart in misc
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.
Posted by Al Sweigart in misc
Posted by Al Sweigart in misc
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.