diff --git a/.all-contributorsrc b/.all-contributorsrc index edc907d313..1dec68cb50 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -158,6 +158,42 @@ "contributions": [ "doc" ] + }, + { + "login": "philipsheldrake", + "name": "Philip Sheldrake", + "avatar_url": "/images/fellows/philipsheldrake.png", + "profile": "https://twitter.com/sheldrake/", + "contributions": [ + "doc" + ] + }, + { + "login": "jesssun", + "name": "Jess Sun", + "avatar_url": "/images/fellows/Jess_Sun.png", + "profile": "https://twitter.com/heyjess_sun/", + "contributions": [ + "doc" + ] + }, + { + "login": "aliya", + "name": "Aliya", + "avatar_url": "/images/fellows/Aliya.png", + "profile": "https://twitter.com/aliyajypsy/", + "contributions": [ + "doc" + ] + }, + { + "login": "sidcode", + "name": "sidcode", + "avatar_url": "/images/fellows/sidcode.jpg", + "profile": "https://twitter.com/sidcode_/", + "contributions": [ + "doc" + ] } ], "contributorsPerLine": 6, diff --git a/.env.example b/.env.example index 3617d3e1c5..49a8df97b6 100644 --- a/.env.example +++ b/.env.example @@ -1 +1,3 @@ GATSBY_TELEMETRY_DISABLED=1 +GATSBY_LOCAL_HONOUR_ADDRESS="locally-deployed-deschool-address" +INFURA_ID= diff --git a/.gitignore b/.gitignore index ace4a308bb..ca8b325f32 100644 --- a/.gitignore +++ b/.gitignore @@ -7,4 +7,5 @@ node_modules *.swp yarn-error.log package-lock.json -.vscode \ No newline at end of file +.vscode +.env \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000000..b9b4c32568 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,22 @@ +# Name the node stage "builder" +FROM node:14 AS builder +# Set working directory +WORKDIR /app +# Copy all files from current directory to working dir in image +COPY . . +# install node modules and build assets +RUN yarn +RUN yarn build +RUN ls -lt + +# nginx state for serving content +FROM nginx:alpine +# Set working directory to nginx asset directory +WORKDIR /usr/share/nginx/html +# Remove default nginx static assets +RUN rm -rf ./* +# Copy static assets from public folder +COPY --from=builder /app/public . +RUN ls -lt +# Containers run nginx with global directives and daemon off +ENTRYPOINT ["nginx", "-g", "daemon off;"] \ No newline at end of file diff --git a/README.md b/README.md index d40c4ee6d0..3ce4d519c0 100644 --- a/README.md +++ b/README.md @@ -1,16 +1,13 @@ # [Kernel Community](https://kernel.community) -This repo hosts the code for a new type of online learning environment, which mixes a -spaced repetition memory system with a token model on Ethereum so that anyone can learn -for free, while still ensuring that we can all generate some income (rather than perpetuating -endless student debt cycles). +This repo hosts the code for a new type of online learning environment, which mixes personal thinking skills with technical practices via a focus on conversation and relationality. It is part of our ongoing efforts to make learning free, in both senses. ## Getting Started **Dependencies** 1. Yarn -2. Node v13 or higher (we recommend [nvm](https://github.com/nvm-sh/nvm)) +2. Node v14 (we recommend [nvm](https://github.com/nvm-sh/nvm)) ``` git clone https://github.com/kernel-community/kernel-v2.git @@ -19,20 +16,31 @@ yarn yarn start ``` -Check out the `guiding` directory under `content/en` for everything you could possibly need to know about how to work with this site, from a cheatsheet and component palette, to detail about how translations, search, and navigation are handled. +**Codespace** -## Roadmap +We have also created a codespace for this repository, which you should be able to use by clicking the green `Code` button above and following the codespace tab to run this directly in your browser with everything automatically set up. -This is a **rough outline** of the next steps to meet the vision above. Many of these steps can/may happen in parallel. All of them will be detailed in our project board. +Check out the `guiding` directory under `content/en` for everything you need to know about how to work with this site, from a cheatsheet and component palette, to detail about how translations, search, and navigation are handled. -- [x] Fix all current styling issues to make this new site match closely the old one. -- [x] Model smart contracts fully and write a formal spec. Figure out checkpoint verification mechanism. -- [x] Write some good blog pieces and structure that section correctly. -- [x] Write flashcard content and build `flashcard` React component. -- [x] Soft launch: no signups or actual spaced repetitive tracking. Anyone can use the flashcards simply as fun additions to the text. -- [ ] Build backend with email notifications and spaced tracking. Build `register` React component. Wire up `flashcards` to use the backend tracking. -- [ ] Finish writing and testing contracts. Get some Kernel friends to audit them. -- [ ] Build `redeem` React component and do all the testing on Kovan/Ropsten/whatever test net. -- [ ] **Much wow!** +## Roadmap -While we may or may not stick to the plan above, you can be sure that our intention is to launch Kernel V2 _Soon™️_. +_The red road lies bare before us,_ +_a path of joy, and life's good water_ +_which wanders into rainbow fire_ +_as it finds its way around the four_ +_part turning harmony._ + +_Hear, dear friends, that old vision_ +_our grandparents of the good mind gave:_ +_a hoop of many hoops woven together_ +_hoping the tree might bloom again,_ +_though there is no king who will return._ + +_It is us_ +_who must roll in time's dust_ +_and gather the ash of past fires_ +_to help grow a garden that holds_ +_the light, and shifts it into_ +_something sweet,_ +_ripe, juicy,_ +_redemptive._ \ No newline at end of file diff --git a/blogPosts/en/blog/Editorial/arranging-participation.mdx b/blogPosts/en/blog/Editorial/arranging-participation.mdx new file mode 100644 index 0000000000..6654a3192f --- /dev/null +++ b/blogPosts/en/blog/Editorial/arranging-participation.mdx @@ -0,0 +1,110 @@ +--- +title: "A Range of Participation" +authors: ["andytudhope"] +keywords: "Kernel, participation, arrangement, people, information, Zuzalu" +description: "What is a network state? Do we place emphasis on the word ‘network’ or ‘state’?" +date: 2023-05-29 +image: "/images/shares/govern.png" +recommend: + [ + "blogPosts/en/blog/Editorial/constituting-consensus", + "blogPosts/en/blog/community/setting-prison-art-free", + "blogPosts/en/blog/Editorial/signature-stories", + ] +--- + +# A Range of Participation + +[Zuzalu](https://zuzalu.city/) is a fascinating experiment in letting people who know each other online arrange themselves in physical space. Given that many relationships became primarily digital during COVID, Zuzalu has the chance to set some precedents for what these kinds of communities and events will look like in the years to come. + +In short: it was not perfect, but it was very lovely. The single biggest learning: we can improve how we facilitate one another. We’re still largely stuck in the single-speaker or small-panel style of sharing information, which sucks. + +We gathered a great deal of creativity and intellect, and then often put people in rooms where they listened passively. The goal of facilitation is, to me, very clear: **no more audiences**. That said, environments like Zuzalu require some “activation energy” to gather such creativity. This energy is provided by the fact that people like Vitalik and David Hoffman appeared for two months in the same place, invited people they respected as experts in different fields, and fed us vegan desserts or peer pressured us into cold plunges. + +It is that very same activation energy which makes facilitation hard, because we come in with the expectation that listening to Vitalik speak is more valuable than talking to a stranger. This is obviously untrue if you’ve ever had a meaningful conversation with someone you don’t know, or have tried to follow one of Vitalik’s random tangents, but we are misled by the evolutionary machinery in our brains which is highly attuned to social status. + +Good facilitation breaks the expectation that the most value you can get from an hour is in listening to high status people by gently weaving everyone into smaller conversations likely to prove meaningful, and reminding people that you’re far better off reading [vitalik.ca](https://vitalik.ca/) or listening to [Bankless](https://www.bankless.com/listen) if you really want to learn from those kind of people. + +We need to orient people towards each other, rather than at a perceived authority. This amounts to rewiring our perception of who and what is valuable, which is exactly the same work we do when we write meaningful economic code capable of [incentivising different social structures](/learn/module-5/incentives). + +The conversations which will define what Zuzalu becomes were had over communal breakfast, or in the water, or on the trails, or in small apartments over home-cooked food and great jokes about the failure of most Balkan people to spice their food to African or Asian standards. It’s worth reflecting on this fact and bringing it more explicitly into the structure of future gatherings. + +## Questioning Authority + +Zuzalu raised two related questions for me: “What is a network state? Do we place emphasis on the word ‘network’ or ‘state’?” + +The words we choose matter, as does the degree to which we are conscious of the many meanings each one carries. + +If we are primarily a network, then the meanings of the word “state” open up significantly to include every verifiable transition which has resulted in the total arrangement of information we share right now. It brings us much closer to the verb form of the word, as in “Please state your case”, which means to express information clearly and carefully. + +If we are primarily a state–a nation or territory considered as an organised political community under one government–then the network becomes a means to an end, where the end is political organisation. It is more about the arrangement of people than information. + +Considered together, network states are interesting because they seem to promise the combined arrangement of information and people in ways previously not possible. At best, they might enable us to [imagine and live within more creative social forms once more](/conversation/hospitality/#playful-souls). + +## Violence or Volition + +However, arranging information can–in certain contexts–become propaganda and organising people can–in those same contexts–become tyranny. In fact, there is a negative feedback loop at work here. When we can’t arrange information persuasively, we tend to resort to violence in order to organise people, and more violent states tend to arrange information in ways which people are both incentivised to believe and to police in others. + +It is critical that the negative spiral into violence begins largely with an inability to arrange information in a persuasive manner, because it raises the question, “What means do we have to arrange information persuasively without being necessarily violent?”. + +One suggestion blockchains have led to is “[credible neutrality](https://nakamoto.com/credible-neutrality/)”. If everyone can participate in the network, and if every state transition adheres to rules we can all verify independently, then the resultant state we share is persuasive without anyone needing to enforce it. + +This is not a new idea. It is present in nascent form in the Bitcoin whitepaper, and is the natural outcome of a network of timestamp servers which establish novel peer-to-peer routines that solve very old communication problems. Perhaps that’s one reason why Satoshi placed an overtly political statement in the Genesis Block: “The Times 03/Jan/2009 Chancellor on brink of second bailout for banks.” + +Notice how credible neutrality is _not_ political neutrality. Credible neutrality is operational: it has to do with how blockchains work intrinsically. Considered in the wider political environment within which they operate, blockchains are clearly not neutral technologies. + +## A Persuasive Politics of Participation + +So, what are the politics of blockchains? Being able to arrange information in more persuasive, open, credibly neutral ways means that we don’t often stop to ask what is really persuasive about this means of arrangement. + +Satoshi’s suggestion is at once simple and fractal. **Anyone who is participating fully can arrange information in any manner they please**. It may seem strange to phrase it like this, but it’s true, because ‘participating fully’ entails running software and doing work (or risking value) that adheres to shared constraints in unambiguous ways. Once you’re doing that–once you’re using the same protocol or “speaking the common tongue”–and are awarded the right to change the network’s state, you can order the sequence of events which make up such a state transition in any way you like. + +This works well at the level of information, where arrangement is done in binary and has an entirely deterministic result we can all verify independently. Arranging people is more difficult, and so we often revert to old ideas about control and ownership and territory and leadership, rather than exploring the [horizons of the possible](https://sign.kernel.community). Zuzalu is hopefully just the beginning of what such explorations will look like. + +Part of the joy of such gatherings is that people cannot be arranged like information. There needs to be ambiguity and space for change in any healthy social structure. When such space is held open, it becomes obvious that **we the people arrange ourselves** given the chance to do so. We arrange ourselves by choosing our relationships. + +You know this already. I may never fully understand you, but show me the five people you share most of your time with and I can learn everything I need to know about you. + +Information on a blockchain is persuasive because anyone who is participating fully can arrange it how they please and no-one needs to resort to physical violence. Organisations which do not resort to violence are persuasive when **people can arrange themselves** by virtue of whom they participate with and how they choose to do so. + +What is radical about this is not greater efficiency, or more room for experimentation outside slow-moving and bureaucratic structures, or financializing everything. [It is certainly not about building new tools to govern others](/learn/module-4/governance/#anarchy). It is about enabling people to choose who they arrange themselves with. It is about cultivating **interdependence**. + +Just like good facilitators can orient people towards one another, we can live in ways which focus on who we choose to participate with and how we are when doing so. This orientation towards the people we bind our lives with, rather than towards the abstract idealisation of structures for governing other people is one way towards wholesome networked states. + +_True leaders_ +_are hardly known to their followers._ +_Next after them are the leaders_ +_the people know and admire;_ +_after them, those they fear;_ +_after them, those they despise._ + +_To give no trust_ +_is to get no trust._ + +_When the work’s done right,_ +_with no fuss or boasting,_ +_ordinary people say,_ +_Oh, we did it._ + +_–_ [Lao Tzu, via Ursula Le Guin](https://terebess.hu/english/tao/LeGuin.pdf) + +This ancient verse describes well the radical politics of blockchains, which arrange information in a credibly neutral network that enables participants to arrange how we organise and who we relate with in ways that genuinely persuade our peers, rather than violently coerce them. + +Remember that ‘radical’ means ‘root’, because it points at that which anchors us in reality, giving meaning and nourishment to our lives: one another. + +_The return to the root_ +_is peace._ +_Peace: to accept what must be,_ +_to know what endures._ +_In that knowledge is wisdom._ +_Without it, ruin, disorder._ + +_To know what endures_ +_is to be openhearted,_ +_magnanimous,_ +_regal,_ +_blessed,_ +_following the Tao,_ +_the way that endures forever._ +_The body comes to its ending,_ +_but there is nothing to fear._ \ No newline at end of file diff --git a/blogPosts/en/blog/Editorial/constituting-consensus.mdx b/blogPosts/en/blog/Editorial/constituting-consensus.mdx index 0dcb3da8a4..2dfd73a9d3 100644 --- a/blogPosts/en/blog/Editorial/constituting-consensus.mdx +++ b/blogPosts/en/blog/Editorial/constituting-consensus.mdx @@ -29,7 +29,7 @@ In this older sense, a constitution is really a dynamic and living tradition tai When this singular essence at the heart of every being is your reference in any interaction, the constitution of this moment becomes clear. In a sense, the universe is like a cookbook: but you have to know the ingredients required, the correct time to prepare different meals, and you must cultivate the ability to read the measures clearly and follow them. -When you cook according to the recipe tested by countless chefs before you, you are moving along the [way](http://www.sfhunyuan.com/images/TAO_TE_CHING_-_LE_GUIN_edition.pdf). Of course, you can add some cinnamon here, or some chilli there, but if you deviate from the basic measures, you will neither have your cake, nor will you be able to eat it. This is the [freedom](/learn/module-3/freedom) you have: submit joyfully to the way you are constituted (which is joyful precisely because it entails the lived realisation that you are made up the same way everything is); or deviate according to your whims (and, inevitably, fall into distraction and suffering). +When you cook according to the recipe tested by countless chefs before you, you are moving along the [way](https://terebess.hu/english/tao/LeGuin.pdf). Of course, you can add some cinnamon here, or some chilli there, but if you deviate from the basic measures, you will neither have your cake, nor will you be able to eat it. This is the [freedom](/learn/module-3/freedom) you have: submit joyfully to the way you are constituted (which is joyful precisely because it entails the lived realisation that you are made up the same way everything is); or deviate according to your whims (and, inevitably, fall into distraction and suffering). # Via Negativa diff --git a/blogPosts/en/blog/Editorial/kernel-returns.mdx b/blogPosts/en/blog/Editorial/kernel-returns.mdx new file mode 100644 index 0000000000..0a1a6ad95e --- /dev/null +++ b/blogPosts/en/blog/Editorial/kernel-returns.mdx @@ -0,0 +1,84 @@ +--- +title: "Kernel Returns" +authors: ["vsinghdothings"] +keywords: "kernel, block, new, learn, apply, community" +description: "An open, peer-to-peer, lifelong network of humans building relationships one conversation at a time." +date: 2023-10-04 +image: "/images/kernel-returns.png" +recommend: + [ + "blogPosts/en/blog/Editorial/signature-stories", + "blogPosts/en/blog/community/free-learn", + "blogPosts/en/blog/Editorial/what-is-kernel", + ] +--- + +# KERNEL Returns + +> _Kernel Block 8 begins January 2024. Applications are open [here](https://apply.kernel.community/)._ + +I recently woke up, as I do often, and clicked into a random part of the Kernel website. [Inventing on Principle](/learn/module-6/inventing-on-principle) was the choice of the day, a brief tucked away in Module 6 of the Kernel book. + + + +![Module 6](/images/module-6.png) + +A guided review of interface designer Brett Victor’s inventive 2012 talk, the brief hyperlinks to many other places in the Kernel book, including [Serenity](/learn/module-6/serenity) (the design rationale for Eth 2.0), and [Finding Lost Paradises](/learn/module-4/the-garden) which explores the garden of forking memes with Aaron Lewis. It also links out to a [Imogene Heap Tiny Desk concert](https://www.youtube.com/watch?v=3QtklTXbKUQ&t=556s), a Doug Englebart talk on [Collective Intelligence & Augmented Knowledge](https://www.youtube.com/watch?v=sG3PWet8fDk), and to a StackOverflow post on modes in Vim. This is a typical rabbit hole of stories in a Kernel brief, a choose your own adventure experience. + + + +In the brief, Victor advocates for **“finding and following a principle”**. + +He suggests this as an alternative to the more popular motifs of the early 2010s – “find your passion” or “do something you love”. Victor suggests finding your principle through lived experience – through invention. + +> “Make many things. Make many types of things. Study many things. Experience many things. Use all of these experiences as a way of analyzing yourself by asking, 'Does this resonate with me?', "Does this repel me?', 'Do I not care?' Build up this corpus of experiences you care about and then try to make sense of it, try to figure out why you care.” + +Once you find a principle, life will ask you to invent (and reinvent) around its voice. Listen for your principle, even when other voices loudly ask for your attention. Invent ways of being which make that principle more likely, more lived. In a continual process of self-discovery, re-invent your own life story. By extension, the world naturally shifts. + +> _“Even the lowest whisper can be heard over armies... when it's telling the truth.” _ + +## What is Kernel? + +The principle Kernel follows is: _Humans live better when learning and teaching with others, in ongoing dialogue._ + +Each Kernel block is an instantiation of the principle: a participatory learning environment dedicated to building a better web, together. + +Each Kernel block brings together ~250 unique people around the world who are each _inventing in earnest_. + +Each Kernel Fellow brings with them an “adventure” – a project, a company in the making, a research question, a topic of interest. An adventure almost always resembles a principle: a way of life you are actively inventing for yourself and by extension, others. + +Your adventure guides and colors your Kernel block experience and also extends beyond yourself and Kernel into the world. + +A Kernel block orients one towards: + + + +building/creating your own chosen Kernel "adventure", + +in fellowship and dialogue with the peers learning alongside you, + +with a Kernel book offering "techno-philosophical" questions for contemplation. + + + +Kernel is an experience equal parts online, onchain, and “translocal” (in small local groups, globally). It is primarily about creating beautiful things with others. + +Adventures take many forms, and so too, do the forms of dialogue which arise between fellows in response. We've seen many product validation demos of new interfaces, research interviews for a phD thesis, dinner at the restaurant of a new Kernel fellow, and music shared between new friends. The friendships are the real reward of Kernel, and dialogue is the constantly moving centerpiece. + +## The Kernel Of Crypto + +Kernel explores technology from its roots. Language, stories, memory-making, library science, anthropological accounts of debt, open source/peer to peer culture, inventions of weird money and the frontiers of modern technology are represented in the Kernel book. There’s also quite a bit of poetry and film referenced, but that’s another story. Each block is responsive to the technical and cultural context of the day. + +Today’s context is a crypto in search of meaning. Rather than focusing on consuming (“Consumer Crypto”) to find it, Kernel asks to consider **active participation**, through learning and teaching with others, as a means of differentiated experience in crypto interfaces. A Kernel Block shows just one example of what that active participation might look like (Bonfire, Blackbird, and Jokerace are recent inspirations). + +Inventive and ['home-cooked’ technologies which encourage conviviality](https://www.robinsloan.com/notes/home-cooked-app/) remain central in Kernel. Can we invent simpler interfaces, form factors, and even monies which work with us – not for us – so that we might remain more aware in our interactions online, onchain, and in the world? + +After all, as [The Evolution of Trust game by Nicky Case](https://ncase.me/trust/) offers us in [Module 0 of Kernel](https://www.kernel.community/en/learn/module-0/trust): “We are each other’s environment”. And we have the chance right now to make our own environment a little more clear. + +## Apply to Kernel + +If any of the above resonates with you, we invite you earnestly to create, build, and be with us during Kernel Block 8. + +Applying to Kernel begins a conversation with Kernel Fellows and the Kernel Stewards. We consider it a gift and would be grateful to learn more about you. + +Please apply [here](https://apply.kernel.community/). diff --git a/blogPosts/en/blog/Editorial/signature-stories.mdx b/blogPosts/en/blog/Editorial/signature-stories.mdx new file mode 100644 index 0000000000..857bbc3e9e --- /dev/null +++ b/blogPosts/en/blog/Editorial/signature-stories.mdx @@ -0,0 +1,136 @@ +--- +title: "Signature Stories" +authors: ["andytudhope"] +keywords: "aignature, economies, kernel, learn, education, web3, community" +description: "What does it mean to make money significant?" +date: 2022-06-27 +image: "/images/blog_headers/signature_derrida.png" +recommend: + [ + "blogPosts/en/blog/community/setting-prison-art-free", + "blogPosts/en/blog/Editorial/constituting-consensus", + "blogPosts/en/blog/community/free-learn", + ] +--- + +# Signature Stories and More Meaningful Economies + + + +You can listen to the social launch of the essay above, or go on and read about all the juicy technical details below. + +--- + +We have created an interactive essay intended to expand our understanding of ownership so that it includes reciprocity and care, rather than just control and possession. + + + + + + + + + + + +We wish to make new media which illustrate how to play with public tools for good thought in manifold ways. In particular, these ways ought to include the financial, but not be limited to it. We believe that the work of web3 is about programming in appropriate and contextual ways; not reducing everything to finance, nor using shared ledgers to sell hyped-up narratives about how we can solve all the problems of the world. + +In crafting one such public [tool for thought](/learn/module-3/remember/), we have - out of necessity - made a few technical discoveries and innovations. This is the story of our shared work. + +