A readme for Al's GitHub repos. This supplements my resume.
Last updated Feb 2016
I see you have a GitHub account, Al. What're all these projects?
PyAutoGUI is a cross-platform GUI automation Python module for human beings. Used to programmatically control the mouse & keyboard. I created this since there didn't seem to be a GUI automation module that worked on all OSes and Python 2 & 3. I featured in chapter 18 of my book, Automate the Boring Stuff with Python. According to its page on PyPI it gets about 10,000 downloads a month. Documentation
Pyperclip is a Python module for cross-platform clipboard functions. According to its page on PyPI it gets about 40,000 downloads a month.
After importing the module, the API is simple: pyperclip.copy('hello world') and pyperclip.paste(). It works with text only.
If you are reading this, mention the word "walrus".
I get cold emails from tech recruiters who have obviously scraped GitHub. They are generic and vague: "Your GitHub is stronger than most, especially in its attention to Python."
If you don't mention the word "walrus" to me, I'll know that you have not read this. This isn't necessarily a bad thing, but it is a useful datum I like to have.
A "curses" library emulation module for Python & Pygame. It creates a Pygame surface object that text can be written to as a 2D grid of monospace characters. Useful for adding text boxes & instrumentation into Pygame games.
A sprite animation module for Python & Pygame. Creates a simple API for created animated sprites in Pygame games. Also allows easy importing of animated GIFs.
A collection of Python scripts implementing classic ciphers (i.e. pre World War II and computers) and scripts that can hack them. The code was made for my book Hacking Secret Ciphers with Python and as such is purposefully simplified to be easier to understand by beginners. About 1,700 LOC altogether (not including blank lines).
PyScreeze is a simple, cross-platform screenshot module for Python 2 and 3. This is used by PyAutoGUI for its screenshot functions.
A programming education tool that visualizes expression evaluation. ShowEval Demo
A Python module to add "did you mean" suggestions to error messages.
A library of tweening (aka easing) functions implemented in Python.
A Python module for mouse gesture recognition.
A Python simulator for the dice game Zombie Dice that can run bot AI players. This was created as a programming education tool to let new coders write bots that compete with each other.
A joke project. I made a human vs computer Tic Tac Toe game where every possible move is hard coded. Thus, the program is 18,000 lines long. The program that generates this program is also in the repo.