An open-source IDE for organizing projects
Processing is a free and open-source graphical library and integrated development kit (IDE). This development kit was made with new media art, electronic arts, and visual design communities in mind. It aims to teach non-programmers the fundamentals of computer programming in a visual context. This software uses the Java programming language with additional modifications to help simplify mathematical computations and functions. It also comes with a graphical UI to help with ease of use.
What is Processing?
The Processing Foundation was founded back in 2002 by Casey Reas and Ben Fry, both from the Aesthetics and Computation Group at the MIT Media Lab. As mentioned, it was developed with the goal of teaching non-programmer about computer programming and promote computer literacy through the use of visual aids. It features a sketchbook, which is a minimal and simpler alternative to an integrated development environment that can be used for organizing projects.
The sketchbook can be built upon with various tools and libraries that are available for it. There are hundreds of libraries that help you introduce new elements or functionalities such as adding multimedia assets to your project or the ability to work with advanced 3D geometry. There are also various tools to help create sketches easier, such as a color and font selector and even the ability to archive and create copies of your sketches.
Processing has been used for building a proof-of-concept for visualizations and graphic experiments, lessening the time between the construction of an idea and the actual coding process. Its limitations start to show when your projects grow, though. It tends to slow down as you introduce more assets and complex code into it. Its compiler will oftentimes detect errors, and there is no debugger to help you easily identify them. This significantly hinders quick development cycles.
A great teaching tool for computer programming
All in all, Processing is a great teaching tool to help non-programmers learn and get comfortable with coding. It comes with a capable integrated development environment and it offers plenty of tools and libraries to help you out with your projects. This is a great starting tool for any beginner. If you work with more complex projects, Eclipse is a good alternative worth checking out.