Welcome to Etherpad!
This pad text is synchronized as you type, so that everyone viewing this page sees the same text. This allows you to collaborate seamlessly on documents!
To prevent your pad from appearing in the archive, put the word __NOPUBLISH__ (including the surrounding double underscores) anywhere in this pad. Changes will be reflected after the next archive update.
Warning: DirtyDB is used. This is fine for testing but not recommended for production. -- To suppress these warning messages change suppressErrorsInPadText to true in your settings.json
One commit doesn't make a story (Alex Leray)
Open Source Publishing is a collective of designers and programmers working with Free, Libre and Open Source tools. A few years ago, as part of their daily workflow, they started to use the versioning software tool 'git', and many other collaborative tools (etherpad, owncloud, ...). Each of these tools has its own way of keeping archives, logs and timestamps. The result is a treasure trove of very rich and at the same time fragmented traces that could potentially tell the story of their collective design practise, but always almost, or not yet. So far OSP made several attempts to knit together these fragments into stories, bridging gaps in temporality and materiality. There is a tension between capture and narration, between automatic logs and storytelling. What should be integrated in the story? How to account for the heterogeneity of processes and data? How can the context be made (in)visible? Maybe some visualisation might help? Or other generative tools? Alex presents us some of OSP experiments on rendering their practice legible and invites us to think together about how to tell stories between a collective of people, projects and tools.
http://osp.kitchen/work/stories/
project with three titles
by alex, magnus, adva
presented on saturday:
https://asciinema.org/a/cel358ytg5o3uhi2n8z95yzwe.png
(image)
https://asciinema.org/a/cel358ytg5o3uhi2n8z95yzwe
(link
to a recording of the full script
)
(NOTES FROM THE PRESENTATION BELOW)
Work session wednesday: exploring Git notes
We will work on Adva's book:
http://gitlab.constantvzw.org/osp/work.adva-zakai.overbooked
git clone
http://gitlab.constantvzw.org/osp/work.adva-zakai.overbooked.git
See Git manual:
https://git-scm.com/2010/08/25/notes.html
"git notes" command to annotate existing commits.
That means to add notes to a commit, without altering any of the information connected with that original commit.
git saves notes as binary large objects (encoded BLOBs, not straightforward text). Can notes be graphics, or have images attached to them?
Alex: you can view these BLOBs as text (what could we do with that?)
ADD A NOTE TO THE MOST RECENT COMMIT RECORD IN GIT:
add a note directly from the command line, in a single step
git notestg add -m "Hello"
git notes show
list all commits with their hash key identifiers
git log
ADD A NOTE TO A SELECTED COMMIT RECORD IN GIT:
(add a note on a specific commit, referred to using its hash key):
git notes add 52f13f8a6b5a89c4bb50614d1151284b2ce5f0ac
opens an editor for you to add your note, additional to the original commit
git notes also allows you to write more than one note and attach this to a commit record
Since you can only have one note per commit, Git allows you to have multiplenamespaces for your notes.
git notes also allows you to push (share) notes to the associated repository
# Adding a note to the last commiton the namespace "ns1"
git notes --ref=ns1 add --message "hello"
# Adding a note to the last commiton the namespace "ns2"
git notes --ref=ns2 add --message "cool"
# Adds a note to a specific commit
git notes add --message "I love conflicts" 842210f
# show the note on the last commit for namespace ns2
git notes --ref=ns2 show
# shows the log with attached notes (only in the default namespace)
git log --notes
# Append some text at the end of a note
git notes append -m "yes"
# Sow note for te last commit
git notes show
# Show all notes for branch master
for commit in $(git rev-list master); do git notes show $commit; done
# Show log + notes
for commit in $(git rev-list master); do git --no-pager show -s --oneline --notes --notes=ns2 --notes=ns1 $commit; echo "***" ; done
# show logs + notes (simpler)
git --no-pager log --oneline --notes --notes=ns2 --notes=ns1
git log --show-notes
# Fetch the notes from a remote repository
git fetch origin "refs/notes/*:refs/notes/*"
# Push notes to a remote repository (aka share your notes)
git push origin "refs/notes/*"
Using images in notes
https://en.wikipedia.org/wiki/X_PixMap
http://stackoverflow.com/questions/11829078/how-to-delete-git-notes-commit
# get the hash of the note for object
git notes list a262f9ca51
Brainstorm
what do you capture, what do you record
? (metadata, intents, etc.)
different logs co-exists: you don't necesserally commit after you edited.
when do you commit
?
when you need to share.
when you reach a critical decision (testing out something)
what kind of writing - practical, technical writing - no narrative use
writing through/with zotero
Catherine: I was considering using the 'notes' part of Zotero (
https://www.zotero.org/
) to write narrative fiction for Anna K.
Documenting while the process is taking place. This can be problematic.
Document-as-you-go
Do things get too easily/to quickly decided
"commit" as a term is super heavy. A commit is forever, no rewrite possible (well, you can revert but that is in a way not a rewriting).
process of committing as a care-taking
Question of
time is crucial. Promise to be closer to practice. But the problem is that it is often too soon.
Femke: my feature request for git would be adding descriptions, labels
, postscriptum
to the commits - i.e. to improve documentation, by adding context or reflection.
i
http://stackoverflow.com/questions/4404172/how-to-tag-an-older-commit-in-git
(tagging is of course not the same thing...)
`git notes`: Adds, removes, or reads notes attached to objects, without touching the objects themselves.
A typical use of notes is to supplement a commit message
https://git-scm.com/docs/git-notes
thinking about the shiplog -- (log-book)
what do you have in mind: different for archival purposes from a printed book.
Printing your tumblr
:
http://writable.tumblr.com/
gitlog as a colophon
The commenting is shipped along with the sources. It is part of the history, not external
How does the narration/description influence the actual practice.
Showing the comment of
Recipes being both instructions and descriptions
How to not separate the writing from the practice -- edit, read, execute, comment ... all at the same space. The Third Space? Dimension?
A template for committing -- what is default (the title of the paragraph)
Thinking about templates to write against. Produce a story not through phrases, but through categories you decided beforehand
How can it condition people to work in a specific mode.
Oulipo write with constraints. Commit every hours for instance
By default Git asks for c
oncise-ness
- What actually did you do (mechanics, pragmatic description/verb)
- Because ...
-
Thinking about fortune-cookie mottos
Speaking in the first person ... where a text gets mirrored by the commit
2 languages - machine and human in dialogue
commit generated automatically
.
http://www.whatthecommit.com/
* committing under constraints
-- a limited vocabulary
(
http://splasho.com/upgoer5/
)
-- a set of questons
--
a specific time every day?
(or every hour, on the hour)
-- a verb, a noun, an adverb, etc
* machine generated commit messages/notes
* git notes (using several namespaces)
* fork-comparision (especially for multiple forks)
-- How to look at differences, without needing merge
-- How to keep differences, without needing to resolve them
-- Having several visual representations of the same objects (looking at different angles to change the relation between co-versions)
-- (rough) consensus on some initial, main perspective (wikipedia-style) with a disclaimer that this is just a beginning and not nuanced/varied... [CLICK HERE] to read the post-colonialist critique of this topic.
-- Using graphviz and its different layout to represent the history of a project in different ways
Processual (?) template 1
these questions relate to the actual commit
-- what did you change
-- how did you change it
-- for whom
-- why
did you make this change?
-- how do you feel about this change
-- what do you need from somebody else ... personal message to the follower
-- what is missing, what is next, when should it be finished
-- how is the object doing
automatically: geo location, weather, room temp, light conditions, up-time, machine temp, average load, when the file was created and touched for the last time.
some auto-congratulation (well done! finally! it was about time! great!)
Quantified t
emplate 2
(rate on a scale from 1-10)
-- how much did you change
-- how difficult was it to change
-- for how many people did you make this change
-- how important was this change
-- how do you feel about this change
-- how much is missing
-- how many days before completion
-- how much
Sociological template 3
Periphery/subject template 4
(a random question from this list?)
-- what are your plans for tonight
-- what have you been reading
-- what comes to your mind
-- sing
Object template 5
handover
-- How is your thesis coming along
NOTES FROM THE PRESENTATION
OSP started on 20th January 2006, first blogpost by harisson
chose for free software, look at 'what the standard is and how to deviate'
share result and also the process on how it was made:
-blog
-print party's to perform the graphical recipee
explain the recipe, and cooking too.
where are the sources?
group grew larger
versioning -- not all around the (same) table all the time
ex wikipedia history page is example of versioning tool
"we are surrounded by versioning tools"
2 tools existed:
But also
Lots of discussion ... which one to choose? Different spirits of the projects. Interview with OSP on their work with git:
http://freeze.sh/_/2015/conversations/dvc
-
centralised: central repository maintained by some, people have different rights to access this repository, svn?
-
tough to get involved in the project, too many layers
-
liberal: everyone can have own copy of the project, git
https://www.wiki.ed.ac.uk/download/attachments/253450700/centralised.png?version=1&modificationDate=1425914912000&api=v2
https://www.wiki.ed.ac.uk/download/attachments/253450700/benevolent-dictator.png?version=1&modificationDate=1425914920000&api=v2
git "a liberal model"
it has changed the meaning of forking: from last resort to default behaviour
made by Linus Torvald
s
, inventor of Linux (named after him), and git (English for 'asshole', also named after him)
https://en.wikipedia.org/wiki/Linus_Torvalds
he takes a dictatorial approach on a collaborative tool he wrote himself.... (we all have our contradictions)
git blame: shows last commits by people on the project
(why not "git praise"?)
Projects & experiments with versioning by OSP
- Balsamine
using ConteXt, lay-out software mainly used by scientists
text based format, works very well with versioning tool
-> git commits as a place to write, record the mood
-> blog was dying (main writer / Femke left ;-))
how to continue the documentation/read-this-early-read-this-often?
commit messages: we often forget about it, often you just want to share
difficult to construct a story out of snippets
how to construct a story from 30m snippet experiences
"so, that's the terminal"
red minus: a deletion
green plus: an addition
another visualisation, a sense of linearity
"fromage qui pue" (cheese that smells)
tool developed for sharing code (text & statements)
what if you want to share other kind of material, f;ex. image or font
a font has many files, but what elements do you want to track?
DIFF git Imagemagick
http://ospublish.constantvzw.org/blog/tools/diff-git-imagemagick
software that allows to compare two different versions of image
changed pixels are in red
all solutions unsatisfactory
tried to bend git to fit typographic work
what does it means to version a font? It is not just about changing pixels, but also a geneology of many elements that matter. Preferring a radial approach rather than a linear one.
asynchronous: you have to decide on the file you want to share, comment it, upload it for the others to see
using Etherpad (this tool) to write together
everyone could work together at same time, great for learning from others!
pads filling the gap between collaboration through git (slow, asynchronous) and pads (fast, synchronous)
Relearn:
http://relearn.be
used pads to generate a pdf file at the end of the Summerschool
colour of the author refers to names in the publication
publication here:
http://relearn.be/2013/
you can replay this page! press 'timeline' button at top right of this page & press play
we gather a lot of data but how to connect them, how to tell a story.
can we think about more sensible ways to visualise depth of a project, cfr annotation of logs of the museum
Femke: if you look at cards and how we read them vs metadata of an object in digital database, is frustrating
can we tell other types of stories with 'deep reading of practise in digital'? not trying to replicate
Alex: we work quite late at night, says something about workprocess
Femke: these are beginnings of stories, relationship with tools is important
thinking about the helper that could intervene at the moment of writing
interfaces could help
on moment of writing the log, and applying the log
temporality
versioning that captures other 'activities' that occur in parallel (e.g. the weather...but could include more?)
http://craphound.com/news/2009/02/13/flashbake-free-version-control-for-writers-using-git/
http://ww1.bitbucketlabs.net/flashbake/
dominant branches
in git you can have two trunks
1
master branch
(default)
vs.
side branches that you can plug in again (merge)
it matters how you visualise
an experimented with re-writing through git
the moment of commit(ment) is important too?
distribution of tasks, micro tasks that form a macro project
maybe invent a score and apply it together?
not merging versions, points of diversions/divergence
what if we would focus on that?
to demo how you could think of archives as multi-linear stories
representing 6 or 7 different positions/perspectives
http://beta.brainch.stdin.fr
"Several versions of a text can exist in parallel, and be recombined or not at any time whether their owners' opinion converge or diverge. Thus, unlike a conventional wiki requiring its users to reach a consensus since they all work on a single shared copy, Brainch allows the authors to freely express their opinions."
Q: what is the difference between forking and diverting a version?
A: forking in the culture of git, is to copy a project from the "main" and start from that to implement changes. The "main" does not have any incentive to integrate, consider the fork. Not sure what "diverting" would mean in that sense but Brainch for example places the different versions at the same level.
wiki that uses git as a backend
http://diversions.lan/pad/p/programme
From Jameson's article Politics of Utopia:
"Utopias in fact come to us as barely audible messages from a future
that may never come into being. I leave the articulation of that message
to Marge Piercy’s Mattapoisett utopians—time-travellers from a future
which, they warn us, without ourselves and our own present, may never
come into existence:
'You may fail us . . . You individually may fail to understand us or to
struggle in your own life and time. You of your time may fail to struggle
altogether . . . [But] we must fight to come to exist, to remain in existence,
to be the future that happens. That’s why we reached you.' [1]
[1]Marge Piercy, Woman on the Edge of Time, New York 1976, pp. 197–8."
Ideas 09/12:
Thinking about periphery and centre, about time lines in git and radial representation/action in git
Use of Graphviz
Front end back end, object subject
**tmp paste**
possible technically not sure yet
we want repo to both contain our content (including quotes reflections,
technical experiments -i.e. what's been going on the pad so far)
in this way a layering effect can happen:
one object is written
we try out adding one or more messages to this originating idea
we find out if ideas fork
we know messages can go in different namespaces - we could have a namespace just
for quotes (as oppose to forking and eventually merging, we make a distinct
space for new trains of thought) ...in this way we move towards a radial
movement in doing version control. This would be instead of (or perhaps
additional to) the established mode in git of moving towards an endpoint,
crossing in and out of the trunk (branches move only sideways and forward).
graphical representation using X pixmap? you can pull in images
we could use an image from the archive, becoming completely decontextualized,
into a position where we can begin to add notes and adjust the object, to expose
it's layers and processes, perhaps making the object then available to us in a
way that can connect with some conceptual elements we have been discussing
git log --notes
https://www.git-scm.com/docs/git-log
namespaces, can be thought of as containers. We can call these containers any
name that we like, so long as it is unique. There can be any number of
namespaces. a namespace has one and only one note? default namespace, or specify
namespace to see note(s) in that namespace.
wonder about formatting text output, left to right (commit | message | note)
we [ alex :) ] need some time
namespaces: archiving the archive
quotes
taken from the different pads
qoutes from other sources
qoutes from the git manual
personal names - to allow subjectivities of interpretation:
adva
alex
magnus
images (from the archive)
commenting with images
can we tell a story from the perspective of the object (self-states, suggest an
object could have many voices - reflecting spaces, human encounters -
what''s the relationship between notes
either put them in different namespaces
if in the same namespace they must co-exist
a object has one and only one commit message
an object may have one or more namespaces
a namespace (logbook) has one and only one record
a record may contain one or more notes
where's the limit? we may run out of the possibility to create branch
equivalents - the existing note space gets fatter - this is the equivalent to
branching, we could get to a point where
// *tmp*
Adva wonders about bringing process in and out of focus, making visible the process that happens around the creation of an object in git
We talk about git porecelain and plumbing
GUIs
https://git-scm.com/downloads/guis
Consider equivalences between physical and idea spaces, categorization by topic...
Apparently, any file added into a repository can be attached to an existing note (whenever the note was first created). In this way, it is possible to update present and past committed (fixed) information within a repository. From
https://git-scm.com/docs/git-notes
:
"In principle, a note is a regular Git blob, and any kind of(non-)format is accepted. You can binary-safely create notes fromarbitrary files using git hash-object:
$ cc *.c
$ blob=$(git hash-object -w a.out)
$ git notes --ref=built add --allow-empty -C "$blob" HEAD
(You cannot simply use git notes --ref=built add -F a.out HEADbecause that is not binary-safe.)Of course, it doesn’t make much sense to display non-text-format noteswith git log, so if you use such notes, you’ll probably need to writesome special-purpose tools to do something useful with them."
"But the pleasures of construction may not be so evident: you have to think of them in terms of the garage workshop, of the home-mechanics erector sets, of Lego, of ricolating and cobbling together things of all kinds. To which we must also add the special pleasures of miniaturization: replicating the great things in handicraft imensions that you can put together by yourself and test, as with home chemical sets, or change and rebuild in a never-ending variation fed by new ideas and information. Model railroads of the mind, these utopian constructions convey the spirit of non-alienated labour and of production far better than any concepts of écriture or Spiel." jameson: Utopias
Collection of quotes:
Laurence
The moral is simple: only partial perspective promises objective vision. All
Western cultural narratives are allegories of the ideologies governing the
relations of what we call mind and body, distance and responsibility.
Feminist objectivity is about limited location and situated knowledge, not
about transcendence and splitting of subject and object. It allows us to
become answerable for what we learn how to see.
Donna Haraway, “Situated knowledges:The Science Question in Feminism
and the Privilege of Partial Perspective.”, 1988
“ A chaque instant, on doit se poser cette question
phénoménologique: qu'estce qu'on fait là? La façon de prendre
conscience politique de l'ensemble, c'est de partir d'une sorte d'a
priori: du fait qu'on est là, on est responsable d'un style de relations
que, par approximation, on pourrait appeler “relations
complémentaires”. Il vaut mieux avoir une certaine conscience du
fait qu'à partir de son mode d'existence, de la façon qu'on a de
décider quelque chose, par exemple, on développe un style Dans un
collectif c'est l'ensemble de ces styles qui donne un bruit de fond.”
“C'est au niveau du bruit de fond que se tissent tous les facteurs de
l'ambiance.”
Jean Oury, Onze heures de soir à la Borde, 1980
Magnus
From Jameson's article Politics of Utopia:
"Utopias in fact come to us as barely audible messages from a future
that may never come into being. I leave the articulation of that message
to Marge Piercy’s Mattapoisett utopians—time-travellers from a future
which, they warn us, without ourselves and our own present, may never
come into existence:
'You may fail us . . . You individually may fail to understand us or to
struggle in your own life and time. You of your time may fail to struggle
altogether . . . [But] we must fight to come to exist, to remain in existence,
to be the future that happens. That’s why we reached you.' [1]
[1]Marge Piercy, Woman on the Edge of Time, New York 1976, pp. 197–8."
"But the pleasures of construction may not be so evident: you have to think of them in terms of the garage workshop, of the home-mechanics erector sets, of Lego, of ricolating and cobbling together things of all kinds. To which we must also add the special pleasures of miniaturization: replicating the great things in handicraft imensions that you can put together by yourself and test, as with home chemical sets, or change and rebuild in a never-ending variation fed by new ideas and information. Model railroads of the mind, these utopian constructions convey the spirit of non-alienated labour and of production far better than any concepts of écriture or Spiel." jameson: Utopias
adva
qoute from Roland Barthes about archive
just for the record
“a group decision-making process in which group members develop,and agree to support a decision in the best interest of thewhole.”
“Consensus on Wikipedia does not meanunanimity (which, although an ideal result, is not alwaysachievable); nor is it the result of a vote.”
wikipedia
We would sit in a circle, and each woman was given aprotected time in which to talk about her own experiences. Ifshe had nothing to say, we all sat silent for her ten minutes.Because women were so often silenced, interrupted and shutdown, we did not interrupt, respond or ask questions. Whenevery woman present had been given a chance to speak, we would havean open discussion about what was similar or different in ourexperiences, and what it meant.
“consciousness raising”. Starhawk