GSoC 2015 Processing Tool

Hi, my name is Zhao Pengfei .I am a second year graduate student of Beijing University of Technology, majored in Software Engineering. I love coding, especially with python, which is a big enthusiasm for me. I’ve done some projects with python, and use it to do some research about the Processing project. The first impression of Processing for me is it has a lot of similarities to the Arduino, and the applications of their united development are very impressive, which I think could be even more powerful with the support of various hardware platforms. Moreover, after done some demos with Processing in Python Mode, I wonder if it is possible for Processing to have a mechanism which allows designers to drag and drop components to the design interface, and generating the corresponding code automatically in the background. I think this will be more friendly and helpful for designer who are unfamiliar with coding.

Btw, I think there are two mistake in Processing tutorials .1: Paragraph heading “Using an Object”, in function move, the x should be global. 2: Paragraph heading “Writing the Cookie Cutter”, in method drive, there should be: self.xpos += self.xspeed. Thank you.



  • Thanks for the ideas. Extending the development environment can be done with a "tool" and we would gladly accept proposals for new Processing tools. Please see the tools wiki on github for more.

    Please file errors in the Processing Python Mode documentation here:

  • Hi shiffman,thank you for your reply! I've looked through the two links provided by you, and I found that the development tools is eclipse with Java. I wonder if it is the only choice to start my own development, since I usually make things with Python and Vim, and I'm still eager to sharpen my Python skill by this opportunity. So what can I do with Python for the project, can you offer me some advices? Still, if Java is the only way, that won't be a problem for me to engage myself in the development :)

  • While we do have Python Mode for Processing and are looking for help with that project, I believe the majority of the development is still in Java. Please review the Python repos for more.

  • edited March 2015

    Hi shiffman, thanks for you patience. I've finished all the documents that offered by you thoroughly, and I still need some clarifications from you.

    1. I tried all the tools in Processing 2.1.1, and made some demos with them. Then I found that one of them called GUI builder is somewhat similar to my previous idea, yet exists big gaps to my thought about what it should be like. Does it run only under Java mode? Or it's just my configuration problem?

    2. As for the Python Mode, I have no idea about what I can contribute to it,even after I read about your reply to other students. In my opinion, Python mode is currently based on libraries such as OpenGL, VolatileImage, BufferStrategy, and Python mode has to adjust itself to their updates and other changes. So the main development task of Python mode is just to rewrite all the old content with new method to let itself run better under new conditions caused by the libraries' changes, isn't it? If so, the rewriting process may demand a huge workload, which I think might be more practical to divide into several blocks ,so as to allow participants to choose different parts to write according to their interest.

    3.Last time I've come up with the idea about the implementation of a tool which allows to drag and drop components to the control panel, remember? In addition,There are some extra ideas,for example:

    (1).When I drag a component to the panel,a value of the graph and location,where the mouse points at, will appear.

    (2).When I right-click the mouse, a customized menu will be displayed which contains the most frequently used functions, and designers can customize its contents directly as well.

    (3).When I roll the mouse wheel, the region near the mouse pointer will be zoomed in and out.

    (4).Maybe the function of macro recording will also be necessary, it just depends. Are these ideas promising enough to be included into the project of GSoC2015?

    I really appreciate your patience and look forward for you reply.

  • Please note that there are alpha releases for Processing 3.0, the most recent is 3.0a5. Scroll down on the download page. I would suggest using these for future work in preparing materials to apply to GSOC. I would also suggest building Processing from source (see instructions of github wikis).

    These ideas are appropriate for GSOC, yes. For your proposal I would suggest creating specific scenarios for projects that the tools would appropriate for. Images and diagrams will help us understand the features you are describing.

    In addition, please share any projects you have made with Processing as this will also help us evaluate your proposal.

    I am not sure if the tool you refer to is compatible for other Processing modes, most likely not, especially if it's not working for you!

  • it's Arduino, you may correct your initial headline for the search engines - thank you

  • Thanks for the advice.I was attracted by the interaction between Processing and Arduino at first, and paid less attention to the coherence between the title and the content.

Sign In or Register to comment.