Processing and p5.js • tim rodenbröker creative coding

Processing and p5.js

When you decide to learn Creative Coding, you’re faced with the question of which language to start with. Most often, the pendulum swings between Processing and p5.js. There are a few other languages and frameworks you can use for Creative Coding, but in my teaching I use these two languages myself and there are good reasons for that.

If you are looking for a quick answer, I will try to give you dise short and sweet. I do this in good conscience, because theoretically the principles and basics are almost identical, so that you can later switch back and forth.

What’s the better pick for me?

Both languages are based on the same principles and have an almost identical syntax. Which language you start with is basically irrelevant and depends mainly on whether you have a specific preference.

I always recommend the following to my students in graphic design:

If you want to program mainly for the web and your sketches should run in the browser, then it is smarter to start with p5.js.

If you are more interested in generating graphic design assets (high-resolution images, vector graphics, PDF files…) or if you want to dive deeper into the realm of motion graphics, then I would recommend you to start with Processing.

I hope I could give you a good overview and some orientation. If you have more specific questions about the differences of p5.js and Processing, then this article may help you.

Let’s move on!

Published by Tim on Thursday March 12, 2020

Last modified on March 5th, 2024 at 12:45

  1. Processing and p5.js
  2. Processing: Installation and quick walkthrough
  3. Three Ways to use p5.js
  4. setup() and draw()
  5. Setting the size for your sketch
  6. Background
  7. Basic Geometry
  8. Styling Shapes with Stroke and Fill
  9. rectMode() and ellipseMode()
  10. Lines, Triangles and Polygons
  11. The Reference
  12. Mouse Interaction
  13. Colors
  14. Randomness
  15. Variables
  16. Conditional Statements
  17. Switch
  18. Operators
  19. Transformations
  20. push() and pop()
  21. Comments
  22. For-Loops
  23. For-Loops (Examples)
  24. Waves
  25. Waves (Examples)
  26. Modulo
  27. Mapping
  28. Saving Images
  29. Using the Console
  30. Functions
  31. Keyboard Interaction
  32. Exercise: Geometric Typography
  33. Wrapping Up