Visualizing OpenProcessing

Legacy sketches will not work under Chrome Mac OS X

A recent update on Mac OS X (10.8.2+) removed the Java and required users to download/install new Java from Oracle’s site. This also came with a new problem: Chrome in Mac OS X will not be able to run Java applets because it is a 32 bit browser.

Well, not much we can do about that (unless you work at Google or Oracle). Therefore legacy sketches that run on Java will not be displayed to Chrome users and they will be requested to open the sketch in another browser.

This will come in the next code push to OpenProcessing. pff. I hate browser problems..

Processing 2.0 support is here, and more to come!

I recently updated the site with Processing 2.0 support! Now you will be able to share your sketches that you create with the new versions of Processing. The big difference is, now that Processing dropped the support for Java applets, you will be exporting your sketches as Javascript. You can find the instructions on the upload page.

For the advanced users, this update comes with some considerations however: As we discussed in the previous blog post, exporting your sketches in javascript might cause problems with libraries you might be using, since most of them are written in native Java. Also, you might have problem with the small number of functions (red ones) that are not available in Processingjs.

However, this is a big step for a better future of Processing. Java platform is being under-maintained for a long while, and almost everyone is slowly dropping the support for Java Applets. With Javascript exports, your sketches will work increasingly faster on browsers (since they are getting faster everyday on js speeds), and they will also work on more platforms, including iOS, Androids, and anything that supports HTML5 Canvas.

Note: You can still upload sketches in Processing 1.x. I will keep supporting those sketches on the website until a majority of the community moves to Processing 2.x.

What this means for OpenProcessing?

Now that you can upload your sketches in Processing 2.0+ in javascript, this means that your image files, etc. that you use in your sketch will be uploaded to OpenProcessing as well. However, you will see that at the moment you won’t be able to manage these files manually in the edit code page: Currently you can’t upload additional files, or remove old ones unless you delete or re-upload the sketch itself. I will work on updating edit code page, so it will support uploading/removing additional files for your sketch. And in that sense, it will become a more scaled web-based programming environment. I will keep you updated on these.

Additionally, leaning more on Processingjs sketches will allow more online collaboration and interaction. Processingjs sketches make it possible to tweak sketches and make quick edits on the fly. So I am hoping to utilize these better on the website, as well as implement some other cool ideas that I had in my mind for a while.

Please let me know of your feedback with these new changes!

No more applets with Processing 2.0a7

Summary: Processing dropped the support for exporting Java Applets, therefore you won’t be able to share your sketches on OpenProcessing directly. This is a something that will effect many of us and OpenProcessing.

Plan: Javascript sketch uploads will soon be supported on OpenProcessing (in a week or so). This way you will be able to upload your sketches that are in javascript mode in Processing.

Continue reading ‘No more applets with Processing 2.0a7′

Tweaking sketches! Now on OpenProcessing.

Last week I launched a new feature on the site. Tweaking, also known as forking, allows you to select any sketch on OpenProcessing and create tweak (a fork) of it and share back with the people on the website.


Continue reading ‘Tweaking sketches! Now on OpenProcessing.’

Introducing Plus+ Memberships!

It’s been 4 years since OpenProcessing started its life as a community platform for Processing users and in this time period, I tried to provide most of the fundamental functionality that is necessary to create an open source sharing platform. From time to time, I received requests to allow private sketches, being able to select different licenses. I also observed that many people started using their profile page as their professional portfolio. Some professors also asked if they could create a private classroom, hide/source sketches to challenge students. To cater these requests, now OpenProcessing provides Plus+ membership option, similar to Github and Vimeo, providing these benefits:

Plus+ membership:

  • No ads!
  • No ads on your sketches and portfolio
    Your portfolio and sketches will be ad-free to other users as well. This allows you to keep your portfolio page any clutter free and purely focused on your sketches.
  • Private sketches
    Allows you to hide your sketches from public and share them with only the people you want via private URL
  • Custom license options
    You can change the Creative Commons license of your sketches, allowing you to select a specific CC version or define your own license.
  • Show/hide source code
    This is especially helpful if you are teaching a class on Processing and want to create challenges for your students, or if you want to copyright your sketch.
  • Bigger uploads
    30mb limit instead of standard 10mb. Since, you know, hosting costs.. You can read more about this on a previous post.

Professor Plus+ membership includes all the benefits above and the extra features is catered more towards professors teaching Processing in a class:

  • Private Classrooms
    This is a good option if you would like to keep your class activity private on the website, or if your institution doesn’t allow you to publicly share your class materials online.
  • Free Plus+ membership to all students
    so that your students can have more flexibility to upload bigger sketches, private sketches, hide source code until finals, etc.

Besides all the benefits above, you will be supporting OpenProcessing to cover its costs and continue its service without interruptions. This is still a very niche community and your support by being a Plus+ member will help this website provide a vimeo-like quality. I spent countless nights and weekends to develop this website over these past 4 years and it came to a point that it is both costly and time-consuming to maintain the website without your support. So I invite you to be a Plus+ member to show your support and enjoy the benefits provided above!

