In this presentation i will look at the work made across the 2 years to reflect on how it changed my understanding of programming and code documentation.
In this presentation i will look at the work made across the 2 years to reflect on how it changed my understanding of code documentation.
Code documentation here is intended as a rich set of practices: comments in code, readme files, tutorials, guides, references etc., but also moments of collective learning, workshops, pair programming and collaborative writing.
Code documentation here is intended as a broad set of practices: comments in code, readme files, tutorials, guides, references etc., but also moments of collective learning, workshops, pair programming and collaborative versioning.
These aspects are usually marginal in software development: byproducts surroinding the real thing, extra work, and resources often not available in the scarce economy around documentation.
These aspects are usually marginal in software development: byproducts surrounding the real thing, extra work, and demand of resources often not available in the scarce economy around documentation.
I would like to focus on these marginal zones, bring them to the center and explore how do they influence practices of programming & sociality around software development.
I would like to focus on these marginal zones, bring them to the center and reflect on how do they enrich practices of programming, opening entry points and backdoors into the making of software.
The institutional required list of things done during these two years is left in the background, squeeze your eyes and move the cursor to the edges to have a better focus.
The institutional required list of things done during these two years is left in the background, squint your eyes and move the cursor to the edges to see through.
## Brief thesis overview for context
Excerpts from [Hello Worlding](https://hub.xpub.nl/soupboat/~kamo/thesis/)
> I started this research for of two reasons. The first is that I love programming because is like learning another language: not just a new bag of words and a different grammar, but a whole new way of thinking, a lens through which to look at the world. Coding means __to express ideas with the reduced vocabulary of a programming language.__ As in poetry, these constraints stimulate creativity, and encourage a diligent yet playful approach. Working with different programming languages and on different systems __transforms thinking in multivarious ways, and that is extremely exciting__.
> The second reason is that I want to __share this excitement with others__, especially with my friends. __To be able to think and make sense together of what's happening around us, and come up with alternatives or responses or tools that suit us better.__ Because of the steep learning curve of programming and the other barriers previously mentioned, this has often not been possible. But now we know that there are other ways in, and that it is possible to open up even more.
___
> Code documentation is an ideal publishing surface to create worlds around software, and to orientate software in the world.
<br>
___
> The nature of code documentation is __to create entry points for people to participate in programming practices__. To encode and filter knowledge, and ultimately to share it with others. This "nature", however, does not come without issues. __It makes a lot of assumptions about who's reading__, expecting experts, or engineers, or dudes. Its language is unwelcoming: too dense, too technical, very gendered and unable to address anyone but the neurotypical-white-cis-male programmer. __Documentation requires an enormous amount of care, energy and time to be maintained, and it's done always out of budget, always as a side project, always at the end, and only if there's time left__.
> The nature of code documentation is __to create entry points for people to participate in programming practices__. To encode and filter knowledge, and ultimately to share it with others. This "nature", however, does not come without issues. It makes a __lot of assumptions about who's reading__, expecting experts, or engineers, or dudes. Its __language is unwelcoming__: too dense, too technical, very gendered and unable to address anyone but the neurotypical-white-cis-male programmer. Documentation requires an __enormous amount of care, energy and time to be maintained,__ and it's done always out of budget, always as a side project, always at the end, and only if there's time left.
> Even if it does a questionable job at creating entry points, code documentation still has a lot of __potential as a backdoor__. It's a publishing surface whose reach extends through time and space. Time because it meets programmers at different moments in their lives: **from the _hello world_ till the _how to uninstall_**, and it influences thinking about software continuously, and from different perspectives. Space because it comes in many different possible formats, and can shapeshift to serve different occasions: from simple .txt files to entire websites, from coding workshops to comments in the source code to series of video tutorial. The question then becomes: can we make use of these backdoors to infiltrate programming practices and open more entry points from within?
> Even if it does a questionable job at creating entry points, code documentation still has a lot of __potential as a backdoor__. It's a publishing surface whose reach extends through time and space. Time because **it meets programmers at different moments in their lives: from the _hello world_ till the _how to uninstall_**, and it influences thinking about software continuously, and from different perspectives. Space because it comes in __many different possible formats__, and can shapeshift to serve different occasions: from simple .txt files to entire websites, from coding workshops to comments in the source code to series of video tutorial. The question then becomes: __can we make use of these backdoors to infiltrate programming practices and open more entry points from within?__
<br>
> I started this research for of two reasons. The first is that I love programming because is like learning another language: not just a new bag of words and a different grammar, but a whole new way of thinking, a lens through which to look at the world. Coding means __to express ideas with the reduced vocabulary of a programming language.__ As in poetry, these constraints stimulate creativity, and encourage a diligent yet playful approach. Working with different programming languages and on different systems __transforms thinking in multivarious ways__, and that is extremely exciting.
> The second reason is that I want to __share this excitement with others__, especially with my friends. __To be able to think and make sense together of what's happening around us, and come up with alternatives or responses or tools that suit us better.__ Because of the steep learning curve of programming and the other barriers previously mentioned, this has often not been possible. But now we know that there are other ways in, and that it is possible to open up even more.
## Code documentation as
__Code documentation as personal understanding of complicate concepts__
![a drawing with a cute bird playing the role of an API between server and client](https://hub.xpub.nl/soupboat/wlist/img/chae_api.jpg)
Chae's drawings
![a screenshot of a meme with a soaked sweated man trying not to use the analogy of the restaurant to explain the api](https://hub.xpub.nl/soupboat/~kamo/static/img/miri.jpg)
Miri's meme
## your individual contributions to the special issues,
![fancy graphic designed documentation to digest flask](https://hub.xpub.nl/soupboat/wlist/img/supi_flask.jpg)
Supi's DIYry
Ahah what do we even mean by _"individual"_?
__Code documentation as shared struggle__
![comment in code: ](https://hub.xpub.nl/soupboat/~kamo/static/img/comment_1.png)
![comment in code](https://hub.xpub.nl/soupboat/~kamo/static/img/comment_2.png)
![comment in code](https://hub.xpub.nl/soupboat/~kamo/static/img/comment_3.png)
![comment in code](https://hub.xpub.nl/soupboat/~kamo/static/img/comment_4.png)
![comment in code](https://hub.xpub.nl/soupboat/~kamo/static/img/comment_5.png)
Some info for context:
Comments in the code screaming for help
- came to xpub with some experience in programming
- a brain wobbled for years between interaction design and contemporary art & web development and design for super corporate clients
- for the sake of working together with others coming from different fields decided to leave a bit aside super tech specific frameworks and languages i was familiar with and return to more accessible things
- (vanilla js instead of vue for example)
- (from windows-only vvvv to a more cross platform platforms such as browser or python)
Sessions of pair programming to face technical stress
### SI16
__Code documentation as collective practice__
A group of art students tries to familiarize and handle the concept of API, to use it as a publishing surface.
![Documentation for a repeat function with some nice parrot](https://hub.xpub.nl/soupboat/~kamo/thesis/img/SI16_NB.jpg)
Code documentation
Folder with Jupiter notebook files, each with a different piece of documentation for SI16
- as personal understanding of an unknown and complex concept
- chae's drawings
- miri's meme
- grgr & sumo diagrams
- as shared struggle
- tone of voice in code comment screaming for help
- sessions of pair programming to face technical stress
- as collective practice
- multi voiced through jupiter notebook
![piece of flask documentation written with Chae](https://hub.xpub.nl/soupboat/~kamo/static/img/flask.png)
### SI17
Writing some documentation for Flask together with Chae
a group of art students tries to print 80 000 post-its and put them in 100 loot boxes
__Code documentation as facilitation to distributed authorship__
Code documentation
- post-it generator, git as cms
__Code documentation as poetic and political writing__
- as facilitation to distributed authorship
- post-it generator, git as cms
- as poetic and political writing
- comments in the screenless office
- queer motto api readme
### SI18
__Code documentation as invitation for others to participate__
__Code documentation as starting point for further explorations__
(kiwiboat)
__Code documentation as a way to question code__
a group of art students releases 8 weekly sound+ publications alternating roles of curation and contents production
code documentation
- as invitation for particular workflows
- as starting point for further explorations (kiwiboat)
## the development of your reading/writing practice across the 2 years,