Automatic Merge Failed: Differences that matter

The production of Free Software happens within a legal framework that guarantees all users the freedom to run as well as study, modify, and distribute source code for any purpose. It allowed a vibrant ecosystem of networked communities to flourish, forming what Christopher Kelty has described with the term 'recursive publics'. Software consists of hundreds of individual files and interconnected libraries that are being operated on by many different people. For managing those multifaceted objects, Distributed Version Control helps to keep track of files, visualising 'differences' between subsequent versions. Distributed Version Control is a type of meta-software that has become the norm in managing code development, changing the understanding of Free Software production through its orientation towards 'forking' rather than 'merging' projects. Where the heightened attention for difference could draw collaborators together to discuss and merge conflicts, the mechanisms built into Distributed Version Control makes forking a code base an easier option. Automatic Merge Failed is a close reading of the way 'difference' is encoded into software, and insists on it's centripetal potential.

-------------


as soon as a conflict emerges

using 'difference' as a point of orientation.



Difference is situated ... 
Orienting, dis-orienting and re-orienting difference

Meritocracy: How meritocracy un-situates knowledge

helps organise code development through the publishing and archiving of

freedom (freedom as non-consequential practice) to nonstop forking can lead to an undesirable situation of individualisation or non-cooperation (freedom as a means to the end of the social texture of tools construction)


Black mirror -- undo (remember, record)


Narrow understanding of difference -- conditions, needs ... situated: meritocracy un-situates knowledge, practice. 
"everyone can be Obama"

what is difference?

what is meritocracy?

difference is situated, and hence needs a structure (if not: Freeman's tyranny)

good code rejects community?? (it's supposed to keep functioning in transplantation)

"difference is here to stay"? where is that here? what dos it mean to stay? who with? for how long? to opperate how? under what structures? 

merge is one of the possible situations, but must be attednded with the same political respect (protocols, structures, timing, comprehension) as forking or dissolving

merge, converge

orientation Sarah Ahmed
turning our back
F*rk you all

meritocracy: disagreement of what it means to disagree

convergence (ex.: Guanyem or PAH)

disposession & dissorientation

centralized not as in "central unique possible space", but as in "having the central aim clear", even when the manners to reach it are differentiated. Center not as in "city center", but as in "main problem"

multifaceted object

amputation 


centrifugal or 

Torvald not here to be nice

Fork

Distributed -- fork --


Through visualising differences between files, 


But what happens when 

Conflict    Resolution - about consent, consensus and conflict and how  they are    communicated through software; fork, merge and branch 

Automatic merge failed looks into how those tools might shape an alternative vocabulary and imagination of sharing. 


Collaboration and difference 

What to make of a practice of collaboration that puts difference at it's core? What models of consent, consensus and conflict are encoded in versioning software,
and how to imagine other ways of working together?

Conflict Resolution Vocabularies and practices of consent, consensus and conflict: diff, fork, merge and branch.

Fork 

Fork workers

--------------------

Never-ending undo is an attempt to think through specific  practices of sharing and collaboration that emerge in creative digital  work inspired by the culture and cult of Free Software. It explores the  ethics and aesthetics of this iterative, reversible and promiscuous type of practice.


I will look into how Revision control tools, as they are used by  software developers, artists and designers alike, shape our ideas and  imagination of collaboration and sharing. I will give a talk, develop a  small installation, and maybe we come up with some sort of  worklab/gettogether.

Collaboration and difference - what it means when not sameness but  difference is at the heart of collaboration but also working through  some ideas about historiographies of practice 
Workflow - about productionist tendencies; GIT as the new cv but also something on cloud vs. self-hosted archives of work 
Conflict Resolution - about consent, consensus and conflict and how  they are communicated through software; fork, merge and branch 
When Everything Becomes Software - what it means when the culture of software development becomes the measure of things 



Never-ending undo
Never-ending undo is an attempt to think through specific practices of sharing and
collaboration that emerge in creative digital practices inspired by the culture and cult of
Free Software. It explores the ethics and aesthetics of this iterative, reversible and
promiscuous type of practice.
Throughout my work as graphic designer, artist and researcher I have been interested in
the way tools and practices shape each other, and more specifically how software and
design-work interrelate. 

Free software relies on the access to source code at any time. As projects continue to
develop, hundreds of individual files are being operated on by many different people.
Version Control or Source Code Management systems help to manage such complicated
collaborative processes by streamlining the publishing, comparing and archiving of code
development.
For this project I would like to focus on Git, a popular distributed version control system
designed by Linus Torvalds for Linux kernel development. Recently designers and artists
started to employ Git and it's hosted variant Github to make their sources available. This is
creating interesting opportunities and problems that I would like to work on:
Collaboration and difference What to make of a practice of collaboration that puts
difference at it's core? What models of collaboration are encoded in versioning software,
and how to imagine other ways of working together?
Conflict Resolution Vocabularies and practices of consent, consensus and conflict: diff,
fork, merge and branch.
Historiographies of practice How version control, through a continuous publishing of
differences, can be a way to narrate, archive and write practice.
Workflow What kind of work is foregrounded or backgrounded in this type of software?
What ways of doing and divisions of labour are expected and what if we wanted to change
them?
When Everything Becomes Software How to articulate practices that are not necessarily
code-centered, through the template of Software development? What about making
images?
The first phase of Never-ending undo would be a series of software exercises
(experimental ethnographic research, toolbending and speculative prototypes) mixed with
reading and writing plus visual research. Also I would like to host one or two collaborative
sessions with a small group of invited developers, designers and thinkers. Hopefully these
sessions could involve fellow residents too.
The second phase would be to transform Never-ending undo into a curatorial concept for
an exhibition of works, artworks, processes, designs and softwares. This exhibition concept
would be a contribution to Etat des Lieux, a project of reflection on collaborative practices
that Constant is developing for 2014.