diff --git a/404.html b/404.html
index 9253102fc..a7a978299 100644
--- a/404.html
+++ b/404.html
@@ -6,7 +6,7 @@
-
diff --git a/art/all-crustaceans-really-are-beautiful/index.html b/art/all-crustaceans-really-are-beautiful/index.html
index 9eabedfcd..f42d9eb6c 100644
--- a/art/all-crustaceans-really-are-beautiful/index.html
+++ b/art/all-crustaceans-really-are-beautiful/index.html
@@ -6,7 +6,7 @@
-
diff --git a/art/anarchic-illustrations/index.html b/art/anarchic-illustrations/index.html
index f4a5cc45f..0c29cc6fa 100644
--- a/art/anarchic-illustrations/index.html
+++ b/art/anarchic-illustrations/index.html
@@ -6,7 +6,7 @@
-
diff --git a/art/autumn-pumpkins/index.html b/art/autumn-pumpkins/index.html
index 767e71b2c..bd4ca20a5 100644
--- a/art/autumn-pumpkins/index.html
+++ b/art/autumn-pumpkins/index.html
@@ -6,7 +6,7 @@
-
diff --git a/art/catherine-the-great/index.html b/art/catherine-the-great/index.html
index 9346520f8..4aa728631 100644
--- a/art/catherine-the-great/index.html
+++ b/art/catherine-the-great/index.html
@@ -6,7 +6,7 @@
-
diff --git a/art/character-studies/index.html b/art/character-studies/index.html
index ade08d1ba..6b54f629e 100644
--- a/art/character-studies/index.html
+++ b/art/character-studies/index.html
@@ -6,7 +6,7 @@
-
diff --git a/art/do-what-makes-you-happy/index.html b/art/do-what-makes-you-happy/index.html
index 7ecfa93ad..d8dc0bdbc 100644
--- a/art/do-what-makes-you-happy/index.html
+++ b/art/do-what-makes-you-happy/index.html
@@ -6,7 +6,7 @@
-
diff --git a/art/freedom-is-not-given-its-taken/index.html b/art/freedom-is-not-given-its-taken/index.html
index eec45adae..c79fb97f2 100644
--- a/art/freedom-is-not-given-its-taken/index.html
+++ b/art/freedom-is-not-given-its-taken/index.html
@@ -6,7 +6,7 @@
-
diff --git a/art/fuck-capitalism/index.html b/art/fuck-capitalism/index.html
index 39f8adf1f..3d5626b86 100644
--- a/art/fuck-capitalism/index.html
+++ b/art/fuck-capitalism/index.html
@@ -6,7 +6,7 @@
-
diff --git a/art/index.html b/art/index.html
index fe85c2099..f389d55b1 100644
--- a/art/index.html
+++ b/art/index.html
@@ -6,7 +6,7 @@
-
diff --git a/art/one-hundered-days-of-gouache/index.html b/art/one-hundered-days-of-gouache/index.html
index cd1edd453..c26c4d6db 100644
--- a/art/one-hundered-days-of-gouache/index.html
+++ b/art/one-hundered-days-of-gouache/index.html
@@ -6,7 +6,7 @@
-
diff --git a/art/page/2/index.html b/art/page/2/index.html
index 9fb98c873..300e1346c 100644
--- a/art/page/2/index.html
+++ b/art/page/2/index.html
@@ -6,7 +6,7 @@
-
diff --git a/art/supporters-kofi-weekly-roundup/index.html b/art/supporters-kofi-weekly-roundup/index.html
index 5db6331aa..57e22ec52 100644
--- a/art/supporters-kofi-weekly-roundup/index.html
+++ b/art/supporters-kofi-weekly-roundup/index.html
@@ -6,7 +6,7 @@
-
diff --git a/art/vegetable-portraits/index.html b/art/vegetable-portraits/index.html
index a3c2f503d..9f3e09c05 100644
--- a/art/vegetable-portraits/index.html
+++ b/art/vegetable-portraits/index.html
@@ -6,7 +6,7 @@
-
diff --git a/art/work-in-progress/index.html b/art/work-in-progress/index.html
index 79de9467d..1447a042b 100644
--- a/art/work-in-progress/index.html
+++ b/art/work-in-progress/index.html
@@ -6,7 +6,7 @@
-
diff --git a/books/anarchic-agreements-a-field-guide-to-collective-organising/index.html b/books/anarchic-agreements-a-field-guide-to-collective-organising/index.html
index 0ad814468..4fc601eab 100644
--- a/books/anarchic-agreements-a-field-guide-to-collective-organising/index.html
+++ b/books/anarchic-agreements-a-field-guide-to-collective-organising/index.html
@@ -6,7 +6,7 @@
-
diff --git a/books/expect-resistance-a-crimethinc-field-manual/index.html b/books/expect-resistance-a-crimethinc-field-manual/index.html
index ad5981fa4..1d39e7373 100644
--- a/books/expect-resistance-a-crimethinc-field-manual/index.html
+++ b/books/expect-resistance-a-crimethinc-field-manual/index.html
@@ -6,7 +6,7 @@
-
diff --git a/books/ghost-work/index.html b/books/ghost-work/index.html
index 99029d72e..df2914479 100644
--- a/books/ghost-work/index.html
+++ b/books/ghost-work/index.html
@@ -6,7 +6,7 @@
-
diff --git a/books/index.html b/books/index.html
index e0ffee93b..557d826df 100644
--- a/books/index.html
+++ b/books/index.html
@@ -6,7 +6,7 @@
-
diff --git a/books/lost-in-work-escaping-capitalism/index.html b/books/lost-in-work-escaping-capitalism/index.html
index 6d7757726..1372d3741 100644
--- a/books/lost-in-work-escaping-capitalism/index.html
+++ b/books/lost-in-work-escaping-capitalism/index.html
@@ -6,7 +6,7 @@
-
diff --git a/books/revolution-at-point-zero/index.html b/books/revolution-at-point-zero/index.html
index 988a79d00..85056b1e9 100644
--- a/books/revolution-at-point-zero/index.html
+++ b/books/revolution-at-point-zero/index.html
@@ -6,7 +6,7 @@
-
diff --git a/books/the-age-of-surveillance-capitalism/index.html b/books/the-age-of-surveillance-capitalism/index.html
index 63cdbcae7..f9873ecb8 100644
--- a/books/the-age-of-surveillance-capitalism/index.html
+++ b/books/the-age-of-surveillance-capitalism/index.html
@@ -6,7 +6,7 @@
-
diff --git a/books/the-feminist-and-the-sex-offender/index.html b/books/the-feminist-and-the-sex-offender/index.html
index 7205e4109..61453018e 100644
--- a/books/the-feminist-and-the-sex-offender/index.html
+++ b/books/the-feminist-and-the-sex-offender/index.html
@@ -6,7 +6,7 @@
-
diff --git a/categories/index.html b/categories/index.html
index 9496e2168..f606c7802 100644
--- a/categories/index.html
+++ b/categories/index.html
@@ -6,7 +6,7 @@
-
diff --git a/index.html b/index.html
index f4ca1170b..3a77c12d9 100644
--- a/index.html
+++ b/index.html
@@ -6,7 +6,7 @@
-
@@ -15,7 +15,7 @@
Security Engineer by trade.
I currently live on the unceded land of the
Wadawurrung and Dja Dja Wurrung People.
# 🌈 Now
- 📐 Security Engineer @ Canva
- 🧠 Learning how to be a better anarchist, anti-capitalist and revolutionary
- 👨💻 Currently working on making this site available on a handful of esoteric protocols like
IPFS and
-Hypercore:
- ✍️ Working on anarchic illustrations and prints and tending to my winter garden
- 📚 Reading
+Hypercore:
- ✍️ Working on anarchic illustrations and prints and tending to my winter garden
- 📚 Reading
Ghost Work
# 🗺️ Explore
Here are some places you might explore:
- 📖
the notebook: a collection of musings and evolving ideas.
- 🎨
the art studio: art & illustrative projects, notes and musings.
- 📚
diff --git a/indices/contentIndex.6ae175ab5df145d55254ccc8d9774f59.min.json b/indices/contentIndex.4747be0a2dbad685b0909dadb0ddf96e.min.json
similarity index 94%
rename from indices/contentIndex.6ae175ab5df145d55254ccc8d9774f59.min.json
rename to indices/contentIndex.4747be0a2dbad685b0909dadb0ddf96e.min.json
index 4d4133b8c..0eefd6757 100644
--- a/indices/contentIndex.6ae175ab5df145d55254ccc8d9774f59.min.json
+++ b/indices/contentIndex.4747be0a2dbad685b0909dadb0ddf96e.min.json
@@ -1 +1 @@
-{"/":{"title":"home","content":"\nWelcome to my digital garden. 🌱\n\nI'm **[errbufferoverfl](notes/errbufferoverfl.md)**, or Buffy for short. I'm a non-binary (**they/sie/ze**) anarchic gardener, knowledge librarian, and [Security Engineer](notes/security-engineer.md) by trade.\n\nI currently live on the unceded land of the [Wadawurrung and Dja Dja Wurrung People](notes/wadawurrung-and-dja-dja-wurrung-people.md).\n\n# 🌈 Now\n\n- 📐 Security Engineer @ Canva\n- 🧠 Learning how to be a better [[anarchist]], anti-capitalist and revolutionary\n- 👨💻 Currently working on making this site available on a handful of esoteric protocols like [IPFS](notes/ipfs.md) and [Hypercore](notes/hypercore.md):\n\t- [x] `ipfs://garden.ipfs.errbufferoverfl.me`\n\t- [x] `hyper://garden.hyper.errbufferoverfl.me`\n\t- [ ] `gemini://garden.gemini.errbufferoverfl.me`\n- ✍️ Working on anarchic illustrations and prints and tending to my winter garden\n- 📚 Reading [Ghost Work](books/ghost-work.md)\n\n# 🗺️ Explore\n\nHere are some places you might explore:\n\n- 📖 [the notebook](/notes): a collection of musings and evolving ideas.\n- 🎨 [the art studio](/the-art-studio.md): art \u0026 illustrative projects, notes and musings.\n- 📚 [the antilibrary](/the-antilibrary.md): books that are in some state of read, being read, or to be read.\n- 🎙️ [the soapbox](/soapbox): meetup, conference and training that I've previously delivered.\n- 🔧 [the engineering anthology](notes/projects.md): a collection of notable projects that I’ve finished and or currently maintaining.\n\nWant to get in touch? Checkout [where to find me](https://links.errbufferoverfl.me).","lastmodified":"2023-07-15T02:15:03.218110609Z","tags":[]},"/art/all-crustaceans-really-are-beautiful":{"title":"All Crustaceans Really Are Beautiful ","content":"\n![all-crustaceans-really-are-beautiful](/imgs/art/all-crustaceans-really-are-beautiful.jpeg)","lastmodified":"2023-07-15T02:15:03.218110609Z","tags":["oeuvre","digital painting","anarchic"]},"/art/anarchic-illustrations":{"title":"anarchic illustrations","content":"\nDrawings, prints and stickers promoting the abolition of traditional forms of government and institutions.\n\nAll my anarchic themed illustrations are available as high-res downloads, available under CC by 4.0 on [Ko-Fi](https://ko-fi.com/album/-Anarchic-Illustrations-A0A5KQCYU).\n\n{{\u003c page-gallery tag=\"anarchic\"\u003e}} ","lastmodified":"2023-07-15T02:15:03.218110609Z","tags":["project"]},"/art/autumn-pumpkins":{"title":"autumn pumpkins","content":"\n![autumn pumpkins](imgs/art/autumn-pumpkins.jpg)","lastmodified":"2023-07-15T02:15:03.218110609Z","tags":["oeuvre","digital painting","vegetables"]},"/art/catherine-the-great":{"title":"👑 Catherine the Great - A Tiny Character Study","content":"\n![catherine the great a tiny character study](/imgs/art/catherine-the-great-study.png)","lastmodified":"2023-07-15T02:15:03.218110609Z","tags":["oeuvre","character study"]},"/art/character-studies":{"title":"Character Studies","content":"\nLittle illustrations and spreads that have been created to explore the traits of characters, featuring my favourites from television shows, movies and my imagination.\n\n{{\u003c page-gallery tag=\"character study\"\u003e}} ","lastmodified":"2023-07-15T02:15:03.218110609Z","tags":["project"]},"/art/do-what-makes-you-happy":{"title":"Do What Makes You Happy","content":"\n![Do What Makes You Happy](imgs/art/do-what-makes-you-happy.png)","lastmodified":"2023-07-15T02:15:03.218110609Z","tags":["oeuvre","gouache","100 days gouache"]},"/art/freedom-is-not-given-its-taken":{"title":"Freedom is not Given its Taken","content":"\n![Freedom is not Given its Taken](imgs/art/freedom-is-not-given-its-taken.png)","lastmodified":"2023-07-15T02:15:03.218110609Z","tags":["oeuvre","wip","work in progress"]},"/art/fuck-capitalism":{"title":"Fuck Capitalism","content":"\n![Fuck Capitalism](imgs/art/fuck-capitalism.png)","lastmodified":"2023-07-15T02:15:03.218110609Z","tags":["oeuvre","gouache","100 days gouache"]},"/art/one-hundered-days-of-gouache":{"title":"100 days of gouache","content":"\nThe concept of a 100 days project is you commit to doing something consistently for 100 days straight. For a non sequential 100 days I created a [[notes/gouache|gouache]] painting using [100 Days of Drawing](https://www.booktopia.com.au/100-days-of-drawing-guided-sketchbook--jennifer-lewis/book/9781419732171.html) by Jennifer Lewis.\n\n{{\u003c page-gallery tag=\"100 days gouache\"\u003e}}","lastmodified":"2023-07-15T02:15:03.218110609Z","tags":["oeuvre"]},"/art/supporters-kofi-weekly-roundup":{"title":"[Supporters] Ko-Fi Weekly Roundup","content":"\nWelcome to another weekly roundup that are becoming fortnightly roundups ~ \n\nFor the past week-ish I've been on a well needed break from work taking a couple of days to visit South Australia and pick up a new hobby in the form of gouache painting which I'll get to soon. \n \n🔒 [Available for supporters only.](https://ko-fi.com/post/2023-05-27--Weekly-Roundup-E1E5LNY52)","lastmodified":"2023-07-15T02:15:03.218110609Z","tags":["kofi","supporters","weekly-update"]},"/art/vegetable-portraits":{"title":"Vegetable Portraits","content":"\nPortraits of my favourite and seasonal vegetables created using a variety of artistic mediums, they act as consistent theme that records changes in art style.\n\n{{\u003c page-gallery tag=\"vegetables\"\u003e}} ","lastmodified":"2023-07-15T02:15:03.218110609Z","tags":["project"]},"/art/work-in-progress":{"title":"Work in Progress","content":"\nWork that is still in progress and being worked on.\n\n{{\u003c page-gallery tag=\"work in progress\"\u003e}} ","lastmodified":"2023-07-15T02:15:03.218110609Z","tags":["project"]},"/books/anarchic-agreements-a-field-guide-to-collective-organising":{"title":"Anarchic Agreements, a Field Guide to Collective Organising","content":"\n*A new world is possible and not just in our hearts. Anarchic Agreements is a quintessential field guide for the revolution, answering the practical questions often left out of works of political theory and philosophy.*\n- *How do leaderless groups organize?* \n- *How might they create constitutions, balance power and write protocols?* \n- *How do group cultures and institutions maintain coalitions?* \n\n*This urgent and inspiring how-to is the product of more than twenty years of research. Designed explicitly for everyday use, it contains lived examples, illustrations throughout, and text from current horizontally organized constitutions. These documents illustrate the never-ending process of developing community and keeping collaborations alive in the fairest ways possible. Written by dedicated anarchist scholars and organizers, and based on the widely popular Anarchic Agreements pamphlet series, this book facilitates grassroots activism and provides methods to improve and streamline decision making. It is an inspiring celebration of the novel, complex and flexible constitutions Anarchists have created over time. This book shows how to realize another world, collectively without domination, while leaving the future open to infinite other possibilities.*\n\n**authored by** [[Ruth Kinna]], [[Alex Prichard]], [[Thomas Swann]], [[Seeds for Change]]\n\npublished on November 22, 2022 by PM Press\n\n## High-Level Thoughts\n\nGood book to read cover to cover, but ultimately better as a reference, this book is a practical guide to building durable, fair and coercion free groups and coalitions. It won't tell you how-to in the traditional sense but provides the tools needed to determine how to.\n\n## Summary Notes\n\nConstitutions aren't static documents (nor do they need to be written documents!), they are (or should be) constantly revised. They define \"rules\" (social norms?) of a community and divide power into visible sub-groups so that it's not all concentrated within one group of people, i.e., cliques, or friendship groups.\n\nSupporting the process of constitutionalising doesn't imply that [anarchists](anarchist) need to support or defend the constitution of state and nation. But we should acknowledge that a constitution in a group or coalition can be helpful in defining our understanding of right and wrong, and balancing power.\n\nThe difference with constitutions backed by [the state](notes/the-state.md) is not only are they remain fixed and difficult to change even when our ideas of equality, equity and material power change. This is compounded by the fact the state often uses coercive controls to keep people from contesting or challenging the existing constitution.\n\nModern constitutions represent the interests of the most powerful individuals and groups in society and changing these constitutions means changing the interests of the most powerful – which is unlikely to happen especially if as part of redefining the constitution their power and privilege is reduced, redistributed or removed.\n\nHaving a constitution, or a constitutional process is not the same as democracy, and democracy isn't always antithetical to the constitution of a society.\n\n### Building Durable Groups\n\nA constitution, wether written or not should aim to create a shared understanding of who the group is, and how they do things. (Similar to a team working agreement?). A good anarchic constitution must be: **consensual**, **changeable**, and **conscious**.\n\n**Consensual** doesn't mean being told what to do, to have a proper consensual agreement, everyone should be able to shape the agreement, or at the least have their needs taken into account.\n\nProtracted meetings about policies can lead to a group losing people who are keen to get things done, it's important to find compromise [Consensus and Humming in the IETF](notes/consensus-and-humming-in-the-ietf.md) provides a method of creating rough consensus that I think is applicable here.\n\nConstitutions should be revised regularly, cadence can be decided by the group but it can be tied to key events, like new people joining, established members leaving etc., it could also be regularly updated as established members update their views and/or circumstances change.\n\nConstitutions and building consensus should be balanced with group stability and and having all views reflected, for example:\n\u003e An anti-nuclear power group wouldn't be expected to become pro-nuclear because someone joined the group and said they didn't agree with what it is all about.\n\nSo while a group might not change their principals, they might be flexible about how those principals are achieved, for example: \n\u003e A group that is committed to a non-hierarchal structure might think carefully about before introducing a system of elected leaders to expedite decision making. But they might experiment with different models to vote on issues.\n\nWhat I see as the most important of these principals is being conscious of \"decisions\" being made – it's often the case that a group is formed around a vibe, and so things like aim, purpose and value are never discussed which can result in more conflict further on.\n\nFocusing on a shared vibe while powerful also leads in unclear expectations and over time lead to ad-hoc decision making which can fragment establishing members and contribute to burn out.\n\nBut similar things can be said for making practical decisions – a group can slide into habits that shape how a team or group function over time. \n\nWhile this can affect **everyone** in a group, when it comes to groups where there is a overrepresentation of men it can result in a lot of the day to day operational work being done by people read as women, al la \"[glue work](https://noidea.dog/glue)\".\n\nHaving conscious conversations about how labour is divided means it's possible to consider the implications of different options and choose the one that works best.\n\nConscious decisions are easier to communicate to new members – it can shape the development of a clear responsibility model and means messaging will be consistent, which in turn makes it easier to hand over if someone else takes over the job.\n\nLess-conscious decisions on the other hand will favour those already empowered by the group – e.g., if you're an establishing member or you're more confident in your position in a group you're likely going to explain group dynamics within that context.\n\nConscious decision making is balancing act – if you're empowered, you're also likely to put forward your views, fight for your ideals, and perhaps assume that if no one disagreed your suggestion was agreed to. \n\nAs important as it is for others to speak up, it's just as important, if not more important for the empowered to step back.\n\n**Helpful tools:** Roles and Responsibilities, Responsible, Accountable, Consulted and Informed (RACI) Matrix, Team Working Agreements, Ritual Resets.\n\n**What is the group?** What is the purpose, and what are our aims? What principals and values do we share? What do we need to do to achieve our aims? Who can join the group?\n\nIn this set of questions I also like to ask: how do we make tradeoffs? This is sometimes covered under principals and values but I like to take to about them as tenets and frame them as statements that show how they are applied.\n\n**How are decisions made?** Do we use full consensus, rough consensus or vote? Who needs to be involved in what kind of decisions? What decisions need to be made at regular meetings and what can be decided outside of regular meetings?\n\n**How do we get things done?** How often do we meet? Are there regular social events? How do we communicate with each other outside of meetings? How do we communicate with people outside of the group? Are sub-groups or individuals responsible for certain tasks?\n\n**How do we manage operational security?** How do we share passwords and secrets? How can people outside our group identify a communication is from us? How do we communicate securely amongst ourselves?\n\n**What policies do we need?** How will we respond if someone makes a complaint to the group? Is there a system that would make it harder to steal group funds?\n\n**How can we make the group empowered?** Are there groups of people who are likely to be empowered/disempowered in the group? What checks and balances can we introduce to make sure no one sub-group gains too much influence? What can we do to make it easier for people who are currently marginalised to take on roles and help shape the group?\n\nConsider creating systems to reduce barriers to people getting involved: a stipend or paying for baby-sitting so parents can attend more easily, picking venues more consciously so they are accessible. Picking issues affecting the most affected.\n\n\n","lastmodified":"2023-07-15T02:15:03.294117377Z","tags":["book","non-fiction","political science","anarchy","anarchism","constitutions","history and theory"]},"/books/expect-resistance-a-crimethinc-field-manual":{"title":"Expect Resistance: A Crimethink Field Manual","content":"\n_Expect Resistance_ is not one but three books, each of which may be read as a complete work unto itself. The first book, printed in standard black ink, continues the inquiry into modern life and its discontents begun in _[Days of War, Nights of Love](https://crimethinc.com/books/days-of-war-nights-of-love)_. Just as that book included improved versions of texts originally published between 1996 and 1999, this book draws on CrimethInc. material from 2000 to 2004, painstakingly refined and augmented with a great deal of new content. The second book, in red ink, is a composite account, related by three narrators, of the adventures and tribulations that inevitably ensue when people pursuing their dreams enter into conflict with the world as it is.\n\nTogether these comprise a third book, an exploration of the complex relationship between ideals and reality. _Expect Resistance_ is a field manual for a field on which all manuals are useless, a meditation on individual transformation and collective resistance in disastrous times, and a masterpiece that raises the bar for radical publishing.\n\n**authored by** [[CrimethInc. Ex-Workers' Collective]]\n\npublished on 2008 by CrimethInc. Collective\n\n## High-Level Thoughts\n\n## Summary Notes\n\nTen thousand generation have dreamed of flying but in the modern day we need movies to numb the boredom we experience this feat. Perhaps because now, nearly 240 years later we're so emotionally insulated from the adventure of flying we've lost the sensation and joy of experiencing the landscape below, deprived of the sensation of being airborne.\n\nWhen breaking apart from the status quo you will need to fight off every conviction instilled in you since childhood that those who don't play their part in society are failures.\n\nThe author recounts a story of dropping a coffee machine off of an eleven story building, noting a pedestrian lurched back as it hit the ground and this was _not_ a vibe. No ones desire to be liberated should come at the expense of hitting a random person with a fucking coffee machine.\n\nOur modern indulgences are crafted by external factors rather than our own, for example: we like fast food because we have to hurry back to work, it disrupts the brain-gut axis, and we're so busy and stressed we can't justify enjoying the festivity in cooking and eating.\n\n\u003e [!info] 2023-06-29\n\u003e \n\u003e In the past few days I've found myself at a bit of a crossroads with this book. While I know it's brimming with tales of anarchy and camaraderie, the message within these pages requires a receptive mind and I'm just not *there* yet.\n\u003e \n\u003e So, dear book, rest assured I will return and retrace my steps. But for now, I'm going to bid you farewell.","lastmodified":"2023-07-15T02:15:03.294117377Z","tags":["book","non fiction","political science","politics","non fiction","anarchism","philosophy","activism","social justice","feminism","counter culture"]},"/books/ghost-work":{"title":"Ghost Work","content":"\n\"A startling exposé of the invisible human workforce that powers the web--and how to bring it out of the shadows. Hidden beneath the surface of the internet, a new, stark reality is looming--one that cuts to the very heart of our endless debates about the impact of AI. \n\nAnthropologist Mary L. Gray and computer scientist Siddharth Suri unveil how the services we use from companies like Amazon, Google, Microsoft, and Uber can only function smoothly thanks to the judgment and experience of a vast human labor force that is kept deliberately concealed. The people who do 'ghost work' make the internet seem smart. They perform high-tech, on-demand piecework: flagging X-rated content, proofreading, transcribing audio, confirming identities, captioning video, and much more. The shameful truth is that no labor laws protect them or even acknowledge their existence. \n\nThey often earn less than legal minimums for traditional work, they have no health benefits, and they can be fired at any time for any reason, or for no reason at all. An estimated 8 percent of Americans have worked in this 'ghost economy,' and that number is growing every day. In this unprecedented investigation, Gray and Suri make the case that robots will never completely eliminate 'ghost work' and the unchecked quest for artificial intelligence could spark catastrophic work conditions if not stopped in its tracks. Ultimately, they show how this essential type of work can create opportunity--rather than misery--for those who do it.\"\n\n**authored by** [[Mary L. Gray]], [[Siddharth Suri]]\n\npublished on 2019 by Eamon Dolan Books\n\n## High-Level Thoughts\n\n## Summary Notes\n\nGrey notes within the first few pages that on-demand isn't inherently good or bad, a sentiment I disagree with, in later pages, she talks about how people working in ghost work often have this sense of urgency to not only accept a job,[^1] but to complete the task accurately or risk losing income. To me this aligns to the [[white supremacy]] cultural habit.[^2] We see that by applying this sense of urgency it perpetuates a power imbalance between employee and employer while disconnecting ghost workers from their need to pause and reflect, which would guarantee a higher success rate and the need for companies to pay them more.\n\nIgnoring wether Grey thinks this work is good or bad, one thing we know for certain us like we've seen in the Australian fruit and vegetable picking industry, paying by weight picked, or in this case by task is ripe for abuse.\n\nAWU Nation Secretary Dan Walton on fruit picking:[^3]\n\u003e \"The problem is too many farmers have become addicted to underpayment and exploitation as a normal part of doing business. This model isn’t inevitable in Australia, it’s just the one we’ve chosen in Australia,\"\n\nIn the same way as fruit picking in Australia, it's not that the technology industry *can't* find better ways to solve the problem they have just become addicted **and** dependent on the exploitation of people throughout the supply chain to provide their boards with record profits[^citation-needed].\n\nGrey reports that [[FAANG]] companies often use ghost work to remove as much \"not safe for work\" content from their platform, for me the call out and an important distinction here is that it's not safe for **work**, not, not safe for people, which begs the question why are we investing so much money into sanitising the Internet? (That's a rhetorical question).\n\nWithin the first few pages Grey has already set the scene for this book – there is the general understanding that this work is **important** and **valuable** to the usability of the platform but the associated monetary value is low. I mean it is exactly like how we value [reproductive-labor](posts/reproductive-labor.md).\n\nOn page xiv of the introduction, Grey says:\n\u003e Unlike CPUs, humans have agency: they make their own decisions.\n\nAnd while I understand the general sentiment she is getting at, I disagree because when you live in a society that values rugged individualism and limits the basic opportunities people have, they don't have significant self-determination. It becomes something that only the privileged have.\n\nCompanies rely on an assembly line of workers to satisfy customers **who have grown to expect responses to their requests within seconds**. \n\nElon Musk, Stephen Hawking and Larry Page are people who have expressed panic about AI or have revealed in a time \"before AI\" when people \"controlled their destiny\". But one must ask if humans especially humans who live in states that have dismantled welfare were ever really in control of their destiny or if this notion of destiny is just something reserved for the people who have time and money to pursue \"destiny\".\n\nFoxconn, who make iPhones apparently replaced 60,000 humans with robots in 2016.[^4]\n\nIn 2016, Amazon's 20 fulfilment centres apparently deployed 45, 00 robots to work alongside 230,000 people. In 2019, Amazon started rolling out machines to automate boxing up customer orders.[^5]\n\nRobots and automations often allow employers to have what they want when they want the, which allows them to avoid navigating the the problems of negotiating with employees for better, safer working conditions. It also means they no longer need to deal with the classification of types of work, or engaging with the employment laws that are protecting humans.\n\nDismantling employment on the surface sounds positive, but this is occurring along side the dismantling of the welfare state, which encourages this value of rugged individualism.\n\nWe're also seeing years of global reform be undone, from child labor laws,[^6] [^7]to workplace safety guidelines.[^8]\n\nJPMorgan Chase Institute found 4.3% of U.S adults (10.73 million people) had worked an online-platform-economy job at least once between 2015 and 2016. The jobs provide no professional title, no ladder to climb, no bonuses, and no guarantees.\n\nGray talks about the thing that is common with all the people she interviewed was their hope;\n- Their hope to use on-demand jobs to control when they work, who they work with, and what tasks they take on.\n- The hope to avoid long commutes and hostile work environments.\n- They hope to gain experiences that refreshes their resume or opens the door to new possibilities.\n\nGray interviewed a bunch of people some looking to starve off boredom, or pay for weddings, younger siblings degrees, and in line with previous observations, disabled and retired folks looking for alternative routes to employment or making extra money to pad their social security checks.\n\n**Platforms**\n- Mechanical Turk (MTurk): The Amazon on-demand work platform.\n- Universal Human Relevance System (UHRS): The Microsoft on-demand work platform, can only be used by Microsoft staff and authorised third-parties.\n- CrowdFlower (Figure Eight Inc.)\n\n[^1]: Ghost Work, Mary L. Gray, Siddharth Suri, Introduction, page. xiii\n[^2]: [Sense of Urgency](https://www.whitesupremacyculture.info/urgency.html)\n[^3]: [Serving up abuse and exploitation – Australian horticulture’s dark secret](https://www.australianunions.org.au/2021/03/01/serving-up-abuse-and-exploitation-australian-horticultures-dark-secret/)\n[^4]: [Apple supplier Foxconn seeks to slim workforce over time, eyes robotics](https://www.reuters.com/article/us-hon-hai-labor-idINKBN0L00Z520150128)\n[^5]: [Exclusive: Amazon rolls out machines that pack orders and replace jobs](https://www.reuters.com/article/us-amazon-com-automation-exclusive-idUSKCN1SJ0X1)\n[^6]: [U.S. to crack down on child labor amid massive uptick](https://www.reuters.com/business/us-crack-down-child-labor-amid-massive-uptick-2023-02-27/)\n[^7]: [Arkansas leads charge to weaken child labor protections](https://www.theguardian.com/us-news/2023/mar/08/arkansas-bill-child-labor-protections)\n[^8]: [After rejecting COVID rule, Arizona could lose oversight of workplace safety](https://www.reuters.com/legal/government/after-rejecting-covid-rule-arizona-could-lose-oversight-workplace-safety-2022-04-20/)","lastmodified":"2023-07-15T02:15:03.294117377Z","tags":["book","technology","non fiction","economics","business","labor","anthropology","politics","sociology","artificial intelligence"]},"/books/lost-in-work-escaping-capitalism":{"title":"Lost in Work Escaping Capitalism","content":"\n'Work hard, get paid.' It's simple. Self-evident. But it's also a lie—at least for most of us. For young people today, the old assumptions are crumbling; hard work in school no longer guarantees a secure, well-paying job in the future. Far from equating to riches and fulfilment, 'work' increasingly means precarity, anxiety and alienation. \n \nAmelia Horgan poses three big questions: what is work? How does it harm us? And what can we do about it? Along the way, she explores the many facets of work under capitalism: its encroachment on our personal lives; the proliferation of temporary and zero-hours contracts; burnout; and how different jobs are gendered or racialized. \n \nWhile abolishing work altogether is not the answer, _Lost in Work_ shows that when workers are able to take control of their workplaces, they become less miserable, and even open doors allowing them to fight back against the elite.\n\n**authored by** [[Amelia Horgan]]\n\npublished on June 20, 2021 by Pluto Press","lastmodified":"2023-07-15T02:15:03.294117377Z","tags":["book","non fiction","politics","sociology","economics","history","philosophy","feminism","labor","theory","activism"]},"/books/revolution-at-point-zero":{"title":"Revolution at Point Zero","content":"\n*Written between 1974 and 2016, Revolution at Point Zero collects four decades of research and theorising on the nature of housework, social reproduction, and women’s struggles on this terrain—to escape it, to better its conditions, to reconstruct it in ways that provide an alternative to capitalist relations. Indeed, as Federici reveals, behind the capitalist organisation of work and the contradictions inherent in “alienated labor” is an explosive ground zero for revolutionary practice upon which are decided the daily realities of our collective reproduction.* \n\n*Beginning with Federici’s organisational work in the Wages for Housework movement, the essays collected here unravel the power and politics of wide but related issues including the international restructuring of [[posts/reproductive-labor|reproductive work]] and its effects on the sexual division of labor, the globalisation of care work and sex work, the crisis of elder care, the development of affective labor, and the politics of the commons. This revised and expanded edition includes three additional essays and a new preface by the author.*\n\n**authored by** [[Silvia Federici]]\n\npublished on 2020-08-01 by PM Press\n\n## High-Level Thoughts\n\nA series of essays that explore globalisation, [reproductive work](posts/reproductive-labor.md) and how these things intertwine to suppress women across the world. A series of essays, it's a lot easier to read than a complete book. While some of the concepts like [structural adjustment programs](notes/structural-adjustment-programs.md) can seem fairly beyond those in the process of being radicalised, or those new to economic radicalisation Federici provides sufficient context to understand the concepts.\n\n## Summary Notes\n\n### War, Globalisation and Reproduction (2000)\n\n\u003e First came the foreign bankers eager to lend at extortionate rates; then the financial controllers to see that the interest was paid; then the thousands of foreign advisors taking their cut. Finally, when the country was bankrupt and helpless, it was time for the foreign troops to “rescue” the ruler from his “rebellious” people. One last gulp and the country had gone.\n\u003e – Thomas Pakenham, _The Scramble for Africa_\n\nDeveloped world initiatives are largely based on globalisation and pushing imperialism, but it takes the form of food aid and humanitarianism. These are just tactics to gain and maintain control over other states.\n\nComes in the form of [structural adjustment programs](notes/structural-adjustment-programs.md) (SAPs), introduced in the 19080s by the World Bank and the International Monetary Fund.\n\nAmericanisation of the world, and pushing \"neoliberal\" ideals and policy, including land privatisation, abolition of communal land tenure, downsizing the public sector and defunding social services, all these activities shift systems of controls from African governments to the World Bank and NGOs.\n\n\u003e \"Structural adjustment is war by other means\"\n\u003e – Clausewitz\n\n These \"programs\" were supposed to improve the state of the economy, but more than a decade on the opposite has happened, local economies have collapsed, foreign investment hasn't materialised. \n \nWar forces people off the land, it takes producers away from the means of production. Then when the land is no longer being used, the land is reclaimed in the name of capitalists, boosting the production of [cash crops](notes/cash-crops.md) and export oriented agriculture.\n\nControlling food and food based aid is able to do what arming militia can't. Often delivered to both sides it can be delivered by organisations other than the Red Cross which allows them to intervene in areas of conflict. This was used to justify the US/UN military intervention in Somalia in 1992/3.\n\nEven if troops aren't involved in the distribution or guarding of food, the delivery of food is always intervention that prolongs war by feeding contending armies (more often then civilians). This in turn shapes military strategy and most benefits those who can take advantage of food distribution.\n\nBecause of the control food aid gives to imperial forces, shaping warfare it also contributes to the displacement of rural communities by setting up distribution around the needs of the NGOs.\n\nSo wether food aid actually benefits civilians is questionable at best. It seems more likely that the real motivation is to phase out subsistence farming, and create a dependence on important food both of which benefit the World Bank.\n\nQuestioning wether food aid is beneficial if probably seen as controversial in the west because its such a focus of NGOs and \"charitable\" efforts but we've known about the negative effects of food aid since the 1960s and its been the subject of a lot of protest and research.\n\nSince then the axiom adopted is \"you don't help people by giving them food, but by giving them the tools to feed themselves\".\n\nNGOs have further marginalised people caught in the cross section of conflict and famine because they have been denied the ability to control relief activities while being portrayed as helpless and unable to care for themselves unless you donate today, which then justifies military intervention.\n\n\u003e This is a colonialism that aims at controlling policies and resources rather than gaining territorial possession, in political terms, a 'philanthropic', 'humanitarian', 'foot-loose' colonialism that aims at 'governance' rather than 'government…\n\nToday's imperialism is then by definition different, imperialism of the late nineteenth and early twentieth centuries was defined by weapons and force where we could hold someone to account, for example, King Leopold of Belgium who had a personal responsibility for the killing of millions of people in the Congo. But today as millions die as a consequence of structural adjustment, no one person is help to account because it is a social cause of death that is invisible to the western capitalist market.","lastmodified":"2023-07-15T02:15:03.294117377Z","tags":["book","non fiction","social science","feminism","nonfiction","politics","philosophy","theory","essays","gender"]},"/books/the-age-of-surveillance-capitalism":{"title":"The Age of Surveillance Capitalism","content":"\n*The challenges to humanity posed by the digital future, the first detailed examination of the unprecedented form of power called 'surveillance capitalism,' and the quest by powerful corporations to predict and control us.* \n\n*The heady optimism of the Internet's early days is gone. Technologies that were meant to liberate us have deepened inequality and stoked divisions. Tech companies gather our information online and sell it to the highest bidder, whether government or retailer. Profits now depend not only on predicting our behaviour but modifying it too. How will this fusion of capitalism and the digital shape our values and define our future? *\n\n*Shoshana Zuboff shows that we are at a crossroads. We still have the power to decide what kind of world we want to live in, and what we decide now will shape the rest of the century. Our choices: allow technology to enrich the few and impoverish the many, or harness it and distribute its benefits. *\n\n*The Age of Surveillance Capitalism is a deeply-reasoned examination of the threat of unprecedented power free from democratic oversight. As it explores this new capitalism's impact on society, politics, business, and technology, it exposes the struggles that will decide both the next chapter of capitalism and the meaning of information civilization. Most critically, it shows how we can protect ourselves and our communities and ensure we are the masters of the digital rather than its slaves.*\n\n**authored by** [[Shoshana Zuboff]]\n\npublished on 2019-01-31 by Profile Books","lastmodified":"2023-07-15T02:15:03.294117377Z","tags":["book","non fiction","politics","economics","technology","business","sociology","computers"]},"/books/the-feminist-and-the-sex-offender":{"title":"The Feminist and the Sex Offender","content":"\nIn the era of #MeToo and mass incarceration, The Feminist and the Sex Offender makes a powerful feminist case for accountability without punishment and sexual safety and pleasure without injustice. With analytical clarity and narrative force, The Feminist and the Sex Offender contends with two problems that are typically siloed in the era of #MeToo and mass incarceration: sexual and gender violence, on the one hand, and the state’s unjust, ineffective, and soul-destroying response to it on the other. Is it possible to confront the culture of abuse? Is it possible to hold harm-doers accountable without recourse to a criminal justice system that redoubles injuries, fails survivors, and retrenches the conditions that made such abuse possible? Drawing on interviews, extensive research, reportage, and history, The Feminist and the Sex Offender develops an intersectional feminist approach to ending sexual violence. It maps with considerable detail the unjust sex offender regime while highlighting the alternatives we urgently need.\n\n**authored by** [[Judith Levine]], [[Erica R. Meiners]]\n\npublished on 23 April, 2020 by Verso Books\n\n","lastmodified":"2023-07-15T02:15:03.294117377Z","tags":["book","non-fiction","feminisim","politics","philosophy","theory","feminist theory","gender","social justice","academia"]},"/notes/Autobase":{"title":"Autobase","content":"\nAn experimental module that's used to rebase (follow?) multiple casually linked [Hypercores](notes/hypercore.md) into a single, linearized Hypercore for multi-user collaboration.","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["seedling","distributed system","hypercore"]},"/notes/B-tree":{"title":"B-tree","content":"\nA self-balancing tree data structure that is used to store data in a sorted and searchable manner.","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["seedling","data structure","distributed system","hypercore"]},"/notes/DHT":{"title":"DHT","content":"\nA decentralized data structure that is used to store and retrieve data over a network. The [HyperDHT](notes/hyperdht.md) is used to facilitate the discovery of peers and to enable connections between them.","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["seedling","data structure","hypercore","ipfs"]},"/notes/DID":{"title":"DID","content":"\nDecentralized identifier (DIDs) identifies any subject (e.g., a person, organization, thing, data model, abstract entity, etc.) that the controller of the DID decides that it identifies.\n\nThe W3C DID Working group has developed and approved a W3C Recommendations doc.\n","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["seedling","hypercore","digital identity"]},"/notes/Embodiment":{"title":"Embodiment","content":"\nThe principles of **embodiment** look at diverse experiences and relationships as human beings embodying multiple identities and realities in “disembodied” online spaces.\n\n## Consent\n\nWomen's agency lies in their ability to make informed decisions on what aspects of our lives we share online.\n\nIf social media wanted to they could embed consent into their product, but they don't and instead focus on extracting as much data as possible with little attention to who is posting data to whom.\n\nIn the *general* (read: Newscorp \u0026 Murdoch) media, we see a lack of outrage about a lack of transparency in privacy breaches.\n\nThis is also a core theme of [The Age of Surveillance Capitalism](books/the-age-of-surveillance-capitalism.md) and is core to maintaining [surveillance capitalism](notes/surveillance-capitalism.md).\n\n### Principle in Action\n\n- [Terms of Service Didn't Read](https://tosdr.org/) provides a mechanism in which users can provide informed consent when using a website because they can understand **what** they are agreeing to.\n\n### More Thoughts\n\n- [[Something, something… why is no one talking about Medicare, claim codes and how this impacts women's health]]\n\n## Privacy \u0026 Data\n\nEveryone should have the right to privacy and to full control over personal data and information online at all levels. There is a staunch rejection of private and state data collection for profit and online user manipulation.\n\nSurveillance is a patriarchal tool, used to control and restrict women's bodies, speech and activism. This type of control doesn't start at home, or end with the state and we must pay equal attention to the surveillance practices of individuals, the private sector, [the-state](notes/the-state.md)] and non-state actors.\n\n### More Thoughts\n\n- [Ethical hacking, the antithesis of ethical hacking?](private/Ethical%20hacking,%20the%20antithesis%20of%20ethical%20hacking?.md)\n\n## Memory\n\n## Anonymity\n\n## Children\n\n## Violence\n\n## Resources\n\n- [The Do-It-Yourself Feminist Internet: Cyber feminist actions from Latin America](https://feministinternet.org/index.php/en/resource/do-it-yourself-feminist-internet-cyber-feminist-actions-latin-america)\n- [Big Data and Sexual Surveillance](https://feministinternet.org/en/resource/big-data-and-sexual-surveillance)","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["seedling","feminist principles"]},"/notes/Holepunch":{"title":"Holepunch","content":"\n[Holepunch](https://github.com/holepunchto) is a company and suite of tools that \"equips developers with a powerful suite of independent components to effortlessly construct peer-to-peer applications.\"\n\nA Holepunch stack can be broken up into three parts:\n\n## Building Blocks\n\n- [hypercore](notes/hypercore.md)\n- [hyperbee](notes/hyperbee.md)\n- [hyperdrive](notes/hyperdrive.md)\n- [autobase](notes/autobase.md)\n- [hyperdht](notes/hyperdht.md)\n- [hyperswarm](notes/hyperswarm.md)\n\nkeet.io is a peer to peer chat that is built entirely on Holepunch.\n\n## Helpers\n\n// TODO","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["seedling","protocol","distributed system","peer to peer","p2p"]},"/notes/HyperDHT":{"title":"HyperDHT","content":"\nA [dht](notes/dht.md) powering [hyperswarm](notes/hyperswarm.md), each server is bound to a unique key pair, where the client connects to the server using the servers public key.","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["seedling","distributed system","hypercore"]},"/notes/Hyperbee":{"title":"Hyperbee","content":"\nAn append-only [b-tree](notes/b-tree.md) running on Hypercore. It provides a key-value store API with mechanisms that can be used for:\n\t- Inserting and retrieving key-value pairs;\n\t- Atomic batch insertion;\n\t- Creation of sorted iterators.","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["seedling","distributed system","hypercore"]},"/notes/Hypercore":{"title":"Hypercore","content":"\nA distributed, peer to peer, append-only log that can be used to create fast scalable applications without a backend.","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["seedling","distributed system","hypercore"]},"/notes/Hyperdrive":{"title":"Hyperdrive","content":"\nA real-time distributed file system.","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["seedling","file system","distributed system","hypercore"]},"/notes/Hyperswarm":{"title":"Hyperswarm","content":"\nA high-level API for finding and connecting to peers who are interested in a \"topic\".","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["seedling","distributed system","hypercore"]},"/notes/IPFS":{"title":"IPFS","content":"\nInterPlanetary File System (IPFS) is a protocol, hypermedia and file sharing peer-to-peer network for storing and sharing data to a distributed file system.\n\nIt is an alternative location-based hyper media server protocol that could replace HTTP/HTTPS. It allows users to host and receive content is a similar way to BitTorrent.\n\nAny user in the network can serve a file by it's content address, and many other peers in the network can find and request content from any node who has it using a [DHT](notes/dht.md).\n\nIPFS seems to be strongly aligned to [[Web3]], and is often mentioned in the same breath as cryptocurrency protocols. 🚨\n\nTo develop IPFS, in 2017 Protocol Labs launched its own cryptocurrency named Filecoin.\n\nCloudflare started using IPFS in 2018 and launched its own gateway in 2022.\n\n## How is it being used?\n\n- Cryptocurrency\n- Content Delivery\n- Microsoft has built their [DID](notes/did.md) on IPFS\n- Discussion systems\n- To prevent and/or circumvent censorship\n\t- [Distributed, privacy-enhancing technologies in the 2017 Catalan referendum on independence: New tactics and models of participatory democracy](https://firstmonday.org/ojs/index.php/fm/article/view/9402/7692)\n- Phishing\n\t- The phishing email is stored on Cloudflare's IPFS which displays the content as secure.\n- Command and Control\n\t- The IPStore botnet uses IPFS to hide C2 traffic amongst the flow of legitimate data on the IPFS network. ([English Translation](attachements/IPFS-and-IPNS-protocols-as-a-means-of-botnet-control-proof-of-concept.pdf))[^1]\n\n[^1]: AQUINO, Bruno Macabeus M. de; LIMA, Marcus Vinicius L. de; OLIVEIRA, João Paolo Cavalcante M. de; SOUZA, Cidcley Teixeira de. [Protocolos IPFS e IPNS como meio para o controle de botnet: prova de conceito](https://sol.sbc.org.br/index.php/wscdc/article/view/2400). _In_: CONNECTED DEVICES CYBERSECURITY WORKSHOP (WSCDC), 1. , 2018, São José dos Campos. **Anais** [...]. Porto Alegre: Sociedade Brasileira de Computação, 2018.","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["seedling","protocol","distributed system","peer to peer","p2p","distributed file system","content delivery network"]},"/notes/a-feast-around-a-table-with-devils-and-witches":{"title":"The history of witches and wizards","content":"\n**The history of witches and wizards: giving a true account of all their tryals in England, Scotland, Swedeland, France, and New England; with their confession and condemnation**, circa 1720, Collected from Bishop Hall, Bishop Morton, Sir Matthew Hale, etc., [Wellcome Collection](https://wellcomecollection.org/works/abkab8tq/images?id=a3nuy2zq)\n\n![A feast around a table with devils and witches](imgs/a-feast-around-a-table-with-devils-and-witches.png)\n*\u003ccenter\u003e**A feast around a table with devils and witches**, [woodblock](notes/woodblock)\u003c/center\u003e*","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["reference","woodcut","17th century"]},"/notes/aquarium-algae-scrubber":{"title":"Aquarium Algae Scrubber","content":"\nAn algae scrubber is a water filtering device thats used to grow algae, which in the process, filters undesirable chemicals like nitrate, phosphate, nitrite, ammonia, ammonium from the water.\n\n\u003e [!info] Sizing\n\u003e 10 cm x 10 cm can generally handle ~200 litres of water\n\n## What you need\n\n- A black basket or container (no holes)\n- Cable ties\n- Course grit sandpaper\n- An air stone that stone should span the width of the container\n- Air line suction cups\n- Air line hose suitable for the air stone\n- Plastic knitting canvas\n- Low energy light source (LED of CFL)\n\n## Tools\n\n- Drill\n- Ruler\n\n## Instructions\n\n- Cut the top three quarters of off, ideally, it's about double the hight of the airstone you bought.\n- Cut the knitting mesh to fit the inner dimensions of your container. Be sure to subtract about an inch or two off the height, leaving enough room for the air stone to sit attached underneath.\n- Give the knitting mesh a once over with the course grit sandpaper so both sides are rough to the touch, this will help the algae affix itself to the canvas.\n- Give the plastic canvas a rinse to get all the debris off so it doesn't end up in the fish tank.\n- Cut two notches at the top and bottom of the knitting mesh, these will be used to affix the mesh to the top of the container and the airstone.\n- At the bottom of the mesh affix the airstone using two cable ties like so:\n\n![aquarium-algae-scrubber](imgs/aquarium-algae-scrubber.png)\n\n\u003e [!note]\n\u003e You'll want to make sure you have a clearance of about 2cm at the bottom, so the mesh and airstone can move freely\n\n- Next we want to drill some holes in the basket so we can connect everything together.\n\t- At the top on the container drill two holes on the outer edge, these will be used to affix the knitting mesh to the container.\n\t- In between these two holes drill three more, equally spaced which will be the primary water inlets.\n\t- Cut 3 holes, evenly spaced at the bottom, this will form an outlet.\n\t- Drill 4 holes, 2 on either side of the container, which will be used to attach the suction cups to the Algae scrubber.\n\nTo be continued...","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["aquarium","solarpunk","seedling","project"]},"/notes/ars-moriendi":{"title":"Ars moriendi","content":"\n![Demons tempt the dying man with crowns (a medieval allegory to earthly pride) under the disapproving gaze of Mary, Christ and God.](imgs/ars-moriendi.png)\n*\u003ccenter\u003e**Ars moriendi, [woodblock](notes/woodblock) 7 of 11**, Circa 1460, illustrator unknown, en wikipedia. [Source](http://userpage.fu-berlin.de/~aeimhof/seelefr.htm)\u003c/center\u003e*\n\nThe Ars Moriendi (The Art of Dying) is a Mediaeval Christian death manual that appeared around the middle of the fifteenth century. The text is understood to be a response to the devastation of the Black Death.\n\nThe book basically gave people instructions of how to die in a way that ensured they made it to heaven because there were so many dead or missing priests.\n\nToday the Ars moriendi is well known for it's illustrations which were [[notes/woodblock|woodblock]] rather than it's text which is primarily quotations from the Church Fathers and the Vulgate.\n\n\u003e[!tip]\n\u003e\n\u003e Mr. Bungle's California has a track called *[Ars Moriendi](https://www.youtube.com/watch?v=tUOWTmOP4FQ)*.\n\n## Further Reading\n- [The Ars Moriendi: An examination, translation, and collation of the manuscripts of the shorter Latin version](https://www.medievalists.net/2012/02/the-ars-moriendi-an-examination-translation-and-collation-of-the-manuscripts-of-the-shorter-latin-version/)","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["woodcut","pre-16th century","reference"]},"/notes/bookmarks":{"title":"Bookmarks","content":"\n## Python\n\n- [Tracking database changes in Flask Sqlalchemy for audit logs](https://sagarkaurav.hashnode.dev/tracking-database-changes-in-flask-sqlalchemy-for-audit-logs)\n\n\n## OAuth\n\n- [OAuth 2.0 Dynamic Client Registration Protocol](https://datatracker.ietf.org/doc/rfc7591/)","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["seedling","python","oauth"]},"/notes/cash-crops":{"title":"cash crops","content":"\nA crop that is grown to sell for profit rather than for the benefit of the farmer. Used to distinguish between marketed crops from subsistence crops in subsistence agriculture.\n\nIn comparison subsistence cops are those fed to the producer's own livestock or grown as food for the producer's family. \n\nCash crops include:\n- Cereals like wheat, rye, corn, barley, oats\n- Oil-yielding crops like grapeseed, mustard seeds, soybeans\n- Vegetables\n- Lumber yielding trees like spruce, pines and firs\n- Tree fruit like apples, cherries, citrus, pomegranates, oranges\n- Sort fruit like strawberries, raspberries, banana\n- Cotton\n- Rice\n- Tobacco\n- Indigo\n- Sugar cane","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["seedling"]},"/notes/coaster-for-salute":{"title":"Coaster for Salut","content":"\n![Coaster for Salute](imgs/coaster-for-salut.png)\n\n*\u003ccenter\u003e**Coaster for Salute**, [gouache](notes/gouache) painting by [@rowan_sugar](https://rowansugar.carrd.co), [Coaster 3/6 for the Salut!](https://www.instagram.com/p/Cst6vuNP8Tj/), 2023\u003c/center\u003e*\n","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["gouache","reference"]},"/notes/consensus-and-humming-in-the-ietf":{"title":"Consensus and Humming in the IETF","content":"\nThis post summarises the key points of [RFC 7282](https://datatracker.ietf.org/doc/html/rfc7282) an informational RFC (Request for Comment) published in 2014. This post is? will be? part of an ongoing collection on decision making and consensus building that looks to explore how groups make decisions and why.\n\n\u003e We reject: kinds, presidents and voting.\n\u003e We believe in: rough consensus and running code.\n\u003e \n\u003e \\-Dave Clark, 1992 plenary presentation on decision making in the IETF.\n\nThe IETF (Internet Engineering Task Force) does a lot of their technical work through a consensus process, taking into account different views amongst participants and aims to come to a rough consensus using a majority rule philosophy.\n\nBut this is often mistaken as voting which it isn't. Requiring full consensus, while nice, allows a single inflexible person who keeps saying no to stop the process cold.\n\nInstead the IETF have a tradition of humming – for example, when there is a face to face meeting and the chair wants to get a sense of the room they will request people hum on a particular question either for or against.\n\n**But this doesn't answer why humming and not voting.**\n\n## 1. Lack of disagreement is more important than agreement.\nConsider the following:\n\u003e The chair asks on the mailing list, \"Is everyone OK with format A?\" Inevitably, a number of people object to format A for one or another technical reason. The chair then says, \"It sounds like we don't have consensus to use format A. Is everyone OK with format B?\" This time even more people object to format B, on different technical grounds. The chair, not having agreement on either format A or format B, is left perplexed, thinking the working group has deadlocked.\n\nThe problem experienced is the chair conflated **determining** consensus, with **coming to** a consensus, with **having** consensus.\n\nWhile it might be subtle, it comes down to understanding tradeoffs, which engineering in all forms is about. There will always be appealing and unappealing options. So what's the difference?\n\n- **Determining consensus:** is about separating the choices that are unappealing from those that are problematic. Acceptable vs. complete.\n- **Coming to consensus:** is when everyone comes to the conclusion that either the objections are valid, and therefore make a change to address the objection, or that the objection was not really a matter of importance, but merely a matter of taste.\n\nSo really:\n\n\u003e Consensus is when everyone is sufficiently satisfied with the\n chosen solution.\n\n## 2. Rough consensus is achieved when all issues are addressed, but not necessarily accommodated\n\nIn the IETF, a working group will likely encounter an objection where:\n- Everyone understands the issue.\n- Acknowledges that it's a real shortcoming in the proposal.\n- Agree that accommodating the objection is not worth the tradeoff of fixing the problem.\nIn some cases, the person(s) raising the objection may not agree with this. \n\nIn these cases, if the chair finds that the issue has been well considered, and that the vast majority of the working group has come to the conclusion that a tradeoff is worth making, even in the face of continued objection, the chair can declare the group has come to a rough consensus.\n\n\u003e [!note] RFC 1603 vs RFC 7282\n\u003e \n\u003e This is a change from how rough consensus has been characterised in the IETF where is has been described as \"the dominant view\" of the group .[^1]\n\nAnd while [RFC 2418](https://www.rfc-editor.org/rfc/rfc2418.html) puts some percentages on what \"rough consensus\" looks like, RFC 7282 warns that being able to count and quantify how many people agree or disagree risks overlooking important minority views.\n\nSo it's important that a **rough consensus model** addresses (not necessarily fixes) important minority views.\n\n## 3. Humming should be the start of a conversation\n\nFinal decisions are supposed to be taken on the mailing list, but sometimes, the chair will want to determine they are coming to consensus.\n\nIntroduce *humming*.\n\nWhile some will conflate this with an anonymous vote, hums are not votes. Sometimes the hum can tell a chair that the room isn't all that contentious, it's only a few being particularly vocal.\n\nSometimes the hum will make it clear that one choice has more support than another and it's a good place to start the discussion, for example:\n\n\u003e Let's have the people that think 'foo' is a bad idea come up and tell us why it is problematic.\n\nSo the hum is a starting point. It's a temperature.\n\nA small but loud group of hums for option A and a larger, but more non-committal hum for option B might tell us that some people have some concerns with option B, but it's overall more popular.\n\nYou could also be surprised to find that the hums is unanimous and no further discussion is needed.\n\n## 4. Consensus is the path, not the destination\n\nThe IETF doesn't see consensus as the destination, rather consensus-building is a tool to get the best technical outcome. They found voting can result in important minority views being ignored, and, ultimately worse technical outcomes.\n\n---\n\nThe author [Pete Resnick](https://www.episteme.net/Work/) goes into more detail and provides more examples in the RFC so I recommend reading it in full to learn more about it.\n\n[^1]: https://datatracker.ietf.org/doc/html/rfc1603","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["seedling","consensus building","humming","shut up about humming in the ietf Bec"]},"/notes/e2e-fear-campaign-accce-and-police":{"title":"E2E Fear Campaign -- ACCCE \u0026 Police","content":"\n[Post on Twitter](https://twitter.com/errbufferoverfl/status/1646427897727688704?s=20)\n[Post on Mastodon](https://mastodon.errbufferoverfl.me/@errbufferoverfl/110190569356553694)\n\n1/14 The ACCCE \u0026 police are currently running a fear campaign about end to end encryption centering their arguments this time on concerns about sextortion of teenagers. 🗞️[https://www.abc.net.au/news/2023-04-13/police-warn-of-sextortion-of-teens/102216558](https://www.abc.net.au/news/2023-04-13/police-warn-of-sextortion-of-teens/102216558)\n\n2/14 But it’s clear this is the latest iteration of the crypto wars \u0026 the real goal is to subversively push an EARN IT-style act in Australia. The EARN IT Act it’s a guide of \"best practices\" that providers need to implement in order to \"earn\" immunity for hosting CSAM. \n\n3/14 These \"best practices\" include refraining from using end-to-end encryption. The Internet Society \u0026 a host of others continue to work spreading awareness about the harms perpetuated by laws like this \n✉️ https://www.internetsociety.org/resources/2022/internet-impact-brief-how-the-us-earn-it-act-threatens-security-confidentiality-\u0026-safety-online/\n\n4/14 But back to the OP – the platform the ACCCE \u0026 police are lobbying on looks to weaken end to end encryption \"for the children\" which is problematic for a few reason:\n\n5/14 1️⃣ It weakens controls used by other vulnerable groups, like DV survivors who use end to end encryption as a confidential lifeline to get themselves \u0026 their families to safety.\n\n6/14 2️⃣ Journalists rely on encryption when working on sensitive stories, especially in authoritarian countries.\n\n7/14 3️⃣ Data confidentiality is crucial for businesses, \u0026 by weakening end to end encryption we inherently make it easier for threat actors to get access to our personal information.\n\n8/14 In Australia the Telecommunications \u0026 Other Legislation Amendment (Assistance \u0026 Access) Act (TOLA), expanded the government’s powers to bypass digital data protections, which have been found to have negatively impact businesses \u0026 the economy \n📎 https://www.internetsociety.org/blog/2021/06/how-do-surveillance-laws-impact-the-economy/\n\n9/14 The reality is keeping children safe online is more complicated than making the digital platforms they use responsible for the content they share, and we’re already seeing similar legislative changes happen overseas with harmful effects:\n🐦[https://twitter.com/gustavoturnerx/status/1646304338074308608](https://twitter.com/gustavoturnerx/status/1646304338074308608)\n\n10/14 We know from research done in 2001, that most children targeted for sextortion are \"at risk,\" with prior maltreatment or emotional/social difficulties. Most of these \"at risk\" children are at risk because they have had their trust, privacy \u0026 security abused by people in positions of authority. \n📎 https://www.aic.gov.au/sites/default/files/2021-03/ti623_criminal_justice_responses_to_csam_offending.pdf](https://www.aic.gov.au/sites/default/files/2021-03/ti623_criminal_justice_responses_to_csam_offending.pdf)\n\n11/14 What ACCCE \u0026 the Police are asking for is not the safety of children -- they are looking for an increased ability to surveil the Australian public. \n\n12/14 Even the Australian Institute of Criminology found in their 2021 trends \u0026 issues report that there wasn’t enough evidence for policymakers \u0026 practitioners to make a reliable decision about criminal justice responses to CSAM offending \n\n13/14 \u0026 without that, there is likely to be more harm done. \n📎 https://www.aic.gov.au/sites/default/files/2021-03/ti623_criminal_justice_responses_to_csam_offending.pdf\n\n14/14 Ultimately if this was actually a matter of children's safety, we would be focusing our attention on children's liberation \u0026 giving them more self-determination, \u0026 better avenues to protect themselves from family \u0026 domestic violence.","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["sapling","end to end encryption","e2e encryption","earnit act","csam"]},"/notes/erlaubnis-project-diagrams":{"title":"Erlaubnis Project Diagrams","content":"\n*These diagrams can also be found on [Github](https://github.com/errbufferoverfl/erlaubnis).*\n\n```mermaid\n---\ntitle: Erlaubnis Authorization State Diagram\n---\nstateDiagram-v2\n\t[*] --\u003e Request\n\tRequest --\u003e Verifing: Exchange Client Params\n\tVerifing --\u003e Waiting_Approval: Grant Valid\n\tVerifing --\u003e Unauthorised: Grant Invalid\n\tWaiting_Approval --\u003e Authorised: Grant Approved\n\tWaiting_Approval --\u003e Unauthorised: Grant Denied\n\tWaiting_Approval --\u003e Timed_Out: Grant Unserviced\n\tAuthorised --\u003e Revoked: Grant Revoked\n\tRevoked --\u003e [*]\n\tTimed_Out --\u003e [*]\n\tUnauthorised --\u003e [*]\n\tAuthorised --\u003e [*]\n```\n\n```mermaid\n---\ntitle: Erlaubnis Entity Relationship Diagram\n---\nerDiagram\n USER {\n string id\n string username\n string password\n datetime created_at \n datetime updated_at\n }\n \n ROLE {\n integer id\n string name\n string description\n }\n \n CLIENT {\n string id\n string client_name\n string token_endpoint_auth_method\n array grant_types\n }\n \n METADATA {\n string logo_uri\n array contacts\n string policy_uri\n string tos_uri\n string client_uri\n }\n \n CONFIGURATION {\n integer version\n string jwks\n string jwks_uri\n string scope\n }\n \n REGISTRATION_RECORD {\n int id\n foreign_key user_id\n foreign_key client_id\n datetime installation_time\n }\n \n INSTALLATION_RECORD {\n int id\n foreign_key user_id\n foreign_key client_id\n foreign_key configuration\n datetime installation_time\n }\n \n STATE_RECORD {\n foreign_key user_id\n foreign_key client\n string state\n }\n \n USER ||--o{ ROLE : has\n USER ||--o{ CLIENT : registers\n REGISTRATION_RECORD ||--o{ CLIENT : generates\n INSTALLATION_RECORD ||--o{ CLIENT : generates\n STATE_RECORD ||--o{ CLIENT : generates\n USER ||--o{ CLIENT : installs\n CLIENT ||--o{ CONFIGURATION : contains\n CLIENT ||--||METADATA : contains\n```","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["seedling","state machine","entity relationship","software engineering","oauth 2.1"]},"/notes/errbufferoverfl":{"title":"errbufferoverfl","content":"\nThe easiest way to pronounce it is \"error buffer overflow\"... like the security vulnerability.","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":[]},"/notes/feminist-principles-of-the-internet":{"title":"Feminist Principles of the Internet","content":"\nThe Feminist Principles of the Internet are a series of statements that offer a gender and sexual rights lens on critical Internet-related rights.\n\nThere are 17 principles in total, organised into 5 clusters:\n- Access\n- Movements\n- Economy\n- Expression\n- [Embodiment](notes/embodiment.md)\n\nThey aim to provide a framework for women's movements to articulate and explore issues related to technology.","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["seedling"]},"/notes/gouache":{"title":"gouache","content":"\nGouache is a water based medium made of pigment, water and a binding agent, normally gum arabic or dextrin. \n\nGouache is similar to watercolour in that it can be re-hydrated and it infuses with the paper. While it also possesses qualities similar to that of acrylic and oil paint in that it's used for opaque painting styles.\n\n\u003e[!warning]\n\u003e\n\u003e Wet and dry gouache will have different values with lighter tones drying darker, and darker tones drying lighter, however, this is not a universal rule and it's important to swatch your colours before painting.\n\n## Gouache Paintings\n\n{{\u003c page-gallery tag=\"gouache\"\u003e}} ","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["medium","painting","art"]},"/notes/ideas":{"title":"ideas","content":"\n## Technical\n\n## Writing","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["evergreen"]},"/notes/interesting-tech-tools":{"title":"Interesting Tech Tools","content":"\n## Distributed Computing\n\n### Distributed Press\n\n[Website](https://distributed.press/) · [Github Repo](https://github.com/hyphacoop/api.distributed.press)\n\nan open source publishing tool for the World Wide Web and [[Distributed Web]]. It automates publishing to the world wide web, and seeds to [IPFS](notes/ipfs.md) and [Holepunch](notes/holepunch.md).\n\n**Additional Notes**\n- [Setting Up Distributed Press on Digital Ocean](posts/setting-up-distributed-press-on-digital-ocean.md)\n\n## Microservices\n\n### Temporal\n\n[Website](https://temporal.io/) · [Github Repo](https://github.com/temporalio/temporal)\n\nAn open source programming model that can be used to provide in depth tracing using the concept of \"business logic as code\". \n\n## Color \u0026 Design\n\n### Dopely\n\nA bunch of helpful colour tools like pallet, tone, tint and shade generators. Also has digital colour tools for checking contrast and colour blindcheckers.\n\n[Dopely](https://colors.dopely.top/)\n\n## Software Development\n\n### Refactoring Guru\n\nProvides high-level and implementation guides for common design patterns and refactoring.\n\n[Refactoring Guru](https://refactoring.guru/)\n\n### Python Patterns\n\nBrandon Rhodes, evolving guide to design patterns in the Python programming language. The site allows him to collect his ideas about Python and Design Patterns all in one place.\n\n[Python Patterns](https://python-patterns.guide/)\n\n### Flask Documentation\n\nComprehensive guide to Flask, that includes common patterns, how Flask works, and how to get started with common components, like SQL Lite.\n\n[Flask Documentation](https://flask.palletsprojects.com/en/2.3.x/)\n\n\n## Graphs\n\n### Cytoscape.js\n\nGraph theory (network) library for visualisation and analysis.\n\n[Cytoscape.js Official Website](https://js.cytoscape.org/)","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["evergreen","opensource","python","golang","typescript","php","java"]},"/notes/lago-daverno":{"title":"Lago d'Averno","content":"\n![Lago d'Averno](imgs/lago-daverno.png)\n*\u003ccenter\u003e**[Lago d'Averno](https://en.wikipedia.org/wiki/Lago_d%27Averno \"Lago d'Averno\")**, [gouache](notes/gouache) painting by [Jacob Philipp Hackert](https://en.wikipedia.org/wiki/Jacob_Philipp_Hackert \"Jacob Philipp Hackert\"), 1794.\u003c/center\u003e*","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["gouache","reference"]},"/notes/nasas-adlr-framework-for-lessons-learned":{"title":"NASA's ADLR Framework for Lessons Learned","content":"\nExample: [NASA Lesson Number 5756](https://llis.nasa.gov/lesson/5756)\n\nThe ADLR framework is broken up into four parts:\n- **Abstract:** a two or three sentence summary of what happened.\n- **Driving Event:** a more detailed breakdown providing context on the events or circumstances surrounding the driving event occurred. Can include references, evidence, etc. but should remain blameless, stating objectively what happened.\n- **Lesson(s) Learned:** focuses on what was learned as a consequence of the driving event.\n- **Recommendation(s):** what changes can and should be made going forward to prevent the same event from occurring.\n\nNASA also include a section on **evidence of recurrence control effectiveness**, which shows where the lesson has been referenced as part of other decisions or in the development of other practices.\n\nWhile most people in an every day context won't be regularly writing up decisions or practices, including this section as a point of reflection is important. \n\nVery often we make decisions about how to move forward after learning a lesson and forget to reflect on wether the recommendations actually serve us, or if they just made us feel like we improved something.","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["seedling","NASA","ADLR","decision-making","incident-management"]},"/notes/neocolonialism":{"title":"neocolonialism","content":"\nIntrusion of foreign economic domination, it can include military and economic intervention in the form of [structural adjustment programs](notes/structural-adjustment-programs.md). Neocolonialism is seem in states that have already achieved independence from colonial rule.","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["seedling"]},"/notes/projects":{"title":"the engineering anthology","content":"\nThis is a list of notable projects that I’ve finished and or currently maintaining. My (considerably longer) list of unfinished ideas can be found [here](notes/ideas.md).\n\n## 2019\n\n### Kult of the Cyber Witch\n\nKult of the Cyber Witch was a holistic information security and culture zine that centered on people of marginalised genders and sexes experiences within the Oceania region.\n\n[Itch.io](https://kultofthecyberw.itch.io/)\n\n## 2017\n\n### USB Canary\n\nA Linux or OSX tool that uses psutil to monitor devices while your computer is locked. In the case it detects someone plugging in or unplugging devices it can be configured to send you an SMS or alert you via Slack or Pushover.\n\n[GitHub](https://github.com/errbufferoverfl/usb-canary)","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["evergreen"]},"/notes/sauerkraut-recipe":{"title":"Sauerkraut Recipe","content":"\nSauerkraut recipe for Week 26, 2023. \n\n## Ingredients\n\n- 2453g cabbage\n- 674g carrot\n- 252g apple\n- 450g celeriac (forgot to weigh it, so this is a guess)\n- 1 packet of [sauerkraut seasoning](https://herbsandspicesaustralia.com/product/pickling-spice-mix-for-cabbage/)\n- 0.02g salt per kilo of vegetables + water\n\t- (3000ml water + 3829g vegetables) x 0.02g = 136.58g pickling salt\n\n\u003e [!note] Making brine\n\u003e \n\u003e Heaps of recipes will say \"you're not supposed to use brine, just use the water that comes out of the vegetables!\" and honestly, I've never made a batch that produces enough water that I don't need additional brine. So in this house we use brine.\n\n## Method\n\n- Weight your fermentation vessel, and write the weight down.\n- Cut and shred the vegetables, weight them and write this number down. Make save to save a few cabbage leaves for the top.\n- Put all your vegetables into your clean fermenting vessel.\n- Add in the spice mix and give everything a mix so the spice is well distributed.\n- Add enough water to cover the vegetables.\n\n\u003e [!note] Pre-boiling water\n\u003e \n\u003e It's probably not required in places that have good quality soft water, like Victoria, but I always boil and cool the water as an extra step.\n\n- Give everything another weigh and subtract the vegetables and fermentation vessel from the number on the scale. This is how the water weighs. Add this number to the weight of the vegetables.\n\n\u003e [!note] Weight of water\n\u003e \n\u003e If you're like me you can just measure the amount of liquid you added in ml/liters and assume 1L = 1000g 🤷\n\n- Make brine using the ratio provided for a 2% mix, if you want a different ratio, I like to use this [brine calculator](https://hakkobako.com/fermentation-brine-calculator/).\n- If you boiled the water for your brine, let it stand until it's about room temperature either on the bench top or in the fridge.\n- Once at room temperature pour the brine into the fermentation vessel and push everything down with a potato masher or something. Clean hands also work.\n- Cover with the cabbage leaves.\n- Top either some fermenting weights, a heavy bowl or a clean rock on top to weight everything down.\n- Close the vessel and store in a dark corner for a few weeks depending on temperature.\n\n\u003e [!info] Temperatures for fermenting\n\u003e \n\u003e Warmer temperatures will speed up fermentation, cooler temperatures will slow down fermentation, so:\n\u003e - At 21°–23°C sauerkraut will be done in 3-4 weeks.\n\u003e - At 15°–18°C sauerkraut will be done in about 6 weeks.\n\n","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["recipe","fermenting"]},"/notes/security-engineer":{"title":"What is a security engineer?","content":"\nAs a security engineer my main role is *enabling* engineering teams to make good decisions about how to build and maintain adequately secure systems.\n\nI'm currently focused on app security and developing a security partnerships program and as cliché as it sounds there is no \"typical day\" for me and it's largely shaped by the needs of the engineering group I work with. \n\nGenerally, it can be largely be split into three or four general categories:\n- **Operational work**, this is work that keeps the Application Security teams lights on for example vulnerability management, consulting with engineers very broadly, creating and tuning automations to streamline automation all of which takes up about 30-50% of my time during a given week.\n\nThe rest of my time is spent helping the group I am working with reach their end goal which can be shipping a product or feature, this can be broken up into more discreet responsibilities like:\n- **Building relationships and consulting with engineering**, which primarily sees me talking to engineers about the problems they are having and helping them identify if changes will likely result in more or less security risk and identifying ways to manage this. I also have to speak to group leads about how security is functioning and if there are any significant concerns we need to work on addressing.\n- **Research \u0026 development**, while a lot of this happens as a consequence of daily activities there are lots of times I need to go out and do additional research. Sometimes this means building a minimal viable product to demonstrate a vulnerability, or it can mean reading industry standards and identifying how they apply to the context we're operating in.\n- **Strategy \u0026 planning**, while a lot of day to day security engineering is reactive, there is also the general need to build out plans in anticipation of future needs, this can be finding ways to scale yourself through self-service, writing guidelines and processes or helping engineering teams build secure development practices into their everyday delivery.","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["security-engineer","application-security"]},"/notes/structural-adjustment-programs":{"title":"structural adjustment programs","content":"\nStructural adjustment programs are a [[notes/neocolonialism|neocolonist]] tool that sets out a set of economic reforms that a country must adhere to secure a loan from the International Monetary Fund and/or the World Bank.\n\nThese reforms have been in place since the 1940s but there was a significant push in the 1980s as part of a push to lend to \"crisis-stricken poor\" countries.\n\nCountries engaged in structural adjustment programs have been required to perform some combination of the following: \n\n- Devaluing their currencies to reduce balance of payments deficits. \n- Cutting public sector employment, subsidies, and other spending to reduce budget deficits.\n- Privatising state-owned enterprises and deregulating state-controlled industries.\n- Easing regulations in order to attract investment by foreign businesses.\n- Closing tax loopholes and improving tax collection domestically.\n\nWhile there was a reduction in applying structural adjustment in the 2000 it returned to normal levels in 2014. \n\nStructural adjustment loans cannot be spent on health, development or education programs.[^1]\n\nThe following countries are currently distributed in East and South Asia, Latin America, and Africa. including Colombia, Mexico, Turkey, Philippines, Pakistan, Nigeria, Sudan, Zimbabwe and India.\n\n[^1]: [Structural Adjustment—a Major Cause of Poverty by Anup Shah](https://www.globalissues.org/article/3/structural-adjustment-a-major-cause-of-poverty)","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["seedling","economics","macroeconomics"]},"/notes/surveillance-capitalism":{"title":"surveillance capitalism","content":"\nSurveillance capitalism is a type of capitalism market form, and a [technocratic](notes/technocratic.md)-oriented phenomenon that centres on the commodification of personal data by corporations.\n\nIt is distinct from government-surveillance, though they can, and often do reenforce each other.\n\nSurveillance capitalism's modern day roots can be traced back to Google's AdWords, which really cemented what was possible when personal data was aggregated and mined to target consumers more precisely.\n\nIn [Shoshana Zuboff](Shoshana%20Zuboff)'s book [The Age of Surveillance Capitalism](books/the-age-of-surveillance-capitalism.md) there are four key features in the logic of surveillance capitalism and explicitly follows the four key features identified by Google's chief economist:\n1. The drive toward more and more data extraction and analysis.\n2. The development of new contractual forms using computer-monitoring and automation.\n3. The desire to personalize and customize the services offered to users of digital platforms.\n4. The use of the technological infrastructure to carry out continual experiments on its users and consumers.","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["seedling","capitalism","surveillance","tracking","big data"]},"/notes/technocratic":{"title":"technocratic","content":"\nTechnocracy is a form of government in which the decision-makers are selected based on their expertise in a given area of responsibility, particularly with regard to scientific or technical knowledge.","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["seedling"]},"/notes/the-inner-sanctum":{"title":"The Inner Sanctum","content":"\n![The Inner Sanctum](imgs/the-inner-sanctum.png)\n*\u003ccenter\u003e**The Inner Sanctum** (2022), [gouache](notes/gouache), watercolor, and ink on paper, 100 x 70 centimeters, [Colossal](https://www.thisiscolossal.com/2022/11/rithika-merchant-mixed-media-works/)\u003c/center\u003e*","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["gouache","reference"]},"/notes/the-offering":{"title":"The Offering","content":"\n![](imgs/the-offering.png)\n*\u003ccenter\u003e**The Offering**, [gouache](notes/gouache) painting by Bill Mayer, [Bill Mayer's Personal Website](https://www.thebillmayer.com/)\u003c/center\u003e*","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["reference","gouache"]},"/notes/the-state":{"title":"the state","content":"\nThe \"state\" is a centralised political organisation that imposes and enforces rules over a population within a territory.\n\n\u003e [!warning]\n\u003e \n\u003e Definitions of state are disputed and can vary depending on context and audience.\n\nWalter Scheidel an Austrian historian maintains that most modern definitions of the state have the following in common:\n- Centralised institutions that impose rules;\n- Back these rules up by force;\n- Within a territorially circumscribed population; \n- With a distinction between the rulers and the ruled; \n- Includes an element of autonomy, stability, and differentiation.","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["seedling","authority control"]},"/notes/theatrum-chemicum-britannicum":{"title":"Theatrum Chemicum Britannicum","content":"\n![Alchemical image taken from the British alchemical theater of ripley, depicts the two-headed serpent of arabia: azoth and kibrit](imgs/theatrum-chemicum-britannicum.png)\n*\u003ccenter\u003e**Theatrum Chemicum Britannicum**, [woodblock](notes/woodblock), circa 1652, Elias Ashmole, [The Public Domain Review](https://publicdomainreview.org/collection/theatrum-chemicum)\u003c/center\u003e*","lastmodified":"2023-07-15T02:15:03.514136969Z","tags":["reference","woodcut","16th century"]},"/notes/using-pytest-with-flask":{"title":"Using Pytest with Flask","content":"\n## What to test?\n\nUnit tests should focus on testing a small unit of code in isolation:\n- Database models\n- Utility functions\n\nFunctional tests should focus on how the view functions operate:\n- Nominal conditions (GET, POST, etc.) for a view function\n- Invalid HTTP methods are handled properly for a view function\n- Invalid data is passed to a view function\n\n## Documenting Tests\n\nMartin Fowler provides a really idiomatic way of describing tests in his blog post on [GivenWhenThen](https://martinfowler.com/bliki/GivenWhenThen.html):\n\n```python\n\"\"\"\nGIVEN a User model\nWHEN a new User is created\nTHEN check the email, hashed_password, and role fields are defined correctly\n\"\"\"\n```\n\n- GIVEN - what are the initial conditions for the test?\n- WHEN - what is occurring that needs to be tested?\n- THEN - what is the expected response?\n\n## Pytest Fixtures\n\nFixtures initialise tests to a known state to run tests in a predictable and repeatable manner, these should be created in your `conftest.py` file.\n\nIn Pytest, fixtures can be run with different scopes:\n- `function` - run once per test function (default scope)\n- `class` - run once per test class\n- `module` - run once per module (e.g., a test file)\n- `session` - run once per session\n\nFor example, to create a User as a fixture:\n\n```python\nfrom project.models import User\n\n@pytest.fixture(scope='module')\ndef new_user():\n user = User('username@example.com', 'Password1!')\n return user\n```\n\n`@pytest.fixture(scope='module')`\n\nThis decorator specifies that a function is a fixture with a module-level scope. So this fixture will be called once per test module.\n\n`def new_user()`\n\nIs the function that creates an instance of a User using valid arguments.\n\nTo use this fixture, in other tests you pass it in as the first argument to a subsequent test, e.g.,\n\n```python\ndef test_new_user_with_fixture(new_user):\n \"\"\"\n GIVEN a User model\n WHEN a new User is created\n THEN check the email, hashed_password, and role fields are defined correctly\n \"\"\"\n assert new_user.email == 'username@example.com'\n assert new_user.hashed_password != 'Password1!'\n assert new_user.role == 'user'\n```\n\n","lastmodified":"2023-07-15T02:15:03.518137325Z","tags":["seedling","python","programming","testing"]},"/notes/wadawurrung-and-dja-dja-wurrung-people":{"title":"Wadawurrung and Dja Dja Wurrung People","content":"\n## Wadawurrung Country\n\nWadawurrung country encompasses the area from the Great Dividing Range of Ballarat, the coast from the Werribee River to Mangowak (Airey's Inlet), including Djilang (Geelong), Ballaarat (Ballarat), Torquay, Jan Jook, the Bellarine Peninsula and Surf Coast. [^1]\n\n![[imgs/wadawurrung-country.png]]\n\n## Dja Dja Wurrung Country\n\nDja Dja Wurrung territory extends from Mount Franklin and the towns of Creswick and Daylesford in the southeast to Castlemaine, Maldon and Bendigo in the east, Boort in the north, Donald in the northwest, to Navarre Hill and Mount Avoca marking the south west \nboundary. Their territory encompasses the Bendigo and Clunes goldfields and the Loddon and Avoca river watersheds.[^2]\n\n![[imgs/dja-dja-wurrung-country.png]]\n\n[^1]: [Wadawurrung Healthy Country Plan](https://www.wadawurrung.org.au/_files/ugd/d96c4e_72611327c6a54d3198c0499ac5c26e54.pdf)\n[^2]: [Dja Dja Wurrung Country Plan](http://www.djadjawurrung.com.au/wp-content/uploads/2015/11/Dja-Dja-Wurrung-Country-Plan.pdf)","lastmodified":"2023-07-15T02:15:03.518137325Z","tags":[]},"/notes/witches-dancing-in-a-circle-with-the-devil":{"title":"Witches dancing in a circle with the devil","content":"\n**The history of witches and wizards: giving a true account of all their tryals in England, Scotland, Swedeland, France, and New England; with their confession and condemnation**, circa 1720, Collected from Bishop Hall, Bishop Morton, Sir Matthew Hale, etc., [Wellcome Collection](https://wellcomecollection.org/works/abkab8tq/images?id=a3nuy2zq)\n\n![Witches dancing in a circle with the devil](imgs/witches-dancing-in-a-circle-with-the-devil.png)\n*\u003ccenter\u003e**Witches dancing in a circle with the devil**, [woodblock](notes/woodblock).\u003c/center\u003e*","lastmodified":"2023-07-15T02:15:03.518137325Z","tags":["reference","woodcut","17th century"]},"/notes/witches-flying-on-broomsticks":{"title":"Witches flying on broomsticks","content":"\n**The history of witches and wizards: giving a true account of all their tryals in England, Scotland, Swedeland, France, and New England; with their confession and condemnation**, circa 1720, Collected from Bishop Hall, Bishop Morton, Sir Matthew Hale, etc., [Wellcome Collection](https://wellcomecollection.org/works/abkab8tq/images?id=a3nuy2zq)\n\n![Witches flying on broomsticks](imgs/witches-flying-on-broomsticks.png)\n*\u003ccenter\u003e**Witches flying on broomsticks**, [woodblock](notes/woodblock).\u003c/center\u003e*","lastmodified":"2023-07-15T02:15:03.518137325Z","tags":["reference","woodcut","17th century"]},"/notes/woodblock":{"title":"woodblock","content":"\nA technique originally developed in China as a way of printing on textiles and later on paper, the oldest surviving fragments to survive date back to the Han dynasty (before 220).\n\nWoodcut is a type of relief printing where an artist carves an image into the surface of a block of wood. When printing, areas that are cut away carry no ink while characters or images at surface level carry the ink to produce the print.\n\nLinocut is a variation of woodcutting where Linoleum is used instead of wood, making the art style more accessible to a professional and non-professional artists. \n\n## Inspiration\n\n{{\u003c page-gallery tag=\"woodcut\"\u003e}} ","lastmodified":"2023-07-15T02:15:03.518137325Z","tags":["medium","printing","art"]},"/posts/reproductive-labor":{"title":"reproductive labor","content":"\nReproductive labor was first brought into the discourse during the *wages for housework* campaign during the 1970s (discussed in [Revolution at Point Zero](books/revolution-at-point-zero.md)). Referring to it this was is important because it emphasises that reproductive activities are also labor that are enforced by the gender hierarchy and not a goodwill gesture of women.\n\nI think reproductive labor can be a bit of a misnomer when used without sufficient context because “reproductive” on its own would suggest reproductive labor is focused on… well reproduction of humans.\n\nSo when discussing reproductive labor in any context I think it’s important to emphasize that reproductive labor represents remunerated and unremunerated activities that reproduce the *workforce*, so it encompasses a significant number of activities like **cooking**, **washing**, **emotional labor**, **sex**, and yes, child rearing.\n\nSo while we can generally agree reproductive labor is critical to the capitalist production process it remains a blind spot in mainstream economics. Instead we focus on activities that are considered *productive* like generating goods and services that are remunerated and market-intermediated.\n\nThis helps us understand why related types of labor, like elder care are also often even more undervalued than other types of labor like cleaning – we can justify paying someone to keep our houses clean, but we are surprised when [aged care employees strike](https://www.sbs.com.au/news/article/interim-pay-rise-for-some-aged-care-workers-in-australia-welcomed-but-unions-urge-more-action/hhv5vmeva). \n\nThe elderly often don’t reproduce the labor force, and elder care focuses on what we do with people when they “no longer have value to the market”.\n\nUltimately, most social and economic models of society wether they are progressive-, or radical-left aligned tend to overlook reproductive labor often because the people who are writing the essays and economic models, aren’t the ones reproducing labor.\n\nAdditionally, as far as I’ve seen a lot of contemporary writing about reproductive labor has remained focused on heteronormative relationships which means that even if we were to develop more accurate economic models, until they are more considerate of queer relationships we will never be able to discuss, build, and experiment with more egalitarian labor models.\n\nWether or not reproductive labor should be remunerated is also highly contested, some argue in favour of remuneration inside the market system, however, others remain in opposition saying that we should avoid expanding the capitalist logic to „undiscovered“ spheres.\n\nGiven the current power structures though I don’t think either option is beneficial – paying people for reproductive labor only exacerbate problems like the gig economy, expansion of the global care chain and promotes the exploitation of migrant workers from Eastern Europe or the Global South.\n\nHowever, when one is living under capitalism, exposure (or unpaid labor in this case) doesn’t pay the bills.\n\n## Questions\n\n- What does reproductive labor look like amongst transgender and non-binary families?\n\t- [Division of Labor Among Transgender and Gender Non-binary Parents: Association With Individual, Couple, and Children’s Behavioral Outcomes](https://www.frontiersin.org/articles/10.3389/fpsyg.2020.00015/full)\n\t- [Precarious Labourers of Love: Queer Kinship, Reproductive Labour and Biopolitics](https://www.migration.org.za/precarious-labourers-of-love-queer-kinship-reproductive-labour-and-biopolitics/)\n\t- [Bodily interventions and intimate labour: Understanding bioprecarity](https://www.jstor.org/stable/j.ctvwh8fh8)\n- What does reproductive labor look like in [polycules](https://www.dictionary.com/e/gender-sexuality/polycule/)?\n\t- Is there an overall greater satisfaction with the amount of reproductive labor done by individuals? ","lastmodified":"2023-07-15T02:15:03.518137325Z","tags":["seedling","feminism","politics","economics","gender"]},"/posts/setting-up-distributed-press-on-digital-ocean":{"title":"Setting Up Distributed Press on Digital Ocean","content":"\n\u003e [!info] Environment Metadata\n\u003e - Ubuntu 22.10 x64\n\u003e - [Distributed Press v1.2.1](https://github.com/hyphacoop/api.distributed.press/releases/tag/v1.2.1)\n\n## About Distributed Press\n\n[Distributed Press](https://docs.distributed.press/) is an open source publishing tool for the World Wide Web and Distributed Web. It automates publishing and hosting content to the web that it seeds to decentralized protocols like [hypercore](notes/hypercore.md) and [ipfs](notes/ipfs.md).\n\n\u003e [!warning] Prerequisite Knowledge\n\u003e \n\u003e This doc assumes you're familiar with apt-based Linux, the basics of Linux system administration and how to configure DNS.\n\n## Method\n\n- Create a new virtual private server (VPS) with your provider of choice, when using Digital Ocean I used a droplet with the following specifications:\n\t- **Image:** Ubuntu 22.10 x64\n\t- **CPU:** 4 vCPUs\n\t- **Memory:** 8GB[^1]\n\t- **Disk:** 10GB Disk\n\t- **Droplet Cost:** $AUD 48/mo\n\nIf you're using Digital Ocean and unfamiliar with configuring your own logging and monitoring I'd advise against enabling the improved metrics monitoring because it will consume `journalctl` making it harder to debug.\n\n\u003e [!warning] System Specifications\n\u003e \n\u003e The most important part of the system specifications is the memory, you want at a minimum 8GB to ensure that service works as expected.[^1]\n\n- Install `ansible` on your desktop, cry a little because this is the only thing that needs it. \n```shell\nbrew install ansible\n```\n\n\u003e [!tip] Note\n\u003e \n\u003e Make sure you install `ansible` and not `ansible-core` which doesn't ship with `ansible-galaxy`.\n\n![Image that says \"2000 Years Later\"](imgs/setting-up-distributed-press-on-digital-ocean.png)\n\n- Git clone the `api.distributed.press` repository onto your computer:\n```shell\ngit clone https://github.com/hyphacoop/api.distributed.press.git\n```\n\n- Using the terminal, navigate to the `ansible` directory:\n```shell\ncd api.distributed.press/ansible\n```\n\n\u003e [!warning] Check the pinned version of Distribution Press\n\u003e \n\u003e Before starting I recommend doing a quick sense check that the `distributed_press_git_branch` located in `api.distributed.press/ansible/roles/distributed_press/defaults/main.yml` matches the [latest tagged version](https://github.com/hyphacoop/api.distributed.press/tags), otherwise you can run into esoteric issues that are difficult to debug.\n\n- Edit the `inventory.yml` file to specify your own domain to run the scripts on as well as any variables you want to set.\n\t- You **must** specify the `distributed_press_domain` to be your server, and your `distributed_press_letsencrypt_email` for registering the HTTPS certificate.\n \n```yaml\nall:\n vars:\n distributed_press_domain: \"distributed.errbufferoverfl.me\"\n distributed_press_letsencrypt_email: \"rebecca@example.com\"\n distributed_press_served_sites: []\n children:\n distributed_press:\n hosts:\n distributed.errbufferoverfl.me:\n ansible_user: root\n```\n\n- Install the dependencies on your local machine.\n```shell\nansible-galaxy install -r ./requirements.yml\n```\n\n- Add the VPS's IP address and the `distributed_press_domain` to your `/etc/hosts` file so you don't experience an `UNREACHABLE` error when you run the playbook. e.g.,\n```text\n127.0.0.1\tlocalhost\n255.255.255.255\tbroadcasthost\n::1 localhost%\n\n{{VPS IP ADDRESS}} example.com\n```\n\n- Execute the playbook.\n```shell\nansible-playbook distributed_press.yml -i inventory.yml\n```\n\n- Once the playbook has finished, login to your DNS provider and add in an new A record pointing your VPS to the new domain.\n\t- **Type:** A\n\t- **Name:** `subdomain`\n\t- **Content:** VPS static IP address\n\t- **TTL:** Auto\n\n- Add an `NS` record linking `_dnslink` to your site:\n\t- **Type:** NS\n\t- **Name:** `_dnslink`\n\t- **Content:** the `distributed_press_domain`\n\t- **TTL:** Auto\n\n- Login to the VPS and check the status of the service.\n```shell\nsystemctl status distributed.press\n```\n\n\u003e [!warning] Ubuntu default DNS server\n\u003e\n\u003e Also double check the logs using `journalctl -fu distributed.press`, if you see a `bind EADDRINUSE 0.0.0.0:53` error you will need to disable an installed utility called `dnsmasq`.[^2]\n\n## Running a Sense Check\n\nWhen I installed my `distributed.press` instance a few things failed to initialize as expected so it's worth manually checking these.\n\n### Ensure `ufw` is active\n\nTo make sure the firewall is up, you can run:\n\n```shell\nufw status\n```\n\nWhich, if enabled should return something like this:\n\n```shell\nStatus: active\n\nTo Action From\n-- ------ ----\n53/udp ALLOW Anywhere\n7976/udp ALLOW Anywhere\n7976/tcp ALLOW Anywhere\nNginx Full ALLOW Anywhere\n22/tcp ALLOW Anywhere\n53/udp (v6) ALLOW Anywhere (v6)\n7976/udp (v6) ALLOW Anywhere (v6)\n7976/tcp (v6) ALLOW Anywhere (v6)\nNginx Full (v6) ALLOW Anywhere (v6)\n22/tcp (v6) ALLOW Anywhere (v6)\n```\n\n\u003e [!warning] Before enabling `ufw`\n\u003e \n\u003e Ensure you have added in a firewall rule for which ever management protocol you're using (e.g. ssh). To do this run:\n\u003e ```shell\n\u003e ufw allow 22\n\u003e ```\n\nIf you find that `ufw` is not enabled, you'll want to enable it.\n\n```shell\nufw enable\n```\n\n### Ensure the private keys are generated\n\nNormally `ansible` will [handle generating a key for the JWT](https://github.com/hyphacoop/api.distributed.press/blob/b23534e6652cab20c2b10a3dcd85529344139462/ansible/roles/distributed_press/tasks/main.yml#L76-L82) however, in my case this didn't work and I had to manually generate a key.\n\nI was able to identify this problem because I recieved the following error when trying to [Get a `root` admin token](#Get%20a%20`root`%20admin%20token):\n\n```\nError: ENOENT: no such file or directory, open '/root/.local/share/distributed-press-nodejs/keys/private.key'\n```\n\nTo resolve this issue I replicated what `ansible` would do, and ran `keygen` again:\n```shell\nsudo su press\ncd\ncd api.distributed.press\nnpm run keygen\n```\n\n## Get a `root` admin token\n\nAuthorisation on the service is handled using JSON Web Tokens (JWTs) that are issued to specific users.\n\n\u003e [!warning] By default, tokens expire after a week.\n\nTo generate the auth token necessary to make the very first admin user, you must use the 'root' admin token.\n\n- `ssh` into the VPS that is hosting your `distributed.press` instance and navigate to the the root directory of `api.distributed.press`\n```shell\nsudo su press\ncd\ncd api.distributed.press\n```\n\n- Run `npm run make-admin` which will print out the token to stdout.\n\n\u003e [!tip] Save the Token\n\u003e \n\u003e Be sure to save the token somewhere secure as it will be important for making any administrative calls to the API.\n\nNow that you have the root admin token, and the firewall is enabled, you can go ahead and start tinkering with your new `distributed.press` service. \n\nFor more information on how to you the API you can find the Swagger docs hosted on your instance at `/v1/docs`.\n\n## Additional Notes\n\n### Creating a new Publisher\n\nTo make sure we're always operating in line with the principal of least privilege exchange the root token for a new one with the publisher subset of capabilities:\n\n```shell\ncurl -X POST https://distributed.errbufferoverfl.me/v1/publisher \\\n-H \"Content-Type: application/json\" \\\n-H \"Authorization: Bearer JWT\" \\\n-d '{\"name\":\"garden.errbufferoverfl.me\"}'\n```\n\n### Add a site to a Publisher\n\n```shell\ncurl -X POST https://distributed.errbufferoverfl.me/v1/sites \\\n-H \"Content-Type: application/json\" \\\n-H \"Authorization: Bearer JWT\" \\\n -d '{\"domain\":\"garden.errbufferoverfl.me\", \"public\": true, \"protocols\":{\"http\": false, \"hyper\": true, \"ipfs\": true} }'\n```\n\n## Errors\n\n\u003e [!bug]\n\u003e Experience the following error because you didn't add the remote host to your `/etc/host`. \n\u003e \n\u003e *Scream into the void.*\n\u003e ```shell\n\u003e fatal: [distributed.errbufferoverfl.me]: UNREACHABLE! =\u003e {\n\u003e \t\"changed\": false, \n\u003e \t\"msg\": \"Failed to connect to the host via ssh: ssh: Could not resolve\n\u003e \t hostname distributed.errbufferoverfl.me: Name or service not known\", \n\u003e \t\"unreachable\": true\n\u003e }\n\u003e ```\n\n### Unable to resolve remote host **after** installation\n\nIf you were running on a version of apt-based Linux and had to disable the default DNS server to get node working, when you attempt to run `apt-update` or try to run the Ansible script again it **will** fail.\n\n![A Mastodon post written by me that says \"Why won't apt repositories resolve! WHAT IS GOING ON?! Me two hours earlier: `systemctl disable systemd-resolved`\"](imgs/setting-up-distributed-press-on-digital-ocean.png)\n\nTo fix this, you'll want to `ssh` onto the remote host, stop the `distributed.press` service and restart `systemd-resolved`.\n\n## Additional Resources\n\n- **[hyphacoop/actions-distributed-press](https://github.com/hyphacoop/actions-distributed-press)** - Easily deploy a site to Distributed Press using GitHub Actions\n\n[^1]: https://github.com/hyphacoop/actions-distributed-press/issues/2#issue-1751678540\n[^2]: [Port 53 Problems?](https://github.com/MASQ-Project/Node/blob/master/node/docs/PORT_53.md#linux)","lastmodified":"2023-07-15T02:15:03.518137325Z","tags":["seedling","project","distributed system","ipfs","hypercore"]},"/soapbox/A-Brief-History-of-Tamper-Evident-Locks":{"title":"A Brief History of Tamper Evident Locks","content":"\nA talk that discussed common \"canary locks\" or locks with tamper evident mechanisms through the ages, Buffy trawled through 11,335,427 patents to identify several high and low profile locks and their known, or speculated bypass techniques.\n\n[View the slides](https://www.errbufferoverfl.me/posts/2019/a-brief-history-of-tamper-evident-locks/)","lastmodified":"2023-07-15T02:15:03.518137325Z","tags":["locksport","canary technology","hacking","conference"]},"/soapbox/Agloe-What-the-Map-Makers-of-the-1930s-can-Teach-us-About-Protecting-our-Data-in-2018":{"title":"Agloe: What the Map Makers of the 1930s can Teach us About Protecting our Data in 2018","content":"\nWhat does the little town of Agloe, Colchester, NY have in common with modern day data protection? Why when I look for directions to Agloe, Colchester, NY do I only get a partial match? And what do yellow small birds have to do with anything? \n \nIn this talk we are going to do the time warp back to the 1930’s and see what the General Drafting Company can teach us about securing data and breach notification and how to apply these concepts in the modern day. Using free and open-source solutions I’ll show you that information security isn’t all about expensive third-party products and Security Operations Centers’ (SOC), rather, by using some defensive thinking and a bit of creativity, with your existing infrastructure and services you too can easily identify data breaches, and catch the bad guys in the act with the tools you already use in your own environment. Come along for a lesson on the anatomy of the canary.\n\n[PyCon 2018 Security \u0026 Privacy Track](https://www.youtube.com/watch?v=dA_rwYoy81U) • [OWASP AppSec Day](https://www.youtube.com/watch?v=3UE59HzWdbw) • [PurpleCon (PDF)](https://2018.purplecon.nz/archive/errbufferoverfl/agloe_what_the%20map_makers_of%20the_1930s_can%20teach_us_about%20protecting_data_in_2018.pdf)","lastmodified":"2023-07-15T02:15:03.518137325Z","tags":["conference","pycon","canary-technology","thinkst"]},"/soapbox/Building-your-own-offline-file-sharing-and-communication-system-for-the-inevitable-downfall-of-the-Internet":{"title":"Building your own offline file-sharing and communication system for the inevitable downfall of the Internet","content":"\nHave you ever considered a world where the Internet in all it's grandeur and tyre-fire-ness has finally imploded. Well after living for 8 months without the Internet I did and it looked a little like this. The PirateBox is a DIY anonymous offline file-sharing and communication system built with free software and inexpensive off-the-shelf hardware. \n \nThis workshop will go through the steps of setting up your very own PirateBox, using OpenWRT we will build an offline Internet with an inbuilt chat, file sharing capabilities and image board. Which can then be battery powered and carried around with you! The PirateBox is a beginner friendly privacy and anonymity positive piece of hardware, it introduces students to the basic concepts of hardware hacking, flashing devices, setting up config files etc. More importantly it has a larger cultural impact as it is an easy way for people to anonymously communicate and exchange files in a time where this is becoming difficult. It has previously been used by people to locally share digital media (such as ebooks) and to securely share cryptographic keys by people running CryptoParty workshops. Student Prerequisites This is a beginner friendly course, little to no prior knowledge of OpenWRT is needed, but users should have basic understanding of the command line.","lastmodified":"2023-07-15T02:15:03.518137325Z","tags":["training","hacking","diy","digital-commons"]},"/soapbox/Collapsology-Why-your-biggest-threat-isnt-exposed-RDP":{"title":"Collapsology: Why your biggest threat isn’t exposed RDP","content":"\nIn September 2021, I presented a conference talk entitled \"**Collapsology: Why Exposed RDP Isn't Your Biggest Threat**\" where I gave an overview of how to identify cultural threats in a rapidly evolving business landscape, and how we can use modern-day tools to identify these threats before they result in security culture collapse.\n\n\u003cdiv style=\"position: relative; width: 100%; height: 0; padding-top: 56.2500%; \npadding-bottom: 48px; box-shadow: 0 2px 8px 0 rgba(63,69,81,0.16); margin-top: 1.6em; margin-bottom: 0.9em; overflow: hidden; \nborder-radius: 8px; will-change: transform;\"\u003e \n \u003ciframe loading=\"lazy\" style=\"position: absolute; width: 100%; height: 100%; top: 0; left: 0; border: none; padding: 0;margin: 0;\" \n src=\"https:\u0026#x2F;\u0026#x2F;www.canva.com\u0026#x2F;design\u0026#x2F;DAEn_kdzmTs\u0026#x2F;view?embed\"\u003e \n \u003c/iframe\u003e \n \u003c/div\u003e \n \n \u003ca href=\"https:\u0026#x2F;\u0026#x2F;www.canva.com\u0026#x2F;design\u0026#x2F;DAEn_kdzmTs\u0026#x2F;view?utm_content=DAEn_kdzmTs\u0026amp;utm_campaign=designshare\u0026amp;utm_medium=embeds\u0026amp;utm_source=link\" target=\"_blank\" rel=\"noopener\"\u003ePyConline 2021 - Collapsology: Why your biggest threat isn’t exposed RDP\u003c/a\u003e by errbufferoverfl\n\n[[attachements/collapsology-why-your-biggest-threat-isnt-exposed-rdp-errbufferoverfl.pdf|PDF Download (without speakers notes)]]\n\n### Security Culture \n\nThe People-Centric Security Toolkit by [Lance Hayden](https://twitter.com/hay_lance) is licensed under a [Creative Commons Attribution-ShareAlike 4.0 International License](https://creativecommons.org/licenses/by-sa/4.0/).\n\n[Lance’s website](http://lancehayden.net) went down some time in December 2020, but you can still view it via [Way Back Machine](https://web.archive.org/web/20200219183945/http://lancehayden.net/culture/).\n\nThe People-Centric Security Toolkit can also be downloaded in it’s original format from my site below:\n\n- [[attachements/security-culture-toolkit/SCDS.zip|Security Culture Diagnostic Survey]]\n- [[attachements/security-culture-toolkit/Security_FORCE_Survey.zip|Security FORCE Survey]]\n- [[attachements/security-culture-toolkit/Security_FORCE_Metrics.zip|Security FORCE Metrics]]\n\n### Resources\n\n**Essential Cybersecurity Science**\n\nJosiah Dykstra · ISBN: 978-1-491-92094-7\n\n[amazon.com.au](https://www.amazon.com.au/Essential-Cybersecurity-Science-Josiah-Dykstra/dp/1491920947/) · [bookdepository.com](https://www.bookdepository.com/Essential-Cybersecurity-Science-Josiah-Dykstra/9781491920947) · [booktopia.com.au](https://www.booktopia.com.au/essential-cybersecurity-science-josiah-dykstra/book/9781491920947.html) [oreilly.com](https://www.oreilly.com/library/view/essential-cybersecurity-science/9781491921050/)\n\n**People-Centric Security: Transforming Your Enterprise Security Culture**\n\nLance Hayden Phd · ISBN: 978-0-071-84679-0\n\n[amazon.com.au](https://www.amazon.com.au/People-Centric-Security-Transforming-Enterprise-Culture/dp/0071846778/) · [bookdepository.com](https://www.bookdepository.com/People-Centric-Security-Transforming-Your-Enterprise-Security-Culture-Lance-Hayden/9780071846776) · [booktopia.com.au](https://www.booktopia.com.au/people-centric-security-lance-hayden/book/9780071846776.html) · [oreilly.com](https://www.oreilly.com/library/view/people-centric-security-transforming/9780071846790/)\n\n**Collapse: How Societies Choose to Fail or Succeed**\n\nJared Diamond · ISBN: 978-0-143-11700-1\n\n[amazon.com.au](https://www.amazon.com.au/Collapse-Societies-Choose-Succeed-Revised/dp/0143117009/) · [bookdepository.com](https://www.bookdepository.com/Collapse-Jared-Diamond/9780241958681) · [booktopia.com.au](https://www.booktopia.com.au/collapse-jared-diamond/book/9780241958681.html) [oreilly.com](https://www.oreilly.com/library/view/security-chaos-engineering/9781492080350/)\n\n**Security Chaos Engineering**\n\nAaron Rinehart \u0026 Kelly Shortridge · ISBN: 978-1-492-08034-3\n\n[oreilly.com](https://www.oreilly.com/library/view/security-chaos-engineering/9781492080350/)\n\n### References\n\n- [Apple’s child protection features spark concern within its own ranks](https://reut.rs/3kSVJxG)\n- [Slack rolls back parts of its new DM feature over harassment concerns](https://bit.ly/3BHy1eG)","lastmodified":"2023-07-15T02:15:03.518137325Z","tags":["conference","security-culture","pycon","social-engineering"]},"/soapbox/Linux-Users-Victoria-Main-Meeting-Kali-Linux":{"title":"Linux Users Victoria Main Meeting Kali Linux","content":"\nCome together in ritual to learn about KALI LINUX! A Debian based Penetration Testing and Ethical Hacking distribution, with over 600 pre-installed packages. In this talk errbufferoverfl will cover as many things as she can fit into an hour, from port scanning, to web application hacking to exploit pewpewpewing. We'll be looking at some of the more popular tools available within the distribution including nmap, Burp Suite Community Edition, John the Ripper and many others. She will also discuss the phases we go through when conducting a security assessment from recon to exploitation and where these tools can be leveraged. Tonight, for one night only no server, or web application is sacred.","lastmodified":"2023-07-15T02:15:03.518137325Z","tags":["meetup","hacking","linux"]},"/soapbox/Snake-Charming-for-Beginners":{"title":"Snake Charming for Beginners","content":"\nSnake-charming is an age-old practice of hypnotizing snakes by playing and waving a murli - in the modern day this practice looks much different, equipped with an Integrated Development Environment (IDE), a clackity keyboard and a trusty guide we'll be taking you through how you can effectively charm Python 3.6. \n\nOn the first day of our trek through the dense jungles of Pythonia we will be looking at how to build a simple sub-domain enumeration tool and how to get started building simple exploits - for those who have trekked these paths before - extra challenges will await you. \n\nDay two we will move further into the dark jungles of Pythonia delving into forbidden user-land territory and how you can use Python to gather useful system-level information, and contact the UNIX daemons of old. \n\nWhile writing this training description, errbufferoverfl wrote two Python fan fictions, the next cyber-themed Hollywood blockbuster and a Shakespearian play about the training.\n\n[GitHub](https://errbufferoverfl.github.io/snake-charming/)","lastmodified":"2023-07-15T02:15:03.518137325Z","tags":["training","python","infosec","hacking","exploit-development"]},"/soapbox/The-Big-Cloud-Security-Debate-Hackers-vs-Security-Engineers":{"title":"The Big Cloud Security Debate: Hackers vs Security Engineers","content":"\nA debate organised by ANZ, Contino and Meetup Madness where 4 hackers vs 4 security experts engaging in a fiery debate to determine all the ways they can hack and defend cloud environments. errbufferoverfl participated as part of the \"hackers\"/\"red team\".\n\n[Debate Recording](https://www.youtube.com/watch?v=1Na_G9jnc0Y\u0026list=PLtrnHiBgf6dB-sBZht63iR0BEQLAljBlK)","lastmodified":"2023-07-15T02:15:03.518137325Z","tags":["security","infosec","debate"]},"/the-antilibrary":{"title":"the antilibrary","content":"\n\u003e a scholar conscious of the power of [their] antilibrary is not concerned with treating knowledge as a property to possess or consume; rather [...] how much you don’t know—and how to find out that information when you need it.\n\u003e \n\u003e \\- Giovanni da Col, HAU: Journal of Ethnographic Theory\n\n## Before you begin…\n\nThe notes and summaries included in these pages are snippets that remind me, or help me relate and explore high-level concepts. They aren't a summary of the chapter or book! If you look through these notes and like the ideas, disagree with them, or you find yourself synthesising new ideas, I recommend you read the whole book!\n\n### Up Next\n\n{{\u003cpage-books status=\"Up Next\"\u003e}}\n\n### Current\n\n{{\u003cpage-books status=\"In Progress\"\u003e}}\n\n### Past\n\n{{\u003cpage-books status=\"Completed\"\u003e}}\n\n### Incomplete\n\n{{\u003cpage-books status=\"Incomplete\"\u003e}}","lastmodified":"2023-07-15T02:15:03.518137325Z","tags":["personal","evergreen"]},"/the-art-studio":{"title":"the art studio","content":"If you've been enjoying my work and finding it entertaining. Your support means the world to me, and I can't thank you enough for being a part of this journey.\n\nIf you want to stay connected and show your support, you can follow or supported me on [Ko-Fi](https://ko-fi.com/errbufferoverfl). It's a fantastic way to help me create more amazing content and keep the creative juices flowing.\n\n## Projects\n\n### [Anarchic Illustrations](art/anarchic-illustrations.md)\n\n{{\u003csummary link=\"art/anarchic-illustrations\"\u003e}}\n\n### [100 days of gouache](art/one-hundered-days-of-gouache.md)\n\n{{\u003csummary link=\"art/one-hundered-days-of-gouache\"\u003e}}\n\n### [character studies](art/character-studies.md)\n\n{{\u003csummary link=\"art/character-studies\"\u003e}}\n\n### [vegetable portraits](art/vegetable-portraits.md)\n\n{{\u003csummary link=\"art/vegetable-portraits\"\u003e}}\n\n### [work in progress](art/work-in-progress.md)\n\n{{\u003csummary link=\"art/work-in-progress\"\u003e}}\n\n## Mediums\n\n### [gouache](notes/gouache.md)\n\n{{\u003csummary link=\"notes/gouache\"\u003e}}\n\n### [woodblock](notes/woodblock.md)\n\n{{\u003csummary link=\"notes/woodblock\"\u003e}}","lastmodified":"2023-07-15T02:15:03.518137325Z","tags":[]}}
\ No newline at end of file
+{"/":{"title":"home","content":"\nWelcome to my digital garden. 🌱\n\nI'm **[errbufferoverfl](notes/errbufferoverfl.md)**, or Buffy for short. I'm a non-binary (**they/sie/ze**) anarchic gardener, knowledge librarian, and [Security Engineer](notes/security-engineer.md) by trade.\n\nI currently live on the unceded land of the [Wadawurrung and Dja Dja Wurrung People](notes/wadawurrung-and-dja-dja-wurrung-people.md).\n\n# 🌈 Now\n\n- 📐 Security Engineer @ Canva\n- 🧠 Learning how to be a better [[anarchist]], anti-capitalist and revolutionary\n- 👨💻 Currently working on making this site available on a handful of esoteric protocols like [IPFS](notes/ipfs.md) and [Hypercore](notes/hypercore.md):\n\t- [x] `ipns://garden.ipfs.errbufferoverfl.me`\n\t- [x] `hyper://garden.hyper.errbufferoverfl.me`\n\t- [ ] `gemini://garden.gemini.errbufferoverfl.me`\n- ✍️ Working on anarchic illustrations and prints and tending to my winter garden\n- 📚 Reading [Ghost Work](books/ghost-work.md)\n\n# 🗺️ Explore\n\nHere are some places you might explore:\n\n- 📖 [the notebook](/notes): a collection of musings and evolving ideas.\n- 🎨 [the art studio](/the-art-studio.md): art \u0026 illustrative projects, notes and musings.\n- 📚 [the antilibrary](/the-antilibrary.md): books that are in some state of read, being read, or to be read.\n- 🎙️ [the soapbox](/soapbox): meetup, conference and training that I've previously delivered.\n- 🔧 [the engineering anthology](notes/projects.md): a collection of notable projects that I’ve finished and or currently maintaining.\n\nWant to get in touch? Checkout [where to find me](https://links.errbufferoverfl.me).","lastmodified":"2023-07-15T02:14:56.255016704Z","tags":[]},"/art/all-crustaceans-really-are-beautiful":{"title":"All Crustaceans Really Are Beautiful ","content":"\n![all-crustaceans-really-are-beautiful](/imgs/art/all-crustaceans-really-are-beautiful.jpeg)","lastmodified":"2023-07-15T02:14:56.255016704Z","tags":["oeuvre","digital painting","anarchic"]},"/art/anarchic-illustrations":{"title":"anarchic illustrations","content":"\nDrawings, prints and stickers promoting the abolition of traditional forms of government and institutions.\n\nAll my anarchic themed illustrations are available as high-res downloads, available under CC by 4.0 on [Ko-Fi](https://ko-fi.com/album/-Anarchic-Illustrations-A0A5KQCYU).\n\n{{\u003c page-gallery tag=\"anarchic\"\u003e}} ","lastmodified":"2023-07-15T02:14:56.255016704Z","tags":["project"]},"/art/autumn-pumpkins":{"title":"autumn pumpkins","content":"\n![autumn pumpkins](imgs/art/autumn-pumpkins.jpg)","lastmodified":"2023-07-15T02:14:56.255016704Z","tags":["oeuvre","digital painting","vegetables"]},"/art/catherine-the-great":{"title":"👑 Catherine the Great - A Tiny Character Study","content":"\n![catherine the great a tiny character study](/imgs/art/catherine-the-great-study.png)","lastmodified":"2023-07-15T02:14:56.255016704Z","tags":["oeuvre","character study"]},"/art/character-studies":{"title":"Character Studies","content":"\nLittle illustrations and spreads that have been created to explore the traits of characters, featuring my favourites from television shows, movies and my imagination.\n\n{{\u003c page-gallery tag=\"character study\"\u003e}} ","lastmodified":"2023-07-15T02:14:56.255016704Z","tags":["project"]},"/art/do-what-makes-you-happy":{"title":"Do What Makes You Happy","content":"\n![Do What Makes You Happy](imgs/art/do-what-makes-you-happy.png)","lastmodified":"2023-07-15T02:14:56.255016704Z","tags":["oeuvre","gouache","100 days gouache"]},"/art/freedom-is-not-given-its-taken":{"title":"Freedom is not Given its Taken","content":"\n![Freedom is not Given its Taken](imgs/art/freedom-is-not-given-its-taken.png)","lastmodified":"2023-07-15T02:14:56.255016704Z","tags":["oeuvre","wip","work in progress"]},"/art/fuck-capitalism":{"title":"Fuck Capitalism","content":"\n![Fuck Capitalism](imgs/art/fuck-capitalism.png)","lastmodified":"2023-07-15T02:14:56.255016704Z","tags":["oeuvre","gouache","100 days gouache"]},"/art/one-hundered-days-of-gouache":{"title":"100 days of gouache","content":"\nThe concept of a 100 days project is you commit to doing something consistently for 100 days straight. For a non sequential 100 days I created a [[notes/gouache|gouache]] painting using [100 Days of Drawing](https://www.booktopia.com.au/100-days-of-drawing-guided-sketchbook--jennifer-lewis/book/9781419732171.html) by Jennifer Lewis.\n\n{{\u003c page-gallery tag=\"100 days gouache\"\u003e}}","lastmodified":"2023-07-15T02:14:56.255016704Z","tags":["oeuvre"]},"/art/supporters-kofi-weekly-roundup":{"title":"[Supporters] Ko-Fi Weekly Roundup","content":"\nWelcome to another weekly roundup that are becoming fortnightly roundups ~ \n\nFor the past week-ish I've been on a well needed break from work taking a couple of days to visit South Australia and pick up a new hobby in the form of gouache painting which I'll get to soon. \n \n🔒 [Available for supporters only.](https://ko-fi.com/post/2023-05-27--Weekly-Roundup-E1E5LNY52)","lastmodified":"2023-07-15T02:14:56.255016704Z","tags":["kofi","supporters","weekly-update"]},"/art/vegetable-portraits":{"title":"Vegetable Portraits","content":"\nPortraits of my favourite and seasonal vegetables created using a variety of artistic mediums, they act as consistent theme that records changes in art style.\n\n{{\u003c page-gallery tag=\"vegetables\"\u003e}} ","lastmodified":"2023-07-15T02:14:56.255016704Z","tags":["project"]},"/art/work-in-progress":{"title":"Work in Progress","content":"\nWork that is still in progress and being worked on.\n\n{{\u003c page-gallery tag=\"work in progress\"\u003e}} ","lastmodified":"2023-07-15T02:14:56.255016704Z","tags":["project"]},"/books/anarchic-agreements-a-field-guide-to-collective-organising":{"title":"Anarchic Agreements, a Field Guide to Collective Organising","content":"\n*A new world is possible and not just in our hearts. Anarchic Agreements is a quintessential field guide for the revolution, answering the practical questions often left out of works of political theory and philosophy.*\n- *How do leaderless groups organize?* \n- *How might they create constitutions, balance power and write protocols?* \n- *How do group cultures and institutions maintain coalitions?* \n\n*This urgent and inspiring how-to is the product of more than twenty years of research. Designed explicitly for everyday use, it contains lived examples, illustrations throughout, and text from current horizontally organized constitutions. These documents illustrate the never-ending process of developing community and keeping collaborations alive in the fairest ways possible. Written by dedicated anarchist scholars and organizers, and based on the widely popular Anarchic Agreements pamphlet series, this book facilitates grassroots activism and provides methods to improve and streamline decision making. It is an inspiring celebration of the novel, complex and flexible constitutions Anarchists have created over time. This book shows how to realize another world, collectively without domination, while leaving the future open to infinite other possibilities.*\n\n**authored by** [[Ruth Kinna]], [[Alex Prichard]], [[Thomas Swann]], [[Seeds for Change]]\n\npublished on November 22, 2022 by PM Press\n\n## High-Level Thoughts\n\nGood book to read cover to cover, but ultimately better as a reference, this book is a practical guide to building durable, fair and coercion free groups and coalitions. It won't tell you how-to in the traditional sense but provides the tools needed to determine how to.\n\n## Summary Notes\n\nConstitutions aren't static documents (nor do they need to be written documents!), they are (or should be) constantly revised. They define \"rules\" (social norms?) of a community and divide power into visible sub-groups so that it's not all concentrated within one group of people, i.e., cliques, or friendship groups.\n\nSupporting the process of constitutionalising doesn't imply that [anarchists](anarchist) need to support or defend the constitution of state and nation. But we should acknowledge that a constitution in a group or coalition can be helpful in defining our understanding of right and wrong, and balancing power.\n\nThe difference with constitutions backed by [the state](notes/the-state.md) is not only are they remain fixed and difficult to change even when our ideas of equality, equity and material power change. This is compounded by the fact the state often uses coercive controls to keep people from contesting or challenging the existing constitution.\n\nModern constitutions represent the interests of the most powerful individuals and groups in society and changing these constitutions means changing the interests of the most powerful – which is unlikely to happen especially if as part of redefining the constitution their power and privilege is reduced, redistributed or removed.\n\nHaving a constitution, or a constitutional process is not the same as democracy, and democracy isn't always antithetical to the constitution of a society.\n\n### Building Durable Groups\n\nA constitution, wether written or not should aim to create a shared understanding of who the group is, and how they do things. (Similar to a team working agreement?). A good anarchic constitution must be: **consensual**, **changeable**, and **conscious**.\n\n**Consensual** doesn't mean being told what to do, to have a proper consensual agreement, everyone should be able to shape the agreement, or at the least have their needs taken into account.\n\nProtracted meetings about policies can lead to a group losing people who are keen to get things done, it's important to find compromise [Consensus and Humming in the IETF](notes/consensus-and-humming-in-the-ietf.md) provides a method of creating rough consensus that I think is applicable here.\n\nConstitutions should be revised regularly, cadence can be decided by the group but it can be tied to key events, like new people joining, established members leaving etc., it could also be regularly updated as established members update their views and/or circumstances change.\n\nConstitutions and building consensus should be balanced with group stability and and having all views reflected, for example:\n\u003e An anti-nuclear power group wouldn't be expected to become pro-nuclear because someone joined the group and said they didn't agree with what it is all about.\n\nSo while a group might not change their principals, they might be flexible about how those principals are achieved, for example: \n\u003e A group that is committed to a non-hierarchal structure might think carefully about before introducing a system of elected leaders to expedite decision making. But they might experiment with different models to vote on issues.\n\nWhat I see as the most important of these principals is being conscious of \"decisions\" being made – it's often the case that a group is formed around a vibe, and so things like aim, purpose and value are never discussed which can result in more conflict further on.\n\nFocusing on a shared vibe while powerful also leads in unclear expectations and over time lead to ad-hoc decision making which can fragment establishing members and contribute to burn out.\n\nBut similar things can be said for making practical decisions – a group can slide into habits that shape how a team or group function over time. \n\nWhile this can affect **everyone** in a group, when it comes to groups where there is a overrepresentation of men it can result in a lot of the day to day operational work being done by people read as women, al la \"[glue work](https://noidea.dog/glue)\".\n\nHaving conscious conversations about how labour is divided means it's possible to consider the implications of different options and choose the one that works best.\n\nConscious decisions are easier to communicate to new members – it can shape the development of a clear responsibility model and means messaging will be consistent, which in turn makes it easier to hand over if someone else takes over the job.\n\nLess-conscious decisions on the other hand will favour those already empowered by the group – e.g., if you're an establishing member or you're more confident in your position in a group you're likely going to explain group dynamics within that context.\n\nConscious decision making is balancing act – if you're empowered, you're also likely to put forward your views, fight for your ideals, and perhaps assume that if no one disagreed your suggestion was agreed to. \n\nAs important as it is for others to speak up, it's just as important, if not more important for the empowered to step back.\n\n**Helpful tools:** Roles and Responsibilities, Responsible, Accountable, Consulted and Informed (RACI) Matrix, Team Working Agreements, Ritual Resets.\n\n**What is the group?** What is the purpose, and what are our aims? What principals and values do we share? What do we need to do to achieve our aims? Who can join the group?\n\nIn this set of questions I also like to ask: how do we make tradeoffs? This is sometimes covered under principals and values but I like to take to about them as tenets and frame them as statements that show how they are applied.\n\n**How are decisions made?** Do we use full consensus, rough consensus or vote? Who needs to be involved in what kind of decisions? What decisions need to be made at regular meetings and what can be decided outside of regular meetings?\n\n**How do we get things done?** How often do we meet? Are there regular social events? How do we communicate with each other outside of meetings? How do we communicate with people outside of the group? Are sub-groups or individuals responsible for certain tasks?\n\n**How do we manage operational security?** How do we share passwords and secrets? How can people outside our group identify a communication is from us? How do we communicate securely amongst ourselves?\n\n**What policies do we need?** How will we respond if someone makes a complaint to the group? Is there a system that would make it harder to steal group funds?\n\n**How can we make the group empowered?** Are there groups of people who are likely to be empowered/disempowered in the group? What checks and balances can we introduce to make sure no one sub-group gains too much influence? What can we do to make it easier for people who are currently marginalised to take on roles and help shape the group?\n\nConsider creating systems to reduce barriers to people getting involved: a stipend or paying for baby-sitting so parents can attend more easily, picking venues more consciously so they are accessible. Picking issues affecting the most affected.\n\n\n","lastmodified":"2023-07-15T02:14:56.331017986Z","tags":["book","non-fiction","political science","anarchy","anarchism","constitutions","history and theory"]},"/books/expect-resistance-a-crimethinc-field-manual":{"title":"Expect Resistance: A Crimethink Field Manual","content":"\n_Expect Resistance_ is not one but three books, each of which may be read as a complete work unto itself. The first book, printed in standard black ink, continues the inquiry into modern life and its discontents begun in _[Days of War, Nights of Love](https://crimethinc.com/books/days-of-war-nights-of-love)_. Just as that book included improved versions of texts originally published between 1996 and 1999, this book draws on CrimethInc. material from 2000 to 2004, painstakingly refined and augmented with a great deal of new content. The second book, in red ink, is a composite account, related by three narrators, of the adventures and tribulations that inevitably ensue when people pursuing their dreams enter into conflict with the world as it is.\n\nTogether these comprise a third book, an exploration of the complex relationship between ideals and reality. _Expect Resistance_ is a field manual for a field on which all manuals are useless, a meditation on individual transformation and collective resistance in disastrous times, and a masterpiece that raises the bar for radical publishing.\n\n**authored by** [[CrimethInc. Ex-Workers' Collective]]\n\npublished on 2008 by CrimethInc. Collective\n\n## High-Level Thoughts\n\n## Summary Notes\n\nTen thousand generation have dreamed of flying but in the modern day we need movies to numb the boredom we experience this feat. Perhaps because now, nearly 240 years later we're so emotionally insulated from the adventure of flying we've lost the sensation and joy of experiencing the landscape below, deprived of the sensation of being airborne.\n\nWhen breaking apart from the status quo you will need to fight off every conviction instilled in you since childhood that those who don't play their part in society are failures.\n\nThe author recounts a story of dropping a coffee machine off of an eleven story building, noting a pedestrian lurched back as it hit the ground and this was _not_ a vibe. No ones desire to be liberated should come at the expense of hitting a random person with a fucking coffee machine.\n\nOur modern indulgences are crafted by external factors rather than our own, for example: we like fast food because we have to hurry back to work, it disrupts the brain-gut axis, and we're so busy and stressed we can't justify enjoying the festivity in cooking and eating.\n\n\u003e [!info] 2023-06-29\n\u003e \n\u003e In the past few days I've found myself at a bit of a crossroads with this book. While I know it's brimming with tales of anarchy and camaraderie, the message within these pages requires a receptive mind and I'm just not *there* yet.\n\u003e \n\u003e So, dear book, rest assured I will return and retrace my steps. But for now, I'm going to bid you farewell.","lastmodified":"2023-07-15T02:14:56.331017986Z","tags":["book","non fiction","political science","politics","non fiction","anarchism","philosophy","activism","social justice","feminism","counter culture"]},"/books/ghost-work":{"title":"Ghost Work","content":"\n\"A startling exposé of the invisible human workforce that powers the web--and how to bring it out of the shadows. Hidden beneath the surface of the internet, a new, stark reality is looming--one that cuts to the very heart of our endless debates about the impact of AI. \n\nAnthropologist Mary L. Gray and computer scientist Siddharth Suri unveil how the services we use from companies like Amazon, Google, Microsoft, and Uber can only function smoothly thanks to the judgment and experience of a vast human labor force that is kept deliberately concealed. The people who do 'ghost work' make the internet seem smart. They perform high-tech, on-demand piecework: flagging X-rated content, proofreading, transcribing audio, confirming identities, captioning video, and much more. The shameful truth is that no labor laws protect them or even acknowledge their existence. \n\nThey often earn less than legal minimums for traditional work, they have no health benefits, and they can be fired at any time for any reason, or for no reason at all. An estimated 8 percent of Americans have worked in this 'ghost economy,' and that number is growing every day. In this unprecedented investigation, Gray and Suri make the case that robots will never completely eliminate 'ghost work' and the unchecked quest for artificial intelligence could spark catastrophic work conditions if not stopped in its tracks. Ultimately, they show how this essential type of work can create opportunity--rather than misery--for those who do it.\"\n\n**authored by** [[Mary L. Gray]], [[Siddharth Suri]]\n\npublished on 2019 by Eamon Dolan Books\n\n## High-Level Thoughts\n\n## Summary Notes\n\nGrey notes within the first few pages that on-demand isn't inherently good or bad, a sentiment I disagree with, in later pages, she talks about how people working in ghost work often have this sense of urgency to not only accept a job,[^1] but to complete the task accurately or risk losing income. To me this aligns to the [[white supremacy]] cultural habit.[^2] We see that by applying this sense of urgency it perpetuates a power imbalance between employee and employer while disconnecting ghost workers from their need to pause and reflect, which would guarantee a higher success rate and the need for companies to pay them more.\n\nIgnoring wether Grey thinks this work is good or bad, one thing we know for certain us like we've seen in the Australian fruit and vegetable picking industry, paying by weight picked, or in this case by task is ripe for abuse.\n\nAWU Nation Secretary Dan Walton on fruit picking:[^3]\n\u003e \"The problem is too many farmers have become addicted to underpayment and exploitation as a normal part of doing business. This model isn’t inevitable in Australia, it’s just the one we’ve chosen in Australia,\"\n\nIn the same way as fruit picking in Australia, it's not that the technology industry *can't* find better ways to solve the problem they have just become addicted **and** dependent on the exploitation of people throughout the supply chain to provide their boards with record profits[^citation-needed].\n\nGrey reports that [[FAANG]] companies often use ghost work to remove as much \"not safe for work\" content from their platform, for me the call out and an important distinction here is that it's not safe for **work**, not, not safe for people, which begs the question why are we investing so much money into sanitising the Internet? (That's a rhetorical question).\n\nWithin the first few pages Grey has already set the scene for this book – there is the general understanding that this work is **important** and **valuable** to the usability of the platform but the associated monetary value is low. I mean it is exactly like how we value [reproductive-labor](posts/reproductive-labor.md).\n\nOn page xiv of the introduction, Grey says:\n\u003e Unlike CPUs, humans have agency: they make their own decisions.\n\nAnd while I understand the general sentiment she is getting at, I disagree because when you live in a society that values rugged individualism and limits the basic opportunities people have, they don't have significant self-determination. It becomes something that only the privileged have.\n\nCompanies rely on an assembly line of workers to satisfy customers **who have grown to expect responses to their requests within seconds**. \n\nElon Musk, Stephen Hawking and Larry Page are people who have expressed panic about AI or have revealed in a time \"before AI\" when people \"controlled their destiny\". But one must ask if humans especially humans who live in states that have dismantled welfare were ever really in control of their destiny or if this notion of destiny is just something reserved for the people who have time and money to pursue \"destiny\".\n\nFoxconn, who make iPhones apparently replaced 60,000 humans with robots in 2016.[^4]\n\nIn 2016, Amazon's 20 fulfilment centres apparently deployed 45, 00 robots to work alongside 230,000 people. In 2019, Amazon started rolling out machines to automate boxing up customer orders.[^5]\n\nRobots and automations often allow employers to have what they want when they want the, which allows them to avoid navigating the the problems of negotiating with employees for better, safer working conditions. It also means they no longer need to deal with the classification of types of work, or engaging with the employment laws that are protecting humans.\n\nDismantling employment on the surface sounds positive, but this is occurring along side the dismantling of the welfare state, which encourages this value of rugged individualism.\n\nWe're also seeing years of global reform be undone, from child labor laws,[^6] [^7]to workplace safety guidelines.[^8]\n\nJPMorgan Chase Institute found 4.3% of U.S adults (10.73 million people) had worked an online-platform-economy job at least once between 2015 and 2016. The jobs provide no professional title, no ladder to climb, no bonuses, and no guarantees.\n\nGray talks about the thing that is common with all the people she interviewed was their hope;\n- Their hope to use on-demand jobs to control when they work, who they work with, and what tasks they take on.\n- The hope to avoid long commutes and hostile work environments.\n- They hope to gain experiences that refreshes their resume or opens the door to new possibilities.\n\nGray interviewed a bunch of people some looking to starve off boredom, or pay for weddings, younger siblings degrees, and in line with previous observations, disabled and retired folks looking for alternative routes to employment or making extra money to pad their social security checks.\n\n**Platforms**\n- Mechanical Turk (MTurk): The Amazon on-demand work platform.\n- Universal Human Relevance System (UHRS): The Microsoft on-demand work platform, can only be used by Microsoft staff and authorised third-parties.\n- CrowdFlower (Figure Eight Inc.)\n\n[^1]: Ghost Work, Mary L. Gray, Siddharth Suri, Introduction, page. xiii\n[^2]: [Sense of Urgency](https://www.whitesupremacyculture.info/urgency.html)\n[^3]: [Serving up abuse and exploitation – Australian horticulture’s dark secret](https://www.australianunions.org.au/2021/03/01/serving-up-abuse-and-exploitation-australian-horticultures-dark-secret/)\n[^4]: [Apple supplier Foxconn seeks to slim workforce over time, eyes robotics](https://www.reuters.com/article/us-hon-hai-labor-idINKBN0L00Z520150128)\n[^5]: [Exclusive: Amazon rolls out machines that pack orders and replace jobs](https://www.reuters.com/article/us-amazon-com-automation-exclusive-idUSKCN1SJ0X1)\n[^6]: [U.S. to crack down on child labor amid massive uptick](https://www.reuters.com/business/us-crack-down-child-labor-amid-massive-uptick-2023-02-27/)\n[^7]: [Arkansas leads charge to weaken child labor protections](https://www.theguardian.com/us-news/2023/mar/08/arkansas-bill-child-labor-protections)\n[^8]: [After rejecting COVID rule, Arizona could lose oversight of workplace safety](https://www.reuters.com/legal/government/after-rejecting-covid-rule-arizona-could-lose-oversight-workplace-safety-2022-04-20/)","lastmodified":"2023-07-15T02:14:56.331017986Z","tags":["book","technology","non fiction","economics","business","labor","anthropology","politics","sociology","artificial intelligence"]},"/books/lost-in-work-escaping-capitalism":{"title":"Lost in Work Escaping Capitalism","content":"\n'Work hard, get paid.' It's simple. Self-evident. But it's also a lie—at least for most of us. For young people today, the old assumptions are crumbling; hard work in school no longer guarantees a secure, well-paying job in the future. Far from equating to riches and fulfilment, 'work' increasingly means precarity, anxiety and alienation. \n \nAmelia Horgan poses three big questions: what is work? How does it harm us? And what can we do about it? Along the way, she explores the many facets of work under capitalism: its encroachment on our personal lives; the proliferation of temporary and zero-hours contracts; burnout; and how different jobs are gendered or racialized. \n \nWhile abolishing work altogether is not the answer, _Lost in Work_ shows that when workers are able to take control of their workplaces, they become less miserable, and even open doors allowing them to fight back against the elite.\n\n**authored by** [[Amelia Horgan]]\n\npublished on June 20, 2021 by Pluto Press","lastmodified":"2023-07-15T02:14:56.331017986Z","tags":["book","non fiction","politics","sociology","economics","history","philosophy","feminism","labor","theory","activism"]},"/books/revolution-at-point-zero":{"title":"Revolution at Point Zero","content":"\n*Written between 1974 and 2016, Revolution at Point Zero collects four decades of research and theorising on the nature of housework, social reproduction, and women’s struggles on this terrain—to escape it, to better its conditions, to reconstruct it in ways that provide an alternative to capitalist relations. Indeed, as Federici reveals, behind the capitalist organisation of work and the contradictions inherent in “alienated labor” is an explosive ground zero for revolutionary practice upon which are decided the daily realities of our collective reproduction.* \n\n*Beginning with Federici’s organisational work in the Wages for Housework movement, the essays collected here unravel the power and politics of wide but related issues including the international restructuring of [[posts/reproductive-labor|reproductive work]] and its effects on the sexual division of labor, the globalisation of care work and sex work, the crisis of elder care, the development of affective labor, and the politics of the commons. This revised and expanded edition includes three additional essays and a new preface by the author.*\n\n**authored by** [[Silvia Federici]]\n\npublished on 2020-08-01 by PM Press\n\n## High-Level Thoughts\n\nA series of essays that explore globalisation, [reproductive work](posts/reproductive-labor.md) and how these things intertwine to suppress women across the world. A series of essays, it's a lot easier to read than a complete book. While some of the concepts like [structural adjustment programs](notes/structural-adjustment-programs.md) can seem fairly beyond those in the process of being radicalised, or those new to economic radicalisation Federici provides sufficient context to understand the concepts.\n\n## Summary Notes\n\n### War, Globalisation and Reproduction (2000)\n\n\u003e First came the foreign bankers eager to lend at extortionate rates; then the financial controllers to see that the interest was paid; then the thousands of foreign advisors taking their cut. Finally, when the country was bankrupt and helpless, it was time for the foreign troops to “rescue” the ruler from his “rebellious” people. One last gulp and the country had gone.\n\u003e – Thomas Pakenham, _The Scramble for Africa_\n\nDeveloped world initiatives are largely based on globalisation and pushing imperialism, but it takes the form of food aid and humanitarianism. These are just tactics to gain and maintain control over other states.\n\nComes in the form of [structural adjustment programs](notes/structural-adjustment-programs.md) (SAPs), introduced in the 19080s by the World Bank and the International Monetary Fund.\n\nAmericanisation of the world, and pushing \"neoliberal\" ideals and policy, including land privatisation, abolition of communal land tenure, downsizing the public sector and defunding social services, all these activities shift systems of controls from African governments to the World Bank and NGOs.\n\n\u003e \"Structural adjustment is war by other means\"\n\u003e – Clausewitz\n\n These \"programs\" were supposed to improve the state of the economy, but more than a decade on the opposite has happened, local economies have collapsed, foreign investment hasn't materialised. \n \nWar forces people off the land, it takes producers away from the means of production. Then when the land is no longer being used, the land is reclaimed in the name of capitalists, boosting the production of [cash crops](notes/cash-crops.md) and export oriented agriculture.\n\nControlling food and food based aid is able to do what arming militia can't. Often delivered to both sides it can be delivered by organisations other than the Red Cross which allows them to intervene in areas of conflict. This was used to justify the US/UN military intervention in Somalia in 1992/3.\n\nEven if troops aren't involved in the distribution or guarding of food, the delivery of food is always intervention that prolongs war by feeding contending armies (more often then civilians). This in turn shapes military strategy and most benefits those who can take advantage of food distribution.\n\nBecause of the control food aid gives to imperial forces, shaping warfare it also contributes to the displacement of rural communities by setting up distribution around the needs of the NGOs.\n\nSo wether food aid actually benefits civilians is questionable at best. It seems more likely that the real motivation is to phase out subsistence farming, and create a dependence on important food both of which benefit the World Bank.\n\nQuestioning wether food aid is beneficial if probably seen as controversial in the west because its such a focus of NGOs and \"charitable\" efforts but we've known about the negative effects of food aid since the 1960s and its been the subject of a lot of protest and research.\n\nSince then the axiom adopted is \"you don't help people by giving them food, but by giving them the tools to feed themselves\".\n\nNGOs have further marginalised people caught in the cross section of conflict and famine because they have been denied the ability to control relief activities while being portrayed as helpless and unable to care for themselves unless you donate today, which then justifies military intervention.\n\n\u003e This is a colonialism that aims at controlling policies and resources rather than gaining territorial possession, in political terms, a 'philanthropic', 'humanitarian', 'foot-loose' colonialism that aims at 'governance' rather than 'government…\n\nToday's imperialism is then by definition different, imperialism of the late nineteenth and early twentieth centuries was defined by weapons and force where we could hold someone to account, for example, King Leopold of Belgium who had a personal responsibility for the killing of millions of people in the Congo. But today as millions die as a consequence of structural adjustment, no one person is help to account because it is a social cause of death that is invisible to the western capitalist market.","lastmodified":"2023-07-15T02:14:56.331017986Z","tags":["book","non fiction","social science","feminism","nonfiction","politics","philosophy","theory","essays","gender"]},"/books/the-age-of-surveillance-capitalism":{"title":"The Age of Surveillance Capitalism","content":"\n*The challenges to humanity posed by the digital future, the first detailed examination of the unprecedented form of power called 'surveillance capitalism,' and the quest by powerful corporations to predict and control us.* \n\n*The heady optimism of the Internet's early days is gone. Technologies that were meant to liberate us have deepened inequality and stoked divisions. Tech companies gather our information online and sell it to the highest bidder, whether government or retailer. Profits now depend not only on predicting our behaviour but modifying it too. How will this fusion of capitalism and the digital shape our values and define our future? *\n\n*Shoshana Zuboff shows that we are at a crossroads. We still have the power to decide what kind of world we want to live in, and what we decide now will shape the rest of the century. Our choices: allow technology to enrich the few and impoverish the many, or harness it and distribute its benefits. *\n\n*The Age of Surveillance Capitalism is a deeply-reasoned examination of the threat of unprecedented power free from democratic oversight. As it explores this new capitalism's impact on society, politics, business, and technology, it exposes the struggles that will decide both the next chapter of capitalism and the meaning of information civilization. Most critically, it shows how we can protect ourselves and our communities and ensure we are the masters of the digital rather than its slaves.*\n\n**authored by** [[Shoshana Zuboff]]\n\npublished on 2019-01-31 by Profile Books","lastmodified":"2023-07-15T02:14:56.331017986Z","tags":["book","non fiction","politics","economics","technology","business","sociology","computers"]},"/books/the-feminist-and-the-sex-offender":{"title":"The Feminist and the Sex Offender","content":"\nIn the era of #MeToo and mass incarceration, The Feminist and the Sex Offender makes a powerful feminist case for accountability without punishment and sexual safety and pleasure without injustice. With analytical clarity and narrative force, The Feminist and the Sex Offender contends with two problems that are typically siloed in the era of #MeToo and mass incarceration: sexual and gender violence, on the one hand, and the state’s unjust, ineffective, and soul-destroying response to it on the other. Is it possible to confront the culture of abuse? Is it possible to hold harm-doers accountable without recourse to a criminal justice system that redoubles injuries, fails survivors, and retrenches the conditions that made such abuse possible? Drawing on interviews, extensive research, reportage, and history, The Feminist and the Sex Offender develops an intersectional feminist approach to ending sexual violence. It maps with considerable detail the unjust sex offender regime while highlighting the alternatives we urgently need.\n\n**authored by** [[Judith Levine]], [[Erica R. Meiners]]\n\npublished on 23 April, 2020 by Verso Books\n\n","lastmodified":"2023-07-15T02:14:56.331017986Z","tags":["book","non-fiction","feminisim","politics","philosophy","theory","feminist theory","gender","social justice","academia"]},"/notes/Autobase":{"title":"Autobase","content":"\nAn experimental module that's used to rebase (follow?) multiple casually linked [Hypercores](notes/hypercore.md) into a single, linearized Hypercore for multi-user collaboration.","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["seedling","distributed system","hypercore"]},"/notes/B-tree":{"title":"B-tree","content":"\nA self-balancing tree data structure that is used to store data in a sorted and searchable manner.","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["seedling","data structure","distributed system","hypercore"]},"/notes/DHT":{"title":"DHT","content":"\nA decentralized data structure that is used to store and retrieve data over a network. The [HyperDHT](notes/hyperdht.md) is used to facilitate the discovery of peers and to enable connections between them.","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["seedling","data structure","hypercore","ipfs"]},"/notes/DID":{"title":"DID","content":"\nDecentralized identifier (DIDs) identifies any subject (e.g., a person, organization, thing, data model, abstract entity, etc.) that the controller of the DID decides that it identifies.\n\nThe W3C DID Working group has developed and approved a W3C Recommendations doc.\n","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["seedling","hypercore","digital identity"]},"/notes/Embodiment":{"title":"Embodiment","content":"\nThe principles of **embodiment** look at diverse experiences and relationships as human beings embodying multiple identities and realities in “disembodied” online spaces.\n\n## Consent\n\nWomen's agency lies in their ability to make informed decisions on what aspects of our lives we share online.\n\nIf social media wanted to they could embed consent into their product, but they don't and instead focus on extracting as much data as possible with little attention to who is posting data to whom.\n\nIn the *general* (read: Newscorp \u0026 Murdoch) media, we see a lack of outrage about a lack of transparency in privacy breaches.\n\nThis is also a core theme of [The Age of Surveillance Capitalism](books/the-age-of-surveillance-capitalism.md) and is core to maintaining [surveillance capitalism](notes/surveillance-capitalism.md).\n\n### Principle in Action\n\n- [Terms of Service Didn't Read](https://tosdr.org/) provides a mechanism in which users can provide informed consent when using a website because they can understand **what** they are agreeing to.\n\n### More Thoughts\n\n- [[Something, something… why is no one talking about Medicare, claim codes and how this impacts women's health]]\n\n## Privacy \u0026 Data\n\nEveryone should have the right to privacy and to full control over personal data and information online at all levels. There is a staunch rejection of private and state data collection for profit and online user manipulation.\n\nSurveillance is a patriarchal tool, used to control and restrict women's bodies, speech and activism. This type of control doesn't start at home, or end with the state and we must pay equal attention to the surveillance practices of individuals, the private sector, [the-state](notes/the-state.md)] and non-state actors.\n\n### More Thoughts\n\n- [Ethical hacking, the antithesis of ethical hacking?](private/Ethical%20hacking,%20the%20antithesis%20of%20ethical%20hacking?.md)\n\n## Memory\n\n## Anonymity\n\n## Children\n\n## Violence\n\n## Resources\n\n- [The Do-It-Yourself Feminist Internet: Cyber feminist actions from Latin America](https://feministinternet.org/index.php/en/resource/do-it-yourself-feminist-internet-cyber-feminist-actions-latin-america)\n- [Big Data and Sexual Surveillance](https://feministinternet.org/en/resource/big-data-and-sexual-surveillance)","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["seedling","feminist principles"]},"/notes/Holepunch":{"title":"Holepunch","content":"\n[Holepunch](https://github.com/holepunchto) is a company and suite of tools that \"equips developers with a powerful suite of independent components to effortlessly construct peer-to-peer applications.\"\n\nA Holepunch stack can be broken up into three parts:\n\n## Building Blocks\n\n- [hypercore](notes/hypercore.md)\n- [hyperbee](notes/hyperbee.md)\n- [hyperdrive](notes/hyperdrive.md)\n- [autobase](notes/autobase.md)\n- [hyperdht](notes/hyperdht.md)\n- [hyperswarm](notes/hyperswarm.md)\n\nkeet.io is a peer to peer chat that is built entirely on Holepunch.\n\n## Helpers\n\n// TODO","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["seedling","protocol","distributed system","peer to peer","p2p"]},"/notes/HyperDHT":{"title":"HyperDHT","content":"\nA [dht](notes/dht.md) powering [hyperswarm](notes/hyperswarm.md), each server is bound to a unique key pair, where the client connects to the server using the servers public key.","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["seedling","distributed system","hypercore"]},"/notes/Hyperbee":{"title":"Hyperbee","content":"\nAn append-only [b-tree](notes/b-tree.md) running on Hypercore. It provides a key-value store API with mechanisms that can be used for:\n\t- Inserting and retrieving key-value pairs;\n\t- Atomic batch insertion;\n\t- Creation of sorted iterators.","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["seedling","distributed system","hypercore"]},"/notes/Hypercore":{"title":"Hypercore","content":"\nA distributed, peer to peer, append-only log that can be used to create fast scalable applications without a backend.","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["seedling","distributed system","hypercore"]},"/notes/Hyperdrive":{"title":"Hyperdrive","content":"\nA real-time distributed file system.","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["seedling","file system","distributed system","hypercore"]},"/notes/Hyperswarm":{"title":"Hyperswarm","content":"\nA high-level API for finding and connecting to peers who are interested in a \"topic\".","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["seedling","distributed system","hypercore"]},"/notes/IPFS":{"title":"IPFS","content":"\nInterPlanetary File System (IPFS) is a protocol, hypermedia and file sharing peer-to-peer network for storing and sharing data to a distributed file system.\n\nIt is an alternative location-based hyper media server protocol that could replace HTTP/HTTPS. It allows users to host and receive content is a similar way to BitTorrent.\n\nAny user in the network can serve a file by it's content address, and many other peers in the network can find and request content from any node who has it using a [DHT](notes/dht.md).\n\nIPFS seems to be strongly aligned to [[Web3]], and is often mentioned in the same breath as cryptocurrency protocols. 🚨\n\nTo develop IPFS, in 2017 Protocol Labs launched its own cryptocurrency named Filecoin.\n\nCloudflare started using IPFS in 2018 and launched its own gateway in 2022.\n\n## How is it being used?\n\n- Cryptocurrency\n- Content Delivery\n- Microsoft has built their [DID](notes/did.md) on IPFS\n- Discussion systems\n- To prevent and/or circumvent censorship\n\t- [Distributed, privacy-enhancing technologies in the 2017 Catalan referendum on independence: New tactics and models of participatory democracy](https://firstmonday.org/ojs/index.php/fm/article/view/9402/7692)\n- Phishing\n\t- The phishing email is stored on Cloudflare's IPFS which displays the content as secure.\n- Command and Control\n\t- The IPStore botnet uses IPFS to hide C2 traffic amongst the flow of legitimate data on the IPFS network. ([English Translation](attachements/IPFS-and-IPNS-protocols-as-a-means-of-botnet-control-proof-of-concept.pdf))[^1]\n\n[^1]: AQUINO, Bruno Macabeus M. de; LIMA, Marcus Vinicius L. de; OLIVEIRA, João Paolo Cavalcante M. de; SOUZA, Cidcley Teixeira de. [Protocolos IPFS e IPNS como meio para o controle de botnet: prova de conceito](https://sol.sbc.org.br/index.php/wscdc/article/view/2400). _In_: CONNECTED DEVICES CYBERSECURITY WORKSHOP (WSCDC), 1. , 2018, São José dos Campos. **Anais** [...]. Porto Alegre: Sociedade Brasileira de Computação, 2018.","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["seedling","protocol","distributed system","peer to peer","p2p","distributed file system","content delivery network"]},"/notes/a-feast-around-a-table-with-devils-and-witches":{"title":"The history of witches and wizards","content":"\n**The history of witches and wizards: giving a true account of all their tryals in England, Scotland, Swedeland, France, and New England; with their confession and condemnation**, circa 1720, Collected from Bishop Hall, Bishop Morton, Sir Matthew Hale, etc., [Wellcome Collection](https://wellcomecollection.org/works/abkab8tq/images?id=a3nuy2zq)\n\n![A feast around a table with devils and witches](imgs/a-feast-around-a-table-with-devils-and-witches.png)\n*\u003ccenter\u003e**A feast around a table with devils and witches**, [woodblock](notes/woodblock)\u003c/center\u003e*","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["reference","woodcut","17th century"]},"/notes/aquarium-algae-scrubber":{"title":"Aquarium Algae Scrubber","content":"\nAn algae scrubber is a water filtering device thats used to grow algae, which in the process, filters undesirable chemicals like nitrate, phosphate, nitrite, ammonia, ammonium from the water.\n\n\u003e [!info] Sizing\n\u003e 10 cm x 10 cm can generally handle ~200 litres of water\n\n## What you need\n\n- A black basket or container (no holes)\n- Cable ties\n- Course grit sandpaper\n- An air stone that stone should span the width of the container\n- Air line suction cups\n- Air line hose suitable for the air stone\n- Plastic knitting canvas\n- Low energy light source (LED of CFL)\n\n## Tools\n\n- Drill\n- Ruler\n\n## Instructions\n\n- Cut the top three quarters of off, ideally, it's about double the hight of the airstone you bought.\n- Cut the knitting mesh to fit the inner dimensions of your container. Be sure to subtract about an inch or two off the height, leaving enough room for the air stone to sit attached underneath.\n- Give the knitting mesh a once over with the course grit sandpaper so both sides are rough to the touch, this will help the algae affix itself to the canvas.\n- Give the plastic canvas a rinse to get all the debris off so it doesn't end up in the fish tank.\n- Cut two notches at the top and bottom of the knitting mesh, these will be used to affix the mesh to the top of the container and the airstone.\n- At the bottom of the mesh affix the airstone using two cable ties like so:\n\n![aquarium-algae-scrubber](imgs/aquarium-algae-scrubber.png)\n\n\u003e [!note]\n\u003e You'll want to make sure you have a clearance of about 2cm at the bottom, so the mesh and airstone can move freely\n\n- Next we want to drill some holes in the basket so we can connect everything together.\n\t- At the top on the container drill two holes on the outer edge, these will be used to affix the knitting mesh to the container.\n\t- In between these two holes drill three more, equally spaced which will be the primary water inlets.\n\t- Cut 3 holes, evenly spaced at the bottom, this will form an outlet.\n\t- Drill 4 holes, 2 on either side of the container, which will be used to attach the suction cups to the Algae scrubber.\n\nTo be continued...","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["aquarium","solarpunk","seedling","project"]},"/notes/ars-moriendi":{"title":"Ars moriendi","content":"\n![Demons tempt the dying man with crowns (a medieval allegory to earthly pride) under the disapproving gaze of Mary, Christ and God.](imgs/ars-moriendi.png)\n*\u003ccenter\u003e**Ars moriendi, [woodblock](notes/woodblock) 7 of 11**, Circa 1460, illustrator unknown, en wikipedia. [Source](http://userpage.fu-berlin.de/~aeimhof/seelefr.htm)\u003c/center\u003e*\n\nThe Ars Moriendi (The Art of Dying) is a Mediaeval Christian death manual that appeared around the middle of the fifteenth century. The text is understood to be a response to the devastation of the Black Death.\n\nThe book basically gave people instructions of how to die in a way that ensured they made it to heaven because there were so many dead or missing priests.\n\nToday the Ars moriendi is well known for it's illustrations which were [[notes/woodblock|woodblock]] rather than it's text which is primarily quotations from the Church Fathers and the Vulgate.\n\n\u003e[!tip]\n\u003e\n\u003e Mr. Bungle's California has a track called *[Ars Moriendi](https://www.youtube.com/watch?v=tUOWTmOP4FQ)*.\n\n## Further Reading\n- [The Ars Moriendi: An examination, translation, and collation of the manuscripts of the shorter Latin version](https://www.medievalists.net/2012/02/the-ars-moriendi-an-examination-translation-and-collation-of-the-manuscripts-of-the-shorter-latin-version/)","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["woodcut","pre-16th century","reference"]},"/notes/bookmarks":{"title":"Bookmarks","content":"\n## Python\n\n- [Tracking database changes in Flask Sqlalchemy for audit logs](https://sagarkaurav.hashnode.dev/tracking-database-changes-in-flask-sqlalchemy-for-audit-logs)\n\n\n## OAuth\n\n- [OAuth 2.0 Dynamic Client Registration Protocol](https://datatracker.ietf.org/doc/rfc7591/)","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["seedling","python","oauth"]},"/notes/cash-crops":{"title":"cash crops","content":"\nA crop that is grown to sell for profit rather than for the benefit of the farmer. Used to distinguish between marketed crops from subsistence crops in subsistence agriculture.\n\nIn comparison subsistence cops are those fed to the producer's own livestock or grown as food for the producer's family. \n\nCash crops include:\n- Cereals like wheat, rye, corn, barley, oats\n- Oil-yielding crops like grapeseed, mustard seeds, soybeans\n- Vegetables\n- Lumber yielding trees like spruce, pines and firs\n- Tree fruit like apples, cherries, citrus, pomegranates, oranges\n- Sort fruit like strawberries, raspberries, banana\n- Cotton\n- Rice\n- Tobacco\n- Indigo\n- Sugar cane","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["seedling"]},"/notes/coaster-for-salute":{"title":"Coaster for Salut","content":"\n![Coaster for Salute](imgs/coaster-for-salut.png)\n\n*\u003ccenter\u003e**Coaster for Salute**, [gouache](notes/gouache) painting by [@rowan_sugar](https://rowansugar.carrd.co), [Coaster 3/6 for the Salut!](https://www.instagram.com/p/Cst6vuNP8Tj/), 2023\u003c/center\u003e*\n","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["gouache","reference"]},"/notes/consensus-and-humming-in-the-ietf":{"title":"Consensus and Humming in the IETF","content":"\nThis post summarises the key points of [RFC 7282](https://datatracker.ietf.org/doc/html/rfc7282) an informational RFC (Request for Comment) published in 2014. This post is? will be? part of an ongoing collection on decision making and consensus building that looks to explore how groups make decisions and why.\n\n\u003e We reject: kinds, presidents and voting.\n\u003e We believe in: rough consensus and running code.\n\u003e \n\u003e \\-Dave Clark, 1992 plenary presentation on decision making in the IETF.\n\nThe IETF (Internet Engineering Task Force) does a lot of their technical work through a consensus process, taking into account different views amongst participants and aims to come to a rough consensus using a majority rule philosophy.\n\nBut this is often mistaken as voting which it isn't. Requiring full consensus, while nice, allows a single inflexible person who keeps saying no to stop the process cold.\n\nInstead the IETF have a tradition of humming – for example, when there is a face to face meeting and the chair wants to get a sense of the room they will request people hum on a particular question either for or against.\n\n**But this doesn't answer why humming and not voting.**\n\n## 1. Lack of disagreement is more important than agreement.\nConsider the following:\n\u003e The chair asks on the mailing list, \"Is everyone OK with format A?\" Inevitably, a number of people object to format A for one or another technical reason. The chair then says, \"It sounds like we don't have consensus to use format A. Is everyone OK with format B?\" This time even more people object to format B, on different technical grounds. The chair, not having agreement on either format A or format B, is left perplexed, thinking the working group has deadlocked.\n\nThe problem experienced is the chair conflated **determining** consensus, with **coming to** a consensus, with **having** consensus.\n\nWhile it might be subtle, it comes down to understanding tradeoffs, which engineering in all forms is about. There will always be appealing and unappealing options. So what's the difference?\n\n- **Determining consensus:** is about separating the choices that are unappealing from those that are problematic. Acceptable vs. complete.\n- **Coming to consensus:** is when everyone comes to the conclusion that either the objections are valid, and therefore make a change to address the objection, or that the objection was not really a matter of importance, but merely a matter of taste.\n\nSo really:\n\n\u003e Consensus is when everyone is sufficiently satisfied with the\n chosen solution.\n\n## 2. Rough consensus is achieved when all issues are addressed, but not necessarily accommodated\n\nIn the IETF, a working group will likely encounter an objection where:\n- Everyone understands the issue.\n- Acknowledges that it's a real shortcoming in the proposal.\n- Agree that accommodating the objection is not worth the tradeoff of fixing the problem.\nIn some cases, the person(s) raising the objection may not agree with this. \n\nIn these cases, if the chair finds that the issue has been well considered, and that the vast majority of the working group has come to the conclusion that a tradeoff is worth making, even in the face of continued objection, the chair can declare the group has come to a rough consensus.\n\n\u003e [!note] RFC 1603 vs RFC 7282\n\u003e \n\u003e This is a change from how rough consensus has been characterised in the IETF where is has been described as \"the dominant view\" of the group .[^1]\n\nAnd while [RFC 2418](https://www.rfc-editor.org/rfc/rfc2418.html) puts some percentages on what \"rough consensus\" looks like, RFC 7282 warns that being able to count and quantify how many people agree or disagree risks overlooking important minority views.\n\nSo it's important that a **rough consensus model** addresses (not necessarily fixes) important minority views.\n\n## 3. Humming should be the start of a conversation\n\nFinal decisions are supposed to be taken on the mailing list, but sometimes, the chair will want to determine they are coming to consensus.\n\nIntroduce *humming*.\n\nWhile some will conflate this with an anonymous vote, hums are not votes. Sometimes the hum can tell a chair that the room isn't all that contentious, it's only a few being particularly vocal.\n\nSometimes the hum will make it clear that one choice has more support than another and it's a good place to start the discussion, for example:\n\n\u003e Let's have the people that think 'foo' is a bad idea come up and tell us why it is problematic.\n\nSo the hum is a starting point. It's a temperature.\n\nA small but loud group of hums for option A and a larger, but more non-committal hum for option B might tell us that some people have some concerns with option B, but it's overall more popular.\n\nYou could also be surprised to find that the hums is unanimous and no further discussion is needed.\n\n## 4. Consensus is the path, not the destination\n\nThe IETF doesn't see consensus as the destination, rather consensus-building is a tool to get the best technical outcome. They found voting can result in important minority views being ignored, and, ultimately worse technical outcomes.\n\n---\n\nThe author [Pete Resnick](https://www.episteme.net/Work/) goes into more detail and provides more examples in the RFC so I recommend reading it in full to learn more about it.\n\n[^1]: https://datatracker.ietf.org/doc/html/rfc1603","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["seedling","consensus building","humming","shut up about humming in the ietf Bec"]},"/notes/e2e-fear-campaign-accce-and-police":{"title":"E2E Fear Campaign -- ACCCE \u0026 Police","content":"\n[Post on Twitter](https://twitter.com/errbufferoverfl/status/1646427897727688704?s=20)\n[Post on Mastodon](https://mastodon.errbufferoverfl.me/@errbufferoverfl/110190569356553694)\n\n1/14 The ACCCE \u0026 police are currently running a fear campaign about end to end encryption centering their arguments this time on concerns about sextortion of teenagers. 🗞️[https://www.abc.net.au/news/2023-04-13/police-warn-of-sextortion-of-teens/102216558](https://www.abc.net.au/news/2023-04-13/police-warn-of-sextortion-of-teens/102216558)\n\n2/14 But it’s clear this is the latest iteration of the crypto wars \u0026 the real goal is to subversively push an EARN IT-style act in Australia. The EARN IT Act it’s a guide of \"best practices\" that providers need to implement in order to \"earn\" immunity for hosting CSAM. \n\n3/14 These \"best practices\" include refraining from using end-to-end encryption. The Internet Society \u0026 a host of others continue to work spreading awareness about the harms perpetuated by laws like this \n✉️ https://www.internetsociety.org/resources/2022/internet-impact-brief-how-the-us-earn-it-act-threatens-security-confidentiality-\u0026-safety-online/\n\n4/14 But back to the OP – the platform the ACCCE \u0026 police are lobbying on looks to weaken end to end encryption \"for the children\" which is problematic for a few reason:\n\n5/14 1️⃣ It weakens controls used by other vulnerable groups, like DV survivors who use end to end encryption as a confidential lifeline to get themselves \u0026 their families to safety.\n\n6/14 2️⃣ Journalists rely on encryption when working on sensitive stories, especially in authoritarian countries.\n\n7/14 3️⃣ Data confidentiality is crucial for businesses, \u0026 by weakening end to end encryption we inherently make it easier for threat actors to get access to our personal information.\n\n8/14 In Australia the Telecommunications \u0026 Other Legislation Amendment (Assistance \u0026 Access) Act (TOLA), expanded the government’s powers to bypass digital data protections, which have been found to have negatively impact businesses \u0026 the economy \n📎 https://www.internetsociety.org/blog/2021/06/how-do-surveillance-laws-impact-the-economy/\n\n9/14 The reality is keeping children safe online is more complicated than making the digital platforms they use responsible for the content they share, and we’re already seeing similar legislative changes happen overseas with harmful effects:\n🐦[https://twitter.com/gustavoturnerx/status/1646304338074308608](https://twitter.com/gustavoturnerx/status/1646304338074308608)\n\n10/14 We know from research done in 2001, that most children targeted for sextortion are \"at risk,\" with prior maltreatment or emotional/social difficulties. Most of these \"at risk\" children are at risk because they have had their trust, privacy \u0026 security abused by people in positions of authority. \n📎 https://www.aic.gov.au/sites/default/files/2021-03/ti623_criminal_justice_responses_to_csam_offending.pdf](https://www.aic.gov.au/sites/default/files/2021-03/ti623_criminal_justice_responses_to_csam_offending.pdf)\n\n11/14 What ACCCE \u0026 the Police are asking for is not the safety of children -- they are looking for an increased ability to surveil the Australian public. \n\n12/14 Even the Australian Institute of Criminology found in their 2021 trends \u0026 issues report that there wasn’t enough evidence for policymakers \u0026 practitioners to make a reliable decision about criminal justice responses to CSAM offending \n\n13/14 \u0026 without that, there is likely to be more harm done. \n📎 https://www.aic.gov.au/sites/default/files/2021-03/ti623_criminal_justice_responses_to_csam_offending.pdf\n\n14/14 Ultimately if this was actually a matter of children's safety, we would be focusing our attention on children's liberation \u0026 giving them more self-determination, \u0026 better avenues to protect themselves from family \u0026 domestic violence.","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["sapling","end to end encryption","e2e encryption","earnit act","csam"]},"/notes/erlaubnis-project-diagrams":{"title":"Erlaubnis Project Diagrams","content":"\n*These diagrams can also be found on [Github](https://github.com/errbufferoverfl/erlaubnis).*\n\n```mermaid\n---\ntitle: Erlaubnis Authorization State Diagram\n---\nstateDiagram-v2\n\t[*] --\u003e Request\n\tRequest --\u003e Verifing: Exchange Client Params\n\tVerifing --\u003e Waiting_Approval: Grant Valid\n\tVerifing --\u003e Unauthorised: Grant Invalid\n\tWaiting_Approval --\u003e Authorised: Grant Approved\n\tWaiting_Approval --\u003e Unauthorised: Grant Denied\n\tWaiting_Approval --\u003e Timed_Out: Grant Unserviced\n\tAuthorised --\u003e Revoked: Grant Revoked\n\tRevoked --\u003e [*]\n\tTimed_Out --\u003e [*]\n\tUnauthorised --\u003e [*]\n\tAuthorised --\u003e [*]\n```\n\n```mermaid\n---\ntitle: Erlaubnis Entity Relationship Diagram\n---\nerDiagram\n USER {\n string id\n string username\n string password\n datetime created_at \n datetime updated_at\n }\n \n ROLE {\n integer id\n string name\n string description\n }\n \n CLIENT {\n string id\n string client_name\n string token_endpoint_auth_method\n array grant_types\n }\n \n METADATA {\n string logo_uri\n array contacts\n string policy_uri\n string tos_uri\n string client_uri\n }\n \n CONFIGURATION {\n integer version\n string jwks\n string jwks_uri\n string scope\n }\n \n REGISTRATION_RECORD {\n int id\n foreign_key user_id\n foreign_key client_id\n datetime installation_time\n }\n \n INSTALLATION_RECORD {\n int id\n foreign_key user_id\n foreign_key client_id\n foreign_key configuration\n datetime installation_time\n }\n \n STATE_RECORD {\n foreign_key user_id\n foreign_key client\n string state\n }\n \n USER ||--o{ ROLE : has\n USER ||--o{ CLIENT : registers\n REGISTRATION_RECORD ||--o{ CLIENT : generates\n INSTALLATION_RECORD ||--o{ CLIENT : generates\n STATE_RECORD ||--o{ CLIENT : generates\n USER ||--o{ CLIENT : installs\n CLIENT ||--o{ CONFIGURATION : contains\n CLIENT ||--||METADATA : contains\n```","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["seedling","state machine","entity relationship","software engineering","oauth 2.1"]},"/notes/errbufferoverfl":{"title":"errbufferoverfl","content":"\nThe easiest way to pronounce it is \"error buffer overflow\"... like the security vulnerability.","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":[]},"/notes/feminist-principles-of-the-internet":{"title":"Feminist Principles of the Internet","content":"\nThe Feminist Principles of the Internet are a series of statements that offer a gender and sexual rights lens on critical Internet-related rights.\n\nThere are 17 principles in total, organised into 5 clusters:\n- Access\n- Movements\n- Economy\n- Expression\n- [Embodiment](notes/embodiment.md)\n\nThey aim to provide a framework for women's movements to articulate and explore issues related to technology.","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["seedling"]},"/notes/gouache":{"title":"gouache","content":"\nGouache is a water based medium made of pigment, water and a binding agent, normally gum arabic or dextrin. \n\nGouache is similar to watercolour in that it can be re-hydrated and it infuses with the paper. While it also possesses qualities similar to that of acrylic and oil paint in that it's used for opaque painting styles.\n\n\u003e[!warning]\n\u003e\n\u003e Wet and dry gouache will have different values with lighter tones drying darker, and darker tones drying lighter, however, this is not a universal rule and it's important to swatch your colours before painting.\n\n## Gouache Paintings\n\n{{\u003c page-gallery tag=\"gouache\"\u003e}} ","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["medium","painting","art"]},"/notes/ideas":{"title":"ideas","content":"\n## Technical\n\n## Writing","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["evergreen"]},"/notes/interesting-tech-tools":{"title":"Interesting Tech Tools","content":"\n## Distributed Computing\n\n### Distributed Press\n\n[Website](https://distributed.press/) · [Github Repo](https://github.com/hyphacoop/api.distributed.press)\n\nan open source publishing tool for the World Wide Web and [[Distributed Web]]. It automates publishing to the world wide web, and seeds to [IPFS](notes/ipfs.md) and [Holepunch](notes/holepunch.md).\n\n**Additional Notes**\n- [Setting Up Distributed Press on Digital Ocean](posts/setting-up-distributed-press-on-digital-ocean.md)\n\n## Microservices\n\n### Temporal\n\n[Website](https://temporal.io/) · [Github Repo](https://github.com/temporalio/temporal)\n\nAn open source programming model that can be used to provide in depth tracing using the concept of \"business logic as code\". \n\n## Color \u0026 Design\n\n### Dopely\n\nA bunch of helpful colour tools like pallet, tone, tint and shade generators. Also has digital colour tools for checking contrast and colour blindcheckers.\n\n[Dopely](https://colors.dopely.top/)\n\n## Software Development\n\n### Refactoring Guru\n\nProvides high-level and implementation guides for common design patterns and refactoring.\n\n[Refactoring Guru](https://refactoring.guru/)\n\n### Python Patterns\n\nBrandon Rhodes, evolving guide to design patterns in the Python programming language. The site allows him to collect his ideas about Python and Design Patterns all in one place.\n\n[Python Patterns](https://python-patterns.guide/)\n\n### Flask Documentation\n\nComprehensive guide to Flask, that includes common patterns, how Flask works, and how to get started with common components, like SQL Lite.\n\n[Flask Documentation](https://flask.palletsprojects.com/en/2.3.x/)\n\n\n## Graphs\n\n### Cytoscape.js\n\nGraph theory (network) library for visualisation and analysis.\n\n[Cytoscape.js Official Website](https://js.cytoscape.org/)","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["evergreen","opensource","python","golang","typescript","php","java"]},"/notes/lago-daverno":{"title":"Lago d'Averno","content":"\n![Lago d'Averno](imgs/lago-daverno.png)\n*\u003ccenter\u003e**[Lago d'Averno](https://en.wikipedia.org/wiki/Lago_d%27Averno \"Lago d'Averno\")**, [gouache](notes/gouache) painting by [Jacob Philipp Hackert](https://en.wikipedia.org/wiki/Jacob_Philipp_Hackert \"Jacob Philipp Hackert\"), 1794.\u003c/center\u003e*","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["gouache","reference"]},"/notes/nasas-adlr-framework-for-lessons-learned":{"title":"NASA's ADLR Framework for Lessons Learned","content":"\nExample: [NASA Lesson Number 5756](https://llis.nasa.gov/lesson/5756)\n\nThe ADLR framework is broken up into four parts:\n- **Abstract:** a two or three sentence summary of what happened.\n- **Driving Event:** a more detailed breakdown providing context on the events or circumstances surrounding the driving event occurred. Can include references, evidence, etc. but should remain blameless, stating objectively what happened.\n- **Lesson(s) Learned:** focuses on what was learned as a consequence of the driving event.\n- **Recommendation(s):** what changes can and should be made going forward to prevent the same event from occurring.\n\nNASA also include a section on **evidence of recurrence control effectiveness**, which shows where the lesson has been referenced as part of other decisions or in the development of other practices.\n\nWhile most people in an every day context won't be regularly writing up decisions or practices, including this section as a point of reflection is important. \n\nVery often we make decisions about how to move forward after learning a lesson and forget to reflect on wether the recommendations actually serve us, or if they just made us feel like we improved something.","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["seedling","NASA","ADLR","decision-making","incident-management"]},"/notes/neocolonialism":{"title":"neocolonialism","content":"\nIntrusion of foreign economic domination, it can include military and economic intervention in the form of [structural adjustment programs](notes/structural-adjustment-programs.md). Neocolonialism is seem in states that have already achieved independence from colonial rule.","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["seedling"]},"/notes/projects":{"title":"the engineering anthology","content":"\nThis is a list of notable projects that I’ve finished and or currently maintaining. My (considerably longer) list of unfinished ideas can be found [here](notes/ideas.md).\n\n## 2019\n\n### Kult of the Cyber Witch\n\nKult of the Cyber Witch was a holistic information security and culture zine that centered on people of marginalised genders and sexes experiences within the Oceania region.\n\n[Itch.io](https://kultofthecyberw.itch.io/)\n\n## 2017\n\n### USB Canary\n\nA Linux or OSX tool that uses psutil to monitor devices while your computer is locked. In the case it detects someone plugging in or unplugging devices it can be configured to send you an SMS or alert you via Slack or Pushover.\n\n[GitHub](https://github.com/errbufferoverfl/usb-canary)","lastmodified":"2023-07-15T02:14:56.551021699Z","tags":["evergreen"]},"/notes/sauerkraut-recipe":{"title":"Sauerkraut Recipe","content":"\nSauerkraut recipe for Week 26, 2023. \n\n## Ingredients\n\n- 2453g cabbage\n- 674g carrot\n- 252g apple\n- 450g celeriac (forgot to weigh it, so this is a guess)\n- 1 packet of [sauerkraut seasoning](https://herbsandspicesaustralia.com/product/pickling-spice-mix-for-cabbage/)\n- 0.02g salt per kilo of vegetables + water\n\t- (3000ml water + 3829g vegetables) x 0.02g = 136.58g pickling salt\n\n\u003e [!note] Making brine\n\u003e \n\u003e Heaps of recipes will say \"you're not supposed to use brine, just use the water that comes out of the vegetables!\" and honestly, I've never made a batch that produces enough water that I don't need additional brine. So in this house we use brine.\n\n## Method\n\n- Weight your fermentation vessel, and write the weight down.\n- Cut and shred the vegetables, weight them and write this number down. Make save to save a few cabbage leaves for the top.\n- Put all your vegetables into your clean fermenting vessel.\n- Add in the spice mix and give everything a mix so the spice is well distributed.\n- Add enough water to cover the vegetables.\n\n\u003e [!note] Pre-boiling water\n\u003e \n\u003e It's probably not required in places that have good quality soft water, like Victoria, but I always boil and cool the water as an extra step.\n\n- Give everything another weigh and subtract the vegetables and fermentation vessel from the number on the scale. This is how the water weighs. Add this number to the weight of the vegetables.\n\n\u003e [!note] Weight of water\n\u003e \n\u003e If you're like me you can just measure the amount of liquid you added in ml/liters and assume 1L = 1000g 🤷\n\n- Make brine using the ratio provided for a 2% mix, if you want a different ratio, I like to use this [brine calculator](https://hakkobako.com/fermentation-brine-calculator/).\n- If you boiled the water for your brine, let it stand until it's about room temperature either on the bench top or in the fridge.\n- Once at room temperature pour the brine into the fermentation vessel and push everything down with a potato masher or something. Clean hands also work.\n- Cover with the cabbage leaves.\n- Top either some fermenting weights, a heavy bowl or a clean rock on top to weight everything down.\n- Close the vessel and store in a dark corner for a few weeks depending on temperature.\n\n\u003e [!info] Temperatures for fermenting\n\u003e \n\u003e Warmer temperatures will speed up fermentation, cooler temperatures will slow down fermentation, so:\n\u003e - At 21°–23°C sauerkraut will be done in 3-4 weeks.\n\u003e - At 15°–18°C sauerkraut will be done in about 6 weeks.\n\n","lastmodified":"2023-07-15T02:14:56.555021767Z","tags":["recipe","fermenting"]},"/notes/security-engineer":{"title":"What is a security engineer?","content":"\nAs a security engineer my main role is *enabling* engineering teams to make good decisions about how to build and maintain adequately secure systems.\n\nI'm currently focused on app security and developing a security partnerships program and as cliché as it sounds there is no \"typical day\" for me and it's largely shaped by the needs of the engineering group I work with. \n\nGenerally, it can be largely be split into three or four general categories:\n- **Operational work**, this is work that keeps the Application Security teams lights on for example vulnerability management, consulting with engineers very broadly, creating and tuning automations to streamline automation all of which takes up about 30-50% of my time during a given week.\n\nThe rest of my time is spent helping the group I am working with reach their end goal which can be shipping a product or feature, this can be broken up into more discreet responsibilities like:\n- **Building relationships and consulting with engineering**, which primarily sees me talking to engineers about the problems they are having and helping them identify if changes will likely result in more or less security risk and identifying ways to manage this. I also have to speak to group leads about how security is functioning and if there are any significant concerns we need to work on addressing.\n- **Research \u0026 development**, while a lot of this happens as a consequence of daily activities there are lots of times I need to go out and do additional research. Sometimes this means building a minimal viable product to demonstrate a vulnerability, or it can mean reading industry standards and identifying how they apply to the context we're operating in.\n- **Strategy \u0026 planning**, while a lot of day to day security engineering is reactive, there is also the general need to build out plans in anticipation of future needs, this can be finding ways to scale yourself through self-service, writing guidelines and processes or helping engineering teams build secure development practices into their everyday delivery.","lastmodified":"2023-07-15T02:14:56.555021767Z","tags":["security-engineer","application-security"]},"/notes/structural-adjustment-programs":{"title":"structural adjustment programs","content":"\nStructural adjustment programs are a [[notes/neocolonialism|neocolonist]] tool that sets out a set of economic reforms that a country must adhere to secure a loan from the International Monetary Fund and/or the World Bank.\n\nThese reforms have been in place since the 1940s but there was a significant push in the 1980s as part of a push to lend to \"crisis-stricken poor\" countries.\n\nCountries engaged in structural adjustment programs have been required to perform some combination of the following: \n\n- Devaluing their currencies to reduce balance of payments deficits. \n- Cutting public sector employment, subsidies, and other spending to reduce budget deficits.\n- Privatising state-owned enterprises and deregulating state-controlled industries.\n- Easing regulations in order to attract investment by foreign businesses.\n- Closing tax loopholes and improving tax collection domestically.\n\nWhile there was a reduction in applying structural adjustment in the 2000 it returned to normal levels in 2014. \n\nStructural adjustment loans cannot be spent on health, development or education programs.[^1]\n\nThe following countries are currently distributed in East and South Asia, Latin America, and Africa. including Colombia, Mexico, Turkey, Philippines, Pakistan, Nigeria, Sudan, Zimbabwe and India.\n\n[^1]: [Structural Adjustment—a Major Cause of Poverty by Anup Shah](https://www.globalissues.org/article/3/structural-adjustment-a-major-cause-of-poverty)","lastmodified":"2023-07-15T02:14:56.555021767Z","tags":["seedling","economics","macroeconomics"]},"/notes/surveillance-capitalism":{"title":"surveillance capitalism","content":"\nSurveillance capitalism is a type of capitalism market form, and a [technocratic](notes/technocratic.md)-oriented phenomenon that centres on the commodification of personal data by corporations.\n\nIt is distinct from government-surveillance, though they can, and often do reenforce each other.\n\nSurveillance capitalism's modern day roots can be traced back to Google's AdWords, which really cemented what was possible when personal data was aggregated and mined to target consumers more precisely.\n\nIn [Shoshana Zuboff](Shoshana%20Zuboff)'s book [The Age of Surveillance Capitalism](books/the-age-of-surveillance-capitalism.md) there are four key features in the logic of surveillance capitalism and explicitly follows the four key features identified by Google's chief economist:\n1. The drive toward more and more data extraction and analysis.\n2. The development of new contractual forms using computer-monitoring and automation.\n3. The desire to personalize and customize the services offered to users of digital platforms.\n4. The use of the technological infrastructure to carry out continual experiments on its users and consumers.","lastmodified":"2023-07-15T02:14:56.555021767Z","tags":["seedling","capitalism","surveillance","tracking","big data"]},"/notes/technocratic":{"title":"technocratic","content":"\nTechnocracy is a form of government in which the decision-makers are selected based on their expertise in a given area of responsibility, particularly with regard to scientific or technical knowledge.","lastmodified":"2023-07-15T02:14:56.555021767Z","tags":["seedling"]},"/notes/the-inner-sanctum":{"title":"The Inner Sanctum","content":"\n![The Inner Sanctum](imgs/the-inner-sanctum.png)\n*\u003ccenter\u003e**The Inner Sanctum** (2022), [gouache](notes/gouache), watercolor, and ink on paper, 100 x 70 centimeters, [Colossal](https://www.thisiscolossal.com/2022/11/rithika-merchant-mixed-media-works/)\u003c/center\u003e*","lastmodified":"2023-07-15T02:14:56.555021767Z","tags":["gouache","reference"]},"/notes/the-offering":{"title":"The Offering","content":"\n![](imgs/the-offering.png)\n*\u003ccenter\u003e**The Offering**, [gouache](notes/gouache) painting by Bill Mayer, [Bill Mayer's Personal Website](https://www.thebillmayer.com/)\u003c/center\u003e*","lastmodified":"2023-07-15T02:14:56.555021767Z","tags":["reference","gouache"]},"/notes/the-state":{"title":"the state","content":"\nThe \"state\" is a centralised political organisation that imposes and enforces rules over a population within a territory.\n\n\u003e [!warning]\n\u003e \n\u003e Definitions of state are disputed and can vary depending on context and audience.\n\nWalter Scheidel an Austrian historian maintains that most modern definitions of the state have the following in common:\n- Centralised institutions that impose rules;\n- Back these rules up by force;\n- Within a territorially circumscribed population; \n- With a distinction between the rulers and the ruled; \n- Includes an element of autonomy, stability, and differentiation.","lastmodified":"2023-07-15T02:14:56.555021767Z","tags":["seedling","authority control"]},"/notes/theatrum-chemicum-britannicum":{"title":"Theatrum Chemicum Britannicum","content":"\n![Alchemical image taken from the British alchemical theater of ripley, depicts the two-headed serpent of arabia: azoth and kibrit](imgs/theatrum-chemicum-britannicum.png)\n*\u003ccenter\u003e**Theatrum Chemicum Britannicum**, [woodblock](notes/woodblock), circa 1652, Elias Ashmole, [The Public Domain Review](https://publicdomainreview.org/collection/theatrum-chemicum)\u003c/center\u003e*","lastmodified":"2023-07-15T02:14:56.555021767Z","tags":["reference","woodcut","16th century"]},"/notes/using-pytest-with-flask":{"title":"Using Pytest with Flask","content":"\n## What to test?\n\nUnit tests should focus on testing a small unit of code in isolation:\n- Database models\n- Utility functions\n\nFunctional tests should focus on how the view functions operate:\n- Nominal conditions (GET, POST, etc.) for a view function\n- Invalid HTTP methods are handled properly for a view function\n- Invalid data is passed to a view function\n\n## Documenting Tests\n\nMartin Fowler provides a really idiomatic way of describing tests in his blog post on [GivenWhenThen](https://martinfowler.com/bliki/GivenWhenThen.html):\n\n```python\n\"\"\"\nGIVEN a User model\nWHEN a new User is created\nTHEN check the email, hashed_password, and role fields are defined correctly\n\"\"\"\n```\n\n- GIVEN - what are the initial conditions for the test?\n- WHEN - what is occurring that needs to be tested?\n- THEN - what is the expected response?\n\n## Pytest Fixtures\n\nFixtures initialise tests to a known state to run tests in a predictable and repeatable manner, these should be created in your `conftest.py` file.\n\nIn Pytest, fixtures can be run with different scopes:\n- `function` - run once per test function (default scope)\n- `class` - run once per test class\n- `module` - run once per module (e.g., a test file)\n- `session` - run once per session\n\nFor example, to create a User as a fixture:\n\n```python\nfrom project.models import User\n\n@pytest.fixture(scope='module')\ndef new_user():\n user = User('username@example.com', 'Password1!')\n return user\n```\n\n`@pytest.fixture(scope='module')`\n\nThis decorator specifies that a function is a fixture with a module-level scope. So this fixture will be called once per test module.\n\n`def new_user()`\n\nIs the function that creates an instance of a User using valid arguments.\n\nTo use this fixture, in other tests you pass it in as the first argument to a subsequent test, e.g.,\n\n```python\ndef test_new_user_with_fixture(new_user):\n \"\"\"\n GIVEN a User model\n WHEN a new User is created\n THEN check the email, hashed_password, and role fields are defined correctly\n \"\"\"\n assert new_user.email == 'username@example.com'\n assert new_user.hashed_password != 'Password1!'\n assert new_user.role == 'user'\n```\n\n","lastmodified":"2023-07-15T02:14:56.555021767Z","tags":["seedling","python","programming","testing"]},"/notes/wadawurrung-and-dja-dja-wurrung-people":{"title":"Wadawurrung and Dja Dja Wurrung People","content":"\n## Wadawurrung Country\n\nWadawurrung country encompasses the area from the Great Dividing Range of Ballarat, the coast from the Werribee River to Mangowak (Airey's Inlet), including Djilang (Geelong), Ballaarat (Ballarat), Torquay, Jan Jook, the Bellarine Peninsula and Surf Coast. [^1]\n\n![[imgs/wadawurrung-country.png]]\n\n## Dja Dja Wurrung Country\n\nDja Dja Wurrung territory extends from Mount Franklin and the towns of Creswick and Daylesford in the southeast to Castlemaine, Maldon and Bendigo in the east, Boort in the north, Donald in the northwest, to Navarre Hill and Mount Avoca marking the south west \nboundary. Their territory encompasses the Bendigo and Clunes goldfields and the Loddon and Avoca river watersheds.[^2]\n\n![[imgs/dja-dja-wurrung-country.png]]\n\n[^1]: [Wadawurrung Healthy Country Plan](https://www.wadawurrung.org.au/_files/ugd/d96c4e_72611327c6a54d3198c0499ac5c26e54.pdf)\n[^2]: [Dja Dja Wurrung Country Plan](http://www.djadjawurrung.com.au/wp-content/uploads/2015/11/Dja-Dja-Wurrung-Country-Plan.pdf)","lastmodified":"2023-07-15T02:14:56.555021767Z","tags":[]},"/notes/witches-dancing-in-a-circle-with-the-devil":{"title":"Witches dancing in a circle with the devil","content":"\n**The history of witches and wizards: giving a true account of all their tryals in England, Scotland, Swedeland, France, and New England; with their confession and condemnation**, circa 1720, Collected from Bishop Hall, Bishop Morton, Sir Matthew Hale, etc., [Wellcome Collection](https://wellcomecollection.org/works/abkab8tq/images?id=a3nuy2zq)\n\n![Witches dancing in a circle with the devil](imgs/witches-dancing-in-a-circle-with-the-devil.png)\n*\u003ccenter\u003e**Witches dancing in a circle with the devil**, [woodblock](notes/woodblock).\u003c/center\u003e*","lastmodified":"2023-07-15T02:14:56.555021767Z","tags":["reference","woodcut","17th century"]},"/notes/witches-flying-on-broomsticks":{"title":"Witches flying on broomsticks","content":"\n**The history of witches and wizards: giving a true account of all their tryals in England, Scotland, Swedeland, France, and New England; with their confession and condemnation**, circa 1720, Collected from Bishop Hall, Bishop Morton, Sir Matthew Hale, etc., [Wellcome Collection](https://wellcomecollection.org/works/abkab8tq/images?id=a3nuy2zq)\n\n![Witches flying on broomsticks](imgs/witches-flying-on-broomsticks.png)\n*\u003ccenter\u003e**Witches flying on broomsticks**, [woodblock](notes/woodblock).\u003c/center\u003e*","lastmodified":"2023-07-15T02:14:56.555021767Z","tags":["reference","woodcut","17th century"]},"/notes/woodblock":{"title":"woodblock","content":"\nA technique originally developed in China as a way of printing on textiles and later on paper, the oldest surviving fragments to survive date back to the Han dynasty (before 220).\n\nWoodcut is a type of relief printing where an artist carves an image into the surface of a block of wood. When printing, areas that are cut away carry no ink while characters or images at surface level carry the ink to produce the print.\n\nLinocut is a variation of woodcutting where Linoleum is used instead of wood, making the art style more accessible to a professional and non-professional artists. \n\n## Inspiration\n\n{{\u003c page-gallery tag=\"woodcut\"\u003e}} ","lastmodified":"2023-07-15T02:14:56.555021767Z","tags":["medium","printing","art"]},"/posts/reproductive-labor":{"title":"reproductive labor","content":"\nReproductive labor was first brought into the discourse during the *wages for housework* campaign during the 1970s (discussed in [Revolution at Point Zero](books/revolution-at-point-zero.md)). Referring to it this was is important because it emphasises that reproductive activities are also labor that are enforced by the gender hierarchy and not a goodwill gesture of women.\n\nI think reproductive labor can be a bit of a misnomer when used without sufficient context because “reproductive” on its own would suggest reproductive labor is focused on… well reproduction of humans.\n\nSo when discussing reproductive labor in any context I think it’s important to emphasize that reproductive labor represents remunerated and unremunerated activities that reproduce the *workforce*, so it encompasses a significant number of activities like **cooking**, **washing**, **emotional labor**, **sex**, and yes, child rearing.\n\nSo while we can generally agree reproductive labor is critical to the capitalist production process it remains a blind spot in mainstream economics. Instead we focus on activities that are considered *productive* like generating goods and services that are remunerated and market-intermediated.\n\nThis helps us understand why related types of labor, like elder care are also often even more undervalued than other types of labor like cleaning – we can justify paying someone to keep our houses clean, but we are surprised when [aged care employees strike](https://www.sbs.com.au/news/article/interim-pay-rise-for-some-aged-care-workers-in-australia-welcomed-but-unions-urge-more-action/hhv5vmeva). \n\nThe elderly often don’t reproduce the labor force, and elder care focuses on what we do with people when they “no longer have value to the market”.\n\nUltimately, most social and economic models of society wether they are progressive-, or radical-left aligned tend to overlook reproductive labor often because the people who are writing the essays and economic models, aren’t the ones reproducing labor.\n\nAdditionally, as far as I’ve seen a lot of contemporary writing about reproductive labor has remained focused on heteronormative relationships which means that even if we were to develop more accurate economic models, until they are more considerate of queer relationships we will never be able to discuss, build, and experiment with more egalitarian labor models.\n\nWether or not reproductive labor should be remunerated is also highly contested, some argue in favour of remuneration inside the market system, however, others remain in opposition saying that we should avoid expanding the capitalist logic to „undiscovered“ spheres.\n\nGiven the current power structures though I don’t think either option is beneficial – paying people for reproductive labor only exacerbate problems like the gig economy, expansion of the global care chain and promotes the exploitation of migrant workers from Eastern Europe or the Global South.\n\nHowever, when one is living under capitalism, exposure (or unpaid labor in this case) doesn’t pay the bills.\n\n## Questions\n\n- What does reproductive labor look like amongst transgender and non-binary families?\n\t- [Division of Labor Among Transgender and Gender Non-binary Parents: Association With Individual, Couple, and Children’s Behavioral Outcomes](https://www.frontiersin.org/articles/10.3389/fpsyg.2020.00015/full)\n\t- [Precarious Labourers of Love: Queer Kinship, Reproductive Labour and Biopolitics](https://www.migration.org.za/precarious-labourers-of-love-queer-kinship-reproductive-labour-and-biopolitics/)\n\t- [Bodily interventions and intimate labour: Understanding bioprecarity](https://www.jstor.org/stable/j.ctvwh8fh8)\n- What does reproductive labor look like in [polycules](https://www.dictionary.com/e/gender-sexuality/polycule/)?\n\t- Is there an overall greater satisfaction with the amount of reproductive labor done by individuals? ","lastmodified":"2023-07-15T02:14:56.555021767Z","tags":["seedling","feminism","politics","economics","gender"]},"/posts/setting-up-distributed-press-on-digital-ocean":{"title":"Setting Up Distributed Press on Digital Ocean","content":"\n\u003e [!info] Environment Metadata\n\u003e - Ubuntu 22.10 x64\n\u003e - [Distributed Press v1.2.1](https://github.com/hyphacoop/api.distributed.press/releases/tag/v1.2.1)\n\n## About Distributed Press\n\n[Distributed Press](https://docs.distributed.press/) is an open source publishing tool for the World Wide Web and Distributed Web. It automates publishing and hosting content to the web that it seeds to decentralized protocols like [hypercore](notes/hypercore.md) and [ipfs](notes/ipfs.md).\n\n\u003e [!warning] Prerequisite Knowledge\n\u003e \n\u003e This doc assumes you're familiar with apt-based Linux, the basics of Linux system administration and how to configure DNS.\n\n## Method\n\n- Create a new virtual private server (VPS) with your provider of choice, when using Digital Ocean I used a droplet with the following specifications:\n\t- **Image:** Ubuntu 22.10 x64\n\t- **CPU:** 4 vCPUs\n\t- **Memory:** 8GB[^1]\n\t- **Disk:** 10GB Disk\n\t- **Droplet Cost:** $AUD 48/mo\n\nIf you're using Digital Ocean and unfamiliar with configuring your own logging and monitoring I'd advise against enabling the improved metrics monitoring because it will consume `journalctl` making it harder to debug.\n\n\u003e [!warning] System Specifications\n\u003e \n\u003e The most important part of the system specifications is the memory, you want at a minimum 8GB to ensure that service works as expected.[^1]\n\n- Install `ansible` on your desktop, cry a little because this is the only thing that needs it. \n```shell\nbrew install ansible\n```\n\n\u003e [!tip] Note\n\u003e \n\u003e Make sure you install `ansible` and not `ansible-core` which doesn't ship with `ansible-galaxy`.\n\n![Image that says \"2000 Years Later\"](imgs/setting-up-distributed-press-on-digital-ocean.png)\n\n- Git clone the `api.distributed.press` repository onto your computer:\n```shell\ngit clone https://github.com/hyphacoop/api.distributed.press.git\n```\n\n- Using the terminal, navigate to the `ansible` directory:\n```shell\ncd api.distributed.press/ansible\n```\n\n\u003e [!warning] Check the pinned version of Distribution Press\n\u003e \n\u003e Before starting I recommend doing a quick sense check that the `distributed_press_git_branch` located in `api.distributed.press/ansible/roles/distributed_press/defaults/main.yml` matches the [latest tagged version](https://github.com/hyphacoop/api.distributed.press/tags), otherwise you can run into esoteric issues that are difficult to debug.\n\n- Edit the `inventory.yml` file to specify your own domain to run the scripts on as well as any variables you want to set.\n\t- You **must** specify the `distributed_press_domain` to be your server, and your `distributed_press_letsencrypt_email` for registering the HTTPS certificate.\n \n```yaml\nall:\n vars:\n distributed_press_domain: \"distributed.errbufferoverfl.me\"\n distributed_press_letsencrypt_email: \"rebecca@example.com\"\n distributed_press_served_sites: []\n children:\n distributed_press:\n hosts:\n distributed.errbufferoverfl.me:\n ansible_user: root\n```\n\n- Install the dependencies on your local machine.\n```shell\nansible-galaxy install -r ./requirements.yml\n```\n\n- Add the VPS's IP address and the `distributed_press_domain` to your `/etc/hosts` file so you don't experience an `UNREACHABLE` error when you run the playbook. e.g.,\n```text\n127.0.0.1\tlocalhost\n255.255.255.255\tbroadcasthost\n::1 localhost%\n\n{{VPS IP ADDRESS}} example.com\n```\n\n- Execute the playbook.\n```shell\nansible-playbook distributed_press.yml -i inventory.yml\n```\n\n- Once the playbook has finished, login to your DNS provider and add in an new A record pointing your VPS to the new domain.\n\t- **Type:** A\n\t- **Name:** `subdomain`\n\t- **Content:** VPS static IP address\n\t- **TTL:** Auto\n\n- Add an `NS` record linking `_dnslink` to your site:\n\t- **Type:** NS\n\t- **Name:** `_dnslink`\n\t- **Content:** the `distributed_press_domain`\n\t- **TTL:** Auto\n\n- Login to the VPS and check the status of the service.\n```shell\nsystemctl status distributed.press\n```\n\n\u003e [!warning] Ubuntu default DNS server\n\u003e\n\u003e Also double check the logs using `journalctl -fu distributed.press`, if you see a `bind EADDRINUSE 0.0.0.0:53` error you will need to disable an installed utility called `dnsmasq`.[^2]\n\n## Running a Sense Check\n\nWhen I installed my `distributed.press` instance a few things failed to initialize as expected so it's worth manually checking these.\n\n### Ensure `ufw` is active\n\nTo make sure the firewall is up, you can run:\n\n```shell\nufw status\n```\n\nWhich, if enabled should return something like this:\n\n```shell\nStatus: active\n\nTo Action From\n-- ------ ----\n53/udp ALLOW Anywhere\n7976/udp ALLOW Anywhere\n7976/tcp ALLOW Anywhere\nNginx Full ALLOW Anywhere\n22/tcp ALLOW Anywhere\n53/udp (v6) ALLOW Anywhere (v6)\n7976/udp (v6) ALLOW Anywhere (v6)\n7976/tcp (v6) ALLOW Anywhere (v6)\nNginx Full (v6) ALLOW Anywhere (v6)\n22/tcp (v6) ALLOW Anywhere (v6)\n```\n\n\u003e [!warning] Before enabling `ufw`\n\u003e \n\u003e Ensure you have added in a firewall rule for which ever management protocol you're using (e.g. ssh). To do this run:\n\u003e ```shell\n\u003e ufw allow 22\n\u003e ```\n\nIf you find that `ufw` is not enabled, you'll want to enable it.\n\n```shell\nufw enable\n```\n\n### Ensure the private keys are generated\n\nNormally `ansible` will [handle generating a key for the JWT](https://github.com/hyphacoop/api.distributed.press/blob/b23534e6652cab20c2b10a3dcd85529344139462/ansible/roles/distributed_press/tasks/main.yml#L76-L82) however, in my case this didn't work and I had to manually generate a key.\n\nI was able to identify this problem because I recieved the following error when trying to [Get a `root` admin token](#Get%20a%20`root`%20admin%20token):\n\n```\nError: ENOENT: no such file or directory, open '/root/.local/share/distributed-press-nodejs/keys/private.key'\n```\n\nTo resolve this issue I replicated what `ansible` would do, and ran `keygen` again:\n```shell\nsudo su press\ncd\ncd api.distributed.press\nnpm run keygen\n```\n\n## Get a `root` admin token\n\nAuthorisation on the service is handled using JSON Web Tokens (JWTs) that are issued to specific users.\n\n\u003e [!warning] By default, tokens expire after a week.\n\nTo generate the auth token necessary to make the very first admin user, you must use the 'root' admin token.\n\n- `ssh` into the VPS that is hosting your `distributed.press` instance and navigate to the the root directory of `api.distributed.press`\n```shell\nsudo su press\ncd\ncd api.distributed.press\n```\n\n- Run `npm run make-admin` which will print out the token to stdout.\n\n\u003e [!tip] Save the Token\n\u003e \n\u003e Be sure to save the token somewhere secure as it will be important for making any administrative calls to the API.\n\nNow that you have the root admin token, and the firewall is enabled, you can go ahead and start tinkering with your new `distributed.press` service. \n\nFor more information on how to you the API you can find the Swagger docs hosted on your instance at `/v1/docs`.\n\n## Additional Notes\n\n### Creating a new Publisher\n\nTo make sure we're always operating in line with the principal of least privilege exchange the root token for a new one with the publisher subset of capabilities:\n\n```shell\ncurl -X POST https://distributed.errbufferoverfl.me/v1/publisher \\\n-H \"Content-Type: application/json\" \\\n-H \"Authorization: Bearer JWT\" \\\n-d '{\"name\":\"garden.errbufferoverfl.me\"}'\n```\n\n### Add a site to a Publisher\n\n```shell\ncurl -X POST https://distributed.errbufferoverfl.me/v1/sites \\\n-H \"Content-Type: application/json\" \\\n-H \"Authorization: Bearer JWT\" \\\n -d '{\"domain\":\"garden.errbufferoverfl.me\", \"public\": true, \"protocols\":{\"http\": false, \"hyper\": true, \"ipfs\": true} }'\n```\n\n## Errors\n\n\u003e [!bug]\n\u003e Experience the following error because you didn't add the remote host to your `/etc/host`. \n\u003e \n\u003e *Scream into the void.*\n\u003e ```shell\n\u003e fatal: [distributed.errbufferoverfl.me]: UNREACHABLE! =\u003e {\n\u003e \t\"changed\": false, \n\u003e \t\"msg\": \"Failed to connect to the host via ssh: ssh: Could not resolve\n\u003e \t hostname distributed.errbufferoverfl.me: Name or service not known\", \n\u003e \t\"unreachable\": true\n\u003e }\n\u003e ```\n\n### Unable to resolve remote host **after** installation\n\nIf you were running on a version of apt-based Linux and had to disable the default DNS server to get node working, when you attempt to run `apt-update` or try to run the Ansible script again it **will** fail.\n\n![A Mastodon post written by me that says \"Why won't apt repositories resolve! WHAT IS GOING ON?! Me two hours earlier: `systemctl disable systemd-resolved`\"](imgs/setting-up-distributed-press-on-digital-ocean.png)\n\nTo fix this, you'll want to `ssh` onto the remote host, stop the `distributed.press` service and restart `systemd-resolved`.\n\n## Additional Resources\n\n- **[hyphacoop/actions-distributed-press](https://github.com/hyphacoop/actions-distributed-press)** - Easily deploy a site to Distributed Press using GitHub Actions\n\n[^1]: https://github.com/hyphacoop/actions-distributed-press/issues/2#issue-1751678540\n[^2]: [Port 53 Problems?](https://github.com/MASQ-Project/Node/blob/master/node/docs/PORT_53.md#linux)","lastmodified":"2023-07-15T02:14:56.555021767Z","tags":["seedling","project","distributed system","ipfs","hypercore"]},"/soapbox/A-Brief-History-of-Tamper-Evident-Locks":{"title":"A Brief History of Tamper Evident Locks","content":"\nA talk that discussed common \"canary locks\" or locks with tamper evident mechanisms through the ages, Buffy trawled through 11,335,427 patents to identify several high and low profile locks and their known, or speculated bypass techniques.\n\n[View the slides](https://www.errbufferoverfl.me/posts/2019/a-brief-history-of-tamper-evident-locks/)","lastmodified":"2023-07-15T02:14:56.555021767Z","tags":["locksport","canary technology","hacking","conference"]},"/soapbox/Agloe-What-the-Map-Makers-of-the-1930s-can-Teach-us-About-Protecting-our-Data-in-2018":{"title":"Agloe: What the Map Makers of the 1930s can Teach us About Protecting our Data in 2018","content":"\nWhat does the little town of Agloe, Colchester, NY have in common with modern day data protection? Why when I look for directions to Agloe, Colchester, NY do I only get a partial match? And what do yellow small birds have to do with anything? \n \nIn this talk we are going to do the time warp back to the 1930’s and see what the General Drafting Company can teach us about securing data and breach notification and how to apply these concepts in the modern day. Using free and open-source solutions I’ll show you that information security isn’t all about expensive third-party products and Security Operations Centers’ (SOC), rather, by using some defensive thinking and a bit of creativity, with your existing infrastructure and services you too can easily identify data breaches, and catch the bad guys in the act with the tools you already use in your own environment. Come along for a lesson on the anatomy of the canary.\n\n[PyCon 2018 Security \u0026 Privacy Track](https://www.youtube.com/watch?v=dA_rwYoy81U) • [OWASP AppSec Day](https://www.youtube.com/watch?v=3UE59HzWdbw) • [PurpleCon (PDF)](https://2018.purplecon.nz/archive/errbufferoverfl/agloe_what_the%20map_makers_of%20the_1930s_can%20teach_us_about%20protecting_data_in_2018.pdf)","lastmodified":"2023-07-15T02:14:56.555021767Z","tags":["conference","pycon","canary-technology","thinkst"]},"/soapbox/Building-your-own-offline-file-sharing-and-communication-system-for-the-inevitable-downfall-of-the-Internet":{"title":"Building your own offline file-sharing and communication system for the inevitable downfall of the Internet","content":"\nHave you ever considered a world where the Internet in all it's grandeur and tyre-fire-ness has finally imploded. Well after living for 8 months without the Internet I did and it looked a little like this. The PirateBox is a DIY anonymous offline file-sharing and communication system built with free software and inexpensive off-the-shelf hardware. \n \nThis workshop will go through the steps of setting up your very own PirateBox, using OpenWRT we will build an offline Internet with an inbuilt chat, file sharing capabilities and image board. Which can then be battery powered and carried around with you! The PirateBox is a beginner friendly privacy and anonymity positive piece of hardware, it introduces students to the basic concepts of hardware hacking, flashing devices, setting up config files etc. More importantly it has a larger cultural impact as it is an easy way for people to anonymously communicate and exchange files in a time where this is becoming difficult. It has previously been used by people to locally share digital media (such as ebooks) and to securely share cryptographic keys by people running CryptoParty workshops. Student Prerequisites This is a beginner friendly course, little to no prior knowledge of OpenWRT is needed, but users should have basic understanding of the command line.","lastmodified":"2023-07-15T02:14:56.555021767Z","tags":["training","hacking","diy","digital-commons"]},"/soapbox/Collapsology-Why-your-biggest-threat-isnt-exposed-RDP":{"title":"Collapsology: Why your biggest threat isn’t exposed RDP","content":"\nIn September 2021, I presented a conference talk entitled \"**Collapsology: Why Exposed RDP Isn't Your Biggest Threat**\" where I gave an overview of how to identify cultural threats in a rapidly evolving business landscape, and how we can use modern-day tools to identify these threats before they result in security culture collapse.\n\n\u003cdiv style=\"position: relative; width: 100%; height: 0; padding-top: 56.2500%; \npadding-bottom: 48px; box-shadow: 0 2px 8px 0 rgba(63,69,81,0.16); margin-top: 1.6em; margin-bottom: 0.9em; overflow: hidden; \nborder-radius: 8px; will-change: transform;\"\u003e \n \u003ciframe loading=\"lazy\" style=\"position: absolute; width: 100%; height: 100%; top: 0; left: 0; border: none; padding: 0;margin: 0;\" \n src=\"https:\u0026#x2F;\u0026#x2F;www.canva.com\u0026#x2F;design\u0026#x2F;DAEn_kdzmTs\u0026#x2F;view?embed\"\u003e \n \u003c/iframe\u003e \n \u003c/div\u003e \n \n \u003ca href=\"https:\u0026#x2F;\u0026#x2F;www.canva.com\u0026#x2F;design\u0026#x2F;DAEn_kdzmTs\u0026#x2F;view?utm_content=DAEn_kdzmTs\u0026amp;utm_campaign=designshare\u0026amp;utm_medium=embeds\u0026amp;utm_source=link\" target=\"_blank\" rel=\"noopener\"\u003ePyConline 2021 - Collapsology: Why your biggest threat isn’t exposed RDP\u003c/a\u003e by errbufferoverfl\n\n[[attachements/collapsology-why-your-biggest-threat-isnt-exposed-rdp-errbufferoverfl.pdf|PDF Download (without speakers notes)]]\n\n### Security Culture \n\nThe People-Centric Security Toolkit by [Lance Hayden](https://twitter.com/hay_lance) is licensed under a [Creative Commons Attribution-ShareAlike 4.0 International License](https://creativecommons.org/licenses/by-sa/4.0/).\n\n[Lance’s website](http://lancehayden.net) went down some time in December 2020, but you can still view it via [Way Back Machine](https://web.archive.org/web/20200219183945/http://lancehayden.net/culture/).\n\nThe People-Centric Security Toolkit can also be downloaded in it’s original format from my site below:\n\n- [[attachements/security-culture-toolkit/SCDS.zip|Security Culture Diagnostic Survey]]\n- [[attachements/security-culture-toolkit/Security_FORCE_Survey.zip|Security FORCE Survey]]\n- [[attachements/security-culture-toolkit/Security_FORCE_Metrics.zip|Security FORCE Metrics]]\n\n### Resources\n\n**Essential Cybersecurity Science**\n\nJosiah Dykstra · ISBN: 978-1-491-92094-7\n\n[amazon.com.au](https://www.amazon.com.au/Essential-Cybersecurity-Science-Josiah-Dykstra/dp/1491920947/) · [bookdepository.com](https://www.bookdepository.com/Essential-Cybersecurity-Science-Josiah-Dykstra/9781491920947) · [booktopia.com.au](https://www.booktopia.com.au/essential-cybersecurity-science-josiah-dykstra/book/9781491920947.html) [oreilly.com](https://www.oreilly.com/library/view/essential-cybersecurity-science/9781491921050/)\n\n**People-Centric Security: Transforming Your Enterprise Security Culture**\n\nLance Hayden Phd · ISBN: 978-0-071-84679-0\n\n[amazon.com.au](https://www.amazon.com.au/People-Centric-Security-Transforming-Enterprise-Culture/dp/0071846778/) · [bookdepository.com](https://www.bookdepository.com/People-Centric-Security-Transforming-Your-Enterprise-Security-Culture-Lance-Hayden/9780071846776) · [booktopia.com.au](https://www.booktopia.com.au/people-centric-security-lance-hayden/book/9780071846776.html) · [oreilly.com](https://www.oreilly.com/library/view/people-centric-security-transforming/9780071846790/)\n\n**Collapse: How Societies Choose to Fail or Succeed**\n\nJared Diamond · ISBN: 978-0-143-11700-1\n\n[amazon.com.au](https://www.amazon.com.au/Collapse-Societies-Choose-Succeed-Revised/dp/0143117009/) · [bookdepository.com](https://www.bookdepository.com/Collapse-Jared-Diamond/9780241958681) · [booktopia.com.au](https://www.booktopia.com.au/collapse-jared-diamond/book/9780241958681.html) [oreilly.com](https://www.oreilly.com/library/view/security-chaos-engineering/9781492080350/)\n\n**Security Chaos Engineering**\n\nAaron Rinehart \u0026 Kelly Shortridge · ISBN: 978-1-492-08034-3\n\n[oreilly.com](https://www.oreilly.com/library/view/security-chaos-engineering/9781492080350/)\n\n### References\n\n- [Apple’s child protection features spark concern within its own ranks](https://reut.rs/3kSVJxG)\n- [Slack rolls back parts of its new DM feature over harassment concerns](https://bit.ly/3BHy1eG)","lastmodified":"2023-07-15T02:14:56.555021767Z","tags":["conference","security-culture","pycon","social-engineering"]},"/soapbox/Linux-Users-Victoria-Main-Meeting-Kali-Linux":{"title":"Linux Users Victoria Main Meeting Kali Linux","content":"\nCome together in ritual to learn about KALI LINUX! A Debian based Penetration Testing and Ethical Hacking distribution, with over 600 pre-installed packages. In this talk errbufferoverfl will cover as many things as she can fit into an hour, from port scanning, to web application hacking to exploit pewpewpewing. We'll be looking at some of the more popular tools available within the distribution including nmap, Burp Suite Community Edition, John the Ripper and many others. She will also discuss the phases we go through when conducting a security assessment from recon to exploitation and where these tools can be leveraged. Tonight, for one night only no server, or web application is sacred.","lastmodified":"2023-07-15T02:14:56.555021767Z","tags":["meetup","hacking","linux"]},"/soapbox/Snake-Charming-for-Beginners":{"title":"Snake Charming for Beginners","content":"\nSnake-charming is an age-old practice of hypnotizing snakes by playing and waving a murli - in the modern day this practice looks much different, equipped with an Integrated Development Environment (IDE), a clackity keyboard and a trusty guide we'll be taking you through how you can effectively charm Python 3.6. \n\nOn the first day of our trek through the dense jungles of Pythonia we will be looking at how to build a simple sub-domain enumeration tool and how to get started building simple exploits - for those who have trekked these paths before - extra challenges will await you. \n\nDay two we will move further into the dark jungles of Pythonia delving into forbidden user-land territory and how you can use Python to gather useful system-level information, and contact the UNIX daemons of old. \n\nWhile writing this training description, errbufferoverfl wrote two Python fan fictions, the next cyber-themed Hollywood blockbuster and a Shakespearian play about the training.\n\n[GitHub](https://errbufferoverfl.github.io/snake-charming/)","lastmodified":"2023-07-15T02:14:56.555021767Z","tags":["training","python","infosec","hacking","exploit-development"]},"/soapbox/The-Big-Cloud-Security-Debate-Hackers-vs-Security-Engineers":{"title":"The Big Cloud Security Debate: Hackers vs Security Engineers","content":"\nA debate organised by ANZ, Contino and Meetup Madness where 4 hackers vs 4 security experts engaging in a fiery debate to determine all the ways they can hack and defend cloud environments. errbufferoverfl participated as part of the \"hackers\"/\"red team\".\n\n[Debate Recording](https://www.youtube.com/watch?v=1Na_G9jnc0Y\u0026list=PLtrnHiBgf6dB-sBZht63iR0BEQLAljBlK)","lastmodified":"2023-07-15T02:14:56.555021767Z","tags":["security","infosec","debate"]},"/the-antilibrary":{"title":"the antilibrary","content":"\n\u003e a scholar conscious of the power of [their] antilibrary is not concerned with treating knowledge as a property to possess or consume; rather [...] how much you don’t know—and how to find out that information when you need it.\n\u003e \n\u003e \\- Giovanni da Col, HAU: Journal of Ethnographic Theory\n\n## Before you begin…\n\nThe notes and summaries included in these pages are snippets that remind me, or help me relate and explore high-level concepts. They aren't a summary of the chapter or book! If you look through these notes and like the ideas, disagree with them, or you find yourself synthesising new ideas, I recommend you read the whole book!\n\n### Up Next\n\n{{\u003cpage-books status=\"Up Next\"\u003e}}\n\n### Current\n\n{{\u003cpage-books status=\"In Progress\"\u003e}}\n\n### Past\n\n{{\u003cpage-books status=\"Completed\"\u003e}}\n\n### Incomplete\n\n{{\u003cpage-books status=\"Incomplete\"\u003e}}","lastmodified":"2023-07-15T02:14:56.555021767Z","tags":["personal","evergreen"]},"/the-art-studio":{"title":"the art studio","content":"If you've been enjoying my work and finding it entertaining. Your support means the world to me, and I can't thank you enough for being a part of this journey.\n\nIf you want to stay connected and show your support, you can follow or supported me on [Ko-Fi](https://ko-fi.com/errbufferoverfl). It's a fantastic way to help me create more amazing content and keep the creative juices flowing.\n\n## Projects\n\n### [Anarchic Illustrations](art/anarchic-illustrations.md)\n\n{{\u003csummary link=\"art/anarchic-illustrations\"\u003e}}\n\n### [100 days of gouache](art/one-hundered-days-of-gouache.md)\n\n{{\u003csummary link=\"art/one-hundered-days-of-gouache\"\u003e}}\n\n### [character studies](art/character-studies.md)\n\n{{\u003csummary link=\"art/character-studies\"\u003e}}\n\n### [vegetable portraits](art/vegetable-portraits.md)\n\n{{\u003csummary link=\"art/vegetable-portraits\"\u003e}}\n\n### [work in progress](art/work-in-progress.md)\n\n{{\u003csummary link=\"art/work-in-progress\"\u003e}}\n\n## Mediums\n\n### [gouache](notes/gouache.md)\n\n{{\u003csummary link=\"notes/gouache\"\u003e}}\n\n### [woodblock](notes/woodblock.md)\n\n{{\u003csummary link=\"notes/woodblock\"\u003e}}","lastmodified":"2023-07-15T02:14:56.555021767Z","tags":[]}}
\ No newline at end of file
diff --git a/linkmap b/linkmap
index 67ef5e15a..11384dd0b 100644
--- a/linkmap
+++ b/linkmap
@@ -1,75 +1,75 @@
-/notes/DHT/index.{html} /notes/DHT/
-/notes/Embodiment/index.{html} /notes/Embodiment/
-/art/all-crustaceans-really-are-beautiful/index.{html} /art/all-crustaceans-really-are-beautiful/
-/art/fuck-capitalism/index.{html} /art/fuck-capitalism/
-/art/supporters-kofi-weekly-roundup/index.{html} /art/supporters-kofi-weekly-roundup/
-/notes/sauerkraut-recipe/index.{html} /notes/sauerkraut-recipe/
-/notes/the-inner-sanctum/index.{html} /notes/the-inner-sanctum/
-/soapbox/Linux-Users-Victoria-Main-Meeting-Kali-Linux/index.{html} /soapbox/Linux-Users-Victoria-Main-Meeting-Kali-Linux/
-/index.html /
-/notes/ars-moriendi/index.{html} /notes/ars-moriendi/
-/notes/gouache/index.{html} /notes/gouache/
/posts/reproductive-labor/index.{html} /posts/reproductive-labor/
-/art/vegetable-portraits/index.{html} /art/vegetable-portraits/
-/notes/a-feast-around-a-table-with-devils-and-witches/index.{html} /notes/a-feast-around-a-table-with-devils-and-witches/
-/notes/projects/index.{html} /notes/projects/
-/notes/wadawurrung-and-dja-dja-wurrung-people/index.{html} /notes/wadawurrung-and-dja-dja-wurrung-people/
-/art/character-studies/index.{html} /art/character-studies/
-/notes/cash-crops/index.{html} /notes/cash-crops/
-/posts/setting-up-distributed-press-on-digital-ocean/index.{html} /posts/setting-up-distributed-press-on-digital-ocean/
-/soapbox/Agloe-What-the-Map-Makers-of-the-1930s-can-Teach-us-About-Protecting-our-Data-in-2018/index.{html} /soapbox/Agloe-What-the-Map-Makers-of-the-1930s-can-Teach-us-About-Protecting-our-Data-in-2018/
-/notes/IPFS/index.{html} /notes/IPFS/
-/books/revolution-at-point-zero/index.{html} /books/revolution-at-point-zero/
+/soapbox/Linux-Users-Victoria-Main-Meeting-Kali-Linux/index.{html} /soapbox/Linux-Users-Victoria-Main-Meeting-Kali-Linux/
+/books/lost-in-work-escaping-capitalism/index.{html} /books/lost-in-work-escaping-capitalism/
/books/the-feminist-and-the-sex-offender/index.{html} /books/the-feminist-and-the-sex-offender/
-/notes/aquarium-algae-scrubber/index.{html} /notes/aquarium-algae-scrubber/
-/notes/coaster-for-salute/index.{html} /notes/coaster-for-salute/
-/notes/feminist-principles-of-the-internet/index.{html} /notes/feminist-principles-of-the-internet/
+/notes/projects/index.{html} /notes/projects/
+/soapbox/A-Brief-History-of-Tamper-Evident-Locks/index.{html} /soapbox/A-Brief-History-of-Tamper-Evident-Locks/
/notes/interesting-tech-tools/index.{html} /notes/interesting-tech-tools/
/notes/technocratic/index.{html} /notes/technocratic/
-/art/work-in-progress/index.{html} /art/work-in-progress/
+/notes/theatrum-chemicum-britannicum/index.{html} /notes/theatrum-chemicum-britannicum/
/soapbox/Building-your-own-offline-file-sharing-and-communication-system-for-the-inevitable-downfall-of-the-Internet/index.{html} /soapbox/Building-your-own-offline-file-sharing-and-communication-system-for-the-inevitable-downfall-of-the-Internet/
-/notes/woodblock/index.{html} /notes/woodblock/
-/notes/security-engineer/index.{html} /notes/security-engineer/
-/notes/witches-flying-on-broomsticks/index.{html} /notes/witches-flying-on-broomsticks/
-/soapbox/A-Brief-History-of-Tamper-Evident-Locks/index.{html} /soapbox/A-Brief-History-of-Tamper-Evident-Locks/
-/soapbox/Snake-Charming-for-Beginners/index.{html} /soapbox/Snake-Charming-for-Beginners/
-/books/anarchic-agreements-a-field-guide-to-collective-organising/index.{html} /books/anarchic-agreements-a-field-guide-to-collective-organising/
-/notes/DID/index.{html} /notes/DID/
-/notes/Hyperdrive/index.{html} /notes/Hyperdrive/
+/soapbox/Collapsology-Why-your-biggest-threat-isnt-exposed-RDP/index.{html} /soapbox/Collapsology-Why-your-biggest-threat-isnt-exposed-RDP/
+/the-antilibrary/index.{html} /the-antilibrary/
/art/autumn-pumpkins/index.{html} /art/autumn-pumpkins/
-/notes/Holepunch/index.{html} /notes/Holepunch/
-/art/one-hundered-days-of-gouache/index.{html} /art/one-hundered-days-of-gouache/
+/art/character-studies/index.{html} /art/character-studies/
+/books/ghost-work/index.{html} /books/ghost-work/
/notes/Hyperswarm/index.{html} /notes/Hyperswarm/
-/notes/neocolonialism/index.{html} /notes/neocolonialism/
+/notes/the-offering/index.{html} /notes/the-offering/
+/notes/surveillance-capitalism/index.{html} /notes/surveillance-capitalism/
+/notes/the-inner-sanctum/index.{html} /notes/the-inner-sanctum/
+/soapbox/The-Big-Cloud-Security-Debate-Hackers-vs-Security-Engineers/index.{html} /soapbox/The-Big-Cloud-Security-Debate-Hackers-vs-Security-Engineers/
+/art/fuck-capitalism/index.{html} /art/fuck-capitalism/
+/notes/errbufferoverfl/index.{html} /notes/errbufferoverfl/
+/notes/nasas-adlr-framework-for-lessons-learned/index.{html} /notes/nasas-adlr-framework-for-lessons-learned/
/notes/structural-adjustment-programs/index.{html} /notes/structural-adjustment-programs/
-/notes/theatrum-chemicum-britannicum/index.{html} /notes/theatrum-chemicum-britannicum/
-/soapbox/Collapsology-Why-your-biggest-threat-isnt-exposed-RDP/index.{html} /soapbox/Collapsology-Why-your-biggest-threat-isnt-exposed-RDP/
-/the-art-studio/index.{html} /the-art-studio/
-/books/lost-in-work-escaping-capitalism/index.{html} /books/lost-in-work-escaping-capitalism/
-/books/ghost-work/index.{html} /books/ghost-work/
+/soapbox/Agloe-What-the-Map-Makers-of-the-1930s-can-Teach-us-About-Protecting-our-Data-in-2018/index.{html} /soapbox/Agloe-What-the-Map-Makers-of-the-1930s-can-Teach-us-About-Protecting-our-Data-in-2018/
+/books/anarchic-agreements-a-field-guide-to-collective-organising/index.{html} /books/anarchic-agreements-a-field-guide-to-collective-organising/
/notes/B-tree/index.{html} /notes/B-tree/
+/notes/IPFS/index.{html} /notes/IPFS/
+/notes/cash-crops/index.{html} /notes/cash-crops/
+/notes/witches-flying-on-broomsticks/index.{html} /notes/witches-flying-on-broomsticks/
+/art/all-crustaceans-really-are-beautiful/index.{html} /art/all-crustaceans-really-are-beautiful/
+/notes/a-feast-around-a-table-with-devils-and-witches/index.{html} /notes/a-feast-around-a-table-with-devils-and-witches/
+/notes/aquarium-algae-scrubber/index.{html} /notes/aquarium-algae-scrubber/
+/notes/consensus-and-humming-in-the-ietf/index.{html} /notes/consensus-and-humming-in-the-ietf/
+/notes/e2e-fear-campaign-accce-and-police/index.{html} /notes/e2e-fear-campaign-accce-and-police/
/notes/bookmarks/index.{html} /notes/bookmarks/
+/art/anarchic-illustrations/index.{html} /art/anarchic-illustrations/
+/art/vegetable-portraits/index.{html} /art/vegetable-portraits/
+/notes/HyperDHT/index.{html} /notes/HyperDHT/
+/notes/security-engineer/index.{html} /notes/security-engineer/
/notes/the-state/index.{html} /notes/the-state/
-/the-antilibrary/index.{html} /the-antilibrary/
+/notes/woodblock/index.{html} /notes/woodblock/
/books/expect-resistance-a-crimethinc-field-manual/index.{html} /books/expect-resistance-a-crimethinc-field-manual/
-/notes/using-pytest-with-flask/index.{html} /notes/using-pytest-with-flask/
+/notes/DID/index.{html} /notes/DID/
+/notes/erlaubnis-project-diagrams/index.{html} /notes/erlaubnis-project-diagrams/
+/notes/DHT/index.{html} /notes/DHT/
+/notes/Embodiment/index.{html} /notes/Embodiment/
+/notes/witches-dancing-in-a-circle-with-the-devil/index.{html} /notes/witches-dancing-in-a-circle-with-the-devil/
/art/freedom-is-not-given-its-taken/index.{html} /art/freedom-is-not-given-its-taken/
-/art/do-what-makes-you-happy/index.{html} /art/do-what-makes-you-happy/
+/art/work-in-progress/index.{html} /art/work-in-progress/
+/books/the-age-of-surveillance-capitalism/index.{html} /books/the-age-of-surveillance-capitalism/
+/notes/wadawurrung-and-dja-dja-wurrung-people/index.{html} /notes/wadawurrung-and-dja-dja-wurrung-people/
+/art/catherine-the-great/index.{html} /art/catherine-the-great/
+/notes/coaster-for-salute/index.{html} /notes/coaster-for-salute/
+/notes/ideas/index.{html} /notes/ideas/
/notes/Autobase/index.{html} /notes/Autobase/
-/notes/HyperDHT/index.{html} /notes/HyperDHT/
/notes/Hypercore/index.{html} /notes/Hypercore/
-/notes/consensus-and-humming-in-the-ietf/index.{html} /notes/consensus-and-humming-in-the-ietf/
-/notes/e2e-fear-campaign-accce-and-police/index.{html} /notes/e2e-fear-campaign-accce-and-police/
-/notes/surveillance-capitalism/index.{html} /notes/surveillance-capitalism/
-/art/catherine-the-great/index.{html} /art/catherine-the-great/
-/soapbox/The-Big-Cloud-Security-Debate-Hackers-vs-Security-Engineers/index.{html} /soapbox/The-Big-Cloud-Security-Debate-Hackers-vs-Security-Engineers/
+/notes/Hyperdrive/index.{html} /notes/Hyperdrive/
+/notes/gouache/index.{html} /notes/gouache/
+/notes/neocolonialism/index.{html} /notes/neocolonialism/
+/notes/sauerkraut-recipe/index.{html} /notes/sauerkraut-recipe/
+/notes/using-pytest-with-flask/index.{html} /notes/using-pytest-with-flask/
+/art/do-what-makes-you-happy/index.{html} /art/do-what-makes-you-happy/
+/art/one-hundered-days-of-gouache/index.{html} /art/one-hundered-days-of-gouache/
+/notes/Holepunch/index.{html} /notes/Holepunch/
+/posts/setting-up-distributed-press-on-digital-ocean/index.{html} /posts/setting-up-distributed-press-on-digital-ocean/
+/the-art-studio/index.{html} /the-art-studio/
+/soapbox/Snake-Charming-for-Beginners/index.{html} /soapbox/Snake-Charming-for-Beginners/
+/index.html /
+/notes/ars-moriendi/index.{html} /notes/ars-moriendi/
+/notes/feminist-principles-of-the-internet/index.{html} /notes/feminist-principles-of-the-internet/
/notes/lago-daverno/index.{html} /notes/lago-daverno/
-/notes/erlaubnis-project-diagrams/index.{html} /notes/erlaubnis-project-diagrams/
-/notes/ideas/index.{html} /notes/ideas/
-/notes/the-offering/index.{html} /notes/the-offering/
-/books/the-age-of-surveillance-capitalism/index.{html} /books/the-age-of-surveillance-capitalism/
+/art/supporters-kofi-weekly-roundup/index.{html} /art/supporters-kofi-weekly-roundup/
+/books/revolution-at-point-zero/index.{html} /books/revolution-at-point-zero/
/notes/Hyperbee/index.{html} /notes/Hyperbee/
-/notes/errbufferoverfl/index.{html} /notes/errbufferoverfl/
-/notes/nasas-adlr-framework-for-lessons-learned/index.{html} /notes/nasas-adlr-framework-for-lessons-learned/
-/notes/witches-dancing-in-a-circle-with-the-devil/index.{html} /notes/witches-dancing-in-a-circle-with-the-devil/
-/art/anarchic-illustrations/index.{html} /art/anarchic-illustrations/
diff --git a/notes/Autobase/index.html b/notes/Autobase/index.html
index d79b14ec2..8b657490f 100644
--- a/notes/Autobase/index.html
+++ b/notes/Autobase/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/B-tree/index.html b/notes/B-tree/index.html
index 8939a3248..537b97f31 100644
--- a/notes/B-tree/index.html
+++ b/notes/B-tree/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/DHT/index.html b/notes/DHT/index.html
index 39e5a819f..c4e6a5c40 100644
--- a/notes/DHT/index.html
+++ b/notes/DHT/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/DID/index.html b/notes/DID/index.html
index f7b12187b..b2abd3eea 100644
--- a/notes/DID/index.html
+++ b/notes/DID/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/Embodiment/index.html b/notes/Embodiment/index.html
index 7ac873518..52cdc8129 100644
--- a/notes/Embodiment/index.html
+++ b/notes/Embodiment/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/Holepunch/index.html b/notes/Holepunch/index.html
index 98ec1898c..0fe841db3 100644
--- a/notes/Holepunch/index.html
+++ b/notes/Holepunch/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/HyperDHT/index.html b/notes/HyperDHT/index.html
index f237dd8fb..6d5f61271 100644
--- a/notes/HyperDHT/index.html
+++ b/notes/HyperDHT/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/Hyperbee/index.html b/notes/Hyperbee/index.html
index 157f4b065..50b48210e 100644
--- a/notes/Hyperbee/index.html
+++ b/notes/Hyperbee/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/Hypercore/index.html b/notes/Hypercore/index.html
index f1f26a7cb..37ba7ca3a 100644
--- a/notes/Hypercore/index.html
+++ b/notes/Hypercore/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/Hyperdrive/index.html b/notes/Hyperdrive/index.html
index fb1b0a468..196a3c7c7 100644
--- a/notes/Hyperdrive/index.html
+++ b/notes/Hyperdrive/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/Hyperswarm/index.html b/notes/Hyperswarm/index.html
index cfd55ab22..c3ec87f7d 100644
--- a/notes/Hyperswarm/index.html
+++ b/notes/Hyperswarm/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/IPFS/index.html b/notes/IPFS/index.html
index da1d54b44..7abb7f821 100644
--- a/notes/IPFS/index.html
+++ b/notes/IPFS/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/a-feast-around-a-table-with-devils-and-witches/index.html b/notes/a-feast-around-a-table-with-devils-and-witches/index.html
index e3f584c3f..64c37043e 100644
--- a/notes/a-feast-around-a-table-with-devils-and-witches/index.html
+++ b/notes/a-feast-around-a-table-with-devils-and-witches/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/aquarium-algae-scrubber/index.html b/notes/aquarium-algae-scrubber/index.html
index 2b4218e24..edec40ea2 100644
--- a/notes/aquarium-algae-scrubber/index.html
+++ b/notes/aquarium-algae-scrubber/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/ars-moriendi/index.html b/notes/ars-moriendi/index.html
index 4cf880c2a..567625f87 100644
--- a/notes/ars-moriendi/index.html
+++ b/notes/ars-moriendi/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/bookmarks/index.html b/notes/bookmarks/index.html
index 147747d7a..f0574e011 100644
--- a/notes/bookmarks/index.html
+++ b/notes/bookmarks/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/cash-crops/index.html b/notes/cash-crops/index.html
index b26e1882f..ee0abab2d 100644
--- a/notes/cash-crops/index.html
+++ b/notes/cash-crops/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/coaster-for-salute/index.html b/notes/coaster-for-salute/index.html
index 6a75e8527..615ef7c06 100644
--- a/notes/coaster-for-salute/index.html
+++ b/notes/coaster-for-salute/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/consensus-and-humming-in-the-ietf/index.html b/notes/consensus-and-humming-in-the-ietf/index.html
index 52f6c9c63..4bde53738 100644
--- a/notes/consensus-and-humming-in-the-ietf/index.html
+++ b/notes/consensus-and-humming-in-the-ietf/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/e2e-fear-campaign-accce-and-police/index.html b/notes/e2e-fear-campaign-accce-and-police/index.html
index 330499e6c..598dcad29 100644
--- a/notes/e2e-fear-campaign-accce-and-police/index.html
+++ b/notes/e2e-fear-campaign-accce-and-police/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/erlaubnis-project-diagrams/index.html b/notes/erlaubnis-project-diagrams/index.html
index ab1c6f95e..3e1c3f291 100644
--- a/notes/erlaubnis-project-diagrams/index.html
+++ b/notes/erlaubnis-project-diagrams/index.html
@@ -10,7 +10,7 @@
-
diff --git a/notes/errbufferoverfl/index.html b/notes/errbufferoverfl/index.html
index a7f6f35a8..afd60b23e 100644
--- a/notes/errbufferoverfl/index.html
+++ b/notes/errbufferoverfl/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/feminist-principles-of-the-internet/index.html b/notes/feminist-principles-of-the-internet/index.html
index bdd1f3da7..2476b9531 100644
--- a/notes/feminist-principles-of-the-internet/index.html
+++ b/notes/feminist-principles-of-the-internet/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/gouache/index.html b/notes/gouache/index.html
index 40fe13412..60627a7cd 100644
--- a/notes/gouache/index.html
+++ b/notes/gouache/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/ideas/index.html b/notes/ideas/index.html
index 66e2c8b55..d13ebb641 100644
--- a/notes/ideas/index.html
+++ b/notes/ideas/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/index.html b/notes/index.html
index 078eae169..4e61d1c37 100644
--- a/notes/index.html
+++ b/notes/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/interesting-tech-tools/index.html b/notes/interesting-tech-tools/index.html
index 9b1b6e160..a27c6ceb7 100644
--- a/notes/interesting-tech-tools/index.html
+++ b/notes/interesting-tech-tools/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/lago-daverno/index.html b/notes/lago-daverno/index.html
index aad96a726..59979096d 100644
--- a/notes/lago-daverno/index.html
+++ b/notes/lago-daverno/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/nasas-adlr-framework-for-lessons-learned/index.html b/notes/nasas-adlr-framework-for-lessons-learned/index.html
index c95ab025b..f1815880f 100644
--- a/notes/nasas-adlr-framework-for-lessons-learned/index.html
+++ b/notes/nasas-adlr-framework-for-lessons-learned/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/neocolonialism/index.html b/notes/neocolonialism/index.html
index e2537f53e..e1922b241 100644
--- a/notes/neocolonialism/index.html
+++ b/notes/neocolonialism/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/page/2/index.html b/notes/page/2/index.html
index adc07a2d3..b1061f751 100644
--- a/notes/page/2/index.html
+++ b/notes/page/2/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/page/3/index.html b/notes/page/3/index.html
index e51bc0c92..0e5d4ec72 100644
--- a/notes/page/3/index.html
+++ b/notes/page/3/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/page/4/index.html b/notes/page/4/index.html
index 07c854ae6..aa43564cc 100644
--- a/notes/page/4/index.html
+++ b/notes/page/4/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/page/5/index.html b/notes/page/5/index.html
index a9bec37da..206e82ac6 100644
--- a/notes/page/5/index.html
+++ b/notes/page/5/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/projects/index.html b/notes/projects/index.html
index 7290a85b7..f19b52137 100644
--- a/notes/projects/index.html
+++ b/notes/projects/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/sauerkraut-recipe/index.html b/notes/sauerkraut-recipe/index.html
index 5ca4f6664..a761ba107 100644
--- a/notes/sauerkraut-recipe/index.html
+++ b/notes/sauerkraut-recipe/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/security-engineer/index.html b/notes/security-engineer/index.html
index 2860bf83b..afadd0bb4 100644
--- a/notes/security-engineer/index.html
+++ b/notes/security-engineer/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/structural-adjustment-programs/index.html b/notes/structural-adjustment-programs/index.html
index d2f8a963e..1d5a11c85 100644
--- a/notes/structural-adjustment-programs/index.html
+++ b/notes/structural-adjustment-programs/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/surveillance-capitalism/index.html b/notes/surveillance-capitalism/index.html
index 4cae898e3..01bfe6e91 100644
--- a/notes/surveillance-capitalism/index.html
+++ b/notes/surveillance-capitalism/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/technocratic/index.html b/notes/technocratic/index.html
index 2dfdc6466..9cbcd98e9 100644
--- a/notes/technocratic/index.html
+++ b/notes/technocratic/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/the-inner-sanctum/index.html b/notes/the-inner-sanctum/index.html
index a3cc5be22..4c7a82426 100644
--- a/notes/the-inner-sanctum/index.html
+++ b/notes/the-inner-sanctum/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/the-offering/index.html b/notes/the-offering/index.html
index f30f25eec..79015d495 100644
--- a/notes/the-offering/index.html
+++ b/notes/the-offering/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/the-state/index.html b/notes/the-state/index.html
index 94724eea8..4422171b7 100644
--- a/notes/the-state/index.html
+++ b/notes/the-state/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/theatrum-chemicum-britannicum/index.html b/notes/theatrum-chemicum-britannicum/index.html
index 980842551..6dce61a47 100644
--- a/notes/theatrum-chemicum-britannicum/index.html
+++ b/notes/theatrum-chemicum-britannicum/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/using-pytest-with-flask/index.html b/notes/using-pytest-with-flask/index.html
index d3b5f2f05..81861465e 100644
--- a/notes/using-pytest-with-flask/index.html
+++ b/notes/using-pytest-with-flask/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/wadawurrung-and-dja-dja-wurrung-people/index.html b/notes/wadawurrung-and-dja-dja-wurrung-people/index.html
index 348593222..afa96b0c1 100644
--- a/notes/wadawurrung-and-dja-dja-wurrung-people/index.html
+++ b/notes/wadawurrung-and-dja-dja-wurrung-people/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/witches-dancing-in-a-circle-with-the-devil/index.html b/notes/witches-dancing-in-a-circle-with-the-devil/index.html
index daa420524..42217d120 100644
--- a/notes/witches-dancing-in-a-circle-with-the-devil/index.html
+++ b/notes/witches-dancing-in-a-circle-with-the-devil/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/witches-flying-on-broomsticks/index.html b/notes/witches-flying-on-broomsticks/index.html
index 18b361f54..6c9c4a4fa 100644
--- a/notes/witches-flying-on-broomsticks/index.html
+++ b/notes/witches-flying-on-broomsticks/index.html
@@ -6,7 +6,7 @@
-
diff --git a/notes/woodblock/index.html b/notes/woodblock/index.html
index ab6925d36..4f0c7eeb8 100644
--- a/notes/woodblock/index.html
+++ b/notes/woodblock/index.html
@@ -6,7 +6,7 @@
-
diff --git a/posts/index.html b/posts/index.html
index 7c95a7f76..b0b400089 100644
--- a/posts/index.html
+++ b/posts/index.html
@@ -6,7 +6,7 @@
-
diff --git a/posts/reproductive-labor/index.html b/posts/reproductive-labor/index.html
index 45c682274..98bb4a3dc 100644
--- a/posts/reproductive-labor/index.html
+++ b/posts/reproductive-labor/index.html
@@ -6,7 +6,7 @@
-
diff --git a/posts/setting-up-distributed-press-on-digital-ocean/index.html b/posts/setting-up-distributed-press-on-digital-ocean/index.html
index 9aaec6a26..1a8d69ba8 100644
--- a/posts/setting-up-distributed-press-on-digital-ocean/index.html
+++ b/posts/setting-up-distributed-press-on-digital-ocean/index.html
@@ -6,7 +6,7 @@
-
diff --git a/sitemap.xml b/sitemap.xml
index 8c6222e88..d10080486 100644
--- a/sitemap.xml
+++ b/sitemap.xml
@@ -1 +1 @@
-https://garden.errbufferoverfl.me/notes/bookmarks/2023-07-14T11:59:06+10:00daily0.5https://garden.errbufferoverfl.me/notes/2023-07-15T11:57:01+10:00daily0.5https://garden.errbufferoverfl.me/tags/oauth/2023-07-14T11:59:06+10:00daily0.5https://garden.errbufferoverfl.me/tags/python/2023-07-15T11:57:01+10:00daily0.5https://garden.errbufferoverfl.me/tags/seedling/2023-07-15T11:57:01+10:00daily0.5https://garden.errbufferoverfl.me/tags/2023-07-15T11:57:01+10:00daily0.5https://garden.errbufferoverfl.me/tags/programming/2023-07-15T11:57:01+10:00daily0.5https://garden.errbufferoverfl.me/tags/testing/2023-07-15T11:57:01+10:00daily0.5https://garden.errbufferoverfl.me/notes/using-pytest-with-flask/2023-07-15T11:57:01+10:00daily0.5https://garden.errbufferoverfl.me/tags/ADLR/2023-07-14T11:42:37+10:00daily0.5https://garden.errbufferoverfl.me/tags/decision-making/2023-07-14T11:42:37+10:00daily0.5https://garden.errbufferoverfl.me/tags/incident-management/2023-07-14T11:42:37+10:00daily0.5https://garden.errbufferoverfl.me/tags/NASA/2023-07-14T11:42:37+10:00daily0.5https://garden.errbufferoverfl.me/notes/nasas-adlr-framework-for-lessons-learned/2023-07-14T11:42:37+10:00daily0.5https://garden.errbufferoverfl.me/art/anarchic-illustrations/2023-07-14T11:27:05+10:00daily0.5https://garden.errbufferoverfl.me/art/2023-07-14T11:27:05+10:00daily0.5https://garden.errbufferoverfl.me/tags/project/2023-07-14T11:27:05+10:00daily0.5https://garden.errbufferoverfl.me/art/all-crustaceans-really-are-beautiful/2023-07-14T11:19:02+10:00daily0.5https://garden.errbufferoverfl.me/tags/anarchic/2023-07-14T11:19:02+10:00daily0.5https://garden.errbufferoverfl.me/tags/digital-painting/2023-07-14T11:20:23+10:00daily0.5https://garden.errbufferoverfl.me/tags/oeuvre/2023-07-14T11:20:23+10:00daily0.5https://garden.errbufferoverfl.me/tags/fermenting/2023-07-01T12:26:32+10:00daily0.5https://garden.errbufferoverfl.me/tags/recipe/2023-07-01T12:26:32+10:00daily0.5https://garden.errbufferoverfl.me/notes/sauerkraut-recipe/2023-07-01T12:26:32+10:00daily0.5https://garden.errbufferoverfl.me/tags/anthropology/2023-07-13T17:56:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/artificial-intelligence/2023-07-13T17:56:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/book/2023-07-13T17:56:00+10:00daily0.5https://garden.errbufferoverfl.me/books/2023-07-13T17:56:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/business/2023-07-13T17:56:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/economics/2023-07-13T17:56:00+10:00daily0.5https://garden.errbufferoverfl.me/books/ghost-work/2023-07-13T17:56:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/labor/2023-07-13T17:56:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/non-fiction/2023-07-13T17:56:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/politics/2023-07-13T17:56:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/sociology/2023-07-13T17:56:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/technology/2023-07-13T17:56:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/entity-relationship/2023-07-01T23:34:51+10:00daily0.5https://garden.errbufferoverfl.me/notes/erlaubnis-project-diagrams/2023-07-01T23:34:51+10:00daily0.5https://garden.errbufferoverfl.me/tags/oauth-2.1/2023-07-01T23:34:51+10:00daily0.5https://garden.errbufferoverfl.me/tags/software-engineering/2023-07-01T23:34:51+10:00daily0.5https://garden.errbufferoverfl.me/tags/state-machine/2023-07-01T23:34:51+10:00daily0.5https://garden.errbufferoverfl.me/tags/evergreen/2023-07-09T12:35:50+10:00daily0.5https://garden.errbufferoverfl.me/tags/golang/2023-07-09T12:35:50+10:00daily0.5https://garden.errbufferoverfl.me/notes/interesting-tech-tools/2023-07-09T12:35:50+10:00daily0.5https://garden.errbufferoverfl.me/tags/java/2023-07-09T12:35:50+10:00daily0.5https://garden.errbufferoverfl.me/tags/opensource/2023-07-09T12:35:50+10:00daily0.5https://garden.errbufferoverfl.me/tags/php/2023-07-09T12:35:50+10:00daily0.5https://garden.errbufferoverfl.me/tags/typescript/2023-07-09T12:35:50+10:00daily0.5https://garden.errbufferoverfl.me/notes/neocolonialism/2023-06-23T20:34:38+10:00daily0.5https://garden.errbufferoverfl.me/tags/macroeconomics/2023-06-23T21:03:57+10:00daily0.5https://garden.errbufferoverfl.me/notes/structural-adjustment-programs/2023-06-23T21:03:57+10:00daily0.5https://garden.errbufferoverfl.me/notes/cash-crops/2023-06-23T17:34:41+10:00daily0.5https://garden.errbufferoverfl.me/tags/activism/2023-06-29T23:05:31+10:00daily0.5https://garden.errbufferoverfl.me/tags/anarchism/2023-06-29T23:05:31+10:00daily0.5https://garden.errbufferoverfl.me/tags/counter-culture/2023-06-29T23:05:31+10:00daily0.5https://garden.errbufferoverfl.me/books/expect-resistance-a-crimethinc-field-manual/2023-06-29T23:05:31+10:00daily0.5https://garden.errbufferoverfl.me/tags/feminism/2023-06-29T23:05:31+10:00daily0.5https://garden.errbufferoverfl.me/tags/philosophy/2023-06-29T23:05:31+10:00daily0.5https://garden.errbufferoverfl.me/tags/political-science/2023-06-29T23:05:31+10:00daily0.5https://garden.errbufferoverfl.me/tags/social-justice/2023-06-29T23:05:31+10:00daily0.5https://garden.errbufferoverfl.me/notes/consensus-and-humming-in-the-ietf/2023-06-20T21:26:54+10:00daily0.5https://garden.errbufferoverfl.me/tags/consensus-building/2023-06-20T21:26:54+10:00daily0.5https://garden.errbufferoverfl.me/tags/humming/2023-06-20T21:26:54+10:00daily0.5https://garden.errbufferoverfl.me/tags/shut-up-about-humming-in-the-ietf-Bec/2023-06-20T21:26:54+10:00daily0.5https://garden.errbufferoverfl.me/tags/authority-control/2023-06-18T19:58:07+10:00daily0.5https://garden.errbufferoverfl.me/tags/big-data/2023-06-18T23:11:40+10:00daily0.5https://garden.errbufferoverfl.me/tags/capitalism/2023-06-18T23:11:40+10:00daily0.5https://garden.errbufferoverfl.me/tags/computers/2023-06-18T22:56:23+10:00daily0.5https://garden.errbufferoverfl.me/tags/csam/2023-06-17T21:33:06+10:00daily0.5https://garden.errbufferoverfl.me/tags/e2e-encryption/2023-06-17T21:33:06+10:00daily0.5https://garden.errbufferoverfl.me/notes/e2e-fear-campaign-accce-and-police/2023-06-17T21:33:06+10:00daily0.5https://garden.errbufferoverfl.me/tags/earnit-act/2023-06-17T21:33:06+10:00daily0.5https://garden.errbufferoverfl.me/notes/Embodiment/2023-06-18T23:10:23+10:00daily0.5https://garden.errbufferoverfl.me/tags/end-to-end-encryption/2023-06-17T21:33:06+10:00daily0.5https://garden.errbufferoverfl.me/tags/feminist-principles/2023-06-18T23:10:23+10:00daily0.5https://garden.errbufferoverfl.me/notes/feminist-principles-of-the-internet/2023-06-19T19:30:08+10:00daily0.5https://garden.errbufferoverfl.me/art/freedom-is-not-given-its-taken/2023-06-18T19:59:15+10:00daily0.5https://garden.errbufferoverfl.me/tags/sapling/2023-06-17T21:33:06+10:00daily0.5https://garden.errbufferoverfl.me/tags/surveillance/2023-06-18T23:11:40+10:00daily0.5https://garden.errbufferoverfl.me/notes/surveillance-capitalism/2023-06-18T23:11:40+10:00daily0.5https://garden.errbufferoverfl.me/notes/technocratic/2023-06-17T21:41:00+10:00daily0.5https://garden.errbufferoverfl.me/books/the-age-of-surveillance-capitalism/2023-06-18T22:56:23+10:00daily0.5https://garden.errbufferoverfl.me/notes/the-state/2023-06-18T19:58:07+10:00daily0.5https://garden.errbufferoverfl.me/tags/tracking/2023-06-18T23:11:40+10:00daily0.5https://garden.errbufferoverfl.me/tags/wip/2023-06-18T19:59:15+10:00daily0.5https://garden.errbufferoverfl.me/art/work-in-progress/2023-06-18T21:55:23+10:00daily0.5https://garden.errbufferoverfl.me/tags/work-in-progress/2023-06-18T19:59:15+10:00daily0.5https://garden.errbufferoverfl.me/notes/Autobase/2023-06-17T21:29:38+10:00daily0.5https://garden.errbufferoverfl.me/notes/B-tree/2023-06-17T21:30:01+10:00daily0.5https://garden.errbufferoverfl.me/tags/content-delivery-network/2023-06-19T19:15:33+10:00daily0.5https://garden.errbufferoverfl.me/tags/data-structure/2023-06-19T19:15:53+10:00daily0.5https://garden.errbufferoverfl.me/notes/DHT/2023-06-19T19:15:53+10:00daily0.5https://garden.errbufferoverfl.me/notes/DID/2023-06-17T21:32:32+10:00daily0.5https://garden.errbufferoverfl.me/tags/digital-identity/2023-06-17T21:32:32+10:00daily0.5https://garden.errbufferoverfl.me/tags/distributed-file-system/2023-06-19T19:15:33+10:00daily0.5https://garden.errbufferoverfl.me/tags/distributed-system/2023-06-19T19:15:33+10:00daily0.5https://garden.errbufferoverfl.me/tags/file-system/2023-06-19T19:14:32+10:00daily0.5https://garden.errbufferoverfl.me/notes/Holepunch/2023-06-17T21:37:10+10:00daily0.5https://garden.errbufferoverfl.me/notes/Hyperbee/2023-06-17T21:37:31+10:00daily0.5https://garden.errbufferoverfl.me/notes/Hypercore/2023-06-17T21:37:46+10:00daily0.5https://garden.errbufferoverfl.me/tags/hypercore/2023-06-19T19:15:53+10:00daily0.5https://garden.errbufferoverfl.me/notes/HyperDHT/2023-06-17T21:38:09+10:00daily0.5https://garden.errbufferoverfl.me/notes/Hyperdrive/2023-06-19T19:14:32+10:00daily0.5https://garden.errbufferoverfl.me/notes/Hyperswarm/2023-06-17T21:39:31+10:00daily0.5https://garden.errbufferoverfl.me/notes/IPFS/2023-06-19T19:15:33+10:00daily0.5https://garden.errbufferoverfl.me/tags/ipfs/2023-06-19T19:15:53+10:00daily0.5https://garden.errbufferoverfl.me/tags/p2p/2023-06-19T19:15:33+10:00daily0.5https://garden.errbufferoverfl.me/tags/peer-to-peer/2023-06-19T19:15:33+10:00daily0.5https://garden.errbufferoverfl.me/posts/2023-06-18T23:12:29+10:00daily0.5https://garden.errbufferoverfl.me/tags/protocol/2023-06-19T19:15:33+10:00daily0.5https://garden.errbufferoverfl.me/posts/setting-up-distributed-press-on-digital-ocean/2023-06-18T23:12:29+10:00daily0.5https://garden.errbufferoverfl.me/tags/gouache/2023-06-19T19:21:31+10:00daily0.5https://garden.errbufferoverfl.me/notes/ideas/2023-06-17T21:39:35+10:00daily0.5https://garden.errbufferoverfl.me/tags/reference/2023-06-18T23:11:08+10:00daily0.5https://garden.errbufferoverfl.me/notes/projects/2023-06-18T23:11:10+10:00daily0.5https://garden.errbufferoverfl.me/notes/the-inner-sanctum/2023-06-18T19:58:02+10:00daily0.5https://garden.errbufferoverfl.me/notes/the-offering/2023-06-18T19:57:59+10:00daily0.5https://garden.errbufferoverfl.me/art/autumn-pumpkins/2023-07-14T11:20:23+10:00daily0.5https://garden.errbufferoverfl.me/art/character-studies/2023-06-17T22:19:47+10:00daily0.5https://garden.errbufferoverfl.me/art/vegetable-portraits/2023-06-18T09:45:37+10:00daily0.5https://garden.errbufferoverfl.me/tags/vegetables/2023-07-14T11:20:23+10:00daily0.5https://garden.errbufferoverfl.me/tags/character-study/2023-06-23T12:15:44+10:00daily0.5https://garden.errbufferoverfl.me/tags/gender/2023-06-29T23:05:06+10:00daily0.5https://garden.errbufferoverfl.me/posts/reproductive-labor/2023-06-18T23:12:10+10:00daily0.5https://garden.errbufferoverfl.me/art/catherine-the-great/2023-06-23T12:15:44+10:00daily0.5https://garden.errbufferoverfl.me/tags/16th-century/2023-06-18T19:57:52+10:00daily0.5https://garden.errbufferoverfl.me/tags/17th-century/2023-06-18T19:58:48+10:00daily0.5https://garden.errbufferoverfl.me/tags/aquarium/2023-06-18T23:08:38+10:00daily0.5https://garden.errbufferoverfl.me/notes/aquarium-algae-scrubber/2023-06-18T23:08:38+10:00daily0.5https://garden.errbufferoverfl.me/notes/ars-moriendi/2023-06-18T19:58:41+10:00daily0.5https://garden.errbufferoverfl.me/tags/art/2023-06-18T22:39:27+10:00daily0.5https://garden.errbufferoverfl.me/notes/coaster-for-salute/2023-06-18T19:58:33+10:00daily0.5https://garden.errbufferoverfl.me/notes/lago-daverno/2023-06-18T23:11:08+10:00daily0.5https://garden.errbufferoverfl.me/tags/medium/2023-06-18T22:39:27+10:00daily0.5https://garden.errbufferoverfl.me/tags/pre-16th-century/2023-06-18T19:58:41+10:00daily0.5https://garden.errbufferoverfl.me/tags/printing/2023-06-18T22:37:52+10:00daily0.5https://garden.errbufferoverfl.me/tags/solarpunk/2023-06-18T23:08:38+10:00daily0.5https://garden.errbufferoverfl.me/notes/a-feast-around-a-table-with-devils-and-witches/2023-06-18T19:58:48+10:00daily0.5https://garden.errbufferoverfl.me/notes/theatrum-chemicum-britannicum/2023-06-18T19:57:52+10:00daily0.5https://garden.errbufferoverfl.me/notes/witches-dancing-in-a-circle-with-the-devil/2023-06-17T21:43:46+10:00daily0.5https://garden.errbufferoverfl.me/notes/witches-flying-on-broomsticks/2023-06-17T21:44:40+10:00daily0.5https://garden.errbufferoverfl.me/notes/woodblock/2023-06-18T22:37:52+10:00daily0.5https://garden.errbufferoverfl.me/tags/woodcut/2023-06-18T19:58:48+10:00daily0.5https://garden.errbufferoverfl.me/art/one-hundered-days-of-gouache/2023-06-18T10:02:59+10:00daily0.5https://garden.errbufferoverfl.me/notes/gouache/2023-06-18T22:39:27+10:00daily0.5https://garden.errbufferoverfl.me/tags/painting/2023-06-18T22:39:27+10:00daily0.5https://garden.errbufferoverfl.me/tags/academia/2023-06-29T23:05:06+10:00daily0.5https://garden.errbufferoverfl.me/tags/feminisim/2023-06-29T23:05:06+10:00daily0.5https://garden.errbufferoverfl.me/tags/feminist-theory/2023-06-29T23:05:06+10:00daily0.5https://garden.errbufferoverfl.me/books/the-feminist-and-the-sex-offender/2023-06-29T23:05:06+10:00daily0.5https://garden.errbufferoverfl.me/tags/theory/2023-06-29T23:05:06+10:00daily0.5https://garden.errbufferoverfl.me/the-art-studio/2023-06-17T22:12:07+10:00daily0.5https://garden.errbufferoverfl.me/books/anarchic-agreements-a-field-guide-to-collective-organising/2023-06-29T23:05:20+10:00daily0.5https://garden.errbufferoverfl.me/tags/anarchy/2023-06-29T23:05:20+10:00daily0.5https://garden.errbufferoverfl.me/tags/constitutions/2023-06-29T23:05:20+10:00daily0.5https://garden.errbufferoverfl.me/tags/history-and-theory/2023-06-29T23:05:20+10:00daily0.5https://garden.errbufferoverfl.me/tags/personal/2023-06-29T22:41:48+10:00daily0.5https://garden.errbufferoverfl.me/the-antilibrary/2023-06-29T22:41:48+10:00daily0.5https://garden.errbufferoverfl.me/art/supporters-kofi-weekly-roundup/2023-06-18T09:34:08+10:00daily0.5https://garden.errbufferoverfl.me/tags/application-security/2023-06-18T23:11:17+10:00daily0.5https://garden.errbufferoverfl.me/notes/errbufferoverfl/2023-06-17T21:33:33+10:00daily0.5https://garden.errbufferoverfl.me/2023-07-15T12:14:16+10:00daily0.5https://garden.errbufferoverfl.me/tags/kofi/2023-06-18T09:34:08+10:00daily0.5https://garden.errbufferoverfl.me/tags/security-engineer/2023-06-18T23:11:17+10:00daily0.5https://garden.errbufferoverfl.me/tags/supporters/2023-06-18T09:34:08+10:00daily0.5https://garden.errbufferoverfl.me/notes/wadawurrung-and-dja-dja-wurrung-people/2023-06-18T22:57:49+10:00daily0.5https://garden.errbufferoverfl.me/tags/weekly-update/2023-06-18T09:34:08+10:00daily0.5https://garden.errbufferoverfl.me/notes/security-engineer/2023-06-18T23:11:17+10:00daily0.5https://garden.errbufferoverfl.me/tags/100-days-gouache/2023-06-19T19:21:31+10:00daily0.5https://garden.errbufferoverfl.me/art/do-what-makes-you-happy/2023-06-19T19:21:31+10:00daily0.5https://garden.errbufferoverfl.me/art/fuck-capitalism/2023-06-19T19:21:10+10:00daily0.5https://garden.errbufferoverfl.me/tags/history/2023-06-29T23:04:40+10:00daily0.5https://garden.errbufferoverfl.me/books/lost-in-work-escaping-capitalism/2023-06-29T23:04:40+10:00daily0.5https://garden.errbufferoverfl.me/tags/essays/2023-06-29T23:04:58+10:00daily0.5https://garden.errbufferoverfl.me/tags/nonfiction/2023-06-29T23:04:58+10:00daily0.5https://garden.errbufferoverfl.me/books/revolution-at-point-zero/2023-06-29T23:04:58+10:00daily0.5https://garden.errbufferoverfl.me/tags/social-science/2023-06-29T23:04:58+10:00daily0.5https://garden.errbufferoverfl.me/soapbox/Collapsology-Why-your-biggest-threat-isnt-exposed-RDP/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/conference/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/pycon/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/security-culture/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/soapbox/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/social-engineering/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/debate/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/infosec/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/security/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/soapbox/The-Big-Cloud-Security-Debate-Hackers-vs-Security-Engineers/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/soapbox/A-Brief-History-of-Tamper-Evident-Locks/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/canary-technology/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/hacking/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/locksport/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/exploit-development/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/soapbox/Snake-Charming-for-Beginners/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/training/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/linux/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/soapbox/Linux-Users-Victoria-Main-Meeting-Kali-Linux/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/meetup/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/soapbox/Agloe-What-the-Map-Makers-of-the-1930s-can-Teach-us-About-Protecting-our-Data-in-2018/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/thinkst/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/soapbox/Building-your-own-offline-file-sharing-and-communication-system-for-the-inevitable-downfall-of-the-Internet/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/digital-commons/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/diy/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/categories/daily0.5
\ No newline at end of file
+https://garden.errbufferoverfl.me/notes/bookmarks/2023-07-14T11:59:06+10:00daily0.5https://garden.errbufferoverfl.me/notes/2023-07-15T11:57:01+10:00daily0.5https://garden.errbufferoverfl.me/tags/oauth/2023-07-14T11:59:06+10:00daily0.5https://garden.errbufferoverfl.me/tags/python/2023-07-15T11:57:01+10:00daily0.5https://garden.errbufferoverfl.me/tags/seedling/2023-07-15T11:57:01+10:00daily0.5https://garden.errbufferoverfl.me/tags/2023-07-15T11:57:01+10:00daily0.5https://garden.errbufferoverfl.me/tags/programming/2023-07-15T11:57:01+10:00daily0.5https://garden.errbufferoverfl.me/tags/testing/2023-07-15T11:57:01+10:00daily0.5https://garden.errbufferoverfl.me/notes/using-pytest-with-flask/2023-07-15T11:57:01+10:00daily0.5https://garden.errbufferoverfl.me/tags/ADLR/2023-07-14T11:42:37+10:00daily0.5https://garden.errbufferoverfl.me/tags/decision-making/2023-07-14T11:42:37+10:00daily0.5https://garden.errbufferoverfl.me/tags/incident-management/2023-07-14T11:42:37+10:00daily0.5https://garden.errbufferoverfl.me/tags/NASA/2023-07-14T11:42:37+10:00daily0.5https://garden.errbufferoverfl.me/notes/nasas-adlr-framework-for-lessons-learned/2023-07-14T11:42:37+10:00daily0.5https://garden.errbufferoverfl.me/art/anarchic-illustrations/2023-07-14T11:27:05+10:00daily0.5https://garden.errbufferoverfl.me/art/2023-07-14T11:27:05+10:00daily0.5https://garden.errbufferoverfl.me/tags/project/2023-07-14T11:27:05+10:00daily0.5https://garden.errbufferoverfl.me/art/all-crustaceans-really-are-beautiful/2023-07-14T11:19:02+10:00daily0.5https://garden.errbufferoverfl.me/tags/anarchic/2023-07-14T11:19:02+10:00daily0.5https://garden.errbufferoverfl.me/tags/digital-painting/2023-07-14T11:20:23+10:00daily0.5https://garden.errbufferoverfl.me/tags/oeuvre/2023-07-14T11:20:23+10:00daily0.5https://garden.errbufferoverfl.me/tags/fermenting/2023-07-01T12:26:32+10:00daily0.5https://garden.errbufferoverfl.me/tags/recipe/2023-07-01T12:26:32+10:00daily0.5https://garden.errbufferoverfl.me/notes/sauerkraut-recipe/2023-07-01T12:26:32+10:00daily0.5https://garden.errbufferoverfl.me/tags/anthropology/2023-07-13T17:56:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/artificial-intelligence/2023-07-13T17:56:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/book/2023-07-13T17:56:00+10:00daily0.5https://garden.errbufferoverfl.me/books/2023-07-13T17:56:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/business/2023-07-13T17:56:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/economics/2023-07-13T17:56:00+10:00daily0.5https://garden.errbufferoverfl.me/books/ghost-work/2023-07-13T17:56:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/labor/2023-07-13T17:56:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/non-fiction/2023-07-13T17:56:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/politics/2023-07-13T17:56:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/sociology/2023-07-13T17:56:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/technology/2023-07-13T17:56:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/entity-relationship/2023-07-01T23:34:51+10:00daily0.5https://garden.errbufferoverfl.me/notes/erlaubnis-project-diagrams/2023-07-01T23:34:51+10:00daily0.5https://garden.errbufferoverfl.me/tags/oauth-2.1/2023-07-01T23:34:51+10:00daily0.5https://garden.errbufferoverfl.me/tags/software-engineering/2023-07-01T23:34:51+10:00daily0.5https://garden.errbufferoverfl.me/tags/state-machine/2023-07-01T23:34:51+10:00daily0.5https://garden.errbufferoverfl.me/tags/evergreen/2023-07-09T12:35:50+10:00daily0.5https://garden.errbufferoverfl.me/tags/golang/2023-07-09T12:35:50+10:00daily0.5https://garden.errbufferoverfl.me/notes/interesting-tech-tools/2023-07-09T12:35:50+10:00daily0.5https://garden.errbufferoverfl.me/tags/java/2023-07-09T12:35:50+10:00daily0.5https://garden.errbufferoverfl.me/tags/opensource/2023-07-09T12:35:50+10:00daily0.5https://garden.errbufferoverfl.me/tags/php/2023-07-09T12:35:50+10:00daily0.5https://garden.errbufferoverfl.me/tags/typescript/2023-07-09T12:35:50+10:00daily0.5https://garden.errbufferoverfl.me/notes/neocolonialism/2023-06-23T20:34:38+10:00daily0.5https://garden.errbufferoverfl.me/tags/macroeconomics/2023-06-23T21:03:57+10:00daily0.5https://garden.errbufferoverfl.me/notes/structural-adjustment-programs/2023-06-23T21:03:57+10:00daily0.5https://garden.errbufferoverfl.me/notes/cash-crops/2023-06-23T17:34:41+10:00daily0.5https://garden.errbufferoverfl.me/tags/activism/2023-06-29T23:05:31+10:00daily0.5https://garden.errbufferoverfl.me/tags/anarchism/2023-06-29T23:05:31+10:00daily0.5https://garden.errbufferoverfl.me/tags/counter-culture/2023-06-29T23:05:31+10:00daily0.5https://garden.errbufferoverfl.me/books/expect-resistance-a-crimethinc-field-manual/2023-06-29T23:05:31+10:00daily0.5https://garden.errbufferoverfl.me/tags/feminism/2023-06-29T23:05:31+10:00daily0.5https://garden.errbufferoverfl.me/tags/philosophy/2023-06-29T23:05:31+10:00daily0.5https://garden.errbufferoverfl.me/tags/political-science/2023-06-29T23:05:31+10:00daily0.5https://garden.errbufferoverfl.me/tags/social-justice/2023-06-29T23:05:31+10:00daily0.5https://garden.errbufferoverfl.me/notes/consensus-and-humming-in-the-ietf/2023-06-20T21:26:54+10:00daily0.5https://garden.errbufferoverfl.me/tags/consensus-building/2023-06-20T21:26:54+10:00daily0.5https://garden.errbufferoverfl.me/tags/humming/2023-06-20T21:26:54+10:00daily0.5https://garden.errbufferoverfl.me/tags/shut-up-about-humming-in-the-ietf-Bec/2023-06-20T21:26:54+10:00daily0.5https://garden.errbufferoverfl.me/tags/authority-control/2023-06-18T19:58:07+10:00daily0.5https://garden.errbufferoverfl.me/tags/big-data/2023-06-18T23:11:40+10:00daily0.5https://garden.errbufferoverfl.me/tags/capitalism/2023-06-18T23:11:40+10:00daily0.5https://garden.errbufferoverfl.me/tags/computers/2023-06-18T22:56:23+10:00daily0.5https://garden.errbufferoverfl.me/tags/csam/2023-06-17T21:33:06+10:00daily0.5https://garden.errbufferoverfl.me/tags/e2e-encryption/2023-06-17T21:33:06+10:00daily0.5https://garden.errbufferoverfl.me/notes/e2e-fear-campaign-accce-and-police/2023-06-17T21:33:06+10:00daily0.5https://garden.errbufferoverfl.me/tags/earnit-act/2023-06-17T21:33:06+10:00daily0.5https://garden.errbufferoverfl.me/notes/Embodiment/2023-06-18T23:10:23+10:00daily0.5https://garden.errbufferoverfl.me/tags/end-to-end-encryption/2023-06-17T21:33:06+10:00daily0.5https://garden.errbufferoverfl.me/tags/feminist-principles/2023-06-18T23:10:23+10:00daily0.5https://garden.errbufferoverfl.me/notes/feminist-principles-of-the-internet/2023-06-19T19:30:08+10:00daily0.5https://garden.errbufferoverfl.me/art/freedom-is-not-given-its-taken/2023-06-18T19:59:15+10:00daily0.5https://garden.errbufferoverfl.me/tags/sapling/2023-06-17T21:33:06+10:00daily0.5https://garden.errbufferoverfl.me/tags/surveillance/2023-06-18T23:11:40+10:00daily0.5https://garden.errbufferoverfl.me/notes/surveillance-capitalism/2023-06-18T23:11:40+10:00daily0.5https://garden.errbufferoverfl.me/notes/technocratic/2023-06-17T21:41:00+10:00daily0.5https://garden.errbufferoverfl.me/books/the-age-of-surveillance-capitalism/2023-06-18T22:56:23+10:00daily0.5https://garden.errbufferoverfl.me/notes/the-state/2023-06-18T19:58:07+10:00daily0.5https://garden.errbufferoverfl.me/tags/tracking/2023-06-18T23:11:40+10:00daily0.5https://garden.errbufferoverfl.me/tags/wip/2023-06-18T19:59:15+10:00daily0.5https://garden.errbufferoverfl.me/art/work-in-progress/2023-06-18T21:55:23+10:00daily0.5https://garden.errbufferoverfl.me/tags/work-in-progress/2023-06-18T19:59:15+10:00daily0.5https://garden.errbufferoverfl.me/notes/Autobase/2023-06-17T21:29:38+10:00daily0.5https://garden.errbufferoverfl.me/notes/B-tree/2023-06-17T21:30:01+10:00daily0.5https://garden.errbufferoverfl.me/tags/content-delivery-network/2023-06-19T19:15:33+10:00daily0.5https://garden.errbufferoverfl.me/tags/data-structure/2023-06-19T19:15:53+10:00daily0.5https://garden.errbufferoverfl.me/notes/DHT/2023-06-19T19:15:53+10:00daily0.5https://garden.errbufferoverfl.me/notes/DID/2023-06-17T21:32:32+10:00daily0.5https://garden.errbufferoverfl.me/tags/digital-identity/2023-06-17T21:32:32+10:00daily0.5https://garden.errbufferoverfl.me/tags/distributed-file-system/2023-06-19T19:15:33+10:00daily0.5https://garden.errbufferoverfl.me/tags/distributed-system/2023-06-19T19:15:33+10:00daily0.5https://garden.errbufferoverfl.me/tags/file-system/2023-06-19T19:14:32+10:00daily0.5https://garden.errbufferoverfl.me/notes/Holepunch/2023-06-17T21:37:10+10:00daily0.5https://garden.errbufferoverfl.me/notes/Hyperbee/2023-06-17T21:37:31+10:00daily0.5https://garden.errbufferoverfl.me/notes/Hypercore/2023-06-17T21:37:46+10:00daily0.5https://garden.errbufferoverfl.me/tags/hypercore/2023-06-19T19:15:53+10:00daily0.5https://garden.errbufferoverfl.me/notes/HyperDHT/2023-06-17T21:38:09+10:00daily0.5https://garden.errbufferoverfl.me/notes/Hyperdrive/2023-06-19T19:14:32+10:00daily0.5https://garden.errbufferoverfl.me/notes/Hyperswarm/2023-06-17T21:39:31+10:00daily0.5https://garden.errbufferoverfl.me/notes/IPFS/2023-06-19T19:15:33+10:00daily0.5https://garden.errbufferoverfl.me/tags/ipfs/2023-06-19T19:15:53+10:00daily0.5https://garden.errbufferoverfl.me/tags/p2p/2023-06-19T19:15:33+10:00daily0.5https://garden.errbufferoverfl.me/tags/peer-to-peer/2023-06-19T19:15:33+10:00daily0.5https://garden.errbufferoverfl.me/posts/2023-06-18T23:12:29+10:00daily0.5https://garden.errbufferoverfl.me/tags/protocol/2023-06-19T19:15:33+10:00daily0.5https://garden.errbufferoverfl.me/posts/setting-up-distributed-press-on-digital-ocean/2023-06-18T23:12:29+10:00daily0.5https://garden.errbufferoverfl.me/tags/gouache/2023-06-19T19:21:31+10:00daily0.5https://garden.errbufferoverfl.me/notes/ideas/2023-06-17T21:39:35+10:00daily0.5https://garden.errbufferoverfl.me/tags/reference/2023-06-18T23:11:08+10:00daily0.5https://garden.errbufferoverfl.me/notes/projects/2023-06-18T23:11:10+10:00daily0.5https://garden.errbufferoverfl.me/notes/the-inner-sanctum/2023-06-18T19:58:02+10:00daily0.5https://garden.errbufferoverfl.me/notes/the-offering/2023-06-18T19:57:59+10:00daily0.5https://garden.errbufferoverfl.me/art/autumn-pumpkins/2023-07-14T11:20:23+10:00daily0.5https://garden.errbufferoverfl.me/art/character-studies/2023-06-17T22:19:47+10:00daily0.5https://garden.errbufferoverfl.me/art/vegetable-portraits/2023-06-18T09:45:37+10:00daily0.5https://garden.errbufferoverfl.me/tags/vegetables/2023-07-14T11:20:23+10:00daily0.5https://garden.errbufferoverfl.me/tags/character-study/2023-06-23T12:15:44+10:00daily0.5https://garden.errbufferoverfl.me/tags/gender/2023-06-29T23:05:06+10:00daily0.5https://garden.errbufferoverfl.me/posts/reproductive-labor/2023-06-18T23:12:10+10:00daily0.5https://garden.errbufferoverfl.me/art/catherine-the-great/2023-06-23T12:15:44+10:00daily0.5https://garden.errbufferoverfl.me/tags/16th-century/2023-06-18T19:57:52+10:00daily0.5https://garden.errbufferoverfl.me/tags/17th-century/2023-06-18T19:58:48+10:00daily0.5https://garden.errbufferoverfl.me/tags/aquarium/2023-06-18T23:08:38+10:00daily0.5https://garden.errbufferoverfl.me/notes/aquarium-algae-scrubber/2023-06-18T23:08:38+10:00daily0.5https://garden.errbufferoverfl.me/notes/ars-moriendi/2023-06-18T19:58:41+10:00daily0.5https://garden.errbufferoverfl.me/tags/art/2023-06-18T22:39:27+10:00daily0.5https://garden.errbufferoverfl.me/notes/coaster-for-salute/2023-06-18T19:58:33+10:00daily0.5https://garden.errbufferoverfl.me/notes/lago-daverno/2023-06-18T23:11:08+10:00daily0.5https://garden.errbufferoverfl.me/tags/medium/2023-06-18T22:39:27+10:00daily0.5https://garden.errbufferoverfl.me/tags/pre-16th-century/2023-06-18T19:58:41+10:00daily0.5https://garden.errbufferoverfl.me/tags/printing/2023-06-18T22:37:52+10:00daily0.5https://garden.errbufferoverfl.me/tags/solarpunk/2023-06-18T23:08:38+10:00daily0.5https://garden.errbufferoverfl.me/notes/a-feast-around-a-table-with-devils-and-witches/2023-06-18T19:58:48+10:00daily0.5https://garden.errbufferoverfl.me/notes/theatrum-chemicum-britannicum/2023-06-18T19:57:52+10:00daily0.5https://garden.errbufferoverfl.me/notes/witches-dancing-in-a-circle-with-the-devil/2023-06-17T21:43:46+10:00daily0.5https://garden.errbufferoverfl.me/notes/witches-flying-on-broomsticks/2023-06-17T21:44:40+10:00daily0.5https://garden.errbufferoverfl.me/notes/woodblock/2023-06-18T22:37:52+10:00daily0.5https://garden.errbufferoverfl.me/tags/woodcut/2023-06-18T19:58:48+10:00daily0.5https://garden.errbufferoverfl.me/art/one-hundered-days-of-gouache/2023-06-18T10:02:59+10:00daily0.5https://garden.errbufferoverfl.me/notes/gouache/2023-06-18T22:39:27+10:00daily0.5https://garden.errbufferoverfl.me/tags/painting/2023-06-18T22:39:27+10:00daily0.5https://garden.errbufferoverfl.me/tags/academia/2023-06-29T23:05:06+10:00daily0.5https://garden.errbufferoverfl.me/tags/feminisim/2023-06-29T23:05:06+10:00daily0.5https://garden.errbufferoverfl.me/tags/feminist-theory/2023-06-29T23:05:06+10:00daily0.5https://garden.errbufferoverfl.me/books/the-feminist-and-the-sex-offender/2023-06-29T23:05:06+10:00daily0.5https://garden.errbufferoverfl.me/tags/theory/2023-06-29T23:05:06+10:00daily0.5https://garden.errbufferoverfl.me/the-art-studio/2023-06-17T22:12:07+10:00daily0.5https://garden.errbufferoverfl.me/books/anarchic-agreements-a-field-guide-to-collective-organising/2023-06-29T23:05:20+10:00daily0.5https://garden.errbufferoverfl.me/tags/anarchy/2023-06-29T23:05:20+10:00daily0.5https://garden.errbufferoverfl.me/tags/constitutions/2023-06-29T23:05:20+10:00daily0.5https://garden.errbufferoverfl.me/tags/history-and-theory/2023-06-29T23:05:20+10:00daily0.5https://garden.errbufferoverfl.me/tags/personal/2023-06-29T22:41:48+10:00daily0.5https://garden.errbufferoverfl.me/the-antilibrary/2023-06-29T22:41:48+10:00daily0.5https://garden.errbufferoverfl.me/art/supporters-kofi-weekly-roundup/2023-06-18T09:34:08+10:00daily0.5https://garden.errbufferoverfl.me/tags/application-security/2023-06-18T23:11:17+10:00daily0.5https://garden.errbufferoverfl.me/notes/errbufferoverfl/2023-06-17T21:33:33+10:00daily0.5https://garden.errbufferoverfl.me/2023-06-30T17:47:31+10:00daily0.5https://garden.errbufferoverfl.me/tags/kofi/2023-06-18T09:34:08+10:00daily0.5https://garden.errbufferoverfl.me/tags/security-engineer/2023-06-18T23:11:17+10:00daily0.5https://garden.errbufferoverfl.me/tags/supporters/2023-06-18T09:34:08+10:00daily0.5https://garden.errbufferoverfl.me/notes/wadawurrung-and-dja-dja-wurrung-people/2023-06-18T22:57:49+10:00daily0.5https://garden.errbufferoverfl.me/tags/weekly-update/2023-06-18T09:34:08+10:00daily0.5https://garden.errbufferoverfl.me/notes/security-engineer/2023-06-18T23:11:17+10:00daily0.5https://garden.errbufferoverfl.me/tags/100-days-gouache/2023-06-19T19:21:31+10:00daily0.5https://garden.errbufferoverfl.me/art/do-what-makes-you-happy/2023-06-19T19:21:31+10:00daily0.5https://garden.errbufferoverfl.me/art/fuck-capitalism/2023-06-19T19:21:10+10:00daily0.5https://garden.errbufferoverfl.me/tags/history/2023-06-29T23:04:40+10:00daily0.5https://garden.errbufferoverfl.me/books/lost-in-work-escaping-capitalism/2023-06-29T23:04:40+10:00daily0.5https://garden.errbufferoverfl.me/tags/essays/2023-06-29T23:04:58+10:00daily0.5https://garden.errbufferoverfl.me/tags/nonfiction/2023-06-29T23:04:58+10:00daily0.5https://garden.errbufferoverfl.me/books/revolution-at-point-zero/2023-06-29T23:04:58+10:00daily0.5https://garden.errbufferoverfl.me/tags/social-science/2023-06-29T23:04:58+10:00daily0.5https://garden.errbufferoverfl.me/soapbox/Collapsology-Why-your-biggest-threat-isnt-exposed-RDP/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/conference/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/pycon/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/security-culture/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/soapbox/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/social-engineering/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/debate/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/infosec/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/security/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/soapbox/The-Big-Cloud-Security-Debate-Hackers-vs-Security-Engineers/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/soapbox/A-Brief-History-of-Tamper-Evident-Locks/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/canary-technology/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/hacking/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/locksport/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/exploit-development/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/soapbox/Snake-Charming-for-Beginners/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/training/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/linux/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/soapbox/Linux-Users-Victoria-Main-Meeting-Kali-Linux/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/meetup/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/soapbox/Agloe-What-the-Map-Makers-of-the-1930s-can-Teach-us-About-Protecting-our-Data-in-2018/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/thinkst/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/soapbox/Building-your-own-offline-file-sharing-and-communication-system-for-the-inevitable-downfall-of-the-Internet/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/digital-commons/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/tags/diy/2023-05-28T00:00:00+10:00daily0.5https://garden.errbufferoverfl.me/categories/daily0.5
\ No newline at end of file
diff --git a/soapbox/A-Brief-History-of-Tamper-Evident-Locks/index.html b/soapbox/A-Brief-History-of-Tamper-Evident-Locks/index.html
index 86a9a4139..c41cd03e1 100644
--- a/soapbox/A-Brief-History-of-Tamper-Evident-Locks/index.html
+++ b/soapbox/A-Brief-History-of-Tamper-Evident-Locks/index.html
@@ -6,7 +6,7 @@
-
diff --git a/soapbox/Agloe-What-the-Map-Makers-of-the-1930s-can-Teach-us-About-Protecting-our-Data-in-2018/index.html b/soapbox/Agloe-What-the-Map-Makers-of-the-1930s-can-Teach-us-About-Protecting-our-Data-in-2018/index.html
index 1c63b0674..361da90d0 100644
--- a/soapbox/Agloe-What-the-Map-Makers-of-the-1930s-can-Teach-us-About-Protecting-our-Data-in-2018/index.html
+++ b/soapbox/Agloe-What-the-Map-Makers-of-the-1930s-can-Teach-us-About-Protecting-our-Data-in-2018/index.html
@@ -6,7 +6,7 @@
-
diff --git a/soapbox/Building-your-own-offline-file-sharing-and-communication-system-for-the-inevitable-downfall-of-the-Internet/index.html b/soapbox/Building-your-own-offline-file-sharing-and-communication-system-for-the-inevitable-downfall-of-the-Internet/index.html
index 66325d88f..94395742e 100644
--- a/soapbox/Building-your-own-offline-file-sharing-and-communication-system-for-the-inevitable-downfall-of-the-Internet/index.html
+++ b/soapbox/Building-your-own-offline-file-sharing-and-communication-system-for-the-inevitable-downfall-of-the-Internet/index.html
@@ -6,7 +6,7 @@
-
diff --git a/soapbox/Collapsology-Why-your-biggest-threat-isnt-exposed-RDP/index.html b/soapbox/Collapsology-Why-your-biggest-threat-isnt-exposed-RDP/index.html
index 269449acf..35cc3c0c8 100644
--- a/soapbox/Collapsology-Why-your-biggest-threat-isnt-exposed-RDP/index.html
+++ b/soapbox/Collapsology-Why-your-biggest-threat-isnt-exposed-RDP/index.html
@@ -6,7 +6,7 @@
-
diff --git a/soapbox/Linux-Users-Victoria-Main-Meeting-Kali-Linux/index.html b/soapbox/Linux-Users-Victoria-Main-Meeting-Kali-Linux/index.html
index 3ee21d7e7..87e892056 100644
--- a/soapbox/Linux-Users-Victoria-Main-Meeting-Kali-Linux/index.html
+++ b/soapbox/Linux-Users-Victoria-Main-Meeting-Kali-Linux/index.html
@@ -6,7 +6,7 @@
-
diff --git a/soapbox/Snake-Charming-for-Beginners/index.html b/soapbox/Snake-Charming-for-Beginners/index.html
index 666fdcc6c..191c47d62 100644
--- a/soapbox/Snake-Charming-for-Beginners/index.html
+++ b/soapbox/Snake-Charming-for-Beginners/index.html
@@ -6,7 +6,7 @@
-
diff --git a/soapbox/The-Big-Cloud-Security-Debate-Hackers-vs-Security-Engineers/index.html b/soapbox/The-Big-Cloud-Security-Debate-Hackers-vs-Security-Engineers/index.html
index 9622fe325..f73531349 100644
--- a/soapbox/The-Big-Cloud-Security-Debate-Hackers-vs-Security-Engineers/index.html
+++ b/soapbox/The-Big-Cloud-Security-Debate-Hackers-vs-Security-Engineers/index.html
@@ -6,7 +6,7 @@
-
diff --git a/soapbox/index.html b/soapbox/index.html
index 9a4d190b0..969608b34 100644
--- a/soapbox/index.html
+++ b/soapbox/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/100-days-gouache/index.html b/tags/100-days-gouache/index.html
index b04d7cdae..c2b098640 100644
--- a/tags/100-days-gouache/index.html
+++ b/tags/100-days-gouache/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/16th-century/index.html b/tags/16th-century/index.html
index ac3cbb6d6..9e5271ed5 100644
--- a/tags/16th-century/index.html
+++ b/tags/16th-century/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/17th-century/index.html b/tags/17th-century/index.html
index ebd39543c..398034dab 100644
--- a/tags/17th-century/index.html
+++ b/tags/17th-century/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/ADLR/index.html b/tags/ADLR/index.html
index 2b3e358bd..9dc80fec4 100644
--- a/tags/ADLR/index.html
+++ b/tags/ADLR/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/NASA/index.html b/tags/NASA/index.html
index 832e20b10..500ff870d 100644
--- a/tags/NASA/index.html
+++ b/tags/NASA/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/academia/index.html b/tags/academia/index.html
index 310047b12..e9b8f63e2 100644
--- a/tags/academia/index.html
+++ b/tags/academia/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/activism/index.html b/tags/activism/index.html
index a56b3c33e..4696b0097 100644
--- a/tags/activism/index.html
+++ b/tags/activism/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/anarchic/index.html b/tags/anarchic/index.html
index c570743e8..2e473f778 100644
--- a/tags/anarchic/index.html
+++ b/tags/anarchic/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/anarchism/index.html b/tags/anarchism/index.html
index 6dbb4d2a6..84827c5e2 100644
--- a/tags/anarchism/index.html
+++ b/tags/anarchism/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/anarchy/index.html b/tags/anarchy/index.html
index 3f97ed368..44f538d69 100644
--- a/tags/anarchy/index.html
+++ b/tags/anarchy/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/anthropology/index.html b/tags/anthropology/index.html
index 241c9beef..a0849b775 100644
--- a/tags/anthropology/index.html
+++ b/tags/anthropology/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/application-security/index.html b/tags/application-security/index.html
index 703c11d91..20e11a840 100644
--- a/tags/application-security/index.html
+++ b/tags/application-security/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/aquarium/index.html b/tags/aquarium/index.html
index 770d7740e..4e2599077 100644
--- a/tags/aquarium/index.html
+++ b/tags/aquarium/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/art/index.html b/tags/art/index.html
index 47fdb3b50..c91679e52 100644
--- a/tags/art/index.html
+++ b/tags/art/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/artificial-intelligence/index.html b/tags/artificial-intelligence/index.html
index 2bd77eebf..6125640cd 100644
--- a/tags/artificial-intelligence/index.html
+++ b/tags/artificial-intelligence/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/authority-control/index.html b/tags/authority-control/index.html
index d08a3b561..27e2bf478 100644
--- a/tags/authority-control/index.html
+++ b/tags/authority-control/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/big-data/index.html b/tags/big-data/index.html
index 0a59b87e4..3b2c70510 100644
--- a/tags/big-data/index.html
+++ b/tags/big-data/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/book/index.html b/tags/book/index.html
index 4d55d2f49..905411110 100644
--- a/tags/book/index.html
+++ b/tags/book/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/business/index.html b/tags/business/index.html
index 08b339542..ac39ef57c 100644
--- a/tags/business/index.html
+++ b/tags/business/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/canary-technology/index.html b/tags/canary-technology/index.html
index a62bd6b7b..827c5f332 100644
--- a/tags/canary-technology/index.html
+++ b/tags/canary-technology/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/capitalism/index.html b/tags/capitalism/index.html
index 6dda878a2..85a78c3b9 100644
--- a/tags/capitalism/index.html
+++ b/tags/capitalism/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/character-study/index.html b/tags/character-study/index.html
index 146267580..9f82e15dd 100644
--- a/tags/character-study/index.html
+++ b/tags/character-study/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/computers/index.html b/tags/computers/index.html
index 3c938dc14..c7896a8fb 100644
--- a/tags/computers/index.html
+++ b/tags/computers/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/conference/index.html b/tags/conference/index.html
index 2c513b9a1..9ff6c0d3c 100644
--- a/tags/conference/index.html
+++ b/tags/conference/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/consensus-building/index.html b/tags/consensus-building/index.html
index a11d3f5c8..614d75ba3 100644
--- a/tags/consensus-building/index.html
+++ b/tags/consensus-building/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/constitutions/index.html b/tags/constitutions/index.html
index 950b631e4..2254073f9 100644
--- a/tags/constitutions/index.html
+++ b/tags/constitutions/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/content-delivery-network/index.html b/tags/content-delivery-network/index.html
index 486098fab..b0f1e7507 100644
--- a/tags/content-delivery-network/index.html
+++ b/tags/content-delivery-network/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/counter-culture/index.html b/tags/counter-culture/index.html
index 6d17f2640..69c288ebe 100644
--- a/tags/counter-culture/index.html
+++ b/tags/counter-culture/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/csam/index.html b/tags/csam/index.html
index aa6f0f33a..d1931b1eb 100644
--- a/tags/csam/index.html
+++ b/tags/csam/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/data-structure/index.html b/tags/data-structure/index.html
index 54de9729c..be316ae67 100644
--- a/tags/data-structure/index.html
+++ b/tags/data-structure/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/debate/index.html b/tags/debate/index.html
index 8a94c3f2e..871bdae00 100644
--- a/tags/debate/index.html
+++ b/tags/debate/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/decision-making/index.html b/tags/decision-making/index.html
index bff4b1313..e00d56b42 100644
--- a/tags/decision-making/index.html
+++ b/tags/decision-making/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/digital-commons/index.html b/tags/digital-commons/index.html
index b78dd4feb..57b4a0573 100644
--- a/tags/digital-commons/index.html
+++ b/tags/digital-commons/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/digital-identity/index.html b/tags/digital-identity/index.html
index 6f83f9593..95a5dfd13 100644
--- a/tags/digital-identity/index.html
+++ b/tags/digital-identity/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/digital-painting/index.html b/tags/digital-painting/index.html
index 5c825f54c..3ed72f70f 100644
--- a/tags/digital-painting/index.html
+++ b/tags/digital-painting/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/distributed-file-system/index.html b/tags/distributed-file-system/index.html
index 4dea37168..dfe7f37f1 100644
--- a/tags/distributed-file-system/index.html
+++ b/tags/distributed-file-system/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/distributed-system/index.html b/tags/distributed-system/index.html
index ba35b4350..01f5bf6ec 100644
--- a/tags/distributed-system/index.html
+++ b/tags/distributed-system/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/diy/index.html b/tags/diy/index.html
index b62452250..b30ae7ee2 100644
--- a/tags/diy/index.html
+++ b/tags/diy/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/e2e-encryption/index.html b/tags/e2e-encryption/index.html
index ad2fd1c22..b5ffec8bd 100644
--- a/tags/e2e-encryption/index.html
+++ b/tags/e2e-encryption/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/earnit-act/index.html b/tags/earnit-act/index.html
index b98ea402f..60e4d1a9b 100644
--- a/tags/earnit-act/index.html
+++ b/tags/earnit-act/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/economics/index.html b/tags/economics/index.html
index a2f805ded..5f7992b92 100644
--- a/tags/economics/index.html
+++ b/tags/economics/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/end-to-end-encryption/index.html b/tags/end-to-end-encryption/index.html
index 6fd955b68..e0b93e09c 100644
--- a/tags/end-to-end-encryption/index.html
+++ b/tags/end-to-end-encryption/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/entity-relationship/index.html b/tags/entity-relationship/index.html
index 99a16005f..5651b0fb0 100644
--- a/tags/entity-relationship/index.html
+++ b/tags/entity-relationship/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/essays/index.html b/tags/essays/index.html
index 0a7546d55..dc25db156 100644
--- a/tags/essays/index.html
+++ b/tags/essays/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/evergreen/index.html b/tags/evergreen/index.html
index 79c65e081..ecf943210 100644
--- a/tags/evergreen/index.html
+++ b/tags/evergreen/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/exploit-development/index.html b/tags/exploit-development/index.html
index 492ae992a..24c0b61ba 100644
--- a/tags/exploit-development/index.html
+++ b/tags/exploit-development/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/feminisim/index.html b/tags/feminisim/index.html
index 8445fd695..71a71a37e 100644
--- a/tags/feminisim/index.html
+++ b/tags/feminisim/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/feminism/index.html b/tags/feminism/index.html
index 1b2d3a4b6..d1cc353ed 100644
--- a/tags/feminism/index.html
+++ b/tags/feminism/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/feminist-principles/index.html b/tags/feminist-principles/index.html
index d313dfe29..88cccc8f4 100644
--- a/tags/feminist-principles/index.html
+++ b/tags/feminist-principles/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/feminist-theory/index.html b/tags/feminist-theory/index.html
index c2c24dea9..2e0270dd2 100644
--- a/tags/feminist-theory/index.html
+++ b/tags/feminist-theory/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/fermenting/index.html b/tags/fermenting/index.html
index baf16efc8..8206e4ce4 100644
--- a/tags/fermenting/index.html
+++ b/tags/fermenting/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/file-system/index.html b/tags/file-system/index.html
index 3e405b2ed..190673116 100644
--- a/tags/file-system/index.html
+++ b/tags/file-system/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/gender/index.html b/tags/gender/index.html
index 81840ae7d..ba68efd4a 100644
--- a/tags/gender/index.html
+++ b/tags/gender/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/golang/index.html b/tags/golang/index.html
index 84b67a037..a9b3278ef 100644
--- a/tags/golang/index.html
+++ b/tags/golang/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/gouache/index.html b/tags/gouache/index.html
index af4d75ec8..62eeb9292 100644
--- a/tags/gouache/index.html
+++ b/tags/gouache/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/hacking/index.html b/tags/hacking/index.html
index be21ed0b1..8e6561b45 100644
--- a/tags/hacking/index.html
+++ b/tags/hacking/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/history-and-theory/index.html b/tags/history-and-theory/index.html
index 7f08d70ec..70cd97861 100644
--- a/tags/history-and-theory/index.html
+++ b/tags/history-and-theory/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/history/index.html b/tags/history/index.html
index c262ea4cc..3b6783e22 100644
--- a/tags/history/index.html
+++ b/tags/history/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/humming/index.html b/tags/humming/index.html
index d7755e26d..5e8b33eb4 100644
--- a/tags/humming/index.html
+++ b/tags/humming/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/hypercore/index.html b/tags/hypercore/index.html
index 9cdf47f33..a8b0c101e 100644
--- a/tags/hypercore/index.html
+++ b/tags/hypercore/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/incident-management/index.html b/tags/incident-management/index.html
index 13e43c8d6..9c7259790 100644
--- a/tags/incident-management/index.html
+++ b/tags/incident-management/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/index.html b/tags/index.html
index 3bc6c1fa5..fb1b67637 100644
--- a/tags/index.html
+++ b/tags/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/infosec/index.html b/tags/infosec/index.html
index 4541336a7..ad0a2b757 100644
--- a/tags/infosec/index.html
+++ b/tags/infosec/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/ipfs/index.html b/tags/ipfs/index.html
index 9798d0351..6af024e0b 100644
--- a/tags/ipfs/index.html
+++ b/tags/ipfs/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/java/index.html b/tags/java/index.html
index 106e4fc54..6a85aeca8 100644
--- a/tags/java/index.html
+++ b/tags/java/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/kofi/index.html b/tags/kofi/index.html
index 1469db9dd..54e78a129 100644
--- a/tags/kofi/index.html
+++ b/tags/kofi/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/labor/index.html b/tags/labor/index.html
index 9590f821e..cc5488370 100644
--- a/tags/labor/index.html
+++ b/tags/labor/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/linux/index.html b/tags/linux/index.html
index bcd56a87a..41c532607 100644
--- a/tags/linux/index.html
+++ b/tags/linux/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/locksport/index.html b/tags/locksport/index.html
index 3693f7946..877fa2efd 100644
--- a/tags/locksport/index.html
+++ b/tags/locksport/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/macroeconomics/index.html b/tags/macroeconomics/index.html
index 3137db0be..de822d024 100644
--- a/tags/macroeconomics/index.html
+++ b/tags/macroeconomics/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/medium/index.html b/tags/medium/index.html
index ebfc48c96..77aad5a90 100644
--- a/tags/medium/index.html
+++ b/tags/medium/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/meetup/index.html b/tags/meetup/index.html
index 90293f9dc..b8ed68e0a 100644
--- a/tags/meetup/index.html
+++ b/tags/meetup/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/non-fiction/index.html b/tags/non-fiction/index.html
index 9ec365593..8a09c262b 100644
--- a/tags/non-fiction/index.html
+++ b/tags/non-fiction/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/nonfiction/index.html b/tags/nonfiction/index.html
index 145634d1a..595077608 100644
--- a/tags/nonfiction/index.html
+++ b/tags/nonfiction/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/oauth-2.1/index.html b/tags/oauth-2.1/index.html
index 242d6db33..d2827020b 100644
--- a/tags/oauth-2.1/index.html
+++ b/tags/oauth-2.1/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/oauth/index.html b/tags/oauth/index.html
index 01fa21976..976f890ed 100644
--- a/tags/oauth/index.html
+++ b/tags/oauth/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/oeuvre/index.html b/tags/oeuvre/index.html
index 8cb4c1424..2797e2846 100644
--- a/tags/oeuvre/index.html
+++ b/tags/oeuvre/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/opensource/index.html b/tags/opensource/index.html
index df1733f8e..c6bb6f49c 100644
--- a/tags/opensource/index.html
+++ b/tags/opensource/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/p2p/index.html b/tags/p2p/index.html
index 60e9485a3..9122ca240 100644
--- a/tags/p2p/index.html
+++ b/tags/p2p/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/painting/index.html b/tags/painting/index.html
index d403c29d5..da9a6fd53 100644
--- a/tags/painting/index.html
+++ b/tags/painting/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/peer-to-peer/index.html b/tags/peer-to-peer/index.html
index 740a7a369..ba35a708f 100644
--- a/tags/peer-to-peer/index.html
+++ b/tags/peer-to-peer/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/personal/index.html b/tags/personal/index.html
index 7fac4a999..b134c6e70 100644
--- a/tags/personal/index.html
+++ b/tags/personal/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/philosophy/index.html b/tags/philosophy/index.html
index 580c346c6..5b71faa99 100644
--- a/tags/philosophy/index.html
+++ b/tags/philosophy/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/php/index.html b/tags/php/index.html
index 25297b474..3902d696c 100644
--- a/tags/php/index.html
+++ b/tags/php/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/political-science/index.html b/tags/political-science/index.html
index 362a43694..d05c8692f 100644
--- a/tags/political-science/index.html
+++ b/tags/political-science/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/politics/index.html b/tags/politics/index.html
index 26b6e3717..8ee7955b1 100644
--- a/tags/politics/index.html
+++ b/tags/politics/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/pre-16th-century/index.html b/tags/pre-16th-century/index.html
index 77063468e..2a0349cf4 100644
--- a/tags/pre-16th-century/index.html
+++ b/tags/pre-16th-century/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/printing/index.html b/tags/printing/index.html
index 61054bee7..9391eb13c 100644
--- a/tags/printing/index.html
+++ b/tags/printing/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/programming/index.html b/tags/programming/index.html
index 3c3e1c590..feda09805 100644
--- a/tags/programming/index.html
+++ b/tags/programming/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/project/index.html b/tags/project/index.html
index 96379df28..3a1544138 100644
--- a/tags/project/index.html
+++ b/tags/project/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/protocol/index.html b/tags/protocol/index.html
index 2980f1d92..cb27588d9 100644
--- a/tags/protocol/index.html
+++ b/tags/protocol/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/pycon/index.html b/tags/pycon/index.html
index ec32b41df..4403f99b5 100644
--- a/tags/pycon/index.html
+++ b/tags/pycon/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/python/index.html b/tags/python/index.html
index 27e815660..7c77c10c8 100644
--- a/tags/python/index.html
+++ b/tags/python/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/recipe/index.html b/tags/recipe/index.html
index e43603e7a..82a5d19f1 100644
--- a/tags/recipe/index.html
+++ b/tags/recipe/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/reference/index.html b/tags/reference/index.html
index 2b1861443..a44106b7d 100644
--- a/tags/reference/index.html
+++ b/tags/reference/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/sapling/index.html b/tags/sapling/index.html
index d648fa562..e1a3d58f0 100644
--- a/tags/sapling/index.html
+++ b/tags/sapling/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/security-culture/index.html b/tags/security-culture/index.html
index 29745393a..6a4513ccf 100644
--- a/tags/security-culture/index.html
+++ b/tags/security-culture/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/security-engineer/index.html b/tags/security-engineer/index.html
index ee1605e85..2c307ef33 100644
--- a/tags/security-engineer/index.html
+++ b/tags/security-engineer/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/security/index.html b/tags/security/index.html
index e96cbc45c..dad32b23b 100644
--- a/tags/security/index.html
+++ b/tags/security/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/seedling/index.html b/tags/seedling/index.html
index cc938f041..49d8d2f03 100644
--- a/tags/seedling/index.html
+++ b/tags/seedling/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/seedling/page/2/index.html b/tags/seedling/page/2/index.html
index 742c02838..5f3027647 100644
--- a/tags/seedling/page/2/index.html
+++ b/tags/seedling/page/2/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/seedling/page/3/index.html b/tags/seedling/page/3/index.html
index bf264d194..21adb67a5 100644
--- a/tags/seedling/page/3/index.html
+++ b/tags/seedling/page/3/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/shut-up-about-humming-in-the-ietf-Bec/index.html b/tags/shut-up-about-humming-in-the-ietf-Bec/index.html
index b46f984e7..116e66c2c 100644
--- a/tags/shut-up-about-humming-in-the-ietf-Bec/index.html
+++ b/tags/shut-up-about-humming-in-the-ietf-Bec/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/social-engineering/index.html b/tags/social-engineering/index.html
index dc36d853a..ce6c5b1d3 100644
--- a/tags/social-engineering/index.html
+++ b/tags/social-engineering/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/social-justice/index.html b/tags/social-justice/index.html
index 0868db6b7..03786e231 100644
--- a/tags/social-justice/index.html
+++ b/tags/social-justice/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/social-science/index.html b/tags/social-science/index.html
index 25e5c7879..34d9ff6c2 100644
--- a/tags/social-science/index.html
+++ b/tags/social-science/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/sociology/index.html b/tags/sociology/index.html
index bc8d2fb00..7344da56e 100644
--- a/tags/sociology/index.html
+++ b/tags/sociology/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/software-engineering/index.html b/tags/software-engineering/index.html
index 8c34a4524..bfcec63b1 100644
--- a/tags/software-engineering/index.html
+++ b/tags/software-engineering/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/solarpunk/index.html b/tags/solarpunk/index.html
index b74a073b5..c73473b90 100644
--- a/tags/solarpunk/index.html
+++ b/tags/solarpunk/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/state-machine/index.html b/tags/state-machine/index.html
index 7c7a62eb7..4e4d8ca8f 100644
--- a/tags/state-machine/index.html
+++ b/tags/state-machine/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/supporters/index.html b/tags/supporters/index.html
index ef19e173f..da2c2fbab 100644
--- a/tags/supporters/index.html
+++ b/tags/supporters/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/surveillance/index.html b/tags/surveillance/index.html
index d9ce5459e..af443e1fa 100644
--- a/tags/surveillance/index.html
+++ b/tags/surveillance/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/technology/index.html b/tags/technology/index.html
index b40a21ad0..857a1daa0 100644
--- a/tags/technology/index.html
+++ b/tags/technology/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/testing/index.html b/tags/testing/index.html
index d14b45d9e..9fcd4b4cf 100644
--- a/tags/testing/index.html
+++ b/tags/testing/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/theory/index.html b/tags/theory/index.html
index 6403c3468..574e53d96 100644
--- a/tags/theory/index.html
+++ b/tags/theory/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/thinkst/index.html b/tags/thinkst/index.html
index 03260b76a..57c0b1b35 100644
--- a/tags/thinkst/index.html
+++ b/tags/thinkst/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/tracking/index.html b/tags/tracking/index.html
index 3a40014fa..9ebd90e2d 100644
--- a/tags/tracking/index.html
+++ b/tags/tracking/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/training/index.html b/tags/training/index.html
index 48b242390..2f6828e7c 100644
--- a/tags/training/index.html
+++ b/tags/training/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/typescript/index.html b/tags/typescript/index.html
index 0477fdda5..72ecb1784 100644
--- a/tags/typescript/index.html
+++ b/tags/typescript/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/vegetables/index.html b/tags/vegetables/index.html
index 8623bfb20..075d3f65a 100644
--- a/tags/vegetables/index.html
+++ b/tags/vegetables/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/weekly-update/index.html b/tags/weekly-update/index.html
index a86c9e900..e27b5fe29 100644
--- a/tags/weekly-update/index.html
+++ b/tags/weekly-update/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/wip/index.html b/tags/wip/index.html
index 4de1cb51d..131e2f525 100644
--- a/tags/wip/index.html
+++ b/tags/wip/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/woodcut/index.html b/tags/woodcut/index.html
index e7d3ab73d..0417fc319 100644
--- a/tags/woodcut/index.html
+++ b/tags/woodcut/index.html
@@ -6,7 +6,7 @@
-
diff --git a/tags/work-in-progress/index.html b/tags/work-in-progress/index.html
index 8d40d0a26..2d46f7d2a 100644
--- a/tags/work-in-progress/index.html
+++ b/tags/work-in-progress/index.html
@@ -6,7 +6,7 @@
-
diff --git a/the-antilibrary/index.html b/the-antilibrary/index.html
index acefaa37d..70af83dcf 100644
--- a/the-antilibrary/index.html
+++ b/the-antilibrary/index.html
@@ -6,7 +6,7 @@
-
diff --git a/the-art-studio/index.html b/the-art-studio/index.html
index ed3139808..283e29a90 100644
--- a/the-art-studio/index.html
+++ b/the-art-studio/index.html
@@ -6,7 +6,7 @@
-