Compare commits

..
111 Commits
Author SHA1 Message Date
inherentlee 20f87d209f remove unused header
continuous-integration/drone/push Build is passing
2026-10-21 15:31:49 -07:00
inherentlee cd6d75fa48 mogrify that shit
continuous-integration/drone/push Build is passing
2026-10-21 15:25:58 -07:00
inherentlee 230e86bf7c Merge branch 'main' into stickers
continuous-integration/drone/push Build is passing
2026-10-21 15:23:12 -07:00
inherentlee 32b055f328 note re samples 2026-10-21 15:21:37 -07:00
inherentlee 438d1a67e2 stickerbros 2026-10-21 15:15:12 -07:00
inherentlee cd7f525bac plaid dishtowels
continuous-integration/drone/push Build is passing
2026-10-19 13:09:35 -07:00
inherentlee 6933f11630 stickerapp 2026-10-17 19:35:31 -07:00
inherentlee 62dab04ee9 more about sticky brand ew 2026-10-15 11:24:07 -07:00
inherentlee e60d191e09 sticker update 2026-10-14 13:45:54 -07:00
inherentlee efe79ff639 Merge branch 'main' into stickers 2026-10-14 10:39:12 -07:00
inherentlee 4be20cccb3 border radius for blockquotes
continuous-integration/drone/push Build is passing
2026-10-14 10:38:57 -07:00
inherentlee aba74f280e some tweaks to git post
continuous-integration/drone/push Build is passing
2026-10-14 08:48:25 -07:00
inherentlee 0125216d96 add more aout remote commands
continuous-integration/drone/push Build is passing
2026-10-14 08:43:19 -07:00
inherentlee 6ee81d8784 small updates to git post
continuous-integration/drone/push Build is passing
2026-10-14 08:28:24 -07:00
inherentlee 2bfe616195 update fedizinefest
continuous-integration/drone/push Build is failing
2026-10-13 08:31:32 -07:00
inherentlee f9d8123b9d add header ids
continuous-integration/drone/push Build is passing
2026-10-13 08:30:50 -07:00
inherentlee c7ef4c701a sticker updates 2026-10-13 07:45:30 -07:00
inherentlee d8f3ea3430 add stickerapp 2026-10-10 11:16:25 -07:00
inherentlee a9b96e567e add bend print co samples 2026-10-09 15:46:26 -07:00
inherentlee bc1a51a4d5 add district dharma testimonial
continuous-integration/drone/push Build is passing
2026-10-06 09:52:56 -07:00
inherentlee 16c3ef1e26 audit fix 2026-10-06 09:52:44 -07:00
inherentlee efe153191a another tiny mobile tweak
continuous-integration/drone/push Build is passing
2026-10-06 09:03:41 -07:00
inherentlee 8c2c2231ac some size tweaks for headers on mobile
continuous-integration/drone Build is passing
2026-10-05 13:38:48 -07:00
inherentlee 62b1e448ea Merge branch 'main' into stickers 2026-10-05 13:31:36 -07:00
inherentlee d53198e1aa add sticker junkie, sticker robot, and vinyl disorder
continuous-integration/drone/push Build is running
2026-10-05 13:29:44 -07:00
inherentlee c6ec6b8f48 make urls easier to read font
continuous-integration/drone/push Build is passing
2026-10-04 11:17:32 -07:00
inherentlee 75909355ba couple of notes about samples
continuous-integration/drone/push Build is passing
2026-10-02 17:28:05 -07:00
inherentlee d5660455bd add drone trigger that requires main branch
continuous-integration/drone/push Build is passing
2026-10-02 12:59:15 -07:00
inherentlee 7df4c1ff8e more about sticker bunnies
continuous-integration/drone/push Build is passing
2026-10-02 12:54:06 -07:00
inherentlee d6c2bb9aa9 wording
continuous-integration/drone/push Build is passing
2026-10-02 09:57:23 -07:00
inherentlee 604a6787f4 sticker bunnies
continuous-integration/drone/push Build is passing
2026-10-01 18:55:54 -07:00
inherentlee 980cd0b3a6 update with stickergiant info
continuous-integration/drone/push Build is passing
2026-10-01 13:05:34 -07:00
inherentlee 5be42a4ff3 vinyl disorder and a few details 2026-10-01 08:53:36 -07:00
inherentlee 25c8e56a76 more re sticker ninja
continuous-integration/drone/push Build is passing
2026-09-30 17:44:29 -07:00
inherentlee 8752eeb904 sticker ninja details
continuous-integration/drone/push Build is passing
2026-09-30 17:41:40 -07:00
inherentlee b1135beddb update squarespace more
continuous-integration/drone/push Build is passing
2026-09-30 16:52:53 -07:00
inherentlee 84160a0574 update squarespace
continuous-integration/drone/push Build is passing
2026-09-30 16:51:12 -07:00
inherentlee 557308f3f9 sticker post wip
continuous-integration/drone/push Build is failing
2026-09-29 14:20:22 -07:00
inherentlee 382419e6d6 add toc to fediverse post
continuous-integration/drone/push Build is passing
2026-09-29 14:19:35 -07:00
inherentlee 66df77c32c remove old shop links 2026-09-29 10:01:11 -07:00
inherentlee a3e0ba5037 fedi intro post
continuous-integration/drone/push Build is passing
2026-09-28 09:38:52 -07:00
inherentlee 51d836c71b add to wong foo
continuous-integration/drone/push Build is passing
2026-09-23 20:25:08 -07:00
inherentlee 67e70e68ab remove scroll-margin-top since navbar is no longer sticky
continuous-integration/drone/push Build is passing
2026-09-23 19:29:19 -07:00
inherentlee b31e683786 i honestly don't know why this was working without this but i'm adding it just in case
continuous-integration/drone/push Build is passing
2026-09-23 14:47:53 -07:00
inherentlee 1bb26176ba tweak some breakpoints
continuous-integration/drone/push Build is passing
2026-09-21 16:08:11 -07:00
inherentlee a000d1c1b9 i'm not happy with this but it's better for width
continuous-integration/drone/push Build is passing
2026-09-21 15:55:44 -07:00
inherentlee cf26b06e3d update tree styling to box method
continuous-integration/drone/push Build is passing
2026-09-21 15:40:27 -07:00
inherentlee 5acda53f58 publish leatherworking zine with link to fzf post
continuous-integration/drone/push Build is passing
2026-09-21 13:55:29 -07:00
inherentlee f2bc045735 fedizinefest post
continuous-integration/drone/push Build is passing
2026-09-21 13:49:51 -07:00
inherentlee 3b1c5ffa88 SR fix
continuous-integration/drone/push Build is passing
2026-09-21 12:48:45 -07:00
inherentlee 0882fcda41 better images
continuous-integration/drone/push Build is passing
2026-09-21 12:46:38 -07:00
inherentlee 7d042abe1d fuck spacing and tabs all my homies hate spacing and tabs
continuous-integration/drone/push Build is passing
2026-09-21 12:27:30 -07:00
inherentlee f5bbda1f14 small edits
continuous-integration/drone/push Build is passing
2026-09-21 12:23:53 -07:00
inherentlee 9999775e44 tree style post
continuous-integration/drone/push Build is passing
2026-09-21 12:19:01 -07:00
inherentlee 463cabe793 update framer post pic 2026-09-21 12:18:48 -07:00
inherentlee 4aa7516cb9 fix hanging indent 2026-09-21 12:18:13 -07:00
inherentlee f49a7faa4d more contrasting focus outlines for toc
continuous-integration/drone/push Build is passing
2026-09-21 08:38:59 -07:00
inherentlee 2e26cefab2 tiny tweak to prevent gap
continuous-integration/drone/push Build is passing
2026-09-20 19:04:19 -07:00
inherentlee 870a6e5e0f prevent blockquotes interferring with toc
continuous-integration/drone/push Build is passing
2026-09-20 19:01:54 -07:00
inherentlee be364d7644 it's important that the comment have a slant rhyme
continuous-integration/drone/push Build is passing
2026-09-20 18:50:52 -07:00
inherentlee 06bcfc1522 toc tree styling
continuous-integration/drone/push Build is passing
2026-09-20 18:46:09 -07:00
inherentlee dd1943bcdd li line height matches p line height
continuous-integration/drone/push Build is passing
2026-09-20 15:13:17 -07:00
inherentlee bfa91ea19f big ol toc update
continuous-integration/drone/push Build is passing
2026-09-20 15:07:49 -07:00
inherentlee b4fbeffc41 new font omg
continuous-integration/drone/push Build is passing
2026-09-19 17:40:10 -07:00
inherentlee 25cf8a38ec fix sitemap size 2026-09-18 12:30:23 -07:00
inherentlee 5724f509a0 update resume
continuous-integration/drone/push Build is passing
2026-09-18 08:48:30 -07:00
inherentlee fe6956aaa3 mark down framer for complex keyboard interactions
continuous-integration/drone/push Build is passing
2026-09-17 17:59:08 -07:00
inherentlee 846ef7538f note re dropdowns in framer
continuous-integration/drone/push Build is passing
2026-09-17 17:57:33 -07:00
inherentlee f8aacdc85d note about dropdowns
continuous-integration/drone/push Build is passing
2026-09-17 17:04:46 -07:00
inherentlee 776218805a more notes about framer
continuous-integration/drone/push Build is passing
2026-09-17 12:03:26 -07:00
inherentlee 91c7f14113 add instructions just for completeness
continuous-integration/drone/push Build is passing
2026-09-17 08:18:27 -07:00
inherentlee 8bcdaeff52 idk these notes were wrong i guess 2026-09-17 08:16:38 -07:00
inherentlee 3e766eb519 find a few more target=_blank bits
continuous-integration/drone/push Build is passing
2026-09-17 08:02:47 -07:00
inherentlee 2ad41daa2e make leatherworking zine a draft
continuous-integration/drone/push Build is passing
2026-09-17 07:56:09 -07:00
inherentlee 7b248c24b9 Merge branch 'leatherworking-zine' 2026-09-17 07:55:34 -07:00
inherentlee abec70c655 add missing page 2026-09-17 07:55:26 -07:00
inherentlee 2d35768db9 preliminary squarespace findings
continuous-integration/drone/push Build is passing
2026-09-16 11:06:40 -07:00
inherentlee 30498307c8 npm audit fix
continuous-integration/drone/push Build is passing
2026-09-15 18:05:04 -07:00
inherentlee 953f651c4f draft
continuous-integration/drone/push Build is passing
2026-09-15 14:47:53 -07:00
inherentlee ee0a39333d package-lock.json update
continuous-integration/drone/push Build is passing
2026-09-14 18:17:10 -07:00
inherentlee a2fd1cb797 package.lock updates? 2026-09-14 18:11:59 -07:00
inherentlee 9889cf4adb fix og metadata
continuous-integration/drone/push Build is failing
continuous-integration/drone Build is failing
2026-09-14 10:38:11 -07:00
inherentlee a3b9d20dfb small style and word fixes to framer accessibility 2026-09-12 10:53:25 -07:00
inherentlee 1a0898c214 update guestbook page to remove embed
continuous-integration/drone/push Build is passing
2026-09-12 10:50:34 -07:00
inherentlee 07bb31111f remove target=blank etc 2026-09-12 10:48:36 -07:00
inherentlee c517bb8d69 remove keyboard shortcut on smaller screens, this could be more complex 2026-09-12 10:43:57 -07:00
inherentlee 830c1a4666 clean up search output
continuous-integration/drone/push Build is passing
2026-09-12 10:13:43 -07:00
inherentlee 1a2850ca8c fix apostrophes in browser title bar
continuous-integration/drone/push Build is passing
2026-09-11 17:53:34 -07:00
inherentlee 96e70dbd2f bit of further cleanup of pf styles
continuous-integration/drone/push Build is passing
2026-09-11 11:55:51 -07:00
inherentlee 58da634ec7 search bar timeeee 2026-09-11 11:46:47 -07:00
inherentlee d8049a1f34 update fedilearns icon
continuous-integration/drone/push Build is passing
2026-09-10 14:22:46 -07:00
inherentlee 12ae5f9a4e houndstooth dishtowels
continuous-integration/drone/push Build is passing
2026-09-10 09:58:30 -07:00
inherentlee 672a03d4e9 some tweaks to color picker
continuous-integration/drone/push Build is passing
2026-09-09 14:02:59 -07:00
inherentlee 0e46e65034 color picker yay
continuous-integration/drone/push Build is passing
2026-09-09 13:37:35 -07:00
inherentlee 782912c8a6 tweak intro content for gallery, reference, home pages
continuous-integration/drone/push Build is passing
2026-09-08 16:18:11 -07:00
inherentlee 470a84429c add link to view all tags to tag pages
continuous-integration/drone/push Build is passing
2026-09-08 16:14:35 -07:00
inherentlee 05e40f0ea7 add patchwork wallet to highlights
continuous-integration/drone/push Build is passing
2026-09-08 16:12:24 -07:00
inherentlee 35841f26fd mouse purse
continuous-integration/drone/push Build is passing
2026-09-08 16:05:29 -07:00
inherentlee 3fc4468d09 add styling to sitemap
continuous-integration/drone/push Build is passing
2026-09-08 10:49:41 -07:00
inherentlee bbcdb5ee03 i only just realized my style page didn't have code highlighting woops
continuous-integration/drone/push Build is passing
2026-09-08 10:40:24 -07:00
inherentlee d663b851c9 small margin change to lists
continuous-integration/drone/push Build is passing
2026-09-08 10:34:16 -07:00
inherentlee 4ac0441c3d framer accessibliity post
continuous-integration/drone/push Build is passing
2026-09-08 10:26:01 -07:00
inherentlee f6620e19a4 remove dead link
continuous-integration/drone/push Build is passing
2026-09-08 10:25:24 -07:00
inherentlee df9b5e4c55 add framer, gen -> generative
continuous-integration/drone/push Build is passing
2026-09-08 09:14:49 -07:00
inherentlee f4a32e5292 remove extraneous css line and add framer to builders post
continuous-integration/drone/push Build is passing
2026-09-06 09:02:49 -07:00
inherentlee 01c0bf00a2 tag edits
continuous-integration/drone/push Build is passing
2026-08-30 09:25:45 -07:00
inherentlee ff03344b81 rainbow shawl from 2023
continuous-integration/drone/push Build is passing
2026-08-30 09:09:21 -07:00
inherentlee e437febdf8 change webring button spacing
continuous-integration/drone/push Build is passing
2026-08-28 11:59:53 -07:00
inherentlee 21858e5dd3 add birder subtract bread baker
continuous-integration/drone/push Build is passing
2026-08-28 11:56:28 -07:00
inherentlee a780e7cc9e black and red journal
continuous-integration/drone/push Build is passing
2026-08-26 17:04:09 -07:00
inherentlee d0cb1cf7f5 resume updates re fedizinefest 2026-08-26 17:03:47 -07:00
151 changed files with 2503 additions and 654 deletions

No files matched your search

