=Paper=
{{Paper
|id=None
|storemode=property
|title=Developing open & distributed tools for Fablab project documentation
|pdfUrl=https://ceur-ws.org/Vol-739/paper_21.pdf
|volume=Vol-739
|dblpUrl=https://dblp.org/rec/conf/okcon/MaattaT11
}}
==Developing open & distributed tools for Fablab project documentation==
Developing open & distributed tools for Fablab
project documentation
Anu Määttä, Peter Troxler
ProtoSpace (Fablab Utrecht) / independent researcher
anu@protospace.nl,
http://protospace.nl
Abstract. Fablab project / HOWTO documentation sharing has not
had a major focus on Fablab network development so far. To this end,
a series of “platform” workshops and calls have been taking place as
of August 2010, covering topics from (online) community development
in general to formalizing project descriptions in order to accommodate
different web platforms used in the distributed Fablab network (initial
proposal for open hardware information interchange format – FabML)
The goal of the proposed talk is threefold:
1) To demonstrate the checking in & checking out concept for document-
ing Fablab projects on Drupal platform as part of the lab visit developed
at ProtoSpace (Fablab Utrecht, NL) and use of Wordpress as documen-
tation tool
2) To demonstrate project documentation aggregation from Fablabs us-
ing different open source content management systems used within the
network (Drupal, Wordpress, Mediawiki being main ones currently in
use), and first practical experiments with aggregation and FabML.
3) in the context of the Open Knowledge conference, opening a discussion
on open documentation formats for open source hardware documenta-
tion.
1 Content
Fablabs are an international network of open access high-end workshops for
personal digital fabrication. Equipped with standard machinery they foster peer-
to-peer learning on manufacturing, design and technology. Fablabs were created
with open design in mind - machines are available to use for free (gratis) with
the understanding that users would share their knowledge of how to work with
the laboratory machines and document the physical objects that they made in
the labs.
While sharing is relatively easy at a local level and on a synchronous, face-
to-face basis, mediating technology is needed to share experience over time and
across geographical distances. In practice corresponding tools for project docu-
mentation have lagged behind the needs of knowledge sharing. This is becoming
a key issue as the Fablab network is at the dawn of an exponential growth phase,
with currently around fifty labs in operation and another fifty due to open within
a year or so.
Even if open source hardware project online repositories do exist (e.g. in-
structables.com, thingiverse.com), for various reasons these may not cater well
enough for the needs of the Fablab network:
– they are run by external, often commercial entities (which despite best in-
tentions might become an issue in the longer run)
– they are not offered as open source platforms that can be installed and
configured on independent servers: full customization to Fablab needs is
not possible (e.g. localization and “business process” needs (such as visitor
logging) cannot be addressed)
– they would cover an aspect so central to the outreach and education agenda
of the Fablab network – the sharing of knowledge on how to build things –
that it is questionable if such a task really should be outsource to a third
party, potentially hampering the future of Fablab community development
To tackle the issue, a series of “platform” workshops and calls including
people from various Fablabs globally have been taking place as of August 2010,
covering topics from (online) community development in general to crafting de-
centralized models for documentation sharing.
One of the key outcomes of these discussions and prototypes in the works
was the initial proposal to define an information interchange format enabling
different Fablabs sharing their documentation regardless documentation system
used at an individual lab. “FabML” would be an XML definition tailored for
Fablab / open source hardware project documentation needs – including things
such as controlled vocabularies for machines and materials needed to complete a
project in order to allow global search and to specify and formalize other aspects
of manufacturing as the need arises.
Simultaneously to these talks, prototyping various aspects of the documen-
tation platform took place:
– at ProtoSpace (Utrecht, The Netherlands), documentation station integrated
with the website of the lab running on Drupal platform was conceptualized
to make project documentation a natural part of lab visit
– at the Swiss Fablab (Lucerne), a Wordpress solution for documenting and
sharing (syndicating) Fablab documentation is under development
– An aggregator prototype was started at fabfolk.com (Fablab community
tools website) to gather documentation from these initial sources
At ProtoSpace, development of a dedicated documentation station was deemed
necessary due to the lab being very popular at times, which gives little possibil-
ity for lab personnel to assist lab visitors in much else than questions directly
related to machine usage.
As part of the lab management procedures, ProtoSpace has been collecting
some information from the users for the purpose of keeping record who’s been
there doing what – important for providing overviews for the lab supporting
parties. To this end, a “kiosk” has been used – a computer next to lab door to
record some demographic data along with people’s intentions of lab use (browser
window + simple Google Docs form).
Combining this information gathering need, the kiosk and the needs of docu-
menting resulted in conceptualizing a check in / check out system and completing
the circle by designing another kiosk for documenting the lab creations (design
and prototype creation at ProtoSpace by Evert Veldhuis for his diploma in Prod-
uct Design - the design is to be made available under open source license).
As Drupal is the web platform of choice at ProtoSpace, it was natural to
use that as the software platform although writing custom desktop software
for the kiosk stand was also considered. As a thriving open source software
project, Drupal offers a fairly modular way to develop new functionality based
on existing building blocks, often even without any custom development. For this
prototype most of the needed functionality was provided by Drupal contributed
modules providing solutions of issues such as content manipulation workflows,
triggerable system events, content type definitions and summary views, which
were configured to serve the requirements (in fact no small task either). Only
the need to log visitor demographic information and lab usage patterns in a
consistent and customizable enough manner required a custom module being
developed.
Content type for the actual project description has been in flux until now
- the initial version included project name, description, picture of the product
(made with Wifi-enabled camera to bypass laborious manual transfer of pho-
tographs from camera to computer), machine used and file used to control the
manufacturing machine (e.g. STL file to be 3D-printed).
With the most recent version it is also possible to provide step-by-step il-
lustrated instructions as part of the documentation and the content is being
handled in a more modular fashion in order to be able to accommodate flexibly
enough for future needs.
As the software prototype is being completed, the challenges of this approach
are only starting to arise. Even if the intention was to be able to tie documen-
tation process tighter with the lab visit, the feasibility of documentation on the
spot is in some cases premature and users have expressed wishes to be able to
finish off their documentation upon project completion and in more detail later
at home. User interface issues have been prevalent in the earlier prototypes,
as the technical solutions for managing the documentation content input have
been in flux, even if the existence of physical station otherwise has managed to
lessen the documentation helpdesk burden on the lab personnel. It also seems
more general education on open source hardware philosophy and creative com-
mons -type licensing might be necessary for those visitors who are new to these
paradigms.
The first Swiss Fab Lab at Lucerne uses the Wordpress blogging script to
capture documentation. The documentation is currently primarily visual, adding
photos of the making process to a flat (textual) step-by-step description of the
process. The steps are not marked specifically in some machine readable form,
and there is no extra metadata captured beyond what Wordpress logs in its
standard set-up.
Wordpress is able to generate almost any RSS feed from whatever is required
– whole blog, single categories, tags, comments etc. (for details see http://codex.wordpress.org/WordPress Feeds
Those feeds normally also include all images that are placed into the post con-
tent. However, when there are a number of images (or other media) in the post’s
gallery, i.e. attached to the post but not actually placed into the post data,
those images are not part of the regular wordpress feed. A specific template was
created to generate an RSS feed that includes all attached images, not only the
ones placed into the post content. This template uses the Media RSS Module
2.0 specification that supports the ¡enclosure¿ element capabilities of RSS 2.0 to
allow for more robust media syndication. Additionally a function was added to
announce this specific feed to aggregators. This feed could then be read by the
aggregator at fabfolk.com.
The two main challenges for capturing and syndicating documentation with
Wordpress are adding other media than pictures and adding metadata. Media
files could be any IANA media type (see http://www.iana.org/assignments/media-
types/application/index.html), particularly production files such as CAD draw-
ings, but also machine settings files and similar that might not conform to a
IANA media type. For adding meaningful metadata, standard vocabularies spe-
cific to open source hardware and personal digital manufacturing and methods
for syndicating this metadata would have to be agreed upon.
First prototype aggregator was constructed to gather and parse feeds from
these initial sources. It is also based on Drupal due to existing modules able
to process incoming data in a meaningful way and knowledge of the platform
by project collaborators, although the platform has not been set in stone. De-
velopment has so far been focused on mapping out existing Drupal resources
for RSS and XML feed parsing, with some thought given to issues arising from
distributed content management in general, such as how to handle user feedback
to an aggregated content item and how to deal with derivative projects.
The challenges arising from trying to parse initally mostly unformatted RSS
feeds for meaningful and searchable project information directly gave us the idea
of XML-based documentation sharing format, considering the methods used by
content management systems used in individual labs to create RSS feed cus-
tomized to any extent could also be used to deliver XML feeds without much
extra effort. The initial concept of “FabML” proposed to define minimal require-
ments for open hardware project information sharing, including clearly defining
purpose of attached/linked media file(s) and controlled vocabularies to describe
machines and materials needed to complete a project.
It is early days yet to formalize all aspects of production, as platforms for
documentation at a local level are still partially under development - but the need
for defining at least some aspects of production to enable cross-lab shareability of
projects clearly exists in an environment as heterogenous as the Fablab network.
Questions we hope to gather input for in the context of open knowledge
conference:
– Enquire the need for open source hardware documentation formats and for-
malization of different aspects of hardware production.
– Use of existing content definition frameworks such as XML, RDF, RDFa and
in particular, initial proposal for FabML
– Views and solutions based on experience on issues that may arise from col-
laboration within a distributed network
2 About the Author
Anu Määttä (M.Sc. Computer Science / University of Helsinki) has deep interest
in community building, is currently employed at ProtoSpace (FabLab Utrecht,
NL) and constributor to Fablab community and platform development
Peter Troxler (Dr. sc. techn., MSc, ETH Zurich) is an independent researcher
at the intersection of business administration, society and technology. One of his
interests is the application of technologies, particularly Internet and Web 2.0
technology, to support models and formats of co-creation.