What's Brewing: Crystalline_Space_Fort

What's Brewing: Crystalline_Space_Fort

The art/tech collective, Snax_and_Macs (Lucy MatchettNicole Messier, Joselyn McDonald) designed Crystalline_Space_Fort. The modular installation with responsive projection piece was inspired by our desire to allow participants to experience wonder again in an immersive space/deep sea environ.  We wanted to share our curiosity with others by building an immersive interactive installation that was designed to replicate the exploration of an alien planet and deep sea elements with responsive and generative openFrameworks projections and sound sketches. 

Read More

What's Brewing: MMO Tug of War

The idea for this project came after watching Twitch Plays Pokemon. For those not familiar, Twitch Plays Pokemon was a live stream of the classic Gameboy game, however, it parsed through any text of the stream chat that used the words "Left", "Right", "Up", "Down", "Start" or "Select." These inputs were then used to control the game. Though simple in concept, making any progress is complicated by the fact that thousands of people are inputting commands simultaneously. In fact, at one point, over 100,000 people were participating in the event.

MMO Tug of War takes this idea and builds on it by bringing in a physical element. Instead of a
game that only takes place within a piece of software, the outcome of MMO Tug of War has very real consequences. Each team has a breakable object attached to a servo motor. When one team wins, the servo motor yanks the opposing teams object off a ledge where it is mercilessly shattered on the ground.

What's Brewing: SBX - Spacebrew Data Type Extension

SBX stands for spacebrew data type extension. It provides an easy interface to send and receive custom datatypes among spacebrew instances.

At the time of writing this post, it worked only in Spacebrew for Openframeworks, but Processing and Javascript versions were on the way. Please check the SBX Github Repo for updates.

Custom data types are particularly useful when sending data that is wrapped in one object but contains multiple attributes, such as a 3D position (x, y, z) or and RGB color (r, g, b). They allow to send these multiple attributes using only one spacebrew connection.

SBX pulls the model for the custom type from a local JSON file containing the elements that will be part of it. For example, if you want to send a position in 3D space, you would write a vec3.json file that looks like this:

    "x": 0,
    "y": 0,
    "z": 0

If maybe you want to send a color, with an alpha value included, you would write a color.json file that looks like this:

    "r": 0,
    "g": 0,
    "b": 0,
    "a": 0

To use SBX in OF, simply add SBX source files to your project.

Available methods and modes of use can be found in the Github page.

What's Brewing: Spacebrew x Parsons MFADT

The excellent MFADT program at Parsons invited Spacebrew to build a Collab class this semester. After diving into the nuts and bolts of Spacebrew, we had students build tutorials around the basics, including web-based apps, physical computing projects, and projects that featured Spacebrew's powerful custom types. 

The results have been amazing! In the coming weeks, we will start adding student-contributed tutorials to the section on this site. Until then, here are a few to check out!

Forget Me Not: Remote flower watering

Remote Party: Make a dramatic entrance to a party 

Next Round: An interactive beer coaster 

Using custom types in openFrameworks

Do Disturb Me: Sharing presence and personal status

Controlling sound with Spacebrew + LeapMotion

Arduino Laser Turret

For the remainder of the semester, students are working on large projects that either a) demonstrate unique capabilities of Spacebrew through an installation/experience, b) expand the capabilities of Spacebrew, or c) expand the Spacebrew community. 

Follow our progress at http://mfadt.parsons.edu/2013/ and keep an eye on this section and the tutorials!


What's Brewing: Laid To REST

I recently participated in Art Hack Day: Afterglow at Transmediale. Art Hack Day is a pop-up art exhibit/hackathon that has had events in many places. The projects I work on at these events tend to use Spacebrew because:

  1. It is an easy way for me to re-use pre-existing clients while testing.
  2. I don't need to worry about who is the server and who is the client (especially when I have five clients all talking to each other!) Everyone connects to the Spacebrew server, and I route from there.
  3. Hopefully I end up with new re-usable clients at the end.
  4. I learn how to make Spacebrew better.

For the Transmediale exhibit I created a piece that memorialized dead links on the internet. I knew I was going to use a receipt printer to print out the URL's (both because I am obsessed with receipt printers and I already had a receipt printer Spacebrew client). The question was how to find the links.

I did a quick search for "nodejs web crawler" and ended up using a module named crawler. All I had to write was a script to identify 404 responses and publish the corresponding URL to Spacebrew. 100 lines of code later (mostly just edited from examples) I had the 404-logging web crawler.

There is a peculiarity with the receipt printer client I use where it doesn't like to receive new messages until the previous message finishes printing, so I whipped together a quick queuing client to store messages until the printer is ready again, and voila! I was done with the technical work.

