User:Kim/Project Proposal (Gitpub)
What do you want to make?
Gitpub is a tool to create a printed or web-based publication from a git repository including repository metadata. This tool is not bound to any specific environment yet, but could have different interfaces such as a website or a terminal program. The information stored inside of every local .git folder builds basis of the tool. It allows to select and include different types of metadata, such as Commit Messages, Commit Authors, Timestamps or the amount of made changes. I would like to add options for styling the appearance of the publication through pre-made choices or custom CSS.
The gitpub tool, which I aim to outline in the following paragraphs, poses the starting point, rather than the final outcome of this project. Possible divergencies include a deeper examination of collaborative writing softwares such as etherpad or wiki and the drafting of collaborative metadata writing scripts for them. Moving into a different direction, I would also be interested in using the multilayered text characteristics of version control software as a starting point for visual experimentations of reading and writing interfaces. Finally, a less computer, more personal, material focussed approach would introduce exercises in space, such as performing and writing text in different ways (together).
How do you plan to make it?
- At the moment (mon oct 27th) of updating this Project Proposal I have two script prototypes: a bash script that uses the gitlab api and has already been printed from and a python script, that makes use of the locally stored git metadata. Here are the further steps:
- first up: prototyping workshop. in here I would like to test digital and or physical exercises that examine collaborative writing of, with and through metadata > goal: share outcome in public moment (dec 5th)
- work on more specific features of gitpub and how to combine them > goal: get to a running version of gitpub to use it for thesis writing
- make the tool self contained, for example package it into a python program > goal: share it with others
- design choices regarding the tools interface/options but also the publication outcome (how is meta information interacting with the main text?)
- peer distribution and testing rounds (individual or in the form of collective work sessions)
- documentation of the tool
- divergency 1: examination of collaborative writing softwares
- explore collaboration and metadata mechanisms of etherpad and wiki
- write scripts such as gitpub for them
- divergency 2: visual experimentations of reading and writing interfaces through version control software
- divergency 3: personal exercises
- research body, performative reading and writing exercises across different literary movements and groups
- test, test, test
- document
What is your timetable?
nov 5th: mock assessment (show process / discuss idea)
nov 17th: prototyping workshop
dec 5th: public moment tangible prototypes (documentation)
dec 8th: assessment (formulate present state, way here, outlook)
jan 30th: usable gitpub version with for thesis writing and producing
Why do you want to make it?
intro “tools as boundary objects that connect different communities of practice”[1]
writing and being written gitpub explores how we write and are written by software through the example of collaborative version control software as publishing tool. It emphasises the software as part of the writing.
extending existing software Gitpub builds upon git: a version control software, commonly interfaced with through platforms such as Github, Gitlab or Gittea, and on the local level with code editors or the terminal. Git is used to collaborate on code, track versions and progress of code and publish / document code. There are uses outside of this scope, such as the publishing and documenting of fonts or sharing of code unrelated resources.[2][3]
By deliberately extending and mis-using this existing piece of software I want to challenge its embeddedness into (white, male, optimisation driven) developing culture and an industry that profits from maintaining compartmentalised and hidden labor and the divide between user and programmer.
Ursula Franklin introduced me to Kenneth Bouldings understanding of “technology as practice, as way of doing something”.[4] This notion links technology to culture, which we could define as “a set of socially accepted practices and values”. The use of tools like git is highly cultural (different communities follow different protocols of use). Yet working with git in day to day operations, the familiarity of its gestures and rhythms conceals the softwares own ways of writing and cultural situatedness.
Publishing a git repository with metadata in a printed form is an attempt to “connect different communities of practice”, to permeate the borders between otherwise diverged environments and examine the softwares cultural situatedness.
metadata Making metadata part of the publication is an act of decentering the main body of a text or work. Here the software in use becomes not just a means to an end of production but presents itself as material, agential. social and political entity. This metadata is produced by means of version control, an integral part of the git software, that in practice is either neglected or exploited to reinforce hypercapitalist modes of production.
visual Gitpub is not only about the script and technical aspects of metadata, which I have outlined above but also explores text (interfaces) and its boundaries on a visual level. I here want to question the authority of a (main) text by breaking away from its ordinary presentation, which makes its own rules seem invisible.[5]
note the above concerns the git software specifically but with adjustments could also be transferred to other tools such as mediawiki.
Who can help you and how?
I will seek technical support form the prototyping tutors (as of now Michael and Manetta). Other groups or individuals I would like to reach out for technical/ conceptual exchange could be the community around PrePostPrint and Constant. About Constant I know that they have been doing publications [6][7] with git already and would be curious about their experience and workflows. I would also be curious to speak to members of OSP about visual culture, a git based program which they build for their website and documentation.
Relation to previous practice
Gitpub confuses centers of attention and makes its own making (processual, structural or meta information) part of its content. Herein gitpub poses a continuation to previous projects: Tracing Networks Backwards (browser game based on mediawiki) and Layer (browser extension) render information visible that is commonly hidden in graphical user interfaces. Both projects work through multiple levels of: showing hidden information, the way users interact with it and how it is merging with existing visual context. Other previous projects of mine such as Writing on the margins of the web (workshop) and on contamination (essay and performative reading) are more specifically concerned with the inner workings of a text through marginal and paratextual information and how they relate to, break with, penetrate the ‘main’ text.
More recent experiments like Terms of servers (a terminal-first, then print publication) and the SI27 documentation (web to print using pelican and paged.js) sparked an interest in single source publishing workflows and the malleability of (markup) documents.
The above mentioned projects, and gitpub too, to some extend are all self referential. Through that, they address their own materiality, environment and concerns in ways that can be awkward, intimate and ambiguous.
In a wider context, I think of this as an attempt towards understanding processes and politics behind technologies in use and their embeddedness in social and cultural fields.
Relation to a larger context
I understand Gitpub as situated in a lively ecology of experimental publishing tools, practices and concepts:
practices:
- Open source Publishing, especially their software visual culture, in use for their website and blog (?) displays commit messages on the website as documentation (which I think is super cool but sad if it means thats the only documentation that is written)
- Octomode (a tool made by manetta and christina with varia that uses etherpad as a basis for a print or web publication) and other adjacent etherpad-based tools
- Hackers and Designers with tools such as Chattypub
- publishing efforts by the INC (including “FROM PRINT TO EBOOKS A HYBRID PUBLISHING TOOLKIT FOR THE ARTS”, “.expub - Exploring Expanded Publishing”, “Screentime, Airtime, Facetime”)
- Pre post print
concepts:
- gitterature[8] (personal reader notes)
- I feel there is a convergence with “Print is Flat, Code is deep”[9] but more in the sense of challenging Katherine Hayles argument than fully agreeing with her. After all does her thesis not reinforce a divide between digital and physical media, that today with notions of hybridity, post-print or experimental, is simply not there anymore?
- history of metadata
- database as symbolic form[10]
- concept and uses of version control: specifically The Architecture of Open Source Applications (Volume 2) Git
- Eventual Consistency: michaels analysis of the history algorithms in collaborative text editing software against the backdrop of variation as central element to collaborative work and a common engineering mistake stripping of context
- UNIX design philosophy: emphasises small, specific tools, which are good at executing simple tasks with enough space left for users to build their own complex configurations. These small tools can work as modules since it is possible to connect them to each other often and in different ways.
References
- ↑ Star, S.L. (1994). Misplaced Concretism and Concrete Situations: Feminism, Method, and Information Technology. In: Bowker, G. et al. (eds) Boundary objects and beyond: working with Leigh Star. Cambridge, Massachusetts: The MIT Press – encountered in Prototyping 2024/2025 intro
- ↑ The Collective Bye Bye Binary uses GitLab for font developement and publishing https://gitlab.com/bye-bye-binary
- ↑ “Always Already Programming” by Melanie Hoff, a text I often refer to, is published on GitHub https://gist.github.com/melaniehoff/95ca90df7ca47761dc3d3d58fead22d4
- ↑ I should cite this properly but for now, here is the secondary source: Franklin, U.M. and CBC Enterprises (1990). The Real World of Technology. Montréal ; Toronto : CBC Enterprises. (Chapter 1)
- ↑ and “Diagrammatic reasoning argues for graphic organization as a meaning producing system, one in which the organization of elements must be read in relation to each other.” footnote 9. both in Johanna Drucker, “Diagrammatic Writing”
- ↑ ‘’Conversations’’ is a collection of dialogues between developers and designers involved in the wider ecosystem of Libre Graphics. https://conversations.tools/ The tools in use include etherpad, pandoc and bash and LATEX to transform into pdf. A graph mapping the tools also highlights git, but I am not sure about its actual role in the process. Concept, design and developement by Christoph Haag, Xavier Klein and Femke Snelting
- ↑ ‘’Aether 9’’ is another git related publication by constant and OSP that manetta pointed me to https://gitlab.constantvzw.org/osp/work.aether9/. There is not much documentation but I could find the publishers website https://greyscalepress.com/books/aether9/ and the collectives announcement https://web.archive.org/web/20130520210449/http://aether9.org/(archived). Working on this project were Gijs de Heij, Ludivine Loiseau and Pierre Marchand
- ↑ Servanne Monjour, Nicolas Sauret. Pour une gittérature. XXI/XX Reconnaissances littéraires, 2021, 2, pp. 237-252. 10.48611/isbn.978-2-406-12363-7.p.0237. hal-03962836 https://hal.parisnanterre.fr/hal-03962836/document
- ↑ N. Katherine Hayles “Print is flat, code is deep – The Importance of Media-Specific Analysis”, Poetics Today (2004) 25 (1): 67–90. https://doi.org/10.1215/03335372-25-1-67
- ↑ “Database as symbolic form” Lev Manovich (to be read fully)