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 git api is the basis of the tool. A user can easily choose a repository as an endpoint and select different types of meta data to include, such as Commit Messages, Commit Authors, Timestamps, amount of changes made etc. There will be options for personalizing the appearance of the publication through pre-made styles or custom CSS.
How do you plan to make it?
At the moment (fri sep 26th) of first creating this Project Proposal draft I have a proof of concept prototype which consists of two bash scripts: the first script fetches the repositories meta data and writes it to a markdown file. The second script sorts all files and converts them into an impositioned pdf - ready to print as a booklet.
Here are the further steps:
- make new prototype to get familiar with the technicalities, possibilities and constraints of working with git, not the api but local files. Prototypes can be web facing (javascript) and terminal facing (python) and explore different end formats of the publication, such as a printable pdf or a static website
- work on more specific features and how to combine them
- make the tool self contained
- 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
What is your timetable?
Why do you want to make it?
re-purposing, extending, mis-using an existing piece of software, challenging its embeddedness into (white, male, optimization driven) developing culture and an industry that profits from maintaining compartmentalized and hidden labor and the divide between user and programmer.
Git is a version control software, commonly interfaced with through platforms such as Github, Gitlab or Gittea, 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 (examples)
Publishing a git repository in a printed or digital form allows to permeate the borders between non (or not so) - and technical environments.
Making meta data part of the publication is an act of decentering the main body of text (or work) where software in use becomes not just a means to an end but presents itself as (agential, defiant, political) entity.
This meta data 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.
the program is part of the writing
making apparent software, process, how we write but also are written by technology
challenging the authority of a (main) text
Who can help you and how?
I will seek technical support form the prototyping tutors (as of now Michael and Manetta). Other groups or individual I could reach out for technical/ conceptual support could be the community around PrePostPrint and Constant. About Constant I know that they have been doing publications [1] [2] with git already and would be curious about their experience and workflows.
Relation to previous practice
- in its manner of confusing centers of attention and making its own making (processual, structural or meta information) part of its content this project poses a continuation to previous projects from the past years. User:Kim/Special Issue 1/Tracing Networks Backwards, Layer browser extension
- interest and research in marginal, paratextual information and their relation to the 'main' work. Writing on the margins of the web workshop and on contamination document performance and essay
- other experiments with single source publishing include Terms of servers and SI27 Documentation/Website Manual#print_update
Relation to a larger context
I understand Gitpub as situated in a lively ecology of experimental publishing tools and practices:
- Octomode (a tool made by manetta and christina with varia that uses etherpad as a basis for a print or web publication)
- 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
- Constant
concepts:
- Post Digital Publishing [1]
- from wendy chuns "On software or: the persistence of visual knowledge" the implications of hiddenness in software
- on invisible writing: "<?php> - "Invisible" Code and the Mystique of Web Writing" Helen Burghes in "From A to <A> Keywords of Markup"
- Historical study of marginalia (such as pecia marks enabling division of labor and separation of skills in print production, or other forms of comments / annotations)
References
- ↑ 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 that manetta pointed me to https://gitlab.constantvzw.org/osp/work.aether9/.