Besides the opportunity to promote the project and share my current work, this gathering is an opportunity to actively collaborate with artists and to observe first hand their creative processes and relationship with technology.
This environment is also an excellent opportunity to perform tests and drive forward the code's development to provide useful functionality faster, taking it one step closer to being usable in real projects.

Take a look at the residency's wiki page to know about all the project being developed here.

From the outset, dataflower is meant to be a practice based research project. My main motivation for it came from the experience of many years developing digital art installations with diverse teams, noticing many recurring technical and soacial patterns and thinking "there has to be a better way to approach these problems". Most of my research on this project so far has involved creative practice, but mostly in a non-participatory way, through observation, interviews and questionnaires. To actually get involved in creative projects and use practice as a way to shape the development of dataflower, I first need to have a minimal working version which actually does something interesting and useful.

I now have such a prototype of the whole system which I can use as a foundation for more active practice-based research, but I still need people to experiment and to try building projects with it and give me feedback, so I need to start meeting and working together with them more regularly, so i came up with the idea of organizing data gardens.

A data garden is an open collaborative development event for all those interested in learning, working with and improving the dataflower tools and on reflecting about the issues related with parallel, heterogeneous and distributed computing in digital art practice. The focus of each event will depend on the participants interests, but my plan is to have a specific topic to discuss or a new feature to test for each session, which should happen at least once a month.

Last saturday, July 19, I got together with a group of digital artists and researchers at Audiência Zero in Matosinhos, Portugal, to perform a pilot test for these sessions. Since this was a first and the tools are still a bit rough around the edges, I started with a small presentation to present the project and its motivation and to elicit feedback from the participants. I then presented a brief tutorial of FBP concepts using microflow and gave a brief overview of the upcoming libflow library. Next I presented a prototype of the dataflower environment and we had a brainstorming session on mental models for complex systems and collaboration tools.

Many thanks to Audiência Zero for hosting the meeting and to all who participated for their interest and wonderful feedback. The next data garden session is scheduled to take place in Coruña, Spain, from 17 to 21 of September as a work node part of the Artropocode residency, and you are most welcome to join us.

If you want to host or participate in a future data garden event, get in touch.

One of the cool things I got around to doing for my Codebits presentation this year was to finally dust off and publish microflow, my experimental Python implementation of the basic Flow-Based Programming concepts.

This small library was very useful to me during the early stages of my research, when I was first exploring the ideas around Flow-Based Programming, but it never actually worked in the sense that you could build anything but very simple applications with it. So while I was going through the FBP book again while preparing for my Codebits talk I took the chance to finish off the rough edges of the library and update it to use Python 3. I also optimized it for readability, so other could use it as a learning tool or as the basis of other runtimes.

Sure, there are other FBP or FBP-like runtimes written in Python, like Kamaelia or protoflo, which are more robust and better performing, but if you are learning about the basics of Flow-Based Programming, it could be a simple example to start playing with the concepts in a very expressive and readable language.

So, if you have some time have a go at it and let me know what you think. I hope it can be as useful to you as it has been for me.

I was lucky enough to attend Codebits again this year, and the event was awesome as usual. In the middle of all the things to see and do at the event I was able to present a talk again, this time focused on the topic of Flow-Based Programming. For those whose could not come to the event, here is the original talk description:

As software developers, every day we are faced with ever more complex
systems to run our applications. Single machines are not enough. Now
we need to orchestrate hordes of multicore CPUs, GPUs and DSPs to run
our applications in a scalable, distributed way and this is hard.

Flow-based Programming is a
programming methodology created by J Paul Morrisson at IBM in the 70s
in order to solve everyday challenges he faced when developing large
scale business applications. Based on a solid theoretical foundation
and battle-tested on real-world applications (with one of them running
continuously for the last 40 years), FBP is making a comeback as an
effective model to reason about and implement data intensive,
distributed applications, as can be seen by the growing interest in
tools like NoFlo and Storm.

In this talk I will present the history and fundamental concepts of
Flow-based Programming, and how it is different from other models like
dataflow, functional and object-oriented programming. We will then use
noflo to develop a small heterogeneous application using this
methodology.

And here is the talk video:

I think the talk went well and that I managed to get the main ideas across, although looking back it probably sounded a bit confusing because I couldn't see my notes during most of the talk. I'll see if I can expand those notes a bit and post them as a follow-up to this post. In the mean time do check the other Codebits 2014 talk videos, there's lots of good stuff there.

Here's hoping to be able to present again next year to showcase dataflower to the Codebits crowd.