Please let me know if you have any comments about this major update to OpenProcessing.


Some advertisements, and here is why.

I started putting some advertisements here and there on the website today. This is in response to generate more income in addition to donations to support the website hosting and maintenance (and to reduce the burden on my wallet). Still, OpenProcessing is serving to a growing but a niche community but trying to do this with a vimeo-like quality. Because Processing users do not deserve any less! It is an amazingly creative community and OpenProcessing is committed to provide a great social platform for Processing users. And of course, this comes with a cost (you can read the $ details on this post).

I also feel like the ads might not fit the look and feel of the pages on which your sketches and portfolios are displayed, so I will soon implement a plus subscription option that would allow you to hide any ads displayed on your pages (a vimeo-like approach it is). As I hope you would welcome these updates to the website, I would love to hear any feedback you would have.

Following users? Definitely!

I was finally able to implement “follow user” feature, that was long requested for in the user forum and by individual users. I believe this will bring a new level of interaction on the website and I am looking for your feedback on this. One of the effects I observed in the few days that  it was alive is that the latest favorites list on homepage is spiced up already. This is very important, since I was working on bringing more dynamics to the website to reveal to buried sketches and users on the website. This is what OpenProcessing had been suffering for a while: When you upload a sketch, it gets displayed on the homepage for a very short time unless it becomes a top favorited sketch (because of the amount of uploads increased dramatically in the past years). And if a sketch becomes a top favorite sketch on the homepage, it is very likely to stay there for a long time since it is very hard for a sketch to get to that list.

Following users enables their sketches to be seen by more people and being displayed around the site more. Once more follows exist on the site, this feature will have a follow up to provide you more relevant sketch recommendations for you to check out. You can start following users now by clicking on “follow” button on their portfolio!

In addition to “follow users” thing, you are also now greeted with a new dashboard. Kind of a twitter feed/facebook feed mash up, displaying new sketches from your follows, your new followers, comments on your sketches and collections, etc.. Hoping to increase the queries that are displayed on your activity feed in the following weeks.

I hope you enjoy these new features and please let me know if you have any ideas or feedback.


New OpenProcessing, on the invisible side

I have been working for couple of weeks on updating the back-end and finally I was able to make the code push last Sunday. On the front-end, you will not notice much differences, however on the back-end, OpenProcessing has a whole new structure! (You should see the code, it is a beauty!)

I basically re-wrote the back-end (all of it!) using CodeIgniter framework. Because OpenProcessing started as a school project and grew with gradual updates, almost everything was manually coded and I wasn’t using any frameworks. I didn’t know much about frameworks at that time anyways. I ended up learning a lot about PHP, I found myself creating my own ‘framework’ without even being aware of ‘framework’ concept. More of MVC I mean. But of course, it was buggy and it was pretty messy. Both the database and code included snippets from my project (that involved dataset support for data visualization). With this CodeIgniter update, I also removed all the unrelated stuff, pages, tables, codes, etc.

Well, the part that matters to you:

  • Now OpenProcessing should feel way faster to browse. This comes with revised code, SQL statements and better caching of images, files, etc.. And it is more secure now.  Aaaand, wait for it…. A new kick-ass server! (thanks to MediaTemple).
  • As you might have noticed, OpenProcessing has a new URL structure:
    • sketches have a URL format of:[sketchID]/
    • user portfolios have a URL format of:[userID]/
    • collections have a URL format of:[collectionID]/
    • classrooms have a URL format of:[classroomID]/
    • any sketch, user, collection, classroom related functions are accessible by adding the function after the URL above. Although they are not documented at the moment, I will be working on an API which will document all these and will also allow JSON/XML based access to these information and functionality.
      (eg. for rss feed of a user: Before, they were all over the place.)
    • If you had links on your website to the things mentioned above, you very likely do not have to make a change, since the old format URLs will be forwarded to their new version. But you might want to check, you know, just in case.

Having said that, because this was a very major update, there might be things that are broken and missed my eye. Please let me know if you see any bugs or any issues with the website via commenting on this blog, or shooting an email to  or using the forum.

Next on the line is: Visual update on Portfolio pages => to make them more presentable.

Bus-tops contest is over and the results are in!

During the last month, Bus-tops and OpenProcessing collaborated to engage Processing users to create sketches to be exhibited on London bus stops, a project lead by Submissions are collected on Bus-tops collection. The top 10 sketches decided by the number of favorites they receive on OpenProcessing will be ported over to website and will be displayed on the bus stops. You can follow the rest of the process on Congratulations to all winners and to all participants!

The Top 10 sketches selected by OpenProcessing users:

Bus-tops “Travelling to…”

As the Crow Flies

Chaos Is A Friend Of Mine

Game of Life Bus Stop Animation

Bus-Tops Fluid

Bus vortex


Bus Top Arcs


Bus-Tops Particle Chain