“Pointillism”, live coding at #PdCon16~

IOhannes M Zmölnig is an active member of the Pure Data development scene. So it’s of little surprise that he was attending the Pure Data Conference that just happened last week in NYC.

Pointillism IOhannes PdCon16

Pure Data (Pd) is a visual programming language […] for creating interactive computer music and multimedia works.
Wikipedia

You also might have heard about Pd as an alternative to Max/Msp or VVVV.

The conference brought a panel of enthusiasts from all over the world to discuss the development and future of the software. I was especially pleased to hear Mark Edward Grimm‘s experience teaching Pure Data as a multimedia creation tool to some college students here in the US. (See Mark Edward Grimm’s website for more info.)

At night, the same people gathered at the Shapeshifter lab in Brooklyn to enjoy live experimental music from some of the participants. And this is where IOhannes blew my mind, friday night, with a performance he calls Pointillism.

There is a recording of a previous event from 4 years ago that you can watch online. But seeing it live, not knowing what to expect, with a big projection over IOhannes shoulder, was a totally different game. Also, since 4 years, IOhannes has played it multiple times and thus perfected the set up and process at each iteration. (The video here is not doing justice to the performance.)

To explain what is going on, IOhannes is using Pure-data to create a musical instrument. He does this by adding boxes with distinctive functions and linking them together. Everything is done live, in front of the audience, and we can all see what he is doing on a screen cloning his own computer screen. Nothing is hidden.

So far, nothing new here. This is often referred to as live coding.

Where IOhannes plays a trick here, is that he is writing all the boxes by heart and uses a braille font to display their names. This means that nobody in the audience, and barely him, can read what is going on. Nobody reads braille on a screen anyway. Mistakes in the process are almost not permitted because it would be hard to find where they happened. The music itself fiddles around a theme inspired by morse code (IOhannes told me afterwards the music is actually a reading of the dots of each boxes). And sooner or later, the musical and graphical composition becomes a giant knot of boxes, dots and lines, moving in erratic ways. But all ends beautifully in a rapid deconstruction and closes on a black screen.

Needless to say the performer was greeted with a warm applause and had to come back on stage as the crowd would not stop. I’ve rarely seen such joy and amazement in the eyes of the audience at events like this.

IOhannes respects all the rules of the genre but with a twists that makes it accessible for people outside of the community. Pointillism is clever, brilliantly executed and a pleasure to watch. I could not recommend it more to any tech festival looking for a original performance and do hope you’ll be able to experience it live some day.

#IOhannes right side up

A photo posted by Sofy Yuditskaya (@horus_vacui) on

Make sharing bookmarks delicious again

Del.icio.us shaarli theme

One of the pioneers of the web 2.0 was the amazing del.icio.us website. It made sharing bookmarks an incredibly rich and fun experience. With its catchy domain name and well conceived minimalist interface, it attracted a horde of web enthusiasts ready to share their best links with the rest of the world.

Although Flickr is often mentioned as the inventor of tagging, del.icio.us ingeniously applied folksonomy to bookmarking, making it the first social network that could compete with search engines in terms of content discovery. And yes, we’re talking about a time when Facebook was not even born, baby.

As you can feel, 12 years later, I’m still excited by the possibilities and the experience del.icio.us offered. Unfortunately, the rest of the story is a sad slow descent into crappy interface design choices and consecutive owner changes. Although it was fun for a while, by 2011, I was actively looking for an alternative. One that for sure I knew was not going to be sold. One that I could keep control over its development.

Luckily, when you’re angry at something on the web, there is a good chance other people are. And hopefully, something good pops out of it. I found my angry creative man ruling his own corner of the web under the name Seb Sauvage. Seb was angry at del.icio.us, stumbleupon, diigo and all the social bookmarking clones he had tried. So he coded his own in the way he always crafts his tools, in a Keep-It-Simple-and-Secure manner. Then released it to the world.

Shaarli, as in share links, is an open source bookmarking application written in php that allows you to keep, tag, organize and share your collections of bookmarks without hassle. It also does import from del.icio.us, so you can switch service easily. All you have to do is export an OPML file and import it in your Shaarli.

Why am I bringing this subject today?

Because, since the beginning of this year, del.icio.us has been actively pushing advertising without anybody realizing it. See this Twitter search (and screenshot), where hundreds of people are sharing the same link to sponsored content. Yes, people linked their delicious account with twitter and forgot about it.

del.icio.us spamming twitter

I had kept my old account alive as a trace of the past. But seeing that it was now used to promote products under my name, I went out to put an end to it and decided to inform others about it.

Ricardo, from Manufactura Independente, picked up the info and moved his account to his own instance of Shaarli. Then, we chatted with a few other designers on how the old delicious user experience needed to be revived. And Ricardo spent last Sunday to make our wish come true: making a delicious theme for Shaarli, like it’s 2004 all over again.

Shaarli is an amazing project now supported by a community of developers on Github. New features and improvements are added regularly. Although it does not have the same convenience as competitors in terms of social functionalities, it does provides an RSS feed so you can subscribe to your friends valuable links or connect it through IFFT or any service that supports it.

The web still needs to be organized. And more than ever it needs to be done in the open. Keeping notes and bookmarks is valuable information not just for oneself, but for everyone. Let’s just not make this a profitable business for one company by keeping it behind walled gardens. It does not have to be complex. The web from 2004 still works great today.

