Compare commits
78 Commits
Author | SHA1 | Date | |
---|---|---|---|
8b5f93b2a8 | |||
f939d6f29d | |||
0b227565e2 | |||
ea1a79e377 | |||
|
016b25d29b | ||
|
4ba785df7d | ||
|
2e844b9559 | ||
|
e1f29327c4 | ||
|
19abd26291 | ||
|
fcac6989f8 | ||
|
62efb76fae | ||
|
f5add0b908 | ||
|
bce890ea5f | ||
|
0fe06d9390 | ||
|
8c06f6948a | ||
|
fb9945279b | ||
|
8a8d9e0063 | ||
|
91b20693d9 | ||
|
f230c182ac | ||
|
b8491ec460 | ||
|
29adbecffa | ||
|
32eae7cc8e | ||
|
dee49239f1 | ||
|
bfd48200d7 | ||
|
e591003a48 | ||
f21ef12a67 | |||
|
46a2c111ba | ||
|
7ef9e26166 | ||
|
f7bbe50ff7 | ||
|
d304994f1c | ||
|
782e0b4dfb | ||
|
b093a3d8c5 | ||
|
a151a9fe9d | ||
|
9806515bbc | ||
|
0ce42390ce | ||
|
befa2b8f4d | ||
|
c9eefa953c | ||
|
f20cc28349 | ||
|
bd702f8f51 | ||
|
e0546c0e2e | ||
|
18c2c898aa | ||
|
451e860697 | ||
|
b89373b478 | ||
|
b6f74485a4 | ||
|
5290772bce | ||
|
b33c8f409f | ||
|
25febf44a2 | ||
|
5cff4da500 | ||
|
8e5ccb77c6 | ||
|
54533f62e9 | ||
|
6be0bd3d7b | ||
|
fbc26ed89c | ||
|
255cd357c5 | ||
|
a0f84311d2 | ||
|
adbd294e30 | ||
|
93e66d5b5c | ||
|
80e9b781e5 | ||
|
84cf190a9c | ||
|
dc75eaa4e7 | ||
|
67866adb1a | ||
|
75114cdbbe | ||
|
ee5ca17e67 | ||
|
0494aacf1a | ||
|
fa2579bc08 | ||
|
ac88d5e4d0 | ||
|
49b2070f09 | ||
|
5456e5ccd8 | ||
|
8e615fa92b | ||
|
1b6df5e889 | ||
|
65d93c6d25 | ||
|
7c5307ea3f | ||
|
019dbd27fa | ||
|
88bebf37f3 | ||
|
b25fcfed88 | ||
|
c693480625 | ||
|
7c64ef3ec3 | ||
|
a2157b2700 | ||
|
a7654842d9 |
.gitlab-ci.yml.gitmodulesREADME.mdconfig.tomlpackage-lock.jsonpackage.jsonpostcss.config.js
archetypes
assets
css
headshots
alinagwe_mwaselela.pngasia_dorsey.pngbernie_mayer.pngcamille_acey.pngdavid_mayernik.jpgedson_osorio.pngjasmine_albuquerque.jpgjosette_zayner.jpgmichael_zargham.pngmosud_mannan.pngplaceholder-headshot.pngrobin_berjon.jpg
js
scss
content
about.md
interviews
acey-organizational_closures.mdalbuquerque-contemporary_dance.mdberjon-web_standards.mddorsey-the_gut.mdehmke-contributor_covenant.mdkiessel-good_market.mdlittauer-constructed_languages.mdmannan-diplomatic_protocols.mdmayer-mediation.mdmayernik-disegno.mdmwaselela-saving_circles.mdosorio_ayurvedic-medicine.mdprodromou-distributed_social_networks.mdxavier_rodrigues-beekeeping.mdzargham-ultimate_frisbee.mdzayner-biohacking.md
data
layouts
_default
articles
index.htmlindex.jsoninterviews
partials
article-list.htmlarticle-title.htmlarticle-wompum.htmlcss-variables.htmlcss.htmlfacilitator-list.htmlfooter.htmlheader.htmlimage.htmlinterview-list.htmlinterview-metadata.htmlinterview-title.htmlinterview-wompum.htmlrelated-articles.htmlrelated-interviews.htmlsearch-interface.htmlsigil.htmltags.htmltaxonomy-cloud.htmltopics.htmlwompum-demo.html
tags
static
tailwind.config.jsthemes/hugo-starter-tailwind-basic
67
.gitlab-ci.yml
Normal file
67
.gitlab-ci.yml
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
# Default image for jobs - contains Hugo Extended
|
||||||
|
image:
|
||||||
|
name: hugomods/hugo:node
|
||||||
|
entrypoint: [""]
|
||||||
|
|
||||||
|
variables:
|
||||||
|
HUGO_ENV: production
|
||||||
|
# Tells GitLab Runner to initialize and update submodules recursively
|
||||||
|
GIT_SUBMODULE_STRATEGY: recursive
|
||||||
|
SURFER_SERVER: "https://protocol.ecologies.info/"
|
||||||
|
|
||||||
|
stages:
|
||||||
|
- build # Added build stage
|
||||||
|
- deploy
|
||||||
|
|
||||||
|
# Job to build the Hugo site
|
||||||
|
build_site:
|
||||||
|
stage: build
|
||||||
|
before_script:
|
||||||
|
- echo "installing NPM packages"
|
||||||
|
- npm install
|
||||||
|
script:
|
||||||
|
- echo "Starting Hugo build..."
|
||||||
|
- hugo version
|
||||||
|
- hugo --minify --gc --cleanDestinationDir # Build the site
|
||||||
|
- echo "Build completed. Public directory contents:"
|
||||||
|
- ls -la public/
|
||||||
|
artifacts:
|
||||||
|
paths:
|
||||||
|
- public/ # Pass the 'public' directory to the next stage
|
||||||
|
expire_in: 1 hour # Optional: Set artifact expiry
|
||||||
|
# Define when this job runs (e.g., only on the main branch)
|
||||||
|
# Adjust 'only' or 'rules' as needed for your workflow
|
||||||
|
only:
|
||||||
|
- main # builds on commit to main branch
|
||||||
|
|
||||||
|
# Job to deploy the built site using cloudron-surfer
|
||||||
|
deploy_site:
|
||||||
|
stage: deploy
|
||||||
|
image: node:18 # Use Node.js image for cloudron-surfer
|
||||||
|
needs: # Ensure 'build_site' job completes successfully first
|
||||||
|
- job: build_site
|
||||||
|
artifacts: true # Download artifacts from 'build_site'
|
||||||
|
# No need for GIT_SUBMODULE_STRATEGY here if GIT_STRATEGY is none or repo isn't needed
|
||||||
|
# If you need the repo source in this job, add GIT_SUBMODULE_STRATEGY here too.
|
||||||
|
variables:
|
||||||
|
GIT_STRATEGY: none # Optimization: Don't fetch repo source code for deploy job
|
||||||
|
before_script:
|
||||||
|
- echo "Installing cloudron-surfer..."
|
||||||
|
- npm install -g cloudron-surfer
|
||||||
|
script:
|
||||||
|
- 'echo "Deploying to: $SURFER_SERVER"'
|
||||||
|
# Verify artifact downloaded correctly
|
||||||
|
- echo "Contents of downloaded artifact:"
|
||||||
|
- ls -la public/ # Artifacts are extracted to the root of the job workspace
|
||||||
|
- echo "Uploading files to server using surfer put..."
|
||||||
|
- >-
|
||||||
|
surfer put
|
||||||
|
--token $SURFER_TOKEN
|
||||||
|
--server $SURFER_SERVER
|
||||||
|
public/* /
|
||||||
|
- echo "Deployment completed successfully"
|
||||||
|
# Define when this job runs (e.g., only on the main branch after build)
|
||||||
|
# Adjust 'only' or 'rules' as needed for your workflow
|
||||||
|
only:
|
||||||
|
- main # publishes on commit to main branch
|
||||||
|
|
3
.gitmodules
vendored
3
.gitmodules
vendored
@@ -1,3 +0,0 @@
|
|||||||
[submodule "themes/hugo-starter-tailwind-basic"]
|
|
||||||
path = themes/hugo-starter-tailwind-basic
|
|
||||||
url = https://github.com/bep/hugo-starter-tailwind-basic.git
|
|
68
README.md
68
README.md
@@ -4,10 +4,76 @@ A project of the [Media Economies Design Lab](https://www.colorado.edu/lab/medla
|
|||||||
|
|
||||||
Developed in Hugo.
|
Developed in Hugo.
|
||||||
|
|
||||||
## Usage
|
## Development
|
||||||
|
|
||||||
|
Be sure to have a recent Hugo *extended* version installed.
|
||||||
|
|
||||||
Navigate to the project directory and:
|
Navigate to the project directory and:
|
||||||
|
|
||||||
|
```
|
||||||
|
npm install
|
||||||
|
```
|
||||||
|
|
||||||
|
Then, to serve the site locally:
|
||||||
|
|
||||||
```
|
```
|
||||||
hugo server
|
hugo server
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Deployment
|
||||||
|
|
||||||
|
Thanks to the [MEDLab Hugo template](https://git.medlab.host/dhorn/medlab-hugo-template), the site is set up to deploy automatically to the MEDLab server via GitLab CI. To do so, when developing locally, use this git command:
|
||||||
|
|
||||||
|
```
|
||||||
|
git push origin main
|
||||||
|
```
|
||||||
|
|
||||||
|
A push to `main` should trigger a pipeline in GitLab to deploy the site. If it doesn't, check for errors in Gitea and GitLab.
|
||||||
|
|
||||||
|
## Interviews
|
||||||
|
|
||||||
|
see `/archetypes/interview.md` for the interview template. You can create a new interview with:
|
||||||
|
|
||||||
|
```
|
||||||
|
hugo new content content/interviews/lastname-interview_title.md
|
||||||
|
```
|
||||||
|
|
||||||
|
This will create a new interview in the `content/interviews` directory with the current date and the title you provide. You can then edit the file to add your content.
|
||||||
|
|
||||||
|
Alternately, you can manually add a file there in the proper format.
|
||||||
|
|
||||||
|
### Headshots
|
||||||
|
|
||||||
|
Optionally you can add a headshot photo to your interview. To do this:
|
||||||
|
|
||||||
|
1. Place your image file in the `/assets/headshots/` directory
|
||||||
|
2. Add a `headshot` field to your interview's front matter with just the filename. For example:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
headshot: "firstname_lastname.jpg"
|
||||||
|
```
|
||||||
|
|
||||||
|
*Note: Name is case sensitive, might as well use lowercase letters and hyphens in your filename.*
|
||||||
|
|
||||||
|
### Narrator links
|
||||||
|
|
||||||
|
You can add links to an interview that relate to the narrator. To do this, add a `links` field to the front matter of the interview. The value should be a list of objects, each with a `text` and `url` field. For example:
|
||||||
|
|
||||||
|
```
|
||||||
|
links:
|
||||||
|
- text: "My Website"
|
||||||
|
url: "https://example.com"
|
||||||
|
- text: "My Twitter"
|
||||||
|
url: "https://twitter.com/example"
|
||||||
|
```
|
||||||
|
This will include the links in the interview page. The links will be displayed as a list with the text as the link text and the URL as the link target.
|
||||||
|
|
||||||
|
### Open Graph Image
|
||||||
|
|
||||||
|
You can add Open Graph image (for social media sharing) to an interview. To do this, add a `ogImage` field to the front matter of the interview. The value should be the path to the image file. For example:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
ogImage: "/images/my-image.jpg"
|
||||||
|
```
|
||||||
|
|
||||||
|
*Note: The image should be at least 1200x630 pixels for best results. Make sure to place the image in `/static/images/` directory so it can be served correctly. The path should be relative to the static directory.*
|
||||||
|
@@ -1,6 +0,0 @@
|
|||||||
---
|
|
||||||
title: "{{ replace .Name "-" " " | title }}"
|
|
||||||
date: {{ .Date }}
|
|
||||||
draft: true
|
|
||||||
---
|
|
||||||
|
|
14
archetypes/interviews.md
Normal file
14
archetypes/interviews.md
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
---
|
||||||
|
narrator: ""
|
||||||
|
subject: ""
|
||||||
|
facilitator: ""
|
||||||
|
date: {{ dateFormat "2006-01-02" .Date }} # YYYY-MM-DD
|
||||||
|
approved: "" # YYYY-MM-DD
|
||||||
|
summary: ""
|
||||||
|
location: ""
|
||||||
|
topics: []
|
||||||
|
headshot: "placeholder-headshot.png"
|
||||||
|
links:
|
||||||
|
- text: ""
|
||||||
|
url: ""
|
||||||
|
---
|
50
assets/css/components/wompum.css
Normal file
50
assets/css/components/wompum.css
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
.wompum-container {
|
||||||
|
width: 100%;
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.wompum-container .wompum-grid,
|
||||||
|
.wompum-container .wompum-interview-grid {
|
||||||
|
gap: 2px;
|
||||||
|
height: 100%;
|
||||||
|
min-height: 2px;
|
||||||
|
grid-template-rows: repeat(var(--grid-rows, 5), 1fr);
|
||||||
|
}
|
||||||
|
|
||||||
|
.wompum-container--wide-gap .wompum-grid,
|
||||||
|
.wompum-container--wide-gap .wompum-interview-grid {
|
||||||
|
gap: 1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.wompum-container--no-gap .wompum-grid,
|
||||||
|
.wompum-container--no-gap .wompum-interview-grid {
|
||||||
|
gap: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.wompum-grid,
|
||||||
|
.wompum-interview-grid {
|
||||||
|
display: grid;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.wompum-cell {
|
||||||
|
@apply dark:opacity-70 brightness-100;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
transition: all 3s ease-in;
|
||||||
|
}
|
||||||
|
|
||||||
|
.wompum-cell:hover {
|
||||||
|
@apply dark:opacity-100 brightness-125;
|
||||||
|
transition: all .3s ease;
|
||||||
|
}
|
||||||
|
|
||||||
|
.wompum-cell[class*="900"]:hover {
|
||||||
|
@apply brightness-200;
|
||||||
|
}
|
||||||
|
|
||||||
|
.wompum-cell--narrator,
|
||||||
|
.wompum-cell--subject,
|
||||||
|
.wompum-cell--facilitator {
|
||||||
|
min-height: unset;
|
||||||
|
}
|
50
assets/css/interview.css
Normal file
50
assets/css/interview.css
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
.interviewer-question {
|
||||||
|
font-style: italic;
|
||||||
|
color: #444;
|
||||||
|
margin-left: -1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.interview-title--single .interview-title__narrator {
|
||||||
|
@apply mb-2 block font-light;
|
||||||
|
}
|
||||||
|
|
||||||
|
.interview-title--single .interview-title__subject {
|
||||||
|
font-size: 1.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.interview-title--list {
|
||||||
|
@apply text-2xl font-bold text-gray-900 group-hover:text-pine-900 underline underline-offset-5 decoration-sand-500 hover:decoration-pine-900
|
||||||
|
dark:text-sand-100 dark:group-hover:text-sand-500 dark:decoration-sand-900 dark:hover:decoration-sand-500;
|
||||||
|
}
|
||||||
|
.interview-title--list .interview-title__narrator::after {
|
||||||
|
content: ":";
|
||||||
|
}
|
||||||
|
|
||||||
|
.interview-title--list .interview-title__subject {
|
||||||
|
@apply font-light;
|
||||||
|
}
|
||||||
|
|
||||||
|
.wompum-radial-grid {
|
||||||
|
@apply absolute w-full h-full top-0 left-0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Narrator headshot */
|
||||||
|
|
||||||
|
.narrator__container {
|
||||||
|
@apply relative w-48 mb-2 mx-auto md:mx-0 rounded-full border-4 bg-white border-white
|
||||||
|
dark:bg-gray-950 dark:border-gray-950;
|
||||||
|
}
|
||||||
|
|
||||||
|
.narrator__frame {
|
||||||
|
@apply relative p-4;
|
||||||
|
}
|
||||||
|
|
||||||
|
.narrator__frame img {
|
||||||
|
@apply w-full rounded-full object-cover relative z-10 bg-white text-center border-4 border-white grid place-items-center
|
||||||
|
dark:bg-gray-950 dark:border-gray-950;
|
||||||
|
aspect-ratio: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.narrator__wompum {
|
||||||
|
@apply absolute inset-0 w-full h-full;
|
||||||
|
}
|
59
assets/css/main.css
Normal file
59
assets/css/main.css
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
body {
|
||||||
|
@apply font-garamond;
|
||||||
|
}
|
||||||
|
|
||||||
|
a:hover {
|
||||||
|
@apply text-pine-900 dark:text-pine-100;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tag {
|
||||||
|
@apply p-2 bg-sand-100 border border-transparent rounded-lg whitespace-nowrap no-underline
|
||||||
|
hover:border-sand-500 hover:text-gray-900 hover:opacity-100
|
||||||
|
dark:bg-gray-900 dark:text-sand-100 dark:border-gray-800 dark:hover:text-sand-100
|
||||||
|
transition-all duration-200 ease-in-out;
|
||||||
|
transition: border 2s ease-in;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tag:hover {
|
||||||
|
transition: border 0.1s ease-out;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tag-cloud .tag:nth-child(10n+1):hover {
|
||||||
|
@apply border-blue-500 dark:border-blue-900;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tag-cloud .tag:nth-child(10n+2):hover {
|
||||||
|
@apply border-clay-500 dark:border-clay-900;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tag-cloud .tag:nth-child(10n+3):hover {
|
||||||
|
@apply border-cyan-500 dark:border-cyan-900;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tag-cloud .tag:nth-child(10n+4):hover {
|
||||||
|
@apply border-gold-500 dark:border-gold-900;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tag-cloud .tag:nth-child(10n+5):hover {
|
||||||
|
@apply border-red-500 dark:border-red-900;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tag-cloud .tag:nth-child(10n+6):hover {
|
||||||
|
@apply border-pine-500 dark:border-pine-900;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tag-cloud .tag:nth-child(10n+7):hover {
|
||||||
|
@apply border-pink-500 dark:border-pink-900;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tag-cloud .tag:nth-child(10n+8):hover {
|
||||||
|
@apply border-moss-500 dark:border-moss-900;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tag-cloud .tag:nth-child(10n+9):hover {
|
||||||
|
@apply border-rust-500 dark:border-rust-900;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tag-cloud .tag:nth-child(10n):hover {
|
||||||
|
@apply border-sand-500 dark:border-sand-900;
|
||||||
|
}
|
53
assets/css/styles.css
Normal file
53
assets/css/styles.css
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
@import "tailwindcss";
|
||||||
|
@plugin "@tailwindcss/typography";
|
||||||
|
|
||||||
|
/* allows for toggling dark mode */
|
||||||
|
@custom-variant dark (&:where(.dark, .dark *));
|
||||||
|
|
||||||
|
/* Add safelist for all color variations */
|
||||||
|
/* Wompum.js constructs class names dynamically and tailwind misses them */
|
||||||
|
@source inline("{bg,text,border}-{blue,clay,cyan,gold,moss,pine,pink,red,rust,sand}-{100,500,900}");
|
||||||
|
|
||||||
|
@theme {
|
||||||
|
--font-garamond: 'EB Garamond 12', 'Garamond', 'Baskerville', 'Baskerville Old Face', 'Hoefler Text', 'Times New Roman', serif;
|
||||||
|
--font-iosevka: 'Iosevka', Consolas, 'Liberation Mono', Menlo, monospace;
|
||||||
|
--color-blue-100: #c2cfe0;
|
||||||
|
--color-blue-500: #6f88a3;
|
||||||
|
--color-blue-900: #5d7691;
|
||||||
|
--color-clay-100: #ead4c2;
|
||||||
|
--color-clay-500: #c49b6f;
|
||||||
|
--color-clay-900: #b17f48;
|
||||||
|
--color-cyan-100: #c0dadd;
|
||||||
|
--color-cyan-500: #6a9799;
|
||||||
|
--color-cyan-900: #436668;
|
||||||
|
--color-gold-100: #e6dac1;
|
||||||
|
--color-gold-500: #bca66d;
|
||||||
|
--color-gold-900: #a88b48;
|
||||||
|
--color-moss-100: #d0ddc7;
|
||||||
|
--color-moss-500: #919f71;
|
||||||
|
--color-moss-900: #69734a;
|
||||||
|
--color-pine-100: #c7ddd2;
|
||||||
|
--color-pine-500: #7b9b85;
|
||||||
|
--color-pine-900: #516b57;
|
||||||
|
--color-pink-100: #ead4d2;
|
||||||
|
--color-pink-500: #c0928a;
|
||||||
|
--color-pink-900: #a7695a;
|
||||||
|
--color-red-100: #e8c9c9;
|
||||||
|
--color-red-500: #b87977;
|
||||||
|
--color-red-900: #a35754;
|
||||||
|
--color-rust-100: #eacec4;
|
||||||
|
--color-rust-500: #c48a74;
|
||||||
|
--color-rust-900: #af6649;
|
||||||
|
--color-sand-100: #eee8dd;
|
||||||
|
--color-sand-500: #d4c5aa;
|
||||||
|
--color-sand-900: #b19360;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
@apply antialiased bg-sand-100/50 dark:bg-gray-950 dark:text-gray-200 transition-colors duration-200;
|
||||||
|
}
|
||||||
|
|
||||||
|
@import "components/wompum.css";
|
||||||
|
@import "fonts.css";
|
||||||
|
@import "main.css";
|
||||||
|
@import "interview.css";
|
BIN
assets/headshots/alinagwe_mwaselela.png
Normal file
BIN
assets/headshots/alinagwe_mwaselela.png
Normal file
Binary file not shown.
After ![]() (image error) Size: 870 KiB |
BIN
assets/headshots/asia_dorsey.png
Normal file
BIN
assets/headshots/asia_dorsey.png
Normal file
Binary file not shown.
After ![]() (image error) Size: 1004 KiB |
BIN
assets/headshots/bernie_mayer.png
Normal file
BIN
assets/headshots/bernie_mayer.png
Normal file
Binary file not shown.
After ![]() (image error) Size: 855 KiB |
BIN
assets/headshots/camille_acey.png
Normal file
BIN
assets/headshots/camille_acey.png
Normal file
Binary file not shown.
After ![]() (image error) Size: 2.0 MiB |
BIN
assets/headshots/david_mayernik.jpg
Normal file
BIN
assets/headshots/david_mayernik.jpg
Normal file
Binary file not shown.
After ![]() (image error) Size: 394 KiB |
BIN
assets/headshots/edson_osorio.png
Normal file
BIN
assets/headshots/edson_osorio.png
Normal file
Binary file not shown.
After ![]() (image error) Size: 242 KiB |
BIN
assets/headshots/jasmine_albuquerque.jpg
Normal file
BIN
assets/headshots/jasmine_albuquerque.jpg
Normal file
Binary file not shown.
After ![]() (image error) Size: 143 KiB |
BIN
assets/headshots/josette_zayner.jpg
Normal file
BIN
assets/headshots/josette_zayner.jpg
Normal file
Binary file not shown.
After ![]() (image error) Size: 200 KiB |
BIN
assets/headshots/michael_zargham.png
Normal file
BIN
assets/headshots/michael_zargham.png
Normal file
Binary file not shown.
After ![]() (image error) Size: 896 KiB |
BIN
assets/headshots/mosud_mannan.png
Normal file
BIN
assets/headshots/mosud_mannan.png
Normal file
Binary file not shown.
After ![]() (image error) Size: 918 KiB |
BIN
assets/headshots/placeholder-headshot.png
Normal file
BIN
assets/headshots/placeholder-headshot.png
Normal file
Binary file not shown.
After ![]() (image error) Size: 1.9 MiB |
BIN
assets/headshots/robin_berjon.jpg
Normal file
BIN
assets/headshots/robin_berjon.jpg
Normal file
Binary file not shown.
After ![]() (image error) Size: 1.8 MiB |
@@ -14,7 +14,7 @@ class ColorCalculator {
|
|||||||
// Calculate shade based on influences
|
// Calculate shade based on influences
|
||||||
const shade = this.calculateShade(influences);
|
const shade = this.calculateShade(influences);
|
||||||
|
|
||||||
return `var(--${colorFamily}-${shade})`;
|
return `${colorFamily}-${shade}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Calculate shade based on surrounding influences
|
// Calculate shade based on surrounding influences
|
19
assets/js/darkmode.js
Normal file
19
assets/js/darkmode.js
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
// Set initial theme on page load
|
||||||
|
(function() {
|
||||||
|
const isDark = localStorage.theme === "dark" ||
|
||||||
|
(!("theme" in localStorage) && window.matchMedia("(prefers-color-scheme: dark)").matches);
|
||||||
|
document.documentElement.classList.toggle("dark", isDark);
|
||||||
|
|
||||||
|
// Update label on load
|
||||||
|
const label = document.getElementById("darkmode-label");
|
||||||
|
if (label) label.textContent = !isDark ? "Dark" : "Light";
|
||||||
|
})();
|
||||||
|
|
||||||
|
// Toggle dark mode and update label/localStorage
|
||||||
|
function toggleDarkMode() {
|
||||||
|
const html = document.documentElement;
|
||||||
|
const isDark = html.classList.toggle("dark");
|
||||||
|
localStorage.theme = isDark ? "dark" : "light";
|
||||||
|
const label = document.getElementById("darkmode-label");
|
||||||
|
if (label) label.textContent = !isDark ? "Dark" : "Light";
|
||||||
|
}
|
270
assets/js/wompum.js
Normal file
270
assets/js/wompum.js
Normal file
@@ -0,0 +1,270 @@
|
|||||||
|
class WompumGrid {
|
||||||
|
constructor(element) {
|
||||||
|
this.gridElement = element;
|
||||||
|
this.gridSize = {
|
||||||
|
columns: parseInt(element.dataset.columns) || 7,
|
||||||
|
rows: parseInt(element.dataset.rows) || 5
|
||||||
|
};
|
||||||
|
|
||||||
|
// Set grid template columns and rows
|
||||||
|
this.gridElement.style.gridTemplateColumns = `repeat(${this.gridSize.columns}, 1fr)`;
|
||||||
|
this.gridElement.style.gridTemplateRows = `repeat(${this.gridSize.rows}, 1fr)`;
|
||||||
|
|
||||||
|
// Initialize color calculator
|
||||||
|
this.colorCalculator = new ColorCalculator();
|
||||||
|
|
||||||
|
// Generate sigil from text content if provided
|
||||||
|
const text = element.dataset.text || '';
|
||||||
|
this.sigil = Sigil.generate(text);
|
||||||
|
this.gridElement.dataset.sigil = JSON.stringify(this.sigil);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get sigil digit for a cell based on its position
|
||||||
|
getSigilDigit(position) {
|
||||||
|
if (!this.sigil || !this.sigil.length) return 0;
|
||||||
|
return this.sigil[position % this.sigil.length];
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get influences from adjacent cells
|
||||||
|
getInfluences(column, row) {
|
||||||
|
const influences = [];
|
||||||
|
|
||||||
|
// Check adjacent cells (up, down, left, right)
|
||||||
|
const adjacentPositions = [
|
||||||
|
[column, row - 1], // up
|
||||||
|
[column, row + 1], // down
|
||||||
|
[column - 1, row], // left
|
||||||
|
[column + 1, row] // right
|
||||||
|
];
|
||||||
|
|
||||||
|
for (const [adjCol, adjRow] of adjacentPositions) {
|
||||||
|
if (adjCol >= 0 && adjCol < this.gridSize.columns &&
|
||||||
|
adjRow >= 0 && adjRow < this.gridSize.rows) {
|
||||||
|
const cell = this.gridElement.querySelector(
|
||||||
|
`[data-column="${adjCol}"][data-row="${adjRow}"]`
|
||||||
|
);
|
||||||
|
if (cell && cell.dataset.sigilDigit) {
|
||||||
|
influences.push(parseInt(cell.dataset.sigilDigit));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return influences;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create basic grid cells
|
||||||
|
createGrid() {
|
||||||
|
const totalCells = this.gridSize.columns * this.gridSize.rows;
|
||||||
|
|
||||||
|
for (let i = 0; i < totalCells; i++) {
|
||||||
|
const cell = document.createElement('div');
|
||||||
|
const column = i % this.gridSize.columns;
|
||||||
|
const row = Math.floor(i / this.gridSize.columns);
|
||||||
|
|
||||||
|
cell.className = 'wompum-cell';
|
||||||
|
cell.setAttribute('data-cell-index', i);
|
||||||
|
cell.setAttribute('data-column', column);
|
||||||
|
cell.setAttribute('data-row', row);
|
||||||
|
|
||||||
|
// Set sigil digit based on cell position
|
||||||
|
const sigilDigit = this.getSigilDigit(i);
|
||||||
|
cell.setAttribute('data-sigil-digit', sigilDigit);
|
||||||
|
|
||||||
|
this.gridElement.appendChild(cell);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
applyMetadataDesign() {
|
||||||
|
const cells = this.gridElement.querySelectorAll('.wompum-cell');
|
||||||
|
|
||||||
|
cells.forEach(cell => {
|
||||||
|
const column = parseInt(cell.dataset.column);
|
||||||
|
const row = parseInt(cell.dataset.row);
|
||||||
|
const sigilDigit = parseInt(cell.dataset.sigilDigit);
|
||||||
|
|
||||||
|
// Get influences from adjacent cells
|
||||||
|
const influences = this.getInfluences(column, row);
|
||||||
|
|
||||||
|
// Calculate and apply color
|
||||||
|
const color = this.colorCalculator.getColor(sigilDigit, influences);
|
||||||
|
cell.classList.add(`bg-${color}`);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
init() {
|
||||||
|
if (!this.gridElement) return;
|
||||||
|
this.createGrid();
|
||||||
|
this.applyMetadataDesign();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class InterviewGrid extends WompumGrid {
|
||||||
|
constructor(element, metadata) {
|
||||||
|
super(element);
|
||||||
|
this.metadata = metadata;
|
||||||
|
|
||||||
|
// Generate sigils for each metadata component
|
||||||
|
this.sigils = {
|
||||||
|
narrator: Sigil.generate(metadata.narrator),
|
||||||
|
subject: Sigil.generate(metadata.subject),
|
||||||
|
facilitator: Sigil.generate(metadata.facilitator)
|
||||||
|
};
|
||||||
|
|
||||||
|
// Store sigils as data attributes
|
||||||
|
Object.entries(this.sigils).forEach(([key, value]) => {
|
||||||
|
this.gridElement.dataset[`${key}Sigil`] = JSON.stringify(value);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
getSigilDigit(position, section) {
|
||||||
|
const sigil = this.sigils[section];
|
||||||
|
if (!sigil || !sigil.length) return 0;
|
||||||
|
return sigil[position % sigil.length];
|
||||||
|
}
|
||||||
|
|
||||||
|
createGrid() {
|
||||||
|
const totalCells = this.gridSize.columns * this.gridSize.rows;
|
||||||
|
const narratorColumns = 2;
|
||||||
|
const facilitatorColumns = 2;
|
||||||
|
|
||||||
|
for (let i = 0; i < totalCells; i++) {
|
||||||
|
const cell = document.createElement('div');
|
||||||
|
const column = i % this.gridSize.columns;
|
||||||
|
const row = Math.floor(i / this.gridSize.columns);
|
||||||
|
|
||||||
|
// Determine section based on column position
|
||||||
|
let section;
|
||||||
|
if (column < narratorColumns) section = 'narrator';
|
||||||
|
else if (column >= this.gridSize.columns - facilitatorColumns) section = 'facilitator';
|
||||||
|
else section = 'subject';
|
||||||
|
|
||||||
|
// Use BEM modifiers for sections
|
||||||
|
cell.className = `wompum-cell wompum-cell--${section}`;
|
||||||
|
cell.setAttribute('data-cell-index', i);
|
||||||
|
cell.setAttribute('data-section', section);
|
||||||
|
cell.setAttribute('data-column', column);
|
||||||
|
cell.setAttribute('data-row', row);
|
||||||
|
|
||||||
|
// Set sigil digit based on section and position
|
||||||
|
const sigilDigit = this.getSigilDigit(row, section);
|
||||||
|
cell.setAttribute('data-sigil-digit', sigilDigit);
|
||||||
|
|
||||||
|
this.gridElement.appendChild(cell);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class RadialWompumGrid {
|
||||||
|
constructor(element, size = 10) {
|
||||||
|
this.element = element; // Remove .parentElement
|
||||||
|
this.segments = size;
|
||||||
|
this.colorCalculator = new ColorCalculator();
|
||||||
|
this.sigil = Sigil.generate(this.element.dataset.text || '');
|
||||||
|
}
|
||||||
|
|
||||||
|
createSegment(index) {
|
||||||
|
const angle = (360 / this.segments);
|
||||||
|
// Add a small gap by reducing the arc angle
|
||||||
|
const gap = 2; // degrees of gap
|
||||||
|
const startAngle = (index * angle) + (gap / 2);
|
||||||
|
const endAngle = ((index + 1) * angle) - (gap / 2);
|
||||||
|
const outerRadius = 50;
|
||||||
|
const innerRadius = 0;
|
||||||
|
|
||||||
|
const start = this.polarToCartesian(startAngle, outerRadius);
|
||||||
|
const end = this.polarToCartesian(endAngle, outerRadius);
|
||||||
|
const innerStart = this.polarToCartesian(startAngle, innerRadius);
|
||||||
|
const innerEnd = this.polarToCartesian(endAngle, innerRadius);
|
||||||
|
|
||||||
|
const largeArcFlag = (angle - gap) > 180 ? 1 : 0;
|
||||||
|
|
||||||
|
const d = [
|
||||||
|
`M ${start.x} ${start.y}`,
|
||||||
|
`A ${outerRadius} ${outerRadius} 0 ${largeArcFlag} 1 ${end.x} ${end.y}`,
|
||||||
|
`L ${innerEnd.x} ${innerEnd.y}`,
|
||||||
|
`A ${innerRadius} ${innerRadius} 0 ${largeArcFlag} 0 ${innerStart.x} ${innerStart.y}`,
|
||||||
|
'Z'
|
||||||
|
].join(' ');
|
||||||
|
|
||||||
|
const path = document.createElementNS('http://www.w3.org/2000/svg', 'path');
|
||||||
|
path.setAttribute('d', d);
|
||||||
|
|
||||||
|
const sigilDigit = this.getSigilDigit(index);
|
||||||
|
// Pass empty array for influences since we don't need adjacent segments
|
||||||
|
const color = this.colorCalculator.getColor(sigilDigit, []);
|
||||||
|
path.setAttribute('fill', `var(--color-${color})`);
|
||||||
|
|
||||||
|
return path;
|
||||||
|
}
|
||||||
|
|
||||||
|
polarToCartesian(angle, radius) {
|
||||||
|
const radian = (angle - 90) * Math.PI / 180.0;
|
||||||
|
return {
|
||||||
|
x: 50 + (radius * Math.cos(radian)),
|
||||||
|
y: 50 + (radius * Math.sin(radian))
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
getSigilDigit(position) {
|
||||||
|
if (!this.sigil || !this.sigil.length) return 0;
|
||||||
|
return this.sigil[position % this.sigil.length];
|
||||||
|
}
|
||||||
|
|
||||||
|
getInfluences(index) {
|
||||||
|
const prev = (index - 1 + this.segments) % this.segments;
|
||||||
|
const next = (index + 1) % this.segments;
|
||||||
|
return [
|
||||||
|
this.getSigilDigit(prev),
|
||||||
|
this.getSigilDigit(next)
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
createSVG() {
|
||||||
|
const svg = document.createElementNS('http://www.w3.org/2000/svg', 'svg');
|
||||||
|
svg.setAttribute('viewBox', '0 0 100 100');
|
||||||
|
svg.setAttribute('class', 'wompum-radial-grid');
|
||||||
|
|
||||||
|
for (let i = 0; i < this.segments; i++) {
|
||||||
|
svg.appendChild(this.createSegment(i));
|
||||||
|
}
|
||||||
|
|
||||||
|
return svg;
|
||||||
|
}
|
||||||
|
|
||||||
|
init() {
|
||||||
|
if (!this.sigil || !this.sigil.length) {
|
||||||
|
console.error('No sigil generated from text:', this.element.getAttribute('data-text'));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
const svg = this.createSVG();
|
||||||
|
this.element.insertBefore(svg, this.element.firstChild);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Initialize grids
|
||||||
|
document.addEventListener('DOMContentLoaded', () => {
|
||||||
|
// Initialize basic grids
|
||||||
|
document.querySelectorAll('.wompum-grid').forEach(element => {
|
||||||
|
const grid = new WompumGrid(element);
|
||||||
|
grid.init();
|
||||||
|
});
|
||||||
|
|
||||||
|
// Initialize interview grids
|
||||||
|
document.querySelectorAll('.wompum-interview-grid').forEach(element => {
|
||||||
|
let metadata = {};
|
||||||
|
try {
|
||||||
|
metadata = JSON.parse(element.dataset.metadata || '{}');
|
||||||
|
} catch (e) {
|
||||||
|
console.error('Error parsing metadata for interview grid:', e);
|
||||||
|
}
|
||||||
|
|
||||||
|
const grid = new InterviewGrid(element, metadata);
|
||||||
|
grid.init();
|
||||||
|
});
|
||||||
|
|
||||||
|
// Initialize radial grids for profile images
|
||||||
|
document.querySelectorAll('.narrator__container').forEach(element => {
|
||||||
|
const grid = new RadialWompumGrid(element);
|
||||||
|
grid.init();
|
||||||
|
});
|
||||||
|
});
|
@@ -1,2 +0,0 @@
|
|||||||
$font-garamond: 'EB Garamond 12', 'Garamond', 'Baskerville', 'Baskerville Old Face', 'Hoefler Text', 'Times New Roman', serif;
|
|
||||||
$font-iosevka: 'Iosevka', Consolas, 'Liberation Mono', Menlo, monospace;
|
|
@@ -1,48 +0,0 @@
|
|||||||
.search-interface {
|
|
||||||
@apply sticky top-0 bg-white z-10 p-4;
|
|
||||||
|
|
||||||
.search-form {
|
|
||||||
@apply space-y-4;
|
|
||||||
}
|
|
||||||
|
|
||||||
.search-input-group {
|
|
||||||
@apply flex gap-2;
|
|
||||||
}
|
|
||||||
|
|
||||||
.search-input {
|
|
||||||
@apply w-full p-2 border rounded-lg focus:ring-2 focus:ring-blue-500;
|
|
||||||
}
|
|
||||||
|
|
||||||
.filter-toggle {
|
|
||||||
@apply px-4 py-2 bg-blue-600 text-white rounded-lg hover:bg-blue-700;
|
|
||||||
}
|
|
||||||
|
|
||||||
.filter-panel {
|
|
||||||
@apply hidden transition-all duration-200 ease-in-out;
|
|
||||||
@apply bg-gray-50 rounded-lg p-4 mt-4;
|
|
||||||
|
|
||||||
&.active {
|
|
||||||
@apply block;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.filter-groups {
|
|
||||||
@apply grid gap-4 md:grid-cols-2 lg:grid-cols-3;
|
|
||||||
}
|
|
||||||
|
|
||||||
.filter-group {
|
|
||||||
@apply space-y-2;
|
|
||||||
|
|
||||||
h3 {
|
|
||||||
@apply font-semibold text-gray-700;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.results-count {
|
|
||||||
@apply mt-4 text-sm text-gray-600;
|
|
||||||
}
|
|
||||||
|
|
||||||
.results-list {
|
|
||||||
@apply mt-4 space-y-4;
|
|
||||||
}
|
|
||||||
}
|
|
@@ -1,37 +0,0 @@
|
|||||||
.wompum {
|
|
||||||
&-container {
|
|
||||||
width: 100%;
|
|
||||||
margin: 0 auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
&-grid {
|
|
||||||
display: grid;
|
|
||||||
gap: 0;
|
|
||||||
padding: 0;
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.single-default &-grid,
|
|
||||||
.single-article &-grid {
|
|
||||||
gap: 1rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
&-cell {
|
|
||||||
width: 100%;
|
|
||||||
min-height: 30px;
|
|
||||||
background-color: var(--sand-500);
|
|
||||||
|
|
||||||
// Create pseudo-random pattern using prime numbers
|
|
||||||
&:nth-child(7n+1) {
|
|
||||||
background-color: var(--sand-100);
|
|
||||||
}
|
|
||||||
|
|
||||||
&:nth-child(5n+2) {
|
|
||||||
background-color: var(--sand-900);
|
|
||||||
}
|
|
||||||
|
|
||||||
&:nth-child(11n+3) {
|
|
||||||
background-color: var(--sand-500);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@@ -1,24 +0,0 @@
|
|||||||
// Tailwind
|
|
||||||
@tailwind base;
|
|
||||||
@tailwind components;
|
|
||||||
@tailwind utilities;
|
|
||||||
|
|
||||||
// Variables
|
|
||||||
@import "variables";
|
|
||||||
|
|
||||||
// Fonts
|
|
||||||
@import "fonts";
|
|
||||||
|
|
||||||
// Components
|
|
||||||
@import "components/wompum";
|
|
||||||
@import "components/search";
|
|
||||||
|
|
||||||
body {
|
|
||||||
font-family: $font-garamond;
|
|
||||||
}
|
|
||||||
|
|
||||||
.interviewer-question {
|
|
||||||
font-style: italic;
|
|
||||||
color: #444;
|
|
||||||
margin-left: -1rem;
|
|
||||||
}
|
|
50
config.toml
50
config.toml
@@ -1,18 +1,50 @@
|
|||||||
baseURL = 'http://example.org/'
|
baseURL = 'https://protocol.ecologies.info/'
|
||||||
languageCode = 'en-us'
|
languageCode = 'en-us'
|
||||||
title = 'Protocol Oral History Project'
|
title = 'Protocol Oral History Project'
|
||||||
theme = "hugo-starter-tailwind-basic"
|
|
||||||
|
|
||||||
[taxonomies]
|
[taxonomies]
|
||||||
tag = "tags"
|
topics = "topics"
|
||||||
|
narrator = "narrator"
|
||||||
|
facilitator = "facilitator"
|
||||||
|
|
||||||
[minify]
|
[minify]
|
||||||
minifyOutput = true
|
minifyOutput = true
|
||||||
|
|
||||||
[outputs]
|
[params]
|
||||||
home = ["HTML", "RSS", "JSON"]
|
description = "The Protocol Oral History Project chronicles the development of internet protocols and standards through interviews with key contributors."
|
||||||
|
openGraphImage = "/images/og-default.jpg"
|
||||||
|
footer = """
|
||||||
|
A project of the [Media Economies Design Lab](https://www.colorado.edu/lab/medlab/)
|
||||||
|
Available under the [Creative Commons Attribution License (CC BY 4.0)](https://creativecommons.org/licenses/by/4.0/)
|
||||||
|
Website design by [Drew Hornbein](https://dhornbein.com)
|
||||||
|
"""
|
||||||
|
|
||||||
[outputFormats.JSON]
|
[params.author]
|
||||||
mediaType = "application/json"
|
name = "Media Economies Design Lab"
|
||||||
baseName = "search"
|
twitter = ""
|
||||||
isPlainText = true
|
|
||||||
|
[module]
|
||||||
|
[module.hugoVersion]
|
||||||
|
extended = false
|
||||||
|
min = "0.128.0"
|
||||||
|
[[module.mounts]]
|
||||||
|
source = "assets"
|
||||||
|
target = "assets"
|
||||||
|
[[module.mounts]]
|
||||||
|
source = "hugo_stats.json"
|
||||||
|
target = "assets/watching/hugo_stats.json"
|
||||||
|
|
||||||
|
[build]
|
||||||
|
writeStats = true
|
||||||
|
[[build.cachebusters]]
|
||||||
|
source = "assets/watching/hugo_stats\\.json"
|
||||||
|
target = "styles\\.css"
|
||||||
|
[[build.cachebusters]]
|
||||||
|
source = "(postcss|tailwind)\\.config\\.js"
|
||||||
|
target = "css"
|
||||||
|
[[build.cachebusters]]
|
||||||
|
source = "assets/.*\\.(js|ts|jsx|tsx)"
|
||||||
|
target = "js"
|
||||||
|
[[build.cachebusters]]
|
||||||
|
source = "assets/.*\\.(.*)$"
|
||||||
|
target = "$1"
|
@@ -1,10 +1,11 @@
|
|||||||
---
|
---
|
||||||
title: "About"
|
title: "About"
|
||||||
include_partials: ["facilitator-list.html"]
|
wompum: "About The Protocol Oral History Project"
|
||||||
|
include_partials: ["facilitator-list.html","wompum-demo.html"]
|
||||||
---
|
---
|
||||||
|
|
||||||
The Protocol Oral History Project is an effort to honor and share the stories of protocol artists—the skilled builders and stewards of the rules, standards, and norms that shape our lives in often invisible ways, ranging from technical standards and diplomatic practices to Indigenous traditions and radical subcultures.
|
The Protocol Oral History Project is an effort to honor and share the stories of protocol artists—the skilled builders and stewards of the rules, standards, and norms that shape our lives in often invisible ways, ranging from technical standards and diplomatic practices to Indigenous traditions and radical subcultures.
|
||||||
|
|
||||||
The color scheme is inspired by _[Constitutional Wampum](http://n2t.net/ark:/65665/ws63912f5dd-e703-4759-8c31-33ac98b3c190)_ by Robert Houle.
|
The project is led by Nathan Schneider, director of the [Media Economies Design Lab](https://www.colorado.edu/lab/medlab/) at the University of Colorado Boulder. Website designed by [Drew Hornbein](https://www.dhornbein.com/). The project is made possible by support from the Siegel Family Endowment.
|
||||||
|
|
||||||
The project is led by Nathan Schneider, director of the [Media Economies Design Lab](https://www.colorado.edu/lab/medlab/) at the University of Colorado Boulder. Website designed by [Drew Hornbein](https://www.dhornbein.com/)
|
The Protocol Oral History Project is part of [Governance Ecologies](https://governance.ecologies.info), a family of projects "expanding the repertoires for community governance."
|
||||||
|
198
content/interviews/acey-organizational_closures.md
Normal file
198
content/interviews/acey-organizational_closures.md
Normal file
@@ -0,0 +1,198 @@
|
|||||||
|
---
|
||||||
|
narrator: Camille Acey
|
||||||
|
subject: Organizational closures
|
||||||
|
facilitator: Nathan Schneider
|
||||||
|
date: 2025-05-06
|
||||||
|
approved: 2025-05-09
|
||||||
|
summary: "Organizations too often fail to prepare for their inevitable end; The Wind Down shares best practices for healthy closures."
|
||||||
|
location: "Brooklyn, NYC, USA"
|
||||||
|
headshot: "camille_acey.png"
|
||||||
|
topics: ["open source", "organizations", "ritual"]
|
||||||
|
links:
|
||||||
|
- text: "Personal website"
|
||||||
|
url: "https://camilleacey.com/"
|
||||||
|
- text: "The Wind Down"
|
||||||
|
url: "https://www.wind-down.org/"
|
||||||
|
---
|
||||||
|
|
||||||
|
*How do you introduce yourself, particularly in the context of building and stewarding protocols?*
|
||||||
|
|
||||||
|
I don't know if I've ever presented myself in the context of building and stewarding. I just say my name.
|
||||||
|
|
||||||
|
I practice through an organization called The Wind Down, and I usually describe The Wind Down as having three pillars right now. One is the platform, which provides materials for people. It's an aggregator of information about other people and projects working on closures. I offer a hotline for people who are closing or in discernment around closure—it was free, but I'm trying to charge for it now.
|
||||||
|
|
||||||
|
The second is the community of practice, the composting and hospice community of practice that I facilitate. We have a Slack, and we meet once a month over Zoom.
|
||||||
|
|
||||||
|
The third is the newsletter that I put out called *Closing Remarks*, which is a roundup of notable or interesting closures, and commentary around the larger themes of closure, either globally or on a national scale. Those are the three main projects I sort of steward under the umbrella of The Wind Down.
|
||||||
|
|
||||||
|
*Can you outline the trajectory of your life and career, as it relates to this work of closure, of winding down?*
|
||||||
|
|
||||||
|
I was born in Berkeley, California. Both my parents were solidly middle-class workers committed to their respective unions and different sorts of organizing.
|
||||||
|
|
||||||
|
My father grew up in Newark, New Jersey, and came out of a Black radical tradition of organizing, working with Amiri Baraka and people like that. He grew up when there were the riots, and he was very informed by that sort of organizing and commitment to various types of political, social, and community engagement. That kind of work was instilled in my household.
|
||||||
|
|
||||||
|
I went to UC Berkeley, which has its own history of student organizing. I lived in the student housing cooperatives all four and a half years at Berkeley, and that was very formative for me in terms of seeing how democratic structures could work. We had students ranging from me—I was 16 when I moved into student co-ops—all the way to people in their fifties, and no one was in charge. We were all running it together.
|
||||||
|
|
||||||
|
I had to tackle challenges as a 16-year-old first starting there, then growing up in the co-ops, then moving up to working at the more central level, then joining the board at the North American Students of Cooperation level. It gave me a strong sense of self-determination and empowerment.
|
||||||
|
|
||||||
|
After college, I went in two different directions. I worked in tech and got very involved in open source. Some friends from UC Berkeley were early people who told me about Linux and open source. So I got involved in open source while staying true to my community organizing and cooperative roots.
|
||||||
|
|
||||||
|
I got involved in many different things, and over time some would end in super disappointing ways. I knew from the open-source space that there were protocols that could support better ways of working together. I was curious whether we could apply that to community organizing and have some protocol around how to close better.
|
||||||
|
|
||||||
|
I was part of a community called The Maintainers—I still am—and in 2019 I sent an email asking if anybody had a good playbook for closing things, because I was seeing closures happen all around me.
|
||||||
|
|
||||||
|
They sent me in a couple different directions—most notably to Cassie Robinson in the UK, who was building something called the Farewell Fund and the Care-full Closures project, which became Stewarding Loss. She was approaching the same questions from the philanthropic perspective: we give people money to start and grow things, but we're not giving people money to close things well.
|
||||||
|
|
||||||
|
Another person was Joe McLeod, who's British but lives in Sweden. He approaches these things from product and service design perspectives. He's written two books called *Ends.* and *Endineering*. He's a prophet of endings, and he constantly thinks about how to help things end better and also how we can be more honest with ourselves about disposal and recycling.
|
||||||
|
|
||||||
|
The third influence was an activist and scholar called Mariame Kaba, known for writing about conflict resolution, movements, and abolition in prison organizing. I'd been giving small donations to her Nia Project, which was an umbrella for different campaigns. What impressed me was that the campaigns were very discrete with clear desired outcomes and a strong commitment to ending once they achieved those outcomes. I hadn't seen organizing done that way, where it was time-boxed and clear. So those are the three main flows of inspiration that drove my work.
|
||||||
|
|
||||||
|
*As you began approaching that work, as you put that message out to the Maintainers list and started engaging in this practice and supporting others, what kinds of models did you draw on? What experiences in your life, what competencies that you had or saw in others, informed your sense of how this could be done well?*
|
||||||
|
|
||||||
|
I worked in open-source tech for a while, so I was inspired by this sense of openness and sharing, and the archival that's embodied in projects like Internet Archive and GitHub. I was thinking about how we can share more regularly.
|
||||||
|
|
||||||
|
In tech, we also have these cycles where you have retrospectives, postmortems—protocols that kick into place connected to where you are on a timeline. When a project ends, that triggers a retrospective.
|
||||||
|
|
||||||
|
I started a collective many years ago called CoLET, which was an attempt to be a hyper-local, radical feminist, tech intervention. We had big dreams after the first Trump administration. We were thinking about getting movement people to move off of Google and Microsoft and start using open-source tech. *What do we need to do to get these people to stop using surveillance technology?*
|
||||||
|
|
||||||
|
We approached it from a couple different places. One of the co-founders had been part of Occupy Wall Street's tech committee and Occupy Sandy, which had ended unceremoniously. People hid passwords from each other and all that. So she was coming in with a strong sense of keeping things as transparent as possible and overcommunicating if there's a problem.
|
||||||
|
|
||||||
|
Going back to what I learned from Mariame Kaba, we also built in what ending would look like from the beginning. We built out the process for ending at the start and had endings in mind, even if we didn't specifically say we're going to exist for five years. We wanted to have a clear "smash glass to exit" process.
|
||||||
|
|
||||||
|
I had been thinking for a while about how nonprofits and movement-based groups could adopt cadences, workflows, and processes where we can revisit things and say, "Do we want to keep doing this?"
|
||||||
|
|
||||||
|
I wanted to develop playbooks and take the learnings from working in tech and apply them to movement work, with a movement lens. I could hand people a book of things to do or a checklist. If you look at my website, there's a lot where I'm trying to systematize it. I don't want to do this work forever or maintain everything forever, but I want to push out a body of work because my bigger thrust is to encourage consciousness of endings much sooner.
|
||||||
|
|
||||||
|
A lot of times when organizations come to me, it's almost like *I didn't believe this could ever happen to me* energy. I think it's important for more people to be thinking about endings at the beginning, in the middle, all the time.
|
||||||
|
|
||||||
|
The other work that inspired how I designed The Wind Down comes out of another project called The Decelerator, which grew out of Stewarding Loss. They're a couple of hops ahead of me in their work. When I spoke to Iona Lawrence, who co-founded The Decelerator with Louise Armstrong, Iona pointed me in certain directions. She suggested the idea of a hotline, and she gave me everything they'd already developed for their hotline so I didn't have to start from zero.
|
||||||
|
|
||||||
|
That's how they were with all the materials on the Stewarding Loss website. They said, "*If anything is helpful, just take it and run with it."* They hadn't been formal about licensing—I don't know if they're familiar with that—but it was a "gentlewoman's agreement" that I could use it if I credit them, and they were happy for this work to proliferate. If things don't apply in the US context as they do in the UK context, I tweak things as needed. It felt very much in the spirit of an open source approach.
|
||||||
|
|
||||||
|
*When organizations approach you through the hotline or other means, how much do you find yourself leaning on common patterns as opposed to having to adjust your guidance to the particular situation? How much commonality do you think there is in these patterns of winding down?*
|
||||||
|
|
||||||
|
There's a lot of commonality and general themes. The more I do these hotline calls, the more I try to make it easier on myself. At the beginning I was doing calls and scribbling notes freehand. Then I started typing while muted, and then I would clean up what I typed and put it in a template I'd created based on what Iona was using in the UK for The Decelerator.
|
||||||
|
|
||||||
|
Recently I realized I could just type directly into the template I send people after the call. And then I thought, "Why don't I put all the questions in there too?" I have a "Wind Down Self-Assessment" on The Wind Down website with questions I tend to ask people every time. I just put it in the doc so I don't have to search or try to remember.
|
||||||
|
|
||||||
|
Sometimes I can get a few minutes into a call and characterize what type of closure it is. I have a few buckets or checkboxes for types of closure.
|
||||||
|
|
||||||
|
One popular type is founder/leader loss—when a founder leaves an organization and no one can really fill their boots. I recently talked with someone who wasn't the founder but was a charismatic leader who'd stepped back from the organization—and then came back because he thought they were in bad shape. He was pointing to other factors for the closure, and I asked, "Does your departure have anything to do with the state it's in now?" He paused and realized that it did. So I mentally checked that box—leader loss.
|
||||||
|
|
||||||
|
Early on, when I started the hotline, I saw many well-meaning organizations that were like, *"We're going to hire a Black woman as our executive director because George Floyd was killed and this is how we show we care"*—but she didn't get support, or maybe she was the wrong person. It was virtue signaling, and then everything exploded. I've seen far too many of those.
|
||||||
|
|
||||||
|
I'm seeing some decline in those and an increase in organizations saying, "Nobody wants anything to do with DEI anymore, so our services are no longer welcome and our business is imploding." They're probably both happening simultaneously, but I think the "we'll solve everything by getting a Black woman in charge" arc is on the downswing.
|
||||||
|
|
||||||
|
Even when I recognize a pattern, I wait and let the person speak it aloud. I don't say, "Oh, you're typical." The only time I might say that is when people ask, "Do I sound crazy?" or "Is this the worst closure you've ever heard about?" It never really is. When people ask that, I'll say, "It happens. I've heard about it."
|
||||||
|
|
||||||
|
I keep a spreadsheet with notes about the type of closure and the reasoning for it. The interesting thing is there is never one cause. It's usually like you brought in the wrong ED who doesn't know how to fundraise, so you ran out of money, and then whatever else.
|
||||||
|
|
||||||
|
Joe's book *Ends* has this idea of a "crack of doubt," which he learned from Helen Rose Ebaugh's book *Becoming An Ex*, about her experience in life when she was a nun and decided she didn't want to be anymore. She talks about this first moment of doubt, and how other things came on that crack and put pressure on it until it became a fracture. When I speak to organizations, I try to identify what that initial crack was, and then ask what other pressures came upon it.
|
||||||
|
|
||||||
|
I think the work I'm doing is really about helping people craft a coherent narrative. That's usually what I give them—I give them a readback of what I heard in a way that's a little bit more narrativized than the way they usually convey it to me. If I have multiple people, like three board members, and they had some conflicts arise while we were talking, I might highlight those. I give them resources, usually links to things, and then suggestions of what they might want to do next.
|
||||||
|
|
||||||
|
It's been really nice to templatize everything and have things as simplified as possible. I had imposter syndrome at the beginning, when I thought maybe I should take some courses on something. But people usually say, "We can find a lawyer very easily, we can find an accountant really easily. What you do—we don't know anybody else who does this." So they've been pretty appreciative of the time and space.
|
||||||
|
|
||||||
|
*Do you ever see situations where maybe people are too premature in declaring the end? Have you ever found yourself wanting to say, "Maybe it's not the end after all"?*
|
||||||
|
|
||||||
|
I always go into the call saying, "I'm not here to call balls and strikes." When people sign up for a closure call, the options are: "we already closed", "we are closing", "we are in discernment around closing", and maybe "I'm just curious about closures in general."
|
||||||
|
|
||||||
|
Of the people that have reached out to me, less than half actually closed. I never tell people it's time to close or not. I'm not the Grim Reaper. I'm just here to listen and make suggestions of next steps they might want to take. Not everybody closes.
|
||||||
|
|
||||||
|
Another thing I recommend sometimes is a pause. I think many people aren't familiar with what an operational pause might look like, so I wrote a blog post about the power of the pause. Sometimes you just need more time to think about thinking, to think about *possibly* closing.
|
||||||
|
|
||||||
|
I don't do the work of saving organizations. When you actually are closing, you can come back, or if you want to think about it more with me. I keep my focus pretty narrow, but I don't tell people they should close or not—what do I know?
|
||||||
|
|
||||||
|
People seem to be tarrying between "Should I ride this all the way to the cliff?" or "Is the honorable thing to do this while we have cash on hand?" Somebody's going to be mad at you either way, but I put those options on the table. People who've closed something years ago—in hindsight, nobody ever says, "I should have kept going." People usually say, "It went on too long."
|
||||||
|
|
||||||
|
I'm sometimes surprised. Someone just wrote me today saying, "We're not going to close; we're going to see what happens." I was surprised because the person had told me they were personally sick of doing the work, which doesn't bode well. But what do I know?
|
||||||
|
|
||||||
|
*Can you say a bit about the practical things that people don't tend to think about but that are important to surface?*
|
||||||
|
|
||||||
|
My most popular blog post was one called "Towards Your 'Tombstone Site.'" That was about the idea of your website's final state being a tombstone. Having looked at countless websites of closed NGOs for my Museum of Closed NGOs, I notice common themes—taking down your mailing list, taking down your donate button.
|
||||||
|
|
||||||
|
I met with somebody recently who was so good about this. They'd had four locations and downsized and closed them all in this process of winding down. She'd already removed all the other locations from their online presence.
|
||||||
|
|
||||||
|
Consistent messaging across all your platforms is important. If your website says you're closed but your Instagram says you're open, get it together. If I don't see consistent messaging where they clearly say they're closing, I won't write about it in the newsletter. If they're not clear, I'm not clear. Into that vacuum of information comes hearsay and gossip.
|
||||||
|
|
||||||
|
Another important thing is communicating with professional organizations—if there are groups that year after year you sponsor their conference, or always send a speaker, or have a table—making sure they know you're closing.
|
||||||
|
|
||||||
|
Something really cool I've seen is people saying, "Don't donate to us anymore, donate to this other group instead." Delegating to another group you want to direct people towards is valuable.
|
||||||
|
|
||||||
|
Other practical things include dealing with organizational credit cards that will be cut off—pay those bills. I've seen some people pay their website hosting five years in advance. And then forwarding addresses, forwarding emails, that kind of stuff. The rule of thumb is generally that for a good ending, you need to have six to nine months of operating capital on hand so you can pay people severance and settle your affairs.
|
||||||
|
|
||||||
|
I was just talking to Jess Meyerson from Educopia, and as part of their process of sunsetting fiscally sponsored organizations, they usually find another steward to hold on to things for a while. When people can do that, that's really good too.
|
||||||
|
|
||||||
|
*Is there anything you wish was out there in the world that could serve as infrastructure for closure? It's always striking to me that the domain name system isn't really well equipped for handling projects that might still need to exist but nobody's there to pay the fee. Is there anything you've found yourself wishing was structured differently to help make this sort of thing easier?*
|
||||||
|
|
||||||
|
It goes back to the beginning of the intervention that Cassie had—operational funds for dignified closures are still super lacking. Philanthropy needs to understand that funding closures is part of pushing forward the missions they claim to have. If you just let these things fall on the ground, it's money wasted.
|
||||||
|
|
||||||
|
That's the big one for me: dedicated operational funds for dignified closures that will pay for people like me, lawyers, accountants, and facilitators who can come into your organization and make this as pain-free as possible. Funds that can facilitate these grief cafes or grief dinner parties, destigmatize the whole thing, and bring that from the moment they start funding you—saying, "We're here to provide wraparound for you and your organization from birth to ending."
|
||||||
|
|
||||||
|
That's most critical. And then, of course, an end to capitalism in general—more important than better philanthropy is a better system.
|
||||||
|
|
||||||
|
*Why the end of capitalism?*
|
||||||
|
|
||||||
|
I think wealth hoarding is at the root of so many issues. Half the organizations I encounter wouldn't have to exist if people weren't hoarding wealth and then requiring appeals to those wealth stewards for a small percentage of their endowments. It's artificial scarcity.
|
||||||
|
|
||||||
|
Looking at my colleagues in Europe and UK, the challenges they face are different because they have social infrastructure. A lot of organizations in the US stay open longer than they should because people depend on them for health insurance. Without capitalism, we could turn our attention instead to other problems that aren't man-made.
|
||||||
|
|
||||||
|
*You've mentioned that you like to build in the open and share your resources. Why do you operate that way? Why not treat this stuff as proprietary intellectual property that you only share with paying clients?*
|
||||||
|
|
||||||
|
That open ethos got into my head very early on. I've been tinkering with the internet since I was a kid. The idea of discoverability for different ways of thinking—I just believe in the open sharing of information.
|
||||||
|
|
||||||
|
Also, I don't want to be a bottleneck. When I worked at one tech company, I once managed a team that went from Seattle to Auckland, and someone would always have to be in their pajamas off-camera to join. The idea that you can grab these materials at a convenient time in whatever time zone you're in and move forward without needing me is a relief.
|
||||||
|
|
||||||
|
A lot of these ideas grew out of other people's thinking, and I'm putting my remix on them. I don't feel comfortable hiding it from people. I want to see more good endings. If I can do this for a little bit more time and feel like the needle has moved and more people are talking about endings—which I already feel is happening—I'll feel good, and like I've achieved a lot of things I wanted to do.
|
||||||
|
|
||||||
|
Less of that would happen if I was just like, "Click here for more information and add your credit card number." I'm a connector by nature, transparent by nature, and I want to keep growing these ideas out in the open.
|
||||||
|
|
||||||
|
I used to work with an organization called Question Copyright. They were into open knowledge, open tech, open culture. One of our flagship projects was Nina Paley's film *Sita Sings the Blues*, and it was cool to facilitate people translating her work into different languages, letting it be open source, people taking her raw materials and remixing them.
|
||||||
|
|
||||||
|
I'm not evangelical about open source, open tech, open culture—it's not the revolution, but the revolution can't happen without it. The information has to be there. I also honor that in any space there should be some sacred knowledge that stays internal. I don't think everybody needs to put all their business on a public-access forum, but I'm here to share and think through things in community with other people.
|
||||||
|
|
||||||
|
*Are there any earlier traditions that you find yourself drawing on in developing this practice? Legacies that you're drawing narratives or experience from?*
|
||||||
|
|
||||||
|
My work grew in part out of the work from Stewarding Loss. That loss lens is really valuable for the British context, because they're not supposed to be emotional and have that stiff upper lip. Whereas in the US, our paradigm is really about failure and success, and striving in a way that isn't always good for you to do.
|
||||||
|
|
||||||
|
I've been playing with this idea of a workshop of storytelling through weaving. My mother's family is from Ghana, and we have *kente* culture—the fabric that people weave with storytelling in it. People put stories into the fabric, and images together mean something.
|
||||||
|
|
||||||
|
In Hawaii, they have a mat called *lauhala* that they weave. During the cleanup after the fires on Maui a few years ago, people would come at the end of the working day and share their grief and woes on the mat, then take the mat to the ocean and shake it out to purge it.
|
||||||
|
|
||||||
|
Iona from The Decelerator said something similar—she doesn't want to be a "pain sponge" or absorber in the hotline work. She wants to purge the world of that grief and pain, to be part of the process of throwing that out.
|
||||||
|
|
||||||
|
The other weaving tradition I think about is the AIDS Quilt—people weaving together a story of what happened, and that being a place of gathering, naming and shaming, remembrance.
|
||||||
|
|
||||||
|
I've been thinking of asking people going through an ending to assign colors and threads. If red and orange are happy, and purple and green are bad, what colors are you seeing here? How are you thinking about how the ending went? Something about narrative, storytelling, and putting things in context is what I'm drawing on loosely.
|
||||||
|
|
||||||
|
There's another nautical metaphor I don't mention much because it's kind of arcane. It's the idea of "scarpering," which is intentionally running your boat aground because it will help improve the coastline, so the next boat that comes won't run into the same thing. There's something about the intentional ending of something that's really valuable—what if we do this early and intentionally, with the next generations in mind?
|
||||||
|
|
||||||
|
*What would a world look like that more fully adopted these kinds of practices of taking endings seriously? What kinds of things that aren't normal would be normal?*
|
||||||
|
|
||||||
|
I don't know if I can talk about the world more broadly, but speaking about organizations or people doing mission work: I think more ritual in general—more ritual around beginnings and endings, clear processes so it's not just about that one big ending but many little ones along the way. Normalization of ritual around departures and arrivals.
|
||||||
|
|
||||||
|
I heard something recently about a culture where, when a friend is giving birth, they have a little funeral for them because they're losing their friend as a single friend, and that friend is becoming mother-friend. They cry and mourn, then bury something as a totem, and come back and reintroduce themselves to this friend in her new form.
|
||||||
|
|
||||||
|
So more ritual, more commemoration of big wins, and more gratitude for people giving themselves. Especially in the nonprofit world in the United States, it's not very well paid generally, often long hours, and people are seeing and hearing horrible things, then getting up and coming back and doing it again.
|
||||||
|
|
||||||
|
I think more appreciation. And maybe even term limits, where people say you shouldn't stay here and do this too long. I had a friend in South Africa who was working with AIDS widows, and at a certain point she had to dismiss herself. She said nobody should stay and do this work that long because the stories are too sad and scary.
|
||||||
|
|
||||||
|
What it would look like if groups formalized this and said you can only do a certain kind of work for two years, and then we have a cooling-off period where we take you to a spa and pamper you to scrub those stories and trauma off you. Some way of having a Peace Corps-like tour of duty—there's value in staying longer, but danger in staying too long. Rotation and ritual are important.
|
||||||
|
|
||||||
|
Another important thing is breaking that connection between impact and longevity. Taking a step back, doing an assessment---*what are you proud that you accomplished?* --- and letting that be your contribution to the mission or the movement, understanding that the organization is not the movement is not the goal. If there's a place we're driving towards, how did you move the needle, how did you move the vehicle forward in valuable ways? Is there value in you stopping what you're doing now?
|
||||||
|
|
||||||
|
In America, we're in this teenager mindset kind of culture where people are always like, "I will never die and we are going to strive until we're all rich." I mostly work with people who are left of center, so I'm familiar with their concerns and values around holistic consciousness and dignified closures. I wonder if I went to the Heritage Foundation whether people would care, or if they'd say, "We should run it to the cliff because who cares, life is cold, brutish, and short."
|
||||||
|
|
||||||
|
I've started finding people who have been through closures or are going through them, and I want to destigmatize it. People come to me usually because they don't know who to talk to about closures. People whisper about it, and there's a stigma. It's like a scarlet letter where people are like, "Oh God, you're closing, don't come over here." There is a web of people who've been through it before and are going through it that needs to be woven. I've spent the last year and a half just finding other people and asking them to tell me their story of closing, or waiting for them to find me.
|
||||||
|
|
||||||
|
*How has your practice of working on closures changed over time?*
|
||||||
|
|
||||||
|
I started from a place of thinking it's about communication and archiving. I came with a very tech practitioner's mindset: how can we get your data, share your data, make it GitHub-able, or put it on Internet Archive? But over time, I started thinking less about data and the archival, and more about it being a relational thing. Another part of the work is honoring that the people that start stuff are not the people that are really excited about closing stuff.
|
||||||
|
|
||||||
|
I've been collecting closures I love and closures that were nightmares. I have them in my back pocket to share with people. That's really where it's at—telling people, "Once upon a time there were some people that did this, they nailed it, and here's what was hard about nailing it. And here's what was hard about failing at failing."
|
||||||
|
|
||||||
|
I've moved away from some precious idea of tech utopianism around closures to just saying closures are messy. Even a compost heap is messy and smelly. The work of tending that heap and deriving whatever is nutritious or beneficial to the soil is its own kind of messy, smelly, mysterious work that not everybody is going to be called to do.
|
||||||
|
|
||||||
|
At the same time, I kind it a little annoying how this language of composting is dancing around the left, because we live in an industrialized society where most stuff isn't compostable. Let's be honest. Bruce Schneier talks about data as a toxic asset.
|
||||||
|
|
||||||
|
In any ending, I try to help people balance the emotional aspects with the project management stuff. I think about who they were before they came to the organization, who they were in the organization, who they hoped to become in the organization—all the time aspects of it. And then the other practical stuff like forwarding email addresses and those kinds of details. Part of it is just like being a mom—"I love you, and also go to the bathroom before we leave."
|
274
content/interviews/albuquerque-contemporary_dance.md
Normal file
274
content/interviews/albuquerque-contemporary_dance.md
Normal file
@@ -0,0 +1,274 @@
|
|||||||
|
---
|
||||||
|
narrator: Jasmine Albuquerque-Croissant
|
||||||
|
subject: Contemporary dance
|
||||||
|
facilitator: Nathan Schneider
|
||||||
|
date: 2024-11-22
|
||||||
|
approved: 2025-08-08
|
||||||
|
summary: "A choreographer describes how dance helps people learn ways of being in shared space and in their bodies."
|
||||||
|
topics: [art, health, family, dance, music]
|
||||||
|
location: "Los Angeles USA"
|
||||||
|
headshot: "jasmine_albuquerque.jpg"
|
||||||
|
links:
|
||||||
|
- text: "Personal website"
|
||||||
|
url: "https://www.jasminealbuquerque.com/"
|
||||||
|
---
|
||||||
|
|
||||||
|
*How do you like to introduce yourself?*
|
||||||
|
|
||||||
|
My name is Jasmine Albuquerque. I'm a choreographer, dancer, storyteller and instructor.
|
||||||
|
|
||||||
|
*How do you outline the trajectory of your life and career? Where did you start in your life as a dancer and choreographer? Where are you now?*
|
||||||
|
|
||||||
|
I grew up on a mountain---which was problematic, because I never had a ride home. In that world of never having a ride home, I would go with my friend Caitlin to dance class and just watch her do ballet. It got to a point where I knew the difference between a *demi-plié* and a *grand plié* more than the girls in class. So I started taking ballet.
|
||||||
|
|
||||||
|
There was something really beautiful about the musicality of ballet and the foundations of ballet. I then progressed into jazz. We had a company called the Dance Asylum. It was really sexy, and all the parents protested it because it was so risque. My teacher played Soft Cell and other eighties music and that was what all the older girls did. I finally got into that company and loved it.
|
||||||
|
|
||||||
|
By the time I turned 16 I literally grew out of ballet. I was too tall *en pointe*. I was 6'4", so I was taller than my partners, and I was like, I might as well just pick YOU up because I'm bigger than you. My feet were huge. My feet grew out of my *pointe* shoes. It was such a mess! Then I moved to Budapest in my third year of college at UCLA.
|
||||||
|
|
||||||
|
That's when I started studying contemporary, which was a huge shift for me. I would take a train outside of the city and take class from a wonderful teacher. It was in Hungarian, but it really made me realize that dance is a universal language, and I could take my shoes off, and I could stick my ass out, and I could do things that were so anti-ballet. I was even counting in Hungarian. I started going to all these contemporary dance shows in Hungary.
|
||||||
|
|
||||||
|
That was before they joined the EU. It was 2003. You could go out for $5 and watch an opera or a dance show. Hungarian work then didn't leave Hungary. So I felt like I entered into this very special time. And they also learned contemporary in a very particular way, because of Communism. They weren't allowed to do it. Certain dancers would go to Italy or somewhere West and learn some contemporary then come back. There were two studios- when someone official would come in they would do the communistic dances, and then, when they left, they would do contemporary in the back. So it felt like this secret language that was really special, and it felt good on my body---finally, something that worked for this big body I had.
|
||||||
|
|
||||||
|
Then I came back to LA. I started taking class from Ryan Heffington. Ryan Heffington, mind you, is a pioneer of underground contemporary dance in Los Angeles. One of the first times I met him he had a shirt on that said "I love dick" and sequined pants. I said, "Yo, you look like shit," and he's like, "Yeah, I just got out of jail." I'm like, "What'd you go to jail for?" He's like, "I was defending a woman, and I was a little bit drunk." I'm like, "And you're about to teach class?" He's like, "Yeah, I'm about to teach class." I'm like, "...okay."
|
||||||
|
|
||||||
|
Then he goes and teaches the most amazing class you ever could possibly go through. There was an earthquake in one of the classes he taught, and I'm like, "Yo, there's an earthquake." He's like, "Whatever. Focus." Ha! Soon he taught me psycho dance. And that's when we started going into nightclubs to perform. This was happening from the eighties on but I was new to it.
|
||||||
|
|
||||||
|
By midnight a fully choreographed, fully costumed 30-minute dance show would happen that no one knew was going to happen. Wild stuff went down in these settings. One time a friend of mine, her leg---someone actually stabbed her leg because they forgot to switch out the real knife with a fake knife. My other friend, her hair caught on fire. One time there was a drunk guy walking in the middle of the dance floor and all the lights came crashing down.
|
||||||
|
|
||||||
|
At some point I was asked to choreograph a dance but the DJ was on speed and he played my track underneath another track, and I got so pissed because it was a very specific Aphex Twin song, and you couldn't hear the subtilites, so we just sort of melted and I got mad and I shined a light on him. I ran outside. I was wearing some little dress and a rat ran by, and then a dude offered me 20 bucks, and I was like, "Yo, I'm not a prostitute. What the hell?" I ran back inside to my family members who lied through their teeth: "That was great."
|
||||||
|
|
||||||
|
With psycho dance, we were very mixed in. I was trained on big stages where you just look out and you see darkness and you just dance. You see the darkness, and then you hear applause. So I kept saying to Ryan, "I don't know how to do this. I'm staring at my ex-boyfriend. I'm staring at my mother. They're in my face. How am I supposed to perform? Where do I go? I'm too big. There's no space." He crawled through my legs, and he said, "There's space." And he crawled through my arm and he said, "There's space. There's always negative space."
|
||||||
|
|
||||||
|
That was so beautiful. I love that. It trained me not only to literally face my fears, but to integrate that fourth wall, to walk into the audience and invite them in and to be able to go into a state in my mind.
|
||||||
|
|
||||||
|
A lot of these dancers were doing drugs and drinking. I was totally sober. I just didn't like that kind of stuff. So I had to create a veil underneath my eyes that could allow me to have a little bit of separation and go into a state.
|
||||||
|
|
||||||
|
The dancers in LA were so special. You have emotional dancers who are super, super amazing emotionally, and then you have physical dancers who are incredible physically. Then you have that rare group of dancers that can do the combo of both of those. And THEN you have that extra rare group of dancers who can channel past lives while they dance and that's what we were. We were called the Fingered Dancers. The show was called Fingered. You would come and get fingered psychologically. It was wild. It was totally crazy. This was around 2008.
|
||||||
|
|
||||||
|
After that, the scene died out. Heffington got sort of famous. He made a music video with Sia. He started a band called We Are the World---two dancers and two musicians.
|
||||||
|
|
||||||
|
When Heffington got too busy for us, I started a dance company with Nina McNeely and Kristen Leahy called WIFE. We all had looked in the mirror, and we were like, yo, we're getting old. Let's start talking about age, and we also were very into iconography and just these beautiful images that we had been looking at for so long. So we did a photo shoot where we were standing on boxes, on small boxes and projecting images on us to make us look like sculptures. And we actually looked like sculptures. And we were like, well, that's dope. Let's dance in that world.
|
||||||
|
|
||||||
|
So we kept standing on those boxes. The confinement, the limitations of being on a two-foot by two-foot box all of a sudden created the most crazy choreography because you couldn't run across the stage. You couldn't leap. That psycho dance stage, which was already smaller than the giant stages I had danced on, all the sudden got even smaller.
|
||||||
|
|
||||||
|
I realized that the best dance is when you have a large limitation around it. WIFE happened from 2010 to 2016 and it was a really special time. It was also a very nerve-wracking time. We were not using infrared, we were using regular projections, so our tech rehearsals were close to six hours long. The precision of where you had to be for the projections to map the body were so insane, and I kept blowing my back because I was so nervous about fucking it up. Nina was making all the projections. She's a self-taught animator and editor and incredible, but she was doing a lot of the work, and Leahy and I were producing everything. And we all had jobs, but we were just really trying to make this happen.
|
||||||
|
|
||||||
|
And we did. We went to England. We went to Istanbul. We toured with it. People loved it. They would come and emulate some of the movement and be like, "Are you a WIFE?" It was this kind of secret "if you knew you knew" kind of thing.
|
||||||
|
|
||||||
|
*It was an amazing show.*
|
||||||
|
|
||||||
|
It really did look like those sculptures came to life. It got very popular. People started teaching it in Germany. It unfolded in ways that we didn't even expect. But by the time we did our last show, which was called "Enter the Cave," I think I had blown my back like five times. I had to use Tess Hewlett to be my replacement and this poor woman---an amazing dancer--would learn a piece that took us a year to choreograph in like three hours and perform it because she's my same height. That was the other thing. It couldn't be just anyone. We once used my friend Zak Schlegel because I had blown my back and we had to tuck his penis under so he looked like a woman. It was totally bonkers.
|
||||||
|
|
||||||
|
After Enter the Cave, it got to a point where the energy between us was too intense. We were all fighting. The work wasn't distributed equally. We were stressed. Leahy ended up moving to Mexico and Nina continued on with her career in LA which has fully bloomed and blossomed in all sorts of ways and I did too. It crumbled at what was the pinnacle of what we were doing. It was very sad. It felt like I got divorced. Then I really did get divorced and those two literally got married. That's what was happening.
|
||||||
|
|
||||||
|
Since then I've been freelance. I've been a freelance dancer and choreographer for a long time, at least fifteen years. I also have to mention that I started teaching when I was 21. I'm 41 now.
|
||||||
|
|
||||||
|
Teaching was the experience that really shifted me into a choreographer. All of a sudden I'm in a room with women in their forties and I'm 21. "These are my students? What do I teach them? Shouldn't I be learning from them?"
|
||||||
|
|
||||||
|
I asked them to walk across the room and stop in the middle and look in the mirror and not fidget for 10 seconds, and none of them could do it. I realized that I needed to teach confidence. I needed to teach bodies. I needed to teach that it's okay to look at ourselves, it's ok to be in our bodies.
|
||||||
|
|
||||||
|
It got to a point where women were like---or people, you know I had a few men, but mostly women---saying to me, "I got a job after doing your class." "I slept for the first time after doing your class. "I broke up with my boyfriend." "I was able to be in my body." Doing that for twenty years turned me into a choreographer. I made a new combo every two weeks. I would have one combo one week, and then it'd be the same, and then we'd switch. So I was making a lot of choreography and I continue to. Teaching is a huge part of my career.
|
||||||
|
|
||||||
|
And now? I'm in LA, and the industry's kind of bottoming out. It's a very strange time for dance. Covid was super devastating for us. We lost 80 percent of our dance studios. We've all been kind of dissipated and broken apart. The Sweat Spot was Ryan Heffington's dance studio that went under. It was 11 years of a space to create shows, rehearse, gather, teach, perform and party. You name it, everything...where we went to think and talk was in that studio and it went down. And The Edge, which was around for thirty years also shut its doors.
|
||||||
|
|
||||||
|
So things shifted in a really weird way during Covid. We felt like we were Covid, because all we did was touch and grope each other and all of a sudden touching each other would kill each other. This was really, really hard for us. But it was interesting, too, because people started reaching out to dancers and saying, "We need you. We need you to teach us. We need you to help us get through this."
|
||||||
|
|
||||||
|
I started teaching on Zoom, which was bizarre. I did it for two years and eventually started teaching movement therapy. I'm not a certified therapist. I was just like, you know, let's figure out how to get through this together. I ran into a woman when I was at the Biennale in Italy, and she said, "You saved my life," and I was like, "Who are you?" She's like, "I took your Zoom class during Covid." We became these fountains of health, in a way.
|
||||||
|
|
||||||
|
Now I've had another baby. My brain has changed yet again.
|
||||||
|
|
||||||
|
I choreographed a piece two weeks ago, which was really wild in a postpartum state. I took an old piece from 2019, took out the men, put it on women, bought silicon bellies for them that were six months pregnant, and turned them into pregnant women---naked, pregnant women. I pumped my breasts onstage and then had them walk around me in trench coats and heels, take off the trench coats, throw the heels away, and start this very psychotic dance to AFX, which is even more gnarly than Aphex Twin-his alias. It took me 10 years to choreograph to this song. It's so---it makes your brain bleed. I wanted to take people into one little element of birth---what it feels like. I don't think you die when you give birth. You are hyper-alive.
|
||||||
|
|
||||||
|
Have I answered your question?
|
||||||
|
|
||||||
|
*Oh yes---beautifully. So beautifully, Jasmine.*
|
||||||
|
|
||||||
|
From a mountain to birth.
|
||||||
|
|
||||||
|
*Knowing very, very little about choreography, the image I have in my mind is a piece of paper with Russian ballet movements on them, with foot positions.*
|
||||||
|
|
||||||
|
Like actually writing choreography down?
|
||||||
|
|
||||||
|
*Right? What does choreography mean for you like? What does it feel like? What does it consist of?*
|
||||||
|
|
||||||
|
A lot of dancers don't choreograph because they want to be told what to do. They don't want to have to create it. When I first started choreographing I was writing things down, and it would be [moving hands and body] "Swoop! Wah! Hee haw! Pregnant swipe knife in out, left, right! Turn up up! La, la!"
|
||||||
|
|
||||||
|
*Were you using a standard, or were you creating your own?*
|
||||||
|
|
||||||
|
No standard at all. There's a name for that standardized choreography. I can't remember what it's called but it does not work at all. It's like this psycho map and also contemporary dance has changed everything. We're dancing to-you know-Philip Glass. How do you count that? Where is the five-six-seven-eight? Where's the one-e-and-a, two-e-and-a? It's not hip-hop. It's not jazz, it's not eights. Or even this song, this AFX song---like, try counting that song, there's elevens, there's tens, there's fives. I realized as I was teaching that I needed to teach from imagery. I didn't exactly realize this---I worked with a guy named Glenn Edgerton, who used to be the artistic director of Netherlands Dans Theater, which is one of my favorite companies in Europe and I took a choreography workshop from him. This was a long time ago...he taught from images. He always said, "Let's show things with images."
|
||||||
|
|
||||||
|
That was really helpful for me. I was sometimes writing things down and that was fun. It helped me remember. I had a hard enough time picking up other people's choreography.
|
||||||
|
|
||||||
|
When I was in the process of choreographing, I used to be very precious about it. I used to not allow anybody to watch me. That was what was nice about WIFE---we would have to choreograph in front of each other. But normally I would be like, "Don't watch me do this! This is so embarrassing."
|
||||||
|
|
||||||
|
But I started being more comfortable choreographing in front of other people. What I do is I go to the most empty space in my mind---the biggest void you could possibly imagine--the blackest nothingness. I have to let everything out...then the song---I open a song, I enter the song into my mind. The song tells me what to do. Sometimes it's a conversation, sometimes it's an argument between us and sometimes it just completely flows. It's the weirdest thing---sometimes one minute of a song can take me anywhere from ten minutes to three hours to create depending on the state that I'm in.
|
||||||
|
|
||||||
|
But the song is the most important thing to me. The song has to talk to me. If the song does not talk to me, I cannot choreograph to it. So once I stopped writing things down and started working just with my body more, I realized that a dance is really just a repetition of three, you know---once you find a movement that you like, all of a sudden it's a dance. And I told that to my students: you can choreograph by just making a phrase on your body. Start improvising, and then, when you like one little thing, do it three times, and then all of a sudden, you have a dance.
|
||||||
|
|
||||||
|
I also used to teach this thing I named "Bomb/Baby" which is where I would have your body experience what it feels like when a bomb goes off and then try to imagine what it's like holding a baby. I would make them do both at the same time. You're experiencing this motion of shock and energy vs. caress and gentleness. Two extremities at one time. I liked what that dichotomy did to the body.
|
||||||
|
|
||||||
|
All dance is a manipulation of energy.
|
||||||
|
|
||||||
|
Everybody can dance. But how are you manipulating your energy? What are you doing to manipulate your energy that's manipulating my energy when I watch you? Why are the hairs standing up on the back of my neck when I watch you, but not when I watch *you*? *You*'re not doing anything for me, but you're doing a lot for me. I can watch beautiful dance, but if the person has not opened up their state and allowed me to come in, it's not going to do anything for me.
|
||||||
|
|
||||||
|
Choreography is a very strange language. I try to run from it sometimes. I don't like it all the time---it's sort of brutal. It makes me nervous. I'm still nervous to choreograph after god knows how many years I've been doing this. I think now it gets to a point where I just can visualize a feeling.
|
||||||
|
|
||||||
|
For example, I'm creating a piece in my head right now, and I know I want to have forty to forty-five bodies on their knees and I want them to be the sea...the grass on the ocean floor...a solid seagrass of humans. But I don't ever want us to see their faces, and I know that there's a future, a chunk of the future walking through that they keep looking at. We don't see their faces, and then I know there's a duet between my friend Maija and Malachi that's happening on top of this sea of bodies---the most abstract, weird stuff.
|
||||||
|
|
||||||
|
And then all of a sudden, you have to physicalize that. I used to choreograph when I was on my bicycle, which was really nice because I had motion. I would get a lot of choreography from houseless people. I would watch them doing these moves that were so beautifully kind of psychotic. And I loved it because they were the ones who were watching humans for real, because they were out there seeing it every single day. Whatever they'd experienced in their paths, whether it was war or meth, or just not having money, or whatever it was that brought them to the streets, they communicate with their bodies in ways that's really beautiful.
|
||||||
|
|
||||||
|
I'd ride my bike everywhere. I was on a bike for six years in LA and I had this motion underneath me. I'd be listening to music and observing houseless people on the streets and that would bring out a state I could enter into that helped a lot with choreography.
|
||||||
|
|
||||||
|
*When you are communicating an idea to dancers, are you telling a story? Are you showing them images? What is the means by which you get your choreography out of your head and into their bodies?*
|
||||||
|
|
||||||
|
No, I'm not telling a story. I don't like stories with dance. I think it's too boring. I want half the audience to get up and leave. I want them to be like, "This is shit." I haven't done my work if people like it. You know what I mean? I want them to see it and say, "Oh God, what the hell? This is rude and mean and not fair."
|
||||||
|
|
||||||
|
So with my dancers---I told my last dancer, Maija, "Listen, I want you. But I also need a monster. I don't want a dancer, I want a monster."
|
||||||
|
|
||||||
|
I had one process of creating a piece where I was teaching them what it felt like to be in a psycho dance situation. I was throwing things at them in the rehearsal space. I was turning the music on and off. I was turning the lights on and off. I was getting aggressive with them. And then when we did the show---it was at a club called Zebulon---which is a very special nightclub---I really loved my main dancer's body movements but her face was frustrating me because she kept doing this little emotional eyebrow thing.
|
||||||
|
|
||||||
|
I was doing the piece to Pharmakon, which is super, super gnarly music. There's a section of it where she just coughs for the whole thing, and I came out dancing during the cough, and then the dancers come out, and I had them representing "Liberty, blood, land, justice." It was about immigration, but in a very abstract way. That was the one when my dad played saxophone at the end. He played free jazz and I danced to it. But the woman who was playing me as the Statue of Liberty when we later did this piece at Zebulon---she was doing that eyebrow thing. So during the show, I drank an entire bottle of water and spit it in her face, and she looked at me with an honest expression and I said, "That's the face I want!" She kept going. It was incredible. She tells me, years later, that that moment changed her life in a lot of ways.
|
||||||
|
|
||||||
|
I don't know what I do to my dancers. I try to give them enough space that they can translate what's in their heads. But we're meeting at some sort of middle point in the music. I'm giving them movement and sometimes I give them a little bit of a backstory. Like for this last one I did about birth, I showed them what it felt like to be in labor. I screamed. I got on all fours. I ran around. I also had them put the fake bellies on. What does it make you feel like to be pregnant? These were all women who had never had babies. It took 30 minutes of them walking around the studio with their bellies, experiencing that. I asked them, "What do you care for most?"
|
||||||
|
|
||||||
|
I don't like "this is the beginning, this is the middle, this is the end, this is the climax, this is what it's about." I don't treat dance as academic. New York has a very academic approach to dance, which I appreciate. Los Angeles is very "dance for fuck sake, dance to dance, dance because we can."
|
||||||
|
|
||||||
|
It may seem kind of elitist or weird, but when you find that grit, it's so beautiful, because we're emulating things---again, like a houseless person or someone sitting at a bus stop. We're emulating the things that you see in life. A brief moment or the moment just before something happens. But I don't want to force feed you. Most of my stuff is from a dream or from an experience I've had. It's piecing together abstract elements of my life. My brain is also not normal. I'm an art baby. I'm Lita Albuquerque's daughter---I have cobalt blue pigment and toxins in my mind. That's why I don't need drugs. I am drugs, to quote Salvador Dali.
|
||||||
|
|
||||||
|
*I'd love to hear a bit more about that relationship---the role that the dancers play in shaping a piece. How much is it a collective product of everyone who's involved as opposed to something that you are bringing to the dancers?*
|
||||||
|
|
||||||
|
Dancers are huge---they are the piece. It's just that I am so particular about picking my music---I'll listen to a track for, I'm not kidding you, 10 years. I work with my dancers in that same way. It's not always the same dancers, but I'm very specific about who I use. Those are the people who can experience past lives when they dance. They're the ones who can throw me off. They have to throw me off. They are bold in their choices.
|
||||||
|
|
||||||
|
There's one woman named Maija Knapp who I just---I'm obsessed with her. She can do anything. She's got these thighs that are like trees and her deep *plié* is practically on the ground. Then all of a sudden, she's frolicking through a meadow, but she looks like she could cut your head off. She's just a beast. She's incredible. I've worked with her since she was 18. She's 26 now. I feel like she's what I always wanted to be in a dancer.
|
||||||
|
|
||||||
|
It really depends on the piece. But thinking about who can execute it is a big part of my process, because half the time I don't believe in my work. I don't think it's going to be good enough, and then I put it on the body of a dancer who brings out a different light.
|
||||||
|
|
||||||
|
When I was teaching a lot, I remember I would love the mistakes that people made. I would write down the mistakes. If all the bodies drop, and one person stands up because they forgot to drop, I would take that as the next piece of choreography. And Heffington always said, "Live in your mistakes." If you fall to the ground, live in it. Be that mistake, be it even further than you could possibly imagine. Don't run from it. Don't try to pick up the pieces. Thoroughly enjoy your mistake. I try to teach that with dance as well.
|
||||||
|
|
||||||
|
*What have been some of your most important decisions in the development of your career, in your practice? What kinds of choices stand out to you?*
|
||||||
|
|
||||||
|
I have no idea. What do you mean?
|
||||||
|
|
||||||
|
*Did you have moments when you had to choose to go one way or another? When you had to locate what kind of choreographer you would be?*
|
||||||
|
|
||||||
|
Yeah, absolutely. The industry in LA is very complicated. You have layers and layers. You have touring dancers, you have hip-hop dancers, you have contemporary dancers. Within the contemporary scene, you have the artsy ones, you have the more normal ones, you have modern dancers which don't really have too big of a place here, because they're more in the academic world---you're going to see them more at universities.
|
||||||
|
|
||||||
|
Also contemporary and modern, we kind of butt heads a little bit. Modern dancers are introverted, they're looking down. To me---I'm sorry, modern dancers, I love you, but it looks like a pillow party. There's no guts to it. Rude!
|
||||||
|
|
||||||
|
Contemporary dancers look like they're on drugs but they make eye contact with you. And then all of a sudden, you're like, "Oh damn!" We always joke, we show each other videos of people walking who are on acid or on meth or whatever, and we're like, "Oh, a contemporary dancer." But then we make eye contact and that's what's powerful about contemporary---we use our eyes to communicate. We use our eyes for connection. We use our eyes for direction.
|
||||||
|
|
||||||
|
I've been in Hollywood for too long. In Hollywood, as a movement director, I'm a punching bag between a photographer who wants weird and a celebrity that only knows sexy. Honestly, that's my job. I'm in the way of the lighting person. It's the weirdest job because you have this celebrity that really knows how to be sexy, but the photographer wants them to look bizarre and is trying to convince them to do this for the cover of *Vogue*. It is not the easiest thing to do.
|
||||||
|
|
||||||
|
When I was auditioning as a dancer, I would go to auditions with like three to four hundred people. I would be the one in the back, slow dancing with a ghost. "Can I please leave? Like I really don't want to do this. This is not my style." They were sending me out for like *Frozen* the musical, cruise ship gigs, things that were so out of my wheelhouse, and I kept saying to my agents, "I come from Heffington, I come from Kitty McNamee, Mecca Andrews...that world of contemporary," and they said they get it. But when they were sending me out for this stuff I'm like, "Help, I'm not this dancer."
|
||||||
|
|
||||||
|
So eventually I got named the "eclectic dancer," which really drove me bonkers. And then I was the "East Side dancer" which also drove me bonkers. They just keep trying to categorize you, and after being with my agency now for like at least fifteen years---I think I've been with Bloc for a super long time---they finally understand me. It also took me a very long time to be repped as a choreographer. They have a very small choreography department and a very large dance department.
|
||||||
|
|
||||||
|
It wasn't until I choreographed for Katy Perry that they accepted me as a choreographer. Then things shifted. All of a sudden, now I'm treated differently. But I'm still kind of low-hanging fruit in that world because there are so many incredible choreographers in LA.
|
||||||
|
|
||||||
|
This is another thing about dance which is really weird: It's one of the only art forms where your body disintegrates, but your emotional experiences accelerate. So you're at this weird crossroads where you feel "my body can't do this," but I've experienced sexual assault, or I've experienced being robbed, or I've experienced falling in love, I've experienced having a baby. As a 41-year-old dancer, I can bring that. But I can't kick my leg up high and I can't do triple pirouettes anymore. When you watch an older dancer, it's so beautiful because you're witnessing those things that they've seen. And when you watch a younger dancer, you're like, "You can do all that with your body, but you need to go through a little bit more life."
|
||||||
|
|
||||||
|
I feel like now they're trying to take the art out of me. Freelancing is constantly trying to take the art out of you. They always hire you, and they're like, "We want dance, but not *dance*. We want this, but not that." Why do I have all this skill but can't utilize it properly? Lack of funding in America for the arts.
|
||||||
|
|
||||||
|
I never became a touring dancer because I was always too tall. You have to look like---you have to blend in. You can't threaten the lead singer. I've always stayed in the art world of dancing. I've made like twelve collaborations with my mother. That kind of puts me in a different category, too.
|
||||||
|
|
||||||
|
I don't know about the decisions. I think I've---I mean half the time I wonder why I still do this. It's totally crazy. It's such a weird thing.
|
||||||
|
|
||||||
|
*Maybe decision is not the right word for what moved you along.*
|
||||||
|
|
||||||
|
Yeah, I mean, I've surrounded myself with the people who move me, and then kept those people close to me as much as I could. I think now I've gotten to a point where I'm one of the people who moves other people, so that feels really nice, you know, for people to gravitate towards me. Some of my dancers were like, "I did this show even though we weren't getting paid because you're a legend." And I'm like, "A legend?!" Okay, that's nice.
|
||||||
|
|
||||||
|
But I think it's just---I don't know. I don't know how I got here. I tell people I've tried to run from dance my whole life and it's obviously my passion, because it just keeps eating me.
|
||||||
|
|
||||||
|
*It seems like actually the work has grown around you. Your turn to choreography grew out of the mismatch of your body to a certain set of expectations, right? And it grew out of relationships and out of need in the context of the pandemic and scenes you found yourself in, rather than something where you're directing it with an intention or plan.*
|
||||||
|
|
||||||
|
And teaching---teaching really turned me into a choreographer.
|
||||||
|
|
||||||
|
*Yes, that's right. That's not what one might expect.*
|
||||||
|
|
||||||
|
Teaching was huge, because all of a sudden it was just like the---what's the word I'm looking for---the accountability of having to show up with new moves and a new song. That's a lot of pressure over twenty years of having to have cutting edge music and cutting edge moves. Whether I have two people in class or 300 people in class, whether I have professional dancers in class or someone who doesn't know left from right, and they walk into mirrors all the time. I've had everything---I've had people burst into tears. I've had people throw up. We've seen it all. Teaching really helped me understand what choreography is.
|
||||||
|
|
||||||
|
*To go back to that question of transmission---and tear apart my framing here if it's not right: How do you communicate those moves that you come to a class with into the bodies of the people who come to experience them and to hold them? Is it through modeling them in your body? Is it through telling them who they're becoming, what they're becoming?*
|
||||||
|
|
||||||
|
No, it's modeling it in my body and working it through my body with them. There's a lot of statistics now that say dance is a cure for depression, because bodies are moving in unison together and doing the same thing. You're not just going to the gym and working out by yourself. You're in a collective room of bodies that are doing something together. You're increasing your beta endorphins. You're finding a physical and cognitive alignment in your body. You're turning your goddamn brain off. That's the trick---you have to turn your brain off.
|
||||||
|
|
||||||
|
It doesn't work if your brain is on. You need to learn my language, however. So you have to keep one part of your lizard brain on, with one eye open, but you have to turn the rest of your brain off, or else you cannot absorb this information. It's the most meditative state you could possibly be in. Again, going back to Heffington teaching when that earthquake was happening---I was the only one in the class who noticed the earthquake, and he got mad at me because he said, "You're not here, Jazz." And he used to say that to me all the time. He'd go "Jazz, why didn't you take class?" I'm like, "Dude, I was just in class." He's like, "No, you were not in class. You were in the mirror. You were fixing your hair. You were not in class." I'm like, "Damn! You can see that?" He's like, "I see everything."
|
||||||
|
|
||||||
|
When I teach, I'm trying to keep it open for people who don't know how to move. I also need to let them experiment. They're trying---first of all, they're in a studio. Let's just start---step one: you're in a dance studio staring at a mirror for an hour and a half. Good God! Maybe you hate your body. Maybe you love your body, but you're staring at a mirror for an hour and a half. It's totally intimidating, especially for dudes, too, because you're walking into this room full of beautiful women in leggings. There's a lot going on.
|
||||||
|
|
||||||
|
So I work them out for forty-five minutes. We do cardio. We do sit-ups, we do push-ups, we do burpees, we do stretching. We blow our lips out, we scream, we do so much stuff in that forty-five minutes of fully strengthening and release. There's a lot of release. And then we work on a combo for one minute to a minute and a half of a song and I start with maybe two or three counts of eight, or the beginning of the track, and we just do it over and over and over again. We start building and building and building until, "Does everybody feel good? Can we move on?"
|
||||||
|
|
||||||
|
Half the class says no. Half the class says yes. We do a little bit more, then a little bit more, then a little bit more, and then all of a sudden, you have this dance. By the time class is over that dance---you're holding onto it by the cliff's edge. You're like, "I don't have it at all. I can't wait to come next week when I can actually turn my brain off for real."
|
||||||
|
|
||||||
|
When I take other people's classes I'm usually struggle city---they do five moves, and I'm like, "Yo yo, do it again." I am so bad at picking up choreography. It is so hard for me, which is weird. Being a teacher, you get into this authoritative state where you're the one telling people what to do. And then when you take other people's classes, you're like, "Oh my God! I have no idea what I'm doing." If my students saw me, they'd be like, "Who is that? She doesn't know how to dance." That's one of the reasons I love dance so much. It's impossible to master. It is always changing. Just as your body is always changing too. It is a cognitive and physical duet.
|
||||||
|
|
||||||
|
Everything is very dependent on what physical and mental state you get to after the warm-up. The warm-up is a really big part of my dance. Some people come for just the warm-up so they can get into that. Some people come for just the choreo. But if they haven't gotten through the warm-up, it's like they haven't been initiated properly and I don't really want them to just do the combo, because they can hurt themselves.
|
||||||
|
|
||||||
|
*That's how they begin to turn their brains off?*
|
||||||
|
|
||||||
|
The warm-up. And it's the same every time. It's super hard and you're sweating buckets, and we blow our lips out. We stretch our mouths out. We do so much in that warm-up that all of a sudden, once you're done with that, most people say my class is in two parts. They're like, "Your class almost feels like two classes, because your warm-up is almost like its own class." And then we move into the combo.
|
||||||
|
|
||||||
|
And I tell people with the combos---this is the other thing about dance that's really interesting, especially when you're learning with a mirror. The mirror can be very problematic. You have to either look through the mirror or practice the "school of fish". I call it a school of fish...if the fish start moving, make sure you know the direction---you don't want to go against the stream, you're going to physically get hurt.
|
||||||
|
|
||||||
|
This is another reason why having professionals and non-dancers in the same classroom is very problematic. There's etiquette and there are a lot of rules within a classroom. When you go across the floor from diagonal to diagonal, you would never reverse and go back. You're going to get hit in the face. You go to the other diagonal and you come around to the other side. Some people don't know that and I forget that people are not classically trained. I have had a lot of collisions. I forget that I have to keep telling people, and a lot of dancers get really frustrated when non-dancers are in the classroom because they don't have spatial awareness.
|
||||||
|
|
||||||
|
Spatial awareness is a huge part of being a dancer---huge. If you hit another dancer in the face---oof! You have not studied. You have not studied space. You have to understand space.
|
||||||
|
|
||||||
|
*What does studying space mean? Does that mean knowing those rules? Or does it mean something else?*
|
||||||
|
|
||||||
|
It means knowing that if I'm gonna do this, I'm going to do that. I'm committing to that. What does that mean for you if you're standing next to me? If you'd like to run into me, I will run into you. I will hit you so hard---not on purpose. But this is my space. That's your space.
|
||||||
|
|
||||||
|
You can do all you want in your space. If you want to do it in my space, I will hit you in the face. We're gonna clash. We're gonna hit. And that's cool, too---like, I'm down, I'm down for us to mix spaces. We can mix spaces, but be prepared in your body. Hold your center, push your belly button to your spine, and know that you're gonna get hit. I'm gonna get hit.
|
||||||
|
|
||||||
|
It's different than martial arts, because we're trained to not hurt each other. It's a team sport that does not hurt. We're trained to lift and help each other. We have to be on that same plane. We're constantly looking out of the sides of our eyes because we have each other's backs. We're in this together. If you screw up, if you fall off the train, you could potentially knock out the whole system.
|
||||||
|
|
||||||
|
It's kind of like being on a spaceship. Everybody is part of that spaceship, and we all have to contribute. If you don't know the rules of space, you're going to mess up the ride. If you trip me as a dancer, and I break my leg, you've ruined my career. You have to know the space, or you have to be prepared to take the consequences of not knowing the space.
|
||||||
|
|
||||||
|
Does that make sense? I don't know if I'm making any sense.
|
||||||
|
|
||||||
|
*It's so beautiful to hear you articulate this stuff.*
|
||||||
|
|
||||||
|
I'm really glad to talk about this, because I have a new brain now. Second child in, you get a new brain every time you get a child. I don't even know what left and right is right now.
|
||||||
|
|
||||||
|
*A lot of what you've talked about seems to be moments of turning away from traditions like ballet. What legacies, what currents do you find yourself drawing on in building your work?*
|
||||||
|
|
||||||
|
I didn't major in dance at UCLA, I majored in history. I was sitting there watching bodies get blown up. I'm watching someone with no legs scoot on their ass. I'm watching violence in the body, because a lot of my students would be like, "Your movements are like a little ballerina that has no head or no arms." My moves can be very violent. I have a lot of aggression too. I need to let it out in dance.
|
||||||
|
|
||||||
|
I think of the visuals that I saw as a historian. I also learned as a historian that there are no answers to things. Historians are very different than political scientists. They're not saying, "This happened because of this." They're saying, "I'm going to read everything, and I'm going to say, look at this and look at this---isn't that an interesting juxtaposition?" This concept was working its way into my choreographic brain---history and broken bodies---without me even knowing.
|
||||||
|
|
||||||
|
One of the professors at UCLA would say that dance originated from agriculture, which was really beautiful because you were thinking about people stomping and planting seeds. We don't really know---like what comes first, the chicken or the egg, dance or music? Where is dance from? What is dance? I like this kind of idea that it came from agriculture.
|
||||||
|
|
||||||
|
But, again, I am a ballerina at heart, even though I've rejected ballet. My feet look like monsters---like, I've had people come up to me and ask if I'm okay, just by looking at my feet. And I'm like, "Yo dude, yes, I'm fine. I've lived with them my whole life. Appreciate it."
|
||||||
|
|
||||||
|
I've also seen a lot of amazing dance. I've seen Batsheva, I've seen Marie Chouinard, I've seen Louise Lecavalier, I've seen La La La Human Steps. I've seen these companies---Netherlands Dance Theater, Crystal Pite---that have blown my mind with choreographically. You know, Pina Bausch---I have to look at it like, "Try not to take everything that they're doing! I want it all!" I allow myself to take a little bit. And when I'm really stuck, I watch videos of these dancers and these choreographers---Paul Lightfoot, is another---people who have blown me away.
|
||||||
|
|
||||||
|
Let's say you're going to make pasta, right? You're putting it through this pasta machine, putting the wrong ingredient through the pasta maker. I'm going to put meat or put apples through the pasta maker, and then see how it comes out in my body. I'm looking at them on a flat screen, which is the worst way to learn choreography. Then I close my eyes. I put on a different track and I see what happens. Have I taken some of their movements? Of course. Has it come into my subconscious? Of course. Am I choreographing from my dreams? Yes. It's all mixed in there. Have I ripped from people I love? Absolutely. Oh, Anna Teresa De Keersmaeker! Amazing choreographer. So it blends in. It's kinda hard to pinpoint my choreography to one thing.
|
||||||
|
|
||||||
|
I don't know how to answer these questions.
|
||||||
|
|
||||||
|
*You're doing it.*
|
||||||
|
|
||||||
|
I'm realizing dance is so abstract, it is just---it's so bizarre. I always did tell people I dance so I don't have to speak. There's so much I can't articulate with words. I can write them down, but verbally saying them is super hard.
|
||||||
|
|
||||||
|
With my body I can scream and whisper, sometimes at the same time.
|
||||||
|
|
||||||
|
*What do you think that other aspects of life can learn from dance? Are there lessons to draw from the way in which patterns carry through bodies?*
|
||||||
|
|
||||||
|
I don't know. Keep going.
|
||||||
|
|
||||||
|
*Are there lessons from dance for other kinds of worlds---people who are creating traffic patterns, people who are trying to figure out how to go to other planets, people who are trying to survive in the streets? What are the lessons from dance that carry to other parts of life?*
|
||||||
|
|
||||||
|
Well, first of all, you have this body just once, and you gotta have fun with it. We all hate our bodies to a particular degree. You're in this sack---what is this thing? What does it do? It gains weight, it loses weight. It looks pretty, it looks ugly, you know---it's all these things. You have to have fun with your sack because you get that sack only once. Please have fun with your sack---step one. It gets so heady, especially the body dysmorphia among dancers. The amount of stuff we do to ourselves is horrible.
|
||||||
|
|
||||||
|
In terms of what people could learn, I think it would be the spatial awareness. It has to also do with carrying yourself in a way that makes sense to you, carrying yourself in a way that you want to present. For example, if I'm gonna walk down the street, I'm holding my heart open. My back is down. I'm breathing out of my back. My rib cage is closed, my center is engaged, and I'm walking. Do you think I've ever been beat up in my life on the street? Have I ever been mugged? Hell no! People don't touch me because I'm holding my body in a way that says I understand this body. I own this body and I command this body. Would you want to hurt me? Try to---let's go.
|
||||||
|
|
||||||
|
It's a matter of building a body that you're having fun with and that carries the person that you want to be. We have to walk into the world like that, or else we're screwed. Especially as women these days---there's a lot of imagery out there. There's a lot going on with social media---we could go down that rabbit hole, which would be a whole other conversation.
|
||||||
|
|
||||||
|
But if you want to wear a mini skirt and you want to wear tassels on your tits, you better own your body. Same with men. If you want to wear a miniskirt and tassels on your tits, you need to own your body. Or non-binary folks or trans. Dance is about understanding your body and understanding where you have your limitations and also where you have your strengths. It is going to make us more powerful as humans walking down the street.
|
||||||
|
|
||||||
|
Maybe what I was talking about with spatial awareness: You know your space. I know my space, you know your power, I know my power. If you know your power, I can know my power even better. We can power it up. But if you don't know your power and I have power, this is a problem. Let's move smoothly through this world together, eh?
|
||||||
|
|
||||||
|
I think it's about having a conversation. I talk about dance as having a conversation between your body and energy. Where does my body end? Does it end at my fingertips now? No, because the energy is shooting past and going out from there. If you see a dancer who stops their energy short, it's not good. It's not right.
|
||||||
|
|
||||||
|
Taking the outline of the body and extending it, and then having a conversation---that is when you have a beautiful dance. When you bring other bodies into the mix, when you have multiple bodies, that's when things get super beautiful because you have lots of conversations. But it's also---this is something I learned with WIFE---it's also about the silence. We would stand on those boxes very, very still for a long time, for an almost awkward amount of time. There was music, but we were so silent with our bodies that you didn't know what was going to happen.
|
||||||
|
|
||||||
|
All of a sudden, the first move was powerful because there had been so much space in silence. It allowed that movement to scream.
|
252
content/interviews/berjon-web_standards.md
Normal file
252
content/interviews/berjon-web_standards.md
Normal file
@@ -0,0 +1,252 @@
|
|||||||
|
---
|
||||||
|
narrator: Robin Berjon
|
||||||
|
subject: Web standards
|
||||||
|
facilitator: Nathan Schneider
|
||||||
|
date: 2025-08-01
|
||||||
|
approved: 2025-08-04
|
||||||
|
summary: "The standards that govern the World Wide Web develop at the intersection of profit-seeking companies, nonprofit organizations, and small groups of people with rarefied expertise."
|
||||||
|
location: "Brussels, Belgium"
|
||||||
|
headshot: "robin_berjon.jpg"
|
||||||
|
topics: [decentralization, open source, organizations, software, standards]
|
||||||
|
links:
|
||||||
|
- text: "Personal website"
|
||||||
|
url: "https://berjon.com"
|
||||||
|
- text: "Social media"
|
||||||
|
url: "https://robin.berjon.com"
|
||||||
|
---
|
||||||
|
|
||||||
|
*How do you prefer to introduce yourself?*
|
||||||
|
|
||||||
|
I'm Robin Berjon, and I generally describe myself as a technologist working on issues of governance. It's sort of fuzzy and blurry, but that's basically what I'm doing.
|
||||||
|
|
||||||
|
*How did that journey begin for you, and when?*
|
||||||
|
|
||||||
|
It began more or less in the mid-1990s when I was a first-year philosophy student. I got a computer to do philosophy essay writing and homework on. Instead of doing philosophy, I started doing a lot of web things. I'd seen computers before, but they never had people in them. That was immediately fascinating to me.
|
||||||
|
|
||||||
|
I built a website that came second in a website competition. I got hooked on that and started making my own tiny web company. Not a family-money kind of thing, but just a tiny thing with my roommate. We basically had a computer between the two of us and started making websites for people. I would do nights, he would do days, because we only had the one computer.
|
||||||
|
|
||||||
|
That collapsed within a few months because we had no idea what we were doing. But I got the bug for it and started another company in Belgium that worked significantly better. I started working more consistently in tech from then on. I started asking questions: "Hey, this HTML thing is nice, but I would like it to work differently. Who do you have to ask? How does this thing work? Where does it even come from?"
|
||||||
|
|
||||||
|
There was this weird organization called the W3C, or World Wide Web Consortium, where apparently people discussed these things and started agreeing on how they would work. It was complicated to observe from the outside. Back then, as someone who wasn't a paid member, you couldn't get in. You could only send feedback from the outside and maybe receive an answer within a week or two.
|
||||||
|
|
||||||
|
I started getting interested in how you change the styling of things and eventually started scratching at that. In 2001, I was invited to participate in SVG---Scalable Vector Graphics, a file format. In 2002, I got a proper job where I was doing standards. Then I did a lot of standards for the following decades.
|
||||||
|
|
||||||
|
*Can you say a bit about what drew you into the SVG process? What were you engaged in there?*
|
||||||
|
|
||||||
|
What I liked with SVG is that it was a very powerful graphics environment. With JavaScript and all that, you could start to represent anything, from documents to games. You could use it as a rendering layer on the web.
|
||||||
|
|
||||||
|
I started building SVG things as part of my job. We were still making websites for other people. I started adding SVG to projects when possible, which was way too cutting edge back then because you couldn't use it. Not enough people had the SVG capabilities on their computer. I had to constantly find customers who would be interested, so I ended up working, for instance, with the French---I don't know what it's called---the people who manage the road network at the level of France. They had these very complicated mapping requirements. They had this antique database with all kinds of weird conventions, and they wanted to bring that into a more modern world. They exported to XML and then wanted to turn that into something else. I started doing all these things around SVG.
|
||||||
|
|
||||||
|
Eventually, since it was a relatively small community, the working group noticed and brought me in as an invited expert without having to pay for membership.
|
||||||
|
|
||||||
|
*What is the business model for working on standards? Why is it valuable for a company---and in particular, the cases that you were starting out with---to pay someone to work on abstract rules for the whole ecosystem?*
|
||||||
|
|
||||||
|
That's a perennial question, and I don't think anyone has a definitive answer, or at least not an answer that works in all contexts. For that specific company, it was a small startup in Paris. When you're small and you have a very specialized area of knowledge, you need to create markets for things. You need to create some stability to improve your credibility.
|
||||||
|
|
||||||
|
What they had was a binary XML format primarily focused on optimization of transport at a very infrastructural level. The kind of customer that could adopt that thing would be a large telco or TV broadcaster---those kinds of big companies. But you're not going to get a large telco to adopt something deep in its infrastructural stack that's made by a company of twelve people in France with no proven business model.
|
||||||
|
|
||||||
|
In order to solve that issue, the company was very interested in developing standards that included or referenced or made use somehow of their technology so that they would have something credible to offer these large companies. Of course, there's a flipside to that---they had to open up the technology and share it with others.
|
||||||
|
|
||||||
|
It was a trade-off. If we keep everything completely proprietary, well, it's ours---and they had patents and everything that was still done a lot at the time---but then they could have no customers, so not wonderful. Or they could agree to open it up at least some and share it with others, and then get customers. That was essentially the play they made.
|
||||||
|
|
||||||
|
They were also interested in figuring out avenues in which their technology could be used. Even though they were not directly working on SVG themselves, they were very interested in the potential bridging between their technology and SVG. So they allowed me to continue working on the SVG working group. When I was with that company, I made quite a few projects that used subsets of SVG in embedded devices with tiny screens and limited processing capabilities.
|
||||||
|
|
||||||
|
*How did your involvement in W3C develop? This was a long-term process. How did it stick for you?*
|
||||||
|
|
||||||
|
What really made it stick for me was that back then it was a fun community. I felt at the time that there were a lot of shared values. People were there from all over---a lot of people who didn't have any formal training in computer science or anything. It was very different from trying to talk to people who were old school professional programmers or people who went to engineering schools. Those tended to look down on web people at the time.
|
||||||
|
|
||||||
|
In W3C, you made friends with someone, and they'd be, for instance, a history major---it was a very cobbled together, motley-crew community at the time. People were talking about building the web, and how amazing it was going to be, and all the cool things that we could do.
|
||||||
|
|
||||||
|
There's also the thing that---there was this sort of whiplash thing where I was super young and I didn't come from anywhere particularly interesting. Just because I was specialized on this super specific thing, all of a sudden people were flying me to Australia and Japan to talk about my work. This tiny bit of expertise that I randomly developed immediately became weirdly relevant in ways that I absolutely hadn't anticipated. As a twenty-year-old, it's exciting---"Wait, I get to fly to Japan?"
|
||||||
|
|
||||||
|
*Just to paint a picture of what is happening here: Are these conversations taking place largely in in-person meetings? Are they taking place largely on email lists or things like that? Where is this discussion occurring? Where are these dynamics unfolding?*
|
||||||
|
|
||||||
|
It changed over time. If we're talking about the early 2000s, most of the conversations were on mailing lists and in chat on IRC. You would get to know what people looked like only when you finally met them, but otherwise you had no idea what they looked like. A lot of the time the groups would have a weekly or every other week, or maybe monthly---it depends---phone call. That's very different in terms of focus and difficulty compared to video calls, where you can see the person speaking. These were a grind. They were really difficult, especially if you're working internationally. Everyone has accents all over the place.
|
||||||
|
|
||||||
|
The tooling was interesting in those days because W3C had better tooling than other contexts. For instance, they had their own phone bridge---a physical phone---and that was driven by a laptop that had Windows 3.1, I think, on it. The one guy at W3C who was a really good hacker had bridged it to IRC. So you could be in IRC. A lot of the time you didn't know who was speaking unless you recognized everyone's voice. It was tricky. You could ask the bot, "Who's speaking?" You could get the bot to mute or unmute people. There was a whole lot of tooling that worked that way.
|
||||||
|
|
||||||
|
I think my first in-person meeting at W3C was the first meeting of that group when they decided they had sufficiently good Internet at the meeting place that they didn't need to bring a server with the email archives. Normally, for the meetings, someone would come with an actual computer that would be the email archives where the group discussions had taken place, because you need to refer to them. That's where the issues are and things like that. They would basically plug it into a local LAN, and everyone in the room could read the email archives on location.
|
||||||
|
|
||||||
|
It's not like that anymore. Nowadays it's all GitHub issues and stuff like that.
|
||||||
|
|
||||||
|
*How did the relationship progress between standards development and your day jobs?*
|
||||||
|
|
||||||
|
I worked at that company for several years, and within that time I started chairing a working group, then a second working group, then being editor of several things. I was on the Advisory Committee of W3C. I basically said yes to every opportunity, which was not necessarily very intelligent in terms of time management, but it was so attractive, and so interesting, that I couldn't say no.
|
||||||
|
|
||||||
|
Then, because I became a specialist, I was more hireable in that space. So there was this loop. The first job I got after that was with a company that wanted to build a video system where everything was standards-based. The entire environment was---the entire application was built around Mozilla Gecko. It was a fork of XULRunner, for those who remember. The entire user interface was HTML and CSS and SVG, and the data backend was RDF. The whole thing was super standards-centric. Again, building a completely different set of products with a completely different focus, but it still involved the same building blocks.
|
||||||
|
|
||||||
|
After that company, I started my own consultancy, working for other companies as a standards specialist. I was usually referred to as tech strategist or something because the idea was really that you would come in and take in the business strategy that existed, and figure out how that mapped onto standards participation or more generally tech development. The web was still very confusing to many companies. Precisely for the kind of question that you asked initially---how does it make sense? What is the approach? How does it work?
|
||||||
|
|
||||||
|
I did that for several years, and in part I worked for a lot of tiny startups that had often a very specific goal: "We're building this. We're trying to understand the role of standards." In those cases, twenty percent of one person is a huge investment for them. So they were figuring out, "Is it worth it if we do this? What's the most effective way of doing it?"
|
||||||
|
|
||||||
|
At the other end of the spectrum, I also had massive multinational companies---Vodafone or Samsung, Canon---these really big companies. A lot of the time, they had very much the same questions.
|
||||||
|
|
||||||
|
One of the things that I always remember, and that explains a lot about the power structures in standards---I remember being contracted by Samsung HQ, which is rare. They didn't bring in people from abroad to the Korean HQ very often. They brought me in, and there were all these people with very important-sounding titles, half of them from tech units and half of them from strategy.
|
||||||
|
|
||||||
|
Essentially they opened by saying, "We have a problem we would like you to solve, which is that we don't think that Samsung can have any influence in web standards." This is from a company---you have to imagine, I was sitting in a part of the world that's called Samsung City, because it's a city where they have their own police force, their own supermarket. All the buildings are built by Samsung construction, they're insured by Samsung insurance. The whole thing---this is a massive William Gibson kind of futuristic massive corporation world, and then they go, "We don't think we can have influence on web standards. Can you help us, Mr. One-Person Company from nowhere?"
|
||||||
|
|
||||||
|
It was true, because even though they had, I think at the time, something like an 8 percent market share with Samsung Internet Browser, they had no idea how to use that as political leverage or influence in the standards process---how to put people in the right positions, how to bring in a developer perspective. It was very much a hardware company, and hardware companies do not understand a sort of very agile, fluffy, and imprecise software world. It was baffling.
|
||||||
|
|
||||||
|
The kind of process that you have at Canon, for instance---they would design chips two years in advance, and have a full specification with tests, and everything. The idea that you could just rock up there and code up a feature on the thing and just ship it---and then, oops, it's buggy, sorry we'll just fix it---was something that was outside of that sphere. Those interactions were super interesting in seeing how worlds collided there.
|
||||||
|
|
||||||
|
*In these kinds of interactions, did you ever feel a sense of divided loyalty between the interests of the company that you might be working for or consulting with, and the organization---the standards themselves, the broader ecosystem?*
|
||||||
|
|
||||||
|
That's interesting because I think I pretty much always managed to dodge the issue. It's an hourglass communication system. You're this tiny, very small thing, with an organization on one side and an organization on the other, and you're the entire point of contact between the two. You can sort of represent---without lying---the information from one side to the other and back.
|
||||||
|
|
||||||
|
One thing that is pretty clear is you could be Samsung, and you still have no decision power over what W3C will agree to. You have influence if you play your cards right, but the whole thing---if you want to have influence, you can't be a total asshole. When something would come up that might trigger divided loyalties, I would say, "Yeah, that's very interesting. But I'm not sure I could get it adopted by the community, because that is the kind of thing that they disagree with"---without saying, "I disagree!" and without going into a group being a mercenary. You could make that representation, which wasn't lying in the sense that it was true. It's very hard---at least, it was particularly hard at a time when this process was not captured by a few big companies---to make a change without getting significant political support from multiple people, and that generally meant having to align with the values in one sense or another.
|
||||||
|
|
||||||
|
*Did everyone else operate that way?*
|
||||||
|
|
||||||
|
No, but it's certainly true that---and this is something I explained to my customers as a freelancer---you can't be a mercenary and be credible. What the group is interested in is not the fact that you're representing Company A, B, or C. The group is interested in your expertise as the person who's in the room. If for the first six months you work for Samsung and you're saying, "Yeah, we really need this feature," and then two weeks later, you move to Canon, and you're saying, "Oh, no screw that feature. It's a really bad idea"---your credibility is shot. So the group won't be interested in what you have to say anymore---or very occasionally, when they wonder what the companies think. But in terms of expertise, it wouldn't work. That is something I would always explain to clients initially. People understand it well. It's your expertise that is valued, and that is how you bring influence. But you can't just snap your fingers and make things happen.
|
||||||
|
|
||||||
|
There is one company that did try. I didn't even start working for them, but they tried to basically get me to abandon my previous customers because they wanted an exclusive deal. They promised a lot of money and were saying, "We want you to work for us full time starting next week. We don't want to wait for the three or four months"---or however much was left on my previous contract. "We'll give you money to match or more than you would make from them to compensate, you just have to ditch them this weekend."
|
||||||
|
|
||||||
|
I said no, in part because that's not how I work, and in part also because I don't want to work for people who operate that way. But also, you're talking about a tiny pool of potential customers. Even from a purely self-interested perspective, that's the kind of thing that would have shot my credibility right away.
|
||||||
|
|
||||||
|
*You mentioned the sense that something has changed from this period. What years are we talking about when the standards processes you were involved in were more distributed---felt more like something that required widespread buy-in---and then walk us into the story of capture that you alluded to.*
|
||||||
|
|
||||||
|
The years I'm talking about are---when did I stop consulting? I stopped consulting in 2015. It goes more or less up to then-ish. It's not like there was a sea-change moment where one day everything was fine, and the next day everything was captured. It happened gradually. I think a lot of us were frogs boiled in that water quite progressively before people started noticing. There's still people who are starting to notice today. So there's a spectrum. But in those initial years, from say 2000 to 2015, things were more balanced.
|
||||||
|
|
||||||
|
Eventually, it comes down to what the enforcement mechanisms are. We're talking about what's called voluntary standards. In theory, it's standards that you would only adopt if you want to adopt them, and otherwise you can ignore them. Of course, that's never really---it's rarely really the case. But the enforcement mechanism for standards-making and standards adoption was the market. You could rely on market discipline. If most of the players have agreed on the standard and you haven't, you're just going to lose out on the market. For that to work, it's a very convenient enforcement mechanism, because you don't, as an institution, have to do any of the enforcement work. That's what always makes the market so attractive---it's just, yeah, like magic.
|
||||||
|
|
||||||
|
But, of course, that assumes that there's competition. The moment competition disappears, the moment the market ceases to have any kind of disciplining power, then you lose that factor. Voluntary standards start to lose the ability to operate as shared standards.
|
||||||
|
|
||||||
|
In terms of capture, it wasn't immediate, but the gradual focus on only doing the browser engine part---so really just the rectangle inside the browser chrome, and nothing else---was very much driven by that increasing power by certain players. They didn't want us to standardize search protocols, or e-commerce protocols, or advertising, or anything in the higher layer that they could see as capturable.
|
||||||
|
|
||||||
|
There was a push to focus just on this, and it was always presented in terms of, "That's the specificity of the organization. That's what we're good at. That's where we can drive interoperability. Let's leave the rest to *innovation*"---which I think is always a red flag. It gradually got to this place where now it's pretty much only those standards. The only companies that have a say are the ones who have implementation power. That's mostly Google, Apple, and a tiny weeny bit of Mozilla.
|
||||||
|
|
||||||
|
*Around 2015, you switched out of consulting. Was that because of the changes that were taking place? What brought about that shift for you? And where did it lead you?*
|
||||||
|
|
||||||
|
No, it wasn't because of those changes. It was still early enough in the transformation that I either hadn't noticed, or it wasn't bothering me yet. But starting from 2012, mid-2012-ish, my primary customer became W3C itself. I was still formally a consultant, but during mid-2012 to 2015 I was paid in part by MIT, and in part by Keio University in Tokyo, to work as part of the W3C team editing the HTML5 standard. We had this situation in which W3C had gone down a bad direction with HTML, trying to make it all about XML. That was very unpopular with developers and browser vendors. So the browser vendors sort of forked and went to build their own HTML in the WHATWG. Then there was an attempt to bring everyone back around the same table, because that was silly. I was hired to be the W3C part of that sort of rejoining-the-people.
|
||||||
|
|
||||||
|
Part of it was editing the actual spec, bringing it to completion. I think we were given a mandate to close it in two years, and it took twenty-six months, which was good, because no one believed the two years was possible. That was very aggressive. I think we had 400 issues when we started.
|
||||||
|
|
||||||
|
Part of it was to be a diplomat and rejoin those two communities from the bottom up. We knew there were people who wouldn't ever get along, ever, but it felt that it was possible to drive alignment, and that actually did work. But to answer your initial question: in 2015, I was really done with that. It was a grueling process, and I was ready to work on something that was not standards at all. So I went to work for a startup, as CTO doing some product work.
|
||||||
|
|
||||||
|
*As you reflect on processes that affect things we experience on the web all the time, do you see traces of those processes---and of your handiwork---in your experience of the web today? How does somebody who has been there in the room and on those lists throughout that period experience the web differently from somebody who wasn't?*
|
||||||
|
|
||||||
|
There's several things. There are times I see features and I'm thinking, "Oh, yeah, I remember when we were talking about that." It's something silly, and it's not important---doesn't necessarily affect my experience of the web. But you see it in there. It often comes when, say, maybe there's a bug in a video UI thing inside the browser, and I'm thinking, "Oh, that's clearly because they didn't set the whatever-attribute correctly." I remember we talked about how that would might go wrong, the trade-offs, et cetera. So you have an extra level of understanding of what's going on. That jumps out at weird times.
|
||||||
|
|
||||||
|
There is another thing where I think, more than a decade later, a sense of "Hey, we got that right." One of the hard projects that got off the ground as part of this HTML thing---the project I really relied on to bridge communities---is Web Platform Tests.
|
||||||
|
|
||||||
|
Everyone hates writing tests. It's a drag. You have to go through the spec with a fine-tooth comb and find all the corner cases of any given statement, write code that matches every single thing, and then run it, and then look at what happens---the whole thing is terrible. But also when it's there, and it works, you have actual interoperability.
|
||||||
|
|
||||||
|
Before the HTML thing I was doing, every specification had a separate test suite. They used different frameworks. A lot of them did it as a checkbox exercise---so the entire SVG test suite, I think, was 180 tests, or something like that, which is ridiculous. It's tiny. Groups would do it once to get approval to move forward with the standard, and then they would never touch it again, and no one would use it. So you got all these interoperability problems from lack of testing.
|
||||||
|
|
||||||
|
We decided to get serious about it. I basically went and took everyone's test suite. I didn't ask permission. I took everyone's test suite, dumped them in this massive repo and started running really horrendous Perl code to replace the ad hoc frameworks everyone had, and put them all in the same kind of test framework---which some other guy had written, and it was very usable and very good. That's how we started having a unified test suite for the entire web platform.
|
||||||
|
|
||||||
|
Today, I think it has two million tests or something like that. It's still really big. It's operated in production by every single large browser vendor. So any change you make to any browser will go through the test suite, and if it adds a failure, or whatever, it will notify them.
|
||||||
|
|
||||||
|
I still get little sparks of excitement from that thing whenever I write a relatively complex web thing. I'm on Firefox. When I develop, I only look at Firefox, and then at the end, I usually look at other browsers. That's when you're thinking, "Oh, yeah, I've forgotten that Chrome doesn't support this or whatever." But sometimes you do it, and it just works the same everywhere.
|
||||||
|
|
||||||
|
It's hard to convey just how incredibly hard it is to get a reproducible execution of something as complex as HTML plus CSS plus JavaScript, plus all those APIs---this is an insanely complex platform. The fact that you can write something complicated, and it works the same in completely independently implemented browsers, still sort of gives me a bit of goosebumps. Just by doing that, we saved---there are about twenty million web developers worldwide I think. We saved all of these people so many hours each, and they've been able to build better things for it. You still see the value in that.
|
||||||
|
|
||||||
|
*Amazing. But after that process you moved on to a startup and then also, later, the New York Times. Tell us a little bit about those experiences.*
|
||||||
|
|
||||||
|
The startup was very startup-y---five or six of us in a room that was probably ten feet by twelve or something like that. It was called science.ai, and the goal of the startup was to fix scholarly publishing---which, as you are well aware, we didn't succeed in doing. But the tech stack was very interesting. I still think that with more money and better strategic decisions, it could have succeeded, but it didn't.
|
||||||
|
|
||||||
|
One thing that was interesting is I was running away from standards, and I managed to do only product work for about a year at that startup. Then it became very clear that we would need to do standards work for what we wanted to achieve. Because if you're building replacement document formats for scholarly publishing, and you're talking to a Wiley or Elsevier, et cetera---once again, you're not going to say, "Hey, please use this crazy little thing that these five people did." You have to document it and start standardizing it.
|
||||||
|
|
||||||
|
I tried to avoid doing too much of it, so there was a strategy of doing enough to make them happy, but not a full standards project. But we used a lot of Schema.org to make sure that we were grounded in an ontology that was maintained elsewhere. Then we had this project that brought together what I called HTML vernaculars. The idea was that you could do specialized versions of HTML that would map to a specific domain. You would constrain the HTML in specific ways and also enhance it in specific ways. We constrained it to just be the kind of content that you would have in the scholarly article, which is already quite broad, and then enhance it with all these semantic annotations from Schema.org so that you could say that this figure is this type of figure, and it was authored by this person, who is different from the authors of the paper. We wrote a spec called Scholarly HTML around that. But I was still trying to stay away from standards.
|
||||||
|
|
||||||
|
Then at the Times again I managed to go, I think, two or three years without doing standards work. But at some point we needed it for strategic reasons. Google was trying to change how advertising was working and doing this whole "Privacy Sandbox" stuff. The Times needed to be in that room and be in those conversations, and since I was the person doing privacy and strategy around data and tech, that fell to me.
|
||||||
|
|
||||||
|
The Times was really trying to push for this world in which you had only one data controller. When someone interacts with you as a first-party website, only you as the website control the data, even if you work with other people---you're still the driver.
|
||||||
|
|
||||||
|
That's why we worked on GPC, the Global Privacy Control. With the law that was emerging in California, I wrote the spec specifically for the technical signal in browsers to match the law. Because this needed to move forward and they needed someone who understood standards for that. So yeah, it tends to catch up to me. Right now, I'm in a phase where I'm really trying not to do standards. But I'm not sure how successful I'll be.
|
||||||
|
|
||||||
|
*That was a case of standards as regulatory compliance. Is that something that had been a big part of your story before? Or was that something new at that point because new regulations were coming online?*
|
||||||
|
|
||||||
|
It was pretty new at that point. It's not the first such thing, but it's definitely the first that I was involved, and it's still not a big thing. I think it should be a much bigger thing. I think there's huge promise in using standards processes to complement the work of regulators. But this was---and just to give you a sense for how hard it is to bring lawmakers and technologists in the same room to align on a standard---this is a one-bit standard. This is a standard for the transmission of a single bit over HTTP, which is a well-known protocol. Several years in, it is adopted but not yet ratified. So there's the whole human component of getting all these interests---the business interests and regulation---to align so that you get a standard. It is pretty challenging.
|
||||||
|
|
||||||
|
*To pick up on the earlier story of capture, you mentioned that different people in the community discovered that there were frogs in boiling water at different times. Can you describe a moment or a process when you started to change your perspective on what was going on?*
|
||||||
|
|
||||||
|
For me, it really was working at the New York Times that helped me realize we had a problem. Before that, if you'd asked me, I would have said, "Yeah, those Google people---I mean, clearly, they're not very good at privacy, that's not a thing they do well. But I've met a lot of them, and they mean well. They're really trying to do something, and it's complicated. I'll be the first to point out their failures and all that. But overall, it's looking pretty well."
|
||||||
|
|
||||||
|
Then I got to see how those tech monopolies treat the media, including pretty powerful media companies. You'd think that the New York Times would have a say. But really what they get is fake deference. It's like the tech companies will send twenty people to the meeting to tell you you're important, but then they won't change anything. The constant arrogance of those tech monopolies---where they assume that if you work for a media organization, you don't understand technology. The people would explain very silly things. I saw that any change I was trying to make to push technologists or people in the standards world towards solutions that would work better for the media would stop moving. You could push a little bit, and then you'd feel a massive resistance.
|
||||||
|
|
||||||
|
For instance, one of the things I was interested in at the Times was not doing AMP, because AMP takes your content away and publishes it on google.com instead. You no longer get data, and it's basically Google---
|
||||||
|
|
||||||
|
*What does AMP stand for?*
|
||||||
|
|
||||||
|
Accelerated Mobile Pages. So it's the whole idea that, because of performance and because the open web has to beat the mobile native apps, you have to give all your content to Google, who will publish it for you.
|
||||||
|
|
||||||
|
*Facebook was doing that, too, right?*
|
||||||
|
|
||||||
|
Yeah, so AMP was the most aggressive one by far. But yeah, Facebook had something called Facebook Instant Articles that was horrendously, badly designed. Clearly it was one person's job to figure out the format, and they had never built a format in their lives before. But Facebook didn't care. Facebook doesn't care about tech quality. They just care about shipping.
|
||||||
|
|
||||||
|
Apple also has the thing that they use for Apple News, which is also not really great. None of them thought to reuse an existing thing---maybe RSS. Google was very aggressive in pushing it, though, because if you didn't do AMP, you couldn't be in the AMP carousel, which means you couldn't be at the top of the search results.
|
||||||
|
|
||||||
|
They kept saying, "Oh, it doesn't help for your ranking, because it doesn't change the ranking. It just puts you more at the top." Yeah, okay, so it's not ranking except it's the only way to be in the top position. Gotcha. I could see how everything would get locked down if you tried to push back.
|
||||||
|
|
||||||
|
That was one of the ways I almost went back into standards when I was at the Times. I started talking about, "Hey, how about we standardize ways of doing content aggregation such that publishers have a say about how it works, and we can make it work in a way that doesn't push everything to Google?" Everything ground to a halt. You could see that all the avenues of discussion would freeze up. I was thinking, "Okay, yeah, I know who's doing that."
|
||||||
|
|
||||||
|
*After the Times, you shifted to a different kind of organization. You were starting to work with organizations that---for instance, Protocol Labs, or the IPFS Foundation---were not just businesses using standards. They're organizations that are trying to build protocols rather than the platform model that big tech companies were involved in. Could you talk a bit about that transition?*
|
||||||
|
|
||||||
|
I went there because that's what I was looking for. After five years at the Times, I felt that it was not possible to move the web, either from inside standards organizations, or from significant businesses that were not themselves big tech.
|
||||||
|
|
||||||
|
I didn't want to go to big tech with the hope of changing things from the inside, because I've seen too many people do that over the years, and nothing ever changes. Then you have all these people who are smart somewhere on the inside, but who keep justifying things that are less and less justifiable. They are basically frogs boiling themselves. So I didn't want to be one of those people.
|
||||||
|
|
||||||
|
It wasn't easy to find a place where my skill sets would work---but at the same time not be a complete blockchain thing, and still be adjacent to this dWeb and web3 world. I really didn't want to do a five-person startup again. I didn't feel I had the energy after all that. So I landed at Protocol Labs.
|
||||||
|
|
||||||
|
It was a very chaotic company, I have to say. But there was a very significant community of people who also wanted to do what I wanted to do. Even though I wouldn't say that anything that we built at that time has had massive commercial success yet, the sort of excitement and research and experimentation that happened there is starting to bring dividends today in terms of better protocols that are built on good ideas.
|
||||||
|
|
||||||
|
That's a lot of what I've been focusing on at the IPFS Foundation. To give you a bit of context, IPFS was invented, I think, in 2013, 2014---ten-ish years ago. It was this way of doing content addressing. But over the years, many cooks were involved, and also it sort of worked on the principle that it needed a lot of optionality to work in different contexts. While that made it very flexible, it also made it almost very challenging to implement well, and it made it very hard to build anything on top of that you could expect interoperability from.
|
||||||
|
|
||||||
|
What I've been working on---at the tail end of this crazy few years of experimentation---is, okay, how can we make these ideas more usable? A project called DASL ("dazzle") is in the process of taking this and eliminating all the options, eliminating everything that's not reliable and just picking one. Even if it's controversial, it doesn't matter. Sometimes there's no good choice. You just pick one making these tiny specs that can easily be reusable by other protocols. The AT Protocol that underlies Bluesky uses DASL under the hood for data, for CIDs---for content identifiers and for packaging.
|
||||||
|
|
||||||
|
I think that there is something to the basic idea of data that can be self-certifying. You can have linked sets of content addressed data. I think it changes the kind of governance that you can build on top of the system compared to something that uses a more traditional domain name authority.
|
||||||
|
|
||||||
|
*Can you explain what the goal of IPFS is? Protocol Labs is trying to build an economic layer on top of that, I know. It's an addressing scheme, but to what end?*
|
||||||
|
|
||||||
|
There's so many different ways of describing it and all of them are partial truths.
|
||||||
|
|
||||||
|
The first thing I always explain is that IPFS stands for InterPlanetary File System, and it is neither interplanetary nor a file system. On the first part, the interplanetary part, there is a satellite in Low Earth Orbit that is conducting IPFS-related experiments. So that's as far as the interplanetarity goes. In terms of the file system, well, a file system---when you tell people you have a file system, they expect you to give them something like the Finder or whatever, a directory browser. You put a file there, and it's going to be there. If you come from another machine to the same file system because it's interplanetary, you're going to find that file, which you generally won't in IPFS.
|
||||||
|
|
||||||
|
IPFS is essentially a suite of protocols to retrieve data in a content-addressed manner. So content-addressed means that the address of a piece of data is derived from its hash. So it's derived from its content. The retrieval method for that can be---it's very open-ended in IPFS. There is this thing called the IPFS Principles that actually celebrates the fact that it's open-ended. I mean, it's great that it's open-ended. But that doesn't always help people building apps.
|
||||||
|
|
||||||
|
The core---the most typical way of retrieving IPFS content---is that there's this global distributed hash table, a DHT. Anyone who wants to expose data on the IPFS protocol through that network basically says, "Hey, I have this content, and here are the hashes for that content." When you connect to the distributed hash table, if you have the hash for something you want, you can use that distributed hash table in a peer-to-peer fashion, using libp2p or something to find who is actually providing that data. It could be multiple people on the network---and then you fetch it from them.
|
||||||
|
|
||||||
|
*What will ordinary users be able to do with this that they can't do now?*
|
||||||
|
|
||||||
|
I think it's not so much about what users can do directly, in terms of user interface. In my mind, forgetting the specificities of IPFS, but really thinking in terms of content addressing and self-certifying data, it really is about the kinds of governance systems that you can build on top of this.
|
||||||
|
|
||||||
|
One way of thinking about that---I always tend to think of protocols in terms of Elinor Ostrom, ADICO, and institutional analysis, and all that. If you think of how data works in Web 2.0, for instance, where the authority for any information you have is grounded in the Domain Name System, you know it's a true thing, or it's authoritative in the sense that you got it from the horse's mouth.
|
||||||
|
|
||||||
|
For instance, if we're on Twitter---the only way I can know that I'm reading a tweet from you on Twitter is by trusting that Twitter really received that from you, verified that it's from you, and then is giving me something untransformed. But technically, they could go in---you tweeted "I love cats," and they could go in and just replace "cats" with "dogs" and show that to me. You could tell me that it's not true, but authoritatively, Twitter is telling me that. That is architecturally part of the HTTP protocol. It's part of how we've built the web. Any institutional arrangement you build on top of that has to build in that trust of a specific party. It becomes this control point of power for all kinds of interactions you might want to build. That creates bottlenecks, and it increases the institutional complexity of what you're building.
|
||||||
|
|
||||||
|
If you switch from that to a system that's content-addressed---where you know you're getting the right thing because you can always verify that you got the right thing---you know the data is correct intrinsically, without needing to ask anyone else. There's no other authority involved.
|
||||||
|
|
||||||
|
On top of that, you can---because it's all hashed and deterministic and all self-certifying---you can also add a signature layer. If I know that you have a specific key, you can sign that content and say, "It's from me." I can then have a thing that's a hash that has the content and the signature embedded in it. I know all of these things come together. It's a real statement from you. It has its own authority. Then, because you have the content identifiers that are basically links between various things, you can have a graph.
|
||||||
|
|
||||||
|
I have this thing that is content-addressed, so I know the content is correct. It's signed, and it's also referencing all these other things. I know that these references are correct, and therefore I can follow this thing and know what I'm getting without any third-party authority.
|
||||||
|
|
||||||
|
Just to add a small point on top of that, in terms of the institutions that you can build: it creates a lot more flexibility. For instance, say again that we're in a social media environment, and you want to create a feed generator, and that feed generator has content from arbitrary people. Normally, I would have to trust you not to transform that content. But in this case you can't. If you transform it, the thing becomes invalid. This means that you can create your own thing, and I don't have to worry about what you're doing other than maybe I'm interested in the governance of how the content gets in. But all the other nitty-gritty of the data itself is taken care of.
|
||||||
|
|
||||||
|
To my mind, what matters are the things you can build on that. It means that you switch to a system where you can have an institution over here dealing with identity, an institution over there dealing with data storage, one here that produces feeds, and another here that does search---and you don't need to integrate them. They can operate separately. A good separation of concerns makes them simpler, and they can remain trustworthy in terms of what you see. That's really the goal of these things. It's not, "Hey, you can now do crazy AI, with whatever-super-gradient-looking features." You can build a new world. That's really what I'm interested in.
|
||||||
|
|
||||||
|
*How does the work of building protocols for building a new world compare to working in standards organizations with big companies? I mean, in both cases, you're trying to build a kind of rule book, but I imagine it's a very different kind of process.*
|
||||||
|
|
||||||
|
It's different. But you always end up having a bunch of geeks in a discussion channel explaining technology to one another. Very quickly, you get interest from---not maybe the Googles or the Apples, but significantly larger companies start to get involved relatively quickly, because if you have something with promise, and you can demonstrate that promise, they come in.
|
||||||
|
|
||||||
|
But one thing that's different is---and it might not be an actual difference, it's more like a time shift. The vibe is much closer to what it was like to do web standards in the early 2000s. We have meetings that have maybe ten people and it's super friendly. It's relatively informal. We know that we're a small group who understand these things, and that there's not many other people who understand them. It's not a point of pride, but it creates a bond. You keep having these conversations where you're thinking, "No, no, I promise you---self-certifying data is something that transforms the governance of digital---" and outside that group, those are conversations that are hard to have. Because you have to give twenty years of background and a bit of computer science about what hashes are---because you have something new that no one has explained to the world yet.
|
||||||
|
|
||||||
|
It makes those meetings very nice, because you're thinking, "Oh, for the next hour, I can just kick back and just say things plainly the way they are in my brain without having to provide seven layers of explanation." It's also very interesting, because people build cool, small things that they demo to one another, which is something I haven't seen in a while. It used to be that on the web---"Hey, I made this crazy table. Look how cool it is. It's all pixelated!"
|
||||||
|
|
||||||
|
For instance, there's this streaming service that is all around self-certifying data. All the video blocks are self-certified, and they create the giant Merkle tree. The whole thing is crazy from a technical level. But that guy could explain it, and he joined one of the meetings, and within two minutes, you could see he understood that everyone knew what he was talking about. His eyes lit up, and he was thinking, "Oh, baby!" He would start talking about how they have this guy who now broadcasts 24/7 streaming, and they don't know how big you can make a Merkle tree of video fragments---you really get that vibe.
|
||||||
|
|
||||||
|
I really think it's a time thing. If we do it right and this is the next world, which I hope it is, at some point we're going to screw up and there'll be a new oligarchy. The question is how long can we---how slow can we make the capture process? I think by building better fundamentals in there, we can make it slower. We can enable much more democratic powers, and hopefully, instead of a twenty-year or fifteen-year path to oligarchy, we can get a two-hundred-year path to oligarchy---make it the problem for our great-great-grandchildren.
|
||||||
|
|
||||||
|
*It's something to aspire to. Based on these lessons---in some respects you described what you're doing as returning to where you started and trying again---can you say a bit about the lessons you've learned? Not only for your own work, but what do you try to impart among the twenty-year-olds showing up in these spaces, and having the kind of excitement that you had when you first entered the web standards world?*
|
||||||
|
|
||||||
|
I try not to pontificate at the twenty-year-olds too much, in part because they wouldn't listen anyway. But if there's something that I think has become really important in understanding how to build these systems, it is this idea that technology is politics by other means.
|
||||||
|
|
||||||
|
A lot of what got us to fail in the previous iteration is we were a community that was very much a product of the 1990s. Neoliberalism---great, it works. We built these systems where---and you see that in all the "splinternet" discourse---fragmentation was always bad. You have only two levels, the global and the individual. Anything that intervenes in between is bad. It's going to slow you down, it's going to be a problem. So you build these systems such that you have that global standard for everything. You make it good because you're "ethical," and you have the "right values." Then individuals use it, and they have some choice. That's it. So we really built a system that reflects that. The current Internet governance institutions still reflect very much that mindset.
|
||||||
|
|
||||||
|
If that had been on purpose---people consciously trying to build exactly that system---then, fine. I mean, I would politically disagree. But at least you could say that this was done on purpose. It wasn't. It was done by default, through lack of understanding of the mechanics involved in building this.
|
||||||
|
|
||||||
|
Really, now, I'm very adamant about the idea that this is political project. What we're building is democracy. In the same way that what makes science work is democracy, the project here is a democratic project. It's a political project through and through.
|
||||||
|
|
||||||
|
We have to stop seeing it as a defensive thing. There's a lot in the IPFS world that's very much about censorship resistance---the idea that you have an attacker from the outside, and you're protecting against that. But you're not proposing anything positive. I really trying to ground this in a capabilities approach, looking at what capabilities we're giving people. Again, self-certifying data gives you the capability of building something such that you can trust the data, no matter what institutional structure you put around it. The thing I would bang people on the head about is an old joke that I made many years ago: if you got into tech because you didn't like politics, now you have two problems.
|
||||||
|
|
||||||
|
That is the core of it. I think people who are interested in the architecture of technology and of protocols today should take the time to familiarize themselves with subsidiarity, polycentricity---basically, how institutions work, how democracy works. It's not about voting or capture resistance. Then you could build much, much better protocols from that. That would be my lesson learned. I'm sorry it took me twenty fucking years to get to that point before I started, but you gotta start sometime.
|
212
content/interviews/dorsey-the_gut.md
Normal file
212
content/interviews/dorsey-the_gut.md
Normal file
@@ -0,0 +1,212 @@
|
|||||||
|
---
|
||||||
|
narrator: Asia Dorsey
|
||||||
|
subject: The gut
|
||||||
|
facilitator: Nathan Schneider
|
||||||
|
date: 2025-03-18
|
||||||
|
approved: 2025-03-20
|
||||||
|
summary: "Drawing on many ancestral traditions and the experience of her own body, Asia Dorsey learns and teaches the pattern language of a healthy gut."
|
||||||
|
location: "Denver CO"
|
||||||
|
topics: [ancestors, food, health, indigeneity]
|
||||||
|
headshot: "asia_dorsey.png"
|
||||||
|
links:
|
||||||
|
- text: "Bugs Bones & Botany"
|
||||||
|
url: "https://www.bonesbugsandbotany.com"
|
||||||
|
- text: "Red Palm Oil: A Ghanaian Tradition"
|
||||||
|
url: "https://www.youtube.com/watch?v=sAgXY2WWPAk"
|
||||||
|
- text: "Patreon"
|
||||||
|
url: "https://www.patreon.com/bonesbugsandbotany"
|
||||||
|
---
|
||||||
|
|
||||||
|
*How do you begin telling people about who you are and what you do?*
|
||||||
|
|
||||||
|
I am a bioregional root worker raised on the lands of the Cheyenne, Ute, and Arapaho peoples. I was cultivated by a powerful, powerful group of Black women in the Five Points community, who taught me about cooperation, collaboration, and how to dream my way out of trouble. I am showing up here with my herbalist hat on, but one of the conversations that we are deeply steeped in at all times is one of sovereignty, embodied liberation, and also the forms of serenity that come from collective organizing, especially around the things that we apply our work to. So it's very good to be here with you.
|
||||||
|
|
||||||
|
*How would you outline your life? You started with your cultivation. Where did you go from there? What has your path been like?*
|
||||||
|
|
||||||
|
Starting off with my cultivation is so important because I am one of the people in this world who carries around a covenant of love privilege. That love privilege got me to a super prestigious university where I experienced existential depression after confronting what the world was really like.
|
||||||
|
|
||||||
|
I thought I wanted to be an attorney, and I thought that I would argue justice in front of the Supreme Court. I wanted to be Erin Brockovich. Ever since I saw *Erin Brockovich*, I was like, "Yeah, that's me." I made it all the way to university and discovered that the law was not true, that the law was based on who had power, and that broke my spirit. What my broken spirit looked like was not being in my body and not being able to feel any emotions. Anyone reading this—some of you know what this is like. Some of you are experiencing this right now.
|
||||||
|
|
||||||
|
There was only one thing that brought me joy. I would be watching Netflix, and then this Vandana Shiva woman would show up. She had this big beautiful bindi, and she was always saying clever little quippy things, and I was like, *who is this woman?* And I thought, *I am still alive*. So I watched everything that Vandana Shiva was in, and it got me into this world of food. I later visited her in India at Navdanya where I interned for several months.
|
||||||
|
|
||||||
|
I discovered that my university, NYU, we had one of the two food studies departments in the nation. I thought, *I'm just gonna take this little class because this is the only thing that makes me feel alive*. Everything else was just gray. But when it came to food, it was so colorful, so vibrant. So I decided to follow my joy, and I took 22 credit hours. And it was everything. It was everything.
|
||||||
|
|
||||||
|
I loved everyone. If they're a foodie, they're my people. Period. I don't care about race or class. I don't come for a foodie. Y'all be hating on *Portlandia*—I love *Portlandia*. Anyone who cares about animals and the earth, they were my people.
|
||||||
|
|
||||||
|
I ended up reading a book called *The Omnivore's Dilemma* by Michael Pollan, and I discovered Joel Salatin's Polyface Farm. When I was researching, I was alive because it was food. Then I realized Joel Salatin does this thing called permaculture, and I was like, *What is that?* So I ended up traveling to Australia to study with Geoff Lawton and apprenticing in permaculture. From there, I traveled around the world to understand food and agriculture, specifically with this lens of honoring the Indigenous.
|
||||||
|
|
||||||
|
I felt like I was able to learn so much more than my peers because I had this permaculture training. For example, in Ghana, I was so furious in a global nutrition class. The professor was like, "Vitamin A is of nutritional significance." And then the next phrase—she goes, "We Ghanaians are so backwards. We're eating all this palm oil." And I'm like, palm oil is the highest food source of vitamin A! So how are you backwards? I was so upset that I made a whole documentary on red palm oil, reclaiming the power of the palm. That professor ended up changing her tune because I was so furious.
|
||||||
|
|
||||||
|
After that, I traveled to New Zealand and worked with a woman named Kay Baxter, who owns the Koanga Institute, where I learned about what it looks like to build regenerative community and to grow food like your life depends on it. She taught me the principles of healing my gut. Kay was like, "Look, the gut and the brain are connected. You could heal your mind through healing your gut." I took it on, and I ended up resolving that depression using meat stock and fermented food. That really empowered me—I didn't know that was possible.
|
||||||
|
|
||||||
|
After studying with Kay and healing my depression, I graduated from university with that degree in food studies. I returned home and started a fermented food company called the Five Points Fermentation Company. It was cooperatively organized because I felt it had to heal at all levels. I wanted it to heal the earth. We only had cabbage from a regenerative grower named Michael Kilt, and he would apply compost teas, and we'd measure the brix of the cabbage.
|
||||||
|
|
||||||
|
I lived my best life, honestly, running that company because people were getting healed. I don't know if I'm legally allowed to say it or whatever, but all I know is, people were not well, and then they were well from the food that I was making—local sauerkraut that was fermented by whole communities.
|
||||||
|
|
||||||
|
After that, I realized I didn't understand how much capital I needed to run a manufacturing firm. We were fermenting like 55,000 pounds of sauerkraut and distributing it to grocery stores, restaurants and direct to consumers. It was wild that I did all that with no money—what I used was my own energy, and I burnt out so bad. I had no idea how much I hurt myself to bring probiotics to the people. But they needed the probiotics. They needed the traditional food.
|
||||||
|
|
||||||
|
All of my recipes were traditional. If we made kimchi, Mama CJ, a Korean woman, was in the kitchen with us. If we made cortido, a Salvadoran was there. Our curry kraut was developed by a Jain Indian chef named Milan Doshi, who ended up selling me the Five Points Fermentation Company to get my start. Shout out to the Brown Alliance!
|
||||||
|
|
||||||
|
After that, I learned a lot about organizing co-ops and businesses. I was on the board of the Center for Community Wealth Building, led by Yessica Holgin. The queen! We were building infrastructure for co-ops throughout Colorado. I started to cultivate a new co-op with the learnings from the last one—the Satya Yoga Co-op, which is the nation's first BIPOC-owned and operated yoga co-op, using this theme of healing our bodies in order to heal our minds.
|
||||||
|
|
||||||
|
This co-op was so much more successful than my first one. During that time, I helped organize other co-ops and did more economic justice work, always centering food. If it had to do with food then it was for me. I worked with Beverly Grant at Mo' Better Green and whoever I could work with in the food systems. That's all I wanted to do with my life.
|
||||||
|
|
||||||
|
Then Adam Brock, who founded the GrowHaus in Elyria-Swansea—we had been working together teaching permaculture and social permaculture—invited me to a consulting firm called Regenerate Change. I became a co-owner of that firm. We were able to consult with food businesses across the nation, helping with strategy and conflict resolution. My life was perfect. I used the resources from that to build a new business, Bones, Bugs, and Botany, where I teach embodied liberation through food and herbal medicine education. That's where I am now—a byproduct of all these beautiful collaborations, but very much following the trail of the earth. That's how I got here.
|
||||||
|
|
||||||
|
*I'd love to contrast that trail of the earth with law. You talked about law earlier as not being what you thought it was. If not law, what other orders did you turn to? What other ways of seeing the world, the gut, and everything in between seemed more real to you?*
|
||||||
|
|
||||||
|
When I was a young warthog in the streets of New York City, I was engaged in anti-stop-and-frisk activism. I was trained as a Kingian nonviolence facilitator, and I was organizing around prison justice. I read a book by Michelle Alexander called *The New Jim Crow*, and that's what killed it—that was the book that made me feel like I'd wasted all my life pursuing a legal education when the law is not actually just.
|
||||||
|
|
||||||
|
Understanding the law as it applies to policing, as it applies to Black bodies, as it applies to the extension of slavery—these things help us understand that whoever is governing, whoever the ruler is, they set the rules. But what I love about the earth and about food is that the goddess doesn't operate on laws. There are no laws of nature, but there are patterns.
|
||||||
|
|
||||||
|
There are patterns of nature, honey. And what I love about the patterns is that there are binaries in the natural world, and at the same time there is also chaos—the possibility for a multiplicity of outcomes. By studying not the law, but the pattern language of nature, I've been able to discern right from wrong, what is true, and I've been able to locate myself outside of a hierarchy in relationship to the more-than-humans, which include the bones and the plants and the microbes. I know now where I belong, and I use those principles or patterns of nature to help organize giant food-based organizations, but also to help people reorganize their bodies.
|
||||||
|
|
||||||
|
Thank goodness that I developed this perspective. The whole "law of nature" thing was just created to justify a legal regime of robbery.
|
||||||
|
|
||||||
|
*What changes when you shift your frame from the laws of nature to the patterns of nature? What consequences come from that?*
|
||||||
|
|
||||||
|
Laws are rigid and enforced by policing. Patterns are flexible. They resist commodification. They exist at many levels in different languages. Patterns are true.
|
||||||
|
|
||||||
|
There's so much more love. What I love about a pattern is that there is a binary, but there's also chaos that makes everything work. We have genes, a gene sequence, and the way that sequence gets all mixed up when we're trying to have a baby—the chaos of that is what creates the beauty. Patterns give us access to a way of being that honors duality and honors non-duality at the same time.
|
||||||
|
|
||||||
|
It allows us to connect outside of petty identity politics because we are able to connect with the broadness and beauty of the goddess, and to see that there are these principles that are self-replicating and patterns that are repeating. It's such a beautiful thing to be a part of these patterns, not because some law told us to.
|
||||||
|
|
||||||
|
I think about race and racial mixing and the maroon colonies. There's a really beautiful Indigenous woman named Tiffany Lovato. She's of Pueblo descent, and she told me that when Africans were being enslaved, the ancestors on the East Coast—their shamans, their wisdom keepers—saw that in dreams. They had made preparations and a covenant. What was supposed to happen was that those Indigenous tribes were going to consume or make kin with the newly arrived Africans. A lot of that kin-making actually happened because that is the pattern of all Indigenous people. This is how we keep our genetic diversity. This is what we do.
|
||||||
|
|
||||||
|
But it was laws created by men—laws of segregation—that halted those processes. The maroon colonies were European, Native American, and African. What was really beautiful when we study maroonage and what was happening in early America is you saw this class allegiance that went beyond racial or ethnic characteristics to create these futuristic societies. Those societies mix the blood—that is the pattern of nature.
|
||||||
|
|
||||||
|
But these laws kept that from happening, especially implementing the one-drop rule with African Americans and blood quantums with First Nations people. It worked to shrink their identity and expand ours, expand the pool of who could be extracted. And we see the impact of those laws today. The laws were put in place to stop the natural order from happening.
|
||||||
|
|
||||||
|
*How did you begin to get to know the patterns of the gut?*
|
||||||
|
|
||||||
|
When I was sick and depressed in New York City, I didn't understand—I was raised by all of those wonderful women in the Five Points, and they made all my food. They relieved me from reproductive labor of all kinds. I was one of the only kids that didn't have chores. My family was really invested in me getting a college education, so they said, "No, your job is to study."
|
||||||
|
|
||||||
|
Like many male-bodied folks, I experienced a lot of investment, and one of those forms was not learning to cook or clean or any of those things. So when I went to college without my family, I didn't know how to eat—my mom still makes my plate! I had no idea about the impact of polyunsaturated fatty acids or what caused inflammation. I was balling out. I said, "I get to choose what I eat. I'm going to have a waffle with mint chocolate ice cream." And I wondered, why was I like that? I didn't understand that there was a link between what I ate and how I felt.
|
||||||
|
|
||||||
|
Studying with Dr. Natasha Campbell-McBride, she amplified the teachings that Kay introduced me to, which was understanding that there is a pattern, an organization of the body. Later, when I started studying traditional Chinese medicine, I deepened that understanding of pattern and how the different organ systems work together and reflect the outer world.
|
||||||
|
|
||||||
|
I learned the pattern of healing. I was so unwell that if there was sugar in the salad dressing, I could hear the sugar. If there was wheat, I could hear the sound of wheat. It helped me see what foods really resonated with me because wheat was like this high-pitched frequency sound, but corn was like a low rumble. I developed synesthesia from restricting certain foods and eating the traditional kinds of foods that I grew up with.
|
||||||
|
|
||||||
|
I grew up eating liver and onions every week. I grew up eating collard greens, these really beautiful broth-rich stews. It turns out that all of those were protecting my gut. I had no idea how valuable traditional soul food was because it's so demonized—people say it's high fat, blah, blah, blah. No, that is the most nourishing food that exists on the planet. It's ingenious.
|
||||||
|
|
||||||
|
I learned the pattern language of gut healing by testing it out, by seeing what different foods made me feel like, and understanding the larger pattern of what it takes to heal the gut. A lot of the information we learn about what's good to feed the gut—fiber and polyphenols—that's for a healthy body, if your gut is already well. Digesting fiber is not easy. We're not cows. We don't have a four-chambered stomach or a rumen. We're not ruminating and regurgitating—plants are not easy to eat. Our ancestors have developed so many techniques to deactivate the anti-nutrients in plants.
|
||||||
|
|
||||||
|
So if you're not well, eating plants that haven't been processed in ancestral and traditional ways is going to hurt you even more. The foods we find not only in African American cuisines but cuisines around the world follow the same pattern language. Your ramen is using some of the same principles as my collard greens. We're using the bones and the meaty bones of animals to heal the meaty parts of ourselves.
|
||||||
|
|
||||||
|
The way that I know it's true is that I try it in my own body, but then I look at all the cultures who are practicing the same pattern. If I see African Americans do it, and then I see Native Americans do it, and then I see Europeans do it, then I see Japanese people do it—I think, okay, there's something true here, because humans are an expression of the earth and an expression of that wisdom and organizing intelligence. If our ancestors are organizing in the exact same way, I'm going to listen to the ancestors because that wisdom that comes from generations of trial and error is so much more powerful than a lab test with rats. The best science is what we've been able to see in human populations over generations. They'll give me a two-week rat trial and tell me not to have collard greens? No, incorrect. I'm not listening.
|
||||||
|
|
||||||
|
No shade—I sometimes do listen, but I only listen to those studies and trials when they are affirming the pattern languages that we see coming out of our ancestral cultures and traditions.
|
||||||
|
|
||||||
|
*Do you still hear foods?*
|
||||||
|
|
||||||
|
I don't have synesthesia anymore, and I've been trying to chase it. One of my mentors is like, "Leave it alone. You needed that when you were unwell to keep going. It incentivized you to continue the practice." But now that I'm well, I don't want to go back. I have so much empathy for all of us who are dealing with tummy pain.
|
||||||
|
|
||||||
|
*When you talk about these different cultures and sets of patterns that you've stewarded—patterns and protocols from fermentation with sauerkraut, yoga, soul food, and so on—how do you approach being a steward, learner, and teacher of so many different practices that have their own coherence but also resonance with each other? How do you hold their differences and their commonalities together?*
|
||||||
|
|
||||||
|
As an herbalist, I did not start seeing indigenous plants until I started respecting Indigenous people. When we're talking about yoga, which is an ancient Indian science, or Japanese or Chinese cuisine, or soul food—the thing that holds all of them together is that they are deep ancestral practices and lineages that are so overwhelmingly complex. One could not even begin to master them. It takes a lifetime to master how to cook fried chicken correctly, or to perfect that asana.
|
||||||
|
|
||||||
|
For me, humbling myself is my absolute favorite practice. *Humbling* comes from *humus*, comes from dirt. I am a dirt-colored woman. I love the earth—she looks just like me, honey, especially when she's healthy! I stay humble. I put my belly on the earth like a snake, and I very much appreciate the teachings that come, knowing that I'm only getting a fractal. From that place of humility, I'm able to see how that knowledge is fractal and how it replicates itself, and what those base principles are.
|
||||||
|
|
||||||
|
The first thing is respect. I have found that people are so much more willing to share with me when I'm prostrating myself, genuflecting—not flexing like I know everything, but genu-flexing like, "Please teach me more." And "Let me tell you what I've learned, what do you think about that?" And "What did your grandma say? What was that recipe you want to share with me? That sounds amazing."
|
||||||
|
|
||||||
|
People aren't taught to respect their traditions. People are taught to become consumers. For capitalism to penetrate the home, you cannot have culture, because capitalism relies on novelty. We've been fractured from our traditional culture. We have science, which has been captured by capitalists to reflect values and ideas that benefit them. We have all of this confusion about what to eat and how to live.
|
||||||
|
|
||||||
|
I stand as a powerful Black woman because we are *sankofa*—go back and get it. I want to wrap my arms around all of it so that I can give it back to us. I don't want people to be unwell. Because we don't have enough respect for our ancestors, especially respect for women—because food is often the domain of women. Those genius things that kept us alive, those things that built our bodies as strong as they are, have become invisibilized and discarded for veganism and all kinds of weird, non-ancestral stuff. No shade—the vegans are going to be so mad at me! Come for me, I dare you!
|
||||||
|
|
||||||
|
What I'm trying to rectify by holding the pattern language is helping people begin to see the awe again. People, begin to have awe.
|
||||||
|
|
||||||
|
For some of us, some of our ancestors are raggedy, and we are afraid to look back because we don't want to confront what happened. You don't have to look—it's fine. But I look back in the way that I understand Italian cuisine from a pattern language, in the way that I explore German cookbooks. I'll hold the knowledge for you to come back to when you're ready, to claim what is yours, which are these cultures that we have inherited.
|
||||||
|
|
||||||
|
These are the protocols—because what is culture but a set of protocols? Protocols for how to soak your beans, protocols for how to cook your greens, protocols for how to ferment your bread. These are all protocols that create a culture. Those cultures then shape our microbiome in a way that creates our identity. Culture tells us what to eat and how to eat to live in any given environment.
|
||||||
|
|
||||||
|
To figure out how best to eat in Colorado, I looked at places that had a similar altitude and grasslands. Let me look at all the grassland people. Dairy is just fine. Cows are sustainable in Colorado. Come for me because I could show you all of the steppe regions and how we're all eating the same thing—red meat. Even the Dalai Lama eats red meat, and it's because at this altitude it's so hard to breathe that we burn through our minerals like heme iron, causing our bodies to have a higher demand for heme. That demand is the same in all of our steppeways geographies.
|
||||||
|
|
||||||
|
The red meat is consumed in the grasslands where the buffaloes roam. It's a pattern. But how does that pattern of eating red meat then put us in proper relationship to the more-than-humans in our environment? To be a meat eater without understanding the significance of stewarding the animals is incorrect. You need the whole thing.
|
||||||
|
|
||||||
|
What I discovered about Indigenous folks of the Americas, and why there were so many bison, is that they were actively stewarding those herds. It wasn't just random that so many were able to thrive. No, honey—they were actively stewarding, and because their stewarding was sustainable, that's what grew out. That amount of herding gave them access to the highest quality protein on the planet.
|
||||||
|
|
||||||
|
Wherever we go in altitudes like this, where ruminants are eating grasses, we also see stewardship culture. Some of my favorite stewardship cultures are the Maasai in Kenya. Oh my God, they're beautiful! They're twelve feet tall! They eat no vegetables except if they're sick, then they'll take an herb. I love the Maasai—they're so amazing.
|
||||||
|
|
||||||
|
I love the cow-herding cultures because I'm a cowgirl. I'm in Colorado, and I better learn how to eat to live here. My health is so abundant because instead of just giving land acknowledgments to Indigenous people, I'm looking at their cookbooks. I'm learning what they ate because I see their genius, and I honor that genius, and I'm humble to that genius.
|
||||||
|
|
||||||
|
*I'd love to hear more about how you learn. You talked about cookbooks and humbling yourself. What does your learning process look like, especially considering how much our educational systems have erased these legacies?*
|
||||||
|
|
||||||
|
I love the process of triangulation. I pull my knowledge from multiple sources. The first source is the ancestral source—I want to know what the ancestors were doing. So, for example, when learning about a plant, I'll pull out my *Native Ethnobotany* by Daniel E. Moerman, or I'll pull out my African American herbal guides or my slave medicine book to see what enslaved people were doing. Then I may check Margaret Grieve to see what European people were using that plant for.
|
||||||
|
|
||||||
|
Then I'll look at the nutritional profile of the plant. One of my favorite books is *Minerals for the Genetic Code* by Charles Walters. I love some esoteric Acres USA! Put it on my bookshelf, period. I'll start understanding the herb from a nutritional perspective to see if the nutrients in the plant correspond with the medical functions that our ancestors are reporting.
|
||||||
|
|
||||||
|
Then I'll check PubMed and see the latest research coming out about the plant. I'll look for the gold standard—double-blind, placebo-controlled studies. I want to see those outcomes. But I have enough discernment to understand context. For example, people will say that in the Nurses' Health Study, which is a big study that everyone likes to cite because it was multi-year following nurses, red meat consumption is correlated with heart disease. But then I check if there's a similar study in another country that eats red meat, and you find that correlation doesn't exist. Then you realize, oh, when they eat red meat in the US, they're eating McDonald's. McDonald's, not red meat itself, is corresponding to heart disease.
|
||||||
|
|
||||||
|
The most important part is that I try it on myself. I will see what the herb is like in my body. Once I trust that it's safe from all my research, I take on the herb, and I will often apprentice with the herb for several months, sometimes several years, to fully understand if it does what they say it's going to do.
|
||||||
|
|
||||||
|
So there's also the embodied knowledge. I could sum it down to ancestral relevance, cultural relevance, scientific analysis, and then embodiment as the way that I go about gathering knowledge about plants or foods.
|
||||||
|
|
||||||
|
*How do you take that knowledge and bring it to others? How do you introduce people to this knowledge and wisdom that you've learned from so many different teachers? What is the next step of that apprenticeship?*
|
||||||
|
|
||||||
|
I teach from pattern to details. I'm a permaculturist—I've been teaching the Permaculture Design Course in Denver for several years. I'm not going to overload people with information that they don't need, with data and facts. I'm going to teach the pattern language so that they understand and are empowered to see the wholeness.
|
||||||
|
|
||||||
|
For example, it's spring, and spring is an opportunity to regulate our blood sugar. It's the season of the liver organ, the wood element in Chinese medicine. Sidebar: the five elements are also in West Africa, and it's the same five! So this is a pattern of the spring. Instead of saying burdock root does this, or yellow dock root does that, or dandelion root does this, I teach the importance of the bitter flavor and how all bitters create more bile and help stimulate all the digestive juices and enzymes.
|
||||||
|
|
||||||
|
I start with that broader pattern so that, regardless of which roots they're using, they get the big picture. Then I bring them into the details. Yes, dandelion works along the liver-stomach-spleen axis—let me tell you about these organs and how they work together. Yellow dock is liver-large intestines—let me tell you about the pattern language of the large intestines and the liver and how they work. My students really get it—they are great herbalists. They're so good! I think, *Wow, I really taught y'all, didn't I?*
|
||||||
|
|
||||||
|
I love a citation for the girlies who are ready to go deeper—and *girlies* is a gender-neutral term, everyone is the girlies! I always like to have references so that people can follow the paper trail and importantly, refute me. I want my students to be able to say, "Actually, you misinterpreted this data," and I'll say, "Oh, okay, teach me." Because I'm humble—I don't have to be right about it. I really want to see what the pattern is, and I understand that chaos is a part of the pattern, so sometimes things are unexpected, and I love that because then we get specific data.
|
||||||
|
|
||||||
|
For example, people rail against polyunsaturated fatty acids. First of all, omega-3 fatty acids are polyunsaturated fatty acids—we love omega-3s! So people don't even know the pattern of what the polyunsaturates are. People are mad because canola oil and vegetable oil are all polyunsaturated, and they cause heart disease. "They're the worst, they're poison, they're not natural, no ancestors would use them."
|
||||||
|
|
||||||
|
But there is a plant—this is when we get into the details—my favorite, sesame oil. The lignins in sesame oil keep it from going rancid. Whereas all the other polys get rancid and cause inflammation, sesame oil does not—it's protected by the lignins. So we have the broader pattern of polyunsaturated fatty acids being unstable. It's true, omega-3 fatty acids are hella unstable. But when we look into the details, we start to learn the specifics.
|
||||||
|
|
||||||
|
This particular oil has been used against aging. We love sesame! We see it coming up in Islamic cultures, in hummus with tahini. And then we see black sesame being really used in Asia. So for me, if many ancestors are using the plant, then I need to double-check. The pattern is still valid, but there is this nuance that queers the pattern. I love touching into that nuance, and we know that nuance must be present because the ancestors are not dumb. If they were dumb, we wouldn't be here.
|
||||||
|
|
||||||
|
Sesame oil is a prized oil, and we know why it is. It is a seed oil, but unlike those raggedy seed oils, this one is anti-inflammatory.
|
||||||
|
|
||||||
|
*One pattern I've come across in relationship to different protocols is capture. What are your thoughts or experiences with this? Has this word brought to mind cases where the legacies and patterns you steward have been vulnerable to capture, misused, or subverted?*
|
||||||
|
|
||||||
|
We talk about the capture of nutrition research by the seed oil lobby or the capture of agricultural research by Cargill and Monsanto. The deterioration of federal funding in research has been met with increased investment by capitalists who not only shift the outcomes of that research but hold the patents of things that used to be distributed to us, the people, and are now privately owned by them and charged back at us.
|
||||||
|
|
||||||
|
Capture is also happening in traditional food. We see Whole30, who just added seed oils to their products—captured. We see all of these trends. But what's fascinating is that you can't capture the pattern language, and the pattern language requires us to be in good relationship.
|
||||||
|
|
||||||
|
You can't capture fermented bread—these corporations could never. You can't, because the things that are true, the things that are healthiest for us, those things take time. There are only a few examples where a company could do it better.
|
||||||
|
|
||||||
|
I like to think about cultural institutions—restaurants are cultural institutions. In other countries, it's the restaurant that would take on the making of a traditional food that's very labor-intensive because they could utilize scale in a powerful way. We see that in places like Germany. The real way to make fried chicken is three whole days—it is a *process*. So we have these cultural institutions that are doing what they're supposed to do, which is taking on the labor-intensive process, and then we get to access our traditional foods through these cultural institutions.
|
||||||
|
|
||||||
|
Unfortunately, in this country, we cannot trust our institutions, and I hate that because having a thriving democracy requires that we trust our institutions. There is a cost to not trusting institutions—look at the anti-vaxxers. Their distrust was legitimate, but look at the outcome on all of us. It is a dangerous thing when we can't trust our institutions, and in this country, our institutions destroy everything beautiful. Try to get sourdough from the store—it's only been fermented for like five hours! What is this? Not them adding citric acid—bitch, please! What are you doing? It's incorrect. Make the bread correctly! I will buy it from you.
|
||||||
|
|
||||||
|
So yeah, there is all of this capture. But I want to talk about a crack in the edifice. A bitch loves a farmers market because you can go to the farmers market, talk to your bread girlie (which is often a dude—shout out to our bread girlies). There are these artisans, just like I was back in the day, who are sourcing the most nutrient-dense wheat and fermenting it, doing all of the things correctly.
|
||||||
|
|
||||||
|
The other side of capture is renaissance. Let's look at yoga. First of all, the yogis, because they're smart, the yogic ancestors—they had visions of what they needed to do to keep their culture alive, and they said to keep it alive, we're going to share it with white people. So in the twenties, Yogananda and all of these people were coming over because they had prophetic vision and insight because they wanted to keep yoga alive.
|
||||||
|
|
||||||
|
Yoga in India was laughed at. If you said you want to be a yogi, your family might disown you: "We don't do that. We're the new Indians." So what happens over fifty years of history in the United States is white people really take it on, and they find that it's supportive, that it's helping them, that it's easing their mind. And then there was a backlash—Indians were like, "That's ours. You're doing it incorrectly," and they took it back. So then we started seeing all of these Indian-run cultural institutions to teach yoga, such as mine. The Satya Yoga Co-op—Lakshmi Nair was like, "Nope, we're taking it back," creating this uber authentic, rooted, seductive, sultry, salacious, soulful practice.
|
||||||
|
|
||||||
|
So we see that whenever there is capture, there's also counter-movement, and that counter-movement is a pattern. This is an impulse, a survival instinct. Indian people were like, "You ain't about to tarnish our legacy with your yoga with your Lululemons, with your Starbucks." No shade—I love all women, so you can wear whatever you want. I'm not judging you.
|
||||||
|
|
||||||
|
So we have this renaissance of yoga, and then Indian yogis—or at least the modern girlies—are like, "Yeah, this is for people of color." And so then you have this proliferation of practitioners of color who descend from these beautiful Indian teachers. And now I use yoga to reconnect with my African ancestors, who also practiced asanas—even if they didn't call it asanas, it was something else. But yoga has been a pathway back home towards healing.
|
||||||
|
|
||||||
|
I wanted to give that example because there are always cracks. Remember, we have the pattern, but then we have the chaos, and the chaos often looks like this counter-movement. It's a beautiful thing.
|
||||||
|
|
||||||
|
*How do you know when the evolution of a tradition is correct? When we learn from other cultures or do that blood mixing you talked about earlier, how do you know when to trust the evolution we're drawn into?*
|
||||||
|
|
||||||
|
As a feminist, I ask one question: does this create beauty? If this practice creates beauty within your body, and then it creates beauty in your relationships, and then it creates beauty in the community, and then it creates beauty in the earth—because the broader pattern is regeneration. We know something's on point when it's regenerative.
|
||||||
|
|
||||||
|
Regenerative and sustainable are different. Regenerative means that the outcome is more than the sum of its parts. We're not keeping things level, staying stuck in one place—we're actually participating in a spiral of abundance.
|
||||||
|
|
||||||
|
When I think about what it takes for me to make my einkorn sourdough, I have to source the whole grains, either from Italy, where they take really good care of their soil. I know it's not local, but neither is my red palm oil. So I source the grains from an organization that's producing the highest mineral count, because what it takes to keep soil mineralized is good tending. I'm looking at the indicator of the impact on the earth by the quality of the nutrients in the food, period.
|
||||||
|
|
||||||
|
I get the grains to my house. Then I have to grind the grains. Oh, the time it takes! And I can't grind it too fast, or the volatiles are going to evaporate. So I grind these grains slow, and that slowness causes me to slow down. I have to plan three days to make my sourdough, and so now I'm in the slow phase. My mind is not running as quickly as it usually is, so now my mental health is better because I'm making sourdough.
|
||||||
|
|
||||||
|
I've got the flour. Now I'm mixing it in the right ratio, because I've researched a lot about sourdough. People have mastered this craft, and I am not going to forget what they have learned. I'm not starting over. So now I'm in sourdough culture, learning about the goddess, learning about Demeter and how she gifted us culture. Appreciating the European ancestors who really go hard on the grain—these are wheat people!
|
||||||
|
|
||||||
|
So I'm researching, having fun. And then I start making the dough, and I have to fold it in a particular way, and I have to work it, and I have to pay attention to it. Oh my goodness! Now I'm paying attention to everything because I've been paying attention to this dough, and also look at my forearms getting nice and fit. Now my heart is happy because we're working the dough. Then I have to bake it, and that's going to cost me because of my energy bill. So I'm thinking about the implications—this is worth it for me. I'm going to use this energy, and I'm going to thank the ancestors who got this energy to me.
|
||||||
|
|
||||||
|
But then I make the sourdough, and it's ready, and it's perfect. But if I eat all of that, I'm gonna get huge. There's nothing wrong with hugeness! But I don't need that much nutrition. So what happens? I share the sourdough with someone else. So now I'm relating, now I'm building community, now I'm building culture. I'm sharing sourdough loaves with my friends and my family. So now we're breaking bread, and in that breaking bread, someone's like, "Ouch, my knee!" And I'm like, "Oh, try this burdock." Let me spread some of the gifts from the earth, and then they're out making sure that their lawn's not getting sprayed so that their burdock is good enough to harvest.
|
||||||
|
|
||||||
|
Now look—regeneration at every level. We started regenerating the earth by getting high-quality grains, and then we ended with people harvesting their burdock root and keeping it from being poisoned. So that's how I know that it's correct. My body is better as a byproduct. My community is better as a byproduct, and the earth is better as a byproduct. Now I'm more beautiful. Look at my skin! Look at all that zinc from that high-quality einkorn. I'm beautiful, my body is beautiful, my community is beautiful, the earth is beautiful. We can trust beauty.
|
||||||
|
|
||||||
|
*Are there any other lessons that you would share with other pattern watchers, learners, hearers, and makers?*
|
||||||
|
|
||||||
|
I like ending on beauty. I love Auntie Robin Wall Kimmerer and others who insist upon this notion of beauty. It's so feminist, isn't it?
|
||||||
|
|
||||||
|
The most important thing is that we can have it—we can create it. That principle of honoring the body, honoring relationship, and honoring the planet applies to every single thing that we do.
|
||||||
|
|
||||||
|
I'm thinking about how all the research came out showing that it's 28 times more resource-intensive than CAFO meat to have those fake burgers. Nasty, nasty, nasty! No, incorrect. It makes you unhealthy. You're not connecting with the land—no ancestors ever did it. And the earth is suffering because of that nasty stuff.
|
||||||
|
|
||||||
|
I just want you to apply this lens to see that we can create cultures of regeneration, and that those cultures end up shaping our microbiome, shaping our moods, and then shaping how we relate to each other. That's what I really want to give to the world. All the vegans—you can come for me. You can come on our show, *The Petty Herbalist* podcast, and we can debate. Just create beauty—that's what I want to leave for y'all.
|
93
content/articles/ehmke-contributor_covenant.md → content/interviews/ehmke-contributor_covenant.md
93
content/articles/ehmke-contributor_covenant.md → content/interviews/ehmke-contributor_covenant.md
@@ -1,64 +1,57 @@
|
|||||||
---
|
---
|
||||||
narrator: Coraline Ada Ehmke
|
narrator: Coraline Ada Ehmke
|
||||||
subject: Contributor Covenant
|
subject: Codes of conduct
|
||||||
facilitator: Nathan Schneider
|
facilitator: Nathan Schneider
|
||||||
date: 2024-10-10
|
date: 2024-10-10
|
||||||
approved: 2024-10-11
|
approved: 2024-10-11
|
||||||
summary: "After widespread resistance to codes of conduct in open-source software communities, Coraline Ada Ehmke's Contributor Covenant became the most popular code of conduct in the ecosystem."
|
summary: "After widespread resistance to codes of conduct in open-source software communities, Coraline Ada Ehmke's Contributor Covenant became the most popular code of conduct in the ecosystem."
|
||||||
tags: [code of conduct, dispute resolution, gender, open-source software, organizations]
|
location: "Chicago, USA"
|
||||||
|
#headshot: "placeholder-headshot.png"
|
||||||
|
topics: [conflict, mediation, gender, open source, software]
|
||||||
|
links:
|
||||||
|
- text: "Personal website"
|
||||||
|
url: "https://where.coraline.codes"
|
||||||
|
- text: "Contributor Covenant"
|
||||||
|
url: "https://www.contributor-covenant.org"
|
||||||
|
- text: "Organization for Ethical Source"
|
||||||
|
url: "https://www.contributor-covenant.org"
|
||||||
---
|
---
|
||||||
|
|
||||||
{{< i >}}
|
*First of all, I want to begin with the question of how you how you prefer to introduce yourself.*
|
||||||
First of all, I want to begin with the question of how you how you prefer to introduce yourself.
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
My name is Coraline Ada Ehmke. I'm the founder and executive director of the Organization for Ethical Source. I'm also a software engineer, emerita, having spent about two and a half decades in the industry. I'm best known as the creator of Contributor Covenant, the first and most popular code of conduct in the world for open source communities and other digital communities. And I'm very happy to be here with you, Nathan.
|
My name is Coraline Ada Ehmke. I'm the founder and executive director of the Organization for Ethical Source. I'm also a software engineer, emerita, having spent about two and a half decades in the industry. I'm best known as the creator of Contributor Covenant, the first and most popular code of conduct in the world for open source communities and other digital communities. And I'm very happy to be here with you, Nathan.
|
||||||
|
|
||||||
{{< i >}}
|
*How would you outline the trajectory of your life and career? Where do you start? And where are you now?*
|
||||||
How would you outline the trajectory of your life and career? Where do you start? And where are you now?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
Career-wise, I would start in 1994, when I was a kind of adrift kind of kid. I was working at an engineering company in Austin, Texas, because my girlfriend got her dad to give me a job there. Back then I'm a smoker, and I'm always having conversations with the other smokers, who, some of whom are software engineers and some of whom are IT folks. So I have a good relationship with them. And one day one of them comes up to me and says, "Coraline, did you hear the company's putting together a web team?" I was like, "Oh, that's amazing. Put the company on the Internet. That's great." And he said, "So what do you think that's going to do for your career?" And that is how I fell into software development as a college dropout.
|
Career-wise, I would start in 1994, when I was a kind of adrift kind of kid. I was working at an engineering company in Austin, Texas, because my girlfriend got her dad to give me a job there. Back then I'm a smoker, and I'm always having conversations with the other smokers, who, some of whom are software engineers and some of whom are IT folks. So I have a good relationship with them. And one day one of them comes up to me and says, "Coraline, did you hear the company's putting together a web team?" I was like, "Oh, that's amazing. Put the company on the Internet. That's great." And he said, "So what do you think that's going to do for your career?" And that is how I fell into software development as a college dropout.
|
||||||
|
|
||||||
Then fast forward a lot of years to about 2012, 2013. This is the point where I had made a decision to begin my gender transition. I was slowly waking up to realities of the world that had been conveniently easily ignored by me previously, and that were no longer ignorable. Things that I understood in principle, I was beginning to experience firsthand, and that made me angry. But it was a righteous fury, and I decided to look for ways that I could use my skills and my life experience to change things, change the world, change the sphere that I was operating in---the sphere of tech and the sphere of open source---to make it less awful for people. And over time I've graduated from less awful to actually, like, maybe pro-social. Maybe we can use technology to actually make a difference in the world, a positive difference in the world. So I am less righteous fury these days, and more hopeful, looking for visions of equitable futures. I guess that's my career in a nutshell.
|
Then fast forward a lot of years to about 2012, 2013. This is the point where I had made a decision to begin my gender transition. I was slowly waking up to realities of the world that had been conveniently easily ignored by me previously, and that were no longer ignorable. Things that I understood in principle, I was beginning to experience firsthand, and that made me angry. But it was a righteous fury, and I decided to look for ways that I could use my skills and my life experience to change things, change the world, change the sphere that I was operating in---the sphere of tech and the sphere of open source---to make it less awful for people. And over time I've graduated from less awful to actually, like, maybe pro-social. Maybe we can use technology to actually make a difference in the world, a positive difference in the world. So I am less righteous fury these days, and more hopeful, looking for visions of equitable futures. I guess that's my career in a nutshell.
|
||||||
|
|
||||||
{{< i >}}
|
*Does the does the world word "protocol" mean anything to you? Is that a word that you've used to describe aspects of your life, or that has been an important part of your work?*
|
||||||
Does the does the world word "protocol" mean anything to you? Is that a word that you've used to describe aspects of your life, or that has been an important part of your work?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
It is, in multiple senses of the word. Back in the day I was giving a talk called "He Doesn't Work Here Anymore," which was about my experience of transitioning as an engineer, as a technologist. One of the things I pointed out was that I was learning that communication works very differently than the way I'd experienced it in the past. If you likened it to the HTTP protocol, women were including extra headers that indicated the kind of response that they were hoping to get by sharing a particular by communicating a certain thing. Men on the receiving end were ignoring those headers and answering in a way that was maybe solving a problem or something, but not what was wanted. Other women are sensitive to these headers that are embedded in the messages, and communicate more empathetically for that reason. I was using the HTTP protocol as a metaphor for humans communicating. So I think I've always had the notion of a protocol as a methodology for interactions, whether between human agents or pieces of code.
|
It is, in multiple senses of the word. Back in the day I was giving a talk called "He Doesn't Work Here Anymore," which was about my experience of transitioning as an engineer, as a technologist. One of the things I pointed out was that I was learning that communication works very differently than the way I'd experienced it in the past. If you likened it to the HTTP protocol, women were including extra headers that indicated the kind of response that they were hoping to get by sharing a particular by communicating a certain thing. Men on the receiving end were ignoring those headers and answering in a way that was maybe solving a problem or something, but not what was wanted. Other women are sensitive to these headers that are embedded in the messages, and communicate more empathetically for that reason. I was using the HTTP protocol as a metaphor for humans communicating. So I think I've always had the notion of a protocol as a methodology for interactions, whether between human agents or pieces of code.
|
||||||
|
|
||||||
{{< i >}}
|
*I love that you brought up that context, and it reminds me, too, of the what you said earlier about the way in which things become visible in the context of transition. Things that are invisible otherwise visibilize themselves. And you know that, I think, is part of the behavior of protocols---to be invisible as infrastructures, and then to become visible when some kind of the inadequacy becomes clear.*
|
||||||
I love that you brought up that context, and it reminds me, too, of the what you said earlier about the way in which things become visible in the context of transition. Things that are invisible otherwise visibilize themselves. And you know that, I think, is part of the behavior of protocols---to be invisible as infrastructures, and then to become visible when some kind of the inadequacy becomes clear.
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
Sure, or a bad implementation. That's always a possibility as well. A protocol is only as good as its adaptations.
|
Sure, or a bad implementation. That's always a possibility as well. A protocol is only as good as its adaptations.
|
||||||
|
|
||||||
{{< i >}}
|
*You identified earlier with the Contributor Covenant. I wanted to focus this conversation as well, but feel free to bring in other projects as well, because I think other projects of yours are relevant. But starting with the Contributor Covenant, can you describe the story of your motivation for developing and then stewarding it, especially for people who are not familiar with what it is. Where did that story start for you?*
|
||||||
You identified earlier with the Contributor Covenant. I wanted to focus this conversation as well, but feel free to bring in other projects as well, because I think other projects of yours are relevant. But starting with the Contributor Covenant, can you describe the story of your motivation for developing and then stewarding it, especially for people who are not familiar with what it is. Where did that story start for you?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
It was around 2013, I believe, 2013 or 2014, when a Twitter hashtag emerged from the Python [programming language] community, which was #COCPledge. Basically, conference speakers were pledging to not speak at conferences that didn't have an enforceable code of conduct. This is a time when we have a lot of new people coming into the industry, a lot of people who have seen the salaries that tech companies offer and can see the transformative power of being involved in that economy. And a lot of those people didn't look like the people who came before them. And a lot of those people faced challenges that the people who came before them didn't experience. Those challenges could seem invisible. So codes of conduct were becoming necessary for the peaceful operation of gatherings of technologists. But that was meeting with resistance. It was very controversial. This is something we take for granted now---even department stores have codes of conduct now. But it was very controversial at the time for conferences, and there was a lot of a lot of activism that was required to make it a norm.
|
It was around 2013, I believe, 2013 or 2014, when a Twitter hashtag emerged from the Python [programming language] community, which was #COCPledge. Basically, conference speakers were pledging to not speak at conferences that didn't have an enforceable code of conduct. This is a time when we have a lot of new people coming into the industry, a lot of people who have seen the salaries that tech companies offer and can see the transformative power of being involved in that economy. And a lot of those people didn't look like the people who came before them. And a lot of those people faced challenges that the people who came before them didn't experience. Those challenges could seem invisible. So codes of conduct were becoming necessary for the peaceful operation of gatherings of technologists. But that was meeting with resistance. It was very controversial. This is something we take for granted now---even department stores have codes of conduct now. But it was very controversial at the time for conferences, and there was a lot of a lot of activism that was required to make it a norm.
|
||||||
|
|
||||||
In the midst of that, I saw that there are other places where technologists gathered, where their conduct also had the potential to be problematic. This was on Github, in the context of our open source communities and projects. The concept of a "community" was beginning to come into common usage to describe the group of people that coalesced around an open source project, and was not always a given. As we began to see projects as communities, we saw the need for shared values and norms to emerge. This led to the philosophy behind the Contributor Covenant, which was written as a way to establish shared values and norms for how people would interact in these open source communities. Over time, our understanding of what this means has developed and matured, and the Contributor Covenant has become a living document. The team is currently working on the tenth anniversary version 3.0, which will be modular to accommodate the novel use cases they've discovered, such as Discord servers, Slack communities, and even offline events. This evolution towards an "adapt versus adopt" approach is another way the concept of codes of conduct for digital communities is maturing to meet changing needs. The Contributor Covenant has always been a living document, accepting pull requests and being translated into more than twenty-five languages. With Contributor Covenant 3.0, the team is looking to expand their coverage of languages from the global south, in an effort to counteract the export of white western values that often go along with open source by default, and to be a force for decolonization. They have big plans for what a more globally oriented, norm-based instrument can do for the world.
|
In the midst of that, I saw that there are other places where technologists gathered, where their conduct also had the potential to be problematic. This was on Github, in the context of our open source communities and projects. The concept of a "community" was beginning to come into common usage to describe the group of people that coalesced around an open source project, and was not always a given. As we began to see projects as communities, we saw the need for shared values and norms to emerge. This led to the philosophy behind the Contributor Covenant, which was written as a way to establish shared values and norms for how people would interact in these open source communities. Over time, our understanding of what this means has developed and matured, and the Contributor Covenant has become a living document. The team is currently working on the tenth anniversary version 3.0, which will be modular to accommodate the novel use cases they've discovered, such as Discord servers, Slack communities, and even offline events. This evolution towards an "adapt versus adopt" approach is another way the concept of codes of conduct for digital communities is maturing to meet changing needs. The Contributor Covenant has always been a living document, accepting pull requests and being translated into more than twenty-five languages. With Contributor Covenant 3.0, the team is looking to expand their coverage of languages from the global south, in an effort to counteract the export of white western values that often go along with open source by default, and to be a force for decolonization. They have big plans for what a more globally oriented, norm-based instrument can do for the world.
|
||||||
|
|
||||||
{{< i >}}
|
*So, in telling that story, you began in passive voice---it was created---and then you switched to first-person plural. I wonder if you could describe a bit more about the design process for the Contributor Covenant at each stage? From the beginning, what was that process like and how has it evolved now?*
|
||||||
So, in telling that story, you began in passive voice---it was created---and then you switched to first-person plural. I wonder if you could describe a bit more about the design process for the Contributor Covenant at each stage? From the beginning, what was that process like and how has it evolved now?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
Wow! That's a great question and a great observation. At the beginning, the Contributor Covenant was very much a social justice manifesto, and many critics of codes of conduct in general, and the Contributor Covenant in particular, regarded it as a political document pushing a certain political agenda. I was in full agreement with these critics that yes, the Contributor Covenant was attached to a social justice agenda. And why shouldn't it be? It was very confrontational, and the language was also confrontational, because they were confronting a status quo and a culture that was literally harmful. Of course, what they proposed was antagonistic and confrontational, because that was the context in which they were operating.
|
Wow! That's a great question and a great observation. At the beginning, the Contributor Covenant was very much a social justice manifesto, and many critics of codes of conduct in general, and the Contributor Covenant in particular, regarded it as a political document pushing a certain political agenda. I was in full agreement with these critics that yes, the Contributor Covenant was attached to a social justice agenda. And why shouldn't it be? It was very confrontational, and the language was also confrontational, because they were confronting a status quo and a culture that was literally harmful. Of course, what they proposed was antagonistic and confrontational, because that was the context in which they were operating.
|
||||||
|
|
||||||
Over time, however, the Contributor Covenant has gotten less confrontational and less adversarial, and more reflective. I hope it is more reflective of changing values in our digital communities as well. With version 3.0, the emphasis is on the globalization of the Contributor Covenant as an instrument. To achieve this, we actually have to strip out a lot of the language that would typically be associated with some of the values they're talking about, because it's jargon---social justice jargon. When talking to people who don't speak English as a first language, or people who are from outside the white Western sphere, those words aren't going to make sense to them, and that's not acceptable anymore.
|
Over time, however, the Contributor Covenant has gotten less confrontational and less adversarial, and more reflective. I hope it is more reflective of changing values in our digital communities as well. With version 3.0, the emphasis is on the globalization of the Contributor Covenant as an instrument. To achieve this, we actually have to strip out a lot of the language that would typically be associated with some of the values they're talking about, because it's jargon---social justice jargon. When talking to people who don't speak English as a first language, or people who are from outside the white Western sphere, those words aren't going to make sense to them, and that's not acceptable anymore.
|
||||||
|
|
||||||
{{< i >}}
|
*Was it a collective project from the beginning?*
|
||||||
Was it a collective project from the beginning?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
No, it was just me shepherding it, guiding it, and writing it for a number of years. I gifted contributor Covenant to OES, I believe, in 2021 or 2022.
|
No, it was just me shepherding it, guiding it, and writing it for a number of years. I gifted contributor Covenant to OES, I believe, in 2021 or 2022.
|
||||||
|
|
||||||
{{< i >}}
|
*The Organization for Ethical Source.*
|
||||||
The Organization for Ethical Source.
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
Yes, I gifted the Contributor Covenant to the Organization for Ethical Source because I saw that it was too important to be under the control of just one person. I didn't want there to be a single person responsible for it.
|
Yes, I gifted the Contributor Covenant to the Organization for Ethical Source because I saw that it was too important to be under the control of just one person. I didn't want there to be a single person responsible for it.
|
||||||
|
|
||||||
@@ -75,9 +68,7 @@ There's a reason it's called the Contributor Covenant instead of the Contributor
|
|||||||
|
|
||||||
It's adopting a protocol, and that just made a lot more sense than a list of rules or regulations, or policies or manifestos. Not to say that those things don't have value, not to say that those things aren't related or interdependent. But it just makes sense to me as a really general, well-recognized form of social contract.
|
It's adopting a protocol, and that just made a lot more sense than a list of rules or regulations, or policies or manifestos. Not to say that those things don't have value, not to say that those things aren't related or interdependent. But it just makes sense to me as a really general, well-recognized form of social contract.
|
||||||
|
|
||||||
{{< i >}}
|
*Can you talk me through the way it functions? I think this connects to the distinction between code and covenant. How does it work? Maybe in an example or in general practice that you've seen? How does this function in the world?*
|
||||||
Can you talk me through the way it functions? I think this connects to the distinction between code and covenant. How does it work? Maybe in an example or in general practice that you've seen? How does this function in the world?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
The Contributor Covenant begins with a preamble which is basically a list of protected classes from a human rights perspective. This establishes the intent right off the bat---it's saying we are intending our community to recognize, understand, and remediate issues that people who fit these criteria often experience. So first of all, we're prioritizing the safety of the most vulnerable and those with the least agency. We're saying that right from the beginning.
|
The Contributor Covenant begins with a preamble which is basically a list of protected classes from a human rights perspective. This establishes the intent right off the bat---it's saying we are intending our community to recognize, understand, and remediate issues that people who fit these criteria often experience. So first of all, we're prioritizing the safety of the most vulnerable and those with the least agency. We're saying that right from the beginning.
|
||||||
|
|
||||||
@@ -87,9 +78,7 @@ From there, we go into some procedures around how to report a violation, and wha
|
|||||||
|
|
||||||
At the end, we're hinting that we want people to adapt, not just adopt, by saying this code of conduct is adapted from the Contributor Covenant, with a link to the permanent URL. We're going to make that a little bit more explicit with Contributor Covenant 3.0, but that's basically how it works. It's setting up, "Here's what we value, here's how we treat each other, here's what we do in case of conflict." At a high level, that's the purpose of a lot of governance documents. Right? Here's what we value. Here's how we treat each other. Here's how we operate. Here's why. And here's how.
|
At the end, we're hinting that we want people to adapt, not just adopt, by saying this code of conduct is adapted from the Contributor Covenant, with a link to the permanent URL. We're going to make that a little bit more explicit with Contributor Covenant 3.0, but that's basically how it works. It's setting up, "Here's what we value, here's how we treat each other, here's what we do in case of conflict." At a high level, that's the purpose of a lot of governance documents. Right? Here's what we value. Here's how we treat each other. Here's how we operate. Here's why. And here's how.
|
||||||
|
|
||||||
{{< i >}}
|
*How has this been adopted in practice? It's gone from being an insurgent project that encountered a lot of resistance, as you said, to becoming really widespread in the open source world. What kinds of doors opened? Were there particular moments you think of that revealed something about how the protocol was working?*
|
||||||
How has this been adopted in practice? It's gone from being an insurgent project that encountered a lot of resistance, as you said, to becoming really widespread in the open source world. What kinds of doors opened? Were there particular moments you think of that revealed something about how the protocol was working?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
In the beginning, say for the first 5-6 years, the presence of a code of conduct was a signal that the project leaders, the community leaders, cared about these shared values, had the intention of making their community welcoming and safe. However, with the widespread adoption of codes of conduct, it's become something that people don't think too much about until they have to. It has also become less of a signal, because the adoption is less intentional. Now, the reverse is true. A project without a code of conduct is a stronger signal than a project with one.
|
In the beginning, say for the first 5-6 years, the presence of a code of conduct was a signal that the project leaders, the community leaders, cared about these shared values, had the intention of making their community welcoming and safe. However, with the widespread adoption of codes of conduct, it's become something that people don't think too much about until they have to. It has also become less of a signal, because the adoption is less intentional. Now, the reverse is true. A project without a code of conduct is a stronger signal than a project with one.
|
||||||
|
|
||||||
@@ -97,16 +86,12 @@ In a sense, this is a victory, because we have normalized something that once wa
|
|||||||
|
|
||||||
Our relationship with equity has changed and gotten a little bit more complicated, and maybe a little bit more demanding. But the same could be said of governance across the board in digital communities---it requires a lot more work now than it did ten years ago. This is the reality we're facing, and it's something that needs to be continuously addressed and improved upon.
|
Our relationship with equity has changed and gotten a little bit more complicated, and maybe a little bit more demanding. But the same could be said of governance across the board in digital communities---it requires a lot more work now than it did ten years ago. This is the reality we're facing, and it's something that needs to be continuously addressed and improved upon.
|
||||||
|
|
||||||
{{< i >}}
|
*Have you had experiences of capture? When, for instance, has the covenant been used in ways that you didn't expect, and that you objected to?*
|
||||||
Have you had experiences of capture? When, for instance, has the covenant been used in ways that you didn't expect, and that you objected to?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
I've had questions about why certain communities have adopted it---communities whose work I think is not necessarily terribly pro-social. I've had mixed feelings about big adoptions by FAANG companies, for example. Facebook, Apple, Amazon, Netflix, Google. There have been companies whose business models are predicated on human rights abuses. I have mixed feelings about them using Contributor Covenant. But the way I reconcile it is that a lot of developers, a lot of technologists, and others are going to be interacting
|
I've had questions about why certain communities have adopted it---communities whose work I think is not necessarily terribly pro-social. I've had mixed feelings about big adoptions by FAANG companies, for example. Facebook, Apple, Amazon, Netflix, Google. There have been companies whose business models are predicated on human rights abuses. I have mixed feelings about them using Contributor Covenant. But the way I reconcile it is that a lot of developers, a lot of technologists, and others are going to be interacting
|
||||||
with the open source projects that these companies put out. I care more about the experience and equitable treatment of the people who are in a position where they are interacting with those projects, maybe because they have to. I care more about them than I care about Facebook itself, for instance. So objecting to Facebook's adoption would be negatively impactful on the tens of thousands of developers who use their frameworks.
|
with the open source projects that these companies put out. I care more about the experience and equitable treatment of the people who are in a position where they are interacting with those projects, maybe because they have to. I care more about them than I care about Facebook itself, for instance. So objecting to Facebook's adoption would be negatively impactful on the tens of thousands of developers who use their frameworks.
|
||||||
|
|
||||||
{{< i >}}
|
*Referring to these companies makes me wonder about the question of economy. You've more recently worked to build an organization around this around this work. But what has been the experience so far around supporting the work that goes into developing this project? Was there funding at the beginning? What kind of economic journey has this project been on?*
|
||||||
Referring to these companies makes me wonder about the question of economy. You've more recently worked to build an organization around this around this work. But what has been the experience so far around supporting the work that goes into developing this project? Was there funding at the beginning? What kind of economic journey has this project been on?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
The Organization for Ethical Source was founded with a grant from Omidyar, in conjunction with a partner organization. This interest was sparked by our work on the Hippocratic License, the Ethical Open Source license that's tied to the United Nations Declaration of Human Rights.
|
The Organization for Ethical Source was founded with a grant from Omidyar, in conjunction with a partner organization. This interest was sparked by our work on the Hippocratic License, the Ethical Open Source license that's tied to the United Nations Declaration of Human Rights.
|
||||||
|
|
||||||
@@ -118,9 +103,7 @@ I think it might be because the Contributor Covenant is now something that's tak
|
|||||||
|
|
||||||
This has been a challenge, but luckily the Organization for Ethical Source is scrappy and we're volunteer-led, so we're not going to let that stop us.
|
This has been a challenge, but luckily the Organization for Ethical Source is scrappy and we're volunteer-led, so we're not going to let that stop us.
|
||||||
|
|
||||||
{{< i >}}
|
*What have been some of the most important and material tasks or decisions over the course of the project? Were there particular pivot points?*
|
||||||
What have been some of the most important and material tasks or decisions over the course of the project? Were there particular pivot points?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
The addition of the Enforcement Guidelines were a pretty big milestone for the Contributor Covenant. A lot of the critiques people had were around codes of conduct being very divisive, as I mentioned from the get-go. And while sometimes those opinions were expressed through violence and threats of violence, I always tried to listen to what people were saying behind those threats, to understand what they were afraid of and see if there was anything I could do to make them less afraid.
|
The addition of the Enforcement Guidelines were a pretty big milestone for the Contributor Covenant. A lot of the critiques people had were around codes of conduct being very divisive, as I mentioned from the get-go. And while sometimes those opinions were expressed through violence and threats of violence, I always tried to listen to what people were saying behind those threats, to understand what they were afraid of and see if there was anything I could do to make them less afraid.
|
||||||
|
|
||||||
@@ -132,9 +115,7 @@ Including the Enforcement Guidelines seemed to address a lot of the feedback and
|
|||||||
|
|
||||||
Despite this pushback and even vitriol, I've tried to adapt to the changing conditions and demonstrate that, despite the Contributor Covenant's social justice origins, the underlying social justice concepts are pro-social and should not be controversial. I'm not asking someone to adopt an entire political agenda---I'm simply asking them not to discriminate against others and to treat each other as fellow human beings.
|
Despite this pushback and even vitriol, I've tried to adapt to the changing conditions and demonstrate that, despite the Contributor Covenant's social justice origins, the underlying social justice concepts are pro-social and should not be controversial. I'm not asking someone to adopt an entire political agenda---I'm simply asking them not to discriminate against others and to treat each other as fellow human beings.
|
||||||
|
|
||||||
{{< i >}}
|
*You mentioned the license licensure work, the work with the ethical source licenses. Could you say a bit about how that next phase of protocol development came about for you?*
|
||||||
You mentioned the license licensure work, the work with the ethical source licenses. Could you say a bit about how that next phase of protocol development came about for you?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
The impetus for creating the Hippocratic License 1.0, or even the alpha version that got so much attention in 2019, came from Mijente, the Latinx activist organization and immigrants' rights activist organization, and their "No Tech for ICE" campaign. This highlighted the issue for us. We saw that open source was being used and abused in ways that the open source community wouldn't accept, like an individual maintainer's software being used in extrajudicial killings. At least, we hoped they would be opposed to something like that.
|
The impetus for creating the Hippocratic License 1.0, or even the alpha version that got so much attention in 2019, came from Mijente, the Latinx activist organization and immigrants' rights activist organization, and their "No Tech for ICE" campaign. This highlighted the issue for us. We saw that open source was being used and abused in ways that the open source community wouldn't accept, like an individual maintainer's software being used in extrajudicial killings. At least, we hoped they would be opposed to something like that.
|
||||||
|
|
||||||
@@ -148,46 +129,34 @@ That's something we've contended with, and we've tried to address critiques of e
|
|||||||
|
|
||||||
The Hippocratic License has actually become very popular---the most popular sector of adopters is academic researchers. That's fascinating to me, even though it's not the intended use case we had in mind. It's really interesting to see what's happening with it in the real world.
|
The Hippocratic License has actually become very popular---the most popular sector of adopters is academic researchers. That's fascinating to me, even though it's not the intended use case we had in mind. It's really interesting to see what's happening with it in the real world.
|
||||||
|
|
||||||
{{< i >}}
|
*You talked about the enforcement there, and that's a point of contrast between the two designs. Right? The Contributor Covenant relies largely on the assumption that there's either an organization or a maintainer, somebody who is exercising a kind of community-scale enforcement power, and they have the ability to remove people, whereas the the Hippocratic license, the ethical source licenses, rely on a level of legal enforcement. Can you say a bit about how that that kind of dependency, so to speak, affects the design of the protocol?*
|
||||||
You talked about the enforcement there, and that's a point of contrast between the two designs. Right? The Contributor Covenant relies largely on the assumption that there's either an organization or a maintainer, somebody who is exercising a kind of community-scale enforcement power, and they have the ability to remove people, whereas the the Hippocratic license, the ethical source licenses, rely on a level of legal enforcement. Can you say a bit about how that that kind of dependency, so to speak, affects the design of the protocol?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
One of the key goals for the Ethical Source licenses that aligns perfectly with the Contributor Covenant's framework is to make the implicit explicit. The team wanted to ensure that the rights extended to the most vulnerable. Just like in the preamble of the Contributor Covenant, they are calling out specific protected classes as a priority for their community. The Hippocratic Code License 3 introduced an interesting provision on the enforcement side, which a lawyer would call a "supply chain impacted provision." This provision essentially states that if Facebook uses the code licensed under the Hippocratic License, and the use of that code results in human rights violations against a specific population, that population has the right to sue Facebook for damages. This inverts the power, giving the impacted people the opportunity to pursue legal action, which corporations would have to take seriously. As a maintainer of a JavaScript library, they would not sue Facebook for infringement of someone else's human rights. It wouldn't work. But if the people upon whom facial recognition software is used and abused choose to file a class-action lawsuit, that's something very different.
|
One of the key goals for the Ethical Source licenses that aligns perfectly with the Contributor Covenant's framework is to make the implicit explicit. The team wanted to ensure that the rights extended to the most vulnerable. Just like in the preamble of the Contributor Covenant, they are calling out specific protected classes as a priority for their community. The Hippocratic Code License 3 introduced an interesting provision on the enforcement side, which a lawyer would call a "supply chain impacted provision." This provision essentially states that if Facebook uses the code licensed under the Hippocratic License, and the use of that code results in human rights violations against a specific population, that population has the right to sue Facebook for damages. This inverts the power, giving the impacted people the opportunity to pursue legal action, which corporations would have to take seriously. As a maintainer of a JavaScript library, they would not sue Facebook for infringement of someone else's human rights. It wouldn't work. But if the people upon whom facial recognition software is used and abused choose to file a class-action lawsuit, that's something very different.
|
||||||
|
|
||||||
Licenses are the intersection of open source communities and corporations or institutions. Institutions can't be held to ethical standards that depend on their goodwill. Institutions have a different set of incentives than people do, and therefore the norms that we are establishing have to be incentivized differently. That means relying on legal regulation.
|
Licenses are the intersection of open source communities and corporations or institutions. Institutions can't be held to ethical standards that depend on their goodwill. Institutions have a different set of incentives than people do, and therefore the norms that we are establishing have to be incentivized differently. That means relying on legal regulation.
|
||||||
|
|
||||||
{{< i >}}
|
*The question of incentives has been running throughout the conversation. I hear that also in what you were describing about the signaling power of the Contributor Covenant. How much of that kind of thinking went into the design process explicitly? Or is it more a matter of observation after the fact?*
|
||||||
The question of incentives has been running throughout the conversation. I hear that also in what you were describing about the signaling power of the Contributor Covenant. How much of that kind of thinking went into the design process explicitly? Or is it more a matter of observation after the fact?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
II would say it was after the fact. I started writing Contributor Covenant in a moment of inspiration and a desire for righteous retribution. I was riled up by the state of the world and wanted to make a big impact and a big change in the way things were done.
|
II would say it was after the fact. I started writing Contributor Covenant in a moment of inspiration and a desire for righteous retribution. I was riled up by the state of the world and wanted to make a big impact and a big change in the way things were done.
|
||||||
|
|
||||||
But things have changed since then, and I've become more deliberative. Now that we have an org, we're very deliberative, doing more strategic thinking and less reactionary stuff. And that's just the natural evolution of a project like this. We're still staying true to our roots, of course, and to the values that inspired the original version. But the technosocial context has changed, and we have to adapt with it. What worked at the beginning won't work anymore. And that reflects our changing way of maintaining it. I hope that answers your question.
|
But things have changed since then, and I've become more deliberative. Now that we have an org, we're very deliberative, doing more strategic thinking and less reactionary stuff. And that's just the natural evolution of a project like this. We're still staying true to our roots, of course, and to the values that inspired the original version. But the technosocial context has changed, and we have to adapt with it. What worked at the beginning won't work anymore. And that reflects our changing way of maintaining it. I hope that answers your question.
|
||||||
|
|
||||||
{{< i >}}
|
*Yes, thank you. Finally, I'm curious about earlier legacies. You've talked in the context of the Contributor Covenant about earlier codes of conduct and with the licenses about the way open source in general is built on that foundation of licensing. But are there other kinds of precedents that you think of, that informed your motivation and your designs?*
|
||||||
Yes, thank you. Finally, I'm curious about earlier legacies. You've talked in the context of the Contributor Covenant about earlier codes of conduct and with the licenses about the way open source in general is built on that foundation of licensing. But are there other kinds of precedents that you think of, that informed your motivation and your designs?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
When I look back on it, I wouldn't say that there were specific things that directly inspired the language of Contributor Covenant 1.0 beyond fluency and the concepts. But in retrospect, I guess the circles I was moving in had more explicit norms.
|
When I look back on it, I wouldn't say that there were specific things that directly inspired the language of Contributor Covenant 1.0 beyond fluency and the concepts. But in retrospect, I guess the circles I was moving in had more explicit norms.
|
||||||
|
|
||||||
As a Gen Xer, I think we take a lot for granted. But through my interactions with later generations of technologists, I've found that people are more explicit about expressing boundaries verbally, introducing themselves, acknowledging their disabilities, and other norms that didn't happen when I was coming up. So the fact that these are norms with newer generations of technologists is inspiring and definitely influences what we're doing. It reminds us why we're trying to make the invisible visible and be open to different ways of expression and interaction as the world moves on. We have to adapt, you know?
|
As a Gen Xer, I think we take a lot for granted. But through my interactions with later generations of technologists, I've found that people are more explicit about expressing boundaries verbally, introducing themselves, acknowledging their disabilities, and other norms that didn't happen when I was coming up. So the fact that these are norms with newer generations of technologists is inspiring and definitely influences what we're doing. It reminds us why we're trying to make the invisible visible and be open to different ways of expression and interaction as the world moves on. We have to adapt, you know?
|
||||||
|
|
||||||
{{< i >}}
|
*Is there anything else you want to bring up before we wrap up?*
|
||||||
Is there anything else you want to bring up before we wrap up?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
Some protocols are very long-lived, and my favorite example is the MIDI protocol. It was established in 1983 and has only gone through one major revision, which was backwards compatible.
|
Some protocols are very long-lived, and my favorite example is the MIDI protocol. It was established in 1983 and has only gone through one major revision, which was backwards compatible.
|
||||||
|
|
||||||
I think the most effective and long-lived protocols make the fewest assumptions, are the most explicit, and are just as simple as the complexity of their domain will allow them to be. And I think we can take inspiration from those aspects of successful technical protocols and apply them to social, interpersonal protocols as well.
|
I think the most effective and long-lived protocols make the fewest assumptions, are the most explicit, and are just as simple as the complexity of their domain will allow them to be. And I think we can take inspiration from those aspects of successful technical protocols and apply them to social, interpersonal protocols as well.
|
||||||
|
|
||||||
{{< i >}}
|
*Is there a danger, though, in that narrowness of a tightly defined protocol, in the context of social protocols?*
|
||||||
Is there a danger, though, in that narrowness of a tightly defined protocol, in the context of social protocols?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
You just want to make sure that the protocol is capable of expressing the things that need to be expressed. Simplicity is not necessarily the same as filtering or losing data or losing resolution, or anything like that. The messages can be very rich, meaning the activities can be very rich. What's passing through the protocol can be very rich, even with a simple protocol. Telephones operate on that principle. Telephones don't care what you say, but they're gonna get that voice communication across the wire right.
|
You just want to make sure that the protocol is capable of expressing the things that need to be expressed. Simplicity is not necessarily the same as filtering or losing data or losing resolution, or anything like that. The messages can be very rich, meaning the activities can be very rich. What's passing through the protocol can be very rich, even with a simple protocol. Telephones operate on that principle. Telephones don't care what you say, but they're gonna get that voice communication across the wire right.
|
||||||
|
|
||||||
{{< i >}}
|
*Yeah, or the modem communication across the wire. You can do all sorts of things.*
|
||||||
Yeah, or the modem communication across the wire. You can do all sorts of things.
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
And that's the beauty of protocols: they're fundamental and they become infrastructure---if they're effective, they become infrastructure. Not to say that we don't want to pay attention to them. They require maintenance. All infrastructure requires maintenance. But you're successful when it becomes when it becomes a normal way of doing things.
|
And that's the beauty of protocols: they're fundamental and they become infrastructure---if they're effective, they become infrastructure. Not to say that we don't want to pay attention to them. They require maintenance. All infrastructure requires maintenance. But you're successful when it becomes when it becomes a normal way of doing things.
|
@@ -1,34 +1,31 @@
|
|||||||
---
|
---
|
||||||
narrator: Amanda Kiessel
|
narrator: Amanda Kiessel
|
||||||
subject: Good Market
|
subject: Community standards
|
||||||
facilitator: Nathan Schneider
|
facilitator: Nathan Schneider
|
||||||
date: 2024-10-29
|
date: 2024-10-29
|
||||||
approved: 2024-12-16
|
approved: 2024-12-16
|
||||||
summary: "Good Market is a digital commons for enterprises that prioritize people and the planet over profit. It enables communities to set and enforce their own standards for doing business."
|
summary: "Good Market is a digital commons for enterprises that prioritize people and the planet over profit. It enables communities to set and enforce their own standards for doing business."
|
||||||
tags: [economics, organizations, ecology, standards]
|
location: "Sri Lanka / United States"
|
||||||
|
#headshot: "placeholder-headshot.png"
|
||||||
|
topics: [economics, organizations, ecology, standards]
|
||||||
|
links:
|
||||||
|
- text: "Good Market"
|
||||||
|
url: "https://goodmarket.global"
|
||||||
---
|
---
|
||||||
|
|
||||||
{{< i >}}
|
*I want to begin with the question of how you like to introduce yourself. How do you introduce yourself to somebody you've just met? Where do you begin?*
|
||||||
I want to begin with the question of how you like to introduce yourself. How do you introduce yourself to somebody you've just met? Where do you begin?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
It changes with every single context. But the general introduction for right now is that I'm part of Good Market, which is a digital commons. That's usually my introduction at the moment.
|
It changes with every single context. But the general introduction for right now is that I'm part of Good Market, which is a digital commons. That's usually my introduction at the moment.
|
||||||
|
|
||||||
{{< i >}}
|
*Part of?*
|
||||||
Part of?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
Yes, I say, "I'm part of." I'm a co-creator. This is a collective effort so "part of" feels more right.
|
Yes, I say, "I'm part of." I'm a co-creator. This is a collective effort so "part of" feels more right.
|
||||||
|
|
||||||
{{< i >}}
|
*How would you outline the trajectory of your life and career? Where did you start? And where do you see yourself now?*
|
||||||
How would you outline the trajectory of your life and career? Where did you start? And where do you see yourself now?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
I started with ecological systems. My training and early work was environmental toxicology and agroecology---what we would now call regenerative agriculture. I was very concerned about environmental problems, especially the intersections of environmental issues and social justice. So that was the earliest work.
|
I started with ecological systems. My training and early work was environmental toxicology and agroecology---what we would now call regenerative agriculture. I was very concerned about environmental problems, especially the intersections of environmental issues and social justice. So that was the earliest work.
|
||||||
|
|
||||||
{{< i >}}
|
*What were the specific contexts of that work?*
|
||||||
What were the specific contexts of that work?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
I was involved in ecotoxicology research connected to a Superfund site. After that, I taught at a local university in rural Thailand for a couple of years and became more focused on agriculture issues and community development. I came back to the US briefly for a Masters program, and after that, I joined a local organization in Sri Lanka that primarily worked in agricultural areas.
|
I was involved in ecotoxicology research connected to a Superfund site. After that, I taught at a local university in rural Thailand for a couple of years and became more focused on agriculture issues and community development. I came back to the US briefly for a Masters program, and after that, I joined a local organization in Sri Lanka that primarily worked in agricultural areas.
|
||||||
|
|
||||||
@@ -40,9 +37,7 @@ When I was in university, I was focused more on the ecological side of things, t
|
|||||||
|
|
||||||
The current phase of my work pulls on all of those experiences, but it's much more about understanding our current economic system, looking at the root causes of our ecological and social issues, and finding leverage points that we can work on collectively to address those root causes. The work I'm doing now is very much around shifting economic systems so they are good for people and planet. So, that's the trajectory---ecological systems to social systems to economic systems.
|
The current phase of my work pulls on all of those experiences, but it's much more about understanding our current economic system, looking at the root causes of our ecological and social issues, and finding leverage points that we can work on collectively to address those root causes. The work I'm doing now is very much around shifting economic systems so they are good for people and planet. So, that's the trajectory---ecological systems to social systems to economic systems.
|
||||||
|
|
||||||
{{< i >}}
|
*And what was the story of the creation of Good Market?*
|
||||||
And what was the story of the creation of Good Market?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
It came out of experiences with the local organization in Sri Lanka. During the war, many of the communities we worked with were displaced. The organization was involved in emergency relief and resettlement work and became dependent on international aid. When the ceasefire was signed, they expected all of their funding to stop. I was asked to join to help with the transition to a more self-sustaining model, so they could continue the community work without international aid. I had some background in fair trade and what we now call social enterprise and I was supporting the local district teams. We were making good progress, but then after the tsunami and after the war restarted, the focus shifted back to emergency relief, and a new wave of international aid entered the country.
|
It came out of experiences with the local organization in Sri Lanka. During the war, many of the communities we worked with were displaced. The organization was involved in emergency relief and resettlement work and became dependent on international aid. When the ceasefire was signed, they expected all of their funding to stop. I was asked to join to help with the transition to a more self-sustaining model, so they could continue the community work without international aid. I had some background in fair trade and what we now call social enterprise and I was supporting the local district teams. We were making good progress, but then after the tsunami and after the war restarted, the focus shifted back to emergency relief, and a new wave of international aid entered the country.
|
||||||
|
|
||||||
@@ -54,21 +49,15 @@ That is the origin. It was realizing how big and interconnected this movement is
|
|||||||
|
|
||||||
I wanted to work on something that wasn't donor-dependent or project-focused and I was interested in supporting groups that were working on social and environmental issues with self-sustaining models.
|
I wanted to work on something that wasn't donor-dependent or project-focused and I was interested in supporting groups that were working on social and environmental issues with self-sustaining models.
|
||||||
|
|
||||||
{{< i >}}
|
*How would you summarize what Good Market does?*
|
||||||
How would you summarize what Good Market does?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
What we are doing now is making the broader movement of self-sustaining enterprises and networks more visible. We are making it easier for these groups to find and connect with each other, and to collaborate on systems change, whether that's changing the narrative or changing rules and policies. Our goal is to create a digital commons that is shared by all the groups using it.
|
What we are doing now is making the broader movement of self-sustaining enterprises and networks more visible. We are making it easier for these groups to find and connect with each other, and to collaborate on systems change, whether that's changing the narrative or changing rules and policies. Our goal is to create a digital commons that is shared by all the groups using it.
|
||||||
|
|
||||||
{{< i >}}
|
*What do the groups have to do to be part of it?*
|
||||||
What do the groups have to do to be part of it?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
It's a commons, so there's a very clear boundary. That's been there from the very beginning. There are community-owned minimum standards for each sector of the economy. There's a free online application form. It's free to be included, but the standards are a very critical part of the process. And then there's a crowdsourced monitoring system. So to be included, participants have to fill the free online form, meet the community-owned standards, and have a public profile on the site.
|
It's a commons, so there's a very clear boundary. That's been there from the very beginning. There are community-owned minimum standards for each sector of the economy. There's a free online application form. It's free to be included, but the standards are a very critical part of the process. And then there's a crowdsourced monitoring system. So to be included, participants have to fill the free online form, meet the community-owned standards, and have a public profile on the site.
|
||||||
|
|
||||||
{{< i >}}
|
*Are those standards things that groups usually already have in place, and are monitoring? Is it something that they already have in place before they come to you, before you encounter these groups? Or are they developing these kinds of practices in relationship to the platform?*
|
||||||
Are those standards things that groups usually already have in place, and are monitoring? Is it something that they already have in place before they come to you, before you encounter these groups? Or are they developing these kinds of practices in relationship to the platform?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
It varies. The minimum standards are designed to be accessible and work across regions, languages, and business types---social enterprises, cooperatives, not-for-profits, responsible businesses, and initiatives that aren't legally registered. For people signing up because they identify as part of the movement, meeting the standards is very straightforward. They are fully aligned with these values and they often go way beyond the minimum requirements.
|
It varies. The minimum standards are designed to be accessible and work across regions, languages, and business types---social enterprises, cooperatives, not-for-profits, responsible businesses, and initiatives that aren't legally registered. For people signing up because they identify as part of the movement, meeting the standards is very straightforward. They are fully aligned with these values and they often go way beyond the minimum requirements.
|
||||||
|
|
||||||
@@ -76,9 +65,7 @@ If people are signing up because they are trying to access a specific benefit or
|
|||||||
|
|
||||||
For those who are already in this space, the minimum standards are a relatively easy bar to clear. For those who aren't thinking about their impact on people and the planet yet, the goal is to encourage them and support them on this journey.
|
For those who are already in this space, the minimum standards are a relatively easy bar to clear. For those who aren't thinking about their impact on people and the planet yet, the goal is to encourage them and support them on this journey.
|
||||||
|
|
||||||
{{< i >}}
|
*How would how would you characterize the difference between these kinds of standards and, say, the fair trade labels that people might be more familiar with?*
|
||||||
How would how would you characterize the difference between these kinds of standards and, say, the fair trade labels that people might be more familiar with?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
These standards are just minimum standards that enable people to be part of the digital commons, but there are many networks that use the site that have additional criteria. To join their network pages, enterprises have to meet additional standards. For example, World Fair Trade Organization, Fair Trade Federation, and B Lab, which offers B Corp certification, all have network pages on the digital commons. Enterprises in those networks have all met additional standards and go through their verification or certification processes.
|
These standards are just minimum standards that enable people to be part of the digital commons, but there are many networks that use the site that have additional criteria. To join their network pages, enterprises have to meet additional standards. For example, World Fair Trade Organization, Fair Trade Federation, and B Lab, which offers B Corp certification, all have network pages on the digital commons. Enterprises in those networks have all met additional standards and go through their verification or certification processes.
|
||||||
|
|
||||||
@@ -88,9 +75,7 @@ The enterprises that have third-party certification only represent a small perce
|
|||||||
|
|
||||||
This is set up as a minimum level of recognition. It's built in a neutral way that lots of people can use because it's shared infrastructure. It gets used in very different ways by different networks and communities.
|
This is set up as a minimum level of recognition. It's built in a neutral way that lots of people can use because it's shared infrastructure. It gets used in very different ways by different networks and communities.
|
||||||
|
|
||||||
{{< i >}}
|
*How involved were participating groups in designing the model?*
|
||||||
How involved were participating groups in designing the model?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
The idea for an online platform came from discussions with all those groups I mentioned earlier, the people we visited in different countries. They wanted a space where they could be visible, connect, and share best practices. But software development can have high upfront costs, and because of the experiences during the tsunami and the war, we were very aware of the risks associated with different types of funding. We'd seen expensive donor-funded software platforms that became ghost towns after the project funding ran out. We'd also seen platforms that took on what gets called "impact investment" and were pushed to become more profit-oriented. We didn't want to take on funding that could lead to mission drift or cause it to become pulled away from the community.
|
The idea for an online platform came from discussions with all those groups I mentioned earlier, the people we visited in different countries. They wanted a space where they could be visible, connect, and share best practices. But software development can have high upfront costs, and because of the experiences during the tsunami and the war, we were very aware of the risks associated with different types of funding. We'd seen expensive donor-funded software platforms that became ghost towns after the project funding ran out. We'd also seen platforms that took on what gets called "impact investment" and were pushed to become more profit-oriented. We didn't want to take on funding that could lead to mission drift or cause it to become pulled away from the community.
|
||||||
|
|
||||||
@@ -100,9 +85,7 @@ The intention was just to test the concept. We thought there would be about ten
|
|||||||
|
|
||||||
Even after we had the initial software functionality, we told people we were beta testing in Sri Lanka. We wanted to make sure it worked across all sectors---agriculture, fishing, mining, renewable energy, tourism, tech, and all kinds of services. Once it began expanding globally, we focused on serving different enterprise networks. The enterprises signing up were usually invited by those networks or by other enterprises that used the site. Today, it includes enterprises across economic sectors, registration types, languages, and regions. The form can be filled in twenty-two languages and there are enterprises and networks from nearly 120 countries.
|
Even after we had the initial software functionality, we told people we were beta testing in Sri Lanka. We wanted to make sure it worked across all sectors---agriculture, fishing, mining, renewable energy, tourism, tech, and all kinds of services. Once it began expanding globally, we focused on serving different enterprise networks. The enterprises signing up were usually invited by those networks or by other enterprises that used the site. Today, it includes enterprises across economic sectors, registration types, languages, and regions. The form can be filled in twenty-two languages and there are enterprises and networks from nearly 120 countries.
|
||||||
|
|
||||||
{{< i >}}
|
*What kinds of inputs informed the design of the marketplace?*
|
||||||
What kinds of inputs informed the design of the marketplace?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
There were many co-creators, but there were three of us who really served as stewards and we all had been working for that same local organization for almost ten years. So we all had experience with community-based organizations like revolving loan funds, funeral societies, women's welfare associations, producer cooperatives, and groups managing natural resource commons. We had learned about mobilizing people for collective action, developing self-sustaining models, and building trust through transparency and clear community rules. These experiences informed the design process, even though we didn’t explicitly plan it that way. It was only much later when I was re-reading something from Elinor Ostrom that I realized our design followed the eight principles for governing common resources.
|
There were many co-creators, but there were three of us who really served as stewards and we all had been working for that same local organization for almost ten years. So we all had experience with community-based organizations like revolving loan funds, funeral societies, women's welfare associations, producer cooperatives, and groups managing natural resource commons. We had learned about mobilizing people for collective action, developing self-sustaining models, and building trust through transparency and clear community rules. These experiences informed the design process, even though we didn’t explicitly plan it that way. It was only much later when I was re-reading something from Elinor Ostrom that I realized our design followed the eight principles for governing common resources.
|
||||||
|
|
||||||
@@ -110,9 +93,7 @@ Diversity was a big consideration. The goal was to increase visibility across di
|
|||||||
|
|
||||||
Inclusion was also a crucial design consideration. It had to work for people who don’t speak English or use computers, but only have access to a mobile phone. We started by testing the software with people who lived in the city, had international exposure, and used computers, but we didn't consider it ready until we started getting applications submitted in Sinhala and Tamil by mobile phone from rural areas. That's when you know the design works.
|
Inclusion was also a crucial design consideration. It had to work for people who don’t speak English or use computers, but only have access to a mobile phone. We started by testing the software with people who lived in the city, had international exposure, and used computers, but we didn't consider it ready until we started getting applications submitted in Sinhala and Tamil by mobile phone from rural areas. That's when you know the design works.
|
||||||
|
|
||||||
{{< i >}}
|
*Have the standards been subject to ongoing evolution? How are those standards developed, and who governs them?*
|
||||||
Have the standards been subject to ongoing evolution? How are those standards developed, and who governs them?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
There are a few basic principles that don't really change. Members prioritize people and the planet over short-term profit maximization, have a purpose that includes social or environmental goals, communicate about how they are good for people and planet, and have a sustainability strategy that goes beyond a one-time project or event.
|
There are a few basic principles that don't really change. Members prioritize people and the planet over short-term profit maximization, have a purpose that includes social or environmental goals, communicate about how they are good for people and planet, and have a sustainability strategy that goes beyond a one-time project or event.
|
||||||
|
|
||||||
@@ -120,9 +101,7 @@ The minimum sector standards are standards for each sector of the economy and th
|
|||||||
|
|
||||||
These minimum standards serve as the low bar, and from there, other certifications or networks can have higher levels of criteria. Networks are able to use the site to manage their networks and have their own additional standards and verification systems.
|
These minimum standards serve as the low bar, and from there, other certifications or networks can have higher levels of criteria. Networks are able to use the site to manage their networks and have their own additional standards and verification systems.
|
||||||
|
|
||||||
{{< i >}}
|
*What kinds of patterns have you noticed in the interactions among these these groups as they're setting standards? What kinds of dynamics emerge as people are developing and choosing their the standards that they're going to enforce for themselves?*
|
||||||
What kinds of patterns have you noticed in the interactions among these these groups as they're setting standards? What kinds of dynamics emerge as people are developing and choosing their the standards that they're going to enforce for themselves?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
One pattern is that many groups start with a narrow focus in one area and then recognize the need to be more holistic in their approach as they engage in dialogue and explore the space further. For instance, some groups that were previously focused solely on social impact have started to recognize the connection between social and environmental aspects, leading to a more comprehensive approach.
|
One pattern is that many groups start with a narrow focus in one area and then recognize the need to be more holistic in their approach as they engage in dialogue and explore the space further. For instance, some groups that were previously focused solely on social impact have started to recognize the connection between social and environmental aspects, leading to a more comprehensive approach.
|
||||||
|
|
||||||
@@ -130,9 +109,7 @@ I've also noticed an increased openness to collaboration across what were once s
|
|||||||
|
|
||||||
I can provide a specific example if it would be helpful.
|
I can provide a specific example if it would be helpful.
|
||||||
|
|
||||||
{{< i >}}
|
*Please.*
|
||||||
Please.
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
The Social Enterprise World Forum works with social enterprise networks around the world. Most countries don't have a separate legal registration for social enterprises, so it can be difficult to identify them. SEWF worked with national networks to develop shared characteristics and a shared definition, and they wanted to establish a global verification for social enterprises that complemented existing local systems.
|
The Social Enterprise World Forum works with social enterprise networks around the world. Most countries don't have a separate legal registration for social enterprises, so it can be difficult to identify them. SEWF worked with national networks to develop shared characteristics and a shared definition, and they wanted to establish a global verification for social enterprises that complemented existing local systems.
|
||||||
|
|
||||||
@@ -142,9 +119,7 @@ After a community feedback and review process, they changed the name of the veri
|
|||||||
|
|
||||||
I'm seeing this trend in many different spaces, where groups that were once focused on their own "tribe" are now recognizing the value of bridging across and working with other groups. Community identity and trust-building are still important within their group, but they're more open to collaboration and cooperation with others.
|
I'm seeing this trend in many different spaces, where groups that were once focused on their own "tribe" are now recognizing the value of bridging across and working with other groups. Community identity and trust-building are still important within their group, but they're more open to collaboration and cooperation with others.
|
||||||
|
|
||||||
{{< i >}}
|
*How does the platform or the organization support the verification process?*
|
||||||
How does the platform or the organization support the verification process?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
They use the minimum standards and the free online application as the first step of the process. This works well because it is a free first step. Even if an organization isn't eligible for verification yet, they still benefit from having a public profile. They have a positive feeling and something to work towards in the future.
|
They use the minimum standards and the free online application as the first step of the process. This works well because it is a free first step. Even if an organization isn't eligible for verification yet, they still benefit from having a public profile. They have a positive feeling and something to work towards in the future.
|
||||||
|
|
||||||
@@ -154,9 +129,7 @@ Because Good Market is a digital commons it's set up as a shared resource. When
|
|||||||
|
|
||||||
Now, when other networks want to collect information or implement a verification or certification process, they can use the existing infrastructure. People and Planet First has also mobilized funds and invested in new functionality like activity tracking systems and the ability to download certificates, which benefits others using the system. This is how the shared infrastructure has been working, allowing different groups to contribute to and benefit from its development.
|
Now, when other networks want to collect information or implement a verification or certification process, they can use the existing infrastructure. People and Planet First has also mobilized funds and invested in new functionality like activity tracking systems and the ability to download certificates, which benefits others using the system. This is how the shared infrastructure has been working, allowing different groups to contribute to and benefit from its development.
|
||||||
|
|
||||||
{{< i >}}
|
*How does it help uphold the standards that communities set? What is the process for enforcing those standards?*
|
||||||
How does it help uphold the standards that communities set? What is the process for enforcing those standards?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
They are also able to use the crowdsourced monitoring system to flag the standards, but they have their own review process. I think that's a crucial aspect. Different contexts require different approaches. What works for one community may not work for another.
|
They are also able to use the crowdsourced monitoring system to flag the standards, but they have their own review process. I think that's a crucial aspect. Different contexts require different approaches. What works for one community may not work for another.
|
||||||
|
|
||||||
@@ -164,9 +137,7 @@ By giving each group the autonomy to decide what works best for their community,
|
|||||||
|
|
||||||
At the same time, having a common infrastructure allows them to keep their information organized and accessible, while still providing the flexibility to adapt and evolve their processes as needed. This balance between standardization and customization is key to making these systems effective and sustainable.
|
At the same time, having a common infrastructure allows them to keep their information organized and accessible, while still providing the flexibility to adapt and evolve their processes as needed. This balance between standardization and customization is key to making these systems effective and sustainable.
|
||||||
|
|
||||||
{{< i >}}
|
*Is there a particular moment when you saw this system being tested, when you saw it confront its own limits or face challenges that community had to rally around solving?*
|
||||||
Is there a particular moment when you saw this system being tested, when you saw it confront its own limits or face challenges that community had to rally around solving?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
It has been non-stop, but that's what makes it fun. I don't see the obstacles as challenges, but rather as opportunities to learn and adapt. Every time something new comes up, it's a chance to think, "Okay, we hadn't thought of this. How can we address it?" It's a process of continuous learning and evolution.
|
It has been non-stop, but that's what makes it fun. I don't see the obstacles as challenges, but rather as opportunities to learn and adapt. Every time something new comes up, it's a chance to think, "Okay, we hadn't thought of this. How can we address it?" It's a process of continuous learning and evolution.
|
||||||
|
|
||||||
@@ -176,9 +147,7 @@ One of the key questions we had was whether the crowdsourced monitoring system w
|
|||||||
|
|
||||||
It's been an evolution, with each new development and each new group that joins, we ask ourselves, "Does it work at this level? Does it work with this type of group?" It's been a fun and exciting journey, and I'm grateful to have been a part of it.
|
It's been an evolution, with each new development and each new group that joins, we ask ourselves, "Does it work at this level? Does it work with this type of group?" It's been a fun and exciting journey, and I'm grateful to have been a part of it.
|
||||||
|
|
||||||
{{< i >}}
|
*In a context when somebody's flagging somebody else, what does the procedure look like?*
|
||||||
In a context when somebody's flagging somebody else, what does the procedure look like?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
While it's less common now than it was in the early days, issues can still arise. The upfront process has improved significantly, making it more likely to catch potential problems early on. The initial application form has been refined and improved over time, reducing the likelihood of issues slipping through. That being said, there are still cases where a change in ownership, management, or governance, or a significant influx of financial capital, can cause a group to lose sight of their original values and mission. This is where crowdsourced monitoring comes in.
|
While it's less common now than it was in the early days, issues can still arise. The upfront process has improved significantly, making it more likely to catch potential problems early on. The initial application form has been refined and improved over time, reducing the likelihood of issues slipping through. That being said, there are still cases where a change in ownership, management, or governance, or a significant influx of financial capital, can cause a group to lose sight of their original values and mission. This is where crowdsourced monitoring comes in.
|
||||||
|
|
||||||
@@ -188,9 +157,7 @@ We've had instances where workers have flagged their own organization, suppliers
|
|||||||
|
|
||||||
When we first started, the concept was new and Sri Lankan enterprises were applying because they were trying to access market opportunities. Now, most applicants know the concept and they understand what the standards are before they sign up. This has reduced the number of flagging issues and makes them easier to resolve. Most groups are deeply committed to prioritizing people and planet. They are are more likely to take corrective action and resolve any problems that arise. They want to make it right. They care about it.
|
When we first started, the concept was new and Sri Lankan enterprises were applying because they were trying to access market opportunities. Now, most applicants know the concept and they understand what the standards are before they sign up. This has reduced the number of flagging issues and makes them easier to resolve. Most groups are deeply committed to prioritizing people and planet. They are are more likely to take corrective action and resolve any problems that arise. They want to make it right. They care about it.
|
||||||
|
|
||||||
{{< i >}}
|
*In the fair trade movement, there has always been a give and take between a certain set of values and the temptation to compromise for adoption---especially when certification processes are funded by the certified organizations. There's always this threat of capture, of a certification being used in ways that the people who devised it didn't intend. Does that experience of capture resonate with you as something that you've had to deal with?*
|
||||||
In the fair trade movement, there has always been a give and take between a certain set of values and the temptation to compromise for adoption---especially when certification processes are funded by the certified organizations. There's always this threat of capture, of a certification being used in ways that the people who devised it didn't intend. Does that experience of capture resonate with you as something that you've had to deal with?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
Yes, it resonates with my earlier experiences in both organic and fair trade. I've seen how certification systems can be co-opted by companies that don't necessarily share the values and principles that underpin the movement.
|
Yes, it resonates with my earlier experiences in both organic and fair trade. I've seen how certification systems can be co-opted by companies that don't necessarily share the values and principles that underpin the movement.
|
||||||
|
|
||||||
@@ -200,9 +167,7 @@ Similarly, the early organic community had a deeply holistic approach and includ
|
|||||||
|
|
||||||
These are patterns we need to learn from. It's part of the reason the People and Planet First verification was developed. The five standards that underpin the verification were designed to prevent co-optation. Verified enterprises have to exist to solve a social or environmental problem, reinvest the majority of their surplus towards their purpose, and have a structure that protects their purpose over time. Profit-maximizing companies aren't able to meet those criteria.
|
These are patterns we need to learn from. It's part of the reason the People and Planet First verification was developed. The five standards that underpin the verification were designed to prevent co-optation. Verified enterprises have to exist to solve a social or environmental problem, reinvest the majority of their surplus towards their purpose, and have a structure that protects their purpose over time. Profit-maximizing companies aren't able to meet those criteria.
|
||||||
|
|
||||||
{{< i >}}
|
*Have you paid a price for setting the standards the way you have in terms of limiting your reach?*
|
||||||
Have you paid a price for setting the standards the way you have in terms of limiting your reach?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
We haven't had to pay a price in terms of the actual standards. The entire purpose of the digital commons is to speed up the transition to an economy that's good for people and the planet. Having a clear boundary is critical for increasing the visibility of the movement. It builds trust and a sense of shared ownership and that has expanded reach.
|
We haven't had to pay a price in terms of the actual standards. The entire purpose of the digital commons is to speed up the transition to an economy that's good for people and the planet. Having a clear boundary is critical for increasing the visibility of the movement. It builds trust and a sense of shared ownership and that has expanded reach.
|
||||||
|
|
||||||
@@ -210,9 +175,7 @@ The price we've paid is more related to inclusion, which is common in this space
|
|||||||
|
|
||||||
Financially, it would have been easier to pilot this type of initiative in a place like Europe or the US, but we chose to test in Sri Lanka because it needed to work for people who don't speak English and don't have access to computers. We were only able to start testing the revenue model once we began expanding to countries where more enterprises have the ability to pay.
|
Financially, it would have been easier to pilot this type of initiative in a place like Europe or the US, but we chose to test in Sri Lanka because it needed to work for people who don't speak English and don't have access to computers. We were only able to start testing the revenue model once we began expanding to countries where more enterprises have the ability to pay.
|
||||||
|
|
||||||
{{< i >}}
|
*What is the platform's primary engine for economic sustainability?*
|
||||||
What is the platform's primary engine for economic sustainability?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
This initiative is different from others I've been involved in. Most of the things I've worked on have been revenue-generating from the start. With software, there's a big upfront cost, but the cost to scale and sustain is relatively small. We've had to invest a lot to get the software up and running, but the revenue from the marketplace events and shops in Sri Lanka helped to subsidize the software development costs.
|
This initiative is different from others I've been involved in. Most of the things I've worked on have been revenue-generating from the start. With software, there's a big upfront cost, but the cost to scale and sustain is relatively small. We've had to invest a lot to get the software up and running, but the revenue from the marketplace events and shops in Sri Lanka helped to subsidize the software development costs.
|
||||||
|
|
||||||
@@ -222,9 +185,7 @@ It's also possible for approved enterprises to receive payments through the site
|
|||||||
|
|
||||||
Subscriptions and marketplace transactions are growing, but that will take time. In the meantime, there are many networks wanting additional functionality. They're mobilizing funds to invest in software development, and that's helping to cover costs for now.
|
Subscriptions and marketplace transactions are growing, but that will take time. In the meantime, there are many networks wanting additional functionality. They're mobilizing funds to invest in software development, and that's helping to cover costs for now.
|
||||||
|
|
||||||
{{< i >}}
|
*What have been some of your most important decisions, you, either individually or collectively, in the in the process of building this framework and and an organization, and what prepared you for making those decisions?*
|
||||||
What have been some of your most important decisions, you, either individually or collectively, in the in the process of building this framework and and an organization, and what prepared you for making those decisions?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
The key to building a community-driven initiative is recognizing that it's a never-ending, ongoing process. Every decision feels like the most important decision at the time. It requires being attuned to how things are evolving and changing, and being able to pivot and adapt constantly.
|
The key to building a community-driven initiative is recognizing that it's a never-ending, ongoing process. Every decision feels like the most important decision at the time. It requires being attuned to how things are evolving and changing, and being able to pivot and adapt constantly.
|
||||||
|
|
||||||
@@ -234,9 +195,7 @@ This has made it easier to navigate challenges. It's about being present and lis
|
|||||||
|
|
||||||
I could really feel the impact of these experiences during the pandemic, when I was talking to other organizations that were struggling. Having gone through so much change in the past, I was able to be in a good listening space and provide support to those who were trying to figure out transitions. I know how hard it is, and I was able to be more present for them.
|
I could really feel the impact of these experiences during the pandemic, when I was talking to other organizations that were struggling. Having gone through so much change in the past, I was able to be in a good listening space and provide support to those who were trying to figure out transitions. I know how hard it is, and I was able to be more present for them.
|
||||||
|
|
||||||
{{< i >}}
|
*You're in some respects creating something new with a platform, a digital tool, but you're also building on existing communities. Do you see Good Market as continuous with or departing from pre-existing legacies in the communities you're working with?*
|
||||||
You're in some respects creating something new with a platform, a digital tool, but you're also building on existing communities. Do you see Good Market as continuous with or departing from pre-existing legacies in the communities you're working with?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
I absolutely see our work as a continuation of the efforts of those who came before. We're building on the lessons learned from community organizing in Sri Lanka and other traditional communities. This way of working is not new, but we're adapting it to the current context and using digital tools to enable it.
|
I absolutely see our work as a continuation of the efforts of those who came before. We're building on the lessons learned from community organizing in Sri Lanka and other traditional communities. This way of working is not new, but we're adapting it to the current context and using digital tools to enable it.
|
||||||
|
|
||||||
@@ -244,9 +203,7 @@ What's exciting about this approach is that allows for both bonding and bridging
|
|||||||
|
|
||||||
The digital aspect of this work also enables bridging between communities and networks. Even if groups have different specialties or approaches, they may have shared interests or leverage points that can be used to drive change. The digital commons makes it possible for these groups to come together, share information, and collaborate on issues that matter to them. It also makes it easier to fill gaps. People can find products or services or solutions that aren't available in their area. That can be really fun.
|
The digital aspect of this work also enables bridging between communities and networks. Even if groups have different specialties or approaches, they may have shared interests or leverage points that can be used to drive change. The digital commons makes it possible for these groups to come together, share information, and collaborate on issues that matter to them. It also makes it easier to fill gaps. People can find products or services or solutions that aren't available in their area. That can be really fun.
|
||||||
|
|
||||||
{{< i >}}
|
*Is the language of "protocol" something that you've used in in this work? You're working across many languages. What kind of words do you use to describe Good Market? You talked earlier about the commons, for instance.*
|
||||||
Is the language of "protocol" something that you've used in in this work? You're working across many languages. What kind of words do you use to describe Good Market? You talked earlier about the commons, for instance.
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
When working with software engineers, I'll use more technical terms like "protocol." Beyond that, we try to use more accessible language that resonates with people. We talk about "community rules" and "minimum standards," which are more relatable and effective.
|
When working with software engineers, I'll use more technical terms like "protocol." Beyond that, we try to use more accessible language that resonates with people. We talk about "community rules" and "minimum standards," which are more relatable and effective.
|
||||||
|
|
||||||
@@ -256,9 +213,7 @@ Initially, it was hard to find the right words to describe the different types o
|
|||||||
|
|
||||||
We use the term "network" to describe an enterprise that works with many other enterprises. This can include member organizations, certification bodies, and community-owned spaces. These terms have worked well, but it's taken time to find the right language that can bridge across different divides and be used effectively across the community.
|
We use the term "network" to describe an enterprise that works with many other enterprises. This can include member organizations, certification bodies, and community-owned spaces. These terms have worked well, but it's taken time to find the right language that can bridge across different divides and be used effectively across the community.
|
||||||
|
|
||||||
{{< i >}}
|
*What is holding this kind of model back from becoming more widespread than it is?*
|
||||||
What is holding this kind of model back from becoming more widespread than it is?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
We've seen a significant financialization of our economic system, resulting in a huge concentration of wealth and power. This has made it increasingly challenging to undertake this type of work. The current system's rules and regulations only exacerbate the difficulties. There are deep-seated, structural issues that make it hard to effect change.
|
We've seen a significant financialization of our economic system, resulting in a huge concentration of wealth and power. This has made it increasingly challenging to undertake this type of work. The current system's rules and regulations only exacerbate the difficulties. There are deep-seated, structural issues that make it hard to effect change.
|
||||||
|
|
||||||
@@ -268,17 +223,13 @@ I think there are people who initially believed they could create change through
|
|||||||
|
|
||||||
An example of a shared challenge is access to financing and appropriate financial services. Mainstream finance is focused on maximizing profits and endless growth. Even in the impact investment space, the dominant narrative is that it's possible to have social and environmental impact *and* market-rate returns. For many of the enterprises we're serving, this narrative is detrimental. They are looking for patient, non-extractive finance that serves their actual needs. While many enterprises are finding creative ways to generate revenue from the start, others---especially those working on large community infrastructure projects---require financing to get off the ground.
|
An example of a shared challenge is access to financing and appropriate financial services. Mainstream finance is focused on maximizing profits and endless growth. Even in the impact investment space, the dominant narrative is that it's possible to have social and environmental impact *and* market-rate returns. For many of the enterprises we're serving, this narrative is detrimental. They are looking for patient, non-extractive finance that serves their actual needs. While many enterprises are finding creative ways to generate revenue from the start, others---especially those working on large community infrastructure projects---require financing to get off the ground.
|
||||||
|
|
||||||
{{< i >}}
|
*Are there ways in which you've seen that developing shared standards can enable groups to get over those barriers?*
|
||||||
Are there ways in which you've seen that developing shared standards can enable groups to get over those barriers?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
I feel like it's just beginning, and this is one of the things that excites me the most. In almost every sector, people are collaborating to find solutions to the challenges they're facing, and because they are working in different contexts, many diverse and innovative approaches are emerging. But when we look across all sectors, the biggest ecosystem gaps are in the finance sector. Finance is lagging behind.
|
I feel like it's just beginning, and this is one of the things that excites me the most. In almost every sector, people are collaborating to find solutions to the challenges they're facing, and because they are working in different contexts, many diverse and innovative approaches are emerging. But when we look across all sectors, the biggest ecosystem gaps are in the finance sector. Finance is lagging behind.
|
||||||
|
|
||||||
I think the entry point is increasing the visibility of groups that are testing out new models of non-extractive finance and transformative finance and trying to do things differently. There are some very new efforts to increase collaboration and sharing in this space. That's the first step to developing shared language, shared standards, and a range of financing options that are better suited to the needs of next economy enterprises.
|
I think the entry point is increasing the visibility of groups that are testing out new models of non-extractive finance and transformative finance and trying to do things differently. There are some very new efforts to increase collaboration and sharing in this space. That's the first step to developing shared language, shared standards, and a range of financing options that are better suited to the needs of next economy enterprises.
|
||||||
|
|
||||||
{{< i >}}
|
*Thank you. Is there anything else you want to make sure to include in this story, that you want people to understand about Good Market or about your your work?*
|
||||||
Thank you. Is there anything else you want to make sure to include in this story, that you want people to understand about Good Market or about your your work?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
I'd like to offer some advice to others who are setting up protocols. Having been involved in and supported many groups in this process, I've learned that it's much easier to establish basic protocols at the beginning of an initiative. I've seen groups, such as marketplaces, that try to introduce protocols later on. It can be extremely challenging to add new protocols and boundaries when you have current members who wouldn't fit within those boundaries.
|
I'd like to offer some advice to others who are setting up protocols. Having been involved in and supported many groups in this process, I've learned that it's much easier to establish basic protocols at the beginning of an initiative. I've seen groups, such as marketplaces, that try to introduce protocols later on. It can be extremely challenging to add new protocols and boundaries when you have current members who wouldn't fit within those boundaries.
|
||||||
|
|
@@ -1,16 +1,15 @@
|
|||||||
---
|
---
|
||||||
narrator: Richard Littauer
|
narrator: Richard Littauer
|
||||||
subject: Constructed Languages
|
subject: Constructed languages
|
||||||
facilitator: Nathan Schneider
|
facilitator: Nathan Schneider
|
||||||
date: 2025-02-04
|
date: 2025-02-04
|
||||||
approved: 2025-02-11
|
approved: 2025-02-11
|
||||||
summary: "Constructed languages, or conlangs, are the basis of a hobby, a science, and a community that now occupies a small corner of the entertainment industry."
|
summary: "Constructed languages, or conlangs, are the basis of a hobby, a science, and a community that now occupies a small corner of the entertainment industry."
|
||||||
tags: [fiction, language, open source, software]
|
location: "Wellington, NZ"
|
||||||
|
topics: [fiction, gender, language, open source, software]
|
||||||
---
|
---
|
||||||
|
|
||||||
{{< i >}}
|
*Can you tell me a bit about how you like to introduce yourself?*
|
||||||
Can you tell me a bit about how you like to introduce yourself?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
Hello! I'm Richard Littauer. I use he/him pronouns. I have chronic ADHD and am probably on the autism spectrum, which means introducing myself is impossible. I saw someone recently on Bluesky who said, "My hobby is having hobbies," and that definitely applies to me.
|
Hello! I'm Richard Littauer. I use he/him pronouns. I have chronic ADHD and am probably on the autism spectrum, which means introducing myself is impossible. I saw someone recently on Bluesky who said, "My hobby is having hobbies," and that definitely applies to me.
|
||||||
|
|
||||||
@@ -20,17 +19,13 @@ I'm also a conlanger, which is the most common term I use. Sometimes I say const
|
|||||||
|
|
||||||
Xenolinguist is another possibility I've used before---*xeno* as in alien languages, from the Greek word *xenos*. I sometimes introduce myself as a classicist because I have formal training in Latin and Greek. I did five years of Latin in high school and two years of Greek in university. *Linguist* kind of subsumes classicist under it for some definitions, but not for others. Usually one of these terms is how I introduce myself.
|
Xenolinguist is another possibility I've used before---*xeno* as in alien languages, from the Greek word *xenos*. I sometimes introduce myself as a classicist because I have formal training in Latin and Greek. I did five years of Latin in high school and two years of Greek in university. *Linguist* kind of subsumes classicist under it for some definitions, but not for others. Usually one of these terms is how I introduce myself.
|
||||||
|
|
||||||
{{< i >}}
|
*How would you tell the story of your development as a conlanger? Where would you start that trajectory, and how did that beginning bring you to where you are now?*
|
||||||
How would you tell the story of your development as a conlanger? Where would you start that trajectory, and how did that beginning bring you to where you are now?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
There's this funny book---it's red with a black stripe down the side---called *The Languages of Tolkien's Middle-Earth*. It's by Ruth Noel. I've had multiple versions because people keep giving it to me. There's an interesting bit where the author mentions that Tolkien's first conlang was the word *woc* for cow, which is just *cow* backwards. It's a really boring language since that's all we know. I'd argue that's not even a language---that's just a code word.
|
There's this funny book---it's red with a black stripe down the side---called *The Languages of Tolkien's Middle-Earth*. It's by Ruth Noel. I've had multiple versions because people keep giving it to me. There's an interesting bit where the author mentions that Tolkien's first conlang was the word *woc* for cow, which is just *cow* backwards. It's a really boring language since that's all we know. I'd argue that's not even a language---that's just a code word.
|
||||||
|
|
||||||
That particular reference to Tolkien often comes to mind when I think about where I started with languages. One of the first things we do as humans is talk. I've been working with languages my whole life. My parents didn't teach me French even though I was homeschooled, which was a shame. They would talk in French over me with my sisters about my birthday presents. I was paid a quarter for every Latin name of a plant I learned when I was around six to ten, which was a great incentive. I probably got an easy buck that way.
|
That particular reference to Tolkien often comes to mind when I think about where I started with languages. One of the first things we do as humans is talk. I've been working with languages my whole life. My parents didn't teach me French even though I was homeschooled, which was a shame. They would talk in French over me with my sisters about my birthday presents. I was paid a quarter for every Latin name of a plant I learned when I was around six to ten, which was a great incentive. I probably got an easy buck that way.
|
||||||
|
|
||||||
{{< i >}}
|
*Why was that important to them?*
|
||||||
Why was that important to them?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
For my mother, being literary was always very important. She wanted me to become C.S. Lewis---a preacher or academic writer about the kingdom of God.
|
For my mother, being literary was always very important. She wanted me to become C.S. Lewis---a preacher or academic writer about the kingdom of God.
|
||||||
|
|
||||||
@@ -54,9 +49,7 @@ I went viral in *The Sun*. I was a centerfold---they painted me and then libeled
|
|||||||
|
|
||||||
Over time, people would reach out asking if I could make a conlang for their game. I also joined the Language Creation Society, dedicated to building these things together as a consultancy for movie studios. I bombed out pretty quick because I had to make money. I had a master's program in computational linguistics, and I needed to pay off my student loans---I'm an American, so I paid my way through college.
|
Over time, people would reach out asking if I could make a conlang for their game. I also joined the Language Creation Society, dedicated to building these things together as a consultancy for movie studios. I bombed out pretty quick because I had to make money. I had a master's program in computational linguistics, and I needed to pay off my student loans---I'm an American, so I paid my way through college.
|
||||||
|
|
||||||
{{< i >}}
|
*Conlanging was not lucrative?*
|
||||||
Conlanging was not lucrative?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
No way. At one point, I estimated I made maybe $2,000 total from all the Na'vi stuff, which included interviews on radio and getting flown to California. It wasn't a very good use of time, but it was incredibly fun.
|
No way. At one point, I estimated I made maybe $2,000 total from all the Na'vi stuff, which included interviews on radio and getting flown to California. It wasn't a very good use of time, but it was incredibly fun.
|
||||||
|
|
||||||
@@ -70,9 +63,7 @@ I also taught Latin at a small high school in Vermont, coming full circle. I tau
|
|||||||
|
|
||||||
At this point, I'm about as professional a conlanger as you can be without being David Peterson, who does this full time for major film studios. I've got an IMDB profile---I had to make it, but legally I was allowed to. I'm in the credits.
|
At this point, I'm about as professional a conlanger as you can be without being David Peterson, who does this full time for major film studios. I've got an IMDB profile---I had to make it, but legally I was allowed to. I'm in the credits.
|
||||||
|
|
||||||
{{< i >}}
|
*As somebody who has these dual interests of linguistics and computer systems, I'm curious about how you see parallels there. I see this concept of protocol as something that bridges both. Do you see working with computer languages as something parallel with building linguistic languages, or does it jog very different parts of your brain?*
|
||||||
As somebody who has these dual interests of linguistics and computer systems, I'm curious about how you see parallels there. I see this concept of protocol as something that bridges both. Do you see working with computer languages as something parallel with building linguistic languages, or does it jog very different parts of your brain?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
I have to be careful here because a lot of people say, "Oh, you know languages, you must be very good at programming and computer languages." But computer programming languages are quite different from conlangs. Conlangs tend to look like human languages most of the time. There are some that aren't, like Lojban, the logical language. There are some that really do, like Esperanto, which has about 100,000 native speakers---kids who've learned this language from birth.
|
I have to be careful here because a lot of people say, "Oh, you know languages, you must be very good at programming and computer languages." But computer programming languages are quite different from conlangs. Conlangs tend to look like human languages most of the time. There are some that aren't, like Lojban, the logical language. There are some that really do, like Esperanto, which has about 100,000 native speakers---kids who've learned this language from birth.
|
||||||
|
|
||||||
@@ -84,17 +75,13 @@ What's interesting for me as a conlanger is that a lot of people discount constr
|
|||||||
|
|
||||||
These Latin names have really strict ways of being presented together, and for me it's just making a conlang.
|
These Latin names have really strict ways of being presented together, and for me it's just making a conlang.
|
||||||
|
|
||||||
{{< i >}}
|
*By putting new rules around Latin names?*
|
||||||
By putting new rules around Latin names?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
It's not Latin, right? It's something that looks like Latin and that uses the Latin dictionary, but the rules they have and the protocol that scientists follow isn't actually Latin. It's another subset of Latin based on particular rules they put out. For me, that's very similar to prescriptivism---like saying, "Oh, you can't say, 'Me and my friends went to the mall,' you have to say, 'My friends and I went.'" All those things are just trying to make subsets of language for specific usages, so I see them as identical in terms of computational tools.
|
It's not Latin, right? It's something that looks like Latin and that uses the Latin dictionary, but the rules they have and the protocol that scientists follow isn't actually Latin. It's another subset of Latin based on particular rules they put out. For me, that's very similar to prescriptivism---like saying, "Oh, you can't say, 'Me and my friends went to the mall,' you have to say, 'My friends and I went.'" All those things are just trying to make subsets of language for specific usages, so I see them as identical in terms of computational tools.
|
||||||
|
|
||||||
It always becomes fuzzy for me because when I make conlangs, I use code to help me generate word lists and types of words by defining the phonotactic possibilities of the language. When I do that, I'm aware I'm making a subset of all possible languages that's actually unlike human languages, because human languages aren't perfect---we mess things up all the time. I live in an area of the world that has English as its language, New Zealand English, but there's also a suburb here called Ngaio because it's from Māori. You can't start words in English with "ng," but New Zealand doesn't care because it has Māori influences. That's kind of why conlangs aren't quite human---you try to set these strict structures.
|
It always becomes fuzzy for me because when I make conlangs, I use code to help me generate word lists and types of words by defining the phonotactic possibilities of the language. When I do that, I'm aware I'm making a subset of all possible languages that's actually unlike human languages, because human languages aren't perfect---we mess things up all the time. I live in an area of the world that has English as its language, New Zealand English, but there's also a suburb here called Ngaio because it's from Māori. You can't start words in English with "ng," but New Zealand doesn't care because it has Māori influences. That's kind of why conlangs aren't quite human---you try to set these strict structures.
|
||||||
|
|
||||||
{{< i >}}
|
*Can you describe some of the process of how you go about developing a language? You talked a little bit there about the way you use computers as part of that process, and you also talked about walking around the room, flapping like an elephant. So how do you do this? Where do you begin?*
|
||||||
Can you describe some of the process of how you go about developing a language? You talked a little bit there about the way you use computers as part of that process, and you also talked about walking around the room, flapping like an elephant. So how do you do this? Where do you begin?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
Let me scope this to how I professionally make languages for other people. I don't make a lot of languages for myself at the moment---I would like to, but I'm doing other stuff with my time.
|
Let me scope this to how I professionally make languages for other people. I don't make a lot of languages for myself at the moment---I would like to, but I'm doing other stuff with my time.
|
||||||
|
|
||||||
@@ -114,17 +101,13 @@ Then I read out some sentences and translate basic things---"Joe saw the fox" or
|
|||||||
|
|
||||||
Remember that bit about flopping around sounding like an elephant? It becomes very difficult if the speakers don't have human mouths, so I have to figure out how it's going to work. Or with whistle languages---I've made a few of those now. How am I going to write that down? How's that going to work? I have to figure all that out. It's actually quite fun.
|
Remember that bit about flopping around sounding like an elephant? It becomes very difficult if the speakers don't have human mouths, so I have to figure out how it's going to work. Or with whistle languages---I've made a few of those now. How am I going to write that down? How's that going to work? I have to figure all that out. It's actually quite fun.
|
||||||
|
|
||||||
{{< i >}}
|
*Have you done original written languages, like distinct alphabets?*
|
||||||
Have you done original written languages, like distinct alphabets?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
I haven't done a lot of them. I will be doing it for one contract I'm on right now. Written orthographies are really variable and different---that's a whole other subset of making things that's really fun and interesting.
|
I haven't done a lot of them. I will be doing it for one contract I'm on right now. Written orthographies are really variable and different---that's a whole other subset of making things that's really fun and interesting.
|
||||||
|
|
||||||
I made my own runes when I was an early teenager. I made my own set of futhark, but they were very dwarven. Let's face it, even Tolkien himself took all his stuff from other languages. A lot of conlangers just steal and then say, "Oh, I borrowed it." It's kind of fun.
|
I made my own runes when I was an early teenager. I made my own set of futhark, but they were very dwarven. Let's face it, even Tolkien himself took all his stuff from other languages. A lot of conlangers just steal and then say, "Oh, I borrowed it." It's kind of fun.
|
||||||
|
|
||||||
{{< i >}}
|
*You talked some about social dynamics in this process---your relationship with a friend where you are developing these together, or relationships with clients. What makes for a good collaboration in this context?*
|
||||||
You talked some about social dynamics in this process---your relationship with a friend where you are developing these together, or relationships with clients. What makes for a good collaboration in this context?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
I'm really bad at collaborating because I'm really scattered, and it takes me a while to get back to people. I've always been that way, and that's not going to change. I wish it could, but it's not. So I don't know what makes a good collaborator, except it's not me.
|
I'm really bad at collaborating because I'm really scattered, and it takes me a while to get back to people. I've always been that way, and that's not going to change. I wish it could, but it's not. So I don't know what makes a good collaborator, except it's not me.
|
||||||
|
|
||||||
@@ -138,15 +121,11 @@ It's always fun to try to make that balance work because I try to make languages
|
|||||||
|
|
||||||
Trying to explain that to a client really helps. Back when I was a kid, it was the language that was most fun---we never actually bothered to make a world, we just made some languages and had a good time. The guy I did that mainly with went on to do a postgrad, and he's currently a postdoc at MIT studying gravity. You have to have a certain type of mind to really enjoy this sort of work. I just happened to know someone who had that kind of mind, which is great.
|
Trying to explain that to a client really helps. Back when I was a kid, it was the language that was most fun---we never actually bothered to make a world, we just made some languages and had a good time. The guy I did that mainly with went on to do a postgrad, and he's currently a postdoc at MIT studying gravity. You have to have a certain type of mind to really enjoy this sort of work. I just happened to know someone who had that kind of mind, which is great.
|
||||||
|
|
||||||
{{< i >}}
|
*So what makes a conlang great art? What do you appreciate about a really beautiful language? What do you look for? And I'm sorry, I know any variant of "what makes art good?" is a horrible question.*
|
||||||
So what makes a conlang great art? What do you appreciate about a really beautiful language? What do you look for? And I'm sorry, I know any variant of "what makes art good?" is a horrible question.
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
It's not a horrible question. I almost said "it's a good question," which is my least favorite thing to say when I'm interviewing.
|
It's not a horrible question. I almost said "it's a good question," which is my least favorite thing to say when I'm interviewing.
|
||||||
|
|
||||||
{{< i >}}
|
*Usually when people say "that's a good question," it means it's a bad question.*
|
||||||
Usually when people say "that's a good question," it means it's a bad question.
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
It means they're stumped and don't know what to say. It's a really interesting question because it is hard to define the parameters of what makes art beautiful. I would say it depends on what I'm working on---it depends on what the goals are.
|
It means they're stumped and don't know what to say. It's a really interesting question because it is hard to define the parameters of what makes art beautiful. I would say it depends on what I'm working on---it depends on what the goals are.
|
||||||
|
|
||||||
@@ -154,15 +133,11 @@ For me, a good conlang doesn't feel like a conlang. It doesn't sound like anothe
|
|||||||
|
|
||||||
A bad language is one where it's really difficult to pronounce. I made this language called Llérriésh (or Llama), and even I couldn't say it well. I mean, I tried really hard, but there were all these weird tone things going on. It was cool for me to do, and I think it ended up being kind of beautiful because it was really complex---I just wanted complexity at that point. But I would never curse anyone to try to learn that language, to try to speak it to other people. But it was beautiful to me.
|
A bad language is one where it's really difficult to pronounce. I made this language called Llérriésh (or Llama), and even I couldn't say it well. I mean, I tried really hard, but there were all these weird tone things going on. It was cool for me to do, and I think it ended up being kind of beautiful because it was really complex---I just wanted complexity at that point. But I would never curse anyone to try to learn that language, to try to speak it to other people. But it was beautiful to me.
|
||||||
|
|
||||||
{{< i >}}
|
*How do you teach, say, an actor who has to speak a language that you've created?*
|
||||||
How do you teach, say, an actor who has to speak a language that you've created?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
First thing to do is go through some basic words and say, "Here's how this is pronounced, here's how that's pronounced." You have to make sure that your orthography is standard. You can't use English orthography because English orthography is the worst. You have to be like, "Okay, 'a' is always 'ah', it's never 'eh'."
|
First thing to do is go through some basic words and say, "Here's how this is pronounced, here's how that's pronounced." You have to make sure that your orthography is standard. You can't use English orthography because English orthography is the worst. You have to be like, "Okay, 'a' is always 'ah', it's never 'eh'."
|
||||||
|
|
||||||
{{< i >}}
|
*Do you use a phonetic alphabet?*
|
||||||
Do you use a phonetic alphabet?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
Yeah, so I try to use a pseudo-IPA. I don't really give them IPA because that's too hard. But I try to say, "This is always like this, and that's always like that." The j's are always j's, they're never y's, something like that.
|
Yeah, so I try to use a pseudo-IPA. I don't really give them IPA because that's too hard. But I try to say, "This is always like this, and that's always like that." The j's are always j's, they're never y's, something like that.
|
||||||
|
|
||||||
@@ -170,25 +145,19 @@ It also involves accepting that when they mess up, that's part of the language.
|
|||||||
|
|
||||||
It's definitely difficult for some things. English speakers have a lot of weird stuff going on. English is not a normal language---it's a unique language, just like every other language. Our r's---the American r is a really rare sound in the world. It's not a common sound. So trying to convince other people that "Oh no, every r is"---it's tough. You have to explain that over and over again, like "Oh no, it's not 'Sauron,' it's 'Saurrron.'"
|
It's definitely difficult for some things. English speakers have a lot of weird stuff going on. English is not a normal language---it's a unique language, just like every other language. Our r's---the American r is a really rare sound in the world. It's not a common sound. So trying to convince other people that "Oh no, every r is"---it's tough. You have to explain that over and over again, like "Oh no, it's not 'Sauron,' it's 'Saurrron.'"
|
||||||
|
|
||||||
{{< i >}}
|
*What are some of the most important decisions in creating a language?*
|
||||||
What are some of the most important decisions in creating a language?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
How many vowels are there? Is it tonal? How many tones are you going to have? What's the syntax going to be? That's always a really common one. Is it SVO, is it VOS---verb, subject, etc.? What's the order of words? Is this a language that's going to be written or not? Is this a language that's going to have a lot of things translated in or not?
|
How many vowels are there? Is it tonal? How many tones are you going to have? What's the syntax going to be? That's always a really common one. Is it SVO, is it VOS---verb, subject, etc.? What's the order of words? Is this a language that's going to be written or not? Is this a language that's going to have a lot of things translated in or not?
|
||||||
|
|
||||||
What format are you storing your lexicon in? How are other people going to be able to edit that format with you? How will you present the information to a client is one of the main things. I often use a tripartite interlinear gloss translation where I have the original writing, then each word written out with all the morphemes in it, then the translation. I always try to do that, at least, because otherwise you end up with them not knowing where to put the emphasis on words.
|
What format are you storing your lexicon in? How are other people going to be able to edit that format with you? How will you present the information to a client is one of the main things. I often use a tripartite interlinear gloss translation where I have the original writing, then each word written out with all the morphemes in it, then the translation. I always try to do that, at least, because otherwise you end up with them not knowing where to put the emphasis on words.
|
||||||
|
|
||||||
{{< i >}}
|
*Do you generally deliver a dictionary and a grammar? How do you---what do you deliver? Say more about that.*
|
||||||
Do you generally deliver a dictionary and a grammar? How do you---what do you deliver? Say more about that.
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
A .docx file, or maybe a Google Doc, with all the lines that have been translated or need to be translated, and a short dictionary of how it works, and maybe a short grammatical primer. Not massive. For the Mulefa language, I also had a whole two or three pages on how the finger movements should work for humans talking. I decided you just use your primary finger instead of a trunk---the great thing about humans is we don't have large proboscises. We don't have---it's really hard for me to signal with my nose "to the left." I don't know how I would do that, so it's like, just use your finger. So I had to explain how that works, and how the different variations would work---wiggling or harsh movements.
|
A .docx file, or maybe a Google Doc, with all the lines that have been translated or need to be translated, and a short dictionary of how it works, and maybe a short grammatical primer. Not massive. For the Mulefa language, I also had a whole two or three pages on how the finger movements should work for humans talking. I decided you just use your primary finger instead of a trunk---the great thing about humans is we don't have large proboscises. We don't have---it's really hard for me to signal with my nose "to the left." I don't know how I would do that, so it's like, just use your finger. So I had to explain how that works, and how the different variations would work---wiggling or harsh movements.
|
||||||
|
|
||||||
For another language I made, it was really important that I explained the different types of weird sounds that a goblin might make, and what clicks are, and how those work together, and how you would write that because I was giving it to sound people who then had to implement this.
|
For another language I made, it was really important that I explained the different types of weird sounds that a goblin might make, and what clicks are, and how those work together, and how you would write that because I was giving it to sound people who then had to implement this.
|
||||||
|
|
||||||
{{< i >}}
|
*Is there a lot that you have to develop on the back-end that you don't show the client? Is there a more complex grammar?*
|
||||||
Is there a lot that you have to develop on the back-end that you don't show the client? Is there a more complex grammar?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
Yes, but it's also smoke and mirrors. A lot of the time, because I'm a contractor and have to cut down on my hours at some point, I can't spend ages debating whether a word should be something. Sometimes I'm like, "Okay, here's the thing," and I just thought of that in two minutes---but that was the two minutes I had to give you.
|
Yes, but it's also smoke and mirrors. A lot of the time, because I'm a contractor and have to cut down on my hours at some point, I can't spend ages debating whether a word should be something. Sometimes I'm like, "Okay, here's the thing," and I just thought of that in two minutes---but that was the two minutes I had to give you.
|
||||||
|
|
||||||
@@ -200,9 +169,7 @@ You have to write these things down. Otherwise you end up completely confused be
|
|||||||
|
|
||||||
Writing all these things down really helps you out, and the best way I've learned how to do it is to do it ad hoc, but document it well. Then trust your earlier decisions and listen to them, and don't mess up.
|
Writing all these things down really helps you out, and the best way I've learned how to do it is to do it ad hoc, but document it well. Then trust your earlier decisions and listen to them, and don't mess up.
|
||||||
|
|
||||||
{{< i >}}
|
*How constrained do you think of the range of linguistic possibilities as being? I'm thinking here about the old Chomsky debates about whether language is a kind of cognitive structure as opposed to something that is an infinite playground. Even when you've developed languages for non-human beings---do you think of it like, "Okay, here's a checklist, there's a structure, there are some rules that you can't break"?*
|
||||||
How constrained do you think of the range of linguistic possibilities as being? I'm thinking here about the old Chomsky debates about whether language is a kind of cognitive structure as opposed to something that is an infinite playground. Even when you've developed languages for non-human beings---do you think of it like, "Okay, here's a checklist, there's a structure, there are some rules that you can't break"?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
Yes, there's always some rules you can't break, because otherwise you wouldn't be able to signal. I have not yet written a language that's entirely identical to the HTTP protocol---I could do that, that is a language, it's a way of signaling information.
|
Yes, there's always some rules you can't break, because otherwise you wouldn't be able to signal. I have not yet written a language that's entirely identical to the HTTP protocol---I could do that, that is a language, it's a way of signaling information.
|
||||||
|
|
||||||
@@ -216,23 +183,17 @@ What helps me when I have to make these hard decisions around bizarre languages
|
|||||||
|
|
||||||
I have also tried to make languages that are impossible.
|
I have also tried to make languages that are impossible.
|
||||||
|
|
||||||
{{< i >}}
|
*What do you mean by that?*
|
||||||
What do you mean by that?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
The less we talk about that the better. I mean, it doesn't really work because I'm human and I use a human brain. Languages that don't make sense according to normal human structures---it doesn't work at the end of the day. I haven't found a way to make one that doesn't make a ton of sense.
|
The less we talk about that the better. I mean, it doesn't really work because I'm human and I use a human brain. Languages that don't make sense according to normal human structures---it doesn't work at the end of the day. I haven't found a way to make one that doesn't make a ton of sense.
|
||||||
|
|
||||||
Bird language is a good example. With whistling languages, humans are just never going to be able to do that well. I'm not pitch-perfect in the first place, but on top of that, it's just really difficult. You can make languages, but they're more like codes because they're never used to communicate effective things. I mean, Na'vi had a vocabulary of like 2,000 words last time I was using it, and we had long conversations. We translated *A Midsummer Night's Dream*-type things into it. But the conversations were mainly like "Hello! How are you? I'm good. I'm having some eggs with the rock that you get from the ocean where it is bitter"---because there's no word for salt, so you have to do these weird circumlocutions. We're always limited by our time and ability.
|
Bird language is a good example. With whistling languages, humans are just never going to be able to do that well. I'm not pitch-perfect in the first place, but on top of that, it's just really difficult. You can make languages, but they're more like codes because they're never used to communicate effective things. I mean, Na'vi had a vocabulary of like 2,000 words last time I was using it, and we had long conversations. We translated *A Midsummer Night's Dream*-type things into it. But the conversations were mainly like "Hello! How are you? I'm good. I'm having some eggs with the rock that you get from the ocean where it is bitter"---because there's no word for salt, so you have to do these weird circumlocutions. We're always limited by our time and ability.
|
||||||
|
|
||||||
{{< i >}}
|
*Is there something that, if you had infinite time, you would love to be able to do someday?*
|
||||||
Is there something that, if you had infinite time, you would love to be able to do someday?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
My immediate thought was, I would like to fix the International Code of Zoological Nomenclature.
|
My immediate thought was, I would like to fix the International Code of Zoological Nomenclature.
|
||||||
|
|
||||||
{{< i >}}
|
*Tell us about why it's broken.*
|
||||||
Tell us about why it's broken.
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
Oh man, like there are agreement rules where adjectives have to agree with genera, but not if they're not a Latin or Greek word. And if it's a Greek word but it's been Latinized, then you have to change it---but they don't really talk about what Latinization is.
|
Oh man, like there are agreement rules where adjectives have to agree with genera, but not if they're not a Latin or Greek word. And if it's a Greek word but it's been Latinized, then you have to change it---but they don't really talk about what Latinization is.
|
||||||
|
|
||||||
@@ -246,9 +207,7 @@ In terms of other stuff, if I had infinite time and infinite play---because play
|
|||||||
|
|
||||||
Malta is a really good example of what happens when you mix Italians and Arabs, and then you end up with Maltese. "Chocoholic" is one of my favorite words because it's the stem "chocolate" combined with "holik," which is Arabic. Why not make a whole language that's mixed like that? That would be really fun, just really weird. I'd like to have Algonquian languages spoken on the east coast again, so let's figure out how to do that really well. I like those sort of historical "what if?" questions. What if Hastings had never happened?
|
Malta is a really good example of what happens when you mix Italians and Arabs, and then you end up with Maltese. "Chocoholic" is one of my favorite words because it's the stem "chocolate" combined with "holik," which is Arabic. Why not make a whole language that's mixed like that? That would be really fun, just really weird. I'd like to have Algonquian languages spoken on the east coast again, so let's figure out how to do that really well. I like those sort of historical "what if?" questions. What if Hastings had never happened?
|
||||||
|
|
||||||
{{< i >}}
|
*You've talked about a lot of histories as you're doing this kind of work. How do you think of yourself as part of these earlier legacies? I mean, you talked about Tolkien, and you talked about zoology and taxonomy---whose shoulders are you standing on?*
|
||||||
You've talked about a lot of histories as you're doing this kind of work. How do you think of yourself as part of these earlier legacies? I mean, you talked about Tolkien, and you talked about zoology and taxonomy---whose shoulders are you standing on?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
Everyone's shoulders. Patrick O'Brian wrote a really awesome series of books called the Master and Commander series---there's like twenty-one of them. I just finished reading them all for the first time a few months ago. They were truly exceptional, and one of the great things about the books is that they're character-driven. They're about the friendship of two men, Jack Aubrey and Stephen Maturin.
|
Everyone's shoulders. Patrick O'Brian wrote a really awesome series of books called the Master and Commander series---there's like twenty-one of them. I just finished reading them all for the first time a few months ago. They were truly exceptional, and one of the great things about the books is that they're character-driven. They're about the friendship of two men, Jack Aubrey and Stephen Maturin.
|
||||||
|
|
||||||
@@ -262,9 +221,7 @@ I try to have more fun, because I think that people should have more fun in the
|
|||||||
|
|
||||||
Fundamentally, I try to think of myself as not being much different than being a dude sitting next to a fire 10,000 years ago and telling a story to the person next to them. Because historically, I haven't changed much. Evolutionarily, I'm basically that same person---maybe I'm a bit stupider and a bit less tall. But that's what I want to do with my time.
|
Fundamentally, I try to think of myself as not being much different than being a dude sitting next to a fire 10,000 years ago and telling a story to the person next to them. Because historically, I haven't changed much. Evolutionarily, I'm basically that same person---maybe I'm a bit stupider and a bit less tall. But that's what I want to do with my time.
|
||||||
|
|
||||||
{{< i >}}
|
*Finally, are there any lessons you think this practice of conlanging has to offer to the rest of the world? Is there anything that you wish other people understood that people in this world do understand?*
|
||||||
Finally, are there any lessons you think this practice of conlanging has to offer to the rest of the world? Is there anything that you wish other people understood that people in this world do understand?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
I think about this interaction I had a lot. I went to a friend's house---she's a mother of three or four kids, she was a birder in Vermont. I was having tea on her back deck, and I saw this little common grackle come by, a bronzed grackle, and I said, "Quiscalus quiscula," or whatever it is.
|
I think about this interaction I had a lot. I went to a friend's house---she's a mother of three or four kids, she was a birder in Vermont. I was having tea on her back deck, and I saw this little common grackle come by, a bronzed grackle, and I said, "Quiscalus quiscula," or whatever it is.
|
||||||
|
|
40
content/articles/mannan-diplomatic_protocols.md → content/interviews/mannan-diplomatic_protocols.md
40
content/articles/mannan-diplomatic_protocols.md → content/interviews/mannan-diplomatic_protocols.md
@@ -5,12 +5,12 @@ facilitator: Nathan Schneider
|
|||||||
date: 2024-12-13
|
date: 2024-12-13
|
||||||
approved: 2025-03-04
|
approved: 2025-03-04
|
||||||
summary: "A diplomat for Bangladesh describes the role of protocol in high-profile international visits and treaty negotiations."
|
summary: "A diplomat for Bangladesh describes the role of protocol in high-profile international visits and treaty negotiations."
|
||||||
tags: [diplomacy, government, friendship]
|
location: "Dhaka, Bangladesh"
|
||||||
|
headshot: "mosud_mannan.png"
|
||||||
|
topics: [diplomacy, government, friendship]
|
||||||
---
|
---
|
||||||
|
|
||||||
{{< i >}}
|
*How do you introduce yourself?*
|
||||||
How do you introduce yourself?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
I am a career diplomat, a professional diplomat. I was with the Foreign Office of Bangladesh for 37 years and 9 months. I did an MA at the Fletcher School of Law and Diplomacy in Boston, USA, and completed trainings in New York, USA and in Japan. I also did a short course at the University of Westminster in London. I have been posted as ambassador to four capitals, beginning with Rabat, Morocco. Then I went to Berlin, Germany. After Germany I was posted to Tashkent, that was formerly part of the Soviet Union. After Central Asia, or you can say Middle Asia, I was posted to Turkey. Since Bangladesh doesn't have an embassy in all capitals, one embassy takes care of about six countries. Altogether I was appointed Ambassador of Bangladesh to 18 countries.
|
I am a career diplomat, a professional diplomat. I was with the Foreign Office of Bangladesh for 37 years and 9 months. I did an MA at the Fletcher School of Law and Diplomacy in Boston, USA, and completed trainings in New York, USA and in Japan. I also did a short course at the University of Westminster in London. I have been posted as ambassador to four capitals, beginning with Rabat, Morocco. Then I went to Berlin, Germany. After Germany I was posted to Tashkent, that was formerly part of the Soviet Union. After Central Asia, or you can say Middle Asia, I was posted to Turkey. Since Bangladesh doesn't have an embassy in all capitals, one embassy takes care of about six countries. Altogether I was appointed Ambassador of Bangladesh to 18 countries.
|
||||||
|
|
||||||
@@ -24,9 +24,7 @@ This is, in a nutshell, my background as a career diplomat and ambassador. I was
|
|||||||
|
|
||||||
I also did negotiations in the field of business and defense cooperation during my tenure as Ambassador in Turkey during the global Covid crisis.
|
I also did negotiations in the field of business and defense cooperation during my tenure as Ambassador in Turkey during the global Covid crisis.
|
||||||
|
|
||||||
{{< i >}}
|
*What does the word "protocol" mean for you in the diplomatic context?*
|
||||||
What does the word "protocol" mean for you in the diplomatic context?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
Protocol has two meanings. Protocol can be a kind of document or agreement. It could be a treaty or a memorandum of understanding. Sometimes you can sign ordinary notes that might last for a few days or a few years. Protocol can also be a special understanding between two friendly countries.
|
Protocol has two meanings. Protocol can be a kind of document or agreement. It could be a treaty or a memorandum of understanding. Sometimes you can sign ordinary notes that might last for a few days or a few years. Protocol can also be a special understanding between two friendly countries.
|
||||||
|
|
||||||
@@ -54,9 +52,7 @@ The then Prime Minister of Pakistan, Nawaz Sharif expressed a desire to see a Ro
|
|||||||
|
|
||||||
One has to be very meticulous when offering protocol. This is the diplomatic protocol I'm talking about, not just signing a protocol. Signing a protocol is also interesting, but that is different. Many small things---the understanding and exchange of niceties, even the exchange of gifts---can be part of protocol. When a mayor offers a key of the city to a visiting dignitary, that is also part of diplomatic protocol.
|
One has to be very meticulous when offering protocol. This is the diplomatic protocol I'm talking about, not just signing a protocol. Signing a protocol is also interesting, but that is different. Many small things---the understanding and exchange of niceties, even the exchange of gifts---can be part of protocol. When a mayor offers a key of the city to a visiting dignitary, that is also part of diplomatic protocol.
|
||||||
|
|
||||||
{{< i >}}
|
*How much of the rules of diplomacy are understood to be universal, or are already in place, as opposed to the details that you have to work out?*
|
||||||
How much of the rules of diplomacy are understood to be universal, or are already in place, as opposed to the details that you have to work out?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
First, basically, between two countries, or even in multilateral cases, you have the Vienna Convention, which sets some basic guidelines around embassies and treaties. Then there are diplomatic niceties. There are many formal things that you have to maintain. Protocol is not a light matter. There is no room for whimsicality.
|
First, basically, between two countries, or even in multilateral cases, you have the Vienna Convention, which sets some basic guidelines around embassies and treaties. Then there are diplomatic niceties. There are many formal things that you have to maintain. Protocol is not a light matter. There is no room for whimsicality.
|
||||||
|
|
||||||
@@ -64,9 +60,7 @@ In protocol one has to work out all the details when you are organizing an event
|
|||||||
|
|
||||||
Once in an embassy National Day event---I will not say which embassy---this was when I was in Tashkent, the CD player suddenly stopped, guests waited for the national anthem to resume, the ambassador turned red in the face. You understand, all the dignitaries were present and the national anthem had halted because of a technical glitch. I'm sure next day the person in charge, whether it was staff or junior officer, was packing his baggage and was headed back to his capital. In Bangladesh too, once when the Prime Minister came to attend a formal program, there was a technical problem that prevented the national anthem from being played, and the next day the chief of protocol was fired. These things happen. With protocol, you have to be extraordinarily careful, you have to be calm and collected under pressure, and you have to be well-trained on how to swiftly handle a *faux pas* or unmeditated disruptions. One has to understand the enormity of any failings and one has to always be on alert.
|
Once in an embassy National Day event---I will not say which embassy---this was when I was in Tashkent, the CD player suddenly stopped, guests waited for the national anthem to resume, the ambassador turned red in the face. You understand, all the dignitaries were present and the national anthem had halted because of a technical glitch. I'm sure next day the person in charge, whether it was staff or junior officer, was packing his baggage and was headed back to his capital. In Bangladesh too, once when the Prime Minister came to attend a formal program, there was a technical problem that prevented the national anthem from being played, and the next day the chief of protocol was fired. These things happen. With protocol, you have to be extraordinarily careful, you have to be calm and collected under pressure, and you have to be well-trained on how to swiftly handle a *faux pas* or unmeditated disruptions. One has to understand the enormity of any failings and one has to always be on alert.
|
||||||
|
|
||||||
{{< i >}}
|
*How did you learn to develop that sense of detail?*
|
||||||
How did you learn to develop that sense of detail?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
I took interest, that's the main thing. From the very beginning I knew this is one of the most interesting jobs because you will be meeting the heads of state and government, and at least the foreign ministers. My opportunity came as a junior officer to be a guide to a visiting minister---showing him around, taking him to the market, taking him to another ministry, just accompanying him---I was very alert from the onset. And I received very glowing commendations after the visit. No matter how difficult the task was, I never said ‘no’ to anybody---I tried to manage. That is another hallmark of a diplomat, protocol instills this quality because we are entrusted to create positivity and an atmosphere of confidence. The objective has to be achieved, no matter how difficult. At the same time the process has to go smoothly, almost seem effortless.
|
I took interest, that's the main thing. From the very beginning I knew this is one of the most interesting jobs because you will be meeting the heads of state and government, and at least the foreign ministers. My opportunity came as a junior officer to be a guide to a visiting minister---showing him around, taking him to the market, taking him to another ministry, just accompanying him---I was very alert from the onset. And I received very glowing commendations after the visit. No matter how difficult the task was, I never said ‘no’ to anybody---I tried to manage. That is another hallmark of a diplomat, protocol instills this quality because we are entrusted to create positivity and an atmosphere of confidence. The objective has to be achieved, no matter how difficult. At the same time the process has to go smoothly, almost seem effortless.
|
||||||
|
|
||||||
@@ -76,9 +70,7 @@ One has to know all the key protocol people at the ministry or the visa section
|
|||||||
|
|
||||||
Having a network of friends and contacts can help you in multifarious ways. When we were doing the negotiations in Hamburg, I found there many of my friends with whom I had worked in New York. They were posted as officers or judges in Hamburg. They were very understanding with regard to the Bangladesh position while Bangladesh and Myanmar were having this arbitration over the demarcation of the Bay of Bengal. It became easy for me. When you have a known face, they say, "Mosud, don't worry, we'll take care of that."
|
Having a network of friends and contacts can help you in multifarious ways. When we were doing the negotiations in Hamburg, I found there many of my friends with whom I had worked in New York. They were posted as officers or judges in Hamburg. They were very understanding with regard to the Bangladesh position while Bangladesh and Myanmar were having this arbitration over the demarcation of the Bay of Bengal. It became easy for me. When you have a known face, they say, "Mosud, don't worry, we'll take care of that."
|
||||||
|
|
||||||
{{< i >}}
|
*What is the difference in your relationship to these protocols when you are the protocol officer as opposed to being the ambassador? Those are both roles you've held, but they seem distinct; one is designing the protocol, and one is performing it.*
|
||||||
What is the difference in your relationship to these protocols when you are the protocol officer as opposed to being the ambassador? Those are both roles you've held, but they seem distinct; one is designing the protocol, and one is performing it.
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
A protocol officer, or in my case the Deputy Chief of Protocol, generally doesn't sign any agreement. An Ambassador is authorized on behalf of the country to negotiate everything. I did it a couple of times.
|
A protocol officer, or in my case the Deputy Chief of Protocol, generally doesn't sign any agreement. An Ambassador is authorized on behalf of the country to negotiate everything. I did it a couple of times.
|
||||||
|
|
||||||
@@ -92,9 +84,7 @@ I remember a particular visit. Alberto Fujimori was the President of Peru. He wa
|
|||||||
|
|
||||||
On another occasion, we were informed that Yasser Arafat was arriving in Dhaka in two hours. The Prime Minister's office called and told me our Prime Minister would be at the airport to receive Mr. Arafat. I was instructed to do the needful including arranging a lunch for one hundred people. I was enjoying my weekend with my son, showing him one of the Mughal era antiquities in Dhaka. I took the instructions and calculated how best to get all this done before the aircraft carrying Mr. Arafat arrived at Dhaka in less than two hours. I returned home scrambling to dress for the occasion and rushed to the airport before our Prime Minister arrived.
|
On another occasion, we were informed that Yasser Arafat was arriving in Dhaka in two hours. The Prime Minister's office called and told me our Prime Minister would be at the airport to receive Mr. Arafat. I was instructed to do the needful including arranging a lunch for one hundred people. I was enjoying my weekend with my son, showing him one of the Mughal era antiquities in Dhaka. I took the instructions and calculated how best to get all this done before the aircraft carrying Mr. Arafat arrived at Dhaka in less than two hours. I returned home scrambling to dress for the occasion and rushed to the airport before our Prime Minister arrived.
|
||||||
|
|
||||||
{{< i >}}
|
*When you're training younger people coming into this work, what kinds of skills do you focus on helping them develop? *
|
||||||
When you're training younger people coming into this work, what kinds of skills do you focus on helping them develop?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
First and foremost, patience. In the dead of the night, you may have a call from the Prime Minister or President's office to do something right away. Let us say, for example, the Finance Minister from China will be landing shortly, and Mosud Mannan has to accompany. The price of one’s patience and dexterity is of course, sweet. You get to enjoy unique perks: as a young official I got to see the gold-plated interior of the royal jet of Saudi Arabia, and I shook hands with Mr. Nelson Mandela.
|
First and foremost, patience. In the dead of the night, you may have a call from the Prime Minister or President's office to do something right away. Let us say, for example, the Finance Minister from China will be landing shortly, and Mosud Mannan has to accompany. The price of one’s patience and dexterity is of course, sweet. You get to enjoy unique perks: as a young official I got to see the gold-plated interior of the royal jet of Saudi Arabia, and I shook hands with Mr. Nelson Mandela.
|
||||||
|
|
||||||
@@ -114,9 +104,7 @@ You have to know your strength. First you negotiate through niceties, and then i
|
|||||||
|
|
||||||
When Bangladesh was a member of the Security Council, I was one of the alternate representatives. Sometimes, the US permanent Representative to the UN would drop by to discuss things with my Ambassador. Behind closed doors, they would talk amongst themselves. Security Council votes mattered. Since I was part of many negotiations to gain votes for Bangladesh, I know how diplomats can accomplish these things. It is not as easy as it sounds. You have to know the game. You have to know international law. More than that, you have to know about history, and you have to make good friends. My Ambassador did all this, and I believe, I did too. It is not a bookish thing. It is not an academic thing. You have to have two or three options, and make sure that one will work.
|
When Bangladesh was a member of the Security Council, I was one of the alternate representatives. Sometimes, the US permanent Representative to the UN would drop by to discuss things with my Ambassador. Behind closed doors, they would talk amongst themselves. Security Council votes mattered. Since I was part of many negotiations to gain votes for Bangladesh, I know how diplomats can accomplish these things. It is not as easy as it sounds. You have to know the game. You have to know international law. More than that, you have to know about history, and you have to make good friends. My Ambassador did all this, and I believe, I did too. It is not a bookish thing. It is not an academic thing. You have to have two or three options, and make sure that one will work.
|
||||||
|
|
||||||
{{< i >}}
|
*Have there been times when you've had to break the rules?*
|
||||||
Have there been times when you've had to break the rules?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
Generally, countries like Bangladesh don't break the rules. The rules are generally not broken. I will say the rules are pushed apart by powerful countries, because they have other powers, because they are not only negotiating politically. They will push the rules by offering to give you some help, maybe in defense or commerce.
|
Generally, countries like Bangladesh don't break the rules. The rules are generally not broken. I will say the rules are pushed apart by powerful countries, because they have other powers, because they are not only negotiating politically. They will push the rules by offering to give you some help, maybe in defense or commerce.
|
||||||
|
|
||||||
@@ -134,15 +122,11 @@ In Bangladesh we don't train two hundred diplomats at a time. We take ten to fif
|
|||||||
|
|
||||||
That's why I will say, I was given the best postings---London to begin with, then New York, during the Security Council, then ambassador to Germany, ambassador to Turkey, deputy head of mission in China. I went to Central Asia, which was very nice.
|
That's why I will say, I was given the best postings---London to begin with, then New York, during the Security Council, then ambassador to Germany, ambassador to Turkey, deputy head of mission in China. I went to Central Asia, which was very nice.
|
||||||
|
|
||||||
{{< i >}}
|
*What makes countries follow the international rules? It's not like there is a police officer that's going to put them in jail. What makes countries want to follow these norms and participate in the shared protocols?*
|
||||||
What makes countries follow the international rules? It's not like there is a police officer that's going to put them in jail. What makes countries want to follow these norms and participate in the shared protocols?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
There is an incentive to follow the norms and uphold shared protocols. Things gain a certain clarity because of maintenance of protocol codes. You do not misread or misjudge situations. If you do not observe protocol, you will land in trouble. Others will not show respect to you because you have broken the rules. Generally, diplomats don't act on caprice and generally they will not act on their own whims to make another country upset. Even when situations between countries become hostile, terse or tense, protocol is observed. Countries diffuse situations or can improve relations by handling things on the basis of protocol requirements.
|
There is an incentive to follow the norms and uphold shared protocols. Things gain a certain clarity because of maintenance of protocol codes. You do not misread or misjudge situations. If you do not observe protocol, you will land in trouble. Others will not show respect to you because you have broken the rules. Generally, diplomats don't act on caprice and generally they will not act on their own whims to make another country upset. Even when situations between countries become hostile, terse or tense, protocol is observed. Countries diffuse situations or can improve relations by handling things on the basis of protocol requirements.
|
||||||
|
|
||||||
{{< i >}}
|
*After this career, do you have thoughts about what kinds of rules or protocols could make this international order fair?*
|
||||||
After this career, do you have thoughts about what kinds of rules or protocols could make this international order fair?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
The world, to some extent, doesn't revolve around only protocol. It depends on whether we are fair or not. Whether we are fair or not fair will be decided by the culture you follow in your day-to-day life. If you're from the USA, a big, strong country, they have their own culture, they have their way of life, they have their wealth, and they have their might. In Russia, they have different culture and literature, a distinctive way of thinking. China is totally different. Chinese people have their own way of seeing things, their own ways of doing things.
|
The world, to some extent, doesn't revolve around only protocol. It depends on whether we are fair or not. Whether we are fair or not fair will be decided by the culture you follow in your day-to-day life. If you're from the USA, a big, strong country, they have their own culture, they have their way of life, they have their wealth, and they have their might. In Russia, they have different culture and literature, a distinctive way of thinking. China is totally different. Chinese people have their own way of seeing things, their own ways of doing things.
|
||||||
|
|
199
content/interviews/mayer-mediation.md
Normal file
199
content/interviews/mayer-mediation.md
Normal file
@@ -0,0 +1,199 @@
|
|||||||
|
---
|
||||||
|
narrator: Bernard Mayer
|
||||||
|
subject: Mediation
|
||||||
|
facilitator: Nathan Schneider
|
||||||
|
date: 2025-02-07
|
||||||
|
approved: 2025-03-11
|
||||||
|
location: "Kingsville, Ontario, Canada"
|
||||||
|
summary: "Mediation developed as a professional field through experimentation and practice."
|
||||||
|
headshot: "bernie_mayer.png"
|
||||||
|
topics: [conflict, family, mediation, social work]
|
||||||
|
---
|
||||||
|
|
||||||
|
*How do you like to introduce yourself?*
|
||||||
|
|
||||||
|
I'm Bernie Mayer. I'm an emeritus professor of conflict studies at Creighton University and a founding partner of CDR Associates in Boulder. I live with my wife and dog, who might join us, in Kingsville, Ontario. That's probably enough for the moment.
|
||||||
|
|
||||||
|
*There's more to come, because I'd love to hear how you outline your life and career. You can begin wherever you like. How do you trace the beginnings of your interest in conflict?*
|
||||||
|
|
||||||
|
A second formative fact was that my father was a director of a residential treatment center for children in a suburb of Cleveland, Ohio. We had a house on the grounds of it, and that's where I grew up. So I grew up in a suburb of Cleveland, and went to Cleveland Heights High School, but I lived in this community. It was not exactly an egalitarian community, but it was definitely a community with a purpose. It made me feel different in some ways, in a nice way---though not always nice. It had its hard moments too. A lot of hard things happened there over the years. But on the other hand, we had a much nicer house than we would have been able to afford, and I had access to baseball fields and gym and swimming pool and stuff like that that a social worker's kid normally didn't have.
|
||||||
|
|
||||||
|
A third formative factor was that I was also, and you probably know the term, a "red diaper baby." I'll just leave it at that. Even though my father became somewhat conservative when he had to confront the sixties, I grew up with that consciousness. Then I was also a child of the sixties, and was very active in the civil rights movement, anti-war movements, peace movements. That was a big part of my identity. I went to Oberlin College, which was a focal point for student activism.
|
||||||
|
|
||||||
|
All those things were about conflict. In a sense, conflict was a unifying factor of both the bad things that had happened and good work that could be done. In the early days of teaching and writing---particularly teaching people to be mediators and conflict interveners---I used to say that I grew up as a teenager and young adult, knowing pretty well how to raise conflict, but not what to necessarily do once I had raised it. As time went on the initial answer was: get people together to talk and see what we could work out. But as time went on I realized, no, raising conflict is really important as well. It's almost in a dialectical relationship with doing something to move it in a more constructive direction .
|
||||||
|
|
||||||
|
I graduated from college in '68. I was facing the draft. I wasn't sure what I was going to do. My initial efforts to avoid the draft by applying to be a conscientious objector didn't work because they decided I really did believe in war. I thought, well, I don't know where this is going to lead me. But what would be a good thing to do during the period of time before I actually do get drafted? I was a child of social workers, and I liked working with kids. I'd done a lot of work as a childcare worker at this residential treatment center and as a camp counselor. So I went to social work school at Columbia in New York. Over the two years that I got my master's degree there, I received a very high number in the lottery, which meant I didn't get drafted.
|
||||||
|
|
||||||
|
Now I had a social work degree, and I worked as a child and family therapist at a drop-in center mostly for recent immigrants to New York, that sort of thing.
|
||||||
|
|
||||||
|
*At that stage, what tools were available for you for helping people through conflict? What was offered to you, what was at hand?*
|
||||||
|
|
||||||
|
There was nothing specifically framed that way. I was trained to be a therapist, and I was trained in a fairly Freudian agency---a sectarian one, the Jewish Board of Guardians, now the Jewish Board of Family and Children's Services. I feel like I had two kinds of trainings or learnings in my life, in grand systemic theories that sought to explain the world in their own way. I'm glad I got training in both of them, even though I ended up seeing significant flaws in both of them. One was Freudianism and the other Marxism. I guess Marxism and Freudianism are, in a way, training about conflict---class conflict and internal conflict. I reject a lot about those systems now. But it wasn't a bad intellectual discipline at that point.
|
||||||
|
|
||||||
|
*Was there a transition, then, from working in the context of agencies, working with who's coming through the agency, to a point where you realized you wanted to try to create some new practices or new frameworks?*
|
||||||
|
|
||||||
|
Well, I was struggling with it all along. I mean, this was a Jewish agency, and a good one, but it was running a program that was mostly for kids from the Dominican Republic but also some from Puerto Rico, Haiti, Costa Rica---and the agency hardly had any Spanish speaking staff at that time. They did have staff who spoke some Spanish, maybe one or two, but almost no one who came from the cultural background of the people we were working with. It didn't seem an appropriate system to me. I felt there was an elitist tone to the agency. The attitude toward staff seemed to be: how "we are the best, and you should really feel really lucky to be here." Nonetheless, I got some very good training there, and and an important side benefit for me was the staff union, in which I was very active, became a shop steward and a member of the negotiating team. In some ways, for my later career, that may have been the most important training I received.
|
||||||
|
|
||||||
|
So after working there for a year as an intern, and then for two years after I got my degree , and I received some good training and supervision, I decided I needed to leave. I also felt it was time to leave New York. That was maybe helped by breaking up with somebody who I'd been in a relationship with and being a little heartbroken about that. My brother lived in Colorado. I called him up and asked whether he knew of any ranch in the area that would like somebody to work there for the summer. That was really naive, I have to say. But it seemed like I needed a break from the professional path I had been on, and I didn't know whether I would ever go back to doing social work.
|
||||||
|
|
||||||
|
I ended up living on a collective farm with whom he put me in contact. I stayed there working for room and board over the summer, and I met Reggie there, my first wife, and Ethan, her then-two-year-old kid. I ended up living there for a year and half during which time I drove a school bus to bring in some extra money. I guess I was part of the "hippie" culture of those I've never really accepted that term, but my son Mark has insisted, "No, you were a hippie, Dad, just accept it." And then, after a year of being a school bus driver and a wannabe farmer, I was ready to do something else. I moved away from the farm after a year and a half. Reggie and I moved into a house in Boulder, right next to my brother's house. The two houses became the Juniper Street Collective---the place Mark and Ethan grew up in. I got a job in a program at the Mental Health Center in Boulder called Our House, which was a drop-in center for teenagers. Interesting---there's still a Facebook group of kids who hung out at Our House all these years later that I'm part of. Many of them are grandparents now.
|
||||||
|
|
||||||
|
I also worked on the adolescent team of the Mental Health Center as a therapist, as did Reggie. But my main identification there was with Our House, which was a kind of sixties sort of place that had some really interesting things going on, but some really poor boundaries too.
|
||||||
|
|
||||||
|
Then I was asked to run a methadone clinic, which I did for about a year and a half or two years, acting part of the time as head of the overall substance abuse program of the MHC (which included the Methadone Clinic, Our House, and several other program). This was part of a program funded by the National Institute of Drug Abuse money. This funding base was a problem for the Our House program because those kids weren't coming in to be treated for drug abuse, although some of them did have substance abuse problems. They were there to hang out in a supportive environment with friends, engage in a variety of structured and unstructured group activities, and receive various kind of counseling as and if they were ready for it. Working in the methadone clinic was a real learning experience for me. I was way too young and inexperienced to be the director of the program or even a substance abuse counselor, as most of us were in that program, but we did okay, I think. There were some really intense things about that job in terms of the trauma people were dealing with and the conflicts they faced and staff had to deal with.
|
||||||
|
|
||||||
|
After about 3 1/2 years in that job I was ready to be done with it. I didn't know what I wanted to do next. I had this ambivalent relationship to therapy and social work. I felt like I had something to offer, but it didn't feel quite like home in a way. So when Reggie finished getting her MSW in Denver, we both quit the MHC and traveled for about four months. We took a four-month trip through Canada and the US. Then Ethan went back and stayed with his dad, while Reggie and I went to South America.
|
||||||
|
|
||||||
|
When I came back, what was I going to do? I didn't really know, and my father was quite ill then. I spent some time with him in Cleveland. This would have been 1977, and then he died in December. Then I started looking for jobs. You can figure out the psychodynamics of this if you want---it kind of hits you over the head. I ended up getting a job as a team leader at a residential treatment center in Broomfield, Colorado, which in those days was called Wallace Village. Then I was appointed as the program director, which was like the clinical director.
|
||||||
|
|
||||||
|
But then once again my ambivalence about what I was going to do arose. I ended up having not the best relationship with the director, who was a behaviorist---and even though I wasn't a Freudian, I also wasn't a Skinnerian.
|
||||||
|
|
||||||
|
At the same time, I was involved organizing demonstrations being organized at Rocky Flats, a nuclear weapons facility. There I met Chris Moore, who eventually moved to Boulder, but was then living in Philadelphia. I met him doing nonviolence training in connection with the protests and sit-ins at Rocky Flats. He and I ended up doing a lot of training in peacekeeping and nonviolent civil disobedience. Anybody who was planning on joining the sit-ins at Rocky Flats had to go through a training that we conducted. When Chris went back to Philadelphia, I continued to e part of the team of trainers we had recruited. Later on, Chris moved to Boulder and for a while lived in the Juniper Street Collective. My meeting with Chris was critical to my future work a mediator and conflict intervention/
|
||||||
|
|
||||||
|
Chris had become interested in mediation, and with his encouragement so did I. When I left Wallace Village (by mutual agreement---although I think there was no way I could have stayed there any longer)---I worked part-time at a really interesting residential program called Forest Heights Lodge in Evergreen Colorado, about an hour's drive from Boulder. I also started a small private practice as a therapist and was getting training in mediation (mostly through starting to act as a mediator, but also as a mediation trainer myself). Chris and I had been offering conflict training to activists but also in a number of other settings--, for example prisons and social agencies, and Chris asked me to help him do some training for people interested in mediation.
|
||||||
|
|
||||||
|
*So your first exposure to conflict and mediation was more out of the social movement experience than the therapeutic experience?*
|
||||||
|
|
||||||
|
Absolutely. But there was also a movement building in mediation, and four of us ended up as partners at a place called the Center for Dispute Resolution in Denver, which became CDR Associates in Boulder, which still exists, with offices above the Spruce Cafe in North Boulder, on Yellow Pine and Broadway. That was my formal entry into doing it as work. We were trying all sorts of ways of making money, but then we got a grant from the Hewlett Foundation that allowed four of us---Chris, Susan Wildau, Mary Margaret Golten and me---to make our work CDR a paying job.
|
||||||
|
|
||||||
|
By then I was also doing a doctoral program at the DU school of social work, and I used that as a vehicle for studying conflict. I was studying conflict theory and conflict intervention. I was also doing a little bit of therapy on the side when a lawyer who I knew approached me to ask for my help. She represented a parent who was undergoing a termination of parental rights process because there had been serious abuse and neglect in the home. She needed an expert witness to testify for her client and asked if I would be that expert witness. I said, "No, I won't do that. But how about if I mediate?"
|
||||||
|
|
||||||
|
That just came out of the top of my brain, and she said, "What?" which was pretty much my own reaction to what I had just said. I suggested an attempt to mediate a voluntary relinquishment agreement between the birth parent, the foster-adopt parents, and the child protection services agency. It turns out that was a very innovative approach. So Mary Margaret and I acted as co-mediators and the parties worked out an agreement averting a formal trial and allowing the foster parents to adopt the child in question. After that I was referred a number of other child welfare cases. Mary Margaret and I then started a two year long child protection mediation project, which became the basis of my doctoral dissertation. This effort turned out to a significant foundation for a whole new area of mediation services---child welfare mediation is now happening throughout the US and Canada (and elsewhere). We were one of the first two places to try it, and developed an important partnership with child welfare services in Boulder and Denver's (including lawyers who represented agencies, children, and parents).
|
||||||
|
|
||||||
|
In this and in many other ways CDR took off--growing from literally a church basement operation to a well funded and recognized conflict training and intervention service. In order to survive in our early years, we basically had to take all comers because we needed the money, which meant we were doing a lot of work that we weren't specifically trained for. But neither was anybody else.
|
||||||
|
|
||||||
|
*Who were these clients?*
|
||||||
|
|
||||||
|
We worked in many different conflict arenas. We had a family mediation program. We did work for government agencies, teaching them conflict resolution for public processes, and we did some fairly large-scale conflict interventions. I did a bunch of organizational work---labor management, but also on conflicts within organizations. I still do that occasionaly. And we also ended up training internationally and helping set up conflict services in quite a few other countries. So things just grew that way over the years. Even though the Center for Dispute Resolution existed before the partnership formed, we really built it from a church basement bare bones operation, doing mostly landlord-tenant or neighborhood mediation. We did community mediation too and facilitated dialogues on public policy issues. For example, one of the more recent ones I did in Boulder under CDR's auspices was about the location of the homeless shelter in North Boulder.
|
||||||
|
|
||||||
|
*Yeah, that was a big deal.*
|
||||||
|
|
||||||
|
Still is.
|
||||||
|
|
||||||
|
CDR was starting to do a lot more work that required traveling---for example, over the years I did a lot of work in Eastern Europe, and then I also did a lot of work in Australia and New Zealand and Alaska. But when Mark was born in 1984, I started trying to develop local work with city government, state government, and county government.
|
||||||
|
|
||||||
|
So that's my journey. Fast forward from 1978--79 to 2002, when my first marriage ended. I got remarried to Julie and moved to Canada. I still was doing work for CDR, but by 2006 or so, I started thinking I'm far away from there. CDR was going in some directions that weren't my favorite---I used to joke (although there is truth in this) that when I couldn't stand the words "billable hours" anymore, I realized that I needed to move in a different direction.
|
||||||
|
|
||||||
|
So then I thought, well, maybe I could go out on my own part-time, but maybe it might also be time for me to have an academic home. In 2006, I got a nice offer from Creighton University, which had a grant to start a conflict program there--the Werner Institute. The guy who was the founding director asked me whether I would you be interested in doing some work with them. I said, "Sure!" And he asked whether I would consider being a faculty member. I said, "Well, I'm not moving to Omaha." So we worked out a deal where I worked half-time as a non-tenured full professor. I'd already written a couple of books by that point---I believe that's why they wanted me.
|
||||||
|
|
||||||
|
They would fly me in a couple times each semester for ten days or so, and I'd do some online work with students in between. They provided accommodation and transportation as well. It was a very nice deal which worked well for all of us. I did that for fourteen years, and then I retired from it because that program was going through changes. I was seventy-four years old by then.
|
||||||
|
|
||||||
|
*As you were getting started in Boulder and developing this practice, clients were coming in with challenges that you were never trained to deal with---nobody was. How did you start building up a practice, building up tools and strategies? How did you begin to learn how to mediate conflicts?*
|
||||||
|
|
||||||
|
I did eventually take some courses and go through some seminars, so I got some training, but a lot of it we were creating ourselves. It was a very creative period of time. And it wasn't just us---this was happening in the conflict field more broadly. The field had a lot of very interesting creative people, like John Paul Lederach. I went to a course he taught, and he went to a course I taught.
|
||||||
|
|
||||||
|
People were making efforts all to build the peace and conflict studies field in many places. The Harvard Negotiation Project was starting. There was some funding for community mediation centers that we were one of, but these programs took many different forms. There was the deliberative democracy movement, Partners for Democratic Change, Search for Common Ground, Accord, Resolve, the San Francisco Community Boards, and many other growing and innovative groups/ So we weren't alone in doing this. We were part of a growing literature and organizational base. There was also the National Conference for Peacemaking and Conflict Resolution, which was part of the peacemaking field that was growing too. It came out of a slightly different tradition, but we interacted a lot. The peacemaking field to a large extent came from the Quaker and Mennonite tradition. Actually, the Mennonites played a role in our formation---when we were still a church basement office in Denver, it was in the Mennonite church, and their volunteer was our first office worker.
|
||||||
|
|
||||||
|
Arbitration was also growing at that time, and there was a whole labor management side of this too. There was an organization called SPIDR---Society of Professionals in Dispute Resolution---and there was also\\ the Academy of Family Mediators with which I was also very involved.
|
||||||
|
|
||||||
|
A lot of creative stuff came out of what we did. If you're familiar with Chris Argyris or Donald Schön's work on reflective practice, that's kind of how we did it. We had approaches we taught, and then our actual practice (our "espoused theory" and our "theory in practice"). For me, it was a very creative process to see the tension between what I was doing and what I was teaching.
|
||||||
|
|
||||||
|
The kind of bible in the field of negotiation in those years---to some extent it still is---was a book called *Getting to Yes*. It talked about positional and interest-based negotiation, this idea that the way you resolve disputes is to get people to talk about the interests underneath their positions. There were two co-authors from the Harvard Negotiation Project: Roger Fisher and Bill Ury. Roger Fisher's been dead for many years, but Bill Ury still lives in Boulder. He's a wonderful guy. He's written quite a few books. He's a wonderful writer, one of these writers whose storytelling does the heavy lifting of presenting his ideas, and his book has been a major bestseller. But I came to believe it was overly simplistic and prescriptive. Position and interests are not that different in essence--it's more about how they are presented and how far we did into the reasoning and motivational basis of people in conflict.
|
||||||
|
|
||||||
|
I also remember how we taught active or reflective listening n our earlier years, and I always felt there was a lot of bullshit about that. No natural conversation really is that formulaic. These discrepancies between what we taught and how I at least really worked were at the basis of a lot of growth for me much of which ended up in books that I wrote and in the way I taught as well.
|
||||||
|
|
||||||
|
That was a way in which my own thinking developed. It was partly in response to what others were saying, and partly in response to what I had been saying that I didn't quite believe anymore. My favorite bumper sticker says, "Don't believe everything you think." I was noticing either my practice wasn't following what I preached, or my preaching wasn't following what I practiced, and in that tension was a great deal of creative space.
|
||||||
|
|
||||||
|
*Are there particular tools or patterns of conflict or techniques that you keep coming back to and keep finding truth in?*
|
||||||
|
|
||||||
|
Yeah, but they tend to not be things you do as much as ways of thinking. People always want you to teach how you do it---"I want something practical. Give me something practical." That is all well in good, theory and practice need to inform each other, but real growth comes in the maturation of our understanding of what we are dealing with in conflict and how can intervene in it in a productive way.
|
||||||
|
|
||||||
|
There are two things that I've really come back to over and over again. First, we do not really succeed in conflict by being neutral. In fact, the concept of neutrality is a very flawed one. That's why I wrote a book *Beyond Neutrality*, and another book, co-authored with Jackie Font-Guzmán, called *The Neutrality Trap*. Mediators often market themselves as neutral---"we're neutral, we're impartial, we're just here to help you." But we have an awful lot of values and life experiences that inform our work, and in most circumstances people want us to be authentic and transparent about that. One of the things I did not like about psychoanalysis, for example, is the expectation that we not put our own personality into the process.
|
||||||
|
|
||||||
|
People want that personality. What people don't want is for us to manipulate them. If we say we're going to help them work out stuff, they don't want us to power them into something they don't want. But they also don't want us just to sit by in the name of neutrality while people get run over.
|
||||||
|
|
||||||
|
I have learned over the years that my great ideas, when I'm in a third-party role, for how to solve a conflict are usually not such great ideas---you really have to trust people that they know what's best, and it needs to come from them. Not that I never have ideas, but I'm not the type of mediator who listens to everyone, gets opening statements, and puts people in separate rooms, which is how a lot of corporate mediation goes. You beat this person up a little bit, you beat that person up, you come up with something---no. I really believe people need to be brought together as much as possible and our job is to help do the hard work in conflict that they need to do. But that doesn't mean I'm passive.
|
||||||
|
|
||||||
|
The second thing is that we have to help people raise the level of conflict. If we just see ourselves as calming things down, helping people come up with some resolution, and avoid intensifying a conflict we are often papering over really important issues and contributing to often unjust or unstable status quo. While there are often times when what people want is to calm down a conflict and paper over the deeper issues,---a lot of times that's what people want and need, but a lot of times it isn't. Particularly in very serious conflicts, people need help in raising the more difficult issues, and they need help in saying what they are thinking and feeling in a way that is authentic but doesn't shut everything down. As conflict interveners, have to be aware of our own conflict-avoidant tendencies and so that we don't actually stand in the way of getting to the level of depth where the conflict actually "lives."
|
||||||
|
|
||||||
|
In fact, I think of our field as a field of conflict *engagement* specialists. One of the things I used to ask students is, before you ever know anything about a case, what do you see your purpose as being in a conflict? People can have all sorts of different answers. My answer was: I'm here to try to help people have the conversation they need to have.
|
||||||
|
|
||||||
|
*Right. You wrote about "staying with conflict."*
|
||||||
|
|
||||||
|
That's right. I also wrote a book called *The Conflict Paradox*, which is in some ways I think my most interesting way of looking at things---though it's probably the least selling of my books. A lot of what we're doing in conflict is helping people get past where they see things as in opposition to each other, and instead see them in a more dialectical way, as part of the same whole, like competition-cooperation, or logic-emotions, that sort of thing.
|
||||||
|
|
||||||
|
*I appreciate the way you talked about your interventions as being primarily about a way of thinking as opposed to, say, a system or a procedure or an algorithm. How do you impart to clients that way of thinking? How do you prepare them for entering into and maybe escalating a conflict in the way they need to? How do you take them from where they're first coming to you to a point where they're ready to engage in a more productive approach to conflict?*
|
||||||
|
|
||||||
|
There isn't a single answer because, for one thing, some clients aren't ever going to be ready. And I don't see myself exactly in a kind of didactic relationship with clients. But I think if I listen, if I'm there to listen for what's really important to them---and in the interactional space---it's going to come out. And the question is, do I shut it down or move it forward?
|
||||||
|
|
||||||
|
Sometimes you have to say, "What do you need right now in this situation? Not necessarily from me, but just what do you need? Do you feel you need to be heard better? Do you feel you need to understand better? Do you feel you need to be empowered in some way? Do you feel you need other people participating in this? Do you feel you need an advocate?"
|
||||||
|
|
||||||
|
One of the ways we can help people is to get beyond their belief that we are here to fix things is to take on other roles than third-party ones. For example, some of the most useful work we can do in many circumstances is as an advocate role or a coach. That's something I've talked about: the three kinds of roles we often play are system roles, third-party roles, or ally roles. Sometimes the best way you can help people is to be an ally. I remember Bill Ury saying he thinks that's true for some of the most important the work he's done in the international arena.
|
||||||
|
|
||||||
|
Even as an ally, you have to remain true to yourself. Once I was working with a university as they were dealing with some pretty intense student protests. I said, "I'm not here to help you put down student protests. You know my background. But I can talk to you about how you can interact with them." That got me into dealing with facilitating---co-facilitating, really---interaction between Jewish and Muslim, and also Palestinian students on campus (this was about 25 years ago).
|
||||||
|
|
||||||
|
I don't do a lot of formal mediation anymore. I live in this little town. I find myself getting into it sometimes, but I do a lot of consultations still, often in that ally role.
|
||||||
|
|
||||||
|
*How much do you see patterns playing out across conflicts that repeat themselves in conflict after conflict, as opposed to having to approach each one as a really distinct challenge with very distinct sets of strategies? How much about conflict, as you experience it, repeats itself as opposed to needing to be treated as always new?*
|
||||||
|
|
||||||
|
That's a very important thing to look at---the patterns of interaction, both between the parties and between you and the parties. I used to say, if I've tried something twice, and it hasn't worked, I better try something else. Even just asking the same question---I remember one time in a video somebody took of me during a demonstration, I could see myself not letting this go. I kept saying, "What do you think the other person's trying to tell you right now?" And this person kept projecting all these evil things onto the other person. I kept wanting to sah, "Bernie, will you give it up?" It was a real learning.
|
||||||
|
|
||||||
|
From case to case, there's always the question of whether people can listen, and whether, when people aren't feeling heard, instead of listening, they speak louder. I started realizing that, more often than not, if you want to be heard, what you have to do is listen better. And if you want someone else to be a little more straight with you, you have to be more revealing yourself. I'm not proposing that as a rule always, but it is something you see happening over and over again---that particular kind of communication pattern.
|
||||||
|
|
||||||
|
Another thing to look at over and over is what I learned in therapeutic workshops: looking at rhythms of interaction. So we've established a rhythm of interaction---you ask your question, I go on for ten minutes, then you ask another question.
|
||||||
|
|
||||||
|
Is one person doing all the talking? Does somebody get halfway through a sentence and the other person breaks them off? Is it like my Jewish family's conversation at a table, where nobody ever finished a sentence?
|
||||||
|
|
||||||
|
Those are patterns of interaction. Another pattern is the rhythm of emotionality. Something you also see over and over again is how quickly people rush to solutions. Sometimes that's fine---sometimes people rush to very good solutions very quickly when you think you really need to have a much longer process, and you don't.
|
||||||
|
|
||||||
|
I always remember an organizational mediation where there was a dysfunctional team of people, but the real problems were between the supervisor and one of the key staff members who had a lot of power in the team. They were really going at it, so we set a day aside for a retreat. They kept arguing about how they said good morning to each other.
|
||||||
|
|
||||||
|
One said, "I say good morning, and you never respond to me. You never even lift up your head." And the other person said, "Yeah, but that's because if I say good morning, you're going to feel you've communicated with me enough, and you go in your office, and I don't see you all day."
|
||||||
|
|
||||||
|
They went back and forth, and I said, "Okay, this is not what this conflict is about. We're not here to spend the day talking about how you say good morning to each other. What's really going on?"
|
||||||
|
|
||||||
|
When it came out---I remember it was very sensitive---but the very hard-nosed, hard-to-work-with person said, "It all started a while back when I had a seizure at work." And I thought, *Oh my God! She's prepared to be vulnerable here.* The supervisor had discovered her having a seizure, had dealt with it immediately in the break room I think, and called 911, and she got taken away, and they stabilized her, and it never happened again.
|
||||||
|
|
||||||
|
The supervisor had this narrative of "I was a hero. I rescued her." Her story, though, was, "I came back, and everybody knew about it." And the supervisor said, "Oh wow. I was really shaken. I guess I told some people because I needed to process it, and I am really, really sorry." The person looked at her and said, "Apology accepted."
|
||||||
|
|
||||||
|
I didn't do much other than to say, "What the hell is this really about?" And it only could have gone that well because they really were ready for something to change. But it does show, I think, the importance of sometimes saying, "I don't buy it. I don't buy the stories you tell." One of the things you do is listen to every person's narrative. In conflict, they don't seem to overlap. What you're trying to do is expand each person's story enough---the Venn diagram, if you will, of the story---to overlap, and then begin to have a different kind of conversation. Those are some patterns, I guess.
|
||||||
|
|
||||||
|
*One thing that stuck with me earlier is what you said about the systems that expect people to speak in particular kinds of ways, and how you want people to speak in their own way. That resonated with an experience I had with trying Nonviolent Communication in a relationship, and I found myself just policing the other person's speech the whole time, and it made everything worse. I'm curious how you are able to push people into a different way of hearing or speaking, while at the same time ensuring the process is really theirs---it's not pushing them into an artificial box.*
|
||||||
|
|
||||||
|
Yeah, as my kids have said from time to time, "Don't do that social work shit with me" or "that mediator shit with me." And I would feel that too. That's a problem. I think Nonviolent Communication has a lot going for it, and I think active listening has a lot going for it, but it's prescriptive.
|
||||||
|
|
||||||
|
In fact, for every person we interact with, we negotiate a communication pattern in a subliminal way, and there's power in that negotiation. You have to be aware of your own power, or you could very well bully people into doing something. That's another thing you always have to look at---power dynamics.
|
||||||
|
|
||||||
|
I don't ever think you should push people or pull people, unless you're really going to power over them and they're okay with that, and if their natural communication isn't so far away from your style. There are significant gender issues here, and there are significant cultural issues here. I spent a lot of my life having to work across different cultural lines. You can do it---I don't think you can ever work cross-cultural conflict with sort of the perfect match of the two cultures. You have to be aware of your own power.
|
||||||
|
|
||||||
|
One approach is to give people the communication problem to solve. You can't solve the problem yourself---it has to be a joint effort. And if it's a three-person thing, it has to be a joint thing. In most circumstances you can start out by being a good listener, but not always. Sometimes people have to say, "You've got to make yourself vulnerable. I've got to understand who you are better before I'm willing to engage."
|
||||||
|
|
||||||
|
Let me tell you another story. I did some work once, Mary Margaret and I, with a large Native American group and a large Fortune 500 company. It's written up in some book or other. The company had a big energy-producing facility on the reservation, and they had a lot of conflicts around it. We got called in because of questions about who got to control the complaints around workplace stuff---was it the state or was it the tribe? There were a lot of sub-conflicts.
|
||||||
|
|
||||||
|
We got called in to work with them, and it was very interesting because you had these suits from the Fortune 500 company and these very sophisticated negotiators from the tribe. We started out with a smudge ceremony and prayers, and you could sort of see that the suits were really used to having to do this, but they were eye-rolling---there was a lot of eye-rolling going on, even if their eyes didn't really roll. The tribe negotiators were very identity-based, value-based in their approach---what gives meaning to them, their dignity, and the dignity of their culture. And the language of the suits was all business-like: "Well, how are we going to work this out so we can each have predictability in our relationship? We can know how to plan." Whenever they spoke like that, the Native American group felt disrespected, and the people from the company, who were good people, were saying, "Yeah, yeah, we're trying to do all of that respectful stuff. We've got to talk about business, though."
|
||||||
|
|
||||||
|
I basically looked at them and said, "All right, here's what I think is going on," and I just described to them what I described to you. I said, "Is that right?" And I said, "I'm not here to tell you what to do about it, but I think that's what's going on. What do you think we should do about it?" And I did it with enough humor that they could laugh a bit about it.
|
||||||
|
|
||||||
|
*You helped them develop a shared meta-story about what was going on between them.*
|
||||||
|
|
||||||
|
That's exactly it. And it worked. I'm sure to this day it still is a striggpe, because I think it's a long-term relationship--- and they're probably completely different players, but the structure is still there. They probably still struggle with that.
|
||||||
|
|
||||||
|
*Have you had experiences where ideas or practices that you've developed have been used in a way that you were not comfortable with?*
|
||||||
|
|
||||||
|
I have, of course, seen people who I've taught or tried to mentor---I don't like sometimes how they're quoting me. But I used to say that the thing that really scares me as a supervisor or mentor is somebody who will do exactly what I tell them to, because that's not them, that's me. "What would Bernie do?" No, no, no! What would you do if you were really being your best self?
|
||||||
|
|
||||||
|
*Do you see lessons from your experience that you just wish you could share more widely, particularly as political conflicts intensify in the United States?*
|
||||||
|
|
||||||
|
I don't feel there's equal validity right now to all sides. I don't think that's the answer. I think that's a very liberal answer, actually---"you just have to listen better." And we're seeing that in the response to this election, which is, "Well, the Democrats just need to really listen." We heard that when Trump was elected in 2016. We're hearing some of that now, but it takes a little bit more of the flavor of "let's listen to the working class."
|
||||||
|
|
||||||
|
I do think the Democrats have abandoned the working class. But if you go up to a bunch of working-class people and say, "We just want to listen to you better," then you're being another elitist, white liberal. I think oftentimes the mistake we make in response to this is to think, "What can the Democrats do better?" In the face of really hard reactionary movements in the past---McCarthyism, or just racist movements all over---changes occurred not through parties but through building movements. I think that the most important question for me right now is, how can I help with that?
|
||||||
|
|
||||||
|
*Is it because movements sometimes take us deeper into conflict, because they escalate conflict?*
|
||||||
|
|
||||||
|
I have to think about whether I'd say it like that. I mean, I think that's more a tactic that movements have to decide. The subtitle of my last book, *The Neutrality Trap* with Jackie, is *Disrupting and Connecting for Social Change*. And I think that's more how I think about it now. Change happens---you have to disrupt the systems that need disrupting, but you also have to make connections. And the strategic question is, how do you do both? Or how do you do it in an effective way?
|
||||||
|
|
||||||
|
If you look at movements that have been successful like the civil rights movement, there was very calculated disruption that raised conflict. But there were also efforts to build coalitions and reach out to people who were ready to be reached out to.
|
||||||
|
|
||||||
|
If you look at the movements I've been part of in my life that have been somewhat successful, party politics was in the background. You voted---you voted for the people you thought would most move your agenda forward, but you didn't put all your energy there, and you didn't put all your analysis there. So the civil rights movement, the feminist movement, the environmental movement, the peace movement, the working people's movements---all put their energy into supporting candidates, but that was not their central focus. And I think that's a lesson I feel for this time.
|
||||||
|
|
||||||
|
I mean, I hope the Democrats do think about what they've done to lose their base so badly---although you can argue how badly it really is. And I hope they listen, and I hope that we work very hard to press ahead. But I think the one thing Trump really got right was that it's a systems problem, and that people don't feel the system's working. He got that, and he said it over and over again in different ways, and he's trying to disrupt the system now. He's doing it in a totally chaotic, counterproductive way, I think. But he got the problem right.
|
||||||
|
|
||||||
|
I mean, you can say, "Oh, look! Our economy is better than others in the world, look at employment." But people your age and younger have a hard time buying a house. The living standards of your generation are lower than my generation's was---first time that's happened in a long time. Something's not working. And we're not solving climate change. And we're not solving income disparity. Systems change means disrupting and connecting and building movements, and seizing opportunities and learning lessons, and licking your wounds when you have to.
|
||||||
|
|
||||||
|
*Is there anything else you'd like to share before we finish? I mean, I think that's actually a good, full-circle way to end---we started with social movements and end with them.*
|
||||||
|
|
||||||
|
The only thing I feel like when I talk like this---it sounds like I've got it all figured out, and I sure as hell don't. I'm sharing with you how I try to think about things now. It's way beyond me in terms of how we're gonna get out of the mess we're in. One of the chapters in one of my books is called "Optimism and Realism." And I think genuine optimism or even hopefulness doesn't work if you don't have any realistic basis for it. And we're facing that crisis right now.
|
||||||
|
|
||||||
|
If you don't maintain some optimism or hope for change, then you may as well just pack it in, and I refuse to do that. That's a lesson I've also learned in my personal life---my wife has struggled with cancer for fifteen years. So I guess I feel like this, too, shall pass.
|
||||||
|
|
||||||
|
I don't know how. I want to stay hopeful for change, and do my very best to do whatever I can to be a good player in that from where I sit now. But it has to be tempered by realism, by just how hard it is and how bad a situation we're in right now.
|
208
content/interviews/mayernik-disegno.md
Normal file
208
content/interviews/mayernik-disegno.md
Normal file
@@ -0,0 +1,208 @@
|
|||||||
|
---
|
||||||
|
narrator: David Mayernik
|
||||||
|
subject: Disegno
|
||||||
|
facilitator: Nathan Schneider
|
||||||
|
date: 2025-06-18
|
||||||
|
approved: 2025-06-18
|
||||||
|
summary: "An artist and longtime professor at the University of Notre Dame's School of Architecture practices a kind of design that reaches across time and space."
|
||||||
|
location: "Lucca, Italy"
|
||||||
|
headshot: "david_mayernik.jpg"
|
||||||
|
topics: [architecture, art, urban planning]
|
||||||
|
links:
|
||||||
|
- text: "Personal website"
|
||||||
|
url: https://www.davidmayernik.com
|
||||||
|
- text: "The Meaning of Rome: The Renaissance and Baroque City"
|
||||||
|
url: https://www.edx.org/learn/humanities/university-of-notre-dame-the-meaning-of-rome-the-renaissance-and-baroque-city
|
||||||
|
---
|
||||||
|
|
||||||
|
*Your body of work includes oil painting, frescoes, opera sets, architecture, and more. How do you describe your practice, primarily?*
|
||||||
|
|
||||||
|
I would say I'm an architect only because architecture incorporates all those other things. If you say you're a painter, it's harder to pull architecture into it. Architecture can incorporate the other arts, while the other arts don't easily weave in architecture.
|
||||||
|
|
||||||
|
The people who were exclusively architects in the Renaissance in Italy were the exception. An architect was often someone who knew how to paint or sculpt. The Sangallo family—especially Antonio da Sangallo the Younger, who did a lot of palaces in Rome and was in charge of St. Peter's for a while—were thought of as architects. They came out of a woodworking tradition, and they weren't painters or sculptors. But most of the architects of the Renaissance were painters or sculptors first. Bramante was a painter before he became an architect, like Raphael and Leonardo—most people we think of as famous architects of the Renaissance were trained as something else.
|
||||||
|
|
||||||
|
Architecture was an extension of the other arts, and that had credibility because the fundamental skill that underlay all the arts was drawing. If you could draw, you could design anything. It was Bernini who said in the seventeenth century that architecture is pure *disegno*, pure drawing and design. Architecture is a manifestation of drawing more directly, but also in a more abstract way, than painting or sculpture.
|
||||||
|
|
||||||
|
Drawing is the thing that allows artists to migrate and do different things because it is conceptual. In Italian, *disegno* means both drawing and design, so beyond delineating it also means the ability to conceptualize.
|
||||||
|
|
||||||
|
*What does that mean for the relationship between the drawing and the building? Is the building just an expression of the drawing, which is the ideal form?*
|
||||||
|
|
||||||
|
That's a really hot debate. A lot of people lament the fact that, in the Renaissance, building became the execution of somebody else's drawing. The romanticized idea about the Middle Ages is that there was no such thing as the architect—there was a master builder, and while they could draw, they were building their own buildings. They were both the executor and the conceiver of the building.
|
||||||
|
|
||||||
|
In the Renaissance that process gets segregated into the person who conceptualizes and somebody else who executes. It's not that the person who drew the building didn't have experience with materials—every painter in the Renaissance knew how to paint fresco, which is basically working with plaster, what most buildings were covered with. Understanding plaster means you also understand the masonry support for the plaster. In the modern era, architects rarely get their hands dirty with any material participation in the building process.
|
||||||
|
|
||||||
|
*Is there a particular time and place where you center your practice?*
|
||||||
|
|
||||||
|
I don't want to say I live in the past—I'm very much a modern person—but I do think people were very good at what they did in periods in the past that I aspire to. I would like to be as good as them. I'm not interested in replicating what they did or living in the past. My life would be completely different if I lived even one hundred years ago; I wouldn't be married to the woman I'm married to. I don't want to return to the past. But there's a lot we can learn from it.
|
||||||
|
|
||||||
|
My happy place—as much as I love the Renaissance—is that I'm really a Baroque guy, because I was formed in Rome, and Rome is a Baroque city more than anything else. My way of approaching things comes out of the late seventeenth, early eighteenth century—a time when things hadn't gotten too ideological as they would with neoclassicism. Somewhere in there is probably where my natural hand is, my way of working.
|
||||||
|
|
||||||
|
*How did Rome teach you?*
|
||||||
|
|
||||||
|
I tell my students now—which is not exactly how it happened for me—that you can't learn from Rome. You can learn from the people who worked in Rome. Rome is this overlay of accomplishment and transformation over thousands of years. You can't take Rome and transplant it elsewhere. It's such a unique response to its own position and history. But you can learn from the many great architects who worked there. You can learn from Bernini or Raphael or Bramante.
|
||||||
|
|
||||||
|
There's a kind of romantic idea about *romanità*, a Romanness that you can bring to your work—a gravitas, a sense of seriousness, a weightiness that's very Roman. But there's a light, graceful side to Rome as well. You could take away a sensibility from Rome, but I think you can more directly, as an architect, learn from the architects, not from some vague feeling about Rome. I don't know how to take that and transplant it.
|
||||||
|
|
||||||
|
One of the things I tend to teach—which was controversial in my school—was that if you want to analyze something, you can only analyze something that was done intentionally. You can't analyze an accident or induce principles from a series of accidents, and a lot of what we have in Rome are accidents—things that happened without any design intent. The things you can actually apprehend and understand and learn from are the things that were done on purpose.
|
||||||
|
|
||||||
|
*As you're developing your practice in relationship to this place and its intentions and accidents, what kinds of rules or disciplines did you start adopting for yourself that, perhaps, other architects weren't adopting?*
|
||||||
|
|
||||||
|
When I was teaching at Notre Dame, a big part of the loose community of people who are roughly aligned with me—though we're actually more factionalized than many people understand—was a strong emphasis on urban design. By urban design, I mean the ways in which buildings play well together and contribute to something bigger than themselves, the making of streets and piazzas, the public realm.
|
||||||
|
|
||||||
|
One of the things I took away from Rome and emphasized when teaching was the role of buildings in shaping public space—that is one of their primary jobs. The role of buildings is to collaborate with other buildings to make public space. Unless you're building somebody's house in the middle of a field, anything in an urban context or even loosely related to an environment with other things around it has a responsibility to articulate and shape space and collaborate with other buildings.
|
||||||
|
|
||||||
|
*What are some of the ways that you do that, especially if you have buildings being built by different people at different times? How do you create the framework in which buildings collaborate around public space?*
|
||||||
|
|
||||||
|
If you're building in an existing urban context, the street system has already been determined, and unless you have some license to change how the street system works, your job is basically to reinforce that street system.
|
||||||
|
|
||||||
|
Creating public space in the American grid is challenging. If you want to create a plaza in an American city, the easiest thing is to remove one block of buildings and make it open space. Philadelphia has squares like that. Chicago has squares like that. One problem with them in terms of spatial definition is that usually the grid passes along the outside edges, making the corners kind of open. They don't have the same sense of containment with a closed corner that you have in European spaces, where streets often pass through the middle of the piazza. In Europe, you enter into the space rather than passing along its flanks.
|
||||||
|
|
||||||
|
For the TASIS school in Switzerland, I'm the master-plan architect, so I decide how the buildings relate to each other. If you're planning a campus, you have the responsibility and opportunity to organize buildings in ways that contribute to shaping space.
|
||||||
|
|
||||||
|
Some familiar campus plans include the college system at Princeton, Oxford, or Cambridge. The colleges are relatively self-contained, organized around a courtyard made by a grouping of buildings, like a monastery. They're all contiguous and collaborating in shaping a unique space. In that case the university is an accumulation of those colleges. A campus like Notre Dame is more like Harvard's, where it's an accumulation of individual buildings loosely organized around open quadrangles.
|
||||||
|
|
||||||
|
The TASIS Swiss campus is on a hillside, so it's really hard to connect the buildings and shape space in that monastic way. Because we're building it over time and the campus has evolved, it's an accumulation of discrete buildings that define and shape space, looser than a monastic model. The campus in Switzerland is more like a village.
|
||||||
|
|
||||||
|
I've tried—and it's actually been somewhat problematic for some people in the local planning department—to not make the Swiss campus look like there's a monotony of style. I've tried to particularize every building, give each their own unique character, but also respond to their specific type. The theater doesn't look like the gymnasium, which doesn't look like the library, so you can read the campus. As much as you want harmony between buildings, you also want special things to stand out or unique buildings to be legible as what they are. You can tell a church is different from a palace.
|
||||||
|
|
||||||
|
*When you're walking through the streets of a city—like here in Lucca—how do you see buildings interacting with each other?*
|
||||||
|
|
||||||
|
A city like Lucca is pretty harmonious. A lot of that happens in Italy because historically, people were building with a palette of materials that was constant over time. Masonry bearing wall buildings, mostly covered with stucco, are all going to harmonize almost by nature because of the constraints that masonry construction imposes on you—how big you can make openings, how many floors you can make a building. If you put a roof on, there are only so many ways of making eaves. There's a kind of natural harmony in most Italian cities, even if they're built over long periods of time, because the palette of materials was local and constant.
|
||||||
|
|
||||||
|
Lucca has a lot of brick because it doesn't have a lot of stone natively, while other cities are made more of stone because that was the indigenous building material. In the Italian tradition, brick is often just thought of as the structure, but the skin is stucco, and you can paint stucco any color you want. Historically those colors were earth pigments, so you have a natural palette that's already harmonized.
|
||||||
|
|
||||||
|
In Lucca, there's not the same kind of coordinated spaces that we have in Rome. Some of the great piazzas that I loved in Rome are designed to be coordinated. Lucca doesn't have that—it's kind of a looser gentility. The buildings are all polite to each other, but they're not all cooperating in an orchestrated way.
|
||||||
|
|
||||||
|
*When you're working in relationship to these traditions, do you impose particular constraints on yourself or on people working within your master plan? Is there a sense of accountability to the tradition? Are there lines you try to avoid crossing that another architect might not?*
|
||||||
|
|
||||||
|
I'm the master planning architect for the campus, but I'm also designing all the buildings, so I'm true to myself in that sense. The project has stretched out over time—it's coming up on twenty-nine years I've been working for them, and we're still not done yet. Their needs have changed too.
|
||||||
|
|
||||||
|
What has held the project together is the idea of it as a village. The actual form of the village has changed; we've done a variety of master plans, and we've resubmitted the master plans for a variety of reasons. The core principle isn't the form, it's the intent—the idea that it wants to feel like a harmonious village. The form is evolving and changing, and I'm evolving and changing with it.
|
||||||
|
|
||||||
|
It's been interesting. I've had to adapt. I'm designing buildings now that are different from the ones I had imagined before. It's almost like I'm working in my own historical context, which I'm responsible for. I'm responsible for negotiating with my own buildings, with different needs and purposes that I didn't see coming twenty years ago.
|
||||||
|
|
||||||
|
I've imposed on the process—and it's been a long struggle and we're still battling with it—that all buildings would be built in masonry bearing wall construction. I personally want my buildings to be made the way they appear to be made. Not all architects care about that. Most buildings on the Notre Dame campus for the last half century look like brick buildings but are really steel-framed buildings with a brick skin.
|
||||||
|
|
||||||
|
I imposed on the school that the buildings should be what they look like, masonry bearing wall. We've more or less been true to that, with some recent compromises that bother me, but basically the buildings are what they appear to be. That process is slower and can cost more, which means you can't afford to do other stuff like use fancier materials, or have more columns or carvings.
|
||||||
|
|
||||||
|
They're pretty simple buildings, and I'm prepared to live with that. I would like to do more elaborate stuff, but I made a choice that we were going to build these things in a solid, durable way, and I had to give up other fancier elements that we might have been able to do otherwise. That's the choice I made—not every architect would do that.
|
||||||
|
|
||||||
|
At the school, I've done frescoes on the outside of the buildings. The theater has an iconographic program, and so does the gymnasium, which I interpreted in a more ancient, holistic cultural way as a place where you form the whole person, not just the body. I gave the gymnasium an iconographic program, but not all the buildings really need that or merit it.
|
||||||
|
|
||||||
|
I would love to do a chapel or a church someday, because it's a space where all the arts can collaborate. I think architecture is limited in terms of what it can say rhetorically or poetically. In order to say something specific, it needs painting and sculpture, and not all spaces need that.
|
||||||
|
|
||||||
|
*How does working in a context like a school compare to religious spaces that you've also engaged in? How do you approach the craft when the job involves a church?*
|
||||||
|
|
||||||
|
What I've done is paint a cycle of frescoes in a historic church in Tuscany. There's a whole story—there was an amazing unfolding of events, a consequence of preparing the wall to paint a frescoed crucifixion; they discovered an eighteenth-century fresco under the whitewash, so we had to move the crucifixion. It resulted in a whole other series of paintings in response to the one that they discovered.
|
||||||
|
|
||||||
|
While I was painting the crucifixion, the people who took over the school where I'd studied fresco technique were restoring the eighteenth-century fresco. It was super interesting because the past was coming back to life.
|
||||||
|
|
||||||
|
*What was the exchange like with that older painting that was uncovered? How did it affect what you were creating?*
|
||||||
|
|
||||||
|
The chapel had an oil painting of Mary and John at the foot of the cross from the late seventeenth century. They were two canvases that were meant to be together, the same size, mounted in a simple frame with a seam between them, and mounted over the seam was a wooden crucifix. This church happens to be next to the Tuscan home of my Swiss client. She paid for the renovation of the chapel and said, "My architect paints frescoes, and I think you should have a painted crucifix."
|
||||||
|
|
||||||
|
I made a choice that I did not want to imitate the oil on canvas historical paintings. I would paint the crucifix in fresco so that it would not be confused with the historical paintings, but would also complete the narrative of Mary and John at the foot of the cross. I wanted to paint the cross on the wall with the canvases hung on either side, so it would function as an ensemble in two different media.
|
||||||
|
|
||||||
|
It was supposed to be at the end wall of the chapel. But as they were scraping down the whitewash on that wall, they discovered there was an eighteenth-century painting, an Annunciation. So then the Belle Arti had to come in and decide what it was and how important it was. We decided to move the crucifix to the middle of one of the long walls.
|
||||||
|
|
||||||
|
Because the church is dedicated to a local saint who was the evangelist of that area in the early history of the church—the third century—and his martyrdom happened on the spot where the church was built, I was going to have an oval of the martyrdom of that saint over the crucifix. Because we had to move the crucifixion to a long wall under a pitched roof, that wall was shorter, and I couldn't fit the oval over the crucifix. I decided to slide the oval down behind the crucifix, like a window, and paint a series of five ovals around the rest of the upper part of the chapel, showing the whole cycle of the martyrdom of the patron saint.
|
||||||
|
|
||||||
|
By sacrificing something where the fresco was originally intended, it actually sponsored the creation of a richer narrative cycle about the martyrdom of the patron saint. I didn't actually show the martyrdom itself; I used the crucifixion where the martyrdom would have happened in the cycle. On one side of the crucifixion is the moment when the saint and his companions are captured by Roman soldiers. The moment after is where his decapitated skull is set up as the site of an altar that then sponsors the church. We lost the actual martyrdom because I thought the crucifixion, the paradigmatic martyrdom, could take the place of that scene.
|
||||||
|
|
||||||
|
*What is the state of fresco painting today? Who still does it? Is it at risk of being a lost art?*
|
||||||
|
|
||||||
|
It was almost lost in the twentieth century. I got interested in it because of studying in Rome and wanting to paint and be an architect. I thought fresco was the perfect way to integrate the two. I knew someone who later became the Chairman at Notre Dame, an architect who dabbled in fresco; I asked him how he learned, and he said he read WPA manuals. During the 1930s, when they were trying to give work to artists and had artists painting murals in post offices and elsewhere, the fresco technique had sort of disappeared, so the WPA actually put out manuals on how to do fresco painting.
|
||||||
|
|
||||||
|
I found those manuals in the University of Pennsylvania Library, but I didn't really get it. Eventually I had the chance to study with a great restorer in Italy, Leonetto Tintori. He was one of the vehicles in Italy for continuing the fresco painting tradition. He was an artist who, during World War II, got involved with preservation of frescoes in Pisa and then made a career out of it.
|
||||||
|
|
||||||
|
The other conduit was an artist named Pietro Annigoni, who was a portrait painter from Florence. He got wealthy painting portraits, including the Queen of England, and then essentially dedicated the rest of his life to painting frescoes pro bono for churches. He trained a whole generation of people, and one of them is a guy named Ben Long, an American who went back to North Carolina, and has done a whole series of frescoes there. Ben Long is probably the most famous fresco painter in the United States.
|
||||||
|
|
||||||
|
There was a vogue for it in the 80s and 90s, I think because of postmodernism in architecture. I feel like it's fading away now—there aren't a lot of people that I'm aware of doing it. In Italy, there are some people painting frescoes, including some of the students of Annigoni's students.
|
||||||
|
|
||||||
|
There's a Russian artist who painted the dome of the cathedral in Noto, Sicily, which was damaged by an earthquake. When they restructured the dome, they hired him to paint frescoes of the apostles—over life-size, super realistic, very impressive frescoes.
|
||||||
|
|
||||||
|
Fresco was practiced all over Europe historically. Here in Italy people are very cautious about introducing new things into old contexts. It's one of those things that's just not thought of mostly unless you're recreating a historic fresco for some reason or you're allowed to reintroduce a fresco in a damaged historic context. Most people don't think about frescoes in new building projects.
|
||||||
|
|
||||||
|
The onus is on architects to bring it into the discussion, but most architects don't have training in that kind of thing. They're not figurative artists themselves—they don't think that way. I've hired myself to do them for the school in Switzerland. I bring them into my own projects, but a lot of architects aren't thinking that way. They're thinking about just getting the building built.
|
||||||
|
|
||||||
|
*How do you see the overlap between these traditions and practices and the institutional authorities that set rules for preservation? How do you relate to the rules they impose?*
|
||||||
|
|
||||||
|
It's a pretty intense discussion, and the fact that it's actually softened a little bit recently is interesting. Italy has a hang-up—it's not unique to Italy, but it's really strong in Italy: this fear of something they call *falso storico* or "fake history." Essentially, doing new things that look like old things and creating ambiguity about what really is old versus what is new. That is a modern art historical or preservation mentality.
|
||||||
|
|
||||||
|
We have it in the United States too. The Secretary of the Interior's guidelines for historic preservation also essentially mandate that additions to historic buildings have to be in a distinctly different style, which is a very modern thing. It's a kind of obsession with imposing the zeitgeist.
|
||||||
|
|
||||||
|
Williamsburg is an interesting case of rebuilding, but Williamsburg is essentially a fake—a recreation of a city that was virtually non-existent. But mostly there's an aversion to doing that. In Italy it has been very much frowned upon to work in a traditional mode.
|
||||||
|
|
||||||
|
Pietro Annigoni was called in to paint the frescoes when they rebuilt Monte Cassino, and they decided not to replicate the old paintings that were there but create new ones. Annigoni's style does not look old-fashioned. There's something very modern about his work. I think self-consciously he didn't want to look like he was painting neo-Renaissance paintings. They're figurative, but there's a dark, almost menacing quality to a lot of his paintings—like somebody who lived through World War II and seen the worst of humanity and just can't paint happiness. There's a dark underbelly to a lot of his work. I don't think there was ever fear that his stuff would be confused with historical paintings, so he was allowed to do that in the 1960s.
|
||||||
|
|
||||||
|
Otherwise, working in historical contexts and painting new frescoes—people would rather do nothing. I think that attitude is softening. I was recently asked to do a big fresco for a monastery in the Marche. We had to get approval from the local Belle Arti, and we did get approval because it wasn't in the church. It was in a space that was basically kind of neutral—a whitewashed, vaulted historical space that didn't have any old art that could be confused with it. It was a new thing.
|
||||||
|
|
||||||
|
I think anybody who does something traditional in art or architecture in Italy is often thought of as being a forger or a falsifier. Restoring instead really means that you have something existing to restore.
|
||||||
|
|
||||||
|
The guy I studied fresco with had a philosophy about restoration: if you have a fresco that's missing something, you do not fill it in—you plaster the wall and leave them unpainted. You do not fill in the gaps, even if it wouldn't take a lot of imagination to do so. He was rigorous about not replicating or filling in missing bits in frescoes. But I do not share that philosophy.
|
||||||
|
|
||||||
|
There is also a tradition in Italy that when you have a missing bit, you can fill it in if you're pretty sure about what was missing; but you're supposed to do it in a technique that's distinguishable—not in true fresco. Let's say you have a purple drapery. The Italian technique is what they call *tratteggio*—it's hatching with little fine brushstrokes. You paint red, blue, red, blue, red, blue, and your eye from a distance reads it as purple. But up close you can see it's a hatching technique, so that future restorers a hundred years from now can distinguish what was original from what wasn't.
|
||||||
|
|
||||||
|
*Why do you disagree with your teacher's philosophy about filling in gaps?*
|
||||||
|
|
||||||
|
Historically, no one had a problem painting what was missing, scraping off a damaged fresco and painting a new one. That's how we have the history of art we have today. Michelangelo's Sistine ceiling was painted over a decorative blue sky with stars on it. Raphael came into the Stanza della Segnatura, where the School of Athens is, and there were already frescoes that had been begun, but they got rid of them, and he was allowed to start from scratch and repaint everything.
|
||||||
|
|
||||||
|
That fear of the past being something we have to cherish to the point at which it becomes untouchable is a really modern idea. I think it's because we have ruined so much stuff. There's a fear now that all we can do is something bad—we're so afraid of our own interventions in the modern world that there's a deep cultural assumption that we're focused on preventing the worst. We're not really interested in encouraging or allowing for the best because we don't trust ourselves.
|
||||||
|
|
||||||
|
*We also assume there's a kind of discontinuity or break—that we can't understand what people were trying to do in the past because we are modern now, and therefore we have no ability to be in relationship to that tradition.*
|
||||||
|
|
||||||
|
L. P. Hartley said that "the past is a foreign country; they do things differently there." I think there's a problem with the idea of going back to the past. The Renaissance—even though it was a renaissance, which means a "rebirth"—was not a recreation of antiquity. They didn't do neo-antique buildings. They did new buildings using the knowledge of the ancient world as they understood it, but to make new things for new purposes. Neoclassicism is something different. Neoclassicism was really an attempt to recreate antique forms. Everything looked like a temple. The Renaissance didn't do that.
|
||||||
|
|
||||||
|
I think we have to have a richer conversation about how you can learn from the past without replicating it. To not learn from the past is to impose on yourself a kind of cultural amnesia that I think is quite destructive. We should be capable of continuity without being afraid of doing a bad version of the past.
|
||||||
|
|
||||||
|
I had a professor who was a famous architectural theorist, Colin Rowe—a major theorist about architectural form and urbanism. When I was at the American Academy in Rome, I did a project to fill in the street that leads to St. Peter's; historically, it had been two streets. I presented it, and Colin came to my presentation. He said, "Isn't the problem with doing this kind of architecture that all you'll ever be is a mediocre version of the past?" I said that no, the onus is on us. I don't think there's something in the water or the air that keeps us from doing things as well as they did. It's just that the onus is on us to be as good as we possibly can be—to learn as much as we can. I don't think it's impossible to equal the past.
|
||||||
|
|
||||||
|
A lot of modernists assume that the past is so great, they revere it so much that they won't even try because they're afraid of failing. There's a cultural assumption in our world that if you really value the past, it's so great you can't ever achieve what it did, so you should just let it be its own thing and we do our own thing. That's deep in our culture.
|
||||||
|
|
||||||
|
*With that in mind, how do you teach your students to develop an architectural sense in cities with many layers? How do you teach them to see a historic city and understand their relationship to it?*
|
||||||
|
|
||||||
|
You have to teach principles. You shouldn't teach students to be mimics. You want them to be analytical and try to understand how the thing that they're looking at got to be the way it is. From that, you can induce principles—you can look at a series of particular cases and try to discern what was operating behind them. Those are the things that you can then apprehend and take with you and apply elsewhere, as opposed to mimicking a thing and replicating it.
|
||||||
|
|
||||||
|
You have to be able to peel away all the stuff that you see on the surface and try to figure out what the architect was thinking when they first started sketching. Design analysis is design in reverse—you're trying to unwind the process and get back to what was informing it. If you can do that, then that's where you can take the process with you, not the product. That's a big distinction. It's easier to copy—copying is pretty easy, actually. Analytical work, and apprehending a process, is a lot harder.
|
||||||
|
|
||||||
|
*How much do students have to know about history in order to understand historical work?*
|
||||||
|
|
||||||
|
It's definitely true that you get better at it the more you know. At some level, when you're a raw student and don't know much history, all you're doing is a kind of reacting to what they see. It's my job to give them a little bit of a backstory.
|
||||||
|
|
||||||
|
My sense of what schools should teach you is how to continue to learn after you get out of school. Not a repertoire, not a kit of parts or some tricks, but how to learn. That's a lifelong process, and you get better at it the longer you do it.
|
||||||
|
|
||||||
|
The more you do things of your own, the better you're able to understand what other people have done, and so that kind of iterative back-and-forth between practicing and studying and practicing and studying makes both of those exercises richer and better over time. I'm still a student—I'm still learning stuff—and I'm better at learning because I've done more things myself.
|
||||||
|
|
||||||
|
*Is there a particular building or place you keep coming back to that exemplifies the traditions and creative practice you've been trying to develop?*
|
||||||
|
|
||||||
|
In Rome, I think the most sophisticated piazza is Santa Maria della Pace, which was all designed by one architect, Pietro da Cortona, but dealing with existing urban conditions that were imperfect. He tried to mask or transform them into something that is more whole and perfect and woven together. It's almost symphonic. It's this unbelievably rich dialogue between the church and the fabric of buildings around it. You can't extrapolate that or take that and transplant it elsewhere, but you can definitely try to do that kind of weaving and stitching of things together.
|
||||||
|
|
||||||
|
At the Swiss campus, it's a little more call and response. There are ways in which certain things in certain buildings talk to or say things to other buildings. In the gym I painted a fresco at the top of a flight of stairs that climbs about twenty-three feet; when you get to the back there is a loggia. The fresco I painted in the loggia is the Choice of Hercules, which is supposed to be this idea that he's visited by two female figures that represent virtue and vice. Vice isn't a dissolute life. She offers him a life of ease in the shady grove, but Virtue shows him the hard, rocky, uphill path to fame.
|
||||||
|
|
||||||
|
The rest of the hillside was the harder part of the campus to be built, and I didn't know if they were ever going to build it because it was challenging. So I have Virtue pointing uphill with a trowel, basically an admonition to the school to build the rest of the campus, the hard part. And eventually they did, within about ten years.
|
||||||
|
|
||||||
|
On the facade of the building at the top of the hill—I designed it and had somebody else paint it—there are two big cornucopias with this great bounty flowing down. The reward for the hard path of climbing the hill is all this good stuff that cascades down on you. When you get up to that building, there's a big arched passage in the stairway, and from there you look out over the Alps and Lake Lugano. It's definitely a reward for having climbed the hill.
|
||||||
|
|
||||||
|
I set up a dynamic and told the end of the story when I had the opportunity to do that. But mostly people don't know those stories are there. The students don't know it unless somebody reinforces it or tells them that it's there, as the current headmaster has done. It can be read like a text, even if not everybody has the tools to read it.
|
||||||
|
|
||||||
|
*What kinds of responses have you experienced to what you're trying to communicate in architecture? How do people respond to your work? How does it surprise you?*
|
||||||
|
|
||||||
|
I think people respond to stories. I had a great professor who taught me a design process but was also really big on the idea that architecture could be narrative—that it can unfold or tell stories—and I think people are really captivated by that. I think the extent to which you can treat your environment as a place that you can read, like it actually has messages—not every environment has it, somebody has to put them there. Most places have a history, and so there's a kind of unspoken story that's often the history of a place.
|
||||||
|
|
||||||
|
I do think it's one of our jobs, apart from making buildings behave well together, to tell stories in some way or to contribute to some larger story that our society wants to tell about itself. I think we're desperate for it, actually. We want to believe our world makes sense somehow, and I think we need that. Sometimes people have said you could read our Constitution in the layout of the National Mall and the disposition of buildings in the center of Washington, DC. I think the extent to which our environment, especially in the United States, could do more of that—it could be one of the things that gives us a sense of shared purpose and a sense of what we have in common.
|
||||||
|
|
||||||
|
We have enough in common that we can tell some stories. One of the things I get when I present the idea that architecture can be narrative is a lot of people say, "Well, we don't have enough shared stories that everybody could agree on." I don't think that's actually true. I think we have more in common than we think. Often it's the interpretation of our stories that we argue about. If we didn't have some shared principles that allow us to deal with each other every day—those are maybe the protocols, the things underneath who we are—instead of using them as partisan divides, we could be using them as ways of unifying us.
|
||||||
|
|
||||||
|
*You can imagine the stories in a village where everybody's going to the same places all the time and everything is marked with meaning—this happened there, this happened there. On the opposite end is this kind of fascist propaganda, which is like the looming building that's telling you exactly one story and you know what's wrong in some way. There has to be something in between.*
|
||||||
|
|
||||||
|
There's a difference between iconography and propaganda. I think, historically, most societies talked about who they wanted to be, not who they were. I don't know if you know the _Allegory of Good and Bad Government_ in Siena in the Palazzo Pubblico. It's amazing. It's sometimes called "The Allegory of the Effects of Good and Bad Government in the City." It doesn't really talk about how the government worked. It talked about the ideals that allowed the government to function.
|
||||||
|
|
||||||
|
In the allegory of good government, what seems to be a ruler—it's a guy who looks like a king with a sword—is actually *bene comune*, the common good. The ruler of the city is the common good. Through a whole series of connections, he holds a sword that is ultimately tethered to a rope that's being carried by citizens from the figure of Concordia, who's taking two ropes that pass down from the scales of justice. Concordia weaves the rope together and passes it on to the citizens, and the citizens hand it on to the Common Good.
|
||||||
|
|
||||||
|
Nobody's going to argue with that. Basically, social concord comes from justice, and it's conveyed to the authorities—who really are themselves just representatives of the common good—by the civic body, by the people of the city. We all want that. That's fourteenth-century Siena, but at some level that's how good, healthy societies operate today, I think.
|
||||||
|
|
||||||
|
So I think allegorical messages used to be more based on principles and values, rather than mandating particular kinds of behavior. They were basically shared senses of purpose, and they were aspirational. They tell you, "Here are the virtues, here are the things we need in order to be able to do this," but then the actual mechanics of governance—who knows if Siena ever was like that? They were obviously saying, "We believe this is who we are," but it was probably better than who they were, and it didn't impose anything on anybody other than a shared sense of responsibility.
|
||||||
|
|
||||||
|
We shouldn't have a hard time doing that today. I think everybody's too vested in the idea that we're slugging it, out instead of trying to figure out what we could actually share. Ultimately, iconography shouldn't be that mechanistic and specific—it should be more broad and general. You shouldn't be able to argue with the principles; if there's major dissent about the principles, something's wrong.
|
||||||
|
|
||||||
|
The statues of Civil War leaders—that's problematic because there is all kinds of stuff behind that was wrong. Whereas celebrating justice—who doesn't want justice? A statue of truth—we should all want that. If we didn't want a statue of truth, that would be a problem.
|
216
content/interviews/mwaselela-saving_circles.md
Normal file
216
content/interviews/mwaselela-saving_circles.md
Normal file
@@ -0,0 +1,216 @@
|
|||||||
|
---
|
||||||
|
narrator: "Alinagwe Mwaselela"
|
||||||
|
subject: "Saving circles"
|
||||||
|
facilitator: "Nathan Schneider"
|
||||||
|
date: 2025-05-02
|
||||||
|
approved: 2025-05-04
|
||||||
|
summary: "The practice of collective savings and lending takes many forms, from women-led community finance to mobile-money software."
|
||||||
|
location: "Dar es Salaam, Tanzania"
|
||||||
|
headshot: "alinagwe_mwaselela.png"
|
||||||
|
topics: ["family", "finance", " gender", "software"]
|
||||||
|
links:
|
||||||
|
- text: "Jukumu Tanzania (X)"
|
||||||
|
url: "https://x.com/JukumuLETU24?t=A7YYfGJUZ3QVJfeh2dVgTA"
|
||||||
|
---
|
||||||
|
|
||||||
|
*How do you like to introduce yourself?*
|
||||||
|
|
||||||
|
My name is Alinagwe Mwaselela. I'm not from Dar es Salaam, but I live in Dar es Salaam. Tanzania is very big. It has over 25 regions, and I come from the one called Mbeya. Our tribe, we call ourselves Nyakyusa. I don't know if you ever heard of it. But it's a beautiful place. It's among the places where a lot of food comes from.
|
||||||
|
|
||||||
|
I'm in Dar es Salaam now. I did my primary school in Dar es Salaam, then I did my secondary school back home, then I came back again to Dar es Salaam for high school. For college, I went to a different region called Singida. So I did a lot of moving around. But it was quite a good experience.
|
||||||
|
|
||||||
|
For a while now I've been working with NGOs—civil society makes up about 80 percent of my life right now. I'm a community guy, always moving from one group to another group, from one place to another. I got this experience from working with different companies. I was employed back then in a marketing department.
|
||||||
|
|
||||||
|
I gained my whole experience and methodology of working with these saving circles when I was on a marketing team, because for me it was the easiest way to engage customers and to find an easy way to sell. You can come up with different ideas of how to engage them.
|
||||||
|
|
||||||
|
And now it's been about 6 years working with Jukumu—that's the name of the NGO. We've been doing so much in Dar es Salaam and around Tanzania in general. In Dar es Salaam, we work with different people in different districts and streets to get the best information we can from these people that we're trying to help or bring solutions to for the challenges they deal with in their daily lives.
|
||||||
|
|
||||||
|
Jukumu generally tries to build relationships between different communities to find solutions. We believe these communities face challenges because they don't know who to connect with, who's the best advisor, or who's the best teacher for what they need. So we create connections from one group to another to find solutions and engage groups with each other. These could be financial relationships or technical relationships.
|
||||||
|
|
||||||
|
*So you first encountered the savings groups as clients when you were marketing products, and you thought, "This is an easy way to access a group of potential buyers."*
|
||||||
|
|
||||||
|
Yes, exactly. This happens in a lot of developing countries, I would say, especially in Africa.
|
||||||
|
|
||||||
|
For example, back then I used to work with a company that had digital solutions. I was the marketing guy, the one meeting with these people every day, engaging them, explaining what the solution was and how they could use it. People would get excited when they received the solution, but it was too hard for me to ensure that solution would last to the point where these people were satisfied.
|
||||||
|
|
||||||
|
Sometimes, if I represent a company in a market or community, I don't know when a CEO or founder might come up with changes to the product the next day. That affects the community, but it affects me more because everybody knows my face in the market, not my boss or anyone else.
|
||||||
|
|
||||||
|
So I realized it would be easier for me to engage people by having them under one umbrella to make sure they receive the best products they're supposed to get. I wanted to ensure that if a product comes to the community, whatever was brought in was needed, and the community was actually satisfied with what we were trying to provide.
|
||||||
|
|
||||||
|
I got the idea from to create a network of groups. At first, it was just a marketing network—I would find different products that I knew these people liked, and I'd distribute the products and give them payment terms. They could pay by installment rather than cash, because I knew I'd find them in their group. The group would be the guarantor for anyone who wanted the service.
|
||||||
|
|
||||||
|
Then the NGO concept came to mind: we could have this umbrella that would protect the groups and make sure they get the best education and the best providers. We connect them with other groups, because they produce different things. We have groups of farmers, livestock keepers, and small business entrepreneurs.
|
||||||
|
|
||||||
|
So you can imagine, if we have farmers groups, we can get tomatoes from them and connect them with small business groups who can get the tomatoes under the supervision of the NGO. This ensures that nobody loses out and everybody gets what they're supposed to get. It's the easiest way for them to connect and be in a safe zone. They can produce, and they themselves can be a market too, apart from anybody else outside the community.
|
||||||
|
|
||||||
|
*And so these groups were already formed? Or were you helping form them as well?*
|
||||||
|
|
||||||
|
As you start working, you find groups that are already formed. Then you see their weaknesses, learn, and start to reform them and create other groups as you go on. I found some groups that were already formed, and then we started creating other groups depending on what people were doing.
|
||||||
|
|
||||||
|
We went to farmers and formed groups specifically for them. Before, we didn't have specialized groups of farmers—we would find farmers in various groups that were dealing with different activities. Then we started creating farmer-specific groups so they could benefit from working together—people growing cucumbers, tomatoes, fruits, and other vegetables. If they're all in one group as farmers, we can see what each person produces and then, as an NGO, we can ensure that at least 40% of what they produce reaches the market, as part of our effort to help them reach their targets.
|
||||||
|
|
||||||
|
*Did you grow up in any of these groups? Were savings groups like this part of your upbringing or family life?*
|
||||||
|
|
||||||
|
Yes, my mother used to save in one of the *chamas* she belonged to. I would see her struggling, and after every certain number of days she would save a certain amount in the group as a form of security or insurance for anything that might happen. So I've seen that lifestyle in the neighborhood where we were living, and I've been in some of these groups myself. They are all over Africa. I've been to Uganda and Kenya and seen they have *chamas* too.
|
||||||
|
|
||||||
|
*Tell me more about how these work—how the one your mother was part of worked, and how the ones you've been involved in work. What does it feel like to be part of these groups?*
|
||||||
|
|
||||||
|
Generally, in Tanzania, I believe about 80% of women are in groups. This includes rich women, middle class, or poor women—they're all in groups, though what they do varies. The experience has changed with time and technology.
|
||||||
|
|
||||||
|
Back then it was different. I remember seeing some of my sisters in chamas. These chamas differ in how they set their targets. For example, my sister used to be in a chama where the target was saving for just one year. At the end of the year, they would distribute all they had saved. While they were saving, they would give members opportunities to get loans from the savings. That could be the first business of the group—the interest paid on top of the loan benefited the group. At the end of the year, they would share that profit with all who had been saving.
|
||||||
|
|
||||||
|
The profit at the end of the year would depend on how much you had been saving. The more you invested, the more profit you'd get because your money had been rotating through many hands, as people asked for loans from January until December.
|
||||||
|
|
||||||
|
They used to have these small books—I remember these books were full of marks. Not everybody in these groups knew how to write back then. So they had these books where they would just put a mark to show "I've paid today." It was like a counting book that showed how much you had invested and how much you could expect by the end of the year.
|
||||||
|
|
||||||
|
Every time someone would go to save money or receive money, they'd have to go with the book to mark that they had paid or hadn't paid. They used to have this big iron trunk, and that trunk kept the books and the money. That was the bank. After marking, all the books stayed there to make sure nobody could mark anything until the next meeting.
|
||||||
|
|
||||||
|
Sometimes it happened that someone stole the books, or on the day they were supposed to get their money, they found there was no money in the box. They trusted the chairperson and the secretary of the group, and they normally even had an accountant. But none of it was as transparent as they are today.
|
||||||
|
|
||||||
|
Some groups work smoothly, some have faced challenges. But that was the experience back then. Now things are changing. Now we have different practices in these saving circles.
|
||||||
|
|
||||||
|
For example, in Tanzania we have a concept called *mchezo*, which means "game" in Swahili—so we call it "money game." What they do with the money game—now that people are afraid to have a box that somebody might steal or misuse—is that every day, let's say in a group of 20 people, each person saves 1,000 shillings. That means 20,000 shillings total, which they don't keep in a box—they give it to one member of the group. So every day, someone is getting money from all the others. It's a rotation of money.
|
||||||
|
|
||||||
|
This depends on the priorities within the group. They know what's happening with everybody—who needs to pay rent in two months, who needs to pay school fees, who needs to buy certain things. So you put your name on the game list for the dates when you're sure you'll need the money. With 20 people, it will be a 20-day game. After 20 days, it rotates back to the first person. It continues like that from January to December.
|
||||||
|
|
||||||
|
That's the solution these people have developed to address the challenges they faced with using the box. They're trying to reduce the work they were doing before. Who do you trust to keep all the money? The box stays in somebody's home, not in a bank. Something might happen—somebody might have a child who runs away with the books. So these people are trying to create solutions.
|
||||||
|
|
||||||
|
Now, beyond just the box and the game in this saving circle, we have groups who invest money for bigger investments. For example, at Jukumu we have communities with 30 to 70 people. With technology, they don't use books anymore—they might use a bank, mobile wallets, and different digital solutions to accumulate money.
|
||||||
|
|
||||||
|
The money they accumulate is for investments they want to make. Let's say a group wants to buy materials for catering, or they want to do different activities requiring capital investment. They might accumulate money for two years, and then open a small business. They could be tailors or anything else, and then they create a way to share profits monthly from what they earn in that investment. So it could last for a long time while continuing to produce income, rather than just distributing everything at the end of the year.
|
||||||
|
|
||||||
|
*Are these contexts where people don't have access to banks? Or is do people find there's something better about saving this way? It sounds like a lot of work and management. Why not use banks?*
|
||||||
|
|
||||||
|
One thing I've found in these saving circles is that many people don't have knowledge about banks, even though they see them. They don't have financial education. They don't know the value of money or have any education about loans. For them, a bank is a scary place.
|
||||||
|
|
||||||
|
The *chamas* are how they've become accustomed to doing what they need to do. We do have groups that use banks and find it fine, but not many groups use banks. We're encouraging our group members to use banks for convenience. We have a monthly fee that these groups pay to the NGO as a membership fee because we provide them with knowledge, seminars, and different products. What we've come to understand is that it's mostly a lack of knowledge and education. They don't know about banks or many of the financial services they could access for savings and money management.
|
||||||
|
|
||||||
|
*How do the groups compare between, say, the groups your mother was part of when you were growing up as opposed to the groups of farmers you mentioned who are running businesses? Are they very different, or are they basically the same kind of structure?*
|
||||||
|
|
||||||
|
I don't think they differ a lot. The main difference is the technology they have now, and probably they have more knowledge. Back then, my mother and others didn't have smartphones—they didn't even have phones. So things were quite different, but in terms of how they engage and how they operate, it's almost the same. They're still Tanzanian, so they still have that kind of formula—there's a formula that doesn't change. You can tell this is Tanzanian.
|
||||||
|
|
||||||
|
*Let's talk about that formula a bit more. What kinds of skills and knowledge go into that? Because in my part of the world, people do not know how to do saving circles—that's not something people do around here. If people started, they wouldn't know where to begin. What are the skills that people have in these communities, that your mother had, that makes them feel like they know how to get these things going? What specifically are the everyday life skills that enable people to run these groups?*
|
||||||
|
|
||||||
|
I was surprised when I started working with groups in Tanzania. One of the biggest challenges is that people are very far from technology. I don't think they're afraid, but the education level and awareness are quite different. Tanzania is quite different from Kenya when it comes to how people engage with technology and change.
|
||||||
|
|
||||||
|
These groups, from my experience, mostly started with women. Women were the special group that initiated this, especially because in the community, people didn't have time for women. It's like people didn't try to engage women in direct control of financial issues, as they used to engage men. You can see even in education levels back then—most young boys went to school, not girls. Girls didn't go to school. So we had a lot of sisters and mothers who were just farmers, far from all kinds of access, far from bank awareness, far from technology.
|
||||||
|
|
||||||
|
What happened is that these women started to form their own groups to save what they got from their men. If a man left 10,000 shillings for household expenses, a woman might take 2,000 out of that 10,000 and save it in her group without her husband knowing. It was confidential—men didn't know their wives had groups where they saved money, because many men didn't want their women engaged in any financial issues. So many of these groups were due to women's efforts, especially in Tanzania.
|
||||||
|
|
||||||
|
Communities in our society that are very far from services like banking had to find ways to save and have some insurance for what might happen. They formed their groups. It's like the point where all these people who are missing everything they're supposed to get found a solution. It's like they're small banks. We call them VICOBAs—Village Community Banks.
|
||||||
|
|
||||||
|
People started these because they found themselves very far from all aspects of technology they were expected to access. And I don't know why, but even today, technology doesn't flow as it's supposed to flow to reach the people who need to understand it. It ends at a certain level and doesn't go down further. So certain groups of people enjoy the benefits, but not everybody.
|
||||||
|
|
||||||
|
It's still hard to engage with digital issues in Tanzania directly. You need to put in a lot of work, go to many places, train people extensively because many don't know how to use basic digital tools. Someone with a smartphone might not know how to create their own email address. These are things that should be easy to understand, but they're not.
|
||||||
|
|
||||||
|
The level of education of these people is not that high, and their engagement with digital aspects is not that strong. So they've created their own way to save, their own banks that they can turn to when they're in trouble or when they want to do anything.
|
||||||
|
|
||||||
|
They've seen this from government employees. In Tanzania, we have many government employees—about 70% of working people are employed by the government. These government employees get health insurance, some get property insurance, they get social security funds from the government. So people have learned the concepts from these employed people—they can get insurance too. But for those who aren't employed, who have small capital, who sell vegetables by the roadside, how do they create their own insurance? How do they save for unforeseen issues? How do they save to pay school fees next year or to pay rent?
|
||||||
|
|
||||||
|
They don't use banks. The first people to use banks in Tanzania are those employed by the government. So the first experience any Tanzanian has with using a bank is either when they're in government office, employed somewhere, or in university getting a government loan. Most Tanzanians only open a bank account when they're employed. Before that, nobody uses a bank.
|
||||||
|
|
||||||
|
People now use mobile wallets because everybody has a phone, so it's easy to use mobile wallets. But if you count people living in the streets who aren't employed, 80% will say they don't have a bank account. And if they do, they don't know how to use it—they might just have a bank account because a certain bank came around and made them open a free account. So they got a bank account but never used it because they don't know how to use it or the advantages of using it. The only group that knows about bank accounts are the employed, university students, or those doing very big business who need a bank to get loans. Apart from that, the rest of these people use mobile wallets, and some still save in their groups.
|
||||||
|
|
||||||
|
The best ideas these people came up with were while trying to ease their lives in light of what they saw employed people doing. It's like they're trying to establish their own lives compared to employed people—to reach the same standard of life. "I can have insurance too with my group. I'm very sure that in case I need anything, I can just go there and ask for a loan, and nobody will say no because that's my group and I'm a member who normally saves there." It's the same thing as a government employee being sure to get a loan from a bank because the bank sees the salary and can easily deduct payments. For others, their saving groups provide all of what they're supposed to have.
|
||||||
|
|
||||||
|
*Do you think of these groups as being very old, going back many generations? Is this something that people have done in these communities for a very long time?*
|
||||||
|
|
||||||
|
I've seen groups that have existed for 20 years, 15 years.
|
||||||
|
|
||||||
|
*I mean many generations—is this something your great-great-grandmother was doing?*
|
||||||
|
|
||||||
|
It could be, but I'm not sure. If I go back to when Tanzania gained its freedom, the first thing our late president introduced was similar to what China and Russia tried to apply—a communal system where everything was owned by the community. Everyone had to work, and everyone ate what they collectively produced.
|
||||||
|
|
||||||
|
I think that was the method the government used for government farms and industries. They created communities where everyone earned the same amount—nobody earned more than anyone else. It was a style introduced by the government back then to organize people to work and trust each other. Nobody was above anybody else, only the government.
|
||||||
|
|
||||||
|
The rest of the people working there shared what they got out of what they produced. You could easily get help within your community if your child had an issue—anyone in the community could help because everyone was on the same level. So maybe this comes from back then, from how people would work in groups—as farmers or whatever, but working in groups rather than individually.
|
||||||
|
|
||||||
|
This has evolved with the changes in technology. And now, with capitalism, it has created boundaries between those who know and those who don't. The people who don't know, in order to achieve what they need, have started to use the same formula—using the energy of their own community to create wealth, safety, and insurance for everything they need.
|
||||||
|
|
||||||
|
*Does technology make anything harder? For instance, if you have the money in a box in somebody's house, you have to trust that person. You know who's keeping the money, and that trust maybe helps strengthen the group. Is something lost when you can just rely on a mobile wallet? Do you lose some of the trust that might be important to these groups?*
|
||||||
|
|
||||||
|
From my experience engaging groups with Jukumu, I don't think technology makes things harder, except that people don't know the technology. They don't have the knowledge, so they just operate based on what they believe in, what they know, what they trust. It's not that they don't believe in technology, but they don't know how far technology can assist or support or benefit them.
|
||||||
|
|
||||||
|
If they get to know, they'll move to technology. We had groups that didn't use technology for financial issues, and we went through many challenges because we'd find the chairperson and secretary conspiring to take the balance, and no member would know exactly what they had—they only had trust. We might all know where the secretary lives and meet at the secretary's house every 10 days, but we just trust that the secretary will keep the money. We're not sure, but we trust.
|
||||||
|
|
||||||
|
If something happens, it brings them to a different challenge, and they start looking for a solution—which could be a digital solution. We speak with them and try to introduce different solutions. The good thing is that now many of the mobile wallets in Tanzania have features that can help saving circles save using the wallet. We have different solutions that groups or families can use to save, and everybody will know what's happening—if anyone deposits or withdraws, every member gets a message.
|
||||||
|
|
||||||
|
We have these kinds of solutions now, and many groups are turning to technology. I don't think it was that they rejected technology—they just didn't have a chance to experience and understand how far technology could take them. This has become very beneficial for the NGO, because we were lucky to partner with an organization that works in digital solutions. We can easily do pilots in our community, see how they work, and then develop solutions. We're trying many pilots to make sure people understand that with technology, we're saving time and reducing risks they've been struggling with. Now we have groups that have saved a lot of money in their wallets, and things are going smoothly. They're coming to understand.
|
||||||
|
|
||||||
|
*So the mobile wallets that most people use now have features for saving circles built into them?*
|
||||||
|
|
||||||
|
Yes. For example, two days ago I had a meeting with CRDB Bank, one of the very big banks in Tanzania. They now have the CRDB Foundation, and what this foundation is trying to do is bring in the saving circles. They have a project called Mbegu, which is a Bantu word meaning "seed." They're trying to help saving circles start and learn how to use a bank—what money is, what loans are. They give them this knowledge, and after they understand, they give them a chance to get what they call *mbegu*. It's not really a loan because you don't pay interest—you pay operational fees and such.
|
||||||
|
|
||||||
|
What I found is that banks in Tanzania know there are many saving circles, and they're missing a lot of customers because they're just dealing with employed people. They know these motorcycle taxi drivers, these small food vendors selling in the streets—none of them use banks. They all work in their saving circles. So now CRDB is trying to find these saving circles and bring them into the banking system. They don't even care if these groups are registered or not, as long as it's a group. They find ways to train them, encourage them to register, and work with them.
|
||||||
|
|
||||||
|
That's why we had a meeting with CRDB—they want us to connect them with groups. They know there's a lot of money they're missing from the community. Almost every digital solution now has features that these saving circles need. It's like a wake-up call—saving circles are a very big thing in Tanzania, and banks and mobile networks are rushing to invest in them.
|
||||||
|
|
||||||
|
*Have you seen these groups be taken advantage of? What are some things that can go wrong?*
|
||||||
|
|
||||||
|
A lot can go wrong in these groups. First, you should understand that the people in these groups often don't know the risks of many things. They might not even know the risk of using a different Gmail account on their smartphone. You need to have accurate information from these groups to be sure that if they want to invest in anything, it doesn't go wrong. You need to be sure because many of these groups have people who didn't go to school, who don't understand the risks—like, if I lend you money and don't know you, you could just run away with it. These are people going through hard times every day, so they have many challenges. So the first thing we do is educate and find the best approach for the community.
|
||||||
|
|
||||||
|
We had a digital project that's still ongoing in one of our communities, which has almost 120 members all living in one district. We've created our own community currency called Nyota, which means "star" in Swahili. They're using it for payments within the community—it only applies in their community.
|
||||||
|
|
||||||
|
Before, they didn't know how to download or install applications. They didn't know the risks of having different Gmail accounts or someone knowing their Gmail password. Now we're trying to change that, and after two years, we're seeing it's working out. But it has taken effort for two years to get these people to understand how to use a smartphone—not just applications. The most they could do before was WhatsApp and social media. Everyone can use social media, but they didn't know how to benefit from technology in other ways.
|
||||||
|
|
||||||
|
Now they see the difference. With just their smartphone, they can have a digital token, they can convert it, they can get normal currency. This is new for them, and these people didn't go to school to understand what a digital token is—it's just a lifestyle and experience they've gone through every day. Now they have shops in the community where they can buy things using their community currency.
|
||||||
|
|
||||||
|
With these saving circles changing from traditional methods to moderm technology, it has brought something different. Now we know at Jukumu that if all of them understand how technology can change or increase their production level, nobody will go back to the lifestyle they had before.
|
||||||
|
|
||||||
|
*What does creating a community token enable them to do that they couldn't do otherwise? Why is that technology useful in these communities?*
|
||||||
|
|
||||||
|
We've tried this in just one district out of all Tanzania because it's too hard to engage widely. We started this as a pilot, but now it's working and has become a lifestyle.
|
||||||
|
|
||||||
|
First of all, it gives them an easy way to purchase things at a lower price compared to what they would pay using the local currency. With regulations, we're not allowed to use tokens directly for payment freely—Tanzania doesn't have regulations allowing that. But what we're trying to do is use the digital community currency as part of payment as a price reduction.
|
||||||
|
|
||||||
|
We've given a value where one Nyota equals 1,000 Tanzanian shillings. In the community, we have people selling different things. We've connected community businesses with every community member so that if you're a community member buying rice every day and you decide to buy from another community member, you'll save 2,000 shillings on each kilogram. So if one kilogram is 4,000 shillings, when you're buying in the community, it will be 2,000 shillings plus 2 Nyota.
|
||||||
|
|
||||||
|
So 2,000 shillings plus 2 Nyota equals 4,000 shillings, but they find it easier to pay 2,000 shillings. I don't have to pay 4,000 if I can pay 2,000—I can save 2,000 and use the Nyota to cover the other 2,000 that I have in my pocket. For the person receiving the 2 Nyota, it counts as 2,000 shillings. They will use those same 2 Nyota to buy something from a different community member or from the same person who gave them the Nyota.
|
||||||
|
|
||||||
|
It engages them all in one community—it gives them an incentive to receive regular customers because now a community has 100 members, and everybody wants a discounted price. Everybody wants something that will be easy to afford.
|
||||||
|
|
||||||
|
It has increased relationships in the community—everybody knows everybody, everybody knows where to get cooking oil. If I go to a normal shop to buy cooking oil, I'll spend 5,000 shillings. But if I buy from a community member, I'll spend 2,000 shillings plus 2 Nyota. It creates the understanding that if I am your neighbor, there's a way I can help you, and there's a way you can help me if we are in one community. You might have rice, I might have corn flour—we use corn flour for making *ugali*. If you have rice and need to buy corn flour, you come to me and pay 2,000 shillings plus 2 Nyota.
|
||||||
|
|
||||||
|
The 2 Nyota you pay is the key to our business, to our cooperation, to our engagement. This tells me that I have to come back to you again to buy, because I have nowhere else to spend this Nyota except with you. And if I spend with you, that means I'm giving you the same Nyota, plus whatever other amount I'm supposed to pay. The good thing is, it will be less compared to what I would normally spend. But it doesn't affect anybody's balance, because I'll still have some change. You'll have the Nyota, but when you need to buy something, you come with the Nyota to spend, so you save your money as you spend on me, and I save mine as I spend on you.
|
||||||
|
|
||||||
|
It increases the value of the Nyota because now everybody needs to get Nyota. And how do you get Nyota? Either you do business, or you attend the community meetings, because that's when we scan and create our own tokens.
|
||||||
|
|
||||||
|
*So participation in the community is how issuance happens?*
|
||||||
|
|
||||||
|
Yes. I don't know if you've heard of the Encointer Association from Switzerland. It's a blockchain platform that mostly tries to enable a community token or community economy by creating business circulation and cooperation. People learn the value of money through that—they learn through the value of doing business with each other, so nobody misses out on business every day. If I'm selling anything, I might get 2,000 or 3,000 shillings a day. It will never happen that I end the day without doing business because there are 100 members in the community, and everybody needs to eat. If they don't eat, they might use a bike to go somewhere. They might go to the salon—we have members who run salons. They might need to buy charcoal or cooking gas. These transactions are always happening because that's daily life.
|
||||||
|
|
||||||
|
We believe if we find solutions for these daily needs and daily spending, we're giving people a chance to save more and be more active in their groups. That's why this is famous where it's happening—it's a very popular project.
|
||||||
|
|
||||||
|
*How much do you think people's willingness to participate in this new technology is because of their experience with the saving circles?*
|
||||||
|
|
||||||
|
I think that was number one, but number two is it wasn't easy to engage these people in this kind of technology, for them to see the value of cooperation or the value of working together. We did research before in the location where this project is happening, and many people in that community didn't know how to bring money into the community. If we want our community to be safe, we need to be sure that we'll eat comfortably in our community. Everyone should be able to help others in the community. People need to be sure they can afford to buy food, go to the salon, and do whatever they need to do daily. This gives them an opportunity to save more.
|
||||||
|
|
||||||
|
Before, nobody understood how this would benefit their community. I remember we started with only six people in the whole community, and then from six, only two remained. It was a journey. But people came to find out that the people in this community—the few we had, six to ten people for almost four or five months—had created businesses covering everything they needed every day. So others became curious: These people in this specific community have a very easy life—they have everything in the community, they can easily buy and sell to each other because they are both buyers and sellers. What I'm selling, you don't have, but what you're selling, I don't have, so I can sell to you, but tomorrow I'll have to buy from you.
|
||||||
|
|
||||||
|
So we created a situation where people could understand that if you're in a community, you can have everything you all need. You don't need to struggle—you can just tell somebody what you need, and then you can get it the next day. With that particular knowledge, people started to understand.
|
||||||
|
|
||||||
|
After every meeting, they would see people leaving with packages. "How much did you spend?"
|
||||||
|
|
||||||
|
"I spent this amount and this many Nyota."
|
||||||
|
|
||||||
|
"But you know I spent 15,000 shillings to buy that sack, and you spent 10,000 shillings plus 5 Nyota. So you saved 5,000 shillings."
|
||||||
|
|
||||||
|
That kind of pattern motivated the community. You can easily do business if you're working together. So we had different events, marches—marathons to educate people and bring knowledge. Luckily, now we have about 120 members, 70 active members, and they meet every 10 days.
|
||||||
|
|
||||||
|
Now it has become established. With this, we've introduced a digital currency that's very famous in the community called Kusama, which is on the Polkadot blockchain. It has become another big thing in the community. Now people know how to send Kusama. People are paying with it. Someone will Google how much one Kusama is worth today compared to TZS or USD, get the amount, and use Kusama to pay for anything they want in the community because they know Kusama is real money.
|
||||||
|
|
||||||
|
Now they have wallets on their phones. They can download wallets and easily connect them. None of this existed two years ago—people didn't know what a private key or mnemonic password was. People didn't know what a public key was. But now everybody is saying, "Send me your public key," and someone just sends you a public key.
|
||||||
|
|
||||||
|
These people enjoy technology when they decide it's the best thing to use. Now everybody wants to be involved because they like the experience. They see how it helps their lifestyle. It gives them something new they didn't have before, and they didn't pay school fees to get it—they just had to be in a community and work together.
|
||||||
|
|
||||||
|
*What lessons have you learned building these different kinds of groups—the savings groups as well as the currency communities? If somebody else came to you and said, "I want to do the same thing you're doing," what lessons would you share?*
|
||||||
|
|
||||||
|
You need to have a very contemplative mind. You don't have to rush anything. It's too hard to change people's perceptions—to make them understand this could be a solution to what they've been struggling with for the rest of their lives. One of the very big challenges is that you're dealing with different people who don't know what exactly they're looking for. These people believe they have everything they need—they have their lifestyle, they still eat, they still do what they're doing.
|
||||||
|
|
||||||
|
So if you go to this kind of community and you're trying to do this, the first thing you should understand is that these are different from you. What you're thinking might be a solution at the time will not work unless they come to find that it is a solution for them.
|
||||||
|
|
||||||
|
The rest is easy to catch up on. These are human beings too. There's the part of being a friend—you need to have a friendly heart. You need to be like family because they're dealing with family issues. They're dealing with so many things that you need to understand. So you need to have a mind for connecting with everything a human being deals with.
|
||||||
|
|
||||||
|
At Jukumu, the NGO, we know this is hard, but we believe in humanity. We think everybody can have a better life, wherever they live. A better life doesn't need to involve a lot of money. You just have to know the solutions to your challenges and how you can live with them.
|
||||||
|
|
||||||
|
I was just talking with my friend about this: *chamas* are the first Web3. Whatever the technology is, the skills are the same.
|
148
content/interviews/osorio_ayurvedic-medicine.md
Normal file
148
content/interviews/osorio_ayurvedic-medicine.md
Normal file
@@ -0,0 +1,148 @@
|
|||||||
|
---
|
||||||
|
narrator: "Edson Osorio"
|
||||||
|
subject: "Ayurvedic medicine"
|
||||||
|
facilitator: "Júlia Martins Rodrigues"
|
||||||
|
date: 2025-03-11
|
||||||
|
approved: 2025-03-26
|
||||||
|
summary: "Educating thousands of Brazilians online on Ayurvedic teachings through social media, Edson Osorio has embraced the mission of emancipating people's healing journeys through accessible information."
|
||||||
|
location: "São Paulo, Brazil"
|
||||||
|
topics: [health, food, social media]
|
||||||
|
headshot: "edson_osorio.png"
|
||||||
|
links:
|
||||||
|
- text: "Instagram"
|
||||||
|
url: "https://www.instagram.com/edson_ayurveda/"
|
||||||
|
- text: "YouTube"
|
||||||
|
url: "https://www.youtube.com/@portalayurveda"
|
||||||
|
---
|
||||||
|
|
||||||
|
*Thank you, Edson, for participating in our project about protocols. First, I'd like you to tell us about your life story and career, how you like to present yourself, and how you would describe your life and career trajectory. Where did you start, and where are you now?*
|
||||||
|
|
||||||
|
I believe there's a norm in society where you need to earn money, be in a relationship, and have a job. I was on that path. I was a stock market operator, but I had other professions before. I was young, around twenty-two, twenty-three years old, and I was irritated with the fact that I had to undergo a treatment for attention deficit disorder that would last my entire life.
|
||||||
|
|
||||||
|
The search for health was something natural to me. My psychiatrist told me I would have to treat my disorder for my entire life. In my irritation, believing I wasn't a sick individual, that I must just have some imbalance, I found Ayurvedic Medicine.
|
||||||
|
|
||||||
|
I think all people have a norm to follow, and encountering yourself is the challenge to that norm. I'm just a person who challenged it and was lucky enough to find something very good. I believe Ayurveda is an excellent structure for physiological life, mental life, for understanding emotional life, and for those who aspire to understand spiritual life.
|
||||||
|
|
||||||
|
When I was young, I had a certain desire to know about the mysteries of the world. I thought about studying physics, history, astronomy. I think I found myself and all the proposals I wanted in Ayurveda, following this path that has now made me a teacher of a super cool subject.
|
||||||
|
|
||||||
|
*So you present yourself as a teacher?*
|
||||||
|
|
||||||
|
Yes, yes. Today I'm an Ayurveda teacher. I started as a masseur, an Ayurvedic medical therapist, until I organically found myself as a teacher. Because, in wanting not to see a person two or three times, but just once, I had this idea: "I need to teach enough so you don't depend on me anymore." I found this solution. The end product is to teach the person, not to pass on a magic formula, but to teach them. So I became a teacher out of necessity.
|
||||||
|
|
||||||
|
*And what are your channels for transmitting these teachings today?*
|
||||||
|
|
||||||
|
Today, I work a lot on Instagram, a lot on YouTube, and I do online and in-person consultations. Ayurveda has a thought structure that's easy to understand. I usually say that children should learn this because knowing that your friend's body can't handle raw food, another can't handle spicy food, and another can't handle heavy food—these are simple ideas that a child can learn about others. But we're not learning this.
|
||||||
|
|
||||||
|
*You've also become the architect of a very large network.*
|
||||||
|
|
||||||
|
It's something that caught me by surprise because I teach people to think according to Ayurveda. My desire to teach someone and my angry nature when things go wrong—some people get scared, some get anxious, I get angry when things go wrong—that anger, the need to do things right, gave me a certain teaching technique.
|
||||||
|
|
||||||
|
Everyone should learn a little of this. People talk about the term "sangha"—a group of people in favor of the same knowledge, the same action. This formed organically. So I was transforming into a person who insistently heard people saying, "You teach Ayurveda in a unique way." I must teach Ayurveda in a unique way, but not because it was taught to me in a unique way. I think Ayurveda is a way for you to experience the world knowing what you're looking at.
|
||||||
|
|
||||||
|
When you feel the difference in the air—our air is clearer, the air is colder, warmer, more humid, drier—you know this effect defines the four seasons of the year and their effects according to the characteristics of the physical body, according to the characteristics of each person. So you create a system that's everyday. Imagine, like what I used to do when I was a stock operator. Every day I had to watch the market opening, all day, and the market closing. But when the market opens, you look at the dollar exchange rate, you look at the future index, and then you create an idea of what will happen. You do this every day.
|
||||||
|
|
||||||
|
So with Ayurveda, I do the same thing. I look every day, see how my tongue is, how the color of my lip is, what the property of my waste is. Did my waste get very soft or very hard, or did I have no waste at all? And then I analyze my hunger. And I kind of give myself a grade every day. This is for everyone because it's our body, our mind. It's an incredible thing to know. I'm turning forty in less than a month, and I feel more vitality than all the other years, all the other periods of my life. The longer I practice Ayurveda, the better my memory gets, and the more stable and balanced I become. My body is in a better version of myself.
|
||||||
|
|
||||||
|
*And today, this community that formed organically mobilizes how many people?*
|
||||||
|
|
||||||
|
I have fifty-five thousand followers on Instagram today. I have 1,700 students who have enrolled in paid courses, throughout Brazil and around the world. And on YouTube, where we have a more fixed crowd, I have twelve thousand people who follow me, but I have a metric that's roughly like this: when I offer a class, within a week, 1,200 people watch that class. So it takes more work, you have to click on the link, it's a class that's like an hour and a half on YouTube. But people stay for at least forty minutes. Seventy percent of the audience watches at least forty minutes. It's a very good metric. You see that people are really interested in the subject. They want to learn it for their lives. They want to help others with it.
|
||||||
|
|
||||||
|
So I don't give a magic pill, for example. What I mean is that there are different teacher profiles. I'm a teacher who has a certain profile, and I've been attracting people who have the same scope of thinking. They want freedom of thought. And they attached themselves to me because I give them freedom of thought.
|
||||||
|
|
||||||
|
*And a large part of your work, despite having private patients and private classes, much of what is transmitted is done for free and widely, without any monetization. Why do this?*
|
||||||
|
|
||||||
|
Let me give you two answers. My first response: I remember when I was thirteen, a lady came to our house, Dona Ivone. As far as I knew, she had seven children, and of the seven children, five were disabled. And she asked my mother for money. And I had asked for money to go to the movies. And my mother didn't give me money to go to the movies, but she gave Dona Ivone a hundred and fifty *reais* \[Brazilian currency\].
|
||||||
|
|
||||||
|
I was furious that day. I said, "My God, how can you give money to a person and not to your son?" I grew older and felt like an idiot later, right? And I said, "How beautiful, you have to learn to give without wanting much in return." So I think this runs a bit in my family. We are privileged. We're here on the internet. You're in one part of the world, I'm in another. So we have a great privilege. We need to pay the world back.
|
||||||
|
|
||||||
|
I felt this. But today I also believe that I will really die and be born again. So the better I can leave the world... I also wanted to teach Ayurveda in English so I could see my videos being viewed in another country, so I could still see my videos a hundred, two hundred years from now, in another language. So that's my first answer.
|
||||||
|
|
||||||
|
The second thing is that, in practice, people unfortunately hold onto knowledge too much. My teachers held onto knowledge. I don't like to cite them much because all my teachers disappointed me. So, for many years, I “set off fireworks” for my teachers. I even wrote love letters to my teacher, to my master. And over time, these people closed their doors to me.
|
||||||
|
|
||||||
|
When I started with Ayurveda, I said, "Well, I came from the stock market field, but before that, I was a Brazilian champion of a strategy game. I've always been a good strategist. I said, 'Look, I just need to do this. I need to do this well. I will provide knowledge, that knowledge that doesn't have that high price, that is important for the person's formation.'" But there's a thing between what's important for the person and what they think is important.
|
||||||
|
|
||||||
|
If I release a video for weight loss, I'll have more views than all the other videos I've made. But that video won't give freedom to the person. I need to teach them that they are a spirit. We are all a spirit. This spirit has a will. This will is what is making this person read the transcript of this interview or see this live. It's the will to do good. If you don't have the will to do good to others, it's because you're not well yet. When you get well, the will to do good is natural in all people. The more I did good to people, the more I wanted to do good.
|
||||||
|
|
||||||
|
When I started teaching Ayurveda in face-to-face courses, I was already giving consultations for some time. I got a little tired of saying the same thing several times to my patient. I said, "Well, I'm going to create an internet channel and I'm going to publicize this. And I'm going to give access to knowledge that I didn't have, to knowledge that they didn't give me, to knowledge that I only found after reading five books."
|
||||||
|
|
||||||
|
But everything is Ayurveda. Ayurveda has a base with logical science. People know, in a way, from popular knowledge that the greatest physicists in the world went through studies in India. The ancient books of Ayurveda define what an atom is, what time is, what a second is, where time comes from. A second is defined by the time it takes light to travel a number X of hydrogen atoms. It's a very beautiful reading. The base, the nectar of knowledge of the earth, seems to be there for you to structure your mind, your senses. And I was enchanted by that.
|
||||||
|
|
||||||
|
*And in this process of translating this ancient knowledge of Ayurveda to the Brazilian context, mainly for a Brazilian audience, would you describe your process as protocol-based? What does protocol mean to you? What associations do you make with this word, and what was your motivation to develop or adopt a protocol in this sense?*
|
||||||
|
|
||||||
|
I think protocol, the organization of what to do from beginning to end and why to do it this way, came organically. The first thing you find is a problem. You have a problem. You want to teach something that you can't. You taught, the person didn't learn? So you first start to see that you experience a problem. I experienced the problem of not knowing where to start, even though my teacher taught me. Starting with items one, two, and three, it was only about four years after my first training that I began to realize what I had studied. I studied, but I didn't learn. I needed to experience that for a few years. Put it to the test.
|
||||||
|
|
||||||
|
And a very important thing that Ayurveda says is this: you can't trust what I told you. You'll have this as a guide. But all the time you'll doubt what I'm saying because the only real way for you to learn is to put it to the test. If you don't test it, it's something you talk about, but you don't understand because you haven't experienced it. So, from the moment I experienced and lived through a set of things, I discarded another set of things, I added and strengthened, and began to have my own stories of why it works, why it doesn't work. I stopped telling the stories of my teachers and started having my own experiences.
|
||||||
|
|
||||||
|
And then, when I was getting into a repetitive cycle with my client, because I used to do Ayurvedic massage, over time I did consultations, they became my patients. When I was getting into a cycle where my patient always came back, always came back, I saw that the reason was because I was using a technique that didn't match what I had learned in Ayurveda.
|
||||||
|
|
||||||
|
In Ayurveda, we learn that a person has to eat what is close to their life, that they have to do what is simple, what is not to invent a lot of fashion. And I was using a lot of manipulated herbs. I was doing a lot of things, focusing a lot on the problem. When I started to realize that I was wrong, even though the person came to me, I was wrong. I didn't want her to come back three, four times. I started to identify that if I didn't teach her, if she didn't look at herself and really know, it's not for me to drink hot water in the morning. It's to remove yesterday's toxins, however they may be. So you have to understand this body mechanics.
|
||||||
|
|
||||||
|
*Why did you choose exactly the adoption of this protocol to transmit this knowledge?*
|
||||||
|
|
||||||
|
I used to do this in a more mystical way before. You can just measure a person's pulse and tell everything about them. I like to do this because you can say, "You have hypothyroidism." People say, "Wow, I do." I'm not asking you, I'm measuring. I'm saying: "You have. You're constipated?" You say what the person has. It requires training, it requires time and such. But you see, the person hasn't learned. I haven't walked a path with them.
|
||||||
|
|
||||||
|
The other way of teaching, which is “slapping the person in the face”? I think that's a lot of arrogance, because I'm going to tell you what you have instantly, all the products, all the solutions. But I didn't give you a path to walk. Your body will improve in three months, you will improve. But then what will you do afterward? You'll come back, and I'll see you again. And it was precisely this that I wanted to escape from.
|
||||||
|
|
||||||
|
If I hadn't escaped from this, today I would have a fuller schedule. I would charge more for my consultation. I'd just be measuring pulses, just doing that. I would earn more money. I wouldn't be making free videos, then answering two hundred questions per video. But if I really believe it, I'm thirty-nine years old. If I really believe that I'm going to die, I'm going to be born again, one of the things I wanted to do was leave knowledge good enough because people talk about the Final Judgment in the Bible. Ayurveda says that there is a moment of disembodiment, a millisecond that you will experience your life. And you will say to yourself. And that's what the Ayahuasca folks call DMT, divine particle, that kind of thing. Ayurveda explains this in a very cool way.
|
||||||
|
|
||||||
|
A few years ago, I got into the idea that I couldn't die because I hadn't recorded my diagnostic course yet. So I think you get the desire to communicate in a way... that's what happened in my life. I want to be well with myself. That's it. And I also became a person who had to learn the division between right and wrong in the sense of going beyond just being nice. So I can't just be the nice guy on the Live. I also have to be harsh sometimes. I also have to scold sometimes. And it's part of this path that I've adopted. I used to get angry when people called me master. Because all my masters disappointed me. Today, if you want to call me Master, call me, but I'm an Ayurveda teacher. I'm here to pass on what I've studied, as incomplete as it may be.
|
||||||
|
|
||||||
|
*Do you perceive your work with protocols as a continuity of previous legacies and traditions, or as a rupture with them?*
|
||||||
|
|
||||||
|
It's a rupture, for sure. I found myself thinking about this yesterday. In India, since we're talking about something mystical, there's a myth that if you go to learn Ayurveda with a cave voyager—which is what? A guy who lives in a cave and learned Ayurveda from his master, who lived in a cave, who learned Ayurveda from his master who lived in a cave—they've been doing this for seven to fifteen generations. If you go to learn Ayurveda with this guy, you'll learn more than all the others.
|
||||||
|
|
||||||
|
And then there's the other crowd that says, "You have to do your life in college because you're going to learn the Ayurvedic thought structure with the classical texts, the way the ancient gurus who wrote the texts would like you to learn." There are these two strands. I didn't study in the cave. I don't know about classical texts. And I know Ayurveda a lot. So I found myself thinking yesterday, "Where do I fit in?" Because I studied the basics. Then I studied the basics again. Then I studied the basics again.
|
||||||
|
|
||||||
|
So if you teach a person to write... I like to talk in numbers. Ayurveda is like doing math. I'm good at doing math. But before doing math, a person needs to learn the difference between zero and one, and one and two. If you take one plus one, it equals two. Add one more, it's three. You teach someone to count to ten. They need to understand what zero is. Then they'll understand addition, subtraction, multiplication, division. Soon enough, they're doing calculations.
|
||||||
|
|
||||||
|
So I learned to do calculations in Ayurveda. Sometimes I encounter traditionalists who say, "This guy doesn't even reference classical texts." I think, why focus on classical texts? Why keep doing calculations? I've already solved the most complex physics equations from college.
|
||||||
|
|
||||||
|
I find it offensive when someone challenges knowledge that a person has acquired, regardless of whether they learned it in a cave, at university, or from an old man in the south who has since passed away and no one's heard of.
|
||||||
|
|
||||||
|
If we study something divine, are we saying it's not available to me when I want it? Are we saying I can't achieve enlightenment if I desire it, pray for it, fast for it, and meditate on it? What if I've already done all that? What if I've meditated across many lives? What if I've meditated for many days while fasting, praying, applying the teachings, giving myself massages, receiving massages, and eating properly? If I've done this for many years, wouldn't I receive better downloads than someone who spent six years listening to eighteen different professors, then working at various clinics in different countries?
|
||||||
|
|
||||||
|
This knowledge is available to everyone. It's not formatted at an inaccessible level like many undergraduate courses where you need to attend university to learn it. It's a simple thought structure. I believe what made me successful in this field was that nobody told me it was difficult.
|
||||||
|
|
||||||
|
To be honest, my first teacher wasn't excellent, but he didn't intimidate me. He told me legends when he saw I was enthusiastic about everything in the first class. He said, "You're reacting positively to everything I say," and I said, "Yes, this is great\!" He responded, "It seems like you've seen this before." I agreed, and he said, "They say those who show this kind of learning pattern on the first day have studied Ayurveda for three lives. Perhaps you've come in this life to be a teacher."
|
||||||
|
|
||||||
|
I said, "Yeah, right." Later, I would get rides home from my training course with an older man who was retired from the Federal Police. He was a practicing psychoanalyst with many stories. After three or four months of courses, he said, "You realize you're already very good at this, right?" I said, "No, Cláudio, I had no idea."
|
||||||
|
|
||||||
|
About four years after my first training course in 2013, I went to Canada for a four-month extension course. I thought, "Now I'm going to learn Ayurveda." When I arrived in Canada, I discovered something incredible: in Brazil, Ayurveda isn't regulated, meaning you can teach anything without oversight. In Canada, it's regulated—you can't discuss diagnosis or nutrition.
|
||||||
|
|
||||||
|
So when I arrived talking about diagnosis and nutrition, my teachers scolded me. Over those four months, I became friends with them and understood they were concerned about me doing something illegal, but they also appreciated that I knew more than they did and more than those who taught them. I met some Indian Ayurvedic doctors and worked as a consultation translator. I found their consultations trivial and outdated for the people receiving them.
|
||||||
|
|
||||||
|
That's when I thought, "My God, I think I know this subject." I started taking patients from others because I challenged myself. I would say, "They did it wrong for you. Let me do it right." I was confrontational and took other practitioners' patients because I saw they were making mistakes.
|
||||||
|
|
||||||
|
So there was both an aptitude and a great desire to solve my own problems and the world's problems. People have no idea who they are. There's a tarot card today that says, "A master is one who knows who he is and knows who you are—because you don't know who you are and don't know who the master is. The master knows who he is, knows who you are, and is there to tell you this." I think I adopted that posture.
|
||||||
|
|
||||||
|
*Have you had any experiences of appropriation or improper use of your protocol?*
|
||||||
|
|
||||||
|
No, I'm precisely the kind of teacher who says, "Take everything I'm doing and make it better." I like that. I'll give you a simple answer: all the great people in the world were examples. So I'm here to be an example. I'm not worried about people imitating what I'm doing. I want you to follow my example and challenge everything I teach. If a person doesn't challenge it, they're missing the point—they haven't learned anything.
|
||||||
|
|
||||||
|
*Through all of this, what was the most important decision in building your protocol?*
|
||||||
|
|
||||||
|
I think it was not having a problem challenging consensus. There's consensus that Ayurveda should be cited by classical text. There's consensus that it's somewhat complex and it's from India. People think, "Indians know so much about life\!"
|
||||||
|
|
||||||
|
So I think bringing this knowledge in a simple way, demystifying it, made the difference. I remember a story about a Vedic astrologer who did a chart for a woman and told her that to succeed at work, she needed to feed a black cow by throwing corn from a bridge in the direction of the river flow. She had to be above the bridge so the corn would pass below for the cow to eat.
|
||||||
|
|
||||||
|
This woman came to me with this story, and I thought, "Good heavens\!" The world is such a practical place. Let's drink a glass of hot water to remove yesterday's toxins. You're not getting a job because you lack vitality or you're too anxious in job interviews. So let's take some things to calm that anxiety, ground your thoughts, and not talk too much like I'm doing now in your interview.
|
||||||
|
|
||||||
|
These are paths that people adopt. I think that's my difference. Today we have many practitioners, but there was no one when I started. So I had no problem saying, "This is all wrong. We're doing it wrong." I had no problem saying, "People are tripping." And I had no problem showing that I also trip sometimes. Like, I enjoy beer, I eat meat, I have an active social life on weekends.
|
||||||
|
|
||||||
|
As a transmitter of liberating knowledge, I can't imprison myself in the idea of being a monk, because I'm not a monk and I'm not selling that image. So I think the big decision was not having a persona.
|
||||||
|
|
||||||
|
I'm still ashamed of who I am. I think everyone has their problems. I'm ashamed of a mixture of many things. I don't even have an undergraduate degree, Julia. I'll soon graduate in Naturology, but I've studied a ton of things. I debate with healthcare professionals—I'll talk with an oncologist about cancer treatments, they'll question me, and then they'll say, "Well, what you're saying makes sense."
|
||||||
|
|
||||||
|
So I needed to learn to challenge others, and I don't like that much. The big watershed moment is whether I accept my function in the world or not. I think that's it.
|
||||||
|
|
||||||
|
*What lessons would you share with people who are beginning to build or maintain protocols?*
|
||||||
|
|
||||||
|
If you weren't just starting, it wouldn't be difficult. There's no one to teach you what you're doing. I think that's it—no one is there to teach you. You have to discover it. You'll discover because you need to solve a problem. As ethereal as problem-solving may be, it exists. If a pipe is leaking, you fix the pipe. If it's not leaking, that's logical.
|
||||||
|
|
||||||
|
Protocol is about solving problems in your area. So you have to believe in it because you won't see the pipe leaking, and you won't see that the pipe has been fixed. Often, it's only the result—sometimes years later—that will show you it really works that way.
|
||||||
|
|
||||||
|
So I think developing these things is connected to an internal feeling of blessedness. It's like the old story—I was talking with a friend about diving from a springboard, climbing, diving into the sea, crossing. All these things are scary. People don't do them because they have no fear; they do them despite having fear.
|
||||||
|
|
||||||
|
So you're afraid? You'll do it with fear anyway. Today, I'm no longer afraid to appear on a livestream talking about a subject I know well. But if you look at my video from fifteen years ago where I talk about Ayurvedic massage, I stutter and spit because I'm embarrassed to open my mouth.
|
||||||
|
|
||||||
|
So everything comes from confronting challenges. You have to face obstacles to create something new. No dam holds water without causing some destruction in the environment. You have to challenge the environment.
|
212
content/interviews/prodromou-distributed_social_networks.md
Normal file
212
content/interviews/prodromou-distributed_social_networks.md
Normal file
@@ -0,0 +1,212 @@
|
|||||||
|
---
|
||||||
|
narrator: Evan Prodromou
|
||||||
|
subject: Distributed social networks
|
||||||
|
facilitator: Nathan Schneider
|
||||||
|
date: 2024-12-06
|
||||||
|
approved: 2025-04-01
|
||||||
|
summary: "A career-long journey to build online social networks that cannot be controlled by a single company, culminating with the ActivityPub standard."
|
||||||
|
location: "Montreal, Canada"
|
||||||
|
#headshot: "placeholder-headshot.png"
|
||||||
|
links:
|
||||||
|
- text: Website
|
||||||
|
url: https://evanp.me/
|
||||||
|
- text: "ActivityPub: Programming the Social Web"
|
||||||
|
url: https://www.oreilly.com/library/view/activitypub/9781098162733/
|
||||||
|
topics: [decentralization, open source, organizations, social media, software, standards]
|
||||||
|
---
|
||||||
|
|
||||||
|
*How do you introduce yourself?*
|
||||||
|
|
||||||
|
My name is Evan Prodromou, and I'm a software developer, entrepreneur, and architect from Montreal, Canada. I'm best known for my work on distributed social networks, and in other circles for wikis and AI. I have a lot of different hats.
|
||||||
|
|
||||||
|
*Let's get to know some of those hats. How would you outline the trajectory of your life and career? Where did you start and where are you now?*
|
||||||
|
|
||||||
|
I did well in school and ended up going to UC Berkeley as a physics student in the eighties. The University of California was an incredibly exciting time to be in physics---I had more Nobel laureates in my department than there were in all of the Soviet Union at the time. These were all the people who came out of the Manhattan project and were still producing great work from Lawrence Berkeley Labs and Lawrence Livermore Labs.
|
||||||
|
|
||||||
|
One of my great opportunities was working as a research assistant for Charles Townes, who won the Nobel Prize for inventing the laser. A lot of my work as a young physics student was doing software development because these older generation professors had computer-driven experimental equipment but not a lot of programming skills. I did a lot of writing code in Fortran and C to control telescopes and various material sciences machines.
|
||||||
|
|
||||||
|
When I got out of university, I started working in software development while I decided which graduate student program I would go to. It turned out that I really liked writing software and I really liked making money, and those were two things that I wasn't going to get to do as a PhD student. So I stayed in the software business.
|
||||||
|
|
||||||
|
I worked at Microsoft for about three years and then moved on to a company called Securant, which did security software. They were bought by RSA. At that point, with a little money under my mattress, I decided I would start my own business and start working on my own projects instead of working on someone else's projects.
|
||||||
|
|
||||||
|
I started a service called WikiTravel in 2003 with my wife. We were partners on that project---my wife is an information scientist who does data organization and taxonomy, so her input was really valuable on WikiTravel. It was like Wikipedia meets Lonely Planet, a worldwide travel guide built by travelers themselves sharing information with each other. By 2007 we had sold it to Internet Brands.
|
||||||
|
|
||||||
|
I was looking for my next thing to do and wondering where my life was going to go when I was invited to an event in Boston at the Free Software Foundation, the older open source organization run by Richard Stallman. They invited me and a number of other people who had been involved in Creative Commons---WikiTravel was all Free Software, all Creative Commons content---and other people who had built big network services using open standards and open-source software. They asked us to come do a big workshop and think about what we were going to do about network standards.
|
||||||
|
|
||||||
|
That was me, Aaron Swartz was there, Mike Links, Lewis Villa, and Benjamin Mako Hill. It was a really great group of people who were very enthusiastic about taking this movement around open source software, which had been about programming editors and compilers, and bringing it to network services that people use over the Internet. This was in 2007, so definitely ten years late, but still a very interesting set of people.
|
||||||
|
|
||||||
|
We put together the Franklin Street Statement---Franklin Street is where the FSF headquarters were---about how people should use network services. Use open source software, use open data, use systems that you can set up yourself and can control on your own servers. Don't use stuff that you have to be dependent on. It was a really exciting time. I came out of the meeting thinking, "Boy, I can't wait to start a new service."
|
||||||
|
|
||||||
|
This was 2008. Twitter had just launched at South by Southwest in 2007. They had been running in stealth mode among Web 2.0 digerati, and in March of 2007 they opened up to the public. I was there, and I tried it, and I was like, "Oh, I get this." About six months later, I started writing the software that would become StatusNet and started writing the code that would become Identi.ca.
|
||||||
|
|
||||||
|
This was mid-2000s, and there was this open-source inevitabilism---this sense that if you've got a word processor, we're going to make an open-source word processor that's going to be as good or better, and we're going to wipe out your business. If you've got a server operating system, we're going to make an open-source server operating system. No matter what commercial corporate organizations could make, we would undercut the value by making an open-source alternative.
|
||||||
|
|
||||||
|
*Some worked better than others.*
|
||||||
|
|
||||||
|
Yes, exactly. So I was like, "Oh boy, I'm going to be the one that makes the open-source Twitter." I started building it and shared it with this group of people who had been at this Franklin Street meeting. They were excited about it. They were working on Identi.ca, they were sharing and having conversations there.
|
||||||
|
|
||||||
|
Then we had a moment where people were starting to use the source code on their own servers, and they were like, "Well, now we're cut off from the conversation. We took the software, we're exercising this control that you say we should have, but if we move to our own servers, we're locked out."
|
||||||
|
|
||||||
|
Within about a week, I wrote the first distributed social networking protocol called OpenMicroBlogging, and it was dead simple. You could follow someone and anything they posted would get posted into your timeline. I don't think it had replies, it didn't have likes, it didn't have any rich interaction, but it was enough to make someone remote into part of your network, and that felt like it would work well enough.
|
||||||
|
|
||||||
|
There was a lot of excitement at the time in these social systems and in the software that I wrote because Twitter was having a lot of technical problems as it grew. There was real interest from the wider social networking community saying, "Hey, this open source software---anybody can install it, it can be distributed. Why are we trying to do all our work on this one server rather than using this distributed system?"
|
||||||
|
|
||||||
|
I raised venture capital in this company. The original name of the software was Laconica---like *laconic*, meaning "short text"---but we changed it to StatusNet, and that's what it was known as for most of the time period. I raised venture capital, which was first time I had done that. That was very interesting.
|
||||||
|
|
||||||
|
At the same time we were doing this, there was a lot of activity going on in other parts of what was loosely called the "open web stack." OAuth had started, based on work from teams at Flickr and Twitter. Then Google jumped in, and some of the bigger companies jumped in. That little circle of people became the Open Web Foundation, and they developed a few really interesting protocols.
|
||||||
|
|
||||||
|
Brad Fitzpatrick, who had founded LiveJournal and then was at Google at the time, created this protocol called PubSubHubbub---worst name ever. But it built on the push process that I had done with OpenMicroBlogging. He made it scalable, at Google scale, and it really got picked up. There was a point at which all the Google blogs and WordPress blogs and Tumblr had this push mechanism built in.
|
||||||
|
|
||||||
|
There was also the development of a data structure system based on RSS and Atom called ActivityStreams. It basically took the flat blog post structure of RSS, where it's a title and some text and maybe an image embedded, and they were like, "What if we added rich semantic meaning to this content?" So this item in this feed doesn't represent a blog post---it represents a like, or it represents a comment or reply. They built in this structure on top of Atom.
|
||||||
|
|
||||||
|
It also became quite popular. Facebook had an ActivityStreams feed, WordPress had it, and I think Google had it in some of their systems. The Open Web Foundation that was putting out interesting systems. WebFinger came out at this time too---having an email address identifier that you could use for different services.
|
||||||
|
|
||||||
|
StatusNet was doing well. We launched a SaaS service so you could sign up and get your own StatusNet system for like $5 a month---your own social network that would connect to all the other StatusNet social networks and Identi.ca. But we were running into some problems with OpenMicroBlogging barely working.
|
||||||
|
|
||||||
|
StatusNet included me, Brooke Vibber (who had been CTO at Wikipedia and had joined StatusNet to help us build this system), James Walker (who had been one of the core Drupal developers), and Zack Copley (who had been at StatusNet since the beginning). We were lucky to have a lot of really great open-source software developers. We put together a standard called OStatus. It was basically taking PubSubHubbub, ActivityStreams, this other comment system called Salmon, and WebFinger, and putting the glue together to make them work together as a standard.
|
||||||
|
|
||||||
|
When I say *standard* here---this is an interesting time period because there was a lot of "Hey, we made a protocol, we're sharing it with everyone, if you want to implement this, you can" without a lot of the overhead that was happening in bigger standards organizations. It was really refreshing but also turned out to be a problem for adoption because bigger corporations were like, "Hey, we have no idea who has any intellectual property in these projects, who's got patents, have you done a patent search?" It was just a bunch of engineers throwing things together.
|
||||||
|
|
||||||
|
We had two ways that our software was used. One was in enterprises---Target, Motorola, Deutsche Bank, and a number of big companies had installed our software on their internal networks for their employees. We were doing pretty well in this area, but this other company Yammer had done way better. They had a really aggressive customer acquisition strategy and they basically cleaned our clocks. They were acquired by Microsoft, and that was it for my investors. They were like, "All right, you're done. We're not going to invest more in you for this enterprise social networking stuff because clearly you've been beat."
|
||||||
|
|
||||||
|
Then, on the public side, around 2011 and 2012 is really when we saw the consolidation of social networks. I call it the big squeeze. There had been a lot of interesting social networks in the late 2000s---Hi5, Bebo, MySpace, and different regional ones in different countries. Gradually, with a huge amount of venture capital and a lot of work, the few big networks had pushed out these other ones. Twitter, Facebook, LinkedIn---they had done really good work, but they had pretty much taken over these markets.
|
||||||
|
|
||||||
|
One thing that was interesting at this time was that the success of Facebook or Twitter in these early five or six years was partly due to the fact that they were open platforms. Facebook had launched Facebook Platform in 2007, which was their API system. You could actually build software that would run in the browser on the Facebook web page---put a little widget on someone's profile that was active and would do things like show a movie or something. It was a very open platform for developers.
|
||||||
|
|
||||||
|
Similarly, Twitter's API was kind of a mistake---they used Ruby on Rails, which comes with an API built in, and they didn't turn that off. It became a huge success. People loved developing for it. They built alternative UIs, data scrapers, and all kinds of things using the APIs. That's one of the ways you can be successful in business---make a lot of other people successful. If you can make someone who built a Twitter API client dependent on that service, they're going to be advocates for your service. They're not really going to be open to other services---they're on the Twitter train.
|
||||||
|
|
||||||
|
Because of that, we had a hard time talking to people about how there could be other platforms, how you could set up your own platform and still stay connected to others. As we were getting into the early 2010s, it was like, "Why would you have another social network? There is one social network: Facebook. Or there is one microblogging network: Twitter. What's the point of having multiple ones? Why would you connect multiple ones?"
|
||||||
|
|
||||||
|
I think we kind of hit a high point in those early 2010s with Google Buzz. Google had hired a lot of the people I was talking about who were involved in the process building lightweight standards---Brad Fitzpatrick, Chris Messina, John Panzer, Joseph Smart. They had brought together a lot of people who had done interesting work in this area, and they wanted to put out the most open, open-standards, distributed system.
|
||||||
|
|
||||||
|
The way Google Buzz worked was that you could pull all your different social network presences together and then rebroadcast them through open standards. They used the same stack that we did---they were using ActivityStreams and PubSubHubbub and Salmon. We thought it was awesome. Around 2011 or 2012, engineers at the Google I/O conference did demo a three-way interaction between Google Buzz, Cliqset, and StatusNet using OStatus. They had this whole conversation happen live on stage. It was this great moment, like "Wow, this is really taking off!"
|
||||||
|
|
||||||
|
*I don't remember that---it's the dream we're still chasing, right?*
|
||||||
|
|
||||||
|
But Google Buzz had a fatal flaw. The way that they kickstarted your social graph---the number of people that you're connected to---was using your Gmail contact list. Almost immediately there started being stories about people who were like, "Wait a minute, my abusive ex-boyfriend now has access to all my social networking stuff because I had his email address in my contact list." It was just a bad example of "Hey, we're going to use this data that we've collected for you as part of this one system to kickstart this other system."
|
||||||
|
|
||||||
|
They got sued and had a multi-million-dollar settlement. It was really bad---it had nothing to do with how the software worked, it was all about this contact list integration. But at this point at Google, they're associating open standards with catastrophic failure, terrible press, and bad privacy situations.
|
||||||
|
|
||||||
|
For me, it was a bad time because we had run out of money and had no additional investors. We had a small amount of revenue coming in from the SaaS service that we were running, but it couldn't support the big free networks we were running like Identi.ca. So I had to shut down the company. I had to let go all the engineers, and I also had this huge social network, Identi.ca, that was costing like $5,000 a month---it was a very expensive process for me to keep all the servers running.
|
||||||
|
|
||||||
|
So I wrote a new software package called pump.io that was written in Node.js. The previous version had been in PHP. It basically took everything that we had learned from five years of running a social network and applied it to the new structures. So instead of using Atom, which is an XML standard, we used JSON. This was almost entirely me solo, working by myself, because I'd lost all my employees.
|
||||||
|
|
||||||
|
*Because you were paying the server costs, you wanted to enable other people to migrate off it and run their own servers?*
|
||||||
|
|
||||||
|
Partly. But also because it meant I could run my servers much more cheaply.
|
||||||
|
|
||||||
|
*It reduced the load.*
|
||||||
|
|
||||||
|
Exactly. I converted from StatusNet to pump.io and transferred StatusNet---which became GNU social---to some enthusiasts at the Free Software Foundation who were like, "We want to keep running with this." I was like, "Great, take it, go with it." Then I built this pump.io project. It turned out great---Identi.ca is still running and still uses pump.io software. It is nowhere near its peak though. It was about 5 million users; now it's probably like 500 users, maybe. It's a very small number of people.
|
||||||
|
|
||||||
|
I did this pump.io software, released it, and moved Identi.ca to it, and then kind of walked away. I had done what I intended to do, and I was like, "Hey, that dream of a distributed social network is gone. These big social networks like Twitter and Facebook are no longer one among many---they are essential infrastructure, they're part of the way that the Internet works."
|
||||||
|
|
||||||
|
*Just as they were shutting down their open APIs.*
|
||||||
|
|
||||||
|
Absolutely. At this time, Twitter had a big event called the Chirp Developer Conference, which they had been organizing for like six months---"Come to the Chirp conference, exciting stuff!" Then, just before the conference, they had a big blog post---I think it was from Ev Williams---that was like, "Hey, we're shutting down the API for all but a few uses." We were at the conference. Our software actually had a Twitter-compatible API, so we were encouraging developers to take their tools and port them to use StatusNet instead. We had some interest there, but it was mostly these folks who had become dependent on these big networks and who had been part of making them successful---they were kind of out in the cold.
|
||||||
|
|
||||||
|
That was an interesting lesson. Same thing with Facebook Platform, although it was less dramatic. They did it gradually over time, just turning off a few API endpoints at a time. They converted to this format called Open Graph, which was not as featureful as their previous API, and then they turned off the old API.
|
||||||
|
|
||||||
|
At this time, Diaspora started. Diaspora was four young men at NYU, and they decided they were going to do a distributed version of Facebook. They dropped out of school, did a Kickstarter, and raised more than $200,000, which was the second biggest Kickstarter ever at that point. And they moved to California for some reason---that was probably how they spent most of their $200,000.
|
||||||
|
|
||||||
|
They built this great service, but it wasn't compatible with our distributed social networking. Me and my team were like, "Wow, this seems like a real opportunity that went to waste---they just did a brand new protocol and didn't even work with us to have some interoperability." So we started a project called the Federated Social Web Summit, where we tried to gather everyone who was working in social web software. We put out invitations to, I think, like a hundred projects. We got like 50 projects in. Almost none of them had compatible protocols---all of them were writing their own software and writing their own protocols.
|
||||||
|
|
||||||
|
We set up the summit process so it wasn't open to the public, it was only for the developers, and you had to have working code to come and be able to demo it. It was a super success. So first of all, the Diaspora guys were like, "Oh yeah, we should probably support your protocol too," so they supported OStatus, which was awesome---just wonderful folks.
|
||||||
|
|
||||||
|
We did three iterations of that---one in Portland, one in San Francisco, and one in Berlin over three different years. So this is like 2010, 2011, and 2012, and it was a great process. We had a super valuable process. I think we got a lot of cross-pollination.
|
||||||
|
|
||||||
|
One of the things that happened is that some of the projects had been involved in the World Wide Web Consortium, and the W3C got interested in supporting this kind of work. So I joined a group at W3C---they invited me to join to do what they call an interest group, where you're thinking far ahead and exploring a new space. At the time, I had started another company called Breather, so I wasn't working on social software at all. Breather was room rental.
|
||||||
|
|
||||||
|
Let me rewind a second and talk about OpenSocial. About the time that Facebook Platform started, there were all these other social networks---again, Hi5, Bebo, Orkut. It sounds like glossolalia when I say them out loud! If you look at the Wikipedia list of social networking platforms, there are so many, and they all have silly names.
|
||||||
|
|
||||||
|
But all these other ones were like, "Hey, we have to build our own platform." The solution that they came up with was, "We can't compete with Facebook by all having our own different ways for building applications." So they built a single way for building widgets on a homepage called OpenSocial, and it covered one part of the problem. They didn't have any federation involved. The idea was if I build a zombie bite app and put it in Orkut, it should also work in Hi5.
|
||||||
|
|
||||||
|
*So it enabled developers to simultaneously develop for all these smaller networks.*
|
||||||
|
|
||||||
|
Yes---you could just build something once and then register it on all these different services.
|
||||||
|
|
||||||
|
OpenSocial was announced with great fanfare. Google led it. They had a bunch of developers doing it. Then by early 2010s, all these companies had gone out of business. What had actually happened was that enterprise social networks---at big companies like IBM and Boeing---had invested in building applications on top of this framework for their employees. When the OpenSocial organization peaked and then dropped off---I was on the board at the time---we thought, "How about we hand off all our IP, like all our standards, all our domains, off to W3C?" The W3C took it. I think partly because they had a lot of the same corporate members---IBM and Boeing were OpenSocial members, and they were W3C members, and the W3C members wanted to keep control.
|
||||||
|
|
||||||
|
Then W3C had to decide what to do with it. They asked this very active W3C employee named Harry Halpin. He was like, "I've got an idea. Let's pull together these OpenSocial folks, all these Federated Social Web folks, and Tim Berners-Lee." Tim Berners-Lee, founder of W3C, the father of the Web, was starting to get interested in social networking too, and he wanted to use his favorite technology, the Resource Description Framework or RDF, to solve social networking.
|
||||||
|
|
||||||
|
So Harry was like, "Let's bring these three groups together and make a working group at W3C," which is how you make standards. They asked Tantek Çelik---who has been doing browser standards at Microsoft, then at Mozilla, for the last twenty years---to be a co-chair. Then there was Art Barstow, who was working at IBM and had done a lot of RDF stuff. And me. So they asked the three of us to co-chair this group.
|
||||||
|
|
||||||
|
It was really interesting. The way that a group gets created at W3C is that they have to put together a charter---what is this group going to do, what's its outputs---and then they put it up for approval by the membership. And it got shot down. First of all, there were a number of big commercial social networks that were members of this group of W3C because they cared about HTML and stuff, and they were like, "No, we don't want you commodifying our business." Google at the time had been really burnt by Google Buzz, and they were like, "No way, no how---open standards toxic, do not want."
|
||||||
|
|
||||||
|
So we had to adjust this charter until these folks would sign on. I think when it came down to it, none of them said yes---they all just abstained from the vote. I think their expectation was that we were just going to face-plant, which was probably a good bet at the time.
|
||||||
|
|
||||||
|
So we started with literally zero. I was an open-source guy who had been doing open standards at this point for like six-seven years---I was probably the most experienced social network developer in that group. There was no one from Twitter, no one from Facebook, no one from Google. We had James Snell, who had worked at IBM and had done a lot of the ActivityStreams work there, but almost nobody involved were professional social networking folks.
|
||||||
|
|
||||||
|
We had a couple of people who had done open standards stuff from the Federated Social Web Summit group, and we had Tantek, who is the kind of standards guy who wants to get lots more people involved in standards. He was like, "Anybody who comes and says they're interested in being in this group, we just let them in." W3C has this whole thing where you have to be a member of a member organization or get invited by the chairs. And Tantek was like, "Let's just invite everybody." So we invited all these folks, and we had this super mixed bag of people.
|
||||||
|
|
||||||
|
We had probably three main tracks of folks involved. The first was from the track that I had been part of using ActivityStreams, using PubSubHubbub, using this OStatus stack, and then also OpenSocial, which also used a lot of the same technologies. They used ActivityStreams, they had a RESTful interface---it was at least very compatible.
|
||||||
|
|
||||||
|
We had Tantek who had been doing IndieWeb work for like a decade, which was about grassroots, amateur software developers---no standards, just a very open process. That group was like, "What is the minimal amount that we can do to support social standards?"
|
||||||
|
|
||||||
|
And then we had a third group that was led by Tim Berners-Lee, who gets a lot of weight at the W3C, as you can imagine. By this time he was *Sir* Tim Berners-Lee, and he was also participating with this whole semantic web group around him. They were like, "The only thing you need is RDF, and it'll all work, and it works perfectly. And why are we even here? We already have RDF."
|
||||||
|
|
||||||
|
I doubt any of them had ever used a social networking platform in their entire life. We were explaining things like a feed of activity, or liking something, having any kind of feedback to someone like commenting or liking or sharing, and they just couldn't handle it. They just had a very RDF-centric view of the world.
|
||||||
|
|
||||||
|
None of these folks knew what they wanted to do, so we put together this huge set of user stories---I think like 200 user stories, all these different things that you could do with social networks. Then we narrowed it down to something like 20 or 25---these are the ones that we're going to work on. And that was a fight.
|
||||||
|
|
||||||
|
Then we were opening up for potential standards, and we had these three groups who put together three different sets of standards. The IndieWeb folks put together a very light set of standards---Micropub, WebMention, a couple of other things---and they were like, "This is all we need. This is the lightest way you could possibly do social networking." And it was fine, it just wasn't as full-featured as some of the other stuff.
|
||||||
|
|
||||||
|
The people around Tim Berners-Lee put together this thing where you could publish a profile and declare like five friends or something, and they were like, "There you go, social networking." And we were like, "It doesn't do anything---what are you talking about?" And they got really upset, and they left. All of a sudden there were stories in all the major newspapers like "Tim Berners-Lee is going to solve social networking!" He started the Solid project at that time, took it out of the standards process, and got venture capital and went and built---what it's called---Inrupt. So he was off on his own.
|
||||||
|
|
||||||
|
That left the group around OStatus, and one of the people who had been a developer for pump.io, and had built some of the clients and software that worked with pump.io, was like, "Hey, I think pump.io has a great API, great federation, super nice architecture." This is Erin Shepherd. She wrote up a submission. Basically, she took the pump.io API, added some things, took out the word "pump.io," and changed how it worked just a small bit. Then she submitted it.
|
||||||
|
|
||||||
|
So we had these submissions---the RDF people had gone, so we had these two sets of submissions. One was from the IndieWeb group and then the one Erin did, which became called ActivityPump. That was the name because it took pump.io plus activities. The idea is you were pumping it out. It wasn't a great name.
|
||||||
|
|
||||||
|
*But it was also a kind of tribute to what had come before.*
|
||||||
|
|
||||||
|
We couldn't agree on any one of the models. Finally, Tantek and I sat down, and Tantek was like, "Hey, look, we can just publish all of these. Let's just go ahead and do it. That way we don't have to argue about which one's right and which one's wrong. Let's just get them out, and they'll be official W3C standards, and they're out there."
|
||||||
|
|
||||||
|
James Snell had taken the earlier versions of ActivityStreams and made a new one that was JSON-based---ActivityStreams 2.0. He had built most of it already, so we were in an editorial stage by then. It's the data structures defining what is a note, what is an article, what is an image. What does it mean to like something, to follow someone? He set up that architecture of the data structures. ActivityPump was the protocol for getting those data structures moved around.
|
||||||
|
|
||||||
|
But Erin, who submitted this proposal, was not interested in taking it any further. We had two people who had joined the group from an open-source project called MediaGoblin. It was kind of a distributed social network with a focus on images and video and things like that. They wanted to support OStatus, and I had been like, "Hey, you should come be part of this W3C thing. We're doing the next protocol after OStatus, so come help build that."
|
||||||
|
|
||||||
|
That was Christine Lemmer-Webber and Jessica Tallon, and they stepped up to edit the ActivityPump document, which was amazing. But it was their first time ever in standards world. At this point our star Tim Berners-Lee had left. We had a year and a half to two years to finish this project, and we had these two groups---the IndieWeb group and this ActivityPump group---that were not really working on the same stuff at all, with some hostility.
|
||||||
|
|
||||||
|
I know that for Christine and Jessica it was really tough. When you're doing standards, you get all these comments from folks who had nothing to do with social networking, and they had to manage it and edit this project. James Snell left about this time, so I took over ActivityStreams to get it over the finish line.
|
||||||
|
|
||||||
|
In 2016, this new project called Mastodon started. I don't know who it was---I definitely tried to point it out to them, but it may have been Christine who was like, "Look, don't use that old standard. It's got a lot of problems with it. You should use the new standard that we're almost done with."
|
||||||
|
|
||||||
|
And they did. So Eugen Rochko and a couple of other friends and collaborators built Mastodon on top of ActivityPub. We hit the end of our time period, and we had published a lot of documents, but we hadn't finished what was still called ActivityPump at the time. The W3C gave us an extension on our time to finish because Mastodon was doing so well.
|
||||||
|
|
||||||
|
I think we finished the actual spec in January 2019. We were done, and we had this popular open-source project using it. A bunch of other open-source projects started using the protocol---PeerTube for video, then Funkwhale for audio. It had a nice, lively little community happening with hundreds of thousands of people on the network. One of the last things we did with the standard was change the name from Activity Pump to ActivityPub. ActivityPump was a terrible name.
|
||||||
|
|
||||||
|
*I think both names have their virtues.*
|
||||||
|
|
||||||
|
Well, the social media space had almost a tradition of ridiculous names for a while.
|
||||||
|
|
||||||
|
Once ActivityPub was done, I set it as my goal to make Identi.ca compatible with this new standard. I had handed pump.io off to a maintainer named AJ, and they were working on it. I kind of drifted off. I worked at Wikipedia for two years and then worked for a couple of startups, and I really was not working on distributed social networking, which was such a relief, to be honest.
|
||||||
|
|
||||||
|
*Everything you've just described sounds so exhausting.*
|
||||||
|
|
||||||
|
Social networks are really hard when they're not popular, and they're hard for other reasons when they become popular. The scaling problems with social networks go up exponentially. Your resource demands grow as your number of users grow because they have more conversations, more connections. Your needs as the systems grow are way bigger, which is why so many social networks collapse.
|
||||||
|
|
||||||
|
It's a lot of time, a lot of effort. After 2013, this was no longer my full-time job. I was working at different places, I had two different startups, and I was doing this work as my second work. That's still the case to this day---I don't work professionally on ActivityPub.
|
||||||
|
|
||||||
|
Christine and, to some extent, Jessica continued at the W3C. We had this group called the Social Web Community Group, or Social CG, and it kind of picked up where the working group left off and worked on extensions and documentation and things like that, helping developers work together. But one of the things that happens when you publish a standard that takes years to get create is it becomes very fossilized, very ossified. You can add on to it, but you can't really go back and say, "Oh, it would have been better if we had done this." We had a working network of thousands of servers. If you change how it works fundamentally, half of those servers or three-quarters of those servers are going to be cut off. So you have to just do backwards-compatible changes, iterative changes rather than really big changes.
|
||||||
|
|
||||||
|
*Do you have any regrets about what is in that ossified standard?*
|
||||||
|
|
||||||
|
I don't have huge regrets. If I have any, it's that I did not help get us to a working reference implementation before I stepped back. There are some parts of the stack that were never built out. Mastodon had to define how servers authenticate each other. There was a lot of work that went into filling in the gaps in this structure that could have been done with a reference implementation instead.
|
||||||
|
|
||||||
|
Christine was co-leading the Community Group, but she had a lot of other things on her plate. And there was some really toxic behaviour in the Group. She stepped away from the W3C entirely, so by 2022, there's not really anybody with their hand on the tiller, and that's exactly the time when Elon Musk buys Twitter and people start thinking about going to other social networks. There was this flood of people onto Mastodon, and I was like, "Oh, this is great! Hey, wait a minute---what's going on? Nobody's running the store over here."
|
||||||
|
|
||||||
|
So in late 2022, early 2023, I was like, "Okay, my name is on these documents. I've access to all these GitHub repos. There are GitHub issue repositories that have like 200 un-triaged issues." And I was like, "Somebody's got to get in here. I think I'm the last person standing." So I started maintaining the spec again.
|
||||||
|
|
||||||
|
That happened about the same time that we started having meetings again. So it has really reinvigorated this organization. Now some of that stuff that was undocumented---like how you use WebFinger with ActivityPub, or how you use HTTP signatures, which is the authentication between servers---that's documented now in official documents. We're working on new kinds of social activities like geosocial---doing check-ins, saying where you are, putting things on maps---and doing groups, like having a distributed group that you can post to privately. We've done work on end-to-end encryption.
|
||||||
|
|
||||||
|
Over the last year, I wrote a book for O'Reilly, *ActivityPub: Programming for the Social Web.* I also started a nonprofit called the Social Web Foundation for encouraging use of ActivityPub. We lucked out that there has been commercial uptake with ActivityPub---Threads from Meta, as well as Flipboard, WordPress, and Ghost. The intent is to keep that rolling.
|
||||||
|
|
||||||
|
I started a cooperative Mastodon service at cosocial.ca. It's become a bigger part of my life over the last couple years than it had been for the years before.
|
||||||
|
|
||||||
|
I'm kind of a universalist---I think everyone should have access to this kind of technology and be able to make choices, stay connected to people even if they're on other social platforms. I think that one way that happens is by connecting more platforms to the network. I would love to see Snap and LinkedIn and TikTok all be connected over this space.
|
||||||
|
|
||||||
|
However, there's also this cultural underground that has built up. It's people with a mix of privacy concerns, maybe some anarcho-libertarian structures, folks who are very on that side of the political spectrum. And I don't know if it's entirely because of Christine and Jessica, who's also trans, or Erin, who's also trans---so like three of the five authors of this spec are trans women. That kernel of techie trans people became a really big, important part of the network as it exists now. They're like, "Why are you trying to bring people from outside to our Fediverse, which should be just for us?"
|
||||||
|
|
||||||
|
Being able to keep the flavor of that culture alive while still making the technology available to more people worldwide is tough, and I don't think---I have some people who get really angry at me about it. It's hard to figure out how to make sure that you can have this place that is safe and exciting and enjoyable, but at the same time make this technology available to everyone.
|
||||||
|
|
||||||
|
I don't know if I have an answer to that, or if I'm even the person who needs to have that answer. I'd like to at least make it technically possible---I'm not sure if I can be the person who preserves that culture. That might be something that others have to do.
|
208
content/interviews/xavier_rodrigues-beekeeping.md
Normal file
208
content/interviews/xavier_rodrigues-beekeeping.md
Normal file
@@ -0,0 +1,208 @@
|
|||||||
|
---
|
||||||
|
narrator: "Manoel Xavier Rodrigues, Glaicon Nei Ferreira de Sousa, and Dionizio Jansen"
|
||||||
|
subject: Beekeeping
|
||||||
|
facilitator: Júlia Martins Rodrigues
|
||||||
|
date: 2025-01-18
|
||||||
|
approved: 2025-04-28
|
||||||
|
summary: "Meliponiculture—the practice of raising stingless bees—represents a vital intersection of environmental conservation, traditional knowledge, and sustainable agriculture in Brazil."
|
||||||
|
location: "Minas Gerais, Brazil"
|
||||||
|
topics: [ancestors, food, friendship, indigeneity, organizations, science]
|
||||||
|
---
|
||||||
|
|
||||||
|
*How do you introduce yourselves?*
|
||||||
|
|
||||||
|
**Glaicon:** My name is Glaicon, I am a meliponiculturist and beekeeper. I have been working with bees for 30 years and professionally for 11 years.
|
||||||
|
|
||||||
|
**Manoel:** My name is Manoel Xavier, I'm also a meliponiculturist and beekeeper, and I've been working with stingless bees for approximately 8 to 10 years.
|
||||||
|
|
||||||
|
**Dionísio:** I'm Dionísio Janssen, also a meliponiculturist for 8 years. I feel responsible, along with my colleagues, for spreading this practice, given that 70% of the food that reaches our table requires our bees. For those of us living in this neotropical region, stingless bees are our main pollinators.
|
||||||
|
|
||||||
|
*How is meliponiculture knowledge transmitted today, and how do you participate in this network?*
|
||||||
|
|
||||||
|
**Glaicon:** When I started in meliponiculture, I saw the need to share my knowledge with others. I began studying more and building capacity. I saw the need to raise bees in a more organized way. Over time, I realized the necessity of creating a group so that more people like me could spread the idea and transform it into environmental protection. Today, our group---which has a presence throughout almost the entire country---has done good work with students who started with ten hives and now have 400 hives. Our environmental protection work has become family income, and all this was accomplished through creating a group for training new agents.
|
||||||
|
|
||||||
|
*How does this group and network interact?*
|
||||||
|
|
||||||
|
**Glaicon:** This network interacts through shared knowledge. We have small, medium, and large meliponiculturists who have doubts and teachings. Our information sharing enables us to build capacity for healthy meliponiculture and strong, focused environmental protection.
|
||||||
|
|
||||||
|
**Manoel:** To add to that, we believe that to protect bees, we have rational management techniques that respect nature. We try to disseminate this knowledge so people can expand the number of hives and bees being raised rationally and sustainably, respecting nature.
|
||||||
|
|
||||||
|
*What role does this network play in transmitting knowledge?*
|
||||||
|
|
||||||
|
**Dionísio:** It's about bringing responsible, quality knowledge not only to group members, but to all people interested in species conservation, biodiversity, and especially our stingless bees.
|
||||||
|
|
||||||
|
*Are these exchanges informal? What is the group's purpose and which platform do you use?*
|
||||||
|
|
||||||
|
**Glaicon:** We use WhatsApp. We have a group among us that's available 24 hours a day to obtain information, management techniques, and learning---always interacting with each other and learning more each day.
|
||||||
|
|
||||||
|
*So it's a space for sharing and exchanging experiences?*
|
||||||
|
|
||||||
|
**Manoel:** Generally, people don't start with this as their primary source of family income. So obviously, all this is done during free time, when each person is available.
|
||||||
|
|
||||||
|
*What are the criteria for participating in these groups? What rules and protocols are adopted?*
|
||||||
|
|
||||||
|
**Glaicon:** Our group is very selective. We cannot address any topic that doesn't relate to meliponiculture. We keep our group well-focused on our perspective. All people there share the same idea and profile. There are people in the group who administer it, creating protocols so everyone can freely come and go with their questions and teachings.
|
||||||
|
|
||||||
|
*How are conflicts addressed when disagreements arise?*
|
||||||
|
|
||||||
|
**Manoel:** Conflicts always have a moderator who will calm the situation. The group administrators are responsible for this moderation and ensuring harmony in experience exchanges, question responses, or posts that some might find inappropriate for the occasion or the group's purpose.
|
||||||
|
|
||||||
|
**Dionísio:** These decisions are deliberated among administrators, and before any action, we first discuss what measures to take. Whether it's excluding a member or simply making a private call to get them to retract, or if it's less serious, perhaps just a correction on the topic is enough to address the issue.
|
||||||
|
|
||||||
|
*Glaicon, you're an administrator of one of these groups, correct?*
|
||||||
|
|
||||||
|
**Glaicon:** Yes, Grupo União (Union Group).
|
||||||
|
|
||||||
|
*How are these moderators chosen? Based on what criteria?*
|
||||||
|
|
||||||
|
**Glaicon:** They're chosen based on their commitment to the subject. People who truly believe in environmental protection and pollinator conservation. These people are chosen carefully. They must fit the profile to provide answers to everyone present. The people in Grupo União are handpicked based on their commitment to healthy culture and environmental protection.
|
||||||
|
|
||||||
|
*Do you have examples of teachings or exchanges that happened through these groups that modified your practice or bee protection?*
|
||||||
|
|
||||||
|
**Manoel:** May I share an example? Our main concern is: how do we save bees from extinction? By multiplying hives. Often, people go and extract a hive from nature thinking they're helping, but they're actually causing harm. One method we found for hive multiplication is division. You take a box, like this yellow *uruçu*, and divide that hive into two. Previously, we would take the daughter or mother box and move it to a distant location for division, to prevent the forager bees from the separated box from returning to the original location, leaving the other uninhabited. A great teaching we learned in the group is that we can divide the hive by placing the mother box and daughter box side by side. The forager bees will find each other and divide between the two boxes. We quickly have two hives. This is knowledge we acquired in our group.
|
||||||
|
|
||||||
|
*What do you understand as protocol?*
|
||||||
|
|
||||||
|
**Glaicon:** I understand protocol as an action. My protocol today, which directed me to reach my current state, was my daily training, learning from friends, and resolving consistent doubts. Starting to work with facts and forgetting assumptions. After I began studying Paulo Nogueira Neto, whom we lost two years ago and who is considered by the UN as one of the world's greatest biologists---he studied and taught about stingless bees at USP in São Paulo for 65 years. I’ve built capacity and directed myself with the protocol of learning from USP, from Paulo Nogueira Neto. Today I can teach what is truly factual to all people. I have students who started with ten hives and now have 400. Meliponiculture has become family income for them.
|
||||||
|
|
||||||
|
*Beyond this knowledge from the University of São Paulo, how did your journey with other communities happen? In other networks and groups?*
|
||||||
|
|
||||||
|
**Glaicon:** What happened during my journey was the opportunity to know different types of places, like indigenous villages and large companies involved in extractivism. We managed to be present in various university courses, participating in university theses in anthropology and agroecology, which somehow built our capacity and taught us, enabling us to disseminate this wonderful idea of environmental protection and meliponiculture.
|
||||||
|
|
||||||
|
*Could you tell us more about the indigenous communities?*
|
||||||
|
|
||||||
|
**Glaicon:** The indigenous communities I work with today, in Espírito Santo and Bahia, have undergone significant cultural changes and no longer live as they did before. But they still carry in their veins, in their blood, love for nature. They taught me a lot about dividing hives and caring for bees, and by caring for the village and community, I learned much from them.
|
||||||
|
|
||||||
|
*Did you visit these villages?*
|
||||||
|
|
||||||
|
**Glaicon:** I visited them and we're still friends today.
|
||||||
|
|
||||||
|
*Did they also teach you some of these techniques?*
|
||||||
|
|
||||||
|
**Glaicon:** I learned much more than I taught them.
|
||||||
|
|
||||||
|
*Today, how do you transmit this knowledge acquired from various sources?*
|
||||||
|
|
||||||
|
**Glaicon:** I’ve built capacity so I wouldn't speak from my personal perspective. I teach everything scientifically. Taken from books by great biologists, from universities, from studies. I teach what has been thoroughly studied. I'm very careful to limit myself when teaching, to ensure I'm doing what has been extensively studied.
|
||||||
|
|
||||||
|
*And you, Manoel, your path was different. How was this learning process?*
|
||||||
|
|
||||||
|
**Manoel:** My learning process---I used to work more with stinging bees, which are exotic in Brazil. I had my first contact with a cousin's meliponary. I was enchanted by the bees and ended up joining Grupo União, where I gradually acquired knowledge about each species and how to manage each species, the type of box, which box is most suitable, the dimensions of each box, the type of division, the type of hive modification, how they're fed, what type of flowers they prefer. Gradually, we solidify our knowledge. With this knowledge, we can share this information and disseminate this knowledge to other people interested in bees and nature in general.
|
||||||
|
|
||||||
|
**Dionísio:** We also have in Brazil a federal institution that's over 100 years old, INPA---the National Institute for Amazon Research---where there's work with these pollinators involving biologists from Asia, Europe, and South America. As a result, they taught us much about raising these pollinators. This greatly facilitated our work in the beginning. To this day, we share the idea of raising our bees with boxes developed by this federal agency, INPA.
|
||||||
|
|
||||||
|
*After building this knowledge over the years, learning from scientific sources and indigenous sources, what protocol was created to transmit and disseminate this knowledge through networks?*
|
||||||
|
|
||||||
|
**Manoel:** The protocols are actually rules we created to allow the group to be homogeneous and have a consistent form of knowledge transmission, always focused on the group's objective. We use the União meliponary groups to transmit what we know, as new people are always arriving. Sometimes, knowledge that's basic to us is fundamental for them to start from the beginning---learning in a guided process to practice sustainable stingless bee raising.
|
||||||
|
|
||||||
|
*Why this concern with transmitting meliponiculture knowledge?*
|
||||||
|
|
||||||
|
**Dionísio:** We feel obligated, so to speak, to be facilitators of this process. Why? To have the opportunity to share with people the importance of maintaining this biodiversity, keeping bee species alive that, as I said at the beginning, are responsible for bringing food to our tables. Most people don't know about this potential or importance that bees have for our lives.
|
||||||
|
|
||||||
|
*How is leadership in this group? Is it individual or collective leadership? Why did it happen this way? How have these dynamics evolved?*
|
||||||
|
|
||||||
|
**Glaicon:** In the beginning, it was practically the founder---me. Over time, I saw the need to let others also become administrators based on each person's capacity and effort. The group grew wings and evolved very satisfactorily. We became a group, and today, as Manoel emphasized, new people arrive daily, which for us is sometimes common---those arriving need that information.
|
||||||
|
|
||||||
|
*The group plays a fundamental role in training new meliponiculturists.*
|
||||||
|
|
||||||
|
**Manoel:** Yes, largely due to knowledge mastery. Sometimes a person has knowledge mastery but has difficulty transmitting it. But just by showing in the group, making a little video of how their hive is doing, what management they're doing, they're teaching a lot without even needing to speak sometimes. We perceive that their management and mastery is captured and perceived by group members, and they manage to transmit this knowledge.
|
||||||
|
|
||||||
|
**Dionísio:** Another thing I find relevant is this information exchange, because each creator's objective, each bee multiplier, can be different. You might have bees for a collection, for distraction, therapeutic treatment, or to have healthy foods of the best quality through these bee products. This is very important to highlight because these are different objectives within the same group that need this knowledge exchange for growth in each area where a person chooses to engage.
|
||||||
|
|
||||||
|
**Glaicon:** Something very interesting is that humanity---the first human communities, the first peoples---already directed themselves toward copying bees. If you go to Sumeria, back to Egypt, you'll discover that bees are present in all ancient peoples. This is scientifically proven. Communities were formed because they had a king, guards, foragers---all copying a bee hive. This is a structure humanity has been trying to copy from bees. It's very important today that we emphasize this magical bee creation, this bee's influence on human life---not just for the entire planet, but especially on human life and organization.
|
||||||
|
|
||||||
|
**Manoel:** It's also important to highlight that this group enables us to better know the bees. Sometimes we're valuing only the bee, concerned with environmental and preservation issues, but we need to explore each bee type's potential. We learn about the diverse types of honey they provide, diverse types of propolis. Friend Dionísio, for example, just taught me that yellow *Mandaguari* propolis is wonderful propolis. Could you explore *Samburá* a bit for us, please?
|
||||||
|
|
||||||
|
**Dionísio:** *Samburá,* which few people know about, is pollen produced by stingless bees. It's a food classified today as one of the world's best, so much so that it's the food source for future bees. This *Samburá* is nothing more than pollen enzymatically processed by bees and deposited in pots within colonies. Besides this, we also have honey and propolis extract---all wonderful foods that humans should consume periodically. None of this knowledge would be possible if we didn't have a tool like our group to transmit this knowledge to each other. It's no use researching this and keeping it within a university, in books, if it's not disseminated to the population, to creators who often have little information and limited access to books and universities. This is the great importance of having a tool like this group, plus we make excellent friends.
|
||||||
|
|
||||||
|
**Glaicon:** Yes, the group is focused with direction as Dionísio just mentioned---honey, an energetic food that bees produce through sucrose, and stingless bees through fructose. Then we have pollen, which is the male gamete of all vegetation in our biomes. It's the most relevant protein source in nutrition, not only human but animal. We also have propolis, which is extracted with antifungal, antibacterial, antibiotic enzymes that when consumed by humans, help us elevate our physical condition and significantly increase our immunity. The group is ready and able to do work not only in environmental preservation, but as Manoel said, we learn a lot from our União group, studying meliponiculture and bees.
|
||||||
|
|
||||||
|
**Manoel:** And their products too.
|
||||||
|
|
||||||
|
*You mentioned there was evolution---it began with individual leadership, then moved to collective leadership. How did these community rules and protocols evolve? What were the inspirational models and lessons learned?*
|
||||||
|
|
||||||
|
**Glaicon:** Actually, it's nothing more than our own learning from studying meliponiculture. What was created was cutting out everything that doesn't relate to meliponiculture. As things appeared, we created a protocol to maintain our focus on what represents the entire group's profile. That's how rules emerged, because we didn't know various types of problems that could arise. When they came, we created the protocol---the need to direct everyone toward healthy meliponiculture.
|
||||||
|
|
||||||
|
**Manoel:** These protocols are important because there are many beginner, adventurous people who want to enter meliponiculture but sometimes don't understand there are rules. For example, box types. We talk a lot about rational use, rational creation. What is this? You have a box for each bee type, with adequate dimensions, and adequate dimensions for each hive size. Sometimes people don't know and put a tiny bee in a very large box. It goes well, but come winter, during the rainy period, it will weaken and that hive will die. We must guide people to follow these rules to ensure meliponiculture continues progressing as it is.
|
||||||
|
|
||||||
|
**Glaicon:** What Manoel is saying is very interesting because each bee type has a specific management approach. Bees come in various sizes with different characteristics from the Apidae group. The Apidae group develops in two different segments: trigonines and meliponines. Trigonines divide by royal cells, and meliponines by cells. Understanding this bee subdivision and each specimen's pollination capacity, how they live, how they need to be treated so we can achieve comfortable meliponaries---these are fundamental ideas we share in our group for responsible, focused meliponiculture.
|
||||||
|
|
||||||
|
*What other examples of rules govern the group, for instance, regarding commercial use and informal exchanges?*
|
||||||
|
|
||||||
|
**Dionísio:** These rules are well-defined. In our main group, commercialization or advertising of products or anything commercial is not permitted. It's exclusively for information exchange and clarifying doubts. Commerce is prohibited in this group.
|
||||||
|
|
||||||
|
*How do you attract new members and participants? How do you search for new meliponiculturists?*
|
||||||
|
|
||||||
|
**Glaicon:** We believe our group would be and is much stronger when it has concentrated, focused people. Having large numbers of participants can sometimes take us off our trajectory. When we receive a request from an administrator to add a new member, we first call them privately and ask where they are in meliponiculture, what their perspective is. We study the person. If administrators think they're suitable for the group, we admit a new participant.
|
||||||
|
|
||||||
|
*What are your expectations for improving and evolving this protocol, knowledge transmission, and group interactions? What lessons have you extracted from this process that you plan to improve over time?*
|
||||||
|
|
||||||
|
**Glaicon:** Each person teaches us the way. Daily work, management, and knowledge create new situations where the group finds itself in a better place each day, with more knowledge.
|
||||||
|
|
||||||
|
**Manoel:** Correct, because this is very dynamic---we can't leave fixed rules. These protocols can mature according to group dynamics, with new people entering and the needs of each moment. The world is in transition, so we can't stand still. We must edit rules daily for each situation.
|
||||||
|
|
||||||
|
**Glaicon:** That's a beautiful statement, because if we observe, when we started the group, many management practices were very common that we don't use today because they've been modified. We have to change rules to accompany this.
|
||||||
|
|
||||||
|
*How did these modifications happen through these exchanges?*
|
||||||
|
|
||||||
|
**Glaicon:** Exactly as I said---observing each other, establishing management rules, knowledge, observations. I recently went to Bahia and saw a tree there. I had the opportunity and was dazzled by such grandeur, such beautiful things. I observed the flower clusters of this tree, a schefflera, loaded with pollinators---wasps, butterflies, bees. I couldn't miss the opportunity to share this new discovery throughout Brazil---this find in Abrolhos, on the Bahian continent, 70 kilometers away. This is how we form and strengthen ourselves, and the protocol always receives new directions and forms, creating a strong group. Grupo União today is a strong group.
|
||||||
|
|
||||||
|
**Manoel:** We need protocols not to be unpleasant or authoritarian, but because more people are participating---people need to know the rules to continue preserving group harmony.
|
||||||
|
|
||||||
|
**Dionísio:** Exactly. To maintain focus on what really matters to the group.
|
||||||
|
|
||||||
|
*Is environmental education focused exclusively on bees?*
|
||||||
|
|
||||||
|
**Glaicon:** No. Bees are inserted in an environment where everything is connected. For example, reforestation. Bees are very responsible because by pollinating, they don't let any type of native forest in any biome go extinct. It's fundamental to know that bees aren't only directed toward producing honey, but maintaining native biomes strong, healthy, and natural. Consequently, our springs will be suitable, flowing water, because where there's native forest, there are springs. Bees are somehow connected to springs, mangroves, seas, lakes, lagoons, dams, rivers---our entire water chain. Most interestingly, the union of this reforestation with protection of our water sources results in purer, better air and a healthy planet. This is the meliponiculturist's greatest objective---maintaining all this influence that bees give us and that keeps us alive.
|
||||||
|
|
||||||
|
**Dionísio:** It's interesting to note that because we know bees, we need to know much about what they feed on. Starting from this premise, the biggest discussion in groups I've observed lately, and it's always been this way, is the type of vegetation they visit, the type of flower they like, the type of tree, the type of resin they need. We end up discussing this a lot. Naturally, everyone will want to have near them the type of vegetation, flower, tree, plant. So we are vegetation multipliers.
|
||||||
|
|
||||||
|
**Glaicon:** Exactly. We are reforesters, just like bees. We must always think that before a bee, you must have a tree, a plant that produces food for these bees. Consequently, a producer of food for our table, for all world inhabitants. A concept our group in Juiz de Fora talks about, which I find beautiful and old: "Bee doesn't do harm, bee makes honey."
|
||||||
|
|
||||||
|
*Could you give an example?*
|
||||||
|
|
||||||
|
**Manoel:** Following this line of reasoning, I could mention that I have a farm in Leopoldina, in Piacatuba, and we're always concerned with plants that will improve bee nutrition. We're very concerned there with increasing basil, basil plantations, coffee vine, clove vine, and various other trees and plants that will support these bees' nutrition.
|
||||||
|
|
||||||
|
**Glaicon:** What Manoel is saying is so interesting---some trees are very relevant compared to others regarding melliferous pastures. For example, *pitanga*. Our meliponine bees are ready to fly up to 120 meters high, so they don't forage far. There are smaller bees, but when it comes to low trees that have great relevance in food supply---pollen and nectar---bees don't waste time. Among these we have *pitanga* and *jabuticaba*. As Manoel just explained, this is how we try to facilitate, besides feeding and bringing healthy fruit to our tables, feeding our hives. We need great plant variety, so we can't have monoculture---we need diverse plant types to serve diverse bee types, according to region and time of year. Some flowers are very abundant but have very small flowering cycles.
|
||||||
|
|
||||||
|
This is very interesting because we have a time when flowers bloom abundantly---spring, as everyone knows. So hives will experience great food discomfort in autumn and winter. Therefore, we stay alert and seek to improve our melliferous pastures so that during this off-season for bee feeding, we're involving trees in our biomes that will feed not only bees but mammals, reptiles, birds, etc., because it's a food chain.
|
||||||
|
|
||||||
|
**Manoel:** Just one observation---notice that all the plants mentioned here, besides producing food, some spices, other fruits, are also medicinal herbs that serve to treat health. And here comes production. In the same plant, you have three or four food sources. You have pollen, nectar, resin, and leaves that often serve as spices and other things.
|
||||||
|
|
||||||
|
**Dionísio:** I think it's also good to highlight that ornamental plants don't produce food for any type of pollinator. They're not angiosperms. So when we're inserting ornamental plants in our gardens, we're not collaborating with melliferous pastures. Many people don't know this information.
|
||||||
|
|
||||||
|
*Besides exchanges made in the group through the internet, which connect people from across the country, what other channels are used to propagate this information?*
|
||||||
|
|
||||||
|
**Glaicon:** I'm a small meliponiculturist. I've taken on the condition of meliponiculture, but I recognize I have a very small public reach. Sometimes, for example, I know I'm in relevant groups in Peru. They love my posts and ask me to post more. I see that we're somehow being facilitators in Peru, Argentina, here in South America. There are other countries where some of our colleagues are more present. But I see our work as a whole today, with my friends, as great progress, because some years ago, people killed bees. Today, there's understanding because our work is showing results. Dionísio, for example, Dr. Dionísio, has a completely different professional segment. Today, within his professional condition, he's clearly promoting and teaching meliponiculture and environmental preservation. This is very nice---bees are going into law, health, entertainment, various different fields, always bringing life, health, well-being.
|
||||||
|
|
||||||
|
**Dionísio:** And complementing, another way we disseminate this is through congresses and meetings we organize. Now, for example, we're organizing the monthly meeting of meliponiculturists in Juiz de Fora. This word-of-mouth is still fundamental for knowledge dissemination. It attracts many new meliponiculturists, many new people, many curious people who today or tomorrow will be great meliponiculturists, great guardians of bee propagation and environmental conservation.
|
||||||
|
|
||||||
|
**Manoel:** I'd add that as a form of knowledge dissemination, we're always invited to public events. We go to schools, squares, where there are larger crowds. We can explain and demonstrate what stingless bees are and the benefits they bring.
|
||||||
|
|
||||||
|
**Glaicon:** I work in two municipal schools as a volunteer. I work with science teachers because state schools have an educational program where science teachers must execute field classes. This isn't possible today due to lack of training. So what has been my work in these schools with students from first to ninth grade? I work with their teachers teaching this biological and morphological part of bees. They complete the educational cycle that is the field science class that the State needs today, requests, but isn't being done. It's a very nice legal project. There's also demand for bee presentations at agricultural exhibitions, agribusiness events. You yourself participated and collaborated with our rich region here, Leopoldina, where Manoel went and did exhibition work with bees and honey. It was very interesting and very nice work.
|
||||||
|
|
||||||
|
*What is your vision for the group's future?*
|
||||||
|
|
||||||
|
**Glaicon:** I have an optimistic vision. I'm a person who always thinks we can be better, so I didn't create this group just for it to end one day. I created it so it could take flight and reach horizons, reach as many people as possible, and the result would be at minimum the satisfaction of living with health, with freedom for our children, grandchildren, all inhabitants, our descendants who come forward, to have a better world, a healthier world, something really nice. I don't want our group to end. To fix this information, I'd cite the case of our friend PPP, who must be 93 years old, working with stingless bees for 40, 50 years. If you asked him 50 years ago, today you'd have the answer that his own self-motivation and enchantment with bees kept him going. Even he is a reference for us. I think the group's future objective is that we don't pass through here leaving only peace. We must make our contribution to improving the world, the planet, and the population in general. The group becomes so strong that when my friends call me privately or say something in the group, I stay quiet because I want to listen---it seems like I'm going to learn something more. So our desire is always to continue, improve. This is very nice and true. The meliponiculturist has a mission in my view---the mission of not letting some pollinators, these wonderful insects, go extinct. Isn't that right, Manoel? This bee here is a capixaba bee from Espírito Santo that is extremely endangered, on the first extinction list.
|
||||||
|
|
||||||
|
**Dionísio:** Does it only exist in Espírito Santo?
|
||||||
|
|
||||||
|
**Glaicon:** Only in Espírito Santo. It's not known as *Capixaba* anywhere else---that's why it's called *Uruçu Capixaba*. What's interesting is highlighting what led this bee to extinction. The invasion of mangroves, mountains, monoculture, condominiums, deforestation, industry---industry caused this bee to become extinct. Today, we have this bee in the south of the country, in the mountains of Petrópolis and Teresópolis, because this bee only survives 700 meters above sea level. Certainly, Paulo Nogueira Neto wasn't wrong. If Espírito Santo today needs pure *Capixaba*, we can send them some. Because the meliponiculturist had the responsibility to treat this pollinator with love to prevent extinction. So we're going to see this *Capixaba Uruçu* hive now.
|
||||||
|
|
||||||
|
**Dionísio:** The yellow *Uruçu* is a bee that is truly endangered and continues to be endangered. We no longer find it in nature.
|
||||||
|
|
||||||
|
**Glaicon:** Exactly. It builds its nests, every 3 kilometers on average. It flies 4. Today we have only 200 hives. I believe that registered in the last 3 years, I multiplied about 4 thousand specimens that were sent to other meliponaries that today have 300, 200 hives. So it's a bee that is far from extinction but still endangered because it's not present in Atlantic forests.
|
||||||
|
|
||||||
|
**Dionísio:** And remembering that this bee is from our Atlantic forest.
|
||||||
|
|
||||||
|
**Glaicon:** Yes. Can't forget to highlight. The yellow *Uruçu* bee divides into 11 types of yellow uruçu. The one from our Atlantic forest is the mondore, which is the bugia---that's the popular name. So we're going to open the box here for people to see.
|
||||||
|
|
||||||
|
**Dionísio:** This bee looks like gold, doesn't it?
|
||||||
|
|
||||||
|
**Glaicon:** It looks like gold. Look how beautiful. It has the color of the Atlantic forest howler monkey, so it has the popular name *Bugia* bee. Taking advantage of this connection, these here are the resins, right?
|
||||||
|
|
||||||
|
**Dionísio:** These are geopropolis used to make propolis extract.
|
||||||
|
|
||||||
|
**Glaicon:** Exactly. Which protects the hive from fungi, bacteria.
|
||||||
|
|
||||||
|
**Dionísio:** Yes. And we talked so much about *samburá* and honey---the honey of stingless bees is stored in these pots, called *samburá*. Here there are pots with samburá and pots with honey, and extraction is totally different from traditional apiculture.
|
@@ -5,20 +5,18 @@ facilitator: Nathan Schneider
|
|||||||
date: 2024-11-04
|
date: 2024-11-04
|
||||||
approved: 2024-12-02
|
approved: 2024-12-02
|
||||||
summary: "As a sport often played with no referees, ultimate frisbee has developed a strong set of norms for addressing conflict and self-governing."
|
summary: "As a sport often played with no referees, ultimate frisbee has developed a strong set of norms for addressing conflict and self-governing."
|
||||||
tags: [frisbee, sports, organizations, dispute resolution]
|
location: "East Greenbush, NY USA"
|
||||||
|
headshot: "michael_zargham.png"
|
||||||
|
topics: [mediation, sports, organizations]
|
||||||
---
|
---
|
||||||
|
|
||||||
{{< i >}}
|
*How do you like to introduce yourself to people as you encounter them in the world?*
|
||||||
How do you like to introduce yourself to people as you encounter them in the world?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
I tend to introduce myself differently depending on who I'm meeting. I've lived many lives, and if we're talking about ultimate frisbee today---while it's not my primary activity now since I'm retired---I would probably talk about the teams I played for and the school I played at.
|
I tend to introduce myself differently depending on who I'm meeting. I've lived many lives, and if we're talking about ultimate frisbee today---while it's not my primary activity now since I'm retired---I would probably talk about the teams I played for and the school I played at.
|
||||||
|
|
||||||
For the purpose of our conversation today, I'm Michael Zargham, a researcher and engineer, and a retired competitive ultimate frisbee player. I'm going to focus on my experiences in the ultimate frisbee communities, ranging from work on a nonprofit that operated leagues and youth outreach programs to helping found and run teams and organize tournaments. These experiences span the various practices and processes that made up the ultimate frisbee community broadly, ranging from experiences in the US to playing pickup in various countries.
|
For the purpose of our conversation today, I'm Michael Zargham, a researcher and engineer, and a retired competitive ultimate frisbee player. I'm going to focus on my experiences in the ultimate frisbee communities, ranging from work on a nonprofit that operated leagues and youth outreach programs to helping found and run teams and organize tournaments. These experiences span the various practices and processes that made up the ultimate frisbee community broadly, ranging from experiences in the US to playing pickup in various countries.
|
||||||
|
|
||||||
{{< i >}}
|
*How would you outline the trajectory of your life and career in ultimate frisbee?*
|
||||||
How would you outline the trajectory of your life and career in ultimate frisbee?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
When I was in high school, I played lacrosse. Lacrosse players were jerks, or at least they were jerks to me, and while I still wanted to play sports, I didn't have an overwhelmingly good experience with the social dimension of lacrosse as a sport. When I got to Dartmouth, they were out on the green throwing during orientation week, and there was a bunch of frisbee players who had led freshman trips. They were recruiting like crazy, saying "Oh, we have this great sport!" All these new people were showing up, and they were actively being friendly---like, "Oh, you want to learn how to throw a flick? Here, let me show you." All of this time and attention was spent on new folks, just showing them the ropes. They were playing pickup out on the green and hanging out with people, making it feel really welcoming. I thought, "Wow, these people are nice and they play sports. Maybe I should try this sport."
|
When I was in high school, I played lacrosse. Lacrosse players were jerks, or at least they were jerks to me, and while I still wanted to play sports, I didn't have an overwhelmingly good experience with the social dimension of lacrosse as a sport. When I got to Dartmouth, they were out on the green throwing during orientation week, and there was a bunch of frisbee players who had led freshman trips. They were recruiting like crazy, saying "Oh, we have this great sport!" All these new people were showing up, and they were actively being friendly---like, "Oh, you want to learn how to throw a flick? Here, let me show you." All of this time and attention was spent on new folks, just showing them the ropes. They were playing pickup out on the green and hanging out with people, making it feel really welcoming. I thought, "Wow, these people are nice and they play sports. Maybe I should try this sport."
|
||||||
|
|
||||||
@@ -34,9 +32,7 @@ What I did pick up from the competitive players who were teaching me to throw wa
|
|||||||
|
|
||||||
The precondition for all of this was a lot of welcomingness, including people investing time, effort and attention into developing my skills, when they might have just as easily dismissed me because of my size. That was the entry point. The very idea that I could be a competitive ultimate frisbee player and play for clubs with cuts and travel schedules, both at the college level and at the adult non-college level, was probably not something anybody was thinking when I showed up on the green as this former lacrosse player who just wanted some friends.
|
The precondition for all of this was a lot of welcomingness, including people investing time, effort and attention into developing my skills, when they might have just as easily dismissed me because of my size. That was the entry point. The very idea that I could be a competitive ultimate frisbee player and play for clubs with cuts and travel schedules, both at the college level and at the adult non-college level, was probably not something anybody was thinking when I showed up on the green as this former lacrosse player who just wanted some friends.
|
||||||
|
|
||||||
{{< i >}}
|
*Before we get into the organizational side and your role in that side of the sport, I wonder if you could say a bit about the niceness you encountered and its relationship to the way that this sport operates. I played for a year or two in high school, and the thing that really stuck out to me was that there were no referees. It was a sport that, as I understand it even at the highest levels, is built on cultivating a set of practices and cultures around not requiring third-party intervention to resolve disputes. Did that have something to do with the culture you encountered?*
|
||||||
Before we get into the organizational side and your role in that side of the sport, I wonder if you could say a bit about the niceness you encountered and its relationship to the way that this sport operates. I played for a year or two in high school, and the thing that really stuck out to me was that there were no referees. It was a sport that, as I understand it even at the highest levels, is built on cultivating a set of practices and cultures around not requiring third-party intervention to resolve disputes. Did that have something to do with the culture you encountered?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
I think so. As a quick caveat, there are a couple dimensions we might want to come back to when we talk about some of my other experiences. But at base level, it's totally self-officiated with some specific competition regimes having augmentations. At the social level of pickup, or college competitive and club competitive (with some exceptions we'll discuss later, regarding observers), you can basically call a foul or infraction whenever you want. This means that when you're first learning, especially really competitive people tend to overdo it. They can get antsy and start making lots of calls.
|
I think so. As a quick caveat, there are a couple dimensions we might want to come back to when we talk about some of my other experiences. But at base level, it's totally self-officiated with some specific competition regimes having augmentations. At the social level of pickup, or college competitive and club competitive (with some exceptions we'll discuss later, regarding observers), you can basically call a foul or infraction whenever you want. This means that when you're first learning, especially really competitive people tend to overdo it. They can get antsy and start making lots of calls.
|
||||||
|
|
||||||
@@ -50,15 +46,11 @@ There's a strong cultural component, but I want to be careful to note that it va
|
|||||||
|
|
||||||
At the college level, you're talking about hard-charging overachieving competitive people---people who got into an Ivy League University and then wanted to compete in this club sport too. When I arrived, the team had been at Nationals the year before. So it wasn't just about being nice---understanding and applying these principles of self-officiation were tantamount to success. If you couldn't do it, you couldn't play the sport.
|
At the college level, you're talking about hard-charging overachieving competitive people---people who got into an Ivy League University and then wanted to compete in this club sport too. When I arrived, the team had been at Nationals the year before. So it wasn't just about being nice---understanding and applying these principles of self-officiation were tantamount to success. If you couldn't do it, you couldn't play the sport.
|
||||||
|
|
||||||
{{< i >}}
|
*How did that kind of practice and culture and norms translate into the organizational structure? Were there respects in which the practices on the field were reflected in how the organizations you worked with were set up?*
|
||||||
How did that kind of practice and culture and norms translate into the organizational structure? Were there respects in which the practices on the field were reflected in how the organizations you worked with were set up?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
The college team was a club---it did not have a coach, though we'd had volunteer coaches in the past.
|
The college team was a club---it did not have a coach, though we'd had volunteer coaches in the past.
|
||||||
|
|
||||||
{{< i >}}
|
*And was that by choice? Was that a sense like "we don't have referees, and we don't have coaches"?*
|
||||||
And was that by choice? Was that a sense like "we don't have referees, and we don't have coaches"?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
It was a little different. I'll talk more about coaches later since I coached for a couple of years. But at the time, it was more that there wasn't an authority figure. Even in years where the college team had a graduated player staying on to help coach, they were effectively in a support role, not an authority. You delegated certain kinds of strategic decision-making and education functions to them, and they were welcome insofar as they fulfilled those functions. It wasn't a paid role---club sports have relatively low budgets so they wouldn't really have been able to spring for a paid coach anyway.
|
It was a little different. I'll talk more about coaches later since I coached for a couple of years. But at the time, it was more that there wasn't an authority figure. Even in years where the college team had a graduated player staying on to help coach, they were effectively in a support role, not an authority. You delegated certain kinds of strategic decision-making and education functions to them, and they were welcome insofar as they fulfilled those functions. It wasn't a paid role---club sports have relatively low budgets so they wouldn't really have been able to spring for a paid coach anyway.
|
||||||
|
|
||||||
@@ -68,9 +60,7 @@ A lot of it was entrenched---we had everything from cheers to organizational pat
|
|||||||
|
|
||||||
Captains generally called lines and picked teams. There were important annual rituals like tryouts and off-season training regimes, and certain tournaments were the main deciding points for who was going to try out and make the roster. There were boundaries---it wasn't just showing up to play. There was a fixed number of roster slots, someone had to decide who would get those slots, there were interviews, there were debriefs. There was quite a lot of institutional infrastructure, but it was administered by the students for the students, everything from selecting teams to coordinating travel logistics to organizing tournaments.
|
Captains generally called lines and picked teams. There were important annual rituals like tryouts and off-season training regimes, and certain tournaments were the main deciding points for who was going to try out and make the roster. There were boundaries---it wasn't just showing up to play. There was a fixed number of roster slots, someone had to decide who would get those slots, there were interviews, there were debriefs. There was quite a lot of institutional infrastructure, but it was administered by the students for the students, everything from selecting teams to coordinating travel logistics to organizing tournaments.
|
||||||
|
|
||||||
{{< i >}}
|
*How did you get into league-level organization?*
|
||||||
How did you get into league-level organization?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
I moved to Philadelphia. The story goes: I finished at Dartmouth in 2008. I got two degrees, so I was there for five years, which allowed me to play out my full competitive college allotment. The college infrastructure is run by the USAU, and you're allowed five years of competitive play. I used all of my college-level eligibility at Dartmouth.
|
I moved to Philadelphia. The story goes: I finished at Dartmouth in 2008. I got two degrees, so I was there for five years, which allowed me to play out my full competitive college allotment. The college infrastructure is run by the USAU, and you're allowed five years of competitive play. I used all of my college-level eligibility at Dartmouth.
|
||||||
|
|
||||||
@@ -96,9 +86,7 @@ I don't remember exactly how I got sucked in deeper. I know how I got on the boa
|
|||||||
|
|
||||||
That led me all the way to being on the board and actually being president of the board---just following up the "keep asking me to do stuff" path. The board is elected, not appointed. I didn't actually want to run for the board---a bunch of people put me up to it, and I said, "Oh fine, there's no way they're going to elect me." And they did. So long story short, I fell up through levels of engagement in that community just by showing up and being willing, then delivering on the stuff I agreed to do.
|
That led me all the way to being on the board and actually being president of the board---just following up the "keep asking me to do stuff" path. The board is elected, not appointed. I didn't actually want to run for the board---a bunch of people put me up to it, and I said, "Oh fine, there's no way they're going to elect me." And they did. So long story short, I fell up through levels of engagement in that community just by showing up and being willing, then delivering on the stuff I agreed to do.
|
||||||
|
|
||||||
{{< i >}}
|
*How does leading this organization work? How does it compare to other organizations you've been in? You've also founded a company and served on other boards. What were some of the peculiarities of governance in the context of ultimate frisbee?*
|
||||||
How does leading this organization work? How does it compare to other organizations you've been in? You've also founded a company and served on other boards. What were some of the peculiarities of governance in the context of ultimate frisbee?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
At the time I thought it was an utter mess. It was my first experience in formal accountability. I was president of the PADA board in my first term, also not something I wanted. I think I was put there partly to help deal with a situation which I won't go too far into, but it involved people overstating their expertise and authority. This is an environment where you've got artists and teachers and engineers and lawyers and doctors all mixed together, and board composition can be pretty different at any given time. There was a lawyer in a relatively senior position that many people felt no one could argue with effectively. I'm pretty sure I ended up on the board to argue with this guy---that was apparently why the community elected me, for my ability to argue.
|
At the time I thought it was an utter mess. It was my first experience in formal accountability. I was president of the PADA board in my first term, also not something I wanted. I think I was put there partly to help deal with a situation which I won't go too far into, but it involved people overstating their expertise and authority. This is an environment where you've got artists and teachers and engineers and lawyers and doctors all mixed together, and board composition can be pretty different at any given time. There was a lawyer in a relatively senior position that many people felt no one could argue with effectively. I'm pretty sure I ended up on the board to argue with this guy---that was apparently why the community elected me, for my ability to argue.
|
||||||
|
|
||||||
@@ -112,9 +100,7 @@ That was a strange, bespoke artifact---suddenly being told, "Oh, you're on this
|
|||||||
|
|
||||||
But in terms of the social stuff, it was almost entirely mediating dispute resolution and presiding over board meetings. The org had a lot of inertia, and challenges arose more when things wanted to change than from maintaining existing operations.
|
But in terms of the social stuff, it was almost entirely mediating dispute resolution and presiding over board meetings. The org had a lot of inertia, and challenges arose more when things wanted to change than from maintaining existing operations.
|
||||||
|
|
||||||
{{< i >}}
|
*At the time you were studying engineering and developing a career as an engineer. How did these two modes of thinking intersect? How did engineering overlap in your mind, and maybe in others' minds, with the nature of the sport and the organizations around it?*
|
||||||
At the time you were studying engineering and developing a career as an engineer. How did these two modes of thinking intersect? How did engineering overlap in your mind, and maybe in others' minds, with the nature of the sport and the organizations around it?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
Starting around 2005 or 2006, I was working on flocking coordination, multi-agent consensus problems---basically multi-agent coordination problems in robotics. So literally, the subset of robotics which was entirely about algorithms and rules and protocols for coordinating distributed activities with distinct agents.
|
Starting around 2005 or 2006, I was working on flocking coordination, multi-agent consensus problems---basically multi-agent coordination problems in robotics. So literally, the subset of robotics which was entirely about algorithms and rules and protocols for coordinating distributed activities with distinct agents.
|
||||||
|
|
||||||
@@ -122,9 +108,7 @@ It wasn't a big leap for me. In fact, I almost didn't think about it much becaus
|
|||||||
|
|
||||||
As that was the subject of my engineering work, being involved in founding teams, playing on teams, line calling, team roster selection, as well as figuring out how to get resources set up for leagues---all these roles fit together into a structure that got things done. From my perspective, these were extremely complementary in hindsight, though at the time I didn't think about it at all. I just did both things, and I could do both things. The fact that one was the social dimension and one was the technical dimension---I definitely benefited from that by seeing through both lenses.
|
As that was the subject of my engineering work, being involved in founding teams, playing on teams, line calling, team roster selection, as well as figuring out how to get resources set up for leagues---all these roles fit together into a structure that got things done. From my perspective, these were extremely complementary in hindsight, though at the time I didn't think about it at all. I just did both things, and I could do both things. The fact that one was the social dimension and one was the technical dimension---I definitely benefited from that by seeing through both lenses.
|
||||||
|
|
||||||
{{< i >}}
|
*How long were you actively involved in the sport?*
|
||||||
How long were you actively involved in the sport?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
About 15 years, all told. I started playing ultimate in 2003. I started in Philly in 2009, so 15 years ago, and I think I was on the board from 2012 to 2014. I graduated from my PhD in 2014, so I must have been on the board 2012 through 2014. That sounds right.
|
About 15 years, all told. I started playing ultimate in 2003. I started in Philly in 2009, so 15 years ago, and I think I was on the board from 2012 to 2014. I graduated from my PhD in 2014, so I must have been on the board 2012 through 2014. That sounds right.
|
||||||
|
|
||||||
@@ -140,9 +124,7 @@ That was my last competitive season---2014---and I only made it through to June
|
|||||||
|
|
||||||
That's an important cultural aspect---while the game is obviously being played on the field, coaches are uncommon. They're more common now---in fact, most competitive teams do have coaches, but they're not paid staff for the most part. They're members of the team that come into their roles by invitation. I have a friend up here in Albany who's currently coaching a women's team in New York City, and he had to go through a very rigorous tryout process. He's an extremely talented player who played in the championship game five times---great guy---but he has also been teaching and training. I can't help but emphasize that even though coaches are really common in competitive ultimate now, it's like a roster spot---the team has to pick you. If anything, the captains have more authority than the coaches.
|
That's an important cultural aspect---while the game is obviously being played on the field, coaches are uncommon. They're more common now---in fact, most competitive teams do have coaches, but they're not paid staff for the most part. They're members of the team that come into their roles by invitation. I have a friend up here in Albany who's currently coaching a women's team in New York City, and he had to go through a very rigorous tryout process. He's an extremely talented player who played in the championship game five times---great guy---but he has also been teaching and training. I can't help but emphasize that even though coaches are really common in competitive ultimate now, it's like a roster spot---the team has to pick you. If anything, the captains have more authority than the coaches.
|
||||||
|
|
||||||
{{< i >}}
|
*Are there contexts when you saw the sport confronting what we might think of as capture? That is, attempts to take over the sport, to co-opt some of its norms?*
|
||||||
Are there contexts when you saw the sport confronting what we might think of as capture? That is, attempts to take over the sport, to co-opt some of its norms?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
There was a largely failed corporate takeover, this is good. Philly was actually one of the main sites of the founding of the MLU---Major League Ultimate---which the Philadelphia Spinners won. But let me backtrack first. There was the AUDL---American Ultimate Disc League---which still exists. The AUDL was run very unprofessionally, at least in the first year it was a mess. A bunch of the Philly players played for the Spinners in the inaugural season of the AUDL.
|
There was a largely failed corporate takeover, this is good. Philly was actually one of the main sites of the founding of the MLU---Major League Ultimate---which the Philadelphia Spinners won. But let me backtrack first. There was the AUDL---American Ultimate Disc League---which still exists. The AUDL was run very unprofessionally, at least in the first year it was a mess. A bunch of the Philly players played for the Spinners in the inaugural season of the AUDL.
|
||||||
|
|
||||||
@@ -156,9 +138,7 @@ The semi-pro leagues rolled in competing with the clubs for talent, but the club
|
|||||||
|
|
||||||
It's a little bit painful to reminisce about it with the whole knee injury thing. But there was this attempt, this belief that capitalization of the sport could work because it has huge reach, so many players, so much enthusiasm and love. These leagues spawned up, but my impression was that they just couldn't win the hearts and minds of the people who are the backbone of the ultimate frisbee community.
|
It's a little bit painful to reminisce about it with the whole knee injury thing. But there was this attempt, this belief that capitalization of the sport could work because it has huge reach, so many players, so much enthusiasm and love. These leagues spawned up, but my impression was that they just couldn't win the hearts and minds of the people who are the backbone of the ultimate frisbee community.
|
||||||
|
|
||||||
{{< i >}}
|
*It's fascinating that the semi-pro is regarded as under the club. What do you think contributed to that resiliency against an attempted takeover?*
|
||||||
It's fascinating that the semi-pro is regarded as under the club. What do you think contributed to that resiliency against an attempted takeover?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
I think it could have gone either way. On one hand, I think the capitalist mentality just couldn't see what everyone loved about it. They inadvertently squashed things and didn't focus on things that were part of the real value. If they had been even a little more aware---not that you would expect them to have been---but if they had been a little more aware of the intangible forms of value that were created and stewarded within these communities, they could have made more space for them and possibly had more success.
|
I think it could have gone either way. On one hand, I think the capitalist mentality just couldn't see what everyone loved about it. They inadvertently squashed things and didn't focus on things that were part of the real value. If they had been even a little more aware---not that you would expect them to have been---but if they had been a little more aware of the intangible forms of value that were created and stewarded within these communities, they could have made more space for them and possibly had more success.
|
||||||
|
|
||||||
@@ -176,9 +156,7 @@ Actually, my COO at BlockScience---he joined later, he's not technically a co-fo
|
|||||||
|
|
||||||
Just as a point of reference, much of BlockScience's coordination infrastructure---our ops---is people who were part of that same scene. That means a lot of the norms we've been talking about got transferred across contexts. When ops are breaking down or inefficient, the running inside joke is basically like, "Man, we're worse than frisbee teams at logistics or operations." And that's because AMP's logistics and operations were so tight, entirely on a volunteer basis, that there's so much commonality in the community that you can just say, "We're worse than a frisbee team!"
|
Just as a point of reference, much of BlockScience's coordination infrastructure---our ops---is people who were part of that same scene. That means a lot of the norms we've been talking about got transferred across contexts. When ops are breaking down or inefficient, the running inside joke is basically like, "Man, we're worse than frisbee teams at logistics or operations." And that's because AMP's logistics and operations were so tight, entirely on a volunteer basis, that there's so much commonality in the community that you can just say, "We're worse than a frisbee team!"
|
||||||
|
|
||||||
{{< i >}}
|
*When you were involved at the organizational level, did you run into challenges around your relationship with those norms and that culture? Did you have experiences where you ran the risk of doing harm to the sport's culture in trying to bureaucratize or systematize?*
|
||||||
When you were involved at the organizational level, did you run into challenges around your relationship with those norms and that culture? Did you have experiences where you ran the risk of doing harm to the sport's culture in trying to bureaucratize or systematize?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
That's a good question. I'm going to say I did not have that problem. I think some people did. This goes back to my answer before---the fact that as an engineer I'm focused on multi-agent systems meant that I had a much higher expectation of distributed locus of decision-making and heterogeneity than most people who would come in and systematize things. So I actually didn't systematize much frisbee stuff. When I did, it was out of necessity and in a minimalist frame.
|
That's a good question. I'm going to say I did not have that problem. I think some people did. This goes back to my answer before---the fact that as an engineer I'm focused on multi-agent systems meant that I had a much higher expectation of distributed locus of decision-making and heterogeneity than most people who would come in and systematize things. So I actually didn't systematize much frisbee stuff. When I did, it was out of necessity and in a minimalist frame.
|
||||||
|
|
||||||
@@ -198,9 +176,7 @@ Otherwise, the way self-officiation could escalate is you could do the normal wo
|
|||||||
|
|
||||||
There are observer training programs which are also self-organized. You built in this extra backstop, and I view it as more in common with what I was saying before---you've got the rules, you've got the norms, and then inevitably you have the natural evolution of problems that need to be de-escalated or mediated. The observer is in some ways like a mediator on standby, which is helpful as you get to these increasingly competitive levels where people have been training for nine months and they're at the semifinals of nationals. Just knowing the observers are there helps, but I think they did a good job not usurping the authority of self-officiation. This ties back to the pros where they were like, "No, we're going to do refs," and it changed everything. The observers were essentially the equivalent of seeing the problem and solving it with an ultimate native solution, instead of seeing the problem and trying to paste on something from another culture.
|
There are observer training programs which are also self-organized. You built in this extra backstop, and I view it as more in common with what I was saying before---you've got the rules, you've got the norms, and then inevitably you have the natural evolution of problems that need to be de-escalated or mediated. The observer is in some ways like a mediator on standby, which is helpful as you get to these increasingly competitive levels where people have been training for nine months and they're at the semifinals of nationals. Just knowing the observers are there helps, but I think they did a good job not usurping the authority of self-officiation. This ties back to the pros where they were like, "No, we're going to do refs," and it changed everything. The observers were essentially the equivalent of seeing the problem and solving it with an ultimate native solution, instead of seeing the problem and trying to paste on something from another culture.
|
||||||
|
|
||||||
{{< i >}}
|
*Finally, what lessons do you think ultimate frisbee has to offer the world? What do these protocols teach us that could be applicable in other domains?*
|
||||||
Finally, what lessons do you think ultimate frisbee has to offer the world? What do these protocols teach us that could be applicable in other domains?
|
|
||||||
{{< /i >}}
|
|
||||||
|
|
||||||
At a basic level, sports in general can teach us a lot about how to work together and achieve collective outcomes. Given what I said about not enjoying lacrosse and then going to ultimate, obviously ultimate does that in a way that I found more culturally palatable.
|
At a basic level, sports in general can teach us a lot about how to work together and achieve collective outcomes. Given what I said about not enjoying lacrosse and then going to ultimate, obviously ultimate does that in a way that I found more culturally palatable.
|
||||||
|
|
264
content/interviews/zayner-biohacking.md
Normal file
264
content/interviews/zayner-biohacking.md
Normal file
@@ -0,0 +1,264 @@
|
|||||||
|
---
|
||||||
|
narrator: Josette Adeline Zayner
|
||||||
|
subject: Biohacking
|
||||||
|
facilitator: Nathan Schneider
|
||||||
|
date: 2025-07-30
|
||||||
|
approved: 2025-07-30
|
||||||
|
summary: "How hacking computers led to hacking biological systems, including her own body."
|
||||||
|
location: "Austin, TX"
|
||||||
|
headshot: "josette_zayner.jpg"
|
||||||
|
topics: [art, gender, health, science, software]
|
||||||
|
links:
|
||||||
|
- text: "Biohack the Planet newsletter"
|
||||||
|
url: "https://amateurgods.substack.com/"
|
||||||
|
- text: "The Embryo Corporation"
|
||||||
|
url: "https://building.life/"
|
||||||
|
---
|
||||||
|
|
||||||
|
*How do you like to introduce yourself?*
|
||||||
|
|
||||||
|
Oh, I hate when people---my name is Josie Zayner. I have a PhD from the University of Chicago in biophysics, and I'm CEO of two biotech companies simultaneously. I know. Long story.
|
||||||
|
|
||||||
|
*Let's get into that story. How would you outline the trajectory of your life and career? Where did you start?*
|
||||||
|
|
||||||
|
I grew up on a tiny farm in Indiana. It wasn't really a farm---I think we just called it a farm because we were so poor and wanted to pretend life was better than it was. We had chickens that we collected eggs from, some goats, dogs. I grew up in rural America in pretty bad poverty.
|
||||||
|
|
||||||
|
This was in the eighties, and we actually drank dehydrated milk. I don't know if most people here even know that's a thing. The people I know who know about dehydrated milk come from some third world country. We were really poor.
|
||||||
|
|
||||||
|
My mom was divorced at a young age from my biological father, who was violent. Not a lot of good things happened there. My early life was probably pretty foundational for who I am today. I have three brothers, raised by a single mother who had to work all the time. We had no money, so you had to learn to be self-sufficient pretty quick and pretty early. If you needed something, you had to figure out how to get it yourself, because you couldn't ask my mom for money or help.
|
||||||
|
|
||||||
|
When I was about eight, nine, or ten, I moved to the Chicago suburbs to live with my grandparents. My grandparents really raised me from then into my teens. I kind of take after my grandma---she taught me how to cook Italian food, and I like to cook Italian food.
|
||||||
|
|
||||||
|
I wasn't good in school at all. I did terribly in high school---almost failed out. It wasn't that I was bad at school, I'm just not good at imposed structure. That's just the way I am to this day. I don't like imposed structure, and it's kind of made me who I am, stemming from needing to take care of myself and needing to decide what's best for me.
|
||||||
|
|
||||||
|
I was arrested twice before the age of eighteen, which is pretty crazy considering where I am today. I don't know many people who are founders and have raised millions of dollars, or have PhDs, who have been arrested, much less twice. Very non-traditional upbringing compared to most people in my social class.
|
||||||
|
|
||||||
|
*When did you finally start to engage? What was the bridge between getting arrested, not doing well in school, and then going to the University of Chicago?*
|
||||||
|
|
||||||
|
It was computers. Do you remember "The Conscience of a Hacker," the hacker manifesto?
|
||||||
|
|
||||||
|
*I teach it in one of my courses.*
|
||||||
|
|
||||||
|
There's this line: "like heroin through an addict's veins." That's how computers were to me. My mom did this job for somebody, and they couldn't afford to pay her, so they gave her an old computer. I experienced being online from my friend who lived across the street, so I was like, "I gotta get my hands on a modem."
|
||||||
|
|
||||||
|
I forget exactly how, but maybe I saved up money because I started working---once I was old enough to work, I was at the grocery store bagging groceries. I bought a modem, and it was just like, "Oh shit, this world is crazy. I love it." Got really into computers, into computer programming. Got a job at Motorola doing computer programming when I was eighteen. I was making more money than my mom, which was wild.
|
||||||
|
|
||||||
|
I was really enthralled with that world. But then, in the early 2000s, the dot-com bubble burst, and Motorola laid off a bunch of people, including me. I was just like, "Is this really what I want to do with my life?" I was working for this giant, corporate company. I remember working on the Nextel cell phone network, and one weekend we were updating subscriber databases. I uploaded the wrong database or something, so maybe a hundred thousand people were without cell phone service for the weekend.
|
||||||
|
|
||||||
|
When that happened, I remember the communication between everybody wasn't about how these people didn't have cell phone service---it was about how much money we lost. I was like, "Is that all I am here? Just a way to make other people more money?" I didn't want to be that. I wanted to work on something bigger.
|
||||||
|
|
||||||
|
I decided to go into biology. The natural world has always fascinated me---it should fascinate everybody because it's so wild, but it really fascinated me. I did an undergrad degree in plant biology. I was always enthralled by the idea of plants starting out as a seed, sucking molecules from the soil, eating CO2 and sunlight, and growing. I was like, "How do you do that? That's crazy. I want to understand how you do that."
|
||||||
|
|
||||||
|
I'm a reductionist. With computers, I wanted to control things on the lowest level---I wanted to program in assembly and move around all the memory, do different stuff so I had complete control. It's kind of the same way with living things.
|
||||||
|
|
||||||
|
*Did that experience with computers leave you approaching biology differently than other people you studied with?*
|
||||||
|
|
||||||
|
I think so. I saw it more as---especially in Western culture, we have this view of life as this sacred thing, and I'm not saying it's not at all true. But I approached it more from the idea that it was like a computer, like an operating system, something to be manipulated and programmed. From when I started biology to when I started my first company, I always approached it with that same hacker mindset. It was like, "How do I hack this stuff?" and not, "How do I write scientific papers about this stuff?"
|
||||||
|
|
||||||
|
*How did you begin learning biology? What kinds of protocols became part of that practice?*
|
||||||
|
|
||||||
|
In undergrad, I was poor enough that the government would pay people at the university to pay me---this work-study program. Basically, find a job and we'll give them money to pay you. So I would go work in labs---scientific labs. All plant biology labs in undergrad.
|
||||||
|
|
||||||
|
That really got me excited about research, because undergrad is just learning, you're not necessarily doing. I wanted more of the doing. Once I started doing research, I was like, "Oh, this shit is fun." You can mess around with things and go crazy---if you have a crazy idea, you could just try it out.
|
||||||
|
|
||||||
|
After my undergrad, I didn't know what I wanted to do with my life, so I applied for some master's degree programs. I had two: one where I went to undergrad, at Southern Illinois University Carbondale, which was like a six-hour train ride from Chicago where my family lived, and Appalachian State in Boone, North Carolina, because they had good rock climbing and I was really into rock climbing. I had a couple of friends who lived out there and ended up going to Appalachian State.
|
||||||
|
|
||||||
|
*How did the organizational life in research labs compare to working for Motorola?*
|
||||||
|
|
||||||
|
I definitely could have more autonomy. I wanted to find somebody who would just let me rip, and that's what I did. I found this person working on understanding the molecular mechanisms of cholera---the bacteria that causes the disease cholera.
|
||||||
|
|
||||||
|
She also got pregnant and gave birth within the first six months I was there, so it was literally just me in the lab. I think there was nobody else. She would stop by once a week to have a meeting with me, but otherwise it was just me doing whatever I wanted. I'm somebody who can get super obsessive. I just dug in and went hard and made a lot of progress, had a lot of success---won all these grants and awards.
|
||||||
|
|
||||||
|
At Appalachian State, it was a small school, so they didn't pay us big stipends---we had no money. I would work all night and then go to the bar right next to campus and drink dollar beers on dollar beer night. Another living situation with no money in some shitty-ass apartment, but I loved it. I absolutely loved it.
|
||||||
|
|
||||||
|
*Were there particular moments where you found yourself able to achieve something or manipulate something in a way that you experienced with computers early on?*
|
||||||
|
|
||||||
|
It was different in that science is this very physical thing. You're using your whole body. Computers is like---typing. It really turned into a form of self-expression to me. I could channel my anger or happiness and express that through my work. Sometimes in labs when experiments would fail, I would throw something across the room. Sometimes when things would succeed, I would scream. It became this art form for me that computers never could be necessarily. They couldn't reach this level because it was all in the digital world. Even when I did some electrical engineering work, building electronics, I felt like it was all in this digital world. Science became more of a real thing for me.
|
||||||
|
|
||||||
|
*How did you move toward the PhD?*
|
||||||
|
|
||||||
|
For my PhD, I wanted to go deeper. I wanted to break it down even further and be really reductionist. I wanted to get into biophysics---to be able to watch these atoms move and manipulate them.
|
||||||
|
|
||||||
|
I applied for biophysics PhD programs all across the US and got accepted to University of Chicago, which was the only school I applied for in Chicago. I went because it was probably the best school I got accepted to, it was near my family. It was one of the greatest moments of my life. Here's some kid who came from shit, and you get a PhD from University of Chicago. Immediately you start to enter---you're no longer lower-class anymore. Even just the stipend they pay you every year as a graduate student is a reasonable amount of money.
|
||||||
|
|
||||||
|
All the people I was around had summer homes and lake houses that we'd go to. I was definitely one of the very few kids who came from poverty. It was one of the moments of my life I'm most proud of---being accepted there.
|
||||||
|
|
||||||
|
When I went there, I knew what I wanted to do. I found the nerdiest, smartest professor who tried to work on things in the most reductionist way and worked with them to get a PhD. It was such an amazing lab. A lot of people from that lab have gone on to success. One of the people in my cohort, John Jumper, just won a Nobel Prize. It was a really impressive group of people.
|
||||||
|
|
||||||
|
The knowledge I gained there set me up for the rest of my life. It was like a firehose of knowledge and information that I absorbed like a sponge. I spent extra time studying outside of the lab and classes. Nowadays, there's so much shit in my brain that I try to anti-learn. I don't need to learn anything more for the rest of my life.
|
||||||
|
|
||||||
|
I had some amazing mentors there who really spent time with me, like Tobin Sosnick. Another professor doing biophysics research would invite me over to his office every other day. He would have fancy whiskey or alcohol that somebody gave him for giving a talk, and we'd sit there for two or three hours sipping whiskey, just talking about science. He would close the shades on his office door window. Amazing mentors there.
|
||||||
|
|
||||||
|
But I also realized that academia wasn't the place for me. There were these guidelines of the way you're supposed to do things. It happened twice.
|
||||||
|
|
||||||
|
Once was when I published my first paper---I wrote the whole thing, made all the figures. I think maybe it was just me and my PI as the only two authors on a massive body of work. It was like a work of art. I put my soul into that paper. If somebody could read it and actually understand it on a truly deep level, it is like a work of art. Some of the experiments I did were so novel and wild---a breadth of experiments, from computational stuff to complex NMR measurements. I was super proud of it.
|
||||||
|
|
||||||
|
We sent it off to the journal. Initially, they were really excited about it---do some revisions. We did the revisions and they came back, and they're like, "We're not interested in it anymore. Sorry." I was like, "What do you mean you're not interested anymore? What the fuck?" Even my PI wrote a strongly worded email to them.
|
||||||
|
|
||||||
|
I was just like, this system---the scientific system---is not about the beauty. It's not about the cleverness, like that hacker world where it's all about the cleverness of stuff and the beauty of what you do.
|
||||||
|
|
||||||
|
*How did you find balance between that rigor and regimentation of a lab environment and the art?*
|
||||||
|
|
||||||
|
My PI just let me do whatever the fuck I wanted. "Do your shit, go off, go off, homie," and I did. I published four first-author papers, won the best thesis award at the university. I did really well, even by academic standards.
|
||||||
|
|
||||||
|
But after that paper I got really jaded, and I decided to start fucking around. I built this musical instrument. I was really interested, because I was studying this protein and looking at the atoms move in this NMR machine. I was so obsessed with it---I had such a strong relationship with this protein molecule. I could tell you where all the amino acids were and where they pointed, what it looks like, how they vibrated. I knew way too much from spending so many hours and days with it. I didn't take days off ever, maybe one or two weeks off around Christmas, and I worked every weekend.
|
||||||
|
|
||||||
|
I wanted other people to be able to experience this. I was like, "How can I do that?" Because it was this light-reactive protein that followed this photo cycle, I was like, "What if I could take that cycle, that exponential decay of function, and map that to a musical note?" Then people could kind of experience the life of this molecule and understand it, maybe even a little bit, because I'm taking it from the molecular world to the macro world.
|
||||||
|
|
||||||
|
I built this musical instrument. I would be in the lab all day, come home at night, be working on this, and literally just fall asleep. I bought this wooden lap bench off Craigslist for a hundred bucks---person hand-built it and delivered it. I still have it actually, and it's a piece of shit, but it was a hundred bucks.
|
||||||
|
|
||||||
|
I had never built a musical instrument. I had no idea about music or sound, never integrated sound with electronics. It was an impossible task to me---how do you even begin doing this? But slowly, over time, I built more and more, got better and better, figured it out more and more.
|
||||||
|
|
||||||
|
We used to have this thing called Graduate Student Seminar---just graduate students could go. They had beer and pizza, every Friday. I went and played this musical instrument. Everybody had no idea how to respond and kind of laughed and stared at me.
|
||||||
|
|
||||||
|
It was wild, and then it was even more wild because _Scientific American_ and _The Verge_ wanted to write news articles about this shit. I remember talking to my PI in the lab, and they were like, "Oh no, you can't put this in your thesis or anything," but I'm starting to catch recognition from these outside publications.
|
||||||
|
|
||||||
|
To me, this has scientific relevance and interest in many different ways. But the fact that I can't include it with my thesis or can't contribute it to my scientific body of work seems silly and dumb. That was kind of the final thing with me. I was like, "I'm done with academia. I'm on this trajectory that I think is totally different, and I want to embrace that."
|
||||||
|
|
||||||
|
*Where did you go next?*
|
||||||
|
|
||||||
|
I went to this conference wearing a shirt---because in graduate school I was known to be a curmudgeon---that said, "I need my space," and it had a NASA logo on it. At this conference, somebody was like, "There's a guy from NASA here. You should talk to them." This person from NASA talked to me and they're like, "You should apply for this NPP fellowship. It's this prestigious fellowship---you basically write a proposal for research, NASA funds you, and you get to do whatever you want." It was in Silicon Valley.
|
||||||
|
|
||||||
|
I wrote this proposal, and it was so weird. I'm coming from this world of watching atoms move in the basement of the library---the NMR room was in the absolute basement underneath the library---to writing a proposal about helping astronauts on Mars do this shit. It was so surreal, and then they accepted it.
|
||||||
|
|
||||||
|
This was one of the first times where they're just like, "Here's a bunch of money to move out here, you get a nice salary, amazing health insurance." I lived in a hotel on base for the first two weeks I was there till I found a place to live. I wound up at NASA with a fellowship, which was pretty wild. I got to work on something cool and crazy, and I didn't have to deal with all the fucking academic bullshit.
|
||||||
|
|
||||||
|
I worked on engineering bacteria to degrade plastic or degrade human waste so they could reuse it. It was pretty fun. I had two interns who worked with me, and we'd go to all these trash dumps to bio-prospect. I'd just be like, "I'm from NASA. Give me samples of your trash." People would be like, "Okay." It's so funny because you got this official NASA badge, and people just do whatever you say.
|
||||||
|
|
||||||
|
*Did you find your way into startups through being in the Bay Area?*
|
||||||
|
|
||||||
|
NASA was also really bureaucratic, and nobody worked---seriously, nobody worked. My boss came in one day a month. I was coming from academia where I was working my ass off, working on weekends and everything. So I come into NASA, I'm working on weekends, and they start telling me, "Don't come in on weekends---it's not a good look." I'm just like, "What? Why? What's going on here?" I was this naive person who doesn't understand social dynamics and bureaucracy.
|
||||||
|
|
||||||
|
I remember one time the fire alarm went off in the building---it's this six-floor building that's really cool, pockmarked to look like the moon from all the micro-meteors. The base fire department comes, and the fire people were like, "Is everybody out of the building?" We're like, "I think so." There were five of us standing there, and I was like, "Holy shit, this is how many people come into work on any given day?" There's this six-floor building that employed enough people to fill it, and I was just like, "Oh my God, I don't think I'm gonna get anything done here."
|
||||||
|
|
||||||
|
I worked on engineering. I wanted to start working on stuff that was less molecular because I realized from the musical instrument that if you want to have an impact on the world---the real world, not just mental masturbation that you enjoy---you need to build things that impact the world. That's when I figured out, "Okay, if I want to do something that I want to do, I'm gonna have to build it myself," because all these systems that have been established, I just don't fit into.
|
||||||
|
|
||||||
|
When my contract was coming up---the fellowships are for three years---I was just like, "I'm out, homies. We had a good one. I'm taking off."
|
||||||
|
|
||||||
|
I was really interested in democratizing this technology. From the computer hacker days, what made computer hacking so great was access---access to the ability to program, access to knowledge and information. I believe that really drove the computer hacker movement. I was like, "I want to recreate that in biology."
|
||||||
|
|
||||||
|
I made this CRISPR DIY---a CRISPR genetic engineering kit where anybody could gene-edit some bacteria in their home, and I did a crowdfunding campaign. If I raised $20,000, I thought, I'm just gonna do this full time. I ended up raising like $150,000 and got a ton of press. It started this trajectory of running companies and being in the public eye.
|
||||||
|
|
||||||
|
*When you started building these tools that enable people to take things out of the lab and into their homes, how easy was that translation? How is providing access to biology different from doing it with computers?*
|
||||||
|
|
||||||
|
It is a lot different. One thing I really learned about science is there's no user interface, no user experience design. It's just terrible. It's not intuitive in any way and requires all this complex equipment, expensive equipment. I was just like, "How do I package this in a $150 kit?" Which was the first problem---how do I make the protocols and experiments for somebody who doesn't have a whole lab full of equipment to use?
|
||||||
|
|
||||||
|
There was a lot of translation, a lot of R&D that had to go into making this work for somebody in their kitchen who doesn't even have the ability to control temperature. That's a basic process of biology---you have an incubator, you can control temperature. People don't normally have that in their life. We have a thermostat that we could generally control room temperature, but that's it. You can't go up to 37°C or down to whatever.
|
||||||
|
|
||||||
|
I had to adapt things and do things over and over again. I made more kits---letting people engineer human cells in their home, letting people genetically engineer plants in their home. The company still sells this stuff. It was always like, "How do I take this complex scientific experiment and break it down so that somebody without complicated equipment can do it?"
|
||||||
|
|
||||||
|
Every time I did something like this, people would be like, "That's impossible. You're never going to be able to do that." And every time I was able to figure something out. I think it was just that hacker mindset---being clever and understanding things. Graduate school really helped because I came from this world where I tried to learn things from first principles. I didn't follow protocols---I wanted to understand the process so that I knew how to do things intuitively because I understood each step and why it was supposed to be done. I think that helped me greatly to take these protocols that people have been doing and still do and just be like, "Fuck that, you can do it this way also. That's way easier, requires way less equipment."
|
||||||
|
|
||||||
|
*What did people start doing with these kits, and did it surprise you?*
|
||||||
|
|
||||||
|
A lot of the kits are educational. You have to understand that even nowadays---I started the company around ten years ago---people still don't have an intuition for biology, which always blew my mind. We understand these devices, we use computers and cell phones so intuitively, and we have no intuition for ourselves and what we're made of.
|
||||||
|
|
||||||
|
Almost all the kits we sell are geared towards, "Here's a basic experiment that's pre-built for you so you can understand the principles by doing this experiment to get this desired result." 99.9% of people do not move past that. But some people do. A couple of people that work with me today started off with those kits.
|
||||||
|
|
||||||
|
It's more foundational. We're not at the place yet where people really understand or are willing to put in the effort to take it beyond just learning from a kit. It's like when you buy a little electronics board and you make the LED blink on it or something---it's basically like that for the world of biology or, in programming, writing a "Hello World" program.
|
||||||
|
|
||||||
|
You have to understand the difference between playing a song and writing a song. It's really hard to get people to that writing-a-song stage. Very few people make it there in general in the world. With biology, most people are just going to be people who do the experiment, understand it, enjoy the process, brag to their friends, and then move on with their life.
|
||||||
|
|
||||||
|
*How has art continued to be a part of your life as you've been a founder of companies?*
|
||||||
|
|
||||||
|
When I was at NASA, one of the things I did was apply for this art fellowship at Stochastic Labs. It was this new organization that just opened up in Berkeley---a rich person gave them a bunch of money to buy this mansion and set up this hacker space. It was super cool, a bunch of brilliant people from the Bay Area.
|
||||||
|
|
||||||
|
I applied by myself, but they paired me with Lynn Hershman Leeson. She is an icon---a feminist icon and art and technology icon. At the time I didn't know. She's made a bunch of movies with Tilda Swinton---Tilda Swinton starred in a bunch of her weird, crazy movies.
|
||||||
|
|
||||||
|
We started doing art together. This brought me into the more professional world of art because the projects we worked on ended up in museums, which was really wild. We worked on some genetic engineering projects together. I think it was called the Infinity Engine---we worked on a bunch of different stuff to create this huge installation. I was combining some of my computer programming knowledge with biology knowledge.
|
||||||
|
|
||||||
|
The first place it showed was ZKM, which is this new-media, techno-art museum in Germany. Then it went around Europe---I think it went to the Tate Modern and all these other places. It was really wild. That's when I first started to actually be considered an artist and consider myself an artist.
|
||||||
|
|
||||||
|
But at the same time, outside of that, I started doing these weird experiments. I had gut health problems, and people were talking a lot about microbiome transplants. I learned a lot about the microbiome---the bacteria in and on your body. There's this really famous bio-artist at the time who I was friends with, Heather Dewey-Hagborg, and she did this DNA sequencing from cigarette butts to facial reconstruction of people, which got a lot of press.
|
||||||
|
|
||||||
|
I was like, "Let's do this experiment where we transfer our microbiomes---I transfer yours to me, and I transfer mine to yours." We're like, "Oh yeah, this is gonna be really cool." Eventually, she's like, "I don't know if I want to do this. It seems dangerous, and I don't want to fuck up my microbiome."
|
||||||
|
|
||||||
|
We were having this conversation at this event, and some people I met who are filmmakers were just like, "Oh my God, that sounds fucking crazy! We'd love to film this thing." I was like, "Okay, I guess." Heather was out, so it was just me these people wanted to film.
|
||||||
|
|
||||||
|
Somehow _The Verge_ got wind of this idea, and they're like, "We want to do a huge feature on this." This was the first time I had serious press coverage---before, I had some articles written about me, but very superficial. This was the first time I actually had serious principal photography and cameras in my face, a cinema camera, people following me around asking me questions, a journalist who's there.
|
||||||
|
|
||||||
|
I'm doing this experiment and going through this process over the course of two weeks, and I have people following me around everywhere, asking me questions the whole time, recording every moment of my life. It was so intense---what the fuck is going on?
|
||||||
|
|
||||||
|
It was intended to be a science experiment, and it was, but it turned into performance art where the world was interested in this crazy science experiment. It was super rigorous---I took all these samples of bacteria in and on my body, had the DNA sequenced, matched it to the bacteria, looked at how my microbiome changed.
|
||||||
|
|
||||||
|
It was a huge success. The film documentary won a bunch of awards and went to South by Southwest and all these places. I'm at South by Southwest on stage answering people's questions because everybody's like, "Oh my God, that's crazy." This huge article comes out about me, and I started to become a public figure at that point. People started caring about what I did and what I said. It was weird. It was really weird.
|
||||||
|
|
||||||
|
*How did your approach to science change when you turned it on yourself and your own body? What made you willing to do this?*
|
||||||
|
|
||||||
|
It was really freaky because the journalists talked to a lot of scientists, and they were just like, "Oh, they shouldn't do that." At the time I was still male-presenting, so if I refer to myself as "he," just understand that, at the time, people referred to me as he.
|
||||||
|
|
||||||
|
I felt like I understood it well enough and deep enough that I was taking a calculated risk---a risk that something could happen, but also I think something profound or really interesting could come of it. And it did. The results were amazing, just to see the shift in the microbiome. Nobody had done an experiment anything like that.
|
||||||
|
|
||||||
|
When I started experimenting on myself, I thought there were probably few, if any, people in the world who understood this as good as me, and I understood it well enough that I thought I could make a calculated risk.
|
||||||
|
|
||||||
|
It wasn't until later---when there started being copycats, who started copying some of these self-experiments that I was doing---that I was like, "Oh, holy shit, I never imagined that people who didn't have the knowledge would just start doing this shit also." They're crazy motherfuckers. But I think to do good science, to do a lot of this stuff, you need a certain amount of crazy to push boundaries, to do the impossible. You do need a certain amount of crazy, and you do need a certain amount of knowledge.
|
||||||
|
|
||||||
|
I think I have a combination of crazy and knowledge that's really unique. Growing up, I never had anything to lose---I wasn't afraid of getting arrested or stealing shit. Where am I gonna go back to? I'm probably not gonna be worse off than I was at one point in time.
|
||||||
|
|
||||||
|
It really built in me---this attitude of "I have nothing to lose." I think that's still ingrained in me to a certain extent, even though I've grown up and I do have stuff to lose. I still kind of more than not have that attitude of, "Shit, what's the worst that could happen? I've seen some shit. What's the worst that's gonna happen?"
|
||||||
|
|
||||||
|
*I'm curious about whether you're influenced by the legacy of DIY medical interventions in the trans community, where people have had to take these matters into their own hands for a long time.*
|
||||||
|
|
||||||
|
Oh, for sure, especially later on. At the time, my transness was really weird---I didn't quite understand. And I don't want to get into specifics because I think it makes me really vulnerable, and I don't like this information out because some journalists do use this shit against you.
|
||||||
|
|
||||||
|
At the time I was still understanding who I was, and I think it definitely played into this idea of the body being malleable and not so set in stone like people thought it was.
|
||||||
|
|
||||||
|
It wasn't long after that when I started doing more experimenting with medications---hormone replacement therapy in a trans context, DIY outside of medical intervention. To me it was a big deal---if I go to a doctor and say I want to experiment with this stuff, it's like you're either trans or you're not. And if you're trans, it's a big deal. Your partner obviously is going to know you're trans, everybody in your life is going to know you're trans, and it completely changes everything.
|
||||||
|
|
||||||
|
I had just started to become a public figure. I did _Gut Hack_, which was huge, and then after that, all these documentaries started getting made about me from 2016 to 2019, culminating in a Netflix documentary coming out in 2019. I was constantly in the spotlight. I can't just one day all of a sudden show up and be like, "I'm a woman now. I'm trans." I mean I could, but to me that's a lot.
|
||||||
|
|
||||||
|
There was a lot of experimentation going on behind the scenes---experimenting with different drugs and how they made me feel, how they made me feel about myself, what I thought about it. I think that was really helpful, and it was really amazing to have access to this stuff.
|
||||||
|
|
||||||
|
There's a great resource---there's a DIY trans wiki that's associated with Reddit---that was so helpful to me to understand who I was and how I felt about all these things. It was super scary because you're going into the unknown, not just socially but also medically.
|
||||||
|
|
||||||
|
*Do you think there are lessons that community has to offer the wider world in terms of thinking about medical interventions, about experimentation, about our relationship with our bodies?*
|
||||||
|
|
||||||
|
I think our relationship with our bodies is huge. It really taught me a lot about body autonomy. When most people think of body autonomy, at least in more modern context, a lot of it's centered around abortion. But I think we don't realize how little body autonomy we have in general.
|
||||||
|
|
||||||
|
Learning about this stuff, getting involved in the trans community, and just seeing that our bodies are so policed on every aspect---a woman can go and get an estrogen pill for birth control over the counter, there's no requirements. But for somebody who is born male, you have to sign all this paperwork.
|
||||||
|
|
||||||
|
In California, when I eventually went and got prescriptions, there was all this paperwork---"I understand the consequences of this, I understand I could go sterile," and all this shit. You're just like, "Holy shit, they really want to control what we can put in our bodies."
|
||||||
|
|
||||||
|
It really opened my eyes to that, and I think people don't even realize how much control they're under. It opened up my eyes to the idea that body autonomy is this huge thing---the right to take whatever medications we want, use whatever pharmaceuticals or drugs we want to get high or whatever it is, abortion, surgical medical procedures. It goes deep.
|
||||||
|
|
||||||
|
A woman can go and get breast implants and nobody asks any questions. If you're transgender, you need three letters from psychiatrists. How does this make any sense? How is one different than the other when they're both gender-affirming surgery?
|
||||||
|
|
||||||
|
It opened up my eyes to the struggles that a lot of people have. I've had it so good because, when I came out, my life was starting to become more upper middle class. I had access to insurance, I had money to pay and see therapists, really try to deal with this. In my life, I have been fortunate to---outside of online---not really experience much bigotry. The group of people I get to be around are very accepting people.
|
||||||
|
|
||||||
|
I understand that a lot of people don't have that. A lot of people don't have access to insurance. A lot of people don't have access to people who---everybody around them will be bigoted towards them. It's complicated, and going to a doctor to get access to this stuff can be dangerous.
|
||||||
|
|
||||||
|
Still to this day, even though I generally always pass as a woman, I'm still afraid to use women's bathrooms. Shit's crazy out there. Subverting that system again, I think this goes back to being a hacker---be clever enough to subvert the system. When I first started, I took medication off the internet and found websites where you can get a doctor to prescribe you blood tests. So I just go get my blood drawn to see what levels of my testosterone and estrogen levels and all sorts of stuff, so I had an idea of how the medications were affecting my body. It was really cool.
|
||||||
|
|
||||||
|
*I wonder if you could say a bit more about your interaction with public health authorities. Where have you run into the limits of the dominant system?*
|
||||||
|
|
||||||
|
Once I started to get more public attention and people paying attention to me, then the government started paying attention to me---and not even just the US government. It started at the time it was just me and two other people running this company, and I have the FBI chatting with me, meetings with the FBI, meetings with the FDA, meetings with the California Board of Medicine, California Medical Board. So many organizations just started to come after me.
|
||||||
|
|
||||||
|
It was so freaky because here I am---the company is still growing, we don't have much money. If somebody wanted to do some sustained court battle with me, I would totally crumble. I'm flying by the seat of my pants, trying to figure things out as I go, and operating under the premise that I have nothing to hide---I'm not doing anything wrong.
|
||||||
|
|
||||||
|
I made sure I would always research all the regulations and rules. Then the government started changing them, and California made a law, and the FDA came out with new guidances to start to try to counteract some of the stuff I was doing. It was so wild to have these government agents. The Bavarian government in Germany came after me, which caused this international incident that got the FBI and other people involved.
|
||||||
|
|
||||||
|
It was way too much for somebody who---I don't want to say lowly, but what's all this drama going on? I'm just this farm girl who runs a small company in Oakland, California, out of a house! We didn't even have---because bio labs were so expensive, I just rented a house in this kind of reasonable but also not great neighborhood in West Oakland. It was right by the West Oakland BART stop where people got shot on the regular. I just run this fucking biotech genetic engineering company out of this house in West Oakland. What the fuck?
|
||||||
|
|
||||||
|
*Where is the line for you between protection and guarantees that people should be owed, and that autonomy?*
|
||||||
|
|
||||||
|
It is really complicated. I guess I'm kind of more libertarian at heart. There's these libertarians who are like, "Oh, you shouldn't need a driver's license to drive, or there shouldn't be stop signs," but when you think about it, stop signs and stoplights and guardrails do protect us, and they don't really infringe on our rights very much. You have to stop when you get to a stop---that's not really infringing on your right too much. These are good things. Having certain stoplights and stop signs aren't necessarily a bad thing when you're trying to prevent people from accidentally hurting themselves. What are those boundaries? I don't know. It's really tough.
|
||||||
|
|
||||||
|
I'm sure there's some things we can all agree on---nobody should have access to Ebola. I think 99.9% of people are gonna be like, "All right, reasonable." I think when it gets to those gray areas is when it starts to get complicated.
|
||||||
|
|
||||||
|
Honestly, what I've come to learn is that the system does play a role in---it scares, it prevents a lot of people from doing stupid shit, but it also allows room for pushback. If you're actually thoughtful about the pushback, I think you can actually hack the government, so to speak, in certain ways. Hack the regulations, find these loopholes and bypass them. That's what I've worked to do and still do today---find these loopholes and bypass them to your advantage, where they can't do anything to you because that doesn't break any of the things.
|
||||||
|
|
||||||
|
And learning what's important to the system---what does the system value? How do I not fuck with the things that they value? I think I've become way smarter about it by understanding that the system does have a role to play. There should be some amount of pushback because I think just giving people freedom to do whatever they want isn't necessarily in everyone's best interest.
|
||||||
|
|
||||||
|
So pushback so that the thoughtful people who are trying to push the boundaries end up making it through, and the people who are just doing dumb, crazy shit kind of get---don't make it as far. It's kind of like a self-selective sieve---if you made it this far where you're talking to the FBI, you probably hopefully have done it in such a way where they're not going to arrest you. If they are, you deserve it.
|
||||||
|
|
||||||
|
*When you think of yourself encountering that computer and discovering your power as a hacker, what are you hoping to convey to people who are experiencing something similar with the tools you're providing now? What do you hope they learn?*
|
||||||
|
|
||||||
|
I'm just trying to open people's eyes. I want them to see the beauty that I saw or see, because once you see that beauty---I call it "the illness"---it becomes this illness where you become obsessed. It's just like, "Oh my God, that thing is so beautiful. I just want to know more. I just want to feel it. I just want to touch it. I want to experience it in every way possible."
|
||||||
|
|
||||||
|
That starts with showing people the beauty. That's why I started my new company. My first company was this bottom-up approach---people are never going to be able to see that beauty if they don't understand it. My new company is like, people are never going to be able to completely express that beauty if they don't see what's possible.
|
||||||
|
|
||||||
|
In my new company, we're gene-editing animals, gene-editing embryos, which has been so wild and surreal. I want people to have the power to be able to be hackers, but I need to show them what's cool first. Just like when I was a hacker, there was a lot of code that inspired me---a lot of code that inspired a lot of the programming and clever hacking stuff that I did. People need that inspiration.
|
||||||
|
|
||||||
|
It's also something I've learned being a trans person---I used to never understand what representation meant until I was the only woman, trans woman, queer person in a room. Then you're just like, "Holy shit---wow, it's very isolating." You start to realize people need representations of cool, interesting, beautiful things. I'm just trying to bring that to them, I guess.
|
||||||
|
|
||||||
|
That's kind of one of my mottos---I even tattooed it on my arm myself: "create something beautiful." I want to inspire other people to create beautiful things, because what's the point if you're not seeing beauty?
|
@@ -1,40 +0,0 @@
|
|||||||
sand:
|
|
||||||
100: "#eee8dd"
|
|
||||||
500: "#d4c5aa"
|
|
||||||
900: "#b19360"
|
|
||||||
pink:
|
|
||||||
100: "#ead4d2"
|
|
||||||
500: "#c0928a"
|
|
||||||
900: "#a7695a"
|
|
||||||
red:
|
|
||||||
100: "#e8c9c9"
|
|
||||||
500: "#b87977"
|
|
||||||
900: "#a35754"
|
|
||||||
rust:
|
|
||||||
100: "#eacec4"
|
|
||||||
500: "#c48a74"
|
|
||||||
900: "#af6649"
|
|
||||||
clay:
|
|
||||||
100: "#ead4c2"
|
|
||||||
500: "#c49b6f"
|
|
||||||
900: "#b17f48"
|
|
||||||
gold:
|
|
||||||
100: "#e6dac1"
|
|
||||||
500: "#bca66d"
|
|
||||||
900: "#a88b48"
|
|
||||||
moss:
|
|
||||||
100: "#d0ddc7"
|
|
||||||
500: "#919f71"
|
|
||||||
900: "#69734a"
|
|
||||||
pine:
|
|
||||||
100: "#c7ddd2"
|
|
||||||
500: "#7b9b85"
|
|
||||||
900: "#516b57"
|
|
||||||
cyan:
|
|
||||||
100: "#c0dadd"
|
|
||||||
500: "#6a9799"
|
|
||||||
900: "#436668"
|
|
||||||
blue:
|
|
||||||
100: "#c2cfe0"
|
|
||||||
500: "#6f88a3"
|
|
||||||
900: "#5d7691"
|
|
@@ -1,32 +1,115 @@
|
|||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="en">
|
<html lang="{{ .Site.LanguageCode | default "en" }}">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8" />
|
<meta charset="utf-8" />
|
||||||
<title>
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
{{ .Title }}
|
|
||||||
</title>
|
|
||||||
<meta name="description" content="{{ .Description }}" />
|
|
||||||
{{ partial "css-variables.html" . }}
|
|
||||||
|
|
||||||
{{/* Main Styles */}}
|
{{/* Generate consistent title */}}
|
||||||
{{ $styles := resources.Get "scss/main.scss" }}
|
{{ $title := "" }}
|
||||||
{{ $styles = $styles | resources.ToCSS (dict "targetPath" "css/styles.css" "enableSourceMap" true) }}
|
{{ if .Params.narrator }}
|
||||||
{{ $styles = $styles | resources.PostCSS }}
|
{{ $title = printf "%s: %s" .Params.narrator .Params.subject }}
|
||||||
|
{{ else if .IsHome }}
|
||||||
{{ if hugo.IsProduction }}
|
{{ $title = .Title }}
|
||||||
{{ $styles = $styles | minify | fingerprint | resources.PostProcess }}
|
{{ else }}
|
||||||
|
{{ $title = printf "%s - %s" .Title .Site.Title }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
<link href="{{ $styles.RelPermalink }}" rel="stylesheet" />
|
<!-- Basic SEO -->
|
||||||
|
<title>{{ $title }}{{ if .Params.narrator }} - {{ .Site.Title }}{{ end }}</title>
|
||||||
|
|
||||||
|
{{/* Generate description from summary, description, or default site description */}}
|
||||||
|
{{ $description := "" }}
|
||||||
|
{{ with .Description }}
|
||||||
|
{{ $description = . }}
|
||||||
|
{{ else }}
|
||||||
|
{{ with .Summary }}
|
||||||
|
{{ $description = . | plainify | truncate 160 }}
|
||||||
|
{{ else }}
|
||||||
|
{{ $description = .Site.Params.description }}
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
<meta name="description" content="{{ $description }}" />
|
||||||
|
|
||||||
|
{{/* Generate keywords from topics */}}
|
||||||
|
{{ with .Params.topics }}
|
||||||
|
<meta name="keywords" content="{{ delimit . ", " }}" />
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
<!-- Open Graph / Facebook -->
|
||||||
|
<meta property="og:site_name" content="{{ .Site.Title }}" />
|
||||||
|
<meta property="og:type" content="{{ if .IsPage }}interview{{ else }}website{{ end }}" />
|
||||||
|
<meta property="og:url" content="{{ .Permalink }}" />
|
||||||
|
<meta property="og:title" content="{{ $title }}" />
|
||||||
|
<meta property="og:description" content="{{ $description }}" />
|
||||||
|
{{ with .Params.ogImage | default .Site.Params.openGraphImage }}
|
||||||
|
<meta property="og:image" content="{{ . | absURL }}" />
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
<!-- Twitter -->
|
||||||
|
<meta name="twitter:card" content="summary_large_image" />
|
||||||
|
<meta name="twitter:title" content="{{ $title }}" />
|
||||||
|
<meta name="twitter:description" content="{{ $description }}" />
|
||||||
|
{{ with .Params.ogImage | default .Site.Params.openGraphImage }}
|
||||||
|
<meta name="twitter:image" content="{{ . | absURL }}" />
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
<!-- Interview Specific -->
|
||||||
|
{{ if and .IsPage (eq .Type "interviews") }}
|
||||||
|
<meta property="interview:published_time" content="{{ .Date.Format "2006-01-02T15:04:05Z07:00" }}" />
|
||||||
|
<meta property="interview:modified_time" content="{{ .Lastmod.Format "2006-01-02T15:04:05Z07:00" }}" />
|
||||||
|
<meta property="interview:section" content="Oral History" />
|
||||||
|
{{ with .Params.topics }}
|
||||||
|
{{ range . }}
|
||||||
|
<meta property="interview:tag" content="{{ . }}" />
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
{{/* Author information using standard meta topics instead of interview:author */}}
|
||||||
|
{{ with .Params.narrator }}
|
||||||
|
<meta name="author" content="{{ . }}" />
|
||||||
|
{{ end }}
|
||||||
|
{{ with .Params.facilitator }}
|
||||||
|
<meta name="interviewer" content="{{ . }}" />
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
<!-- Canonical URL -->
|
||||||
|
<link rel="canonical" href="{{ .Permalink }}" />
|
||||||
|
|
||||||
|
<!-- CSS Styles -->
|
||||||
|
{{ partial "css.html" . }}
|
||||||
|
|
||||||
|
|
||||||
|
<!-- Matomo -->
|
||||||
|
<script>
|
||||||
|
var _paq = window._paq = window._paq || [];
|
||||||
|
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
|
||||||
|
_paq.push(['trackPageView']);
|
||||||
|
_paq.push(['enableLinkTracking']);
|
||||||
|
(function() {
|
||||||
|
var u="https://analytics.medlab.host/";
|
||||||
|
_paq.push(['setTrackerUrl', u+'matomo.php']);
|
||||||
|
_paq.push(['setSiteId', '8']);
|
||||||
|
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
|
||||||
|
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
|
||||||
|
})();
|
||||||
|
</script>
|
||||||
|
<!-- End Matomo Code -->
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
<body class="">
|
<body class="">
|
||||||
{{ partial "header.html" . }}
|
{{ partial "header.html" . }}
|
||||||
<div class="px-4 lg:mx-auto">
|
<div class="px-4 lg:mx-auto">
|
||||||
{{ block "main" . }}{{ end }}
|
{{ block "main" . }}{{ end }}
|
||||||
</div>
|
</div>
|
||||||
<script src="/js/sigil.js"></script>
|
{{ partial "footer.html" . }}
|
||||||
<script src="/js/colorCalculator.js"></script>
|
|
||||||
<script src="/js/wompum.js"></script>
|
{{ $js := resources.Match "js/*.js" | resources.Concat "js/bundle.js" }}
|
||||||
{{ block "scripts" . }}{{ end }}
|
{{ if hugo.IsProduction }}
|
||||||
|
{{ $js = $js | minify | fingerprint }}
|
||||||
|
<script src="{{ $js.RelPermalink }}" integrity="{{ $js.Data.Integrity }}" crossorigin="anonymous"></script>
|
||||||
|
{{ else }}
|
||||||
|
<script src="{{ $js.RelPermalink }}"></script>
|
||||||
|
{{ end }}
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
@@ -1,9 +1,11 @@
|
|||||||
{{ define "main" }}
|
{{ define "main" }}
|
||||||
<article class="single-default">
|
<interview class="single-default">
|
||||||
<header class="mb-4">{{ partial "article-wompum.html" . }}</header>
|
<header class="mb-8 wompum-container wompum-container--wide-gap aspect-3/1 md:aspect-4/1">
|
||||||
|
<div class="wompum-grid" data-text="{{ .Params.wompum | default .Title }}" data-columns="7" data-rows="5"></div>
|
||||||
|
</header>
|
||||||
|
|
||||||
<div class="prose lg:prose-xl p-4 mx-auto">
|
<div class="prose lg:prose-xl dark:prose-invert p-4 mx-auto mt-8">
|
||||||
<p class="font-bold text-4xl">{{ .Title }}</p>
|
<p class="font-bold text-6xl">{{ .Title }}</p>
|
||||||
{{ .Content }}
|
{{ .Content }}
|
||||||
|
|
||||||
{{/* Check for additional partials to include */}}
|
{{/* Check for additional partials to include */}}
|
||||||
@@ -13,5 +15,5 @@
|
|||||||
{{ end }}
|
{{ end }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
</div>
|
</div>
|
||||||
</article>
|
</interview>
|
||||||
{{ end }}
|
{{ end }}
|
@@ -1,24 +1,23 @@
|
|||||||
{{ define "main" }}
|
{{ define "main" }}
|
||||||
<header class="my-8">
|
<header class="my-8">
|
||||||
<p class="text-center font-iosevka">Topic</p>
|
<p class="text-center font-iosevka capitalize">{{ .Data.Singular }}</p>
|
||||||
<h1 class="text-4xl font-bold text-center capitalize">{{ .Title }}</h1>
|
<h1 class="text-4xl font-bold text-center capitalize">{{ .Title }}</h1>
|
||||||
</header>
|
</header>
|
||||||
<main class="container mx-auto">
|
<main class="flex flex-wrap container mx-auto justify-center">
|
||||||
<ul class="mt-4 space-y-4">
|
<ul class="flex flex-col md:gap-4 gap-16 w-full mb-16 mt-4">
|
||||||
{{ partial "article-list.html" (dict "Pages" .Data.Pages) }}
|
{{ partial "interview-list.html" (dict "Pages" .Data.Pages) }}
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
|
{{ if gt (len (index .Site.Taxonomies .Data.Singular)) 1 }}
|
||||||
<section>
|
<section>
|
||||||
<h2 class="text-4xl my-8 font-iosevka text-center">Other Topics</h2>
|
<h2 class="text-4xl mt-8 mb-4 font-bold text-center">Other {{ .Data.Plural }}</h2>
|
||||||
<div class="tag-cloud font-iosevka text-gray-600">
|
<div class="wompum-container wompum-container--no-gap">
|
||||||
{{ $tags := .Site.Taxonomies.tags }}
|
<div class="wompum-grid" data-text="Other {{ .Data.Plural }}" data-columns="4" data-rows="1"></div>
|
||||||
{{ range $tag, $pages := $tags }}
|
</div>
|
||||||
<a href="{{ "/tags/" | relLangURL }}{{ $tag | urlize }}" style="font-size: {{ add 1 (div (len $pages) 2) }}em;"
|
<div class="tag-cloud font-iosevka text-gray-600 text-center my-4 w-full flex flex-wrap gap-2 items-center justify-center">
|
||||||
class="tag text-sm inline-block p-2 my-1 border border-gray-100 rounded-lg hover:bg-yellow-100 whitespace-nowrap">
|
{{ partial "taxonomy-cloud" (dict "taxonomy" .Data.Singular "Site" .Site "page" .Page) }}
|
||||||
{{ $tag }}
|
|
||||||
</a>
|
|
||||||
{{ end }}
|
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
{{ end }}
|
||||||
</main>
|
</main>
|
||||||
{{ end }}
|
{{ end }}
|
@@ -1,27 +0,0 @@
|
|||||||
{{ define "main" }}
|
|
||||||
|
|
||||||
<article class="single-article">
|
|
||||||
|
|
||||||
<header class="mb-4">{{ partial "article-wompum.html" . }}</header>
|
|
||||||
|
|
||||||
<div class="flex gap-4">
|
|
||||||
<aside class="lg:sticky lg:top-0 lg:h-screen lg:overflow-y-auto lg:w-1/3 p-4 font-iosevka">
|
|
||||||
<p class="text-3xl font-light mb-4">
|
|
||||||
<time datetime="{{ .Date.Format "2006-01-02" }}">{{ .Date.Format "January 2, 2006" }}</time>
|
|
||||||
</p>
|
|
||||||
<p><strong>Narrator:</strong> {{ .Params.narrator }}</p>
|
|
||||||
<p><strong>Facilitator:</strong> {{ .Params.facilitator }}</p>
|
|
||||||
<p><strong>Subject:</strong> {{ .Params.subject }}</p>
|
|
||||||
<p><strong>Tags:</strong> {{ partial "tags.html" . }}</p>
|
|
||||||
</aside>
|
|
||||||
<div class="prose lg:prose-xl lg:w-2/3 p-4">
|
|
||||||
<p class="font-bold text-4xl">{{ partial "article-title" . }}</p>
|
|
||||||
{{ .Content }}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</article>
|
|
||||||
<aside class="max-w-screen-xl mx-auto px-4 lg:px-0">
|
|
||||||
{{ partial "related-articles" (dict "page" . "tags" .Params.tags "limit" 3) }}
|
|
||||||
</aside>
|
|
||||||
<div class="text-center my-12"><a href="/">Go Home</a></div>
|
|
||||||
{{ end }}
|
|
@@ -1,47 +1,26 @@
|
|||||||
{{ define "main" }}
|
{{ define "main" }}
|
||||||
{{ partial "search-interface.html" . }}
|
<main class="flex flex-col md:flex-row gap-4 md:gap-8 lg:gap-16 justify-around mt-8 max-w-screen-xl mx-auto">
|
||||||
<main class="flex gap-4 lg:gap-16 justify-around mt-8 max-w-screen-xl mx-auto px-4 lg:px-0">
|
<ul class="flex flex-col md:gap-4 gap-16 w-full mb-16">
|
||||||
<ul class="flex flex-col gap-4 w-full">
|
{{ partial "interview-list.html" (dict "Pages" (where .Site.RegularPages "Section" "interviews")) }}
|
||||||
{{ partial "article-list.html" (dict "Pages" (where .Site.RegularPages "Section" "articles")) }}
|
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<aside class="max-w-prose w-1/4 flex flex-col gap-8 mb-8">
|
<aside class="max-w-prose md:w-1/4 flex flex-col gap-8 mb-8">
|
||||||
|
|
||||||
<section>
|
<section>
|
||||||
<h2 class="text-4xl mb-4 font-iosevka">About</h2>
|
<h2 class="text-2xl font-bold mb-2">About</h2>
|
||||||
{{ .Content }}
|
<div class="wompum-container wompum-container--no-gap">
|
||||||
</section>
|
<div class="wompum-grid" data-text="About The Protocol Oral History Project" data-columns="4" data-rows="1"></div>
|
||||||
|
|
||||||
<section>
|
|
||||||
<h2 class="text-4xl mb-4 font-iosevka">Narrators</h2>
|
|
||||||
<div class="tag-cloud font-iosevka text-gray-600">
|
|
||||||
{{ $narrators := slice }}
|
|
||||||
{{ range .Site.RegularPages }}
|
|
||||||
{{ with .Params.narrator }}
|
|
||||||
{{ $narrators = $narrators | append . }}
|
|
||||||
{{ end }}
|
|
||||||
{{ end }}
|
|
||||||
{{ $narrators = $narrators | uniq | sort }}
|
|
||||||
{{ range $narrator := $narrators }}
|
|
||||||
<a href="{{ "/narrators/" | relLangURL }}{{ $narrator | urlize }}"
|
|
||||||
class="tag inline-block p-2 my-1 border border-gray-100 rounded-lg hover:bg-yellow-100 whitespace-nowrap"
|
|
||||||
style="font-size: 1rem;">
|
|
||||||
{{ $narrator }}
|
|
||||||
</a>
|
|
||||||
{{ end }}
|
|
||||||
</div>
|
</div>
|
||||||
|
<p class="mt-4">{{ .Content }}</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section>
|
<section>
|
||||||
<h2 class="text-4xl mb-4 font-iosevka">Topics</h2>
|
<h2 class="text-2xl font-bold mb-2">Topics</h2>
|
||||||
<div class="tag-cloud font-iosevka text-gray-600 text-sm">
|
<div class="wompum-container wompum-container--no-gap">
|
||||||
{{ $tags := .Site.Taxonomies.tags }}
|
<div class="wompum-grid" data-text="Topics" data-columns="4" data-rows="1"></div>
|
||||||
{{ range $tag, $pages := $tags }}
|
</div>
|
||||||
<a href="{{ "/tags/" | relLangURL }}{{ $tag | urlize }}" style="font-size: {{ add 1 (div (len $pages) 2) }}em;" data-count="{{ len $pages}}"
|
<div class="tag-cloud font-iosevka text-gray-600 my-4 flex flex-wrap gap-2">
|
||||||
class="tag inline-block p-2 my-1 border border-gray-100 rounded-lg hover:bg-yellow-100 whitespace-nowrap">
|
{{ partial "taxonomy-cloud" (dict "taxonomy" "topics" "Site" .Site) }}
|
||||||
{{ $tag }}
|
|
||||||
</a>
|
|
||||||
{{ end }}
|
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
|
@@ -1,14 +0,0 @@
|
|||||||
{{- $searchIndex := slice -}}
|
|
||||||
{{- range where .Site.RegularPages "Type" "articles" -}}
|
|
||||||
{{- $searchIndex = $searchIndex | append (dict
|
|
||||||
"title" .Title
|
|
||||||
"url" .Permalink
|
|
||||||
"summary" .Summary
|
|
||||||
"tags" .Params.tags
|
|
||||||
"narrator" .Params.narrator
|
|
||||||
"facilitator" .Params.facilitator
|
|
||||||
"date" (.Date.Format "2006-01-02")
|
|
||||||
"content" .Plain
|
|
||||||
) -}}
|
|
||||||
{{- end -}}
|
|
||||||
{{- $searchIndex | jsonify -}}
|
|
38
layouts/interviews/single.html
Normal file
38
layouts/interviews/single.html
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
{{ define "main" }}
|
||||||
|
|
||||||
|
<article class="single-interview">
|
||||||
|
|
||||||
|
<header class="mb-4 wompum-container wompum-container--wide-gap aspect-2/1 md:aspect-3/1">{{ partial "interview-wompum.html" . }}</header>
|
||||||
|
|
||||||
|
<div class="flex md:flex-row flex-col gap-4 mt-4">
|
||||||
|
<aside class="md:sticky md:top-24 md:h-screen p-4 font-iosevka">
|
||||||
|
{{ $headshot := resources.GetMatch (printf "**/%s" (strings.TrimPrefix "/" .Params.headshot)) }}
|
||||||
|
{{ if and .Params.headshot $headshot }}
|
||||||
|
<div class="narrator__container -mt-24" data-text="{{ .Params.narrator }}">
|
||||||
|
{{ partial "image.html" (dict
|
||||||
|
"resource" $headshot
|
||||||
|
"width" "192"
|
||||||
|
"class" "narrator__frame"
|
||||||
|
"alt" (printf "Photo of %s" .Params.narrator)
|
||||||
|
) }}
|
||||||
|
</div>
|
||||||
|
{{ end }}
|
||||||
|
<div class="md:block hidden">{{ partial "interview-metadata.html" . }}</div>
|
||||||
|
</aside>
|
||||||
|
<div class="prose-xl max-w-prose dark:prose-invert p-4 mx-auto">
|
||||||
|
<p class="font-bold text-4xl interview-title interview-title--single">{{ partial "interview-title" . }}</p>
|
||||||
|
<p class="text-2xl">{{ .Params.summary }}</p>
|
||||||
|
<div class="wompum-container wompum-container--no-gap h-1">
|
||||||
|
<div class="wompum-grid" data-text="{{ .Params.summary }}" data-columns="12" data-rows="1">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{{ .Content }}
|
||||||
|
</div>
|
||||||
|
<aside class="md:hidden block p-8 mt-8 border-t border-gray-200">{{ partial "interview-metadata.html" . }}</aside>
|
||||||
|
</div>
|
||||||
|
</article>
|
||||||
|
<aside class="max-w-screen-xl mx-auto">
|
||||||
|
{{ partial "related-interviews" (dict "page" . "topics" .Params.topics "limit" 3) }}
|
||||||
|
</aside>
|
||||||
|
<div class="text-center my-12"><a href="/">Go Home</a></div>
|
||||||
|
{{ end }}
|
@@ -1,20 +0,0 @@
|
|||||||
{{ $pages := .Pages }}
|
|
||||||
{{ range $pages }}
|
|
||||||
{{- $page := . -}}
|
|
||||||
{{- if reflect.IsMap . -}}
|
|
||||||
{{- $page = .page -}}
|
|
||||||
{{- end -}}
|
|
||||||
<li class="flex gap-4 items-center">
|
|
||||||
<a class="flex-grow" href="{{ $page.RelPermalink }}">{{ partial "article-wompum.html" $page }}</a>
|
|
||||||
<time class="text-gray-800 font-iosevka" datetime="{{ $page.Date.Format "2006-01-02" }}">
|
|
||||||
<p>{{ $page.Date.Format "Jan" }}</p>
|
|
||||||
<p>{{ $page.Date.Format "02" }}</p>
|
|
||||||
<p>{{ $page.Date.Format "2006" }}</p>
|
|
||||||
</time>
|
|
||||||
<div class="flex-shrink-0 max-w-max">
|
|
||||||
<a class="text-2xl font-bold hover:text-green-900 underline" href="{{ $page.RelPermalink }}">{{ partial "article-title" $page }}</a>
|
|
||||||
<p class="max-w-prose">{{ $page.Params.summary }}</p>
|
|
||||||
{{ partial "tags.html" $page }}
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
{{ end }}
|
|
@@ -1,3 +0,0 @@
|
|||||||
{{- if and .Params.narrator .Params.subject -}}
|
|
||||||
{{- .Params.narrator }}: {{ .Params.subject -}}
|
|
||||||
{{- end -}}
|
|
@@ -1,8 +0,0 @@
|
|||||||
<div class="wompum-container">
|
|
||||||
<div class="wompum-grid"
|
|
||||||
data-metadata="{{ jsonify .Params }}"
|
|
||||||
>
|
|
||||||
<!-- Grid will be populated by JavaScript -->
|
|
||||||
<!-- 7x5 = 35 cells total -->
|
|
||||||
</div>
|
|
||||||
</div>
|
|
@@ -1,9 +0,0 @@
|
|||||||
<style>
|
|
||||||
:root {
|
|
||||||
{{ range $colorName, $shades := site.Data.colors }}
|
|
||||||
{{ range $shade, $value := $shades }}
|
|
||||||
--{{ $colorName }}-{{ $shade }}: {{ $value }};
|
|
||||||
{{ end }}
|
|
||||||
{{ end }}
|
|
||||||
}
|
|
||||||
</style>
|
|
23
layouts/partials/css.html
Normal file
23
layouts/partials/css.html
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
{{ with (templates.Defer (dict "key" "global")) }}
|
||||||
|
{{ $t := debug.Timer "tailwindcss" }}
|
||||||
|
{{ with resources.Get "css/styles.css" }}
|
||||||
|
{{ $opts := dict
|
||||||
|
"inlineImports" true
|
||||||
|
"optimize" (not hugo.IsDevelopment)
|
||||||
|
}}
|
||||||
|
{{ with . | css.TailwindCSS $opts }}
|
||||||
|
{{ if hugo.IsDevelopment }}
|
||||||
|
<link rel="stylesheet" href="{{ .RelPermalink }}" />
|
||||||
|
{{ else }}
|
||||||
|
{{ with . | minify | fingerprint }}
|
||||||
|
<link
|
||||||
|
rel="stylesheet"
|
||||||
|
href="{{ .RelPermalink }}"
|
||||||
|
integrity="{{ .Data.Integrity }}"
|
||||||
|
crossorigin="anonymous" />
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
{{ $t.Stop }}
|
||||||
|
{{ end }}
|
@@ -1,5 +1,5 @@
|
|||||||
<section>
|
<section>
|
||||||
<h2 class="text-4xl mb-4 font-iosevka">Facilitators</h2>
|
<h2 class="text-4xl mb-4">Facilitators</h2>
|
||||||
<div class="tag-cloud font-iosevka text-gray-600">
|
<div class="tag-cloud font-iosevka text-gray-600">
|
||||||
{{ $facilitators := slice }}
|
{{ $facilitators := slice }}
|
||||||
{{ range .Site.RegularPages }}
|
{{ range .Site.RegularPages }}
|
||||||
@@ -9,7 +9,7 @@
|
|||||||
{{ end }}
|
{{ end }}
|
||||||
{{ $facilitators = $facilitators | uniq | sort }}
|
{{ $facilitators = $facilitators | uniq | sort }}
|
||||||
{{ range $facilitator := $facilitators }}
|
{{ range $facilitator := $facilitators }}
|
||||||
<a href="{{ " facilitators/" | relLangURL }}{{ $facilitator | urlize }}"
|
<a href="{{ "/facilitator/" | relLangURL }}{{ $facilitator | urlize }}"
|
||||||
class="tag inline-block p-2 my-1 border border-gray-100 rounded-lg hover:bg-yellow-100 whitespace-nowrap"
|
class="tag inline-block p-2 my-1 border border-gray-100 rounded-lg hover:bg-yellow-100 whitespace-nowrap"
|
||||||
style="font-size: 1rem;">
|
style="font-size: 1rem;">
|
||||||
{{ $facilitator }}
|
{{ $facilitator }}
|
||||||
|
24
layouts/partials/footer.html
Normal file
24
layouts/partials/footer.html
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
<footer class="bg-sand-500 text-amber-900 mt-16 dark:bg-gray-800 dark:text-sand-500">
|
||||||
|
<div class="wompum-container wompum-container--no-gap h-1">
|
||||||
|
<div class="wompum-grid" data-text="{{ .Site.Title }}" data-columns="7" data-rows="1">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="p-8 pt-16 flex justify-between md:items-center gap-8">
|
||||||
|
<section>
|
||||||
|
<h1 class="text-2xl font-bold">
|
||||||
|
<a href="/">{{ .Site.Title }}</a>
|
||||||
|
</h1>
|
||||||
|
<p class="text-lg">{{ .Site.Params.footer | markdownify }}</p>
|
||||||
|
</section>
|
||||||
|
<nav class="font-iosevka mt-2">
|
||||||
|
<ul class="flex-col items-end gap-4">
|
||||||
|
<li>
|
||||||
|
<a href="/">Home</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/about">About</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
</div>
|
||||||
|
</footer>
|
@@ -1,16 +1,42 @@
|
|||||||
<!-- basic header partial in hugo with just home and about -->
|
<!-- basic header partial in hugo with just home and about -->
|
||||||
<header class="p-4 flex justify-between items-center border-b border-gray-300 mb-4">
|
<header class="flex flex-col mb-4">
|
||||||
|
<div class="flex justify-between gap-4 items-center p-4">
|
||||||
<h1 class="text-2xl font-bold">
|
<h1 class="text-2xl font-bold">
|
||||||
<a href="/">{{ .Site.Title }}</a>
|
<a href="/">{{ .Site.Title }}</a>
|
||||||
</h1>
|
</h1>
|
||||||
<nav class="font-iosevka">
|
<nav class="font-iosevka">
|
||||||
<ul class="flex gap-4">
|
<ul class="flex flex-col flex-wrap relative sm:flex-row sm:gap-4 justify-center pr-8 sm:pr-0">
|
||||||
<li>
|
<li>
|
||||||
<a href="/" class="hover:text-blue-700">Home</a>
|
<a href="/">Home</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="/about" class="hover:text-blue-700">About</a>
|
<a href="/about">About</a>
|
||||||
|
</li>
|
||||||
|
<li class="sm:relative absolute -right-1 top-1/2 sm:right-[unset] sm:top-[unset] transform -translate-y-1/2 sm:transform-none sm:translate-y-0">
|
||||||
|
<button id="darkmode-toggle" onclick="toggleDarkMode()" aria-label="Toggle dark mode"
|
||||||
|
class="flex group p-1 relative -mt-1 cursor-pointer hover:bg-gray-950 hover:text-gray-100 dark:hover:bg-sand-100 dark:hover:text-gray-900 rounded-full">
|
||||||
|
<!-- Lightbulb SVG icon -->
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" class="h-5 w-5 dark:inline hidden" fill="none" viewBox="0 0 24 24" stroke="currentColor">
|
||||||
|
<path stroke-linecap="round" stroke-linejoin="round"
|
||||||
|
d="M12 3v2.25m6.364.386-1.591 1.591M21 12h-2.25m-.386 6.364-1.591-1.591M12 18.75V21m-4.773-4.227-1.591 1.591M5.25 12H3m4.227-4.773L5.636 5.636M15.75 12a3.75 3.75 0 1 1-7.5 0 3.75 3.75 0 0 1 7.5 0Z">
|
||||||
|
</path>
|
||||||
|
</svg>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" class="h-5 w-5 dark:hidden" fill="none" viewBox="0 0 24 24" stroke="currentColor">
|
||||||
|
<path stroke-linecap="round" stroke-linejoin="round"
|
||||||
|
d="M21.752 15.002A9.72 9.72 0 0 1 18 15.75c-5.385 0-9.75-4.365-9.75-9.75 0-1.33.266-2.597.748-3.752A9.753 9.753 0 0 0 3 11.25C3 16.635 7.365 21 12.75 21a9.753 9.753 0 0 0 9.002-5.998Z">
|
||||||
|
</path>
|
||||||
|
</svg>
|
||||||
|
<p class="tooltip transition-opacity duration-500 absolute mr-5 -bottom-5 right-0 w-sm text-sm text-right hidden group-hover:block opacity-0 group-hover:opacity-100 group-hover:text-gray-600 dark:group-hover:text-gray-400">Turn on <span id="darkmode-label"></span> Mode</p>
|
||||||
|
</button>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
|
</div>
|
||||||
|
<div class="wompum-container wompum-container--wide-gap px-4 h-1">
|
||||||
|
<div class="wompum-grid"
|
||||||
|
data-text="{{ .Site.Title }}"
|
||||||
|
data-columns="7"
|
||||||
|
data-rows="1">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</header>
|
</header>
|
||||||
|
19
layouts/partials/image.html
Normal file
19
layouts/partials/image.html
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
{{ $width := .width }}
|
||||||
|
{{ $height := default $width .height }}
|
||||||
|
{{ $class := .class }}
|
||||||
|
{{ $resource := .resource }}
|
||||||
|
{{ $alt := .alt }}
|
||||||
|
|
||||||
|
{{ with $resource }}
|
||||||
|
{{ $image := .Fit (printf "%dx%d webp" (int $width) (int $height)) }}
|
||||||
|
{{ $fallback := .Fit (printf "%dx%d" (int $width) (int $height)) }}
|
||||||
|
<picture class="{{ $class }} block">
|
||||||
|
<source srcset="{{ $image.RelPermalink }}" type="image/webp">
|
||||||
|
<img
|
||||||
|
src="{{ $fallback.RelPermalink }}"
|
||||||
|
alt="{{ $alt }}"
|
||||||
|
width="{{ $width }}"
|
||||||
|
height="{{ $height }}"
|
||||||
|
loading="lazy">
|
||||||
|
</picture>
|
||||||
|
{{ end }}
|
25
layouts/partials/interview-list.html
Normal file
25
layouts/partials/interview-list.html
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
{{ $pages := .Pages }}
|
||||||
|
{{ range $pages }}
|
||||||
|
{{- $page := . -}}
|
||||||
|
{{- if reflect.IsMap . -}}
|
||||||
|
{{- $page = .page -}}
|
||||||
|
{{- end -}}
|
||||||
|
<li class="group flex md:flex-row flex-col md:gap-4 gap-2 md:items-center">
|
||||||
|
<div class="flex-1 min-w-0 flex gap-2 items-center h-full">
|
||||||
|
<a class="wompum-container h-full aspect-7/2 md:aspect-auto" href="{{ $page.RelPermalink }}">{{ partial "interview-wompum.html" $page }}</a>
|
||||||
|
<time class="text-gray-800 dark:text-sand-500 font-iosevka w-12 flex-shrink-0" datetime="{{ $page.Date.Format "2006-01-02" }}">
|
||||||
|
<p>{{ $page.Date.Format "Jan" }}</p>
|
||||||
|
<p>{{ $page.Date.Format "02" }}</p>
|
||||||
|
<p>{{ $page.Date.Format "2006" }}</p>
|
||||||
|
</time>
|
||||||
|
</div>
|
||||||
|
<div class="flex flex-col gap-2 md:w-3/5 flex-shrink-0 md:py-8">
|
||||||
|
<a class="interview-title interview-title--list" href="{{ $page.RelPermalink }}">{{ partial "interview-title" $page }}</a>
|
||||||
|
{{ if $page.Params.location }}
|
||||||
|
<p class="light:text-gray-800 dark:text-sand-100 italic">{{ $page.Params.location }}</p>
|
||||||
|
{{ end }}
|
||||||
|
<p class="max-w-prose">{{ $page.Params.summary }}</p>
|
||||||
|
{{ partial "topics.html" $page }}
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
{{ end }}
|
20
layouts/partials/interview-metadata.html
Normal file
20
layouts/partials/interview-metadata.html
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
<p><strong>Date:</strong> <time datetime="{{ .Date.Format " 2006-01-02" }}">{{ .Date.Format "January 2, 2006" }}</time></p>
|
||||||
|
<p><strong>Narrator:</strong> <a href="{{ "/narrator/" | relLangURL }}{{ .Params.narrator | urlize }}">{{ .Params.narrator }}</a></p>
|
||||||
|
<p><strong>Facilitator:</strong> <a href="{{ "/facilitator/" | relLangURL }}{{ .Params.facilitator | urlize }}">{{ .Params.facilitator }}</a></p>
|
||||||
|
<p><strong>Subject:</strong> {{ .Params.subject }}</p>
|
||||||
|
{{ if .Params.location }}
|
||||||
|
<p><strong>Location:</strong> {{ .Params.location }}</p>
|
||||||
|
{{ end }}
|
||||||
|
<p><strong>Topics:</strong> {{ partial "topics.html" . }}</p>
|
||||||
|
{{ if .Params.links }}
|
||||||
|
<div class="mt-4">
|
||||||
|
<p><strong>Learn more:</strong></p>
|
||||||
|
<ul class="list-disc pl-4 ml-4 mt-2">
|
||||||
|
{{ range .Params.links }}
|
||||||
|
<li class="mb-2">
|
||||||
|
<a href="{{ .url }}" target="_blank" rel="noopener noreferrer">{{ .text }} <sup>↗</sup></a>
|
||||||
|
</li>
|
||||||
|
{{ end }}
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
{{ end }}
|
3
layouts/partials/interview-title.html
Normal file
3
layouts/partials/interview-title.html
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
{{- if and .Params.narrator .Params.subject -}}
|
||||||
|
<span class="interview-title__narrator">{{- .Params.narrator }}</span> <span class="interview-title__subject">{{ .Params.subject -}}</span>
|
||||||
|
{{- end -}}
|
5
layouts/partials/interview-wompum.html
Normal file
5
layouts/partials/interview-wompum.html
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
<div class="wompum-interview-grid"
|
||||||
|
data-metadata="{{ dict "narrator" .Params.narrator "subject" .Params.subject "facilitator" .Params.facilitator | jsonify }}"
|
||||||
|
data-columns="7"
|
||||||
|
data-rows="5">
|
||||||
|
</div>
|
@@ -1,37 +0,0 @@
|
|||||||
{{- $tags := .tags -}}
|
|
||||||
{{- $limit := default 3 .limit -}}
|
|
||||||
{{- $currentPath := .page.RelPermalink -}}
|
|
||||||
|
|
||||||
{{- $related := where (where site.RegularPages "Type" "articles") "RelPermalink" "!=" $currentPath -}}
|
|
||||||
{{- $matchingArticles := slice -}}
|
|
||||||
|
|
||||||
{{/* First try to find articles with matching tags */}}
|
|
||||||
{{- range $related -}}
|
|
||||||
{{- $matches := 0 -}}
|
|
||||||
{{- range .Params.tags -}}
|
|
||||||
{{- if in $tags . -}}
|
|
||||||
{{- $matches = add $matches 1 -}}
|
|
||||||
{{- end -}}
|
|
||||||
{{- end -}}
|
|
||||||
{{- if gt $matches 0 -}}
|
|
||||||
{{- $matchingArticles = $matchingArticles | append (dict "page" . "matches" $matches) -}}
|
|
||||||
{{- end -}}
|
|
||||||
{{- end -}}
|
|
||||||
|
|
||||||
{{/* If we found matching articles, sort by number of matching tags */}}
|
|
||||||
{{- $finalArticles := slice -}}
|
|
||||||
{{- if gt (len $matchingArticles) 0 -}}
|
|
||||||
{{- $finalArticles = first $limit (sort $matchingArticles "matches" "desc") -}}
|
|
||||||
{{- else -}}
|
|
||||||
{{/* Fallback to showing other articles sorted by date */}}
|
|
||||||
{{- $finalArticles = first $limit (sort $related "Date" "desc") -}}
|
|
||||||
{{- end -}}
|
|
||||||
|
|
||||||
{{- if gt (len $finalArticles) 0 -}}
|
|
||||||
<div class="related-articles flex flex-col gap-4">
|
|
||||||
<h2 class="title text-3xl">Related Articles</h2>
|
|
||||||
<ul class="flex flex-col gap-4 w-full">
|
|
||||||
{{ partial "article-list" (dict "Pages" $finalArticles) }}
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
{{- end -}}
|
|
40
layouts/partials/related-interviews.html
Normal file
40
layouts/partials/related-interviews.html
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
{{- $topics := .topics -}}
|
||||||
|
{{- $limit := default 3 .limit -}}
|
||||||
|
{{- $currentPath := .page.RelPermalink -}}
|
||||||
|
|
||||||
|
{{- $related := where (where site.RegularPages "Type" "interviews") "RelPermalink" "!=" $currentPath -}}
|
||||||
|
{{- $matchingInterviews := slice -}}
|
||||||
|
|
||||||
|
{{/* First try to find interviews with matching topics */}}
|
||||||
|
{{- range $related -}}
|
||||||
|
{{- $matches := 0 -}}
|
||||||
|
{{- range .Params.topics -}}
|
||||||
|
{{- if in $topics . -}}
|
||||||
|
{{- $matches = add $matches 1 -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- if gt $matches 0 -}}
|
||||||
|
{{- $matchingInterviews = $matchingInterviews | append (dict "page" . "matches" $matches) -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/* If we found matching interviews, sort by number of matching topics */}}
|
||||||
|
{{- $finalInterviews := slice -}}
|
||||||
|
{{- if gt (len $matchingInterviews) 0 -}}
|
||||||
|
{{- $finalInterviews = first $limit (sort $matchingInterviews "matches" "desc") -}}
|
||||||
|
{{- else -}}
|
||||||
|
{{/* Fallback to showing other interviews sorted by date */}}
|
||||||
|
{{- $finalInterviews = first $limit (sort $related "Date" "desc") -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{- if gt (len $finalInterviews) 0 -}}
|
||||||
|
<div class="related-interviews flex flex-wrap gap-4">
|
||||||
|
<h2 class="title text-3xl font-bold">Related Interviews</h2>
|
||||||
|
<div class="wompum-container wompum-container--no-gap">
|
||||||
|
<div class="wompum-grid" data-text="Related Interviews" data-columns="8" data-rows="1"></div>
|
||||||
|
</div>
|
||||||
|
<ul class="flex flex-col gap-4 w-full">
|
||||||
|
{{ partial "interview-list" (dict "Pages" $finalInterviews) }}
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
{{- end -}}
|
@@ -1,54 +0,0 @@
|
|||||||
<div class="search-interface">
|
|
||||||
<form class="search-form" data-search-form>
|
|
||||||
<div class="search-input-group">
|
|
||||||
<input type="search"
|
|
||||||
name="q"
|
|
||||||
placeholder="Search interviews..."
|
|
||||||
class="search-input"
|
|
||||||
data-search-input>
|
|
||||||
<button type="button"
|
|
||||||
class="filter-toggle"
|
|
||||||
data-filter-toggle>
|
|
||||||
Filters
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="filter-panel" data-filter-panel>
|
|
||||||
<div class="filter-groups">
|
|
||||||
<div class="filter-group">
|
|
||||||
<h3>Tags</h3>
|
|
||||||
<div data-filter-tags></div>
|
|
||||||
</div>
|
|
||||||
<div class="filter-group">
|
|
||||||
<h3>Narrators</h3>
|
|
||||||
<div data-filter-narrators></div>
|
|
||||||
</div>
|
|
||||||
<div class="filter-group">
|
|
||||||
<h3>Facilitators</h3>
|
|
||||||
<div data-filter-facilitators></div>
|
|
||||||
</div>
|
|
||||||
<div class="filter-group col-span-full">
|
|
||||||
<h3>Date Range</h3>
|
|
||||||
<div class="flex gap-2">
|
|
||||||
<input type="date" name="date-from" data-date-from>
|
|
||||||
<input type="date" name="date-to" data-date-to>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="flex items-center gap-2">
|
|
||||||
<label>
|
|
||||||
<input type="checkbox" name="logic-mode" data-logic-mode>
|
|
||||||
Use OR logic for filters
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
|
|
||||||
<div class="results-count" data-results-count></div>
|
|
||||||
<div class="results-list" data-results></div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
{{ define "scripts" }}
|
|
||||||
<script src="https://cdn.jsdelivr.net/npm/fuse.js@7.0.0"></script>
|
|
||||||
<script src="/js/search.js"></script>
|
|
||||||
{{ end }}
|
|
@@ -1,25 +0,0 @@
|
|||||||
{{/* Partial: create_sigil.html */}}
|
|
||||||
|
|
||||||
{{- $input := . -}} <!-- The input string will be passed into the partial -->
|
|
||||||
{{- $vowels := "aeiouAEIOU" -}} <!-- List of vowels to remove -->
|
|
||||||
{{- $seen := dict -}} <!-- Dictionary to track characters we've already encountered -->
|
|
||||||
{{- $output := "" -}} <!-- Variable to store the resulting sigil -->
|
|
||||||
{{- $chars := split (replaceRE "[^a-zA-Z]" "" $input) "" -}} <!-- Remove non-alphabetic characters and split the input string into a slice of characters -->
|
|
||||||
|
|
||||||
{{- /* Step 1: Remove vowels */ -}}
|
|
||||||
{{- range $i, $char := $chars -}}
|
|
||||||
{{- if not (in $vowels $char) -}}
|
|
||||||
{{- /* Step 2: Remove repeating letters */ -}}
|
|
||||||
{{- if not (index $seen $char) -}}
|
|
||||||
{{- $seen = merge $seen (dict $char true) -}}
|
|
||||||
{{- $output = printf "%s%s" $output $char -}}
|
|
||||||
{{- end -}}
|
|
||||||
{{- end -}}
|
|
||||||
{{- end -}}
|
|
||||||
|
|
||||||
{{- $output = upper $output -}}
|
|
||||||
{{ $output = split $output "" }}
|
|
||||||
{{ $output = apply $output "printf" "%#x" "." }}
|
|
||||||
{{ $output = apply $output "int" "." }}
|
|
||||||
|
|
||||||
{{- $output -}}<br>
|
|
@@ -1,10 +0,0 @@
|
|||||||
{{- if .Params.tags }}
|
|
||||||
<div class="flex flex-wrap gap-2 my-2 text-xs">
|
|
||||||
{{- range .Params.tags }}
|
|
||||||
<a href="{{ "tags/" | relURL }}{{ . | urlize }}"
|
|
||||||
class="px-3 py-1 border border-green-100 hover:bg-green-300 text-green-900 rounded no-underline">
|
|
||||||
{{ . }}
|
|
||||||
</a>
|
|
||||||
{{- end }}
|
|
||||||
</div>
|
|
||||||
{{- end }}
|
|
16
layouts/partials/taxonomy-cloud.html
Normal file
16
layouts/partials/taxonomy-cloud.html
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
{{ $taxonomy := .taxonomy }}
|
||||||
|
{{ range $term, $pages := index .Site.Taxonomies $taxonomy }}
|
||||||
|
{{ $termPage := $.Site.GetPage (printf "/%s/%s" $taxonomy $term) }}
|
||||||
|
<a href="{{ $termPage.RelPermalink }}"
|
||||||
|
data-size="{{ len $pages }}"
|
||||||
|
class="tag font-bold
|
||||||
|
{{ if eq $.page.RelPermalink $termPage.RelPermalink }}hidden{{ else }}inline-block{{ end }}
|
||||||
|
data-[size=1]:text-sm data-[size=1]:font-normal data-[size=1]:opacity-90
|
||||||
|
data-[size=2]:text-base
|
||||||
|
data-[size=3]:text-xl
|
||||||
|
data-[size=4]:text-3xl
|
||||||
|
data-[size=5]:text-4xl"
|
||||||
|
data-count="{{ len $pages}}">
|
||||||
|
{{ $term }}
|
||||||
|
</a>
|
||||||
|
{{ end }}
|
10
layouts/partials/topics.html
Normal file
10
layouts/partials/topics.html
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
{{- if .Params.topics }}
|
||||||
|
<div class="tag-cloud flex flex-wrap gap-2 my-2 text-xs font-iosevka">
|
||||||
|
{{- range .Params.topics }}
|
||||||
|
<a href="{{ "topics/" | relURL }}{{ . | urlize }}"
|
||||||
|
class="tag no-underline">
|
||||||
|
{{ . }}
|
||||||
|
</a>
|
||||||
|
{{- end }}
|
||||||
|
</div>
|
||||||
|
{{- end }}
|
118
layouts/partials/wompum-demo.html
Normal file
118
layouts/partials/wompum-demo.html
Normal file
@@ -0,0 +1,118 @@
|
|||||||
|
<div class="wompum-demo max-w-2xl mx-auto">
|
||||||
|
<h2 class="text-2xl font-bold mb-4">What are the color grids?</h2>
|
||||||
|
|
||||||
|
<p>The color scheme on this website is inspired by <em><a href="http://n2t.net/ark:/65665/ws63912f5dd-e703-4759-8c31-33ac98b3c190">Constitutional Wampum</a></em> by Robert Houle. This is a tribute to the convergence in that work between the long legacy of political protocol-building through wampum belts in Indigenous communities of North America and a pixelated aesthetic that evokes life in the digital world. In the concept of protocol, the ancient practices and recent technologies converge.</p>
|
||||||
|
<p>The site uses the following protocol to generate the colorful wampum style grid.</p>
|
||||||
|
|
||||||
|
<div class="mb-8">
|
||||||
|
<label class="block mb-2">Enter text to generate a grid:</label>
|
||||||
|
<input type="text"
|
||||||
|
class="w-full p-2 border rounded font-iosevka bg-sand-100 dark:bg-gray-800"
|
||||||
|
placeholder="Type something..."
|
||||||
|
value="{{ .Site.Title}}"
|
||||||
|
oninput="updateWompumDemoGrid(this.value)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<p>First we generate a sigil by removing spaces, turning to lowercase, removing anything that isn't a consonant, removing repeat letters, find the unicode character number, and finally get the digital root of those numbers. From there the sigil digits are used to choose a color from our pallet.</p>
|
||||||
|
|
||||||
|
<ol class="transformation-steps mb-8 font-iosevka pl-0 list-['↪']">
|
||||||
|
<li>
|
||||||
|
<span class="font-bold md:inline block">Original Text:</span>
|
||||||
|
<span class="text-input-display"></span>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<span class="font-bold md:inline block">Lowercase:</span>
|
||||||
|
<span class="text-cleaned-display"></span>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<span class="font-bold md:inline block">Consonants only:</span>
|
||||||
|
<span class="text-consonants-display"></span>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<span class="font-bold md:inline block">Unique consonants:</span>
|
||||||
|
<span class="text-unique-display"></span>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<span class="font-bold md:inline block">Letters to numbers:</span>
|
||||||
|
<span class="text-sigil-numbers"></span>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<span class="font-bold md:inline block">Digital root:</span>
|
||||||
|
<span class="text-sigil-root"></span>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<span class="font-bold md:inline block">The final grid:</span>
|
||||||
|
</li>
|
||||||
|
</ol>
|
||||||
|
|
||||||
|
<div class="wompum-container wompum-container--demo h-48 mb-8">
|
||||||
|
<div class="wompum-grid h-full"
|
||||||
|
data-text="{{ .Site.Title}}"
|
||||||
|
data-columns="5"
|
||||||
|
data-rows="3">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
.wompum-container--demo {
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
.wompum-container--demo .wompum-cell {
|
||||||
|
position: relative;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
font-size: 2em;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
.wompum-container--demo .wompum-cell::after {
|
||||||
|
content: attr(data-sigil-digit);
|
||||||
|
font-size: 0.5em;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
// call function on page load
|
||||||
|
document.addEventListener('DOMContentLoaded', function() {
|
||||||
|
const input = document.querySelector('.wompum-demo input');
|
||||||
|
updateWompumDemo(input.value);
|
||||||
|
});
|
||||||
|
|
||||||
|
function updateWompumDemoGrid(text) {
|
||||||
|
|
||||||
|
updateWompumDemo(text);
|
||||||
|
|
||||||
|
// Update grid
|
||||||
|
const grid = document.querySelector('.wompum-demo .wompum-grid');
|
||||||
|
grid.dataset.text = text;
|
||||||
|
|
||||||
|
// Remove existing grid
|
||||||
|
while (grid.firstChild) {
|
||||||
|
grid.firstChild.remove();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Reinitialize grid
|
||||||
|
new WompumGrid(grid).init();
|
||||||
|
}
|
||||||
|
|
||||||
|
function updateWompumDemo(text) {
|
||||||
|
// Update displays
|
||||||
|
document.querySelector('.text-input-display').textContent = text;
|
||||||
|
document.querySelector('.text-cleaned-display').textContent = text.toLowerCase().replace(/[^a-z]/g, '');
|
||||||
|
document.querySelector('.text-consonants-display').textContent = text.toLowerCase().replace(/[^a-z]/g, '').replace(/[aeiou]/g, '');
|
||||||
|
|
||||||
|
const uniqueConsonants = [...new Set(text.toLowerCase().replace(/[^a-z]/g, '').replace(/[aeiou]/g, ''))].join('');
|
||||||
|
document.querySelector('.text-unique-display').textContent = uniqueConsonants;
|
||||||
|
|
||||||
|
// Show character to number conversion
|
||||||
|
const charNumbers = [...uniqueConsonants].map(char => char.charCodeAt(0)).join(', ');
|
||||||
|
document.querySelector('.text-sigil-numbers').textContent = charNumbers;
|
||||||
|
|
||||||
|
// Show digital root calculation
|
||||||
|
const sigilArray = Sigil.generate(text);
|
||||||
|
document.querySelector('.text-sigil-root').textContent = sigilArray.join(', ');
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</div>
|
@@ -1,12 +0,0 @@
|
|||||||
{{ define "main" }}
|
|
||||||
<h1 class="text-2xl font-bold">Topic: {{ .Title }}</h1>
|
|
||||||
<ul class="mt-4 space-y-4">
|
|
||||||
{{ range .Pages }}
|
|
||||||
<li>
|
|
||||||
<a href="{{ .RelPermalink }}" class="text-lg font-semibold hover:underline">
|
|
||||||
{{ .Title }}
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
{{ end }}
|
|
||||||
</ul>
|
|
||||||
{{ end }}
|
|
2699
package-lock.json
generated
2699
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
24
package.json
24
package.json
@@ -1,26 +1,8 @@
|
|||||||
{
|
{
|
||||||
"comments": {
|
|
||||||
"dependencies": {},
|
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@tailwindcss/typography": "hugo-starter-tailwind-basic",
|
"@tailwindcss/cli": "^4.0.0",
|
||||||
"autoprefixer": "hugo-starter-tailwind-basic",
|
"tailwindcss": "^4.0.0",
|
||||||
"postcss": "hugo-starter-tailwind-basic",
|
"@tailwindcss/typography": "^0.5.16"
|
||||||
"postcss-cli": "hugo-starter-tailwind-basic",
|
|
||||||
"postcss-purgecss": "hugo-starter-tailwind-basic",
|
|
||||||
"tailwindcss": "hugo-starter-tailwind-basic"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"devDependencies": {
|
|
||||||
"@tailwindcss/typography": "^0.4.1",
|
|
||||||
"autoprefixer": "^10.3.1",
|
|
||||||
"postcss": "^8.3.6",
|
|
||||||
"postcss-cli": "^8.3.1",
|
|
||||||
"postcss-purgecss": "^2.0.3",
|
|
||||||
"tailwindcss": "^2.2.7"
|
|
||||||
},
|
|
||||||
"scripts": {
|
|
||||||
"build:css": "postcss assets/css/tailwind.css -o static/css/tailwind.css",
|
|
||||||
"watch:css": "postcss assets/css/tailwind.css -o static/css/tailwind.css --watch"
|
|
||||||
},
|
},
|
||||||
"name": "protocol-oral-history-project",
|
"name": "protocol-oral-history-project",
|
||||||
"version": "0.1.0"
|
"version": "0.1.0"
|
||||||
|
@@ -1,6 +0,0 @@
|
|||||||
module.exports = {
|
|
||||||
plugins: {
|
|
||||||
tailwindcss: {},
|
|
||||||
autoprefixer: {},
|
|
||||||
},
|
|
||||||
};
|
|
BIN
static/images/og-default.jpg
Normal file
BIN
static/images/og-default.jpg
Normal file
Binary file not shown.
After ![]() (image error) Size: 66 KiB |
@@ -1,296 +0,0 @@
|
|||||||
class SearchInterface {
|
|
||||||
constructor() {
|
|
||||||
this.searchIndex = [];
|
|
||||||
this.fuse = null;
|
|
||||||
this.filters = {
|
|
||||||
tags: new Set(),
|
|
||||||
narrators: new Set(),
|
|
||||||
facilitators: new Set(),
|
|
||||||
dateFrom: null,
|
|
||||||
dateTo: null,
|
|
||||||
useOrLogic: false
|
|
||||||
};
|
|
||||||
|
|
||||||
this.init();
|
|
||||||
}
|
|
||||||
|
|
||||||
async init() {
|
|
||||||
try {
|
|
||||||
const response = await fetch('/search.json');
|
|
||||||
this.searchIndex = await response.json();
|
|
||||||
|
|
||||||
this.fuse = new Fuse(this.searchIndex, {
|
|
||||||
keys: ['title', 'content', 'summary', 'tags', 'narrator', 'facilitator'],
|
|
||||||
threshold: 0.3,
|
|
||||||
ignoreLocation: true,
|
|
||||||
useExtendedSearch: true
|
|
||||||
});
|
|
||||||
|
|
||||||
this.setupEventListeners();
|
|
||||||
this.populateFilterOptions();
|
|
||||||
this.initializeFromURL();
|
|
||||||
} catch (error) {
|
|
||||||
this.handleError(error, 'Failed to initialize search');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
handleError(error, message = 'Search error') {
|
|
||||||
console.error(message, error);
|
|
||||||
const resultsDiv = document.querySelector('[data-results]');
|
|
||||||
if (resultsDiv) {
|
|
||||||
resultsDiv.innerHTML = `
|
|
||||||
<div class="text-red-500 text-center py-8">
|
|
||||||
${message}. Please try again later.
|
|
||||||
</div>
|
|
||||||
`;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
debounce(func, wait) {
|
|
||||||
let timeout;
|
|
||||||
return (...args) => {
|
|
||||||
clearTimeout(timeout);
|
|
||||||
timeout = setTimeout(() => func.apply(this, args), wait);
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
setupEventListeners() {
|
|
||||||
const searchInput = document.querySelector('[data-search-input]');
|
|
||||||
const filterToggle = document.querySelector('[data-filter-toggle]');
|
|
||||||
const filterPanel = document.querySelector('[data-filter-panel]');
|
|
||||||
const logicMode = document.querySelector('[data-logic-mode]');
|
|
||||||
const dateInputs = document.querySelectorAll('[data-date-from], [data-date-to]');
|
|
||||||
|
|
||||||
if (searchInput) {
|
|
||||||
searchInput.addEventListener('input',
|
|
||||||
this.debounce(() => this.performSearch(), 300)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (filterToggle && filterPanel) {
|
|
||||||
filterToggle.addEventListener('click', () => {
|
|
||||||
filterPanel.classList.toggle('active');
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
if (logicMode) {
|
|
||||||
logicMode.addEventListener('change', () => {
|
|
||||||
this.filters.useOrLogic = logicMode.checked;
|
|
||||||
this.performSearch();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
dateInputs.forEach(input => {
|
|
||||||
input.addEventListener('change', () => this.performSearch());
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
performSearch() {
|
|
||||||
const searchInput = document.querySelector('[data-search-input]');
|
|
||||||
const dateFrom = document.querySelector('[data-date-from]');
|
|
||||||
const dateTo = document.querySelector('[data-date-to]');
|
|
||||||
const resultsDiv = document.querySelector('[data-results]');
|
|
||||||
const countDiv = document.querySelector('[data-results-count]');
|
|
||||||
|
|
||||||
// Get current search state
|
|
||||||
const query = searchInput?.value || '';
|
|
||||||
this.filters.dateFrom = this.parseDate(dateFrom?.value);
|
|
||||||
this.filters.dateTo = this.parseDate(dateTo?.value);
|
|
||||||
|
|
||||||
// Perform search
|
|
||||||
let results = query ? this.fuse.search(query) : this.searchIndex;
|
|
||||||
results = results.map(r => r.item || r); // Handle Fuse.js results format
|
|
||||||
|
|
||||||
// Apply filters
|
|
||||||
results = results.filter(item => {
|
|
||||||
const matchesTags = this.filters.tags.size === 0 || (item.tags &&
|
|
||||||
(this.filters.useOrLogic
|
|
||||||
? item.tags.some(tag => this.filters.tags.has(tag))
|
|
||||||
: item.tags.every(tag => this.filters.tags.has(tag))));
|
|
||||||
|
|
||||||
const matchesNarrator = this.filters.narrators.size === 0 ||
|
|
||||||
this.filters.narrators.has(item.narrator);
|
|
||||||
|
|
||||||
const matchesFacilitator = this.filters.facilitators.size === 0 ||
|
|
||||||
this.filters.facilitators.has(item.facilitator);
|
|
||||||
|
|
||||||
const itemDate = new Date(item.date);
|
|
||||||
const afterStartDate = !this.filters.dateFrom ||
|
|
||||||
itemDate >= new Date(this.filters.dateFrom);
|
|
||||||
const beforeEndDate = !this.filters.dateTo ||
|
|
||||||
itemDate <= new Date(this.filters.dateTo);
|
|
||||||
|
|
||||||
return matchesTags && matchesNarrator && matchesFacilitator &&
|
|
||||||
afterStartDate && beforeEndDate;
|
|
||||||
});
|
|
||||||
|
|
||||||
// Update URL state
|
|
||||||
const params = new URLSearchParams();
|
|
||||||
if (query) params.set('q', query);
|
|
||||||
if (this.filters.dateFrom) params.set('from', this.filters.dateFrom);
|
|
||||||
if (this.filters.dateTo) params.set('to', this.filters.dateTo);
|
|
||||||
if (this.filters.useOrLogic) params.set('logic', 'or');
|
|
||||||
if (this.filters.tags.size) params.set('tags', Array.from(this.filters.tags).join(','));
|
|
||||||
if (this.filters.narrators.size) params.set('narrators', Array.from(this.filters.narrators).join(','));
|
|
||||||
if (this.filters.facilitators.size) params.set('facilitators', Array.from(this.filters.facilitators).join(','));
|
|
||||||
|
|
||||||
const newUrl = `${window.location.pathname}${params.toString() ? '?' + params.toString() : ''}`;
|
|
||||||
window.history.replaceState({}, '', newUrl);
|
|
||||||
|
|
||||||
// Render results
|
|
||||||
if (resultsDiv) {
|
|
||||||
if (results.length === 0) {
|
|
||||||
resultsDiv.innerHTML = `
|
|
||||||
<div class="text-gray-500 text-center py-8">
|
|
||||||
No results found. Try adjusting your search or filters.
|
|
||||||
</div>
|
|
||||||
`;
|
|
||||||
} else {
|
|
||||||
resultsDiv.innerHTML = results.map(item => `
|
|
||||||
<article class="border-b border-gray-200 pb-4">
|
|
||||||
<h3 class="text-xl font-semibold">
|
|
||||||
<a href="${item.url}" class="hover:text-blue-600">${item.title}</a>
|
|
||||||
</h3>
|
|
||||||
<div class="flex gap-2 text-sm text-gray-600 mt-1">
|
|
||||||
<span>${item.narrator}</span>
|
|
||||||
<span>•</span>
|
|
||||||
<span>${new Date(item.date).toLocaleDateString()}</span>
|
|
||||||
</div>
|
|
||||||
${item.tags ? `
|
|
||||||
<div class="flex gap-2 mt-2">
|
|
||||||
${item.tags.map(tag => `
|
|
||||||
<span class="text-xs bg-gray-100 text-gray-600 px-2 py-1 rounded">
|
|
||||||
${tag}
|
|
||||||
</span>
|
|
||||||
`).join('')}
|
|
||||||
</div>
|
|
||||||
` : ''}
|
|
||||||
<p class="mt-2 text-gray-600">${item.summary}</p>
|
|
||||||
</article>
|
|
||||||
`).join('');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Update count
|
|
||||||
if (countDiv) {
|
|
||||||
countDiv.textContent = `${results.length} result${results.length === 1 ? '' : 's'} found`;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
populateFilterOptions() {
|
|
||||||
const tagsContainer = document.querySelector('[data-filter-tags]');
|
|
||||||
const narratorsContainer = document.querySelector('[data-filter-narrators]');
|
|
||||||
const facilitatorsContainer = document.querySelector('[data-filter-facilitators]');
|
|
||||||
|
|
||||||
// Get unique values
|
|
||||||
const tags = new Set(this.searchIndex.flatMap(item => item.tags || []));
|
|
||||||
const narrators = new Set(this.searchIndex.map(item => item.narrator).filter(Boolean));
|
|
||||||
const facilitators = new Set(this.searchIndex.map(item => item.facilitator).filter(Boolean));
|
|
||||||
|
|
||||||
// Helper to create filter options
|
|
||||||
const createFilterOption = (value, container, filterSet) => {
|
|
||||||
const label = document.createElement('label');
|
|
||||||
label.className = 'flex items-center gap-2 text-sm';
|
|
||||||
|
|
||||||
const checkbox = document.createElement('input');
|
|
||||||
checkbox.type = 'checkbox';
|
|
||||||
checkbox.value = value;
|
|
||||||
checkbox.checked = filterSet.has(value);
|
|
||||||
checkbox.addEventListener('change', () => {
|
|
||||||
if (checkbox.checked) {
|
|
||||||
filterSet.add(value);
|
|
||||||
} else {
|
|
||||||
filterSet.delete(value);
|
|
||||||
}
|
|
||||||
this.performSearch();
|
|
||||||
});
|
|
||||||
|
|
||||||
label.appendChild(checkbox);
|
|
||||||
label.appendChild(document.createTextNode(value));
|
|
||||||
container?.appendChild(label);
|
|
||||||
};
|
|
||||||
|
|
||||||
// Populate filters
|
|
||||||
if (tagsContainer) {
|
|
||||||
tagsContainer.innerHTML = '';
|
|
||||||
Array.from(tags).sort().forEach(tag =>
|
|
||||||
createFilterOption(tag, tagsContainer, this.filters.tags)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (narratorsContainer) {
|
|
||||||
narratorsContainer.innerHTML = '';
|
|
||||||
Array.from(narrators).sort().forEach(narrator =>
|
|
||||||
createFilterOption(narrator, narratorsContainer, this.filters.narrators)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (facilitatorsContainer) {
|
|
||||||
facilitatorsContainer.innerHTML = '';
|
|
||||||
Array.from(facilitators).sort().forEach(facilitator =>
|
|
||||||
createFilterOption(facilitator, facilitatorsContainer, this.filters.facilitators)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
initializeFromURL() {
|
|
||||||
const params = new URLSearchParams(window.location.search);
|
|
||||||
const searchInput = document.querySelector('[data-search-input]');
|
|
||||||
const dateFrom = document.querySelector('[data-date-from]');
|
|
||||||
const dateTo = document.querySelector('[data-date-to]');
|
|
||||||
const logicMode = document.querySelector('[data-logic-mode]');
|
|
||||||
|
|
||||||
// Restore search query
|
|
||||||
if (searchInput && params.has('q')) {
|
|
||||||
searchInput.value = params.get('q');
|
|
||||||
}
|
|
||||||
|
|
||||||
// Restore date filters
|
|
||||||
if (dateFrom && params.has('from')) {
|
|
||||||
dateFrom.value = params.get('from');
|
|
||||||
this.filters.dateFrom = params.get('from');
|
|
||||||
}
|
|
||||||
if (dateTo && params.has('to')) {
|
|
||||||
dateTo.value = params.get('to');
|
|
||||||
this.filters.dateTo = params.get('to');
|
|
||||||
}
|
|
||||||
|
|
||||||
// Restore logic mode
|
|
||||||
if (logicMode) {
|
|
||||||
this.filters.useOrLogic = params.get('logic') === 'or';
|
|
||||||
logicMode.checked = this.filters.useOrLogic;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Restore filter selections
|
|
||||||
if (params.has('tags')) {
|
|
||||||
params.get('tags').split(',').forEach(tag => this.filters.tags.add(tag));
|
|
||||||
}
|
|
||||||
if (params.has('narrators')) {
|
|
||||||
params.get('narrators').split(',').forEach(narrator => this.filters.narrators.add(narrator));
|
|
||||||
}
|
|
||||||
if (params.has('facilitators')) {
|
|
||||||
params.get('facilitators').split(',').forEach(facilitator => this.filters.facilitators.add(facilitator));
|
|
||||||
}
|
|
||||||
|
|
||||||
// Perform initial search if we have any parameters
|
|
||||||
if ([...params.keys()].length > 0) {
|
|
||||||
this.performSearch();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
parseDate(dateString) {
|
|
||||||
try {
|
|
||||||
return dateString ? new Date(dateString) : null;
|
|
||||||
} catch (error) {
|
|
||||||
this.handleError(error, 'Invalid date format');
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Initialize search when DOM is ready
|
|
||||||
if (document.readyState === 'loading') {
|
|
||||||
document.addEventListener('DOMContentLoaded', () => new SearchInterface());
|
|
||||||
} else {
|
|
||||||
new SearchInterface();
|
|
||||||
}
|
|
@@ -1,149 +0,0 @@
|
|||||||
class WompumGrid {
|
|
||||||
constructor(element, metadata) {
|
|
||||||
this.gridElement = element;
|
|
||||||
this.metadata = metadata;
|
|
||||||
this.gridSize = {
|
|
||||||
columns: parseInt(element.dataset.columns) || 7,
|
|
||||||
rows: parseInt(element.dataset.rows) || 5
|
|
||||||
};
|
|
||||||
|
|
||||||
// Set grid template columns based on data attribute or default
|
|
||||||
this.gridElement.style.gridTemplateColumns = `repeat(${this.gridSize.columns}, 1fr)`;
|
|
||||||
|
|
||||||
// Generate sigils for each metadata component
|
|
||||||
this.sigils = {
|
|
||||||
narrator: Sigil.generate(metadata.narrator),
|
|
||||||
subject: Sigil.generate(metadata.subject),
|
|
||||||
facilitator: Sigil.generate(metadata.facilitator)
|
|
||||||
};
|
|
||||||
|
|
||||||
// Initialize color calculator
|
|
||||||
this.colorCalculator = new ColorCalculator();
|
|
||||||
|
|
||||||
// Store sigils as data attributes for future use
|
|
||||||
this.gridElement.dataset.narratorSigil = JSON.stringify(this.sigils.narrator);
|
|
||||||
this.gridElement.dataset.subjectSigil = JSON.stringify(this.sigils.subject);
|
|
||||||
this.gridElement.dataset.facilitatorSigil = JSON.stringify(this.sigils.facilitator);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Get sigil digit for a cell based on its section and position
|
|
||||||
getSigilDigit(section, position) {
|
|
||||||
const sigil = this.sigils[section];
|
|
||||||
if (!sigil || !sigil.length) return 0;
|
|
||||||
return sigil[position % sigil.length];
|
|
||||||
}
|
|
||||||
|
|
||||||
// Get influences from adjacent cells
|
|
||||||
getInfluences(column, row) {
|
|
||||||
const influences = [];
|
|
||||||
|
|
||||||
// Check adjacent cells (up, down, left, right)
|
|
||||||
const adjacentPositions = [
|
|
||||||
[column, row - 1], // up
|
|
||||||
[column, row + 1], // down
|
|
||||||
[column - 1, row], // left
|
|
||||||
[column + 1, row] // right
|
|
||||||
];
|
|
||||||
|
|
||||||
for (const [adjCol, adjRow] of adjacentPositions) {
|
|
||||||
if (adjCol >= 0 && adjCol < this.gridSize.columns &&
|
|
||||||
adjRow >= 0 && adjRow < this.gridSize.rows) {
|
|
||||||
const cell = this.gridElement.querySelector(
|
|
||||||
`[data-column="${adjCol}"][data-row="${adjRow}"]`
|
|
||||||
);
|
|
||||||
if (cell && cell.dataset.sigilDigit) {
|
|
||||||
influences.push(parseInt(cell.dataset.sigilDigit));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return influences;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Apply metadata-based design to the grid
|
|
||||||
applyMetadataDesign() {
|
|
||||||
const cells = this.gridElement.querySelectorAll('.wompum-cell');
|
|
||||||
|
|
||||||
cells.forEach(cell => {
|
|
||||||
const section = cell.dataset.section;
|
|
||||||
const column = parseInt(cell.dataset.column);
|
|
||||||
const row = parseInt(cell.dataset.row);
|
|
||||||
|
|
||||||
// Get sigil digit for this cell
|
|
||||||
const sigilDigit = this.getSigilDigit(section, row);
|
|
||||||
cell.dataset.sigilDigit = sigilDigit;
|
|
||||||
|
|
||||||
// Get influences from adjacent cells
|
|
||||||
const influences = this.getInfluences(column, row);
|
|
||||||
|
|
||||||
// Calculate and apply color
|
|
||||||
const color = this.colorCalculator.getColor(sigilDigit, influences);
|
|
||||||
cell.style.backgroundColor = color;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
// Initialize the grid
|
|
||||||
init() {
|
|
||||||
if (!this.gridElement) return;
|
|
||||||
this.createGrid();
|
|
||||||
this.applyMetadataDesign();
|
|
||||||
this.setGridAreas();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Define grid areas for each section
|
|
||||||
setGridAreas() {
|
|
||||||
const totalColumns = this.gridSize.columns;
|
|
||||||
const narratorColumns = 2;
|
|
||||||
const facilitatorColumns = 2;
|
|
||||||
const subjectColumns = totalColumns - narratorColumns - facilitatorColumns;
|
|
||||||
|
|
||||||
this.gridElement.style.gridTemplateAreas = `
|
|
||||||
"narrator subject facilitator"
|
|
||||||
`;
|
|
||||||
// this.gridElement.style.gridTemplateColumns = `${narratorColumns}fr ${subjectColumns}fr ${facilitatorColumns}fr`;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Create the grid cells with position awareness
|
|
||||||
createGrid() {
|
|
||||||
const totalCells = this.gridSize.columns * this.gridSize.rows;
|
|
||||||
|
|
||||||
for (let i = 0; i < totalCells; i++) {
|
|
||||||
const cell = document.createElement('div');
|
|
||||||
const column = i % this.gridSize.columns;
|
|
||||||
const row = Math.floor(i / this.gridSize.columns);
|
|
||||||
|
|
||||||
// Determine which section this cell belongs to
|
|
||||||
let section;
|
|
||||||
if (column < 2) section = 'narrator';
|
|
||||||
else if (column >= this.gridSize.columns - 2) section = 'facilitator';
|
|
||||||
else section = 'subject';
|
|
||||||
|
|
||||||
cell.className = 'wompum-cell';
|
|
||||||
cell.setAttribute('data-cell-index', i);
|
|
||||||
cell.setAttribute('data-section', section);
|
|
||||||
cell.setAttribute('data-column', column);
|
|
||||||
cell.setAttribute('data-row', row);
|
|
||||||
|
|
||||||
this.gridElement.appendChild(cell);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Wait for DOM to be ready
|
|
||||||
document.addEventListener('DOMContentLoaded', () => {
|
|
||||||
// Find all grid elements
|
|
||||||
const gridElements = document.querySelectorAll('.wompum-grid');
|
|
||||||
|
|
||||||
// Initialize a grid for each element found
|
|
||||||
gridElements.forEach(element => {
|
|
||||||
let metadata = {};
|
|
||||||
try {
|
|
||||||
metadata = JSON.parse(element.dataset.metadata || '{}');
|
|
||||||
} catch (e) {
|
|
||||||
console.error('Error parsing metadata for grid:', e);
|
|
||||||
}
|
|
||||||
|
|
||||||
const wompum = new WompumGrid(element, metadata);
|
|
||||||
wompum.init();
|
|
||||||
});
|
|
||||||
});
|
|
@@ -1,18 +1,8 @@
|
|||||||
module.exports = {
|
/*
|
||||||
content: [
|
This file is present to satisy a requiremenet of the Tailwind CSS IntelliSense
|
||||||
'./layouts/**/*.html',
|
extension for Visual Studio Code.
|
||||||
'./content/**/*.md',
|
|
||||||
'./assets/scss/**/*.scss',
|
https://marketplace.visualstudio.com/items?itemName=bradlc.vscode-tailwindcss
|
||||||
],
|
|
||||||
theme: {
|
The rest of this file is intentionally empty.
|
||||||
extend: {
|
*/
|
||||||
fontFamily: {
|
|
||||||
'garamond': ['EB Garamond 12', 'serif'],
|
|
||||||
'iosevka': ['Iosevka', 'monospace'],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
plugins: [
|
|
||||||
require('@tailwindcss/typography'),
|
|
||||||
],
|
|
||||||
};
|
|
||||||
|
@@ -1,4 +0,0 @@
|
|||||||
node_modules/
|
|
||||||
public/
|
|
||||||
resources/
|
|
||||||
.hugo_build.lock
|
|
@@ -1,3 +0,0 @@
|
|||||||
{
|
|
||||||
"autoHide.autoHidePanel": false
|
|
||||||
}
|
|
@@ -1,21 +0,0 @@
|
|||||||
MIT License
|
|
||||||
|
|
||||||
Copyright (c) 2020 Bjørn Erik Pedersen
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
|
||||||
in the Software without restriction, including without limitation the rights
|
|
||||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
copies of the Software, and to permit persons to whom the Software is
|
|
||||||
furnished to do so, subject to the following conditions:
|
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be included in all
|
|
||||||
copies or substantial portions of the Software.
|
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
||||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
||||||
SOFTWARE.
|
|
@@ -1,58 +0,0 @@
|
|||||||
# Hugo Basic Starter for TailwindCSS v3.x
|
|
||||||
|
|
||||||
[](https://app.netlify.com/sites/lucid-nightingale-60a4e2/deploys)
|
|
||||||
|
|
||||||
A very simple starter set up with [TailwindCSS](https://tailwindcss.com/) and its [typography plugin](https://tailwindcss.com/docs/typography-plugin) and a build setup using [PostCSS](https://postcss.org/) and PurgeCSS (when running the production build).
|
|
||||||
|
|
||||||
In the preview deployment on Netlify it currently has a 100 score on both mobile and desktop on [Google PageSpeed](https://developers.google.com/speed/pagespeed/insights/?url=https%3A%2F%2Flucid-nightingale-60a4e2.netlify.app%2F&tab=mobile).
|
|
||||||
|
|
||||||
|
|
||||||
This setup can be used both as a starter project and a theme.
|
|
||||||
|
|
||||||
## As a Project
|
|
||||||
|
|
||||||
```bash
|
|
||||||
npm install
|
|
||||||
hugo server
|
|
||||||
```
|
|
||||||
|
|
||||||
## As a Theme
|
|
||||||
|
|
||||||
Import `github.com/bep/hugo-starter-tailwind-basic/v3` (use `github.com/bep/hugo-starter-tailwind-basic/v2` if you want/need Tailwind 2.x.) into your project, and then run:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
hugo mod npm pack
|
|
||||||
npm install
|
|
||||||
```
|
|
||||||
|
|
||||||
You need to add (something like) this to your `hugo.toml`:
|
|
||||||
|
|
||||||
```toml
|
|
||||||
[module]
|
|
||||||
[module.hugoVersion]
|
|
||||||
extended = false
|
|
||||||
min = "0.112.0"
|
|
||||||
[[module.mounts]]
|
|
||||||
source = "assets"
|
|
||||||
target = "assets"
|
|
||||||
[[module.mounts]]
|
|
||||||
source = "hugo_stats.json"
|
|
||||||
target = "assets/watching/hugo_stats.json"
|
|
||||||
|
|
||||||
[build]
|
|
||||||
writeStats = true
|
|
||||||
[[build.cachebusters]]
|
|
||||||
source = "assets/watching/hugo_stats\\.json"
|
|
||||||
target = "styles\\.css"
|
|
||||||
[[build.cachebusters]]
|
|
||||||
source = "(postcss|tailwind)\\.config\\.js"
|
|
||||||
target = "css"
|
|
||||||
[[build.cachebusters]]
|
|
||||||
source = "assets/.*\\.(js|ts|jsx|tsx)"
|
|
||||||
target = "js"
|
|
||||||
[[build.cachebusters]]
|
|
||||||
source = "assets/.*\\.(.*)$"
|
|
||||||
target = "$1"
|
|
||||||
```
|
|
||||||
|
|
||||||
Then run your project as usual.
|
|
@@ -1 +0,0 @@
|
|||||||
@import "buttons.css";
|
|
@@ -1,15 +0,0 @@
|
|||||||
@tailwind base;
|
|
||||||
@tailwind components;
|
|
||||||
@tailwind utilities;
|
|
||||||
|
|
||||||
@import "components/all.css";
|
|
||||||
|
|
||||||
html {
|
|
||||||
font-size: 14px;
|
|
||||||
}
|
|
||||||
|
|
||||||
@screen md {
|
|
||||||
html {
|
|
||||||
font-size: 20px;
|
|
||||||
}
|
|
||||||
}
|
|
@@ -1,311 +0,0 @@
|
|||||||
---
|
|
||||||
title: TailwindCSS Basic Hugo Starter
|
|
||||||
---
|
|
||||||
|
|
||||||
## Overview
|
|
||||||
|
|
||||||
### Philosophy
|
|
||||||
|
|
||||||
Markdown is intended to be as easy-to-read and easy-to-write as is feasible.
|
|
||||||
|
|
||||||
Readability, however, is emphasized above all else. A Markdown-formatted
|
|
||||||
document should be publishable as-is, as plain text, without looking
|
|
||||||
like it's been marked up with tags or formatting instructions. While
|
|
||||||
Markdown's syntax has been influenced by several existing text-to-HTML
|
|
||||||
filters -- including [Setext](http://docutils.sourceforge.net/mirror/setext.html), [atx](http://www.aaronsw.com/2002/atx/), [Textile](http://textism.com/tools/textile/), [reStructuredText](http://docutils.sourceforge.net/rst.html),
|
|
||||||
[Grutatext](http://www.triptico.com/software/grutatxt.html), and [EtText](http://ettext.taint.org/doc/) -- the single biggest source of
|
|
||||||
inspiration for Markdown's syntax is the format of plain text email.
|
|
||||||
|
|
||||||
```go
|
|
||||||
// New creates a new Workers with the given number of workers.
|
|
||||||
func New(numWorkers int) *Workers {
|
|
||||||
return &Workers{
|
|
||||||
sem: make(chan struct{}, numWorkers),
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## Block Elements
|
|
||||||
|
|
||||||
### Paragraphs and Line Breaks
|
|
||||||
|
|
||||||
A paragraph is simply one or more consecutive lines of text, separated
|
|
||||||
by one or more blank lines. (A blank line is any line that looks like a
|
|
||||||
blank line -- a line containing nothing but spaces or tabs is considered
|
|
||||||
blank.) Normal paragraphs should not be indented with spaces or tabs.
|
|
||||||
|
|
||||||
The implication of the "one or more consecutive lines of text" rule is
|
|
||||||
that Markdown supports "hard-wrapped" text paragraphs. This differs
|
|
||||||
significantly from most other text-to-HTML formatters (including Movable
|
|
||||||
Type's "Convert Line Breaks" option) which translate every line break
|
|
||||||
character in a paragraph into a `<br />` tag.
|
|
||||||
|
|
||||||
When you *do* want to insert a `<br />` break tag using Markdown, you
|
|
||||||
end a line with two or more spaces, then type return.
|
|
||||||
|
|
||||||
### Headers
|
|
||||||
|
|
||||||
Markdown supports two styles of headers, [Setext] [1] and [atx] [2].
|
|
||||||
|
|
||||||
|
|
||||||
```go
|
|
||||||
// Require loads a module the Node.js way.
|
|
||||||
// Note that this requires that the require function is present;
|
|
||||||
// if in the browser, and not in Node.js, try Browserify.
|
|
||||||
func Require(path ...string) *ReactComponent {
|
|
||||||
m, err := support.Require(path...)
|
|
||||||
if err != nil {
|
|
||||||
panic(err)
|
|
||||||
}
|
|
||||||
return &ReactComponent{node: m, needsCreate: true}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
Optionally, you may "close" atx-style headers. This is purely
|
|
||||||
cosmetic -- you can use this if you think it looks better. The
|
|
||||||
closing hashes don't even need to match the number of hashes
|
|
||||||
used to open the header. (The number of opening hashes
|
|
||||||
determines the header level.)
|
|
||||||
|
|
||||||
|
|
||||||
### Blockquotes
|
|
||||||
|
|
||||||
Markdown uses email-style `>` characters for blockquoting. If you're
|
|
||||||
familiar with quoting passages of text in an email message, then you
|
|
||||||
know how to create a blockquote in Markdown. It looks best if you hard
|
|
||||||
wrap the text and put a `>` before every line:
|
|
||||||
|
|
||||||
> This is a blockquote with two paragraphs. Lorem ipsum dolor sit amet,
|
|
||||||
> consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.
|
|
||||||
> Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.
|
|
||||||
>
|
|
||||||
> Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse
|
|
||||||
> id sem consectetuer libero luctus adipiscing.
|
|
||||||
|
|
||||||
Markdown allows you to be lazy and only put the `>` before the first
|
|
||||||
line of a hard-wrapped paragraph:
|
|
||||||
|
|
||||||
> This is a blockquote with two paragraphs. Lorem ipsum dolor sit amet,
|
|
||||||
consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.
|
|
||||||
Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.
|
|
||||||
|
|
||||||
> Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse
|
|
||||||
id sem consectetuer libero luctus adipiscing.
|
|
||||||
|
|
||||||
Blockquotes can be nested (i.e. a blockquote-in-a-blockquote) by
|
|
||||||
adding additional levels of `>`:
|
|
||||||
|
|
||||||
> This is the first level of quoting.
|
|
||||||
>
|
|
||||||
> > This is nested blockquote.
|
|
||||||
>
|
|
||||||
> Back to the first level.
|
|
||||||
|
|
||||||
Blockquotes can contain other Markdown elements, including headers, lists,
|
|
||||||
and code blocks:
|
|
||||||
|
|
||||||
> ## This is a header.
|
|
||||||
>
|
|
||||||
> 1. This is the first list item.
|
|
||||||
> 2. This is the second list item.
|
|
||||||
>
|
|
||||||
> Here's some example code:
|
|
||||||
>
|
|
||||||
> return shell_exec("echo $input | $markdown_script");
|
|
||||||
|
|
||||||
Any decent text editor should make email-style quoting easy. For
|
|
||||||
example, with BBEdit, you can make a selection and choose Increase
|
|
||||||
Quote Level from the Text menu.
|
|
||||||
|
|
||||||
|
|
||||||
### Lists
|
|
||||||
|
|
||||||
Markdown supports ordered (numbered) and unordered (bulleted) lists.
|
|
||||||
|
|
||||||
Unordered lists use asterisks, pluses, and hyphens -- interchangably
|
|
||||||
-- as list markers:
|
|
||||||
|
|
||||||
* Red
|
|
||||||
* Green
|
|
||||||
* Blue
|
|
||||||
|
|
||||||
is equivalent to:
|
|
||||||
|
|
||||||
+ Red
|
|
||||||
+ Green
|
|
||||||
+ Blue
|
|
||||||
|
|
||||||
and:
|
|
||||||
|
|
||||||
- Red
|
|
||||||
- Green
|
|
||||||
- Blue
|
|
||||||
|
|
||||||
Ordered lists use numbers followed by periods:
|
|
||||||
|
|
||||||
1. Bird
|
|
||||||
2. McHale
|
|
||||||
3. Parish
|
|
||||||
|
|
||||||
It's important to note that the actual numbers you use to mark the
|
|
||||||
list have no effect on the HTML output Markdown produces. The HTML
|
|
||||||
Markdown produces from the above list is:
|
|
||||||
|
|
||||||
If you instead wrote the list in Markdown like this:
|
|
||||||
|
|
||||||
1. Bird
|
|
||||||
1. McHale
|
|
||||||
1. Parish
|
|
||||||
|
|
||||||
or even:
|
|
||||||
|
|
||||||
3. Bird
|
|
||||||
1. McHale
|
|
||||||
8. Parish
|
|
||||||
|
|
||||||
you'd get the exact same HTML output. The point is, if you want to,
|
|
||||||
you can use ordinal numbers in your ordered Markdown lists, so that
|
|
||||||
the numbers in your source match the numbers in your published HTML.
|
|
||||||
But if you want to be lazy, you don't have to.
|
|
||||||
|
|
||||||
To make lists look nice, you can wrap items with hanging indents:
|
|
||||||
|
|
||||||
* Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
|
|
||||||
Aliquam hendrerit mi posuere lectus. Vestibulum enim wisi,
|
|
||||||
viverra nec, fringilla in, laoreet vitae, risus.
|
|
||||||
* Donec sit amet nisl. Aliquam semper ipsum sit amet velit.
|
|
||||||
Suspendisse id sem consectetuer libero luctus adipiscing.
|
|
||||||
|
|
||||||
But if you want to be lazy, you don't have to:
|
|
||||||
|
|
||||||
* Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
|
|
||||||
Aliquam hendrerit mi posuere lectus. Vestibulum enim wisi,
|
|
||||||
viverra nec, fringilla in, laoreet vitae, risus.
|
|
||||||
* Donec sit amet nisl. Aliquam semper ipsum sit amet velit.
|
|
||||||
Suspendisse id sem consectetuer libero luctus adipiscing.
|
|
||||||
|
|
||||||
List items may consist of multiple paragraphs. Each subsequent
|
|
||||||
paragraph in a list item must be indented by either 4 spaces
|
|
||||||
or one tab:
|
|
||||||
|
|
||||||
1. This is a list item with two paragraphs. Lorem ipsum dolor
|
|
||||||
sit amet, consectetuer adipiscing elit. Aliquam hendrerit
|
|
||||||
mi posuere lectus.
|
|
||||||
|
|
||||||
Vestibulum enim wisi, viverra nec, fringilla in, laoreet
|
|
||||||
vitae, risus. Donec sit amet nisl. Aliquam semper ipsum
|
|
||||||
sit amet velit.
|
|
||||||
|
|
||||||
2. Suspendisse id sem consectetuer libero luctus adipiscing.
|
|
||||||
|
|
||||||
It looks nice if you indent every line of the subsequent
|
|
||||||
paragraphs, but here again, Markdown will allow you to be
|
|
||||||
lazy:
|
|
||||||
|
|
||||||
* This is a list item with two paragraphs.
|
|
||||||
|
|
||||||
This is the second paragraph in the list item. You're
|
|
||||||
only required to indent the first line. Lorem ipsum dolor
|
|
||||||
sit amet, consectetuer adipiscing elit.
|
|
||||||
|
|
||||||
* Another item in the same list.
|
|
||||||
|
|
||||||
To put a blockquote within a list item, the blockquote's `>`
|
|
||||||
delimiters need to be indented:
|
|
||||||
|
|
||||||
* A list item with a blockquote:
|
|
||||||
|
|
||||||
> This is a blockquote
|
|
||||||
> inside a list item.
|
|
||||||
|
|
||||||
To put a code block within a list item, the code block needs
|
|
||||||
to be indented *twice* -- 8 spaces or two tabs:
|
|
||||||
|
|
||||||
* A list item with a code block:
|
|
||||||
|
|
||||||
<code goes here>
|
|
||||||
|
|
||||||
### Code Blocks
|
|
||||||
|
|
||||||
Pre-formatted code blocks are used for writing about programming or
|
|
||||||
markup source code. Rather than forming normal paragraphs, the lines
|
|
||||||
of a code block are interpreted literally. Markdown wraps a code block
|
|
||||||
in both `<pre>` and `<code>` tags.
|
|
||||||
|
|
||||||
To produce a code block in Markdown, simply indent every line of the
|
|
||||||
block by at least 4 spaces or 1 tab.
|
|
||||||
|
|
||||||
This is a normal paragraph:
|
|
||||||
|
|
||||||
This is a code block.
|
|
||||||
|
|
||||||
Here is an example of AppleScript:
|
|
||||||
|
|
||||||
tell application "Foo"
|
|
||||||
beep
|
|
||||||
end tell
|
|
||||||
|
|
||||||
A code block continues until it reaches a line that is not indented
|
|
||||||
(or the end of the article).
|
|
||||||
|
|
||||||
Within a code block, ampersands (`&`) and angle brackets (`<` and `>`)
|
|
||||||
are automatically converted into HTML entities. This makes it very
|
|
||||||
easy to include example HTML source code using Markdown -- just paste
|
|
||||||
it and indent it, and Markdown will handle the hassle of encoding the
|
|
||||||
ampersands and angle brackets. For example, this:
|
|
||||||
|
|
||||||
<div class="footer">
|
|
||||||
© 2004 Foo Corporation
|
|
||||||
</div>
|
|
||||||
|
|
||||||
Regular Markdown syntax is not processed within code blocks. E.g.,
|
|
||||||
asterisks are just literal asterisks within a code block. This means
|
|
||||||
it's also easy to use Markdown to write about Markdown's own syntax.
|
|
||||||
|
|
||||||
```
|
|
||||||
tell application "Foo"
|
|
||||||
beep
|
|
||||||
end tell
|
|
||||||
```
|
|
||||||
|
|
||||||
## Span Elements
|
|
||||||
|
|
||||||
### Links
|
|
||||||
|
|
||||||
Markdown supports two style of links: *inline* and *reference*.
|
|
||||||
|
|
||||||
In both styles, the link text is delimited by [square brackets].
|
|
||||||
|
|
||||||
To create an inline link, use a set of regular parentheses immediately
|
|
||||||
after the link text's closing square bracket. Inside the parentheses,
|
|
||||||
put the URL where you want the link to point, along with an *optional*
|
|
||||||
title for the link, surrounded in quotes. For example:
|
|
||||||
|
|
||||||
This is [an example](http://example.com/) inline link.
|
|
||||||
|
|
||||||
[This link](http://example.net/) has no title attribute.
|
|
||||||
|
|
||||||
### Emphasis
|
|
||||||
|
|
||||||
Markdown treats asterisks (`*`) and underscores (`_`) as indicators of
|
|
||||||
emphasis. Text wrapped with one `*` or `_` will be wrapped with an
|
|
||||||
HTML `<em>` tag; double `*`'s or `_`'s will be wrapped with an HTML
|
|
||||||
`<strong>` tag. E.g., this input:
|
|
||||||
|
|
||||||
*single asterisks*
|
|
||||||
|
|
||||||
_single underscores_
|
|
||||||
|
|
||||||
**double asterisks**
|
|
||||||
|
|
||||||
__double underscores__
|
|
||||||
|
|
||||||
### Code
|
|
||||||
|
|
||||||
To indicate a span of code, wrap it with backtick quotes (`` ` ``).
|
|
||||||
Unlike a pre-formatted code block, a code span indicates code within a
|
|
||||||
normal paragraph. For example:
|
|
||||||
|
|
||||||
Use the `printf()` function.
|
|
@@ -1,3 +0,0 @@
|
|||||||
module github.com/bep/hugo-starter-tailwind-basic/v3
|
|
||||||
|
|
||||||
go 1.19
|
|
@@ -1,29 +0,0 @@
|
|||||||
baseURL = "https://example.org"
|
|
||||||
|
|
||||||
disableKinds = ["page", "section", "taxonomy", "term"]
|
|
||||||
|
|
||||||
[module]
|
|
||||||
[module.hugoVersion]
|
|
||||||
extended = false
|
|
||||||
min = "0.112.0"
|
|
||||||
[[module.mounts]]
|
|
||||||
source = "assets"
|
|
||||||
target = "assets"
|
|
||||||
[[module.mounts]]
|
|
||||||
source = "hugo_stats.json"
|
|
||||||
target = "assets/watching/hugo_stats.json"
|
|
||||||
|
|
||||||
[build]
|
|
||||||
writeStats = true
|
|
||||||
[[build.cachebusters]]
|
|
||||||
source = "assets/watching/hugo_stats\\.json"
|
|
||||||
target = "styles\\.css"
|
|
||||||
[[build.cachebusters]]
|
|
||||||
source = "(postcss|tailwind)\\.config\\.js"
|
|
||||||
target = "css"
|
|
||||||
[[build.cachebusters]]
|
|
||||||
source = "assets/.*\\.(js|ts|jsx|tsx)"
|
|
||||||
target = "js"
|
|
||||||
[[build.cachebusters]]
|
|
||||||
source = "assets/.*\\.(.*)$"
|
|
||||||
target = "$1"
|
|
@@ -1,23 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en">
|
|
||||||
<head>
|
|
||||||
<meta charset="utf-8" />
|
|
||||||
<title>
|
|
||||||
{{ .Title }}
|
|
||||||
</title>
|
|
||||||
<meta name="description" content="{{ .Description }}" />
|
|
||||||
{{/* styles */}}
|
|
||||||
{{ $options := dict "inlineImports" true }}
|
|
||||||
{{ $styles := resources.Get "css/styles.css" }}
|
|
||||||
{{ $styles = $styles | resources.PostCSS $options }}
|
|
||||||
{{ if hugo.IsProduction }}
|
|
||||||
{{ $styles = $styles | minify | fingerprint | resources.PostProcess }}
|
|
||||||
{{ end }}
|
|
||||||
<link href="{{ $styles.RelPermalink }}" rel="stylesheet" />
|
|
||||||
</head>
|
|
||||||
<body class="my-10">
|
|
||||||
<div class="container px-4 lg:mx-auto">
|
|
||||||
{{ block "main" . }}{{ end }}
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@@ -1,13 +0,0 @@
|
|||||||
{{ define "main" }}
|
|
||||||
<article class="prose lg:prose-xl">
|
|
||||||
<h1>Tailwind 3 Hugo Starter</h1>
|
|
||||||
|
|
||||||
<h2 class="text-4xl">Testing Tailwind 3 Features</h2>
|
|
||||||
<div>
|
|
||||||
<button class="bg-[green] p-4">Share on Twitter</button>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<h2 class="text-4xl">Markdowns: {{ .Title }}</h2>
|
|
||||||
{{ .Content }}..
|
|
||||||
</article>
|
|
||||||
{{ end }}
|
|
@@ -1,58 +0,0 @@
|
|||||||
[build]
|
|
||||||
publish = "public"
|
|
||||||
command = "hugo --gc --minify -d public;"
|
|
||||||
|
|
||||||
[context.production.environment]
|
|
||||||
HUGO_VERSION = "0.112.0"
|
|
||||||
|
|
||||||
[context.branch-deploy]
|
|
||||||
command = "hugo --minify --gc -d public -b $DEPLOY_PRIME_URL"
|
|
||||||
|
|
||||||
[context.branch-deploy.environment]
|
|
||||||
HUGO_VERSION = "0.112.0"
|
|
||||||
|
|
||||||
[context.deploy-preview]
|
|
||||||
command = "hugo --gc --minify --buildFuture -b $DEPLOY_PRIME_URL"
|
|
||||||
|
|
||||||
[context.deploy-preview.environment]
|
|
||||||
HUGO_VERSION = "0.112.0"
|
|
||||||
|
|
||||||
[[headers]]
|
|
||||||
for = "/*.jpg"
|
|
||||||
|
|
||||||
[headers.values]
|
|
||||||
Cache-Control = "public, max-age=604800"
|
|
||||||
|
|
||||||
[[headers]]
|
|
||||||
for = "/*.png"
|
|
||||||
|
|
||||||
[headers.values]
|
|
||||||
Cache-Control = "public, max-age=604800"
|
|
||||||
|
|
||||||
[[headers]]
|
|
||||||
for = "/*.css"
|
|
||||||
|
|
||||||
[headers.values]
|
|
||||||
Cache-Control = "public, max-age=604800"
|
|
||||||
|
|
||||||
[[headers]]
|
|
||||||
for = "/*.js"
|
|
||||||
|
|
||||||
[headers.values]
|
|
||||||
Cache-Control = "public, max-age=604800"
|
|
||||||
|
|
||||||
[[headers]]
|
|
||||||
for = "/webfonts/*"
|
|
||||||
|
|
||||||
[headers.values]
|
|
||||||
Cache-Control = "public, max-age=604800"
|
|
||||||
|
|
||||||
[[headers]]
|
|
||||||
for = "/*"
|
|
||||||
|
|
||||||
[headers.values]
|
|
||||||
X-Frame-Options = "DENY"
|
|
||||||
X-XSS-Protection = "1; mode=block"
|
|
||||||
X-Content-Type-Options = "nosniff"
|
|
||||||
Referrer-Policy = "no-referrer"
|
|
||||||
Content-Security-Policy = "script-src 'self' 'unsafe-inline'"
|
|
2842
themes/hugo-starter-tailwind-basic/package-lock.json
generated
2842
themes/hugo-starter-tailwind-basic/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -1,18 +0,0 @@
|
|||||||
{
|
|
||||||
"license": "MIT",
|
|
||||||
"repository": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/bep/hugo-starter-tailwind-basic.git"
|
|
||||||
},
|
|
||||||
"dependencies": {},
|
|
||||||
"devDependencies": {
|
|
||||||
"@tailwindcss/typography": "^0.4.1",
|
|
||||||
"autoprefixer": "^10.3.1",
|
|
||||||
"postcss": "^8.3.6",
|
|
||||||
"postcss-cli": "^8.3.1",
|
|
||||||
"postcss-purgecss": "^2.0.3",
|
|
||||||
"tailwindcss": "^2.2.7"
|
|
||||||
},
|
|
||||||
"name": "hugo-starter-tailwind-basic",
|
|
||||||
"version": "0.1.0"
|
|
||||||
}
|
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user