A screenshot of the Spacebrew Admin while my installation was running.

A screenshot of the Spacebrew Admin while my installation was running.

You can see a couple of button clients and a chat client used for debugging, and the web crawler (404'd), rate limiter, and Thermal Printer clients which drove the installation. This ran for 4 days (I had to restart the web crawler at one point because it ran out of memory), and Spacebrew didn't complain once!

My code resides in this github repo in case you want to poke around in a completely unreadable mess!

Spacebrew at ITP


This weekend we put on Spacebrew's first day-long intensive, diving into basics (libraries, examples), running your own server, and advanced topics (persistent admin, admin API). The workshop was at NYU's ITP program, and was part of their new 1 credit class initiative.

Students built projects with Spacebrew over the course of the weekend, building simple stories around a combination of existing examples and custom apps. It was a great experience, and hopefully one we'll repeat in the future!

Student Code

Spacebrew Synthesizers

Freeze Tag

view/download: Spacebrew at ITP

Read More

Spacebrew at CHI-NYC

Thanks to everyone who participated in the Spacebrew Workshop at the CHI-NYC event last Thursday. We greatly enjoyed participating in the event, sharing with you about the LAB’s design process and leading the hands-on Spacebrew workshop. We hope that you found the workshop worth your time and effort.

We are sorry about the technical difficulties, such as having my laptop crash on numerous occasions during the workshop. That said, it seemed like we were able to get most everyone to connect their sketches to one of the other apps running the space.

Below I’ve included the Spacebrew presentation that we shared during the workshop. This presentation features an overview of how Spacebrew works, followed by the workshop slides. If you want more information, tutorials, or code associated to Spacebrew just checkout the  website website or Github repo.

Here is the final Processing sketch, which includes all Spacebrew functionality baked in.

Spacebrew at ITP Camp

itp camp header.png

This coming Tuesday we're holding a Spacebrew workshop at ITP Camp. During this one and a half hour hands-on session we will explore how Spacebrew simplifies the process of connecting interactive applications and internet of things objects. Our goal is to show how Spacebrew can be a valuable tool for prototyping interactive spaces.

 About ITP Camp: ITP Camp is a 4 week crash course/playground for busy working professionals. This June, we are inviting non-student makers, artists, musicians, creatives of all sorts, to come to ITP on evenings and weekends to make stuff, hear speakers on the cutting edge, collaborate with people from diverse disciplines.


Spacebrew Server: New Release

Earlier today we pushed the newest version of Spacebrew live on sandbox.spacebrew.ccWe made this version of Spacebrew (v0.3.1) available on github a few weeks back but we are only now officially announcing the release. Here is a brief overview of the new features that we've added:

Live Persistent Routes: now when you create routes between client apps using a standard admin they will persist until you intentionally delete them.

This means that if an app disconnects from the server and later reconnects, its old routes will be re-established. It also means that if the Spacebrew server crashes, when it is restarted all routes will be re-established.  

To delete routes you just need to intentionally remove them using an admin.

Forever Monitor:   now you can run a Spacebrew server in forever mode. This means that the server will automatically relaunch itself if it crashes.

Together with the live persisten routes feature, and the automatic reconnect features that is baked into the javascript, processing, and python libs, now you can have more confidence that your project involving Spacebrew will stay up and running, even if the Spacebrew server goes down.

To run the Spacebrew server i forever mode you just need to launch the server using the node_server_forever.js script, rather than the standard node_server.js script.

Log Level and Files: the last main update that we've incorporate is the ability to run Spacebrew sever with different logging levels - error, warn, debug and info. Also, if you run your server in forever mode log files will automatically be saved in the data/log folder.

Give it a try to by connecting your app to the cloud server, or downloading the latest Spacebrew from github and running your own server.

Presentation and Pictures from Workshop at MAD

Thanks to everyone who joined us this past weekend at MAD for the Spacebrew workshop. We were happy that everyone was able to get a local server up and running, and that they were able to start connecting apps.  

Here is the presentation that we shared at the meet-up. Please note that the links on the presentation reference webpages that were running on a local server, so they won't work if you try to follow them. Also, most of the information featured in this presentation about running the server is also available at github.com/spacebrew/spacebrew.

After the presentation we've included a few pictures from the workshop. To take a look at all of the pictures, check out the set on flickr.



What's Brewing: Interactive Projection at MUTEK

Montreal-based creative studio Departement created this awesome interactive projection mapping installation at MUTEK. Festival goers can interact with the projection on their mobile phone via a web app that connects to the installation using Spacebrew. Thanks to Hugues Bruyère, one of the partners at Department, for sharing this project with us.

Learn to Set-up a Local Server: Workshop at MAD


We are excited to announce our next Spacebrew workshop  at the Museum of Art and Design (MAD) on this coming Saturday, June 1st. This jam session is the third and last installment of our workshop series that is part of the After the Museum exhibit.

This time around, we'll teach you how to set-up your own Spacebrew sever. Anyone is welcome to join, familiarity with Spacebrew and attendance to previous workshops from this series is not required. That said, some experience with coding and using a computer terminal or console application will be helpful.

Just like our previous sessions, everyone who signs up will get complimentary entrance to the museum. Spots are limited so sign-up todayWe're looking forward to seeing you there.

What's Brewing: Remote Presence Platform

Our friend Adam Lassy and his colleagues at MadSci Lab, Havas' Emerging Technologies Lab, have created a really awesome remote presence platform using Spacebrew. The goal for this project was to create a platform that can "remotely control actuators (servos, dc motors, linear actuators, etc) in a flexible way." Spacebrew is used to link the local and remote apps. 

Back in grad school I tried to create a remote/internet controllable cat toy like the one featured as an example of how this remote presence platform can be used - my attempts failed miserably.  I'm happy that someone has finally been able to pull this off in such an awesome way.

Check out their blog for more information about this project.

SpaceBruby Alpha has Landed


We are happy to announce that an early alpha version of a Spacebrew library for ruby is in the works. It has been dubbed SpaceBruby by Chris Allick the lead developer on this effort. The library is available from GSPB Beta Group's github repositoryThanks Chris for taking the time and effort to start this endeavor.

This library is still in early alpha, which means that it has very basic functionality and there is no documentation or examples. Don't let that stop you from taking it for a spin. Also, feel free to help carry the torch and take this library from its current state to a more polished resource.

We're Back: Museum of Art and Design Workshop


We are excited to announce that our next Spacebrew workshop at the Museum of Art and Design (MAD) is coming up on May 11th. This is the second installment of our workshop series, which is part of the After the Museum exhibit. 

Space is limited so make sure to sign-up for the event on meet-up as soon as possible. The workshop will take place on the 6th floor, in a room with beautiful views of central park. You will also get free access to the entire museum. 

Here is a quick overview of the day's activities:

  • We will begin with a 30-minute overview of Spacebrew,  which will cover why it was created and how it works, followed by a few live demos.
  • Then we'll dive into an hour long hands-on workshop where we will take participants through our a tutorial for connecting an LED strip to Spacebrew using Arduino and Processing.
  • After the workshop we will hang out for a few hours to help people who are interested in learning about more advanced uses of Spacebrew, and who want to integrate Spacebrew into their personal projects. 
  • If you want to a Spacebrew project on which you've been working, let us know and we'll try to carve out 5-minutes for you after the workshop.

You don't need to have any previous experience with Processing or Arduino to take part in the workshop. The workshop will be a little challenging for you, if you've never written any code before. However, if you are up for the challenge we'll help you through it.

We will bring a few Arduinos, breadboards and components for participants to use in the workshop, however, we will not be able to provide laptops or computers. Please note that people will have to work together in groups, as we won't have enough components for everyone.  Feel free to bring your own gear, just check out the tutorial to see what basic components to bring.

About MAD: The Museum of Art and Design explores the blur zone between art, design, and craft today. Accredited by the American Association of Museums since 1991, MAD focuses on contemporary creativity and the ways in which artists and designers from around the world transform materials through processes ranging from the artisanal to the digital.

Publish Tweet and Forward Instagram Photos


Earlier today we uploaded the latest version of the Spacebrew webservices forwarder app. Now you can publish tweets and forward images from instagram via Spacebrew.  We developed these apps as we continue to explore ways to integrate our favorite web services into Spacebrew environments.

Twitter Update App: this app accepts string messages from Spacebrew and publishes those messages to twitter. If a message is longer than 140 character, it will publish just the first 140 characters. In order to activate this app you need to link it to a twitter account every time you load it. As you would expect, the tweets are published to this account.

Instagram Forwarder App: this app allows you to search for images using tags only. Please note that Instagram only accepts tags that are one word long; so if you try to search for a two word tag the app won't return any results. In the near future we will are planning to add the ability to forward images based on location and user.

We are hosting an instance of these apps on our Spacebrew server so that you can check them out without needing to install a local version on your own computer, since that process is somewhat involved. Just follow the links above to give them a try. Please note that these apps are in alpha stage; and are likely to remain in alpha for the indefinite future.

If you do want to run a local instance of this app you will need to set-up an application with each of these web services and set-up a Temboo account. We use Temboo to interface with the APIs for all of these web services because it facilitates the authentication process, and provides a more consistent way to handle the API communications.