Programming matter

work team: Tommaso Casucci, Michele Semeghini

This is a series of studies developed during a recent collaboration with Co-de-iT and is a step forward in a larger research project focused on the exploration of the possible interactions between digital computation and complex and selforganizing physical processes.
The series is  developed on the base of a small bit of code refined during the ‘BioLogic:living structures and swarm bodies’ workshop, aimed to facilitate direct communication from Processing to FDM 3Dprinters through the generation of G-code instructions. Code is available here
The studies main goal were to explore the combined use of generative design strategies and material computation, in particular the capacity of plastic threads to self-organize in curly geometries once extruded from the printer.

Design exploration consisted at first in calibration and mapping of the different material behavoiurs based on the variation of different extruding conditions. Parameters we found to affect the most the extrusion were:
. extrusion length
. extrusion velocity
. nozzle height from the deposition plate
. material
. nozzle size

Once a comprehensive catalogue have been refined, a series of design studies was developed were on one or more of the parameters above was varied according to modulate structural, aesthetical or performative qualities during the extrusion.

A short selection of 3Dprinted samples and screenshots from the Processing application below :


the Hive

  The Hive is a quick project proposal for a lamp. Most of the internal components, from the lamp shade to the socket are 3D printed. Once assembled the lamp just needs the addition of a light bulb and the plug of a power cord to become fully functional.

A prototype of the lamp will be presented at Source, self made design exposition from 11th to 18th September in Florence.



Processing + Digital Fabrication

Processing Workshop + Experimental 3Dprinting beginner/intermediate level

[.] Brief 
Processing is an open source programming environment based on the programming language Java. First developed inside the contest of MIT it rapidly evolved as an invaluable tool for media artists, designers and programmers around the world for many different applications.
The three days workshop are thought as an introduction to generative design through the use of the Processing environment and will be aimed to the production of FDM 3D printed physical prototypes. During the workshop we’ll explore the use of Object-oriented Programming as a paradigm through which explore the emerging effects of dynamic and complex systems defined by the interactions between multiple objects. Starting from the basics we’ll cover dynamic simulations and multi-agents systems. The workshop will introduce partecipants to unconventional 3D printing techniques, through wich we'll be able to describe directly 3D printer machine paths, extrusion fluxes and velocities generating Gcode files from Processing.

Processing è un ambiente di programmazione open source basato sul linguaggio di programmazione Java. Sviluppato inizialmente all’interno dell’ambiente universitario dell’MIT è rapidamente stato adottato da media artists, designer e programmatori di tutto il mondo per molteplici applicazioni.
I tre giorni di workshop sono pensati per una introduzione al design generativo attraverso l’utilizzo del software Processing e saranno mirati alla produzione di prototipi fisici tramite FDM 3D printer. Durante il workshop saranno approfondite le logiche dell’Object-oriented Programming come paradigma attraverso il quale esplorare gli effetti emergenti di sistemi complessi definiti dall’interazione di molteplici elementi.
Partendo dalla trattazione delle strutture base della programmazione il workshop arriverà a coprire simulazioni dinamiche come sistemi di particelle e multi-agents systems. 
Il workshop introdurrà i partecipanti a tecniche di stampa 3D non convenzionali, caratterizzate dalla possibilità di descrivere direttamente percorsi macchina, velocità e flussi di estrusione tramite generazione di Gcode da Processing.

[.] Detailed schedule
       . introduction to generative design
       . Object Oriented Programming concepts
       . Processing overview
      . variabiles
      . operators
      . control flow statements
      . functions
      . classes
      . arrays
External libraries
      . peasycam
      . Toxiclibs
      . controlP5
     . designing for 3D printing
     . generating Gcode
     . 3Dprinting

[.] Tutor:
Tommaso Casucci (Co-de-iT, synthetic morphologies) + Michele Semeghini (Co-de-iT)
[.] Where
Quartiere Intelligente, Napoli
[.] Timing
9:00-13:00  and 14:00-18:00
[.] Requirements
Partecipants will need their own laptops with Processing installed.This workshop is suitable for anyone, even those with no programming experience at all. The workshop main language will be Italian.
[.] Info, prices & applications
Application fee is 300 € + IVA ( 250 € + IVA students) ( 220 € + IVA earlybird).
Earlybird applications close on 31.05.2014.
The workshop will be activated with a minumum number of 10 partecipants.
For any infos and applications write at: quartiereintelligente@gmail.com
[.] Organized by
This workshop is organized by Quartiere Intelligente, in collaboration with synthetic morphologies and WASPproject



Multi-agent simulation made in Processing, the agents behaviour is a combination of two main rules, descendent alghoritm and stigmergy. Terrain is generated through a perlin noise function.

Licenza Creative Commons
This opera is licensed under a Creative Commons Attribuzione 3.0 Unported License.