Processing (from which p5 takes its inspiration) has an explicit goal of being beginner friendly. I was first introduced to it in an art class.
From the processing website:
> For the past fourteen years, Processing has promoted software literacy, particularly within the visual arts, and visual literacy within technology. Initially created to serve as a software sketchbook and to teach programming fundamentals within a visual context, Processing has also evolved into a development tool for professionals.
They (Shiffman, in the video) have a pretty cool youtube channel where they use processing, p5, etc to teach programming, visualization, graphics, that kind of thing. I think it used to be called "coding rainbow" but he ran into copyright trouble I'm assuming.
Dan Shiffman's youtube channel "The Coding Train", his books and website - are really great introductions/tutorials to general programming, creative programming, natural language analysis, machine learning and a whole bunch of other topics. He has this ability to make technical-sounding (or actually technical) concepts and projects interesting, non-scary for beginners (and non-math background people) and fun. In my view - his books & videos are prolly the best introductions to programming for kids and people who have a fear of programming.
If you read the various blog posts and interviews - the history of Processing at his department (NYU Tisch ITP) had a purpose of encouraging 'creative' people to explore and gain an exposure to programming.
processingjs.org hasn't been updated in years, and the java-to-javascript interpreter is full of quirks.
With p5 you can get as close to the metal as you can in JS (for example, it has a WebGL based renderer if you want, and you can use typed arrays for your data). So it's a lot better.
Regarding OF: yes, for computationally intense stuff it's a lot faster, a native OpenGL application written in C++ should be faster than using JS in the browser.
However, it's also a lot more painful to develop in IMO. I tend to work out my sketches in p5js these days, then when I need performance port it over to OF. Given that most of the time the performance bottleneck is either "how many particles" or "how high-res is the input video", testing in p5 is a simple matter of scaling down.
From the processing website: > For the past fourteen years, Processing has promoted software literacy, particularly within the visual arts, and visual literacy within technology. Initially created to serve as a software sketchbook and to teach programming fundamentals within a visual context, Processing has also evolved into a development tool for professionals.
https://processing.org/overview/
They (Shiffman, in the video) have a pretty cool youtube channel where they use processing, p5, etc to teach programming, visualization, graphics, that kind of thing. I think it used to be called "coding rainbow" but he ran into copyright trouble I'm assuming.
https://www.youtube.com/user/shiffman