One of the nice opportunities afforded to the students in the UT Austin|Portugal program is the chance to make an short time visit to the city of Austin to get to know the UT campus and to visit faculty and research groups related to their research areas to explore opportunities for research collaboration and to prepare for a possible one semester stay as a graduate student or as an invited researcher.

I was very looking forward to this opportunity since my PhD started but I could only find the time to do it during the last week of May. The city of Austin is beautiful and very culturally active, well worth a visit on its own, especially during the Spring time.

On my first day, I had a chance to tour the RTF department's production facilities. I discovered resources for 3D projection, DCP creation, motion capture, surround sound production and reproduction, audio foley and mixing, video editing, as well as the audiovisual production material (cameras, lights, audio recording and studios). I alsoad the chance to talk a bit about my work with Keefe Boerner, the production facilities manager who kindly showed me around the place, and how it might be used to help automate the heterogeneous systems used in stage production (lights, audio, projections, smoke machines, etc.).

Next day, I met with Professor Luis Francisco-Revilla at the TACC VisLab. Professor Revilla had formerly been my instructor on the HCI Summer School at FEUP in 2012, and naturally our conversation flowed around HCI aspects of my work, especially in what regards to evaluation, i.e., how to measure success in face of the development goals, how to define what aspects we want to evaluate and how to setup user studies for it. On this day I also met Rob Turknett at the VisLab and he showed me around the lab's resources. We also had a brief chat about my work and how it parallels and complements some of the work being done at the lab. Rob is also one of the founders of the AMODA (Austin Museum of Digital Art) group and so we also talked a bit about the digital art scene in Austin. Also on that day I met fellow classmates living in Austin and visited the ATX Hackerspace.

On another day I had the chance to meet with Professor Sharon Strover and we had a really nice conversation about many topics related to my research and the Digital Media program. In the afternoon I met with Professor Donald Fussel in the CS department and I got to know a bit about the research his group is doing, especially work related to developing user interfaces for artistic creation, and he gave me some feedback on some specific aspects of my work. I also got to meet some of his PhD students.

On my last day at Austin, I briefly met with Professor Brian Evans, and we talked a bit about his research work and his experience with digital art student's projects. Later that day I met with Professor Bruce Pennycook at the Fine Arts department, and we talked mostly about open-source and creativity support tools, and he gave some very interesting critical feedback on the tools I'm developing from his perspective both as a researcher and as a practitioner.

Overall, I have really enjoyed my time at UT Austin and I met many nice people doing some really interesting work. This visit has really helped me refine the scope of my research and opened many doors for future collaborations.

The "Collaborative Practices in Creative Computing" study is now over, and the number of responses has far exceeded my expectations. I'd like to send a big heartfelt Thank You to all who have participated, your input will definitely help me develop new tools which will hopefully help your creative practices.

It will still take some time to fully explore the data from the study and draw some meaningful conclusions, so in the meantime my focus will be on building the code scaffold for dataflower, a minimum base platform that can be publicly released and used to develop creative projects.

As we enter the development stage, I'm also going to try and make better use of this blog as a communication and research platform. So expect more frequent updates beyond the odd announcement here and there.

As the first stage after the approval of my research proposal I have been conducting since the summer a set of qualitative and quantitative user studies in order to better understand the work processes and practices surrounding creative applications of technology in New Media Art.

I am especially interested in which technologies and tools are more prevalent, and how these are used to support the creative process and emergent collaborative practices. The process started with informal ethnographic observation performed at artist residencies, from which I gleaned a set of observations that allowed me to do a set of semi-structured interviews with artists and creatives who use creative computing technologies in their work. These interviews resulted in deep, rich insights into the needs and practices of New Media artists in creative environments.

The last step in this set of studies is a broad online questionnaire that aims to quantify with a larger sample some of the salient aspects of the previous studies. If you are an artist or creative using digital technologies to develop your work (especially if involves applications of interactive systems like art installations or live performances), Id like to invite you to
take part in this study. and help us improve our understanding of your practice so that we can develop better tools.

Every year, the UT Austin|Portugal Colab program organizes the Future Places festival in Porto, Portugal. The first day of the festival usually starts with a research symposium where the program's PhD students (like myself) present the state of their work and gather feedback from their colleagues and the program's faculty. It is always a great opportunity to meet new and old friends and to learn about everyone else's research experience.

I presented the work done so far in dataflower, a condensed version of my research proposal, and some preliminary ersults of the need finding study I'm currently working on. I received some very good feedback and I'm definitely looking forward to participate again next year.