![]()
<img src="https://hackmd.io/_uploads/HJYwubDds.jpg" height="600">
---

---

---
<img src="https://hackmd.io/_uploads/Hk60X4Pdi.gif" height="600">
---
### "Together we experiment with a storying that is explicitly anti-capitalist, anti-racist, and anti- fascist de-centering of not only the category of the “human,” but of the human led forces that ravaged the planet and its inhabitants through enslavement, white supremacy, and colonial violence—the valence of political resistance becomes the guiding principle.
–Cassandra Troyan and Helen V. Pritchard (2020)
---
“queer, socialist/anti-capitalist, and feminist work has all been about multiplying the ways we know that people have lived and can live, so that it would be possible to take up any number of positions during and in life in order to have ‘a life’ (Berlant 2011, 182).
---
Queerness irreverently challenges a linear mode of conduction and transmission: there is no exact recipe for a queer endeavour, no a priori system that taxonomizes the linkages, disruption, and contradictions into a tidy vessel (Jasbir Puar 2007, xv).
---
*
##FIELDS
* ᘒ On the experience and
* process of damage and pain,
* partial reparation, loss/
* disposession
* ፨ On queer politics and
* methodologies, contestation,
* affirmation
* ᚼ On contesting
* anthronormativities
* ⚘ On bioeconomies, lively
* capital, accumulation
* ◊ On computation, analytics,
* bioinfotech
* ᗶ On political fictions, poethics,
* figurations &/or wild
* fantasies, opportunities
*
---

<img src="https://gitlab.com/siusoon/Aesthetic_Programming_Book/-/raw/master/source/8-Que(e)ryData/ch8_5.png" height="150">
---
## The Institute for Technology in the Public Interest (TITiPI) is a trans-practice gathering of activists, artists, engineers and theorists initiated by Miriyam Aouragh, Seda Gürses, Helen Pritchard and Femke Snelting.
We convene communities to articulate, activate and re-imagine together what computational technologies in the “public interest” might be when “public interest” is always in-the-making. We develop tools from feminisms, queer theory, computation, intersectionality, anti-coloniality, disability studies, historical materialism and artistic practice to generate currently inexistent vocabularies, imaginaries and methodologies.
TITiPI functions as an infrastructure to establish new ways in which socio-technical practices and technologies might support the public interest.
---
Our activities include: workshops, lectures, bugreporting, consultancy, reading groups, policy analysis, public events, performances, exhibitions, audits, theory making, training, and publishing.
---
## Regenerative Energy Communities
* explores how current energy paradigms can be challenged by energy approaches that work with agroecology
* engages members of the public interested in energy practices through creative, community-inspired experiments.
* collective design work on small-scale prototypes
* generating new and challenging perspectives on energy provision aimed at supporting socioecological transformation.
---
#The Institute of Technology in the Public Interest
---
{%youtube E8Nj7RwXf0s %}
---
### Usage flow
---
```graphviz
digraph {
compound=true
rankdir=RL
graph [ fontname="Source Sans Pro", fontsize=20 ];
node [ fontname="Source Sans Pro", fontsize=18];
edge [ fontname="Source Sans Pro", fontsize=12 ];
subgraph core {
c [label="Hackmd-it \ncore"] [shape=box]
}
c -> sync [ltail=session lhead=session]
subgraph cluster1 {
concentrate=true
a [label="Text source\nGithub, Gitlab, ..."] [shape=box]
b [label="HackMD Editor"] [shape=box]
sync [label="sync" shape=plaintext ]
b -> sync [dir="both"]
sync -> a [dir="both"]
label="An edit session"
}
}
```
---
### Architecture of extension
---

---
## Content script
- Bind with each page
- Manipulate DOM
- Add event listeners
- Isolated JavaScript environment
- It doesn't break things
---
# :fork_and_knife:
---
<style>
code.blue {
color: #337AB7 !important;
}
code.orange {
color: #F7A004 !important;
}
</style>
- <code class="orange">onMessage('event')</code>: Register event listener
- <code class="blue">sendMessage('event')</code>: Trigger event
---
# :bulb:
---
- Dead simple API
- Only cares about application logic
---
```typescript
import * as Channeru from 'channeru'
// setup channel in different page environment, once
const channel = Channeru.create()
```
---
```typescript
// in background script
const fakeLogin = async () => true
channel.answer('isLogin', async () => {
return await fakeLogin()
})
```
<br>
```typescript
// in inject script
const isLogin = await channel.callBackground('isLogin')
console.log(isLogin) //-> true
```
---
# :100: :muscle: :tada:
---
### Wrap up
- Cross envornment commnication
- A small library to solve messaging pain
- TypeScript Rocks :tada:
---
### Thank you! :sheep:
You can find me on
- GitHub
- Twitter
- or email me
<style>
.reveal {
font-size: 24px;
font-family: Georgia, serif;
background: rgb(34,193,195);
background: radial-gradient(circle at -2% -25%, rgb(250, 66, 255) 0%, rgba(255, 213, 136, 0.97) 100.7%);
}
a:link, a:visited {
color: rgba(255,255,0,0.9);
}
.reveal blockquote {
display: block;
position: relative;
width: 75%;
background: rgba(255, 255, 0, 0.03);
padding-left:1.5em;
box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.2);
border-left: 2px solid #ffff00;
font-size: 20px;
font-style: italic;
text-align: left;
line-height: 1.8em;
position: relative;
transition: 0.2s border ease-in-out;
}
.reveal h1 {
font-size: 45px;
font-weight: bold;
color: #ffff99;
}
.reveal h2 {
font-size: 36px;
font-weight: bold;
color: rgba(255, 255, 0, 1);
}
.reveal h3 {
font-size: 32px;
color: #ffff99;
font-weight: bold;
}
.reveal h4 {
font-size: 24px;
color: #ffff99;
}
.ref {
font-size: 18px;
color: #4b0082;
}
pre code .wrapper { font-size:17px;line-height: 1.1em;}
pre code .gutter.linenumber { border-right: 3px solid #ffff00 !important; }
.reveal .imgborder {
border: 0px solid white;
}
.reveal img {
border: 0px solid yellow;
}
.card {
display: block;
text-align: center;
margin: 0 auto;
max-width: 55%;
background: rgba(255, 255, 230, 0.93);
color: #333300;
padding: .5em;
font-weight: normal;
font-size: 0.75em;
border-radius: .2em;
box-shadow: .2em .1em .5em rgba(255,255,0,.5);
}
.reveal .controls {
font-size: 8px;
color:rgba(255, 255, 0, 0.43);
}
</style>
{"metaMigratedAt":"2023-06-17T16:45:58.217Z","metaMigratedFrom":"YAML","title":"How Does Soil Prototype...?","breaks":true,"description":"Inagural Prof talk @IXDM FHNW.","contributors":"[{\"id\":\"f2a2a8e9-6795-4d3e-a63e-aa89ae000d47\",\"add\":8099,\"del\":1114}]"}