So here are my booksmarks, free for all, since 2004.

Les leçons de cinéma de Tony Zhou

Tony Zhou

Puisqu’on est bien dans une civilisation de l’image et que ça n’a pas l’air de vouloir s’arranger, il est peut-être important de savoir “lire” une image et, peut-être encore plus, de savoir “lire” une image qui bouge.

Que ce soit pour les amateurs de cinéma, de vidéo youtube ou d’anime, pour ceux qui veulent en faire ou juste en consommer, je ne peux que conseiller cette merveilleuse série de documentaires par Tony Zhou: Every Frame a Painting (littéralement, “chaque image est une peinture”).

Tony Zhou est monteur de profession et, dans ses vidéos de quelques minutes, il aborde certaines techniques de cinéma en plongeant dans les références, actuelles et passées, pour nous apprendre et guider notre œil sur ce qui est bon ou moins bon dans une image cinématographique.

C’est jouissif. Ça se regarde plusieurs fois. C’est en anglais, mais tu peux activer les sous-titres en français. Et surtout, tu ressors de là en ayant eu l’impression d’avoir appris un truc. Faut pas lui en vouloir si après tu comprends mieux pourquoi tu t’ennuies pendant certains films.

Je te mets ci-dessous 2 ou trois que j’aime bien. Mais tout est bon, c’est vraiment difficile de choisir.

Petite question pour voir si t’as suivi: tu savais pour Spielberg?

How to get the latest Blender running on a Pi

Arch Linux Arm - RPi2

How to get the most up-to-date applications running on a Raspberry Pi and other ARM based single boards computers?

Update 25 Oct 2016: I have written a small step by step tutorial to get you through the install process on a Raspberry Pi 2 and up. It’s available here.

Update 16 Feb 2016: Blender 2.76b is now available for the Armv7h architecture from the package manager.

For a project I’m working on, I need a small computer that can just run some scripts 24/7 while being connected to the net. Performance is not a key issue, although it’s always nice to have a fast system. But in this case, since we’re trying to keep a low budget, a computer under $50 should do the trick. And that’s why we went for the Raspberry Pi 2.

While I was developing the project, I used the latest version of Blender (who doesn’t anyway?) and some other Python libs. When moving the whole project to the Raspberry Pi, that’s when things got messy.

I’ve been using Arch Linux as my main system for a year and am really happy with it (thx Chris). So naturally, I used Arch Linux ARM for the Pi. I’ve been using it for other projects, so I felt comfortable. For those who don’t know Arch yet, it’s a bleeding-edge rolling release distribution. That means you always get the latest shit as soon as it’s available and you don’t need to do big upgrades of your system every 6 months or {2|4} years. It has also a very technical and dedicated community, that takes pride at making good documentation.

What I did not expect is that Blender was not available in the repositories for Arch ARM, although it’s of course available for the i686 and x86_64 architectures. So I started looking for a distribution that had Blender already packaged, which Raspbian has. (Raspbian is a mod of Debian crafted for the Raspberry Pi and thus promoted by the Raspberry Pi foundation as the go-to distribution for their hardware.)

But Raspbian, based on Jessie, only packages Blender 2.72, a version of Blender released in 2014. And that’s pretty far back in Blender spacetime. So my hand made Blender scripts were suddenly more buggy and not performing as well. Bummer. Since I’m kinda used to Debian systems, and since Debian has also a bleeding-edge rolling release, I thought “No problem, I’ll just switch to stretch/testing and I’ll get Blender 2.76.” Well, that did not go too well on the Raspberry Pi. I’m not sure why. I guess Raspbian is making too much modifications to the Debian core, but after switching to testing, no more Blender in the package-list available.

So back to square one. Where do I go from here? Some people online were saying Blender was not buildable on ARM architecture. But I found packets for Blender 2.76 in the Fedora branch for ARM, and Blender is available for Raspbian. So what am I missing here? Then I stumbled on this post from Popolon, where he managed to patch and compile Blender on an ARMv7 architecture using Arch (and that’s exactly what I need for my Pi). He even provided a link to his build, but that was unfortunately too old to run on the current version of Arch.

But that’s where the power of Arch comes to the rescue. Arch is a system with a lot of pre-compiled packages, and for whatever is missing, there is AUR (the Arch User Respository). What comes from AUR is a a set of scripts that will help you compile a specific application for your system. Of course, you could do any compilation yourself on any Linux system, but what I find easier here is that since you have the latest packages installed already, compiling new ones is maybe a little easier since you don’t really have to worry about having the right versions of a library. It’s always going to be the latest one, which is usually the ones needed for the application you’re trying to install.

With a slight modification of the PGKBUILD I found for Blender, I started the compilation on the Raspberry Pi 2. 6 hours later, I had the latest Blender running.  Super. I can move on with the project.

Now, I also sent feedback to the Arch Linux Arm community about this. And have heard it’s in the pipeline to be added to the official repositories. That’s great news. It could mean next time, I will not need to compile it. And others can benefit from that also. But if this story can only tell you one thing is to trust Arch Linux for running the latest software on an ARM based computer. Even if it’s not yet in the repositories, you’ll probably have the best chance to get the thing running using that system more than any other.