+3
View File
@@ -1,6 +1,9 @@
kind: pipeline kind: pipeline
type: docker type: docker
name: default name: default
trigger:
branch:
- main
steps: steps:
- name: build - name: build
+2 -2
View File
@@ -1,5 +1,5 @@
# npm # npm
node_modules node_modules
# local build # build
_live _site
+14 -6
View File
@@ -2,14 +2,22 @@
Lee Cattarin's personal website, v2. Built on Eleventy. Lee Cattarin's personal website, v2. Built on Eleventy.
## Pulling from git repo with NPM ## Install
Apparently this works differently in WSL vs Linux? Fuck me, I guess. ```sh
npm i
# or
npm install
```
### WSL2 ## Run locally
> "@zachleat/heading-anchors": "https://github.com/lee0c/heading-anchors/tarball/main", ```sh
npm run dev
```
### Linux ## Build website
> "@zachleat/heading-anchors": "github:lee0c/heading-anchors" ```sh
npm run build
```
+21
View File
@@ -21,4 +21,25 @@
</a> </a>
</li> </li>
</ul> </ul>
<fieldset id="theme">
<legend>color scheme</legend>
<input type="radio" id="theme-light" name="theme" value="light"/>
<label class="theme-light" for="theme-light">
<i class="fa-regular fa-sun" aria-hidden="true"></i>
light
</label>
<input type="radio" id="theme-auto" name="theme" value="auto" checked/>
<label class="theme-auto" for="theme-auto">
auto
</label>
<input type="radio" id="theme-dark" name="theme" value="dark"/>
<label class="theme-dark" for="theme-dark">
dark
<i class="fa-regular fa-moon" aria-hidden="true"></i>
</label>
</fieldset>
</footer> </footer>
+13 -2
View File
@@ -2,7 +2,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="icon" type="image/x-icon" href="/favicon.ico"> <link rel="icon" type="image/x-icon" href="/favicon.ico">
{% set pageTitle %}{{ title }} | {{ metadata.title }}{% endset %} {% set pageTitle %}{{ title | safe }} | {{ metadata.title }}{% endset %}
<title>{{ pageTitle }}</title> <title>{{ pageTitle }}</title>
<meta name="description" content="{{ description or metadata.description }}"> <meta name="description" content="{{ description or metadata.description }}">
<link rel="alternate" href="/feed.xml" type="application/atom+xml" title="{{ metadata.title }}"> <link rel="alternate" href="/feed.xml" type="application/atom+xml" title="{{ metadata.title }}">
@@ -13,8 +13,11 @@
<meta property="og:site_name" content="{{ metadata.title }}" /> <meta property="og:site_name" content="{{ metadata.title }}" />
<meta property="og:url" content="{{ metadata.url }}{{ page.url }}" /> <meta property="og:url" content="{{ metadata.url }}{{ page.url }}" />
{% if image %} {% if image %}
<meta property="og:image" content="/img/{{ image.src | toOgFilename }}" /> <meta property="og:image" content="{{ metadata.url }}/img/{{ image.src | toOgFilename }}" />
<meta property="og:image:alt" content="{{ image.alt }}" /> <meta property="og:image:alt" content="{{ image.alt }}" />
{% else %}
<meta property="og:image" content="{{ metadata.url }}/favicon.ico" />
<meta property="og:image:alt" content="a teal bird icon" />
{% endif %} {% endif %}
<meta name="generator" content="{{ eleventy.generator }}"> <meta name="generator" content="{{ eleventy.generator }}">
@@ -33,8 +36,16 @@
{# Styles #} {# Styles #}
<style>{% include "css/main.css" %}</style> <style>{% include "css/main.css" %}</style>
<style>{% include "css/nav.css" %}</style> <style>{% include "css/nav.css" %}</style>
<style>{% include "css/pagefind.css" %}</style>
<style>{% include "css/highlighting.css" %}</style>
<style>{% include "css/print.css" %}</style> <style>{% include "css/print.css" %}</style>
<style>{% getBundle "css" %}</style> <style>{% getBundle "css" %}</style>
{# Scripts #}
<script>{% include "js/theme.js" %}</script>
<script type="module">{% getBundle "js" %}</script> <script type="module">{% getBundle "js" %}</script>
{# Pagefind #}
<link href="/pagefind/pagefind-component-ui.css" rel="stylesheet">
<script src="/pagefind/pagefind-component-ui.js" type="module"></script>
+6
View File
@@ -17,4 +17,10 @@
</ul> </ul>
</nav> </nav>
<div class="dark searchbox" data-pf-theme="dark">
<pagefind-searchbox></pagefind-searchbox>
</div>
<div class="light searchbox">
<pagefind-searchbox></pagefind-searchbox>
</div>
</header> </header>
+1 -1
View File
@@ -3,7 +3,7 @@ layout: base.njk
--- ---
{% js %}{% include "node_modules/@zachleat/heading-anchors/heading-anchors.js" %}{% endjs %} {% js %}{% include "node_modules/@zachleat/heading-anchors/heading-anchors.js" %}{% endjs %}
<heading-anchors content="<i class='fa-solid fa-anchor'></i>"> <heading-anchors content="<i class='fa-solid fa-anchor'></i>" data-pagefind-body>
<h1>{{ title }}</h1> <h1>{{ title }}</h1>
{{ content | safe }} {{ content | safe }}
+13
View File
@@ -0,0 +1,13 @@
---
layout: post.njk
---
{% css %}{% include "css/post-toc.css" %}{% endcss %}
<aside id="toc">
<details>
<summary><h2>table of contents</h2></summary>
{{ content | toc | safe }}
</details>
</aside>
{{ content | safe }}
+1 -2
View File
@@ -2,14 +2,13 @@
layout: base.njk layout: base.njk
--- ---
{% css %}{% include "css/post.css" %}{% endcss %} {% css %}{% include "css/post.css" %}{% endcss %}
{% css %}{% include "css/highlighting.css" %}{% endcss %}
{% css %}{% include "css/lists.css" %}{% endcss %} {% css %}{% include "css/lists.css" %}{% endcss %}
{% css %}{% include "css/modal.css" %}{% endcss %} {% css %}{% include "css/modal.css" %}{% endcss %}
{% js %}{% include "node_modules/@zachleat/heading-anchors/heading-anchors.js" %}{% endjs %} {% js %}{% include "node_modules/@zachleat/heading-anchors/heading-anchors.js" %}{% endjs %}
{% js %}{% include "js/modal.js" %}{% endjs %} {% js %}{% include "js/modal.js" %}{% endjs %}
<heading-anchors content="<i class='fa-solid fa-anchor'></i>"> <heading-anchors content="<i class='fa-solid fa-anchor'></i>">
<article> <article data-pagefind-body>
<h1>{{ title }}</h1> <h1>{{ title }}</h1>
<div class="post-metadata"> <div class="post-metadata">
+1 -2
View File
@@ -93,7 +93,6 @@
/* Click animation */ /* Click animation */
.postlink:active, .postlink:active,
.taglink:active { .taglink:active {
box-shadow: none;
top: .2rem; top: .2rem;
left: .2rem; left: .2rem;
box-shadow: .15rem .15rem var(--color-shadow); box-shadow: .15rem .15rem var(--color-shadow);
@@ -112,6 +111,7 @@
grid-area: h2; grid-area: h2;
padding: .25rem .5rem; padding: .25rem .5rem;
text-transform: uppercase; text-transform: uppercase;
font-family: var(--font-family);
font-size: 1.5rem; font-size: 1.5rem;
color: var(--color-primary); color: var(--color-primary);
border-radius: 1rem 1rem 0 0; border-radius: 1rem 1rem 0 0;
@@ -221,4 +221,3 @@
.tag:nth-child(odd) p { .tag:nth-child(odd) p {
text-align: right; text-align: right;
} }
+38 -15
View File
@@ -1,7 +1,17 @@
@font-face {
font-family: "Peritel";
src:
url("/fonts/Peritel/Peritel-Regular.woff2") format("woff2"),
url("/fonts/Peritel/Peritel-Regular.otf") format("opentype");
}
:root { :root {
color-scheme: light dark; color-scheme: light dark;
--font-family: 'Atkinson Hyperlegible Next', sans-serif; --font-family: 'Atkinson Hyperlegible Next', sans-serif;
/* if you change the header font, go to post-toc.css and fuck about with the width
of the table of contents */
--font-family-headers: 'Peritel', 'Atkinson Hyperlegible Next', sans-serif;
--font-family-code: 'Atkinson Hyperlegible Mono', monospace; --font-family-code: 'Atkinson Hyperlegible Mono', monospace;
--color-dark: #2e303e; --color-dark: #2e303e;
@@ -51,8 +61,14 @@
--color-grey: light-dark(var(--color-grey-dark), var(--color-grey-light)); --color-grey: light-dark(var(--color-grey-dark), var(--color-grey-light));
} }
/* Base */ :root:has(#theme-light:checked) {
color-scheme: light;
}
:root:has(#theme-dark:checked) {
color-scheme: dark;
}
/* Base */
* { * {
box-sizing: border-box; box-sizing: border-box;
margin: 0; margin: 0;
@@ -69,10 +85,9 @@ main {
width: 60vw; width: 60vw;
max-width: 1000px; max-width: 1000px;
margin: 0 auto; margin: 0 auto;
scroll-margin-top: 7rem;
} }
@media (max-width: 1050px) { @media (max-width: 1100px) {
main { main {
width: 75vw; width: 75vw;
} }
@@ -88,37 +103,38 @@ main {
h1, h2, h3, h4, h5, h6 { h1, h2, h3, h4, h5, h6 {
line-height: 1.25; line-height: 1.25;
color: var(--color-teal); color: var(--color-teal);
font-family: var(--font-family-headers);
letter-spacing: 0.1rem;
} }
h1 { h1 {
margin-top: 3rem; margin-top: 3rem;
font-size: 3.5rem; font-size: 3.7rem;
text-align: center; text-align: center;
} }
h2, h3, h4, h5, h6 {
scroll-margin-top: 5rem;
}
h2 { h2 {
margin-top: 2rem; margin-top: 2rem;
font-size: 2.2rem; font-size: 2.35rem;
} }
h3 { h3 {
margin-top: 1.5rem; margin-top: 1.5rem;
font-size: 1.6rem; font-size: 1.7rem;
} }
@media (max-width: 650px) { @media (max-width: 650px) {
h1 { font-size: 2.8rem; } h1 {
margin-top: 1.5rem;
font-size: 2.25rem;
}
h2 { font-size: 1.8rem; } h2 { font-size: 1.8rem; }
h3 { font-size: 1.35rem; } h3 { font-size: 1.4rem; }
} }
h4, h5, h6 { h4, h5, h6 {
margin-top: 1rem; margin-top: 1rem;
font-size: 1.2rem; font-size: 1.25rem;
} }
/* Images */ /* Images */
@@ -194,13 +210,20 @@ ul, ol, dl, li {
} }
li { li {
line-height: 1.2 5; line-height: 1.4;
margin-top: .65rem; margin-top: .65rem;
margin-bottom: .65rem; margin-bottom: .65rem;
} }
li ul, li ol { li ul, li ol {
margin: .5rem 0; margin: .5rem 0;
margin-left: 1rem;
}
@media (max-width: 650px) {
li ul, li ol {
margin-left: 0;
}
} }
dt { dt {
@@ -217,7 +240,7 @@ dd {
blockquote { blockquote {
margin: .5rem 0; margin: .5rem 0;
padding: 0 1rem; padding: 0 1rem;
border-radius: .25rem 1rem 1rem .25rem; border-radius: .5rem;
line-height: 1.25; line-height: 1.25;
border-left: .5rem solid var(--color-pink); border-left: .5rem solid var(--color-pink);
} }
+110 -6
View File
@@ -1,12 +1,11 @@
/* Header */ /* Header */
header { header {
position: sticky;
top: 0;
background-color: var(--color-bg); background-color: var(--color-bg);
padding: .75rem 0; padding: .75rem 0;
z-index: 10;
border-bottom: thick solid var(--color-teal); border-bottom: thick solid var(--color-teal);
box-shadow: 0 .25rem .15rem var(--color-shadow); box-shadow: 0 .25rem .15rem var(--color-shadow);
display: grid;
grid-template-columns: auto;
} }
/* Header links, pagination links */ /* Header links, pagination links */
@@ -164,7 +163,7 @@ a[aria-current="page"] a:focus-visible i,
width: auto; width: auto;
height: auto; height: auto;
overflow: auto; overflow: auto;
margin: 0 10%; margin: -.125rem 10%;
z-index: 999; z-index: 999;
} }
@@ -241,6 +240,111 @@ footer a:focus-visible {
outline-color: var(--color-pink); outline-color: var(--color-pink);
} }
/* color picker */
#theme {
display: flex;
justify-content: center;
margin: .5rem auto 0;
padding: 0 .75rem .5rem;
width: fit-content;
border: .125rem solid var(--color-teal);
border-radius: 2rem;
}
#theme legend {
margin: 0 auto;
color: var(--color-teal);
}
footer label {
cursor: pointer;
border: .125rem solid var(--color-pink);
padding: 0 .25rem;
color: var(--color-pink);
background-color: var(--color-bg); /* this stops the box shadows from showing through */
box-shadow: .15em .15em var(--color-shadow);
/* Click animation handling */
position: relative;
top: 0;
left: 0;
transition: top .05s ease-in, left .05s ease-in;
}
footer input:checked + label {
color: var(--color-blue);
border-color: var(--color-blue);
}
footer label i {
color: var(--color-teal);
}
footer input:checked + label i {
color: var(--color-pink);
}
@media (any-hover: hover) {
footer label:hover,
footer input:checked + label:hover,
footer label:hover i,
footer input:checked + label:hover i {
color: var(--color-bg);
}
footer label:hover {
background-color: var(--color-pink);
}
footer input:checked + label:hover {
background-color: var(--color-teal);
}
}
footer input:focus-visible + label,
footer input:focus-visible + label i {
color: var(--color-bg);
background-color: var(--color-pink);
border-color: var(--color-pink);
}
footer input:checked:focus-visible + label,
footer input:checked:focus-visible + label i {
color: var(--color-bg);
background-color: var(--color-teal);
border-color: var(--color-teal);
}
footer label:active {
top: .09em;
left: .09em;
box-shadow: .05em .05em var(--color-shadow);
}
label.theme-light {
border-top-left-radius: 1rem;
border-bottom-left-radius: 1rem;
border-right: none;
padding-left: .35rem;
}
label.theme-auto {
}
label.theme-dark {
border-top-right-radius: 1rem;
border-bottom-right-radius: 1rem;
border-left: none;
padding-right: .35rem;
}
footer input {
/* To allow screen reader to still access these. */
/* From https://lyra.horse/blog/2025/08/you-dont-need-js/ */
opacity: 0;
position: absolute;
pointer-events: none;
}
/* Pagination */ /* Pagination */
.pagination, .pagination,
.pagination li { .pagination li {
@@ -283,8 +387,8 @@ footer a:focus-visible {
display: flex; display: flex;
flex-flow: row wrap; flex-flow: row wrap;
list-style: none; list-style: none;
justify-content: space-around; justify-content: center;
gap: .35rem; gap: .5rem;
} }
.webring ul, .webring ul,
+106
View File
@@ -0,0 +1,106 @@
/* Handle color schemes */
:root:has(#theme-light:checked) .dark {
display: none;
}
:root:has(#theme-dark:checked) .light {
display: none;
}
@media (prefers-color-scheme: light) {
:root:not(:has(#theme-dark:checked)) .dark {
display: none;
}
}
@media (prefers-color-scheme: dark) {
:root:not(:has(#theme-light:checked)) .light {
display: none;
}
}
.searchbox {
margin: 1rem auto 0;
}
pagefind-searchbox {
/* Shadows */
--pf-scroll-shadow: var(--color-shadow) !important;
--pf-shadow-sm: .15rem .15rem 0 var(--color-shadow) !important;
--pf-shadow-md: .25rem .25rem 0 var(--color-shadow) !important;
--pf-shadow-lg: 1rem 1rem 0 var(--color-shadow) !important;
/* Typography */
--pf-font: var(--font-family) !important;
/* Border */
--pf-border-radius: 1.5rem !important;
/* Focus */
--pf-outline-width: .125rem !important;
--pf-outline-offset: 0 !important;
/* Width */
--pf-searchbox-max-width: min(550px, 92vw) !important;
}
.light pagefind-searchbox {
--pf-text: var(--color-dark) !important;
--pf-text-secondary: var(--color-dark-alt) !important;
--pf-text-muted: var(--color-dark-alt) !important;
--pf-background: var(--color-light-alt) !important;
--pf-border: var(--color-pink-dark) !important;
--pf-border-focus: var(--color-pink-dark) !important;
--pf-skeleton: var(--color-light) !important;
--pf-skeleton-shine: var(--color-dark) !important;
--pf-hover: var(--color-light) !important;
--pf-mark: var(--color-teal-dark) !important;
--pf-outline-focus: var(--color-teal-dark) !important;
/* Error */
--pf-error-bg: var(--color-light-alt) !important;
--pf-error-border: var(--color-red-dark) !important;
--pf-error-text: var(--color-red-dark) !important;
--pf-error-text-secondary: var(--color-red-dark) !important;
}
.dark pagefind-searchbox {
--pf-text: var(--color-light) !important;
--pf-text-secondary: var(--color-light-alt) !important;
--pf-text-muted: var(--color-light-alt) !important;
--pf-background: var(--color-dark-alt) !important;
--pf-border: var(--color-pink-light) !important;
--pf-border-focus: var(--color-pink-light) !important;
--pf-skeleton: var(--color-dark) !important;
--pf-skeleton-shine: var(--color-dark) !important;
--pf-hover: var(--color-dark) !important;
--pf-mark: var(--color-teal-light) !important;
--pf-outline-focus: var(--color-teal-light) !important;
/* Error */
--pf-error-bg: var(--color-dark-alt) !important;
--pf-error-border: var(--color-red-light) !important;
--pf-error-text: var(--color-red-light) !important;
--pf-error-text-secondary: var(--color-red-light) !important;
}
pagefind-searchbox input {
border-width: .125rem !important;
}
pagefind-searchbox input:not(:focus-visible) {
box-shadow: var(--pf-shadow-md) !important;
}
@media (max-width: 650px) {
.pf-trigger-shortcut {
display: none !important;
}
}
.pf-searchbox-dropdown,
.pf-searchbox-footer {
border-width: .125rem !important;
}
.pf-error {
margin-top: .5rem !important;
}
+103
View File
@@ -0,0 +1,103 @@
#toc {
float: right;
margin: 1rem 0 1.5rem 1.5rem;
width: fit-content;
max-width: 55%;
}
@media (max-width: 900px) {
#toc {
float: unset;
margin-top: 2rem;
margin-left: .5rem;
width: calc(100% - .5rem);
max-width: unset;
}
}
#toc details {
border: thick solid var(--color-pink);
border-radius: 1rem;
margin-top: 1rem;
background-color: var(--color-bg);
}
#toc summary {
position: relative;
top: -1.5rem;
left: -.75rem;
width: fit-content;
background: var(--color-bg);
border-radius: .5rem;
cursor: pointer;
padding-inline-end: .25rem;
}
#toc summary:focus-visible {
outline: .15rem solid var(--color-teal);
}
#toc summary::marker {
font-size: 2.35rem;
}
#toc h2 {
margin-top: 0;
display: inline;
line-height: normal;
}
#toc nav {
position: relative;
top: -1.25rem;
}
/* `tree` style toc */
#toc nav > ol {
margin-inline: 1rem;
}
#toc ol {
margin: 0;
}
#toc li {
position: relative;
padding-inline-start: 1em;
list-style: none;
margin-block: 0;
margin-left: .35rem;
}
#toc li::before,
#toc li::after {
display: block;
position: absolute;
box-sizing: border-box;
inset-block: 0 auto;
inset-inline: 0 auto;
inline-size: .75em;
border-inline-start: .1rem solid var(--color-pink);
}
#toc li::before {
block-size: .5lh;
border-block-end: .1rem solid var(--color-pink);
content: "";
}
#toc li:not(:last-child)::after {
block-size: 100%;
content: "";
}
/* underlines are unnecessary in this context */
#toc a {
text-decoration: none;
color: var(--color-blue);
font-weight: bold;
}
#toc a:focus-visible {
outline-color: var(--color-pink);
}
+1
View File
@@ -34,6 +34,7 @@
.job-details a { .job-details a {
font-size: 1rem; font-size: 1rem;
font-family: var(--font-family);
} }
.job p { .job p {
+40 -5
View File
@@ -1,11 +1,18 @@
import { IdAttributePlugin } from "@11ty/eleventy"; import { HtmlBasePlugin } from "@11ty/eleventy";
import { eleventyImageTransformPlugin } from "@11ty/eleventy-img"; import { eleventyImageTransformPlugin } from "@11ty/eleventy-img";
import eleventyNavigationPlugin from "@11ty/eleventy-navigation"; import eleventyNavigationPlugin from "@11ty/eleventy-navigation";
import { feedPlugin } from "@11ty/eleventy-plugin-rss"; import { feedPlugin } from "@11ty/eleventy-plugin-rss";
import syntaxHighlight from "@11ty/eleventy-plugin-syntaxhighlight"; import syntaxHighlight from "@11ty/eleventy-plugin-syntaxhighlight";
import toc from "eleventy-plugin-nesting-toc";
import { attrs } from "@mdit/plugin-attrs"; import { attrs } from "@mdit/plugin-attrs";
import { chunk } from "lodash-es"; import { markdownitLinkAttributes } from 'markdown-it-link-attributes';
import markdownitIdAttributes from "markdown-it-anchor";
import path from "node:path"; import path from "node:path";
import { execSync } from 'child_process';
import { chunk } from "lodash-es";
import pluginFilters from "./_config/filters.js"; import pluginFilters from "./_config/filters.js";
@@ -13,6 +20,23 @@ export default async function(eleventyConfig) {
/* Markdown HTML attribute parsing */ /* Markdown HTML attribute parsing */
eleventyConfig.amendLibrary("md", (mdLib) => mdLib.use(attrs)); eleventyConfig.amendLibrary("md", (mdLib) => mdLib.use(attrs));
/* Markdown apply target="_blank" to all external links */
eleventyConfig.amendLibrary("md", (mdLib) => mdLib.use(markdownitLinkAttributes, {
matcher(href) {
return href.match(/^https?:\/\//);
},
attrs: {
target: "_blank",
rel: "external",
},
}));
/* Markdown apply ID attributes to headers */
eleventyConfig.amendLibrary("md", (mdLib) => mdLib.use(markdownitIdAttributes, {
level: [2, 3, 4],
tabIndex: false,
}));
/* Bundles */ /* Bundles */
/* CSS */ /* CSS */
eleventyConfig.addBundle("css", { eleventyConfig.addBundle("css", {
@@ -56,6 +80,7 @@ export default async function(eleventyConfig) {
/* Passthrough */ /* Passthrough */
eleventyConfig eleventyConfig
.addPassthroughCopy("favicon.ico") .addPassthroughCopy("favicon.ico")
.addPassthroughCopy("fonts")
.addPassthroughCopy("robots.txt"); .addPassthroughCopy("robots.txt");
/* Plugins */ /* Plugins */
@@ -83,6 +108,9 @@ export default async function(eleventyConfig) {
} }
}); });
/* HTML base */
eleventyConfig.addPlugin(HtmlBasePlugin);
/* Images */ /* Images */
eleventyConfig.addPlugin(eleventyImageTransformPlugin, { eleventyConfig.addPlugin(eleventyImageTransformPlugin, {
// output image formats // output image formats
@@ -111,12 +139,12 @@ export default async function(eleventyConfig) {
/* Navigation */ /* Navigation */
eleventyConfig.addPlugin(eleventyNavigationPlugin); eleventyConfig.addPlugin(eleventyNavigationPlugin);
/* `id` attributes */
eleventyConfig.addPlugin(IdAttributePlugin);
/* Syntax highlighting */ /* Syntax highlighting */
eleventyConfig.addPlugin(syntaxHighlight); eleventyConfig.addPlugin(syntaxHighlight);
/* Table of contents */
eleventyConfig.addPlugin(toc);
/* Draft handling */ /* Draft handling */
eleventyConfig.addPreprocessor("drafts", "*", (data, content) => { eleventyConfig.addPreprocessor("drafts", "*", (data, content) => {
if (data.draft) { if (data.draft) {
@@ -135,6 +163,13 @@ export default async function(eleventyConfig) {
/* Watch when serving */ /* Watch when serving */
eleventyConfig.addWatchTarget("css"); eleventyConfig.addWatchTarget("css");
eleventyConfig.addWatchTarget("js");
/* Implement search */
/* From https://rknight.me/blog/using-pagefind-with-eleventy-for-search/ */
eleventyConfig.on('eleventy.after', () => {
execSync(`npx pagefind --site _site --glob \"**/*.html\"`, { encoding: 'utf-8' })
});
}; };
export const config = { export const config = {
+33
View File
@@ -0,0 +1,33 @@
# End User License Agreement (EULA)
This End User License Agreement is a legal agreement between the licensee (you), and the author of this font, Christopher Kirk-Nielsen.
You are granted a perpetual, non-exclusive license to use the font with your purchase.
## By downloading or purchasing this font, you agree to the following terms:
**For use on a website**
Use on any website owned or under the licensee's control, no pageview limits.
**For use in an app**
App embed allowed for 1 app. Another app = another license.
**Distribution**
The font may not be redistributed.
**Personal modification**
The font may be modified for personal use, but cannot be redistributed.
**Do not use the font for hateful purposes**
The font is not allowed to be used in any material promoting hate speech of any kind, including but not limited to: racism, xenophobia, homophobia, sexism, or other types of discrimination.
**Do not use the font with AI**
The font is not allowed to be used in, or in training of, AI/LLMs.
**Use at your own risk**
Any usage of the fonts are at the licensee's own risk.
For ebooks and other commercial use, or any other specific needs, email me to figure something out: chriskirknielsen+fonts[at]gmail.com
Thank you very much for the support!
Christopher Kirk-Nielsen (https://chriskirknielsen.com/fonts/)
Binary file not shown.
Binary file not shown.
+35
View File
@@ -0,0 +1,35 @@
const THEME = "theme";
const saveTheme = (themeValue) => {
localStorage.setItem(THEME, themeValue);
};
const themeLight = document.getElementById("theme-light");
themeLight.addEventListener("input", (e) => {
saveTheme(themeLight.value);
});
const themeAuto = document.getElementById("theme-auto");
themeAuto.addEventListener("input", (e) => {
saveTheme(themeAuto.auto);
});
const themeDark = document.getElementById("theme-dark");
themeDark.addEventListener("input", (e) => {
saveTheme(themeDark.value);
});
var currentThemeValue = localStorage.getItem(THEME);
switch (currentThemeValue) {
case "light":
themeLight.checked = true;
themeAuto.checked = false;
break;
case "dark":
themeDark.checked = true;
themeAuto.checked = false;
break;
case "auto":
default:
themeAuto.checked = true;
}
+713 -140
View File
File diff suppressed because it is too large. Load diff
+7 -2
View File
@@ -4,7 +4,7 @@
"description": "Lee's personal website, take 2, built with 11ty", "description": "Lee's personal website, take 2, built with 11ty",
"scripts": { "scripts": {
"build": "rm -rf _site && npx @11ty/eleventy --quiet", "build": "rm -rf _site && npx @11ty/eleventy --quiet",
"dev": "rm -rf _live && npx @11ty/eleventy --serve --quiet --output _live" "dev": "rm -rf _site && npx @11ty/eleventy --serve --quiet --output _site"
}, },
"keywords": [], "keywords": [],
"author": "Lee Cattarin", "author": "Lee Cattarin",
@@ -19,7 +19,12 @@
"@11ty/eleventy-plugin-syntaxhighlight": "^5.0.2", "@11ty/eleventy-plugin-syntaxhighlight": "^5.0.2",
"@mdit/plugin-attrs": "^0.24.2", "@mdit/plugin-attrs": "^0.24.2",
"@zachleat/heading-anchors": "https://github.com/lee0c/heading-anchors/tarball/main", "@zachleat/heading-anchors": "https://github.com/lee0c/heading-anchors/tarball/main",
"cheerio": "^1.2.0",
"eleventy-plugin-nesting-toc": "^1.3.0",
"lodash-es": "^4.17.23", "lodash-es": "^4.17.23",
"luxon": "^3.7.2" "luxon": "^3.7.2",
"markdown-it-anchor": "^10.0.0",
"markdown-it-link-attributes": "https://github.com/lee0c/markdown-it-link-attributes/tarball/main",
"pagefind": "^1.5.2"
} }
} }
+1 -1
View File
@@ -13,7 +13,7 @@ icon: fa-regular fa-images
label: view the gallery label: view the gallery
--- ---
<p class="centered">the gallery page is for finished art</p> <p class="centered">the gallery section is for finished art</p>
<p class="centered">(or <a href="/tags/">browse by tags</a>)</p> <p class="centered">(or <a href="/tags/">browse by tags</a>)</p>
{% include "postlist.njk" %} {% include "postlist.njk" %}
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 259 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 315 KiB

After

Width:  |  Height:  |  Size: 240 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 234 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 61 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 102 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 98 KiB

Executable → Regular
BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 341 KiB

After

Width:  |  Height:  |  Size: 53 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 524 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 351 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 MiB

After

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 MiB

After

Width:  |  Height:  |  Size: 428 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 447 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 MiB

After

Width:  |  Height:  |  Size: 1001 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 538 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 372 KiB

After

Width:  |  Height:  |  Size: 69 KiB

BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 203 KiB

After

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 292 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 391 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 411 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 397 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 457 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 383 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 395 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 458 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 517 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 375 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 598 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 580 KiB

+2 -1
View File
@@ -12,7 +12,8 @@ icon: fa fa-solid fa-crow
title: home title: home
label: home label: home
--- ---
<p class="centered">(or <a href="/tags/">browse by tags</a>)</p> <p class="centered">(see the <a href="/tags/highlight/">highlights</a>
or <a href="/tags/">browse by tags</a>)</p>
{% include "postlist.njk" %} {% include "postlist.njk" %}
+9 -1
View File
@@ -7,9 +7,16 @@ eleventyExcludeFromCollections: true
<xsl:template match="/"> <xsl:template match="/">
<html> <html>
<head> <head>
<title>Sitemap</title> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>sitemap | hello hello</title>
<style>{% include "css/main.css" %}</style>
</head> </head>
<body> <body>
<main>
<h1>sitemap: hello hello</h1>
<p class="centered">
Return <a href="/">home</a>.
</p>
<table> <table>
<thead> <thead>
<tr> <tr>
@@ -30,6 +37,7 @@ eleventyExcludeFromCollections: true
</xsl:for-each> </xsl:for-each>
</tbody> </tbody>
</table> </table>
</main>
</body> </body>
</html> </html>
</xsl:template> </xsl:template>
+2
View File
@@ -9,6 +9,8 @@ eleventyComputed:
title: "tag: {{ tag.tagName }}" title: "tag: {{ tag.tagName }}"
--- ---
<p class="centered">(or <a href="/tags/">view all tags</a>)</p>
{% set postlist = tag.pageData %} {% set postlist = tag.pageData %}
{% include "postlist.njk" %} {% include "postlist.njk" %}
+1 -1
View File
@@ -9,7 +9,7 @@ label: about Lee
<p>My name is Lee Cattarin. I use he or ze pronouns.</p> <p>My name is Lee Cattarin. I use he or ze pronouns.</p>
<p>I'm a programmer (<a href="/resume/">are you looking for a resume?</a>), artist&crafter - knitting, spinning yarn, stamp carving/printmaking, cardmaking & papercrafts, bookbinding, leatherworking - bread baker, guitar player, and probably a lot of other things.</p> <p>I'm a programmer (<a href="/resume/">are you looking for a resume?</a>), artist&crafter - knitting, spinning yarn, stamp carving/printmaking, cardmaking & papercrafts, bookbinding, leatherworking - birder, guitar player, and probably a lot of other things.</p>
<img src="/img/about/koi-pond.jpg" alt="A koi pond in fall afternoon light. A slender white person in a knitted dark teal sweater crouches in front of the pond and extends hir hand towards the surface of the water. Several curious koi are arriving to see what the matter is, and one white koi has stuck its face a bit out of the water to reach toward hir hand."> <img src="/img/about/koi-pond.jpg" alt="A koi pond in fall afternoon light. A slender white person in a knitted dark teal sweater crouches in front of the pond and extends hir hand towards the surface of the water. Several curious koi are arriving to see what the matter is, and one white koi has stuck its face a bit out of the water to reach toward hir hand.">
+17
View File
@@ -0,0 +1,17 @@
---
title: accessibility
---
This website ([leecat.art](/)) aims to be as accessible as possible. To that end, I have tested to the best of my abilities with [NVDA](https://www.nvaccess.org/download/) and [Orca](https://help.gnome.org/orca/index.html), keyboard navigation, and automated review tools.
## Limitations
Because of the nature of a blog with an ever-expanding page list and the fact that I have learned a significant amount in 4 or so years, I cannot guarantee that every article on this site is as accessible as I want it to be. That said, the major pages and navigation have been tested, and I bring my best efforts to every new post.
## Adherence to WCAG 2.2
While I would like to do further structured review and go through the entire list with a finer-tooth comb, my current assessment is that this site meets [WCAG 2.2](https://www.w3.org/WAI/standards-guidelines/wcag/) at least at level AA.
## Feedback
If you meet any barriers in accessing this site, please [contact me](/contact).
+8 -6
View File
@@ -2,17 +2,19 @@
title: colophon title: colophon
--- ---
This is v2 of my personal website, built with [{{ eleventy.generator }}](https://www.11ty.dev/){target="_blank" rel="external"} and hosted by [heckin' technology](https://heckin.technology/){target="_blank" rel="external"}. It's been hand-coded from the ground up. This is v2 of my personal website, built with [{{ eleventy.generator }}](https://www.11ty.dev/) and hosted by [heckin' technology](https://heckin.technology/). It's been hand-coded from the ground up.
v1 of this site began in 2022 and was based on [Millennial](https://lenpaul.github.io/Millennial/){target="_blank" rel="external"}, a minimalist Jekyll theme for running a blog or publication by Paul Le. v1 of this site began in 2022 and was based on [Millennial](https://lenpaul.github.io/Millennial/), a minimalist Jekyll theme for running a blog or publication by Paul Le.
The fonts are [Atkinson Hyperlegible Next and Atkinson Hyperlegible Mono](https://brailleinstitute.org/freefont){target="_blank" rel="external"} for standard text and monospace respectively, specifically designed for low-vision readers to improve character recognition. Also they look neat :) The header font is [Peritel by Christopher Kirk-Nielsen](https://chriskirknielsen.com/fonts/peritel/). I'm currently trying it on for size, so let me know if you like it - or hate it! The body fonts (and the all-caps headers on the post list pages) are [Atkinson Hyperlegible Next and Atkinson Hyperlegible Mono](https://brailleinstitute.org/freefont) for standard text and monospace respectively, specifically designed for low-vision readers to improve character recognition. Also they look neat :)
The search bar is powered by [Pagefind](https://pagefind.app/). I was guided by [Robb Knight's walkthrough](https://rknight.me/blog/using-pagefind-with-eleventy-for-search/) when setting it up.
Thank you to some lovely friends for their feedback and help with the site! You should hire them. Yes, you. Thank you to some lovely friends for their feedback and help with the site! You should hire them. Yes, you.
- [Lenny](http://www.wondra.codes/){target="_blank" rel="external"}, especially for their HTML/CSS and accessibility expertise - [Lenny](http://www.wondra.codes/), especially for their HTML/CSS and accessibility expertise
- [Shir](https://shirgoldberg.com/){target="_blank" rel="external"} - [Shir](https://shirgoldberg.com/)
You can [find the accessibility statement here](/accessibility). If you'd like, you can view the [site's palette](/palette) or the [style overview](/style). You can also [explore the sitemap](/sitemap.xml). You can [find the accessibility statement here](/accessibility). If you'd like, you can view the [site's palette](/palette) or the [style overview](/style). You can also [explore the sitemap](/sitemap.xml).
This site is created [without the use of generative AI](https://declare-ai.org/1.0.0/none.html){target="_blank" rel="external"}. This site is created [without the use of generative AI](https://declare-ai.org/1.0.0/none.html).
+8 -8
View File
@@ -75,21 +75,21 @@ Find me at [various art shows and fairs](/art-shows-and-events/).
#### Denver #### Denver
- [(dis)obedience](https://www.disobediencedenver.com){:target="_blank"}: stickers, pins, cards - [(dis)obedience](https://www.disobediencedenver.com): stickers, pins, cards
### Oregon ### Oregon
#### Beaverton #### Beaverton
- [Forager Vintage](https://foragervintage.com/){:target="_blank"}: stickers, pins, cards - [Forager Vintage](https://foragervintage.com/): stickers, pins, cards
### Washington ### Washington
#### Seattle #### Seattle
- [Push/Pull](https://www.pushpullseattle.com/){:target="_blank"}: stickers, pins, cards - [Push/Pull](https://www.pushpullseattle.com/): stickers, pins, cards
- [Standard Goods Ballard](https://thestandardgoods.com/pages/ballard){:target="_blank"}: stickers - [Standard Goods Ballard](https://thestandardgoods.com/pages/ballard): stickers
- [Standard Goods Capitol Hill](https://thestandardgoods.com/pages/capitol-hill){:target="_blank"}: stickers - [Standard Goods Capitol Hill](https://thestandardgoods.com/pages/capitol-hill): stickers
#### Tacoma #### Tacoma
@@ -97,9 +97,9 @@ Find me at [various art shows and fairs](/art-shows-and-events/).
#### Vashon #### Vashon
- [Vashon Made (formerly Starving Artist Works) (facebook)](https://www.facebook.com/SawStarvingArtistWorks/){:target="_blank"}: stickers, cards, prints, wallets, handbound books, yarn - [Vashon Made (formerly Starving Artist Works) (facebook)](https://www.facebook.com/SawStarvingArtistWorks/): stickers, cards, prints, wallets, handbound books, yarn
- [Standard Goods Vashon](https://thestandardgoods.com/pages/vashon){:target="_blank"}: stickers - [Standard Goods Vashon](https://thestandardgoods.com/pages/vashon): stickers
- [Vashon Pharmacy](https://vashonpharmacy.com/){:target="_blank"}: cards - [Vashon Pharmacy](https://vashonpharmacy.com/): cards
--- ---
+5 -7
View File
@@ -7,9 +7,7 @@ yes, you may sign again even if you've been here before - just no spamming pleas
## write ## write
if the embed below is not working for you, you can [open the guestbook form in a new tab](https://airtable.com/app1YuM4uE4sRTYgh/pag4JzOylrLoLy4AS/form){:target="_blank"} or just [contact me any way you want](/contact) with your desired message Please [use this guestbook form](https://airtable.com/app1YuM4uE4sRTYgh/pag4JzOylrLoLy4AS/form) or just [contact me any way you want](/contact) with your desired message.
<iframe class="airtable-embed" src="https://airtable.com/embed/app1YuM4uE4sRTYgh/pag4JzOylrLoLy4AS/form" frameborder="0" onmousewheel="" width="100%" height="533" style="background: transparent;"></iframe>
## read ## read
@@ -34,7 +32,7 @@ Fern (Rainbow) on <time datetime="2024-09-06">6 September 2024</time>:
handmade ghost on <time datetime="2024-09-06">6 September 2024</time>: handmade ghost on <time datetime="2024-09-06">6 September 2024</time>:
> Everything Lee makes is a gift to the world--just knowing ze made something new brings me joy and sends me scrambling to this site! > Everything Lee makes is a gift to the world--just knowing ze made something new brings me joy and sends me scrambling to this site!
[jay](jaygrant.us){:target="_blank"} on <time datetime="2024-09-06">6 September 2024</time>: [jay](jaygrant.us) on <time datetime="2024-09-06">6 September 2024</time>:
> EGG > EGG
pqqq on <time datetime="2024-09-06">6 September 2024</time>: pqqq on <time datetime="2024-09-06">6 September 2024</time>:
@@ -43,16 +41,16 @@ pqqq on <time datetime="2024-09-06">6 September 2024</time>:
Morgan on <time datetime="2024-09-06">6 September 2024</time>: Morgan on <time datetime="2024-09-06">6 September 2024</time>:
> You make good art and good takes on gender 💜 > You make good art and good takes on gender 💜
[Lisa](@mycrowgirl@mastodon.social){:target="_blank"} on <time datetime="2024-09-06">6 September 2024</time>: [Lisa](@mycrowgirl@mastodon.social) on <time datetime="2024-09-06">6 September 2024</time>:
> Ask not for whom the snoot is booped. It is booped for weevils. > Ask not for whom the snoot is booped. It is booped for weevils.
nathanlovestrees on <time datetime="2024-09-06">6 September 2024</time>: nathanlovestrees on <time datetime="2024-09-06">6 September 2024</time>:
> honk! > honk!
[✨pencilears✨](https://pencilears.eternalaugust.net/comic/){:target="_blank"} on <time datetime="2024-09-06">6 September 2024</time>: [✨pencilears✨](https://pencilears.eternalaugust.net/comic/) on <time datetime="2024-09-06">6 September 2024</time>:
> Hello! I'm glad we're still doing guest books on websites. > Hello! I'm glad we're still doing guest books on websites.
[brhfl](https://brhfl.com){:target="_blank"} on <time datetime="2024-09-06">6 September 2024</time>: [brhfl](https://brhfl.com) on <time datetime="2024-09-06">6 September 2024</time>:
> hey hi! just giving you some test data and also basking in the nostalgia of a guestbook :) > hey hi! just giving you some test data and also basking in the nostalgia of a guestbook :)
Eedlipherus C. Bigribs on <time datetime="2024-09-06">6 September 2024</time>: Eedlipherus C. Bigribs on <time datetime="2024-09-06">6 September 2024</time>:
+44 -24
View File
@@ -37,6 +37,7 @@ layout: base.njk
<li>GitHub Actions and other pipelines</li> <li>GitHub Actions and other pipelines</li>
<li>HTML, CSS, and Javascript</li> <li>HTML, CSS, and Javascript</li>
<li>Languages like Go, C, and Python</li> <li>Languages like Go, C, and Python</li>
<li>Relational database theory focused on PostgreSQL</li>
<li>Accessibility knowledge and thoughtful design</li> <li>Accessibility knowledge and thoughtful design</li>
</ul> </ul>
@@ -46,7 +47,7 @@ layout: base.njk
<div class="job"> <div class="job">
<div class="two-col job-details"> <div class="two-col job-details">
<h3>Freelance Web Developer</h3> <h3 id="freelance-web-developer">Freelance Web Developer</h3>
<p class="col2"><time datetime="2026-01">January 2026</time> – Present</p> <p class="col2"><time datetime="2026-01">January 2026</time> – Present</p>
</div> </div>
@@ -56,6 +57,25 @@ layout: base.njk
</p> </p>
<ul> <ul>
<li>
<strong>District Dharma
(<a href="https://districtdharma.org/"
target="_blank">districtdharma.org</a>):</strong>
a clean and minimalist homepage for the District Dharma collective,
built in Eleventy with a Mattrbld content management system to allow
for easy editing by the client.
<blockquote class="testimonial">
Being of a generation that didn't grow up with technology, I was a little
nervous going into this project, but Lee made it easy. He was patient and
completely non-judgmental with my simple questions, quick to respond by
email, and open to my feedback throughout. He built exactly what I
envisioned for our meditation group's website, and his estimate was the
final cost. When he asked what he could improve, I honestly couldn't come
up with anything. He delivered what he promised and was easy to reach the
whole way through. If you want someone skilled who will also make the
process feel comfortable, I can't recommend him highly enough.
</blockquote>
</li>
<li> <li>
<strong>My Liberation Work Has Been Damn Ableist: A Landworker Memoir <strong>My Liberation Work Has Been Damn Ableist: A Landworker Memoir
(<a href="https://maze-pants.codeberg.page/" (<a href="https://maze-pants.codeberg.page/"
@@ -138,7 +158,7 @@ layout: base.njk
datetime="2025-07">July 2025</time></p> datetime="2025-07">July 2025</time></p>
</div> </div>
<h3>Software Development Engineer I & II</h3> <h3 id="software-development-engineer-i-ii">Software Development Engineer I & II</h3>
<p> <p>
Worked on green- and brown-field projects with customers, solving emerging Worked on green- and brown-field projects with customers, solving emerging
@@ -175,7 +195,7 @@ layout: base.njk
<p class="col2"><time datetime="2023-10">October 2023</time> – Present</p> <p class="col2"><time datetime="2023-10">October 2023</time> – Present</p>
</div> </div>
<h3>Co-owner and artist</h3> <h3 id="co-owner-and-artist">Co-owner and artist</h3>
<p> <p>
Maintains website, storefront, and inventory for a diverse set of artistic Maintains website, storefront, and inventory for a diverse set of artistic
@@ -201,7 +221,7 @@ layout: base.njk
datetime="2017-12">December 2017</time></p> datetime="2017-12">December 2017</time></p>
</div> </div>
<h3>Undergraduate Programming Mentor</h3> <h3 id="undergraduate-programming-mentor">Undergraduate Programming Mentor</h3>
<p> <p>
Helped students debug and develop in Python and learn core programming Helped students debug and develop in Python and learn core programming
@@ -218,7 +238,7 @@ layout: base.njk
datetime="2017-08">August 2017</time></p> datetime="2017-08">August 2017</time></p>
</div> </div>
<h3>Software Development Engineering Intern</h3> <h3 id="software-development-engineering-intern">Software Development Engineering Intern</h3>
<p> <p>
Developed a chatbot add-on for the Azure Android application. Developed a chatbot add-on for the Azure Android application.
</p> </p>
@@ -230,7 +250,7 @@ layout: base.njk
<div class="job"> <div class="job">
<div class="two-col job-details"> <div class="two-col job-details">
<h3>FediLearns (<a <h3 id="fedilearns">FediLearns (<a
href="https://fedilearns.fyi" target="_blank">fedilearns.fyi</a>)</h3> href="https://fedilearns.fyi" target="_blank">fedilearns.fyi</a>)</h3>
<p class="col2"><time datetime="2026-04">April 2026</time> – Present <p class="col2"><time datetime="2026-04">April 2026</time> – Present
</p> </p>
@@ -245,7 +265,7 @@ layout: base.njk
<div class="job"> <div class="job">
<div class="two-col job-details"> <div class="two-col job-details">
<h3>Siblinghood of the Traveling Greeting Card (<a <h3 id="siblinghood-of-the-traveling-greeting-card">Siblinghood of the Traveling Greeting Card (<a
href="https://siblinghood.quest" href="https://siblinghood.quest"
target="_blank">siblinghood.quest</a>)</h3> target="_blank">siblinghood.quest</a>)</h3>
<p class="col2"><time datetime="2025-11">November 2025</time> – Present <p class="col2"><time datetime="2025-11">November 2025</time> – Present
@@ -258,6 +278,21 @@ layout: base.njk
<div class="spacer"></div> <div class="spacer"></div>
<div class="job">
<div class="two-col job-details">
<h3 id="fedizinefest">FediZineFest (<a href="https://fedizinefest.fyi"
target="_blank">fedizinefest.fyi</a>)</h3>
<p class="col2"><time datetime="2023-12">December 2023</time> – Present</p>
</div>
<p>Creates and runs a global event for zine artists on the fediverse, now in its
third year. Coordinates website, physical material shipping and
logistics, payment, and marketing for a 40–50 person project. Leads a small team
and delegates appropriate responsibilities.</p>
</div>
<div class="spacer"></div>
<div class="job"> <div class="job">
<div class="two-col job-details"> <div class="two-col job-details">
<h3>leecat.art (you are here!) (<a href="/">leecat.art</a>)</h3> <h3>leecat.art (you are here!) (<a href="/">leecat.art</a>)</h3>
@@ -271,22 +306,7 @@ layout: base.njk
<div class="job"> <div class="job">
<div class="two-col job-details"> <div class="two-col job-details">
<h3>FediZineFest (<a href="https://fedizinefest.fyi" <h3 id="rescue-trans-rescue">Rescue Trans Rescue (<a href="https://rescue-trans-rescue.quest"
target="_blank">fedizinefest.fyi</a>)</h3>
<p class="col2"><time datetime="2023-12">December 2023</time> – <time
datetime="2025-07">July 2025</time></p>
</div>
<p>Created and ran a global event for zine artists on the fediverse
for two years. Coordinated website, physical material shipping and
logistics, payment, and marketing for a 40–50 person project.</p>
</div>
<div class="spacer"></div>
<div class="job">
<div class="two-col job-details">
<h3>Rescue Trans Rescue (<a href="https://rescue-trans-rescue.quest"
target="_blank">rescue-trans-rescue.quest</a>)</h3> target="_blank">rescue-trans-rescue.quest</a>)</h3>
<p class="col2"><time datetime="2024">2024</time></p> <p class="col2"><time datetime="2024">2024</time></p>
</div> </div>
@@ -298,7 +318,7 @@ layout: base.njk
<hr> <hr>
<h2 class="centered upper">Education</h2> <h2 class="centered upper" id="education">Education</h2>
<p class="centered"> <p class="centered">
<b>Bachelor of Science — Computer Science</b> <b>Bachelor of Science — Computer Science</b>
+2
View File
@@ -110,6 +110,8 @@ Code blocks can have syntax highlighting:
<h1>Hello, world</h1> <h1>Hello, world</h1>
``` ```
### You can even write `headers in monospace`
## Tables ## Tables
Tables in Markdown are kind of annoying to format. You use the pipe (`|`) character as well as dashes. Tables in Markdown are kind of annoying to format. You use the pipe (`|`) character as well as dashes.
+1 -1
View File
@@ -8,4 +8,4 @@ tags:
- gender - gender
--- ---
an incomplete list of books by/for/about queer folks. <a href="https://docs.google.com/document/d/1wqLtUeow59XHp7QfRhGcyufywEvSCh4ed8kYST4F0Yk/edit?usp=sharing" target="_blank">check it out and add your favorites.</a> an incomplete list of books by/for/about queer folks. [check it out and add your favorites](https://docs.google.com/document/d/1wqLtUeow59XHp7QfRhGcyufywEvSCh4ed8kYST4F0Yk/edit?usp=sharing).
@@ -8,7 +8,7 @@ tags:
- book - book
--- ---
A green journal with a blue leather spine. The coloring pages are from the book [Color Acadia](https://www.ellsworthamerican.com/living/arts-a-living/color-acadia/){target="_blank" rel="external"} with art by Katie Dube and Keri Kimura. A green journal with a blue leather spine. The coloring pages are from the book [Color Acadia](https://www.ellsworthamerican.com/living/arts-a-living/color-acadia/) with art by Katie Dube and Keri Kimura.
## details ## details
+1 -1
View File
@@ -8,7 +8,7 @@ tags:
- book - book
--- ---
A leather spine journal with a striped front cover and navy back cover. It includes both blank pages and fold-out coloring pages from [Fantastic Cities](https://bookshop.org/p/books/fantastic-cities-a-coloring-book-of-amazing-places-real-and-imagined-adult-coloring-books-city-coloring-books-coloring-books-for-adu-steve-mcdonald/7572265?ean=9781452149578){target="_blank" rel="external"} by Steve McDonald. A leather spine journal with a striped front cover and navy back cover. It includes both blank pages and fold-out coloring pages from [Fantastic Cities](https://bookshop.org/p/books/fantastic-cities-a-coloring-book-of-amazing-places-real-and-imagined-adult-coloring-books-city-coloring-books-coloring-books-for-adu-steve-mcdonald/7572265?ean=9781452149578) by Steve McDonald.
## details ## details
+1 -1
View File
@@ -8,7 +8,7 @@ tags:
- book - book
--- ---
A small highlighter-orange journal with blank fold-out pages and floral coloring pages, including flocked pages, from [BLOOM](https://www.bluestarpress.com/product/bloom-a-coloring-book/){target="_blank" rel="external"} by Alli Koch. A small highlighter-orange journal with blank fold-out pages and floral coloring pages, including flocked pages, from [BLOOM](https://www.bluestarpress.com/product/bloom-a-coloring-book/) by Alli Koch.
## details ## details
+1 -1
View File
@@ -8,4 +8,4 @@ tags:
- knit - knit
--- ---
My second pair of socks, knit for my partner. They use [Schoppel-Wolle](https://www.schoppel-wolle.de/){target="_blank" rel="external"} Das Paar yarn in the colorway Fruhjahrsputz / Spring Cleaning. This yarn is designed to produce identical striping for each sock, and it very nearly did, with only a tiny discrepancy notable as I got to the toes. My second pair of socks, knit for my partner. They use [Schoppel-Wolle](https://www.schoppel-wolle.de/) Das Paar yarn in the colorway Fruhjahrsputz / Spring Cleaning. This yarn is designed to produce identical striping for each sock, and it very nearly did, with only a tiny discrepancy notable as I got to the toes.
+1 -1
View File
@@ -8,4 +8,4 @@ tags:
- knit - knit
--- ---
My first pair of socks, knit with [Seattle Sky Dyeworks](https://seattleskydyeworks.com/){target="_blank" rel="external"} Temporum yarn in colorway Salmon Run. My first pair of socks, knit with [Seattle Sky Dyeworks](https://seattleskydyeworks.com/) Temporum yarn in colorway Salmon Run.
+20 -16
View File
@@ -10,37 +10,41 @@ tags:
## Articles ## Articles
- [Critic of the Dawn](http://raggededgemagazine.com/0501/0501cov.htm){target="_blank" rel="external"} by Cal Montgomery - [Critic of the Dawn](http://raggededgemagazine.com/0501/0501cov.htm) by Cal Montgomery
- [pronouns aren't gender; please get better at looking at birds](https://kconrod.medium.com/pronouns-arent-gender-please-get-better-at-looking-at-birds-8e6310ef455a){target="_blank" rel="external"} by Kirby Conrod - [pronouns aren't gender; please get better at looking at birds](https://kconrod.medium.com/pronouns-arent-gender-please-get-better-at-looking-at-birds-8e6310ef455a) by Kirby Conrod
## Books ## Books
- [Camp Damascus](https://bookshop.org/p/books/camp-damascus-chuck-tingle/18738983){target="_blank" rel="external"} by Chuck Tingle - [Camp Damascus](https://bookshop.org/p/books/camp-damascus-chuck-tingle/18738983) by Chuck Tingle
- [How We Get Free](https://bookshop.org/p/books/how-we-get-free-black-feminism-and-the-combahee-river-collective-keeanga-yamahtta-taylor/8203276?ean=9781608468553){target="_blank" rel="external"} ed. by Keeanga-Yamahtta Taylor - [How We Get Free](https://bookshop.org/p/books/how-we-get-free-black-feminism-and-the-combahee-river-collective-keeanga-yamahtta-taylor/8203276?ean=9781608468553) ed. by Keeanga-Yamahtta Taylor
- [Laziness Does Not Exist](https://bookshop.org/p/books/laziness-does-not-exist-devon-price/14871468){target="_blank" rel="external"} by Devon Price, PhD - [Laziness Does Not Exist](https://bookshop.org/p/books/laziness-does-not-exist-devon-price/14871468) by Devon Price, PhD
- [The Soul of a New Machine](https://bookshop.org/p/books/the-soul-of-a-new-machine-tracy-kidder/113845){target="_blank" rel="external"} by Tracy Kidder - [The Soul of a New Machine](https://bookshop.org/p/books/the-soul-of-a-new-machine-tracy-kidder/113845) by Tracy Kidder
- [Stone Butch Blues](https://www.lesliefeinberg.net/){target="_blank" rel="external"} by Leslie Feinberg - [Stone Butch Blues](https://www.lesliefeinberg.net/) by Leslie Feinberg
- [Whipping Girl](https://bookshop.org/p/books/whipping-girl-lib-e-a-transsexual-woman-on-sexism-and-the-scapegoating-of-femininity-julia-serano/12413169){target="_blank" rel="external"} by Julia Serano - [Whipping Girl](https://bookshop.org/p/books/whipping-girl-lib-e-a-transsexual-woman-on-sexism-and-the-scapegoating-of-femininity-julia-serano/12413169) by Julia Serano
## Comedy ## Comedy
- [Douglas](https://www.netflix.com/title/81054700){target="_blank" rel="external"} by Hannah Gadsby - [Douglas](https://www.netflix.com/title/81054700) by Hannah Gadsby
## Comics ## Comics
- [Ten Thousand](https://xkcd.com/1053/){target="_blank" rel="external"} by Randall Munroe - [Ten Thousand](https://xkcd.com/1053/) by Randall Munroe
## Movies
- [To Wong Foo, Thanks for Everything! Julie Newmar](https://www.imdb.com/title/tt0114682/)
## Short fiction ## Short fiction
- [Why Don't We Just Kill the Kid in the Omelas Hole](https://clarkesworldmagazine.com/kim_02_24/){target="_blank" rel="external"} by Isabel J. Kim - [Why Don't We Just Kill the Kid in the Omelas Hole](https://clarkesworldmagazine.com/kim_02_24/) by Isabel J. Kim
## Social media threads ## Social media threads
- [It's 2026 and you wonder what your friends are up to.](https://retro.social/@ifixcoinops/113838462085835742){target="_blank" rel="external"} by [@ifixcoinops@retro.social](https://retro.social/@ifixcoinops){:target="_blank"} - [It's 2026 and you wonder what your friends are up to.](https://retro.social/@ifixcoinops/113838462085835742) by [@ifixcoinops@retro.social](https://retro.social/@ifixcoinops)
## Videos ## Videos
- (Playlist) [The Alt-Right Playbook](https://www.youtube.com/playlist?list=PLJA_jUddXvY7v0VkYRbANnTnzkA_HMFtQ){target="_blank" rel="external"} by Innuendo Studios - (Playlist) [The Alt-Right Playbook](https://www.youtube.com/playlist?list=PLJA_jUddXvY7v0VkYRbANnTnzkA_HMFtQ) by Innuendo Studios
- [Did feminism FAIL men?](https://www.youtube.com/watch?v=UOhs9jxe4lM){target="_blank" rel="external"} by Alexander Avila - [Did feminism FAIL men?](https://www.youtube.com/watch?v=UOhs9jxe4lM) by Alexander Avila
- [The Kronk Effect](https://www.youtube.com/watch?v=5Sz40XPPtKQ){target="_blank" rel="external"} by CJ the X - [The Kronk Effect](https://www.youtube.com/watch?v=5Sz40XPPtKQ) by CJ the X
- (Playlist) [Pretty Good](https://www.youtube.com/playlist?list=PLUXSZMIiUfFSCYW1o-4whWtepyVlsfuCC){target="_blank" rel="external"} by Jon Bois and Secret Base - (Playlist) [Pretty Good](https://www.youtube.com/playlist?list=PLUXSZMIiUfFSCYW1o-4whWtepyVlsfuCC) by Jon Bois and Secret Base
+2 -1
View File
@@ -1,5 +1,6 @@
--- ---
title: butch hands pattern title: butch hands pattern
layout: post-with-toc.njk
image: image:
src: 2023/butch-hands.jpg src: 2023/butch-hands.jpg
alt: "Hands wearing a pair of pink and grey gloves with convertable mitten tops." alt: "Hands wearing a pair of pink and grey gloves with convertable mitten tops."
@@ -16,7 +17,7 @@ This pattern is a **Work in Progress** and will be updated with more information
- Created: 12 March 2021 - Created: 12 March 2021
- Last updated: 13 February 2023 - Last updated: 13 February 2023
This pattern was built on the [Podster Gloves pattern](https://www.ravelry.com/patterns/library/podster-gloves){target="_blank" rel="external"} by Glenna C. on Ravelry. I highly recommend reading and following that pattern to fill in gaps with this one. This pattern was built on the [Podster Gloves pattern](https://www.ravelry.com/patterns/library/podster-gloves) by Glenna C. on Ravelry. I highly recommend reading and following that pattern to fill in gaps with this one.
## Materials and tools ## Materials and tools
+1 -1
View File
@@ -10,7 +10,7 @@ tags:
- shirt - shirt
--- ---
Hand carved stamp of a great blue heron. Based on a photo from [birdpixel](birdpixel.com){target="_blank" rel="external"}. Hand carved stamp of a great blue heron. Based on a photo from [birdpixel](birdpixel.com).
## details ## details
+10 -10
View File
@@ -11,22 +11,22 @@ tags:
### for transfer ### for transfer
- [speedy-carve](https://www.dickblick.com/products/speedball-speedy-carve-blocks/){target="_blank" rel="external"} - [speedy-carve](https://www.dickblick.com/products/speedball-speedy-carve-blocks/)
- I have since also used [moo carve](https://www.dickblick.com/products/moo-carve-professional-carving-blocks/){target="_blank" rel="external"} and been successful - I have since also used [moo carve](https://www.dickblick.com/products/moo-carve-professional-carving-blocks/) and been successful
- laserjet printed or xerox'd image, preferably something with high contrast - laserjet printed or xerox'd image, preferably something with high contrast
- acrylic gel medium - I use [Golden Soft Gel Matte](https://www.dickblick.com/items/golden-soft-acrylic-gel-medium-matte-16-oz-jar/){target="_blank" rel="external"} - acrylic gel medium - I use [Golden Soft Gel Matte](https://www.dickblick.com/items/golden-soft-acrylic-gel-medium-matte-16-oz-jar/)
- paintbrush - paintbrush
- [brayer](https://www.dickblick.com/products/testrite-foam-brayer/){target="_blank" rel="external"} - [brayer](https://www.dickblick.com/products/testrite-foam-brayer/)
### for carving ### for carving
- carving tool(s) such as [speedball carving tool](https://www.dickblick.com/products/speedball-linoleum-cutters/){target="_blank" rel="external"} or [flexcut carving tools](https://www.dickblick.com/products/flexcut-lino-relief-printmaking-set/){:target="_blank"} - carving tool(s) such as [speedball carving tool](https://www.dickblick.com/products/speedball-linoleum-cutters/) or [flexcut carving tools](https://www.dickblick.com/products/flexcut-lino-relief-printmaking-set/)
- I use a narrow V tool from flexcut and large/small U tools from speedball at current - I use a narrow V tool from flexcut and large/small U tools from speedball at current
### for printing ### for printing
- my favorite stamping ink at current is [VersaFine](https://www.tsukineko.co.jp/english/detail/versafine/index.html){target="_blank" rel="external"} - my favorite stamping ink at current is [VersaFine](https://www.tsukineko.co.jp/english/detail/versafine/index.html)
- (edit 18 Sep 2023) I have since used [Speedball fabric block printink inks](https://www.dickblick.com/products/speedball-fabric-paper-block-printing-ink/){target="_blank" rel="external"}. Preferable for fabric. - (edit 18 Sep 2023) I have since used [Speedball fabric block printink inks](https://www.dickblick.com/products/speedball-fabric-paper-block-printing-ink/). Preferable for fabric.
## process ## process
@@ -39,6 +39,6 @@ tags:
## references ## references
- [3 methods for transfer including PVA glue transfer](https://www.jacksonsart.com/blog/2021/11/19/the-best-way-to-transfer-images-to-lino/){target="_blank" rel="external"} - [3 methods for transfer including PVA glue transfer](https://www.jacksonsart.com/blog/2021/11/19/the-best-way-to-transfer-images-to-lino/)
- [gel medium transfer onto label paper](https://www.youtube.com/watch?v=EmKVw72mm5Q){target="_blank" rel="external"} - [gel medium transfer onto label paper](https://www.youtube.com/watch?v=EmKVw72mm5Q)
- [4 methods for transfer including gel medium transfer](https://www.youtube.com/watch?v=XD8AyNOisFw){target="_blank" rel="external"} - [4 methods for transfer including gel medium transfer](https://www.youtube.com/watch?v=XD8AyNOisFw)
@@ -1,5 +1,6 @@
--- ---
title: backend accessibility title: backend accessibility
layout: post-with-toc.njk
image: image:
src: 2023/camelCase-print.jpg src: 2023/camelCase-print.jpg
alt: "A carved stamp next to its print. The print reads '#camelCase' in a slightly formal-looking italic font." alt: "A carved stamp next to its print. The print reads '#camelCase' in a slightly formal-looking italic font."
@@ -8,7 +9,7 @@ tags:
- software - software
--- ---
> These notes are from a talk I gave at work. If you think something is missing or incorrect, please let me know! These notes are from a talk I gave at work. If you think something is missing or incorrect, please let me know!
Backend developers still have users: other developers. We're all human, with human limitations and differences. Design for those limitations and you'll find you improve the end result for everyone. Backend developers still have users: other developers. We're all human, with human limitations and differences. Design for those limitations and you'll find you improve the end result for everyone.
@@ -64,23 +65,23 @@ These are bits of feedback or further thoughts that have yet to be integrated in
## References ## References
- [Accessibility guidelines and requirements — Microsoft style guide](https://learn.microsoft.com/en-us/style-guide/accessibility/accessibility-guidelines-requirements){target="_blank" rel="external"} - [Accessibility guidelines and requirements — Microsoft style guide](https://learn.microsoft.com/en-us/style-guide/accessibility/accessibility-guidelines-requirements)
- [Write accessible documentation — Google docs style guide](https://developers.google.com/style/accessibility){target="_blank" rel="external"} - [Write accessible documentation — Google docs style guide](https://developers.google.com/style/accessibility)
- [Is it accessible? — Adrian Roselli](https://adrianroselli.com/2024/08/things-to-do-before-asking-is-this-accessible.html){target="_blank" rel="external"} - [Is it accessible? — Adrian Roselli](https://adrianroselli.com/2024/08/things-to-do-before-asking-is-this-accessible.html)
- [Collected accessibility resources — Marco Salsiccia](https://marconius.com/a11yLinks/){target="_blank" rel="external"} - [Collected accessibility resources — Marco Salsiccia](https://marconius.com/a11yLinks/)
- [A11y coffee](https://a11y.coffee/start-testing/){target="_blank" rel="external"} [note: spell out 'accessibility' rather than shortening to 'a11y'!] - [A11y coffee](https://a11y.coffee/start-testing/) [note: spell out 'accessibility' rather than shortening to 'a11y'!]
### Alt text/image descriptions ### Alt text/image descriptions
- [How to write an image description](https://uxdesign.cc/how-to-write-an-image-description-2f30d3bf5546){target="_blank" rel="external"} - [How to write an image description](https://uxdesign.cc/how-to-write-an-image-description-2f30d3bf5546)
- [How to write alt text and image descriptions for the visually impaired — Perkins School for the Blind](https://www.perkins.org/resource/how-write-alt-text-and-image-descriptions-visually-impaired/){target="_blank" rel="external"} - [How to write alt text and image descriptions for the visually impaired — Perkins School for the Blind](https://www.perkins.org/resource/how-write-alt-text-and-image-descriptions-visually-impaired/)
- [An attempted guide to writing effective alt and descriptive text for art](https://mannequinrentals.help/2024/03/21/an-attempted-guide-to-writing-effective-alt-and-descriptive-text-for-art/){target="_blank" rel="external"} - [An attempted guide to writing effective alt and descriptive text for art](https://mannequinrentals.help/2024/03/21/an-attempted-guide-to-writing-effective-alt-and-descriptive-text-for-art/)
- [Alt text as poetry](https://alt-text-as-poetry.net/){target="_blank" rel="external"} - [Alt text as poetry](https://alt-text-as-poetry.net/)
- [Writing alt text for a scientific figure - Kristin Briney](http://dataabinitio.com/?p=1161){target="_blank" rel="external"} - [Writing alt text for a scientific figure - Kristin Briney](http://dataabinitio.com/?p=1161)
- [My approach to alt text - Adrian Roselli](https://adrianroselli.com/2024/05/my-approach-to-alt-text.html) - [My approach to alt text - Adrian Roselli](https://adrianroselli.com/2024/05/my-approach-to-alt-text.html)
### Other specific topics ### Other specific topics
- [Tabs vs. spaces - Adam Tuttle](https://adamtuttle.codes/blog/2021/tabs-vs-spaces-its-an-accessibility-issue/){target="_blank" rel="external"} - [Tabs vs. spaces - Adam Tuttle](https://adamtuttle.codes/blog/2021/tabs-vs-spaces-its-an-accessibility-issue/)
- [Accessible numbers](https://accessiblenumbers.com){target="_blank" rel="external"} - [Accessible numbers](https://accessiblenumbers.com)
- [Chartability](https://chartability.fizz.studio){target="_blank" rel="external"} (data visualization) - [Chartability](https://chartability.fizz.studio) (data visualization)
+1 -1
View File
@@ -10,7 +10,7 @@ tags:
- shirt - shirt
--- ---
Hand carved set of stamps depicting a stellar's jay about to take off. Based on a photo from [birdpixel](birdpixel.com){target="_blank" rel="external"}. Hand carved set of stamps depicting a stellar's jay about to take off.
## details ## details
+1 -1
View File
@@ -9,7 +9,7 @@ tags:
- card - card
- shirt - shirt
--- ---
A large, *large* pigeon. Based on a fantastic photograph by [Chris Price](https://studiochris.us/){target="_blank" rel="external"}. A large, *large* pigeon. Based on a fantastic photograph by [Chris Price](https://studiochris.us/).
## details ## details
+1 -1
View File
@@ -10,7 +10,7 @@ tags:
- shirt - shirt
--- ---
Based on a fantastic picture by [handmade ghost](https://mstdn.games/@handmade_ghost){target="_blank" rel="external"} Based on a fantastic picture by [handmade ghost](https://mstdn.games/@handmade_ghost)
## details ## details
@@ -8,7 +8,7 @@ tags:
- book - book
--- ---
Includes coloring pages from [Animorphia by Kerby Rosanes](https://kerbyrosanes.com/animorphia){target="_blank" rel="external"}. Includes coloring pages from [Animorphia by Kerby Rosanes](https://kerbyrosanes.com/animorphia).
## details ## details
@@ -3,6 +3,8 @@ title: printing press notes
image: image:
src: 2023/printing-press.jpg src: 2023/printing-press.jpg
alt: "An open Speedball Model B printing press, which uses a lever handle to put even pressure on a 6 by 8 inch top plate." alt: "An open Speedball Model B printing press, which uses a lever handle to put even pressure on a 6 by 8 inch top plate."
tags:
- reference
--- ---
## specs ## specs
+21 -22
View File
@@ -92,8 +92,8 @@ In order to more easily discuss these topics, I will note here my working defini
There's a dearth of data on trans individuals. That said, we do have some relevant sources that have given us broad insight into trans communities. There's a dearth of data on trans individuals. That said, we do have some relevant sources that have given us broad insight into trans communities.
- [U.S. Transgender Survey](https://www.ustranssurvey.org/reports){target="_blank" rel="external"}, the largest survey ever devoted to the lives and experiences of transgender people, with 27,715 respondents across the United States. - [U.S. Transgender Survey](https://www.ustranssurvey.org/reports), the largest survey ever devoted to the lives and experiences of transgender people, with 27,715 respondents across the United States.
- [Gender Census](https://www.gendercensus.com/){target="_blank" rel="external"}, an annual survey that collects information about the language used by people whose genders are not adequately described, expressed or encompassed by the restrictive gender binary. - [Gender Census](https://www.gendercensus.com/), an annual survey that collects information about the language used by people whose genders are not adequately described, expressed or encompassed by the restrictive gender binary.
Both of these sources use ‘nonbinary’ as their usual spelling; I am mirroring that here. Both of these sources use ‘nonbinary’ as their usual spelling; I am mirroring that here.
@@ -107,7 +107,7 @@ It's always worthwhile to stop and look at how relevant or necessary gender info
> >
> "If you’re collecting gender identity data to personalize user-facing copy, try asking for preferred pronouns instead. If you’re asking because you want to make in-app content recommendations, try asking about the user’s content preferences. If you’re asking to generate a user avatar, let the user generate their own. Gender identity is a poor proxy variable — stick to asking for the information you actually want. > "If you’re collecting gender identity data to personalize user-facing copy, try asking for preferred pronouns instead. If you’re asking because you want to make in-app content recommendations, try asking about the user’s content preferences. If you’re asking to generate a user avatar, let the user generate their own. Gender identity is a poor proxy variable — stick to asking for the information you actually want.
[(Hunter, 2020)](https://builtin.com/software-engineering-perspectives/trans-inclusivity-tips-developers){target="_blank" rel="external"} [(Hunter, 2020)](https://builtin.com/software-engineering-perspectives/trans-inclusivity-tips-developers)
Drupal's gender field includes the following guidance in its description: Drupal's gender field includes the following guidance in its description:
@@ -118,7 +118,7 @@ Drupal's gender field includes the following guidance in its description:
> 5. Do you want to publicly display a person's gender on a profile? This is often a choice made by social media and dating/relationship sites. If you do this, consider making the field optional altogether. If you are providing user avatars, remember that human bodies come in all sorts, and allow individuals to choose an avatar separately from collecting this data. > 5. Do you want to publicly display a person's gender on a profile? This is often a choice made by social media and dating/relationship sites. If you do this, consider making the field optional altogether. If you are providing user avatars, remember that human bodies come in all sorts, and allow individuals to choose an avatar separately from collecting this data.
> 6. Do you need to know assigned gender for legal, medical or regulatory reasons? Current gender does not necessarily correspond to assigned sex at birth or legal gender marker, so be sure you are clear in what you are requesting of a person. It's particularly critical to be transparent about your privacy policy and the how this data will be used. > 6. Do you need to know assigned gender for legal, medical or regulatory reasons? Current gender does not necessarily correspond to assigned sex at birth or legal gender marker, so be sure you are clear in what you are requesting of a person. It's particularly critical to be transparent about your privacy policy and the how this data will be used.
[(McCabe and Beach, 2019)](https://www.drupal.org/project/gender){target="_blank" rel="external"} [(McCabe and Beach, 2019)](https://www.drupal.org/project/gender)
### Safety and prevention of abuse ### Safety and prevention of abuse
@@ -128,7 +128,7 @@ Drupal's gender field includes the following guidance in its description:
> >
> Instead of putting the burden on a user to fully understand the risks of sharing their highly personal information, let’s put the burden on ourselves to treat that information right. If we have no strong reason to collect it, or can’t guarantee its safety, we shouldn’t collect it. > Instead of putting the burden on a user to fully understand the risks of sharing their highly personal information, let’s put the burden on ourselves to treat that information right. If we have no strong reason to collect it, or can’t guarantee its safety, we shouldn’t collect it.
[(Spicknall, 2019)](https://medium.com/@SorenSpicknall/protecting-queer-communities-through-data-4707ae0cb562){target="_blank" rel="external"} [(Spicknall, 2019)](https://medium.com/@SorenSpicknall/protecting-queer-communities-through-data-4707ae0cb562)
If you do collect gender data, inform the user what it is used for and who it will be shared with. If you do collect gender data, inform the user what it is used for and who it will be shared with.
@@ -138,7 +138,7 @@ If you do collect gender data, inform the user what it is used for and who it wi
The availability of nonbinary gender options in legal systems varies by location. The ability to change one's gender marker (from one binary category to another or from binary to nonbinary) varies even more widely, with requirements ranging from simple voluntary declaration, to verification by medical professional(s) of varying treatments which vary in how accessible they are and whether they are actually desired by individuals for whom this is relevant, to only changing in response to proven "error," etc. The availability of nonbinary gender options in legal systems varies by location. The ability to change one's gender marker (from one binary category to another or from binary to nonbinary) varies even more widely, with requirements ranging from simple voluntary declaration, to verification by medical professional(s) of varying treatments which vary in how accessible they are and whether they are actually desired by individuals for whom this is relevant, to only changing in response to proven "error," etc.
[(Transgender Law Center, 2017)](http://transgenderlawcenter.org/wp-content/uploads/2016/12/Birth-Cert-overview-state-by-state.pdf){target="_blank" rel="external"} [(Movement Advancement Project)](https://www.lgbtmap.org/equality-maps/identity_document_laws){:target="_blank"} [(Knight and Ghosal, 2016)](https://www.hrw.org/world-report/2016/country-chapters/africa-americas-asia-europe/central-asia-middle-east/north-0){:target="_blank"} [(Transgender Law Center, 2017)](http://transgenderlawcenter.org/wp-content/uploads/2016/12/Birth-Cert-overview-state-by-state.pdf) [(Movement Advancement Project)](https://www.lgbtmap.org/equality-maps/identity_document_laws) [(Knight and Ghosal, 2016)](https://www.hrw.org/world-report/2016/country-chapters/africa-americas-asia-europe/central-asia-middle-east/north-0)
If you are not specifically trying to refer to an individual’s legal identification, don’t tie gender to it. If you are not specifically trying to refer to an individual’s legal identification, don’t tie gender to it.
@@ -154,7 +154,7 @@ This is variously defined to refer to sex assigned at birth, legal gender/sex ma
and more. This identifier may or may not be treated as binary and may or may not take into account an individual's medical history. and more. This identifier may or may not be treated as binary and may or may not take into account an individual's medical history.
[(Montañez, 2017)](https://blogs.scientificamerican.com/sa-visual/visualizing-sex-as-a-spectrum/){target="_blank" rel="external"} [(Montañez, 2017)](https://blogs.scientificamerican.com/sa-visual/visualizing-sex-as-a-spectrum/)
Outside of healthcare, this is largely unnecessary. For healthcare, see [Two- or multi- step approach](#two--or-multi--step-approach) and [Organ inventory](#organ-inventory). Outside of healthcare, this is largely unnecessary. For healthcare, see [Two- or multi- step approach](#two--or-multi--step-approach) and [Organ inventory](#organ-inventory).
@@ -164,7 +164,7 @@ As a way to accurately represent gender diverse people, "other" is, quite litera
> "Researchers have also developed methods to respond to challenges involved in data collection about sexual and gender identities which are culturally specific and unique. For example, in 2011, the government of Nepal attempted the world’s first census in which respondents had the option of choosing 'Male,' 'Female,' or 'Third Gender.' The effort was not successful for a number of reasons, among which was that large proportions of the gender minority population did not identify with the term 'third gender.' Subsequent research determined that the use of culturally specific terms such as 'Methi' and 'Kothi' would have increased the effectiveness of the census effort." > "Researchers have also developed methods to respond to challenges involved in data collection about sexual and gender identities which are culturally specific and unique. For example, in 2011, the government of Nepal attempted the world’s first census in which respondents had the option of choosing 'Male,' 'Female,' or 'Third Gender.' The effort was not successful for a number of reasons, among which was that large proportions of the gender minority population did not identify with the term 'third gender.' Subsequent research determined that the use of culturally specific terms such as 'Methi' and 'Kothi' would have increased the effectiveness of the census effort."
[(Park, 2016)](https://williamsinstitute.law.ucla.edu/publications/data-collection-sogi/){target="_blank" rel="external"} [(Park, 2016)](https://williamsinstitute.law.ucla.edu/publications/data-collection-sogi/)
### Expansive lists ### Expansive lists
@@ -183,11 +183,11 @@ For smaller projects, however, this is still an option. Or you can offer this to
### Assumptions that a single term will fully encompass gender, especially in a more exhaustive list of options ### Assumptions that a single term will fully encompass gender, especially in a more exhaustive list of options
Especially when providing expansive lists or allowing write in fields, ensure that terms that are not mutually exclusive must be chosen as though they are. This is the reasoning behind guidance for a two-step approach, described in more detail in [Two- or multi- step approach](#two--or-multi--step-approach), which "measures assigned sex at birth and self-reported gender identity at the time of the survey" [(Park, 2016)](https://williamsinstitute.law.ucla.edu/publications/data-collection-sogi/){target="_blank" rel="external"} Especially when providing expansive lists or allowing write in fields, ensure that terms that are not mutually exclusive must be chosen as though they are. This is the reasoning behind guidance for a two-step approach, described in more detail in [Two- or multi- step approach](#two--or-multi--step-approach), which "measures assigned sex at birth and self-reported gender identity at the time of the survey" [(Park, 2016)](https://williamsinstitute.law.ucla.edu/publications/data-collection-sogi/)
> "...some terms aren’t mutually exclusive, and framing them as such is offensive, Mons said: 'For example, if we list Man, Woman, Non-Binary, Trans Man and Trans Woman, **does that separation imply that someone who is trans and identifies as a man is not a man?**'" > "...some terms aren’t mutually exclusive, and framing them as such is offensive, Mons said: 'For example, if we list Man, Woman, Non-Binary, Trans Man and Trans Woman, **does that separation imply that someone who is trans and identifies as a man is not a man?**'"
[(Gossett, 2020)](https://builtin.com/data-science/dscout-gender-identity-data-practice){target="_blank" rel="external"} emphasis mine [(Gossett, 2020)](https://builtin.com/data-science/dscout-gender-identity-data-practice) emphasis mine
### Automatic detection of gender ### Automatic detection of gender
@@ -195,7 +195,7 @@ In addition to reinforcing binarism, this approaches tends to reinforce sexism a
> "Moreover, these works tend to codify (literally, to write into code) essentialist, stereotypical characterizations of male and female communication patterns and present them as universal, context-free, scientific truths." > "Moreover, these works tend to codify (literally, to write into code) essentialist, stereotypical characterizations of male and female communication patterns and present them as universal, context-free, scientific truths."
[(kanarinka, 2016)](https://civic.mit.edu/index.html%3Fp=1165.html){target="_blank" rel="external"} [(kanarinka, 2016)](https://civic.mit.edu/index.html%3Fp=1165.html)
For transgender individuals, automatic categorization as a gender they are not is often a frequent and painful occurrence. We should take care not to introduce unnecessary causes of harm into our systems, especially when they are less accurate and helpful than user self-identification. For transgender individuals, automatic categorization as a gender they are not is often a frequent and painful occurrence. We should take care not to introduce unnecessary causes of harm into our systems, especially when they are less accurate and helpful than user self-identification.
@@ -226,7 +226,7 @@ This may also be expanded to a multi-step approach, with questions covering some
- Sex assigned at birth - Sex assigned at birth
- Legal gender/sex designation - Legal gender/sex designation
- Transgender status - Transgender status
- This may additionally benefit from self-identification as "gender diverse, gender non-conforming, gender variant, or gender expansive" [(Stevens)](https://nikkistevens.com/open-demographics/questions/gender.html){target="_blank" rel="external"} either in the same question or as an additional question - This may additionally benefit from self-identification as "gender diverse, gender non-conforming, gender variant, or gender expansive" [(Stevens)](https://nikkistevens.com/open-demographics/questions/gender.html) either in the same question or as an additional question
- Intersex status - Intersex status
…but only if the data is necessary. …but only if the data is necessary.
@@ -239,11 +239,11 @@ This may also be expanded to a multi-step approach, with questions covering some
> >
> These procedures, however, also should also be un-coupled from any gender-coded template so that an individual coded as male who has had a hysterectomy, for example, could have that history documented. In addition, sex-specific organ procedures and diagnoses relating to these organs should be un-coupled, so that (as an example) a prostatic ultrasound may be ordered on a patient registered as female, or a cervical pap smear ordered on a patient registered as male. Such practices would allow enhanced decision support for transgender-specific care, such as medication interactions, organ- and sex-specific preventive health alerts, or accommodations for sex-specific laboratory normal value ranges. > These procedures, however, also should also be un-coupled from any gender-coded template so that an individual coded as male who has had a hysterectomy, for example, could have that history documented. In addition, sex-specific organ procedures and diagnoses relating to these organs should be un-coupled, so that (as an example) a prostatic ultrasound may be ordered on a patient registered as female, or a cervical pap smear ordered on a patient registered as male. Such practices would allow enhanced decision support for transgender-specific care, such as medication interactions, organ- and sex-specific preventive health alerts, or accommodations for sex-specific laboratory normal value ranges.
[(Deutsch, et. al, 2013)](https://www.healthit.gov/isa/sites/isa/files/2017-11/JAMIA%20-%20Transgender%20Health%20and%20EMRs.pdf){target="_blank" rel="external"} [(Deutsch, et. al, 2013)](https://www.healthit.gov/isa/sites/isa/files/2017-11/JAMIA%20-%20Transgender%20Health%20and%20EMRs.pdf)
Refer to the reference linked above for detailed examples of organ or surgical history inventories. Refer to the reference linked above for detailed examples of organ or surgical history inventories.
Additional reference (added Sep 2024): [(Bourns, 2023)](https://www.rainbowhealthontario.ca/wp-content/uploads/2021/09/Guidelines-FINAL-4TH-EDITION-With-2023-Updates.pdf){target="_blank" rel="external"} Additional reference (added Sep 2024): [(Bourns, 2023)](https://www.rainbowhealthontario.ca/wp-content/uploads/2021/09/Guidelines-FINAL-4TH-EDITION-With-2023-Updates.pdf)
### Differentiate with ‘cis’ and ‘trans’ ### Differentiate with ‘cis’ and ‘trans’
@@ -259,32 +259,31 @@ Healthcare systems in particular may benefit from [Organ inventory](#organ-inven
### WPATH guidelines on EMR ### WPATH guidelines on EMR
- WPATH: World Professional Association for Transgender Health [(WPATH, 2023)](https://wpath.org/about/mission-and-vision){target="_blank" rel="external"} - WPATH: World Professional Association for Transgender Health [(WPATH, 2023)](https://wpath.org/about/mission-and-vision)
- EMR: Electronic Medical Records - EMR: Electronic Medical Records
> Preferred name, gender identity, and pronoun preference, as identified by patients, should be included as demographic variables (such as with ethnicity). These would be captured in readily amendable, optional fields that are separate from the patient’s state-listed name and sex or gender designation, which may continue to be used for billing purposes in circumstances when the patient has not yet obtained legal change of name and/or sex or gender designation. Note that some patients may identify as ‘genderqueer’ and prefer the use of neither pronoun. While lists of current common gender identities, sex options, and pronoun options are provided [in original document, see source], ideally field parameters would be easily amended to reflect changing paradigms and social trends within transgender communities. > Preferred name, gender identity, and pronoun preference, as identified by patients, should be included as demographic variables (such as with ethnicity). These would be captured in readily amendable, optional fields that are separate from the patient’s state-listed name and sex or gender designation, which may continue to be used for billing purposes in circumstances when the patient has not yet obtained legal change of name and/or sex or gender designation. Note that some patients may identify as ‘genderqueer’ and prefer the use of neither pronoun. While lists of current common gender identities, sex options, and pronoun options are provided [in original document, see source], ideally field parameters would be easily amended to reflect changing paradigms and social trends within transgender communities.
[(Deutsch, et. al, 2013)](https://www.healthit.gov/isa/sites/isa/files/2017-11/JAMIA%20-%20Transgender%20Health%20and%20EMRs.pdf){target="_blank" rel="external"} [(Deutsch, et. al, 2013)](https://www.healthit.gov/isa/sites/isa/files/2017-11/JAMIA%20-%20Transgender%20Health%20and%20EMRs.pdf)
### Facebook ### Facebook
> "In 2014, Facebook expanded their gender options from 2 to 58 for English speakers in the US and UK. The gender options they added were created in consultation with the LGBTQIA community and range from 'gender non-conforming' to 'two-spirit' to 'trans female'. The corporation later added the ability to identify as more than one gender and to input a custom gender. ... While these changes may appear to be progressive, Facebook’s databases still resolve custom and non-binary genders to Male and Female on the backend based on the binary gender that users select at sign-up where the custom option is not available. Here is how the Facebook Marketing API views gender: 1 = Male, 2 = Female. So while a user and her friends may see her presented as the gender she elects, she is a 1 = Male or 2 = Female to any advertisers looking to purchase her attention." > "In 2014, Facebook expanded their gender options from 2 to 58 for English speakers in the US and UK. The gender options they added were created in consultation with the LGBTQIA community and range from 'gender non-conforming' to 'two-spirit' to 'trans female'. The corporation later added the ability to identify as more than one gender and to input a custom gender. ... While these changes may appear to be progressive, Facebook’s databases still resolve custom and non-binary genders to Male and Female on the backend based on the binary gender that users select at sign-up where the custom option is not available. Here is how the Facebook Marketing API views gender: 1 = Male, 2 = Female. So while a user and her friends may see her presented as the gender she elects, she is a 1 = Male or 2 = Female to any advertisers looking to purchase her attention."
[(kanarinka, 2016)](https://civic.mit.edu/index.html%3Fp=1165.html){target="_blank" rel="external"} [(kanarinka, 2016)](https://civic.mit.edu/index.html%3Fp=1165.html)
### Drupal ### Drupal
Uses a list of genders developed by the Open Demographics project. [(McCabe and Beach, 2019)](https://www.drupal.org/project/gender){target="_blank" rel="external"} [(Stevens)](https://nikkistevens.com/open-demographics/questions/gender.html){:target="_blank"} Uses a list of genders developed by the Open Demographics project. [(McCabe and Beach, 2019)](https://www.drupal.org/project/gender) [(Stevens)](https://nikkistevens.com/open-demographics/questions/gender.html)
### Salesforce Health Cloud ### Salesforce Health Cloud
Includes Male, Female, Other, and Decline to Specify as options for a gender field, and the field can be null. [(Salesforce)](https://developer.salesforce.com/docs/atlas.en-us.health_cloud_object_reference.meta/health_cloud_object_reference/health_contact_custom_fields.htm#!){target="_blank" rel="external"} Includes Male, Female, Other, and Decline to Specify as options for a gender field, and the field can be null. [(Salesforce)](https://developer.salesforce.com/docs/atlas.en-us.health_cloud_object_reference.meta/health_cloud_object_reference/health_contact_custom_fields.htm#!)
### Adobe XDM ### Adobe XDM
Includes Male, Female, Not Specified, and Non-specific. Defaults to not specifed. [(Adobe)](https://experienceleague.adobe.com/docs/experience-platform/xdm/field-groups/profile/demographic-details.html){target="_blank" rel="external"} [(Adobe)](https://github.com/adobe/xdm/blob/master/components/datatypes/person/person.schema.json#L50){:target="_blank"} Includes Male, Female, Not Specified, and Non-specific. Defaults to not specifed. [(Adobe)](https://experienceleague.adobe.com/docs/experience-platform/xdm/field-groups/profile/demographic-details.html) [(Adobe)](https://github.com/adobe/xdm/blob/master/components/datatypes/person/person.schema.json#L50)
### Epic Healthcare EMR ### Epic Healthcare EMR
Uses three different fields: sex assigned at birth, legal sex and gender identity. [(Landman, 2017)](https://www.wired.com/story/the-battle-to-get-gender-identity-into-your-health-records/){target="_blank" rel="external"} Uses three different fields: sex assigned at birth, legal sex and gender identity. [(Landman, 2017)](https://www.wired.com/story/the-battle-to-get-gender-identity-into-your-health-records/)
+1 -1
View File
@@ -8,7 +8,7 @@ tags:
- shirt - shirt
--- ---
hand-printed designs on [bella & canvas](https://shop.bellacanvas.com/){target="_blank" rel="external"} shirts. To order, ~~fill out this form~~ (Sep 2024: no longer taking orders via this method). Or just message me. hand-printed designs on [bella & canvas](https://shop.bellacanvas.com/) shirts. To order, ~~fill out this form~~ (Sep 2024: no longer taking orders via this method). Or just message me.
See the [shirt tag](tag/shirt) to view available designs. See the [shirt tag](tag/shirt) to view available designs.
+1 -1
View File
@@ -8,7 +8,7 @@ tags:
- sticker - sticker
--- ---
Clear and holographic stickers ordered through [DieCutStickers](diecutstickers.com){target="_blank" rel="external"}. See the [stickers tag](tag/sticker) to view available designs. Clear and holographic stickers ordered through [DieCutStickers](diecutstickers.com). See the [stickers tag](tag/sticker) to view available designs.
## previous round of stickers from StickerYou ## previous round of stickers from StickerYou
@@ -9,8 +9,8 @@ tags:
- card - card
--- ---
Learn more about [Artisans Cooperative](https://artisans.coop/){target="_blank" rel="external"}, a new platform for makers and supporters. Learn more about [Artisans Cooperative](https://artisans.coop/), a new platform for makers and supporters.
I've joined the "coop" and have made these cards/prints to support their fundraiser. I've joined the "coop" and have made these cards/prints to support their fundraiser.
[Buy them on Artisans Cooperative's new marketplace](https://artisans.coop/products/coop-logo-greeting-card){target="_blank" rel="external"}. [Buy them on Artisans Cooperative's new marketplace](https://artisans.coop/products/coop-logo-greeting-card).
@@ -0,0 +1,9 @@
---
title: rainbow shawl
image:
src: 2023/rainbow-shawl.jpg
alt: a woven shawl draped over a tree. the warp is a six-stripe rainbow, while the weft is a variety of neutral beige-brown tones, resulting in a muted rainbow.
tags:
- gallery
- weaving
---
+3 -3
View File
@@ -10,9 +10,9 @@ tags:
## topic: Artisans Cooperative ## topic: Artisans Cooperative
- Featured on the Artisans Cooperative blog. [Read the interview here](https://blog.artisans.coop/blog/artisans-profile-pride-month-feature-riverside-refuge-studios/){target="_blank" rel="external"}. - Featured on the Artisans Cooperative blog. [Read the interview here](https://blog.artisans.coop/blog/artisans-profile-pride-month-feature-riverside-refuge-studios/).
- Interviewed by Aaron Fernando for Shareable. [Read the full piece here](https://www.shareable.net/artisans-cooperative-an-etsy-alternative-owned-and-run-by-artists-and-makers/){target="_blank" rel="external"}. - Interviewed by Aaron Fernando for Shareable. [Read the full piece here](https://www.shareable.net/artisans-cooperative-an-etsy-alternative-owned-and-run-by-artists-and-makers/).
## topic: Trans/Queer ## topic: Trans/Queer
- Interviewed by Evan Urquhart for Slate. [Read the full piece here](https://slate.com/human-interest/2023/06/trans-gay-laws-florida-texas-lgbtq-danger.html){target="_blank" rel="external"}. - Interviewed by Evan Urquhart for Slate. [Read the full piece here](https://slate.com/human-interest/2023/06/trans-gay-laws-florida-texas-lgbtq-danger.html).
@@ -9,10 +9,10 @@ tags:
- print - print
--- ---
Learn more about [Artisans Cooperative](https://artisans.coop/){target="_blank" rel="external"}, a new platform for makers and supporters. Learn more about [Artisans Cooperative](https://artisans.coop/), a new platform for makers and supporters.
I've joined the "coop" and will be making shirts to support their fundraiser. I've joined the "coop" and will be making shirts to support their fundraiser.
[Buy them on Artisans Cooperative's new marketplace](https://artisans.coop/products/coop-tee){target="_blank" rel="external"}. [Buy them on Artisans Cooperative's new marketplace](https://artisans.coop/products/coop-tee).
~~Buy them via my order form~~. (Sep 2024: No longer accepting orders via this method) ~~Buy them via my order form~~. (Sep 2024: No longer accepting orders via this method)
@@ -7,7 +7,7 @@ tags:
- reference - reference
--- ---
## [Artisans Cooperative](https://artisans.coop/pages/seller-profile/riverside-refuge-studio){target="_blank" rel="external"} ## [Artisans Cooperative](https://artisans.coop/pages/seller-profile/riverside-refuge-studio)
- using this. clunky. variants are unintuitive. - using this. clunky. variants are unintuitive.
- allows me to set alt text for images. - allows me to set alt text for images.
@@ -19,7 +19,7 @@ tags:
- fuck etsy mxn - fuck etsy mxn
## [Kofi](https://ko-fi.com/inherentlee){target="_blank" rel="external"} ## [Kofi](https://ko-fi.com/inherentlee)
- using this currently, but it has a strict no-NSFW policy. - using this currently, but it has a strict no-NSFW policy.
@@ -36,7 +36,7 @@ tags:
- $30/month minimum after a few free months. - $30/month minimum after a few free months.
## [Square](https://riverside-refuge.square.site/){target="_blank" rel="external"} ## [Square](https://riverside-refuge.square.site/)
- this is my current preference. - this is my current preference.
- has a free tier! pay per transaction rather than monthly. - has a free tier! pay per transaction rather than monthly.
+32 -31
View File
@@ -1,5 +1,6 @@
--- ---
title: leatherworking favorites title: leatherworking favorites
layout: post-with-toc.njk
image: image:
src: 2023/leather-harness-wip.jpg src: 2023/leather-harness-wip.jpg
alt: "two pieces of a chest harness sitting on a messy workbench. both pieces are about 8 inches long total and consist of two large o-rings joined by a dark teal leather strap. the o rings and rivets are matte black." alt: "two pieces of a chest harness sitting on a messy workbench. both pieces are about 8 inches long total and consist of two large o-rings joined by a dark teal leather strap. the o rings and rivets are matte black."
@@ -18,51 +19,51 @@ If I have linked a tool, I really like that specific tool and find it stands out
- (need to have) some kind of scratch awl for marking - (need to have) some kind of scratch awl for marking
- (need to have) cutproof mat - (need to have) cutproof mat
- (need to have basically whenever you are using a mallet) ["poundo board" or cutting board](https://www.buckleguy.com/cutting-board-multiple-sizes/){target="_blank" rel="external"} (this is just an example, I got mine elsewhere) - importantly, this is distinct from your cutproof mat. you *can* use this in place of your cutproof mat but it tends to pick up a lot of punctures which can leave indents in your leather with pressure - so I only use mine for mallet-ing and otherwise use my cutproof mat - (need to have basically whenever you are using a mallet) ["poundo board" or cutting board](https://www.buckleguy.com/cutting-board-multiple-sizes/) (this is just an example, I got mine elsewhere) - importantly, this is distinct from your cutproof mat. you *can* use this in place of your cutproof mat but it tends to pick up a lot of punctures which can leave indents in your leather with pressure - so I only use mine for mallet-ing and otherwise use my cutproof mat
- (nice to have) [pattern plastic](https://www.weaverleathersupply.com/products/pattern-sheet-24-x-45){target="_blank" rel="external"} - but like I said above you can use non-corrugated cardboard - (nice to have) [pattern plastic](https://www.weaverleathersupply.com/products/pattern-sheet-24-x-45) - but like I said above you can use non-corrugated cardboard
- (nice to have) [acrylic leather thickness gauge](https://www.buckleguy.com/bg-acrylic-tool-leather-thickness-gauge/){target="_blank" rel="external"} - but you can also just use a ruler or calipers, or learn to gauge by eye/feel - (nice to have) [acrylic leather thickness gauge](https://www.buckleguy.com/bg-acrylic-tool-leather-thickness-gauge/) - but you can also just use a ruler or calipers, or learn to gauge by eye/feel
### cutting ### cutting
- (need to have) metal cork-backed ruler (cork backing will keep it from slip-sliding around) - (need to have) metal cork-backed ruler (cork backing will keep it from slip-sliding around)
- (nice to have, but any sharp blade will do) [ergo kiwi knife](https://www.buckleguy.com/ergo-kiwi-knife-2-0/){target="_blank" rel="external"} - (nice to have, but any sharp blade will do) [ergo kiwi knife](https://www.buckleguy.com/ergo-kiwi-knife-2-0/)
- (nice to have for harnesses, belts) strap cutter - (nice to have for harnesses, belts) strap cutter
- (nice to have for small objects with a lot of layers at the seams, like wallets) skiving knife of some kind. there's a lot of different types out there. I have a CS Osborne leather knife and I don't love it, but idk if that's just because I am still learning how to skive. - (nice to have for small objects with a lot of layers at the seams, like wallets) skiving knife of some kind. there's a lot of different types out there. I have a CS Osborne leather knife and I don't love it, but idk if that's just because I am still learning how to skive.
- you're supposed to skive on a fucken [rock](https://www.weaverleathersupply.com/products/marble-tooling-slab){target="_blank" rel="external"} so as not to absolutely wreck your cutproof mat. I haven't got my rock yet but I haven't ruined my mat yet either. - you're supposed to skive on a fucken [rock](https://www.weaverleathersupply.com/products/marble-tooling-slab) so as not to absolutely wreck your cutproof mat. I haven't got my rock yet but I haven't ruined my mat yet either.
- ok so I got a [skiving knife](https://www.weaverleathersupply.com/products/flat-leather-knife){target="_blank" rel="external"} from Weaver and it *definitely* beats out the CS Osborne leather knife - ok so I got a [skiving knife](https://www.weaverleathersupply.com/products/flat-leather-knife) from Weaver and it *definitely* beats out the CS Osborne leather knife
### edging and burnishing ### edging and burnishing
- (nice to have) edge beveler - (nice to have) edge beveler
- (need to have) sandpaper in maybe two grits. I have 100 and 600 sitting around right now - (need to have) sandpaper in maybe two grits. I have 100 and 600 sitting around right now
- (need to have) some small pieces of heavy canvas - (need to have) some small pieces of heavy canvas
- (nice to have) [tokonole!!!](https://www.buckleguy.com/seiwa-tokonole-leather-burnishing-gum-multiple-sizes-colors/){target="_blank" rel="external"} - (nice to have) [tokonole!!!](https://www.buckleguy.com/seiwa-tokonole-leather-burnishing-gum-multiple-sizes-colors/)
- tokonole can even burnish chrome tan leather and flesh side of veg tan - tokonole can even burnish chrome tan leather and flesh side of veg tan
- (nice to have) [wooden edge burnishing tool](https://www.buckleguy.com/leather-edge-slicker-burnishing-tool-beech-wood/){target="_blank" rel="external"} but tbh I find myself just using canvas instead of my burnishing tool - (nice to have) [wooden edge burnishing tool](https://www.buckleguy.com/leather-edge-slicker-burnishing-tool-beech-wood/) but tbh I find myself just using canvas instead of my burnishing tool
- you can also use wooden tool handles, if you have for example an edge beveler with a wooden handle sitting around - you can also use wooden tool handles, if you have for example an edge beveler with a wooden handle sitting around
- (nice to have/need to have if you don't get tokonole) beeswax - (nice to have/need to have if you don't get tokonole) beeswax
- (nice to have) [micro spatula](https://www.dickblick.com/items/lineco-micro-spatula-flat/){target="_blank" rel="external"} - I bought this for bookbinding but I find it useful for applying tokonole or doing other odd lil jobs - (nice to have) [micro spatula](https://www.dickblick.com/items/lineco-micro-spatula-flat/) - I bought this for bookbinding but I find it useful for applying tokonole or doing other odd lil jobs
### punching ### punching
- (need to have) a mallet or something for hitting things. yes there are $100 mauls you can buy. idk a shitty mallet is working fine for me so far - (need to have) a mallet or something for hitting things. yes there are $100 mauls you can buy. idk a shitty mallet is working fine for me so far
- alright i splurged on a maul and it was worth it. dammit. - alright i splurged on a maul and it was worth it. dammit.
- (nice to have) [japanese push drill](https://www.talasonline.com/Japanese-Push-Drill){target="_blank" rel="external"} and [bits](https://www.talasonline.com/Japanese-Push-Drill-Replacement-Bits){:target="_blank"} - (nice to have) [japanese push drill](https://www.talasonline.com/Japanese-Push-Drill) and [bits](https://www.talasonline.com/Japanese-Push-Drill-Replacement-Bits)
- if you don't want to go in on a $50 push drill, start with just some simple [single-hole punches](https://www.buckleguy.com/245-belt-punch-multiple-sizes/){target="_blank" rel="external"} or a [rotary punch](https://www.buckleguy.com/223-revolving-punch/){:target="_blank"}. rotary punches are pretty heavily recommended since they come with a range of punch sizes; I avoid them like the plague because I have small shitty hands and I think those would pair poorly with a rotary punch. - if you don't want to go in on a $50 push drill, start with just some simple [single-hole punches](https://www.buckleguy.com/245-belt-punch-multiple-sizes/) or a [rotary punch](https://www.buckleguy.com/223-revolving-punch/). rotary punches are pretty heavily recommended since they come with a range of punch sizes; I avoid them like the plague because I have small shitty hands and I think those would pair poorly with a rotary punch.
- if you're going to be attaching buckles, you'll need oblong holes for the buckle tongue. two options: - if you're going to be attaching buckles, you'll need oblong holes for the buckle tongue. two options:
- punch a standard hole at each end of your eventual oblong, then using a ruler and sharp small blade cut between those holes to create your oblong - punch a standard hole at each end of your eventual oblong, then using a ruler and sharp small blade cut between those holes to create your oblong
![A small piece of leather showing the steps to creating an oblong hole. First there is just a straight 1-inch line drawn by scratch awl. Holes are punched at both ends of that line. Two cuts are made coming from the right-side hole inwards (shown by arrows), about halfway. Similar cuts are then made from the left-hand hole inwards to meet them.](/img/2023/oblong-punch-alternative.jpg) ![A small piece of leather showing the steps to creating an oblong hole. First there is just a straight 1-inch line drawn by scratch awl. Holes are punched at both ends of that line. Two cuts are made coming from the right-side hole inwards (shown by arrows), about halfway. Similar cuts are then made from the left-hand hole inwards to meet them.](/img/2023/oblong-punch-alternative.jpg)
- get an [oblong punch](https://www.buckleguy.com/151-bag-punch-multiple-sizes/){target="_blank" rel="external"}. shaped punches are *expensive as shit* but if you're doing more than a few buckles this is worth it. - get an [oblong punch](https://www.buckleguy.com/151-bag-punch-multiple-sizes/). shaped punches are *expensive as shit* but if you're doing more than a few buckles this is worth it.
- another shaped punch: the [english point strap end punch](https://www.buckleguy.com/0150-strap-end-punch-english-point-multiple-sizes-1/){target="_blank" rel="external"}. I don't own this yet but am heavily considering it if I am going to make more harnesses (and I am). you don't specifically need english point - there's other strap end styles - but having *a* strap end punch in the size of your choosing is useful for harnesses, belts, anything with a lot of straps. - another shaped punch: the [english point strap end punch](https://www.buckleguy.com/0150-strap-end-punch-english-point-multiple-sizes-1/). I don't own this yet but am heavily considering it if I am going to make more harnesses (and I am). you don't specifically need english point - there's other strap end styles - but having *a* strap end punch in the size of your choosing is useful for harnesses, belts, anything with a lot of straps.
- with strap end punches, you can use a larger punch on a smaller strap (for an imperfect result, tbf) but not vice versa - with strap end punches, you can use a larger punch on a smaller strap (for an imperfect result, tbf) but not vice versa
- there are also strap end acrylic templates out there on several retailers sites - I have a tandy one - there are also strap end acrylic templates out there on several retailers sites - I have a tandy one
### riveting, snapping, etc ### riveting, snapping, etc
- for any given size/brand of rivets, you can usually buy a [setter](https://www.buckleguy.com/bg-rivet-setter-9-2mm-concave-end/){target="_blank" rel="external"} and [anvil](https://www.buckleguy.com/bg-rivet-setter-base-for-9-2-11-13mm-cap-rivets/){:target="_blank"} for maybe $25 together - for any given size/brand of rivets, you can usually buy a [setter](https://www.buckleguy.com/bg-rivet-setter-9-2mm-concave-end/) and [anvil](https://www.buckleguy.com/bg-rivet-setter-base-for-9-2-11-13mm-cap-rivets/) for maybe $25 together
- also I have one extra of both of those specific linked items, so if you're short on cash lmk and I will ship em to ya - since I have switched over to the next option - also I have one extra of both of those specific linked items, so if you're short on cash lmk and I will ship em to ya - since I have switched over to the next option
- however, if you think you might get really into leatherworking, or if you think you will be getting multiple sizes of rivets, attaching snaps, attaching other types of rivet-style clasps, whatever, I would highly recommend [this setter post and base](https://www.buckleguy.com/bg-setter-post-base-for-screw-in-dies/){target="_blank" rel="external"} and [a rivet setter die](https://www.buckleguy.com/bg-rivet-setter-die-multiple-sizes-requires-hand-tool-post-base-or-bg-hand-press/){:target="_blank"} or whichever setter die you need for your specific thing - however, if you think you might get really into leatherworking, or if you think you will be getting multiple sizes of rivets, attaching snaps, attaching other types of rivet-style clasps, whatever, I would highly recommend [this setter post and base](https://www.buckleguy.com/bg-setter-post-base-for-screw-in-dies/) and [a rivet setter die](https://www.buckleguy.com/bg-rivet-setter-die-multiple-sizes-requires-hand-tool-post-base-or-bg-hand-press/) or whichever setter die you need for your specific thing
- these dies also work with [larger presses](https://www.buckleguy.com/bg-180-convertible-hand-or-foot-press/){target="_blank" rel="external"} and make it much more possible to transition from a hand press to a full press without having to re-buy all your dies - these dies also work with [larger presses](https://www.buckleguy.com/bg-180-convertible-hand-or-foot-press/) and make it much more possible to transition from a hand press to a full press without having to re-buy all your dies
- according to Corter Leather at the very least (I don't really have the experience to make a full comparison) this system is much more reliable for well-balanced, well-rounded rivets, snaps, etc - according to Corter Leather at the very least (I don't really have the experience to make a full comparison) this system is much more reliable for well-balanced, well-rounded rivets, snaps, etc
### stitching ### stitching
@@ -71,9 +72,9 @@ If I have linked a tool, I really like that specific tool and find it stands out
- (need to have) stitching chisels! if you want to save some money, you mostly need the 6-tooth and the 2-tooth - 6 for straightaways, 2 for curves. I occasionally use my 4-tooth and *very* occasionally use my 1-tooth (except for zippers. if you wanna do zippers get a 1-tooth). - (need to have) stitching chisels! if you want to save some money, you mostly need the 6-tooth and the 2-tooth - 6 for straightaways, 2 for curves. I occasionally use my 4-tooth and *very* occasionally use my 1-tooth (except for zippers. if you wanna do zippers get a 1-tooth).
- my stitching chisels are 4mm spacing. I picked this pretty arbitrarily :) - my stitching chisels are 4mm spacing. I picked this pretty arbitrarily :)
- technically you could just buy a diamond awl or a 1-tooth chisel and poke each hole individually and that *would* be cheaper but oh my god love yourself - technically you could just buy a diamond awl or a 1-tooth chisel and poke each hole individually and that *would* be cheaper but oh my god love yourself
- (nice to have, any needles will do but oh my god these are pretty hashtag worth) [cs osborne harness needles, blunt tip](https://www.buckleguy.com/517-harness-needles-for-hand-sewing-blunt-tip-5-needles/){target="_blank" rel="external"} - (nice to have, any needles will do but oh my god these are pretty hashtag worth) [cs osborne harness needles, blunt tip](https://www.buckleguy.com/517-harness-needles-for-hand-sewing-blunt-tip-5-needles/)
- (need to have) thread - I am using [Ritza 25 Tiger Thread](https://www.buckleguy.com/ritza-25-tiger-thread/){target="_blank" rel="external"} (currently I have the 1.0mm size. I find it a little large and will probably size down when I order other colors - update, sized down to .8 and even have some .6 - much preferable) and have also used [MeiSi Superfine Linen Thread](https://threadsofmeisi.com/collections/meisi-superfine-linen-threads){:target="_blank"} but polyester threads are easier to seal off with a lighter - (need to have) thread - I am using [Ritza 25 Tiger Thread](https://www.buckleguy.com/ritza-25-tiger-thread/) (currently I have the 1.0mm size. I find it a little large and will probably size down when I order other colors - update, sized down to .8 and even have some .6 - much preferable) and have also used [MeiSi Superfine Linen Thread](https://threadsofmeisi.com/collections/meisi-superfine-linen-threads) but polyester threads are easier to seal off with a lighter
- (nice to have) some kind of [silicone needle puller](https://www.joann.com/needle-pullers-3-pkg/3500295.html){target="_blank" rel="external"} (I don't actually have this one, I was having trouble finding what I have - little pink finger covers that are all grippy) for gripping needles. or just use the back of a mousepad? or something? - (nice to have) some kind of [silicone needle puller](https://www.joann.com/needle-pullers-3-pkg/3500295.html) (I don't actually have this one, I was having trouble finding what I have - little pink finger covers that are all grippy) for gripping needles. or just use the back of a mousepad? or something?
### tool care ### tool care
@@ -86,24 +87,24 @@ If I have linked a tool, I really like that specific tool and find it stands out
- (need to have) a beveler. I have a smooth beveler at the moment, but am waiting on a checked beveler in the mail as I think I will like that look better - (need to have) a beveler. I have a smooth beveler at the moment, but am waiting on a checked beveler in the mail as I think I will like that look better
- (need to have) as mentioned previously, mallet or maul - (need to have) as mentioned previously, mallet or maul
- (nice to have) literally any other stamps i guess - (nice to have) literally any other stamps i guess
- (nice to have) templates! it really helps to start out with some designs made for swivel knife. I got a few (both free and paid) from [dadhands](https://www.dadhands.ca/){target="_blank" rel="external"} - (nice to have) templates! it really helps to start out with some designs made for swivel knife. I got a few (both free and paid) from [dadhands](https://www.dadhands.ca/)
### zippers ### zippers
- okay so I bought them because they are pretty but these [rainbow zippers](https://www.buckleguy.com/riri-zipper-continuous-chain-combi-eloxal-teeth-elox/){target="_blank" rel="external"} actually make it so much easier because you can differentiate each tooth from the next!!! - okay so I bought them because they are pretty but these [rainbow zippers](https://www.buckleguy.com/riri-zipper-continuous-chain-combi-eloxal-teeth-elox/) actually make it so much easier because you can differentiate each tooth from the next!!!
- (nice to have) tape such as [ted's tape](https://www.buckleguy.com/double-sided-tape/){target="_blank" rel="external"} - (nice to have) tape such as [ted's tape](https://www.buckleguy.com/double-sided-tape/)
## resources ## resources
- [Corter Leather on YouTube](https://www.youtube.com/@Corter){target="_blank" rel="external"} - [Corter Leather on YouTube](https://www.youtube.com/@Corter)
- [Leodis Leather on YouTube](https://www.youtube.com/@Leodis.Leather){target="_blank" rel="external"} - [Leodis Leather on YouTube](https://www.youtube.com/@Leodis.Leather)
- [dadhands on YouTube](https://www.youtube.com/@dadhands){target="_blank" rel="external"} - [dadhands on YouTube](https://www.youtube.com/@dadhands)
- [Maju T Works on YouTube](https://www.youtube.com/@majutworks){target="_blank" rel="external"} - [Maju T Works on YouTube](https://www.youtube.com/@majutworks)
## retailers ## retailers
- [buckleguy](https://www.buckleguy.com/){target="_blank" rel="external"} has been super speedy and reliable so far - for sure my favorite - [buckleguy](https://www.buckleguy.com/) has been super speedy and reliable so far - for sure my favorite
- [springfield leather](https://www.springfieldleather.com/){target="_blank" rel="external"} - [springfield leather](https://www.springfieldleather.com/)
- [tandy](https://tandyleather.com/){target="_blank" rel="external"} - [tandy](https://tandyleather.com/)
- [weaver leather supply](https://www.weaverleathersupply.com/){target="_blank" rel="external"} - [weaver leather supply](https://www.weaverleathersupply.com/)
- [longview leather (canada)](https://www.longviewleather.com/){target="_blank" rel="external"} - [longview leather (canada)](https://www.longviewleather.com/)
@@ -1,5 +1,6 @@
--- ---
title: domain and site setup title: domain and site setup
layout: post-with-toc.njk
image: image:
src: 2023/crinkly-mushrooms.jpg src: 2023/crinkly-mushrooms.jpg
alt: "Picture unrelated to post. Some crinkly brown-orange mushrooms in vibrant green grass." alt: "Picture unrelated to post. Some crinkly brown-orange mushrooms in vibrant green grass."
@@ -21,7 +22,7 @@ This is aimed at a non-technical audience, but my own perspective is technical a
After following this writeup, you should have: After following this writeup, you should have:
- a **domain name**: domain names identify internet locations with an easier-to-remember string than an IP (Internet Protocol) address. - a **domain name**: domain names identify internet locations with an easier-to-remember string than an IP (Internet Protocol) address.
- a **static website**: *static* means that the site has fixed, pre-built assets that remain the same regardless of who is viewing them (or the time of day, or the weather, or...). A static site can still vary widely in complexity! I created my static site using [GitHub Pages](https://pages.github.com/){target="_blank" rel="external"}, a free offering that requires some technical skill to configure, but I'll mention some alternate routes that require less technical know-how, including simply letting your domain name point to an existing site you don't control - like your [Artisans Cooperative](https://artisans.coop/){:target="_blank"} storefront. - a **static website**: *static* means that the site has fixed, pre-built assets that remain the same regardless of who is viewing them (or the time of day, or the weather, or...). A static site can still vary widely in complexity! I created my static site using [GitHub Pages](https://pages.github.com/), a free offering that requires some technical skill to configure, but I'll mention some alternate routes that require less technical know-how, including simply letting your domain name point to an existing site you don't control - like your [Artisans Cooperative](https://artisans.coop/) storefront.
This writeup will *not* cover every possible route to getting your own home on the web - there's far too many options out there. It's just meant to give you a starting point and a few ideas. This writeup will *not* cover every possible route to getting your own home on the web - there's far too many options out there. It's just meant to give you a starting point and a few ideas.
@@ -29,9 +30,9 @@ This writeup will *not* cover every possible route to getting your own home on t
### Top-level domains (TLDs) ### Top-level domains (TLDs)
I started planning my domain name by reviewing the list of TLDs - things like ".org" or ".com". ICANN (the Internet Corporation for Assigned Names and Numbers) maintains a [list of all TLDs](https://www.icann.org/resources/pages/tlds-2012-02-25-en){target="_blank" rel="external"} - it's long! Reviewing this list can help you think of potential domain names. You can also look at a list like [this one Wikipedia maintains](https://en.wikipedia.org/wiki/List_of_Internet_top-level_domains){:target="_blank"} - it has more detail and can tell you if a specific TLD is for a given country, reserved for specific uses, or (what you probably want) for general use. I started planning my domain name by reviewing the list of TLDs - things like ".org" or ".com". ICANN (the Internet Corporation for Assigned Names and Numbers) maintains a [list of all TLDs](https://www.icann.org/resources/pages/tlds-2012-02-25-en) - it's long! Reviewing this list can help you think of potential domain names. You can also look at a list like [this one Wikipedia maintains](https://en.wikipedia.org/wiki/List_of_Internet_top-level_domains) - it has more detail and can tell you if a specific TLD is for a given country, reserved for specific uses, or (what you probably want) for general use.
Personally, I narrowed it down to two - ".art" or ".gay". From there, it's off to the domain registrars! These are companies that offer domain names for sale. Here's [an article from Forbes Advisor reviewing some of the major names in the space](https://www.forbes.com/advisor/business/software/best-domain-registrar/){target="_blank" rel="external"}. I use Namecheap, but don't let that bias you. Look around at pricing (pay attention to the rate for year 2 onward - domain registrars often offer super low year 1 rates to hook customers) and consider other features, like support availability. Personally, I narrowed it down to two - ".art" or ".gay". From there, it's off to the domain registrars! These are companies that offer domain names for sale. Here's [an article from Forbes Advisor reviewing some of the major names in the space](https://www.forbes.com/advisor/business/software/best-domain-registrar/). I use Namecheap, but don't let that bias you. Look around at pricing (pay attention to the rate for year 2 onward - domain registrars often offer super low year 1 rates to hook customers) and consider other features, like support availability.
### Decide on a full domain name ### Decide on a full domain name
@@ -55,27 +56,27 @@ The easiest way to utilize a domain name is to have it redirect to another URL.
### Option 1, but better: redirect to a link tree ### Option 1, but better: redirect to a link tree
Link trees (popularized by [linktree](https://linktr.ee/){target="_blank" rel="external"}) are a single page with a collection of links maintained by an owner. You can use linktree or check out this [WIRED article with alternatives](https://www.wired.com/story/link-in-bio-linktree-alternatives/){:target="_blank"}. Some are paid, usually small monthly fees, and some are free. Link trees (popularized by [linktree](https://linktr.ee/)) are a single page with a collection of links maintained by an owner. You can use linktree or check out this [WIRED article with alternatives](https://www.wired.com/story/link-in-bio-linktree-alternatives/). Some are paid, usually small monthly fees, and some are free.
### Option 2: static site with GitHub Pages ### Option 2: static site with GitHub Pages
#### Wait, what's GitHub? #### Wait, what's GitHub?
[GitHub](https://github.com/){target="_blank" rel="external"} - wait, no. [GitHub](https://github.com/) - wait, no.
First, let's talk about [git](https://git-scm.com/){target="_blank" rel="external"}. Git is a *version control system*, a type of software that manages changes to a set of files. This allows the owner(s) of those files to do things like revert changes or compare current and historical versions of files. It also allows for multiple people to work on the same shared file repository without creating conflicts. First, let's talk about [git](https://git-scm.com/). Git is a *version control system*, a type of software that manages changes to a set of files. This allows the owner(s) of those files to do things like revert changes or compare current and historical versions of files. It also allows for multiple people to work on the same shared file repository without creating conflicts.
GitHub is a centralized source for many, many git repositories. It essentially allows you to back up both your code and the log of all changes to the cloud (someone else's computer). It also supports [GitHub Pages](https://pages.github.com/){target="_blank" rel="external"}, a free way to host a static site of your own. GitHub is a centralized source for many, many git repositories. It essentially allows you to back up both your code and the log of all changes to the cloud (someone else's computer). It also supports [GitHub Pages](https://pages.github.com/), a free way to host a static site of your own.
To get started with GitHub, you'll first need to [create an account](https://github.com/signup){target="_blank" rel="external"} if you don't have one. If you want to learn some GitHub basics, the GitHub team has created this handy [introduction to GitHub](https://github.com/skills/introduction-to-github){:target="_blank"} that walks you through some basic git and GitHub concepts. To get started with GitHub, you'll first need to [create an account](https://github.com/signup) if you don't have one. If you want to learn some GitHub basics, the GitHub team has created this handy [introduction to GitHub](https://github.com/skills/introduction-to-github) that walks you through some basic git and GitHub concepts.
### Now that we know what GitHub is... ### Now that we know what GitHub is...
The GitHub documentation is pretty thorough, so let's point to some articles over there. The GitHub documentation is pretty thorough, so let's point to some articles over there.
- [Creating a GitHub Pages site](https://docs.github.com/en/pages/getting-started-with-github-pages/creating-a-github-pages-site){target="_blank" rel="external"} walks you through getting a repository set up and automatically publishing to a URL like "your-github-username.github.io" (don't worry, we'll get that custom domain name attached soon!) - [Creating a GitHub Pages site](https://docs.github.com/en/pages/getting-started-with-github-pages/creating-a-github-pages-site) walks you through getting a repository set up and automatically publishing to a URL like "your-github-username.github.io" (don't worry, we'll get that custom domain name attached soon!)
- there's also this handy [GitHub Pages Quickstart](https://docs.github.com/en/pages/quickstart){target="_blank" rel="external"} - there's also this handy [GitHub Pages Quickstart](https://docs.github.com/en/pages/quickstart)
- [Adding a theme to your GitHub Pages site using Jekyll](https://docs.github.com/en/pages/setting-up-a-github-pages-site-with-jekyll/adding-a-theme-to-your-github-pages-site-using-jekyll){target="_blank" rel="external"} will show you how to use pre-created website themes to customize your site. - [Adding a theme to your GitHub Pages site using Jekyll](https://docs.github.com/en/pages/setting-up-a-github-pages-site-with-jekyll/adding-a-theme-to-your-github-pages-site-using-jekyll) will show you how to use pre-created website themes to customize your site.
- I suggest using one of the [supported themes](https://pages.github.com/themes/){target="_blank" rel="external"} as they will be the easiest to work with. - I suggest using one of the [supported themes](https://pages.github.com/themes/) as they will be the easiest to work with.
- [Managing a custom domain for your GitHub Pages site](https://docs.github.com/en/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site){target="_blank" rel="external"} will allow you to use that domain name you bought earlier for your new website! - [Managing a custom domain for your GitHub Pages site](https://docs.github.com/en/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site) will allow you to use that domain name you bought earlier for your new website!
- GitHub Pages is powered by [Jekyll](https://jekyllrb.com/){target="_blank" rel="external"}, a tool for generating static sites from Markdown (.md) files. [Learn more about a Jekyll project's file directory structure](https://jekyllrb.com/docs/structure/){:target="_blank"} - GitHub Pages is powered by [Jekyll](https://jekyllrb.com/), a tool for generating static sites from Markdown (.md) files. [Learn more about a Jekyll project's file directory structure](https://jekyllrb.com/docs/structure/)
+20 -19
View File
@@ -1,5 +1,6 @@
--- ---
title: on pronouns title: on pronouns
layout: post-with-toc.njk
image: image:
src: 2023/starling.jpg src: 2023/starling.jpg
alt: Image unrelated to post. A starling, a beautifully iridescent black bird, stands on a hanging suet feeder. alt: Image unrelated to post. A starling, a beautifully iridescent black bird, stands on a hanging suet feeder.
@@ -8,7 +9,7 @@ tags:
- gender - gender
--- ---
Created in cooperation with [Julia Pinedo](https://www.linkedin.com/in/julia-pinedo-094162117/){target="_blank" rel="external"}. Created in cooperation with [Jonah Pinedo](https://www.linkedin.com/in/jonahpinedo/).
Adapted from a workplace session on pronouns and gender identity. Adapted from a workplace session on pronouns and gender identity.
@@ -140,7 +141,7 @@ this is all new, right? ...right?
### ***PRACTICE!*** ### ***PRACTICE!***
- Deliberately think or speak about a specific person using the correct pronouns - Deliberately think or speak about a specific person using the correct pronouns
- Use practice passages such as [Alice in Wonderland Texts - Gender Neutral Pronoun Blog](https://genderneutralpronoun.wordpress.com/about/alice/){target="_blank" rel="external"} - Use practice passages such as [Alice in Wonderland Texts - Gender Neutral Pronoun Blog](https://genderneutralpronoun.wordpress.com/about/alice/)
- Correcting others is actually great practice – it helps you be more aware of pronouns in speech - Correcting others is actually great practice – it helps you be more aware of pronouns in speech
- The key to success will be repetition and reinforcement - The key to success will be repetition and reinforcement
- Mistakes are normal, and this *does* take effort - Mistakes are normal, and this *does* take effort
@@ -181,7 +182,7 @@ beyond just "they"
While I can't speak for all neopronoun users, here are some of my personal reasons for using ze/hir in addition to he/him: While I can't speak for all neopronoun users, here are some of my personal reasons for using ze/hir in addition to he/him:
1. **Reflect my own gendered identity.** Personally, my experiences when others have used they/them for me have been negative. Especially early in transition and in times where I aligned more strongly with being a man, it often felt like a way for folks to avoid gendering me. Because of this, I still have a deep dislike towards being referred to with those pronouns. Ze/hir or other neopronouns reflect a strongly gendered nonbinary identity to me. 1. **Reflect my own gendered identity.** Personally, my experiences when others have used they/them for me have been negative. Especially early in transition and in times where I aligned more strongly with being a man, it often felt like a way for folks to avoid gendering me. Because of this, I still have a deep dislike towards being referred to with those pronouns. Ze/hir or other neopronouns reflect a strongly gendered nonbinary identity to me.
1. **Connect with queer history.** My particular preference for ze/hir comes from [Leslie Feinberg's](https://www.lesliefeinberg.net/){target="_blank" rel="external"} use of these pronouns. I understand myself as in community with other queer/trans people and my pronoun usage reflects that. 1. **Connect with queer history.** My particular preference for ze/hir comes from [Leslie Feinberg's](https://www.lesliefeinberg.net/) use of these pronouns. I understand myself as in community with other queer/trans people and my pronoun usage reflects that.
1. **Encourage learning, curiosity, and willingness to play.** I notice often that cisgender (non-trans) folks are so afraid of making mistakes that it hinders learning and growth. I want to encourage folks to try new things around me, and to be playful with language rather than afraid. I think our ability to adapt language to our needs is beautiful and powerful, and I want to encourage that. 1. **Encourage learning, curiosity, and willingness to play.** I notice often that cisgender (non-trans) folks are so afraid of making mistakes that it hinders learning and growth. I want to encourage folks to try new things around me, and to be playful with language rather than afraid. I think our ability to adapt language to our needs is beautiful and powerful, and I want to encourage that.
1. **Pave the way for more vulnerable queer people to express themselves.** As someone in a position of relative privilege, it is far easier for me to publicly use neopronouns than it may be for other queer/trans folks who find they align with neos. If someone has already seen me using neos, they are less likely to push back on the next person they see doing so - even if that means I am the one to deal with that pushback. 1. **Pave the way for more vulnerable queer people to express themselves.** As someone in a position of relative privilege, it is far easier for me to publicly use neopronouns than it may be for other queer/trans folks who find they align with neos. If someone has already seen me using neos, they are less likely to push back on the next person they see doing so - even if that means I am the one to deal with that pushback.
1. **Be more visible as a trans person.** This ties back to (1). While some trans people prefer to fly under the radar so to speak and be read as a cis person of their gender, there is no cis version of "nonbinary". For me, being understood by others as a binary cis man feels stifling and incorrect. Neopronouns are one way to make my transness more visible as someone who is otherwise not always read as queer. And, as in (4), that visibility helps pave the way for others :\) 1. **Be more visible as a trans person.** This ties back to (1). While some trans people prefer to fly under the radar so to speak and be read as a cis person of their gender, there is no cis version of "nonbinary". For me, being understood by others as a binary cis man feels stifling and incorrect. Neopronouns are one way to make my transness more visible as someone who is otherwise not always read as queer. And, as in (4), that visibility helps pave the way for others :\)
@@ -196,29 +197,29 @@ While I can't speak for all neopronoun users, here are some of my personal reaso
### Books ### Books
- On pronouns: - On pronouns:
- [What's Your Pronoun?: Beyond He and She a book by Dennis Baron](https://bookshop.org/p/books/what-s-your-pronoun-beyond-he-and-she-dennis-baron/8279940){target="_blank" rel="external"} - [What's Your Pronoun?: Beyond He and She a book by Dennis Baron](https://bookshop.org/p/books/what-s-your-pronoun-beyond-he-and-she-dennis-baron/8279940)
- [A Quick And Easy Guide To They/Them Pronouns — Archie Bongiovanni and Tristan Jimerson](https://www.archiebongiovanni.com/they-them){target="_blank" rel="external"} - [A Quick And Easy Guide To They/Them Pronouns — Archie Bongiovanni and Tristan Jimerson](https://www.archiebongiovanni.com/they-them)
- On trans identity and history: - On trans identity and history:
- [Transgender History: The Roots of Today's Revolution by Susan Stryker](https://bookshop.org/p/books/transgender-history-the-roots-of-today-s-revolution-susan-stryker/7605046){target="_blank" rel="external"} - [Transgender History: The Roots of Today's Revolution by Susan Stryker](https://bookshop.org/p/books/transgender-history-the-roots-of-today-s-revolution-susan-stryker/7605046)
- [Whipping Girl: A Transsexual Woman on Sexism and the Scapegoating of Femininity by Julia Serano](https://bookshop.org/p/books/whipping-girl-a-transsexual-woman-on-sexism-and-the-scapegoating-of-femininity-julia-serano/7604121){target="_blank" rel="external"}[\*](#transsexual) - [Whipping Girl: A Transsexual Woman on Sexism and the Scapegoating of Femininity by Julia Serano](https://bookshop.org/p/books/whipping-girl-a-transsexual-woman-on-sexism-and-the-scapegoating-of-femininity-julia-serano/7604121)[\*](#transsexual)
- [In Transit: Being Non-Binary in a World of Dichotomies by Dianna E. Anderson and Emily Vanderwerff](https://bookshop.org/p/books/in-transit-being-non-binary-in-a-world-of-dichotomies-dianna-e-anderson/18114824){target="_blank" rel="external"} - [In Transit: Being Non-Binary in a World of Dichotomies by Dianna E. Anderson and Emily Vanderwerff](https://bookshop.org/p/books/in-transit-being-non-binary-in-a-world-of-dichotomies-dianna-e-anderson/18114824)
### Articles ### Articles
- [Prof. Kirby Conrod](http://kirbyconrod.com/){target="_blank" rel="external"} is a nonbinary professor of linguistics - [Prof. Kirby Conrod](http://kirbyconrod.com/) is a nonbinary professor of linguistics
- [pronouns 101: introduction to your loved one’s new pronouns by Kirby Conrod](https://kconrod.medium.com/pronouns-101-introduction-to-your-loved-ones-new-pronouns-3fef080266d0){target="_blank" rel="external"} - [pronouns 101: introduction to your loved one’s new pronouns by Kirby Conrod](https://kconrod.medium.com/pronouns-101-introduction-to-your-loved-ones-new-pronouns-3fef080266d0)
- [pronouns 102: how to stop messing up pronouns by Kirby Conrod](https://kconrod.medium.com/pronouns-102-how-to-stop-messing-up-pronouns-9bd66911118){target="_blank" rel="external"} - [pronouns 102: how to stop messing up pronouns by Kirby Conrod](https://kconrod.medium.com/pronouns-102-how-to-stop-messing-up-pronouns-9bd66911118)
- [Intermediate Pronoun Studies: pronouns conflicting with presentation by Kirby Conrod](https://kconrod.medium.com/intermediate-pronoun-studies-reader-question-1-cd6063030a98){target="_blank" rel="external"} - [Intermediate Pronoun Studies: pronouns conflicting with presentation by Kirby Conrod](https://kconrod.medium.com/intermediate-pronoun-studies-reader-question-1-cd6063030a98)
- [intermediate pronoun studies: multiple pronouns by Kirby Conrod](https://kconrod.medium.com/intermediate-pronoun-studies-multiple-pronouns-71e34cd28c54){target="_blank" rel="external"} - [intermediate pronoun studies: multiple pronouns by Kirby Conrod](https://kconrod.medium.com/intermediate-pronoun-studies-multiple-pronouns-71e34cd28c54)
- [Julia Serano](https://www.juliaserano.com/writings.html){target="_blank" rel="external"} writes eloquently on many aspects of transness, especially as it interacts with science - [Julia Serano](https://www.juliaserano.com/writings.html) writes eloquently on many aspects of transness, especially as it interacts with science
- [How to be a trans ally at work : Life Kit : NPR](https://www.npr.org/2020/06/02/867780063/4-ways-to-make-your-workplace-equitable-for-trans-people){target="_blank" rel="external"} - [How to be a trans ally at work : Life Kit : NPR](https://www.npr.org/2020/06/02/867780063/4-ways-to-make-your-workplace-equitable-for-trans-people)
### Other resources ### Other resources
- [Gender Census](https://www.gendercensus.com/){target="_blank" rel="external"} catalogs the words nonbinary people use for themselves - [Gender Census](https://www.gendercensus.com/) catalogs the words nonbinary people use for themselves
- [Pronouns.page](https://pronouns.page/){target="_blank" rel="external"} has resources on pronouns and gender-neutral language in multiple languages - [Pronouns.page](https://pronouns.page/) has resources on pronouns and gender-neutral language in multiple languages
- [GENDER REVEAL](https://www.genderpodcast.com/){target="_blank" rel="external"} is a podcast with a different trans guest each episode – an excellent look into the diversity of trans experiences - [GENDER REVEAL](https://www.genderpodcast.com/) is a podcast with a different trans guest each episode – an excellent look into the diversity of trans experiences
- [Parlare by franny](https://franny.itch.io/parlare-gender-neutral-pronoun-app?secret=toQDv9bqZ1Cj63gGV9kBd9VVLY){target="_blank" rel="external"}, an app that teaches gender-neutral pronoun use - [Parlare by franny](https://franny.itch.io/parlare-gender-neutral-pronoun-app?secret=toQDv9bqZ1Cj63gGV9kBd9VVLY), an app that teaches gender-neutral pronoun use
## * asides ## * asides
@@ -7,6 +7,5 @@ tags:
- gallery - gallery
- leather - leather
- gender - gender
- patch
--- ---
Limited number available for free in my [square shop](https://riverside-refuge.square.site/product/tooled-leather-pronoun-patch/91){target="_blank" rel="external"} with the code "FREEPATCH"
@@ -6,6 +6,7 @@ image:
tags: tags:
- gallery - gallery
- leather - leather
- highlight
--- ---
inspired by [this YouTube video](https://www.youtube.com/watch?v=t36dAp1s2NQ){target="_blank" rel="external"} inspired by [this YouTube video](https://www.youtube.com/watch?v=t36dAp1s2NQ)
@@ -14,7 +14,7 @@ Cataloguing paper I have worked with and any notes.
### Japanese paper 10 sheet assortment ### Japanese paper 10 sheet assortment
- [Japanese paper 10 sheet assortment](https://www.dickblick.com/products/japanese-paper-10-sheet-assortment/){target="_blank" rel="external"} - [Japanese paper 10 sheet assortment](https://www.dickblick.com/products/japanese-paper-10-sheet-assortment/)
- Contains: - Contains:
- Kinwashi - 25"x37" - Kinwashi - 25"x37"
- Kitakata - 16"x20" - Kitakata - 16"x20"
@@ -36,7 +36,7 @@ Cataloguing paper I have worked with and any notes.
### Rives ### Rives
[Lightweight Rives Printmaking Paper, Cream](https://www.dickblick.com/items/bfk-rives-printmaking-paper-19-x-26-cream-115-gsm-light-sheet/){target="_blank" rel="external"} [Lightweight Rives Printmaking Paper, Cream](https://www.dickblick.com/items/bfk-rives-printmaking-paper-19-x-26-cream-115-gsm-light-sheet/)
- Tears really nicely - Tears really nicely
- I like the lightweight paper - I like the lightweight paper
@@ -50,7 +50,7 @@ Cataloguing paper I have worked with and any notes.
### Hahnemühle Ingres ### Hahnemühle Ingres
[Hahnemühle Ingres Paper](https://www.dickblick.com/products/hahnemuhle-ingres-paper/){target="_blank" rel="external"} [Hahnemühle Ingres Paper](https://www.dickblick.com/products/hahnemuhle-ingres-paper/)
- comes in a lot of colors - comes in a lot of colors
- tears well - tears well
@@ -7,9 +7,3 @@ tags:
- gallery - gallery
- leather - leather
--- ---
Made a few variations of this; check out the shop for more details and options:
- [fixed o-ring bracelet](https://riverside-refuge.square.site/product/fixed-o-ring-bracelet/108){target="_blank" rel="external"}
- [swappable o-ring bracelet](https://riverside-refuge.square.site/product/swappable-o-ring-bracelet/102){target="_blank" rel="external"}
- [premade o-ring bracelets](https://riverside-refuge.square.site/product/premade-o-ring-bracelets/106){target="_blank" rel="external"}
@@ -1,5 +1,6 @@
--- ---
title: gender as a proxy variable title: gender as a proxy variable
layout: post-with-toc.njk
image: image:
src: 2024/gender-zine-cover.png src: 2024/gender-zine-cover.png
alt: "Part of a scan of the cover of my zine, Gender as a Proxy Variable. It shows the title and a bit of handsewn binding." alt: "Part of a scan of the cover of my zine, Gender as a Proxy Variable. It shows the title and a bit of handsewn binding."
@@ -9,7 +10,7 @@ tags:
- zine - zine
--- ---
[Get print copies.](https://riverside-refuge.square.site/product/gender-as-a-proxy-variable-print-zine/113){target="_blank" rel="external"} [Get print copies.](https://riverside-refuge.square.site/product/gender-as-a-proxy-variable-print-zine/113)
The below material is a web page reproduction of my zine **Gender as a Proxy Variable**. The below material is a web page reproduction of my zine **Gender as a Proxy Variable**.
@@ -7,5 +7,3 @@ tags:
- gallery - gallery
- print - print
--- ---
currently offering these free [in the shop](https://riverside-refuge.square.site/product/tiny-personal-pet-portrait-stamp/111){target="_blank" rel="external"} with the code FREESTAMP
@@ -8,7 +8,7 @@ tags:
- gender - gender
--- ---
This is in response to an F.D Signifier video, [How to get RICH off weak men!](https://www.youtube.com/watch?v=1QNjwM2a87g){target="_blank" rel="external"} (go follow him!). It is written as a response video and the script has not been changed to fit this format. This is in response to an F.D Signifier video, [How to get RICH off weak men!](https://www.youtube.com/watch?v=1QNjwM2a87g) (go follow him!). It is written as a response video and the script has not been changed to fit this format.
As much as it's a response video, I think the content should also stand on its own. As much as it's a response video, I think the content should also stand on its own.
+6 -5
View File
@@ -1,5 +1,6 @@
--- ---
title: no politics (wip) title: no politics (wip)
layout: post-with-toc.njk
image: image:
src: 2024/mushroom-on-fence.jpg src: 2024/mushroom-on-fence.jpg
alt: "Picture unrelated to post. A small orange mushroom grows from the center of a fence post." alt: "Picture unrelated to post. A small orange mushroom grows from the center of a fence post."
@@ -27,7 +28,7 @@ You can probably see what’s coming a mile away.
> the total complex of relations between people living in society > the total complex of relations between people living in society
is how [Merriam-Webster defines politics](https://www.merriam-webster.com/dictionary/politics){target="_blank" rel="external"}. It is not the only definition, and it is not the first definition, but it’s nicely non-circular and doesn’t get us bogged down in what is and isn’t government policy. is how [Merriam-Webster defines politics](https://www.merriam-webster.com/dictionary/politics). It is not the only definition, and it is not the first definition, but it’s nicely non-circular and doesn’t get us bogged down in what is and isn’t government policy.
That might be a more expansive definition than what you’re used to. Let’s take a detour. That might be a more expansive definition than what you’re used to. Let’s take a detour.
@@ -37,9 +38,9 @@ The idea that “the personal is political” has been around since second-wave
> A political contribution which we feel we have already made is the expansion of the feminist principle that the personal is political. > A political contribution which we feel we have already made is the expansion of the feminist principle that the personal is political.
— [Combahee River Collective Statement](https://www.blackpast.org/african-american-history/combahee-river-collective-statement-1977/){target="_blank" rel="external"} — [Combahee River Collective Statement](https://www.blackpast.org/african-american-history/combahee-river-collective-statement-1977/)
“The personal is political” and associated political movement is pushback against an insistence on individualizing systemic issues. Crenshaw frames it as a “process of recognizing as social and systemic what was formerly perceived as isolated and individual” ([Mapping the Margins: Intersectionality, Identity Politics, and Violence against Women of Color by Kimberlé Crenshaw](https://www.jstor.org/stable/1229039){target="_blank" rel="external"}) and it’s *vital* in our current understanding of things like sexual assault and domestic violence as — forgive me for repeating the word yet again — *systemic* issues. “The personal is political” and associated political movement is pushback against an insistence on individualizing systemic issues. Crenshaw frames it as a “process of recognizing as social and systemic what was formerly perceived as isolated and individual” ([Mapping the Margins: Intersectionality, Identity Politics, and Violence against Women of Color by Kimberlé Crenshaw](https://www.jstor.org/stable/1229039)) and it’s *vital* in our current understanding of things like sexual assault and domestic violence as — forgive me for repeating the word yet again — *systemic* issues.
## What does “no politics” gain us? ## What does “no politics” gain us?
@@ -55,7 +56,7 @@ As a frequent moderator, I see the appeal in this. Political discussions can be
Especially in environments where you want to welcome a large and diverse group of people, the aim should be to make the membership and prospective membership comfortable (possibly while also warding off trolls who want to argue). Especially in environments where you want to welcome a large and diverse group of people, the aim should be to make the membership and prospective membership comfortable (possibly while also warding off trolls who want to argue).
For some, "the law isn't about shaping society, it's about who gets punished" ([I Hate Mondays by Innuendo Studios](https://youtu.be/yts2F44RqFw?si=QZMJQWqahdJ4-1Eb&t=452){target="_blank" rel="external"}). Politics are a method of assigning blame. "No politics" means no one is to blame. For some, "the law isn't about shaping society, it's about who gets punished" ([I Hate Mondays by Innuendo Studios](https://youtu.be/yts2F44RqFw?si=QZMJQWqahdJ4-1Eb&t=452)). Politics are a method of assigning blame. "No politics" means no one is to blame.
## Interlude ## Interlude
@@ -81,4 +82,4 @@ notes
- there are ways to limit how "no politics" gets deployed: make specific rules against shutting down people talking about their lived experience, avoid backseat modding becoming the norm - there are ways to limit how "no politics" gets deployed: make specific rules against shutting down people talking about their lived experience, avoid backseat modding becoming the norm
- there are ways to limit your definition of "politics" so that you can more carefully delineate what you are trying to avoid, though I would be wary of this route - the fact is that a No Politics rule, no matter how well reasoned, may read as a red flag for a marginalized person - there are ways to limit your definition of "politics" so that you can more carefully delineate what you are trying to avoid, though I would be wary of this route - the fact is that a No Politics rule, no matter how well reasoned, may read as a red flag for a marginalized person
[Politics of Political](https://blog.oup.com/2018/11/politics-of-political/){target="_blank" rel="external"} [Politics of Political](https://blog.oup.com/2018/11/politics-of-political/)
@@ -7,10 +7,6 @@ tags:
- reference - reference
--- ---
Updated 13 Aug 2024
The content previously found on this page is now hosted on a standalone site. The content previously found on this page is now hosted on a standalone site.
[Visit the site](https://rescue-trans-rescue.glitch.me){target="_blank" rel="external"}. [Visit rescue-trans-rescue.quest](https://rescue-trans-rescue.quest).
(Site down? Not loading? [Check for issues with Glitch, our hosting provider](https://status.glitch.com/){target="_blank" rel="external"}.)
Loaded 100 of 151 files, more files were not shown because too many files have changed in this diff. Show more