A woefully incomplete list of paths forward for learning Python and Drawbot.
Now that you hopefully have an understanding of the fundamentals, it might be helpful to try diving into someone else’s code to see how they solved a problem or customize it to solve a problem of your own. I’ve compiled a list of Drawbot links, and feel free to suggest others.
If you are interested in going deeper into Python independent of graphic design and drawbot, there is an overwhelming number of possibilities. I’ve never done a formal course in Python and what direction to pursue probably depends on how you learn best, and what you want to get out of it.
We covered using def
to create your own functions, and to me, the natural next step is to learn how to create your own object types using class
. This allows you to go beyond a simple input/output structure and create objects that are complex Swiss Army knives, holding information and able to do various things with it.
Maybe you’ve seen this resource already, but it might be worth a visit after taking this class to help reinforce and provide exercises to hone your skills. Roberto also offers online classes that might help you to continue Drawbot-oriented design.
Pagebot is complicated, but if you’re looking to automate complex typography, it gives you much more fine-tuned control over documents and the type that flows through them. Petr van Blokland and Claudia Mens also offers workshops through DesignDesign.space.
A different python library by Rob Stenson that deals specifically with type and motion. Can be used with drawbot or independently. (This is what I’m currently trying to learn. ;-)
Ben Kiel offers a Python for Typeface Design that deals specifically with using python in Robofont. Hopefully he’ll offer it again in future semesters.
The creators of Glyphs app have resources about scripting in Glyphs, and occasionally offer workshops as well.
I can personally recommend this course that covers p5.js, which is a javascript interpretation of Processing that will run in a web browser. You will recognize functions such as rect()
and translate()
, but there is much more of a focus on interactivity and web-friendliness. Lynne and Kevin are awesome teachers, and this course also covers some of the conceptual framework and history of creative coding in general.