<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
    <channel>
        <title>Tony Says</title>
        <link>https://paragraph.com/@tonysays</link>
        <description>undefined</description>
        <lastBuildDate>Mon, 07 Sep 2026 13:05:12 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <language>en</language>
        <image>
            <title>Tony Says</title>
            <url>https://storage.googleapis.com/papyrus_images/6f379e9d3e02db0a2055e8396770389bf5e21059a16312398f7a93cd0c92707b.png</url>
            <link>https://paragraph.com/@tonysays</link>
        </image>
        <copyright>All rights reserved</copyright>
        <item>
            <title><![CDATA[Notes - Intro to Programming ]]></title>
            <link>https://paragraph.com/@tonysays/notes-intro-to-programming</link>
            <guid>PskwBz0DIwbamP11papv</guid>
            <pubDate>Sun, 30 Jan 2022 10:30:57 GMT</pubDate>
            <description><![CDATA[Original Tutorialby freeCodeCamp.org What is a programmingProgramming language is like a interpreter between human and computerLow level and high level programming language -> the lower the more similar to machine codeHow do we write code?We often use IDE (integrated development environment) - a place to write, run and debug codes e.g. VS Code IDEs are good for:Error trackingAuto-fillProject hierarchyA syntax is set of rules specific to programming languages -> similar to grammarHow to type o...]]></description>
            <content:encoded><![CDATA[<h1 id="h-original-tutorial" class="text-4xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Original Tutorial</h1><p>by freeCodeCamp.org</p><div data-type="youtube" videoId="zOjov-2OZ0E">
      <div class="youtube-player" data-id="zOjov-2OZ0E" style="background-image: url('https://i.ytimg.com/vi/zOjov-2OZ0E/hqdefault.jpg'); background-size: cover; background-position: center">
        <a href="https://www.youtube.com/watch?v=zOjov-2OZ0E">
          <img src="{{DOMAIN}}/editor/youtube/play.png" class="play"/>
        </a>
      </div></div><hr><h2 id="h-what-is-a-programming" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">What is a programming</h2><ol><li><p>Programming language is like a interpreter between <strong><em>human</em></strong> and <strong><em>computer</em></strong></p></li><li><p>Low level and high level programming language -&gt; <em>the lower the more similar to </em><strong><em>machine code</em></strong></p></li></ol><h2 id="h-how-do-we-write-code" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">How do we write code?</h2><p>We often use IDE (<strong>integrated development environment</strong>) - a place to write, run and debug codes e.g. VS Code</p><p><strong>IDEs are good for:</strong></p><ol><li><p>Error tracking</p></li><li><p>Auto-fill</p></li><li><p>Project hierarchy</p></li></ol><p>A syntax is <strong><em>set of rules</em></strong> specific to programming languages -&gt; similar to <strong><em>grammar</em></strong></p><ol><li><p>How to type out certain functions</p></li><li><p>What to put at end of code line</p></li><li><p>How to set up functions</p></li></ol><p>Error occurs when syntax is incorrect, and IDE will tell you where error is and won’t run..</p><h2 id="h-how-to-get-info-from-computer" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">How to get info from computer</h2><p>Enter your code and use <em>console</em> to keep track of your progress -&gt; a text interface interpreting output of a programme</p><p><em>Console</em> is also seem as a <em>developer tool</em> , not usually meant to be used and interacted by users</p><h2 id="h-what-can-computer-do" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">What can computer do?</h2><p>Computer can do simple stuff i.e.</p><ol><li><p><strong><em>arithmetic</em></strong> (x,/,+,-),</p></li><li><p><strong><em>modulus</em></strong> (%) reminder of a dividend equation -&gt; can be used to determine if a number is <em>even or odd</em></p></li></ol><p><em>String is text</em>, anything <strong><em>enclosed by quotation</em></strong> marks. i.e. &quot;4&quot; while 4 w/out quotation mark is an integer</p><p><strong><em>Concatenation</em></strong> is when adding strings together</p><p>Python example: <code>print(&quot;game over, &quot; + 4 + &quot; was your final score.&quot; )</code></p><p>Good practice to add <em>space</em> at start/ end of your string</p><h2 id="h-what-are-variables" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">What are variables</h2><p><strong>Variables</strong> <em>store information</em> that can be <strong><em>referenced</em></strong> and <strong><em>manipulated</em></strong></p><p>Each variable has a <strong><em>type, name, and piece</em></strong> <em>of information</em> stored inside</p><h3 id="h-primitive-variables" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">Primitive variables</h3><p>integers, booleans, floats, doubles, strings and chars</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/f44ccb43b8c6698126c1948c9ffbe1553eeb3d081b0d60bbc19fdc650adc1b8e.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><ol><li><p><strong>Integer</strong> variable is <em>whole numbers</em> and <em>can&apos;t hold decimal numbers</em></p></li><li><p><strong>Booleans</strong> is either <em>true</em> or <em>false</em></p></li><li><p><strong>Floats</strong> (up to 32bits) and <strong>Doubles</strong> (up to 64 bits) both store <em>numbers w/ decimal places</em></p></li><li><p><strong>Strings</strong> for displaying and <em>store input information</em>, also <em>output information</em></p></li><li><p><strong>Chars</strong> (character) each <em>hold one character</em>, useful when reading one button press of one character in a string w/out using string variable</p></li></ol><p>Variables are useful to <strong><em>keep track of things</em></strong> e.g. user name or score; <strong><em>taking inputs, making variability</em></strong> and have it changed based on certain factors, <strong><em>manipulate</em></strong> for many tasks</p><h2 id="h-how-to-variables" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">How to &quot;variables&quot;</h2><p>Create a space <strong><em>in memory</em></strong> that stores your <strong><em>variable name and its contents</em></strong>.</p><p><strong>Blank variable</strong> is for storing info down the road e.g. maybe from user input</p><p>Variables can point to the <strong><em>same</em></strong> info/ memory storage</p><p>Assign new content to existing variables can <strong><em>update</em></strong> it e.g. RPG games stats</p><p>After the code run its course, variables are <strong><em>deleted</em></strong> in memory</p><p>#1 Rule for variables is they must be one continuous string</p><blockquote><p>good practice is camelCase - not capitalise first word, but first letter of all words after</p></blockquote><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/19aa46cc9c9c6370a4353589b3c64774c8dee7b770e3f147b39ccc0315ef8d67.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><h2 id="h-conditional-statements" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Conditional Statements</h2><p>Adds variability to program based on user inputs, or else program will run the same way every time</p><p><strong><em>If statement</em></strong> -&gt; if true do this, otherwise do sth else e.g. braces () if true inside braces will run, else will not run</p><p><strong><em>Else if statement</em></strong> -&gt; only when if or (if else) is bypassed due to it being false</p><p><strong><em>Else statement</em></strong> -&gt; carry out after if/ else-if statement is not true</p><p><strong><em>Switch statement</em></strong> -&gt; input a variable then determine which &quot;case&quot; it is Start with a colon (:)</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/51ccf9fb23d01bd8aa68d69eb243adbd35c8cc7840cd3d89fc60ab1594c42878.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><h2 id="h-what-are-arrays" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">What are Array&apos;s</h2><p>A list of something, e.g. <strong><em>integerts, strings or other arrays</em></strong>, all in an array info is related</p><p>It&apos;s critical how we reference each element inside of array, computer uses <em>i</em><strong><em>ndexes which begins at 0.</em></strong></p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/cf64ff52f9b963126a87327510b06a4927b9be2ef6ba0dc04688b7a9d156e776.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><ol><li><p>Populate first - insert elements in the array ***immediately ***</p></li><li><p>Populate later - create an array w/ specific size but <strong><em>add elements later</em></strong>, note this size is <strong><em>final</em></strong></p></li></ol><p>When initiate array the t<em>ype </em><strong><em>must be determined</em></strong> (String array, integer, double etc), they all have to be the <em>same</em></p><p><em>Putting array inside an array is 2D array</em>, similar to matrices in math/ physics 2D array use 2 numbers, that is (row, column)</p><h2 id="h-what-are-loops" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">What are loops</h2><p>a Loop is a statement to run certain instruction <em>repeatedly</em></p><p><strong>For Loop</strong></p><ol><li><p>integer value</p></li><li><p>conditional statement</p></li><li><p>an operation to modify the integer value after the instructions</p></li><li><p>determinates when conditions are met</p></li></ol><p>infinite loop - you must give a initial integer and operation at some point will be met.</p><p><strong>For each loop</strong> - interacting w/ entire array or lists</p><blockquote><p>go through each element and carry out instructions for each value</p></blockquote><p><strong>While loop</strong> - continue to carry out instruction while a conditional statement is true, can be an infinite loop</p><blockquote><p>e.g. while (x == 0)</p></blockquote><p><strong>Do-while loops</strong> - instruction inside the loop will run <strong><em>once</em></strong> before checking conditional statement</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/5e719f9fa6a934c14f42418a17a54346b9b42c67888029db56ad32fcb876868f.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><h2 id="h-errors" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Errors</h2><p>Everyday occurance so dont be suprised, consists of three types:</p><ol><li><p><strong>Syntax errors</strong> When <em>fail</em> to follow programming rules and highlighted by IDE mostly</p></li><li><p><strong>Runtime errors</strong> Don&apos;t show till you run the code, commonly caused by <strong><em>infinite loop</em></strong></p></li></ol><p>when the computer is given some <em>condition</em> w/ no <em>feasible</em> wayt o finish, result in error and crash</p><blockquote><p>think about ur code flow (i.e. loops)before running i</p></blockquote><ol start="3"><li><p><strong>Logic errors</strong> When no issue of the two above but result <em>isn&apos;t what you wanted</em>. Error is unknow.</p></li></ol><blockquote><p>test ur code often and incrementally</p></blockquote><h2 id="h-debugging" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Debugging</h2><p>When error occur, read the error coz IDE will print error message FYI.</p><p>Trace to the line of code and try to fix.</p><p>Go to stackoverflow etc.</p><p><strong>Print statement debugging</strong> - insert print to validate value from algorithm before enter into potential error prone instructions.</p><p>Just remember to delete after checking.</p><p><strong>Breakpoint bedugging</strong> - pauses the programme when reaches ur breakpoint</p><p><strong>Now, to resolve the bug</strong> w/ section of code causing the error, try to <strong><em>commenting</em></strong> it out</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/87bb3a27c24f8bf82310e928aea2661e67993c5cf6271e9281190f44ae95d9ec.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>Mark-up the code so computer wouldn&apos;t read it, test the programme again if see if this section is the issue.</p><p><strong>Prevent Errors</strong></p><ol><li><p><strong><em>Backup code</em></strong> frequently, use Github or Subversions.</p></li></ol><p>you can pull <em>previous</em> versions or <em>backtracking</em> when error was written</p><ol start="2"><li><p><strong><em>Run ur program frequently</em></strong> - so u dont save a backup that doesn&apos;t work and easier to figure our when u wrote the error</p></li></ol><h2 id="h-what-are-functions" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">What are functions</h2><p>a <strong>Function</strong> is a <strong><em>segment of code</em></strong> that can be run by <strong><em>calling</em></strong> the function name, and it may <strong><em>do something</em></strong> in return.</p><p>Function can be called <strong><em>numerous times</em></strong> and in <strong><em>numerous places</em></strong></p><p>e.g. print function - specific code has ben abstracted down to a <strong><em>single line</em></strong>.</p><p>Function can be used to <strong><em>recycle</em></strong> sections of code, for <strong><em>equations</em></strong> to allow multiple inputs, and save space.</p><p>Thousands of types of functions available u just need to <strong><em>import</em></strong> the ones u need.</p><h3 id="h-types-of-functions" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">Types of Functions</h3><p>There are <strong><em>4 types</em></strong> of functions, seperated by</p><p><strong>A</strong>. Whether or not they <strong><em>take in arguments</em></strong></p><p><strong>B</strong>. Whether or not they <strong><em>return values</em></strong></p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/2e4926d806dc2a3d6f24fc03cadd5bf7a72a82717e0916cfe31b92bdc599b8ef.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><h3 id="h-a-takes-in-argument-or-not" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">A Takes in argument or not</h3><p><strong>Arguments</strong> are variables we pass into a function for manipulation and then either:</p><ul><li><p><em>Returned</em> back to us</p></li><li><p><em>printed</em> to the console</p></li><li><p>used in another <em>operation</em></p></li></ul><p>e.g. go to cafe to order food (ur function) - you want nachos and latte (ur argument);</p><p>e.g. 2 max function needs numbers as input, error occur when input strings</p><p><strong>Without Arguments</strong> combines instructions for ease of eye and workload</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/cbfca33074df4cb58ad316b6843432222767ab30a7a60bd807d73748cd742331.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><h3 id="h-b-returning-value-or-not" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">B returning value or not</h3><p>Function can either return variables or not - returns a <em>string, integer, array</em> etc</p><p><strong>Returning function</strong> - must be return into something, usually a variable (and printed)</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/5352a62f43c3fa67d03a73ef4ce9acdedffdb4d8faef3accea9cbf5f77c62a45.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p><strong>Not return function</strong> - takes no arguments and returns no value</p><p><strong>The Merits of Function</strong> Allow making large changes easily, as each function call is just a <strong><em>copy</em></strong> of that function code, change the function will change <strong><em>all function calls</em></strong></p><h2 id="h-how-to-import-function" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">How to import function</h2><p>Import pre-made functions to reduce workload.</p><p><strong><em>Library</em></strong> - collection of functions that all have same theme. e.g. mech lib, data analysis lib.</p><p>An import statement is used to import <strong><em>library, package, class</em></strong></p><blockquote><p>Import entire library is a waste of computing power + increase load time</p></blockquote><p>python <code>from math import factorial</code> Java <code>import Jave.math.factorial</code></p><h2 id="h-how-to-make-functions" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">How to make functions</h2><p>A skeleton system for function that works</p><h3 id="h-no-argument-return-no-value" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">No argument return no value</h3><ol><li><p>Function name to follow <strong><em>CamelCase</em></strong> style</p></li><li><p>First define the function&apos;s <em>scope</em> <code>public</code>, <em>return type</em> <code>public void</code>, <em>function name</em> <code>public void printStats</code> particular to <strong>Java</strong></p></li><li><p>A <em>parentheses</em> to put ur argument <code>public void printStates()</code></p></li></ol><p>e.g. in Python <code>def printStats():</code></p><h3 id="h-takes-in-argument-returns-no-value" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">Takes in argument returns no value</h3><ul><li><p>Requires <em>variables</em> from user to <em>pass into the function</em>, the variables will then be used in <em>arguments</em> when we <em>call</em> function</p><pre data-type="codeBlock" text="e.g. public void producCalculator(in num1, num2) {

 system.out.println(num1* num2);
} 
"><code>e.g. <span class="hljs-keyword">public</span> void producCalculator(in num1, num2) {

 system.out.println(num1<span class="hljs-operator">*</span> num2);
} 
</code></pre><p><code>producCalculator(5,8)</code>returns 5x8 = 40.</p></li><li><p>when <em>call</em> a function you must pass in its <strong><em>designated variable types</em></strong></p></li></ul><h3 id="h-dont-take-argument-and-take-in-value" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">Don&apos;t take argument and take in value</h3><ol><li><p>It <em>must</em> return a variable <strong><em>no matter what</em></strong> path your code takes</p></li><li><p><em>Cannot</em> return on type of variable if you have defined function to return <em>another type</em></p></li></ol><h3 id="h-return-argument-and-take-in-value" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">Return argument and take in value</h3><ol><li><p>Assign <em>arguments</em> between parentheses</p></li><li><p>design what you want to return</p></li><li><p>ensure no mater what path the code takes, it <strong><em>must</em></strong> return something</p></li></ol><pre data-type="codeBlock" text="`public ini exampleFunction(ini num1, String str1) {
if (num1 == 5) {
  return 5;
} else {
  return 10;
}
}
"><code>`<span class="hljs-function"><span class="hljs-keyword">public</span> ini <span class="hljs-title">exampleFunction</span><span class="hljs-params">(ini num1, <span class="hljs-type">String</span> str1)</span> </span>{
<span class="hljs-keyword">if</span> (num1 == <span class="hljs-number">5</span>) {
  <span class="hljs-keyword">return</span> <span class="hljs-number">5</span>;
} <span class="hljs-keyword">else</span> {
  <span class="hljs-keyword">return</span> <span class="hljs-number">10</span>;
}
}
</code></pre><h2 id="h-arraylists-and-dictionaries" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">ArrayLists and Dictionaries</h2><p><strong>Arraylist</strong> is A growing array which dynamically <strong><em>changes</em></strong> its size, starts w/ initial size of 10.</p><blockquote><p>When you don&apos;t know the exact number of values to store e.g. database of users</p></blockquote><p><strong>Dictionary</strong> stores <strong><em>multiple values</em></strong> and each value is tied to an identifier to <strong><em>reference</em></strong> it, called its &quot;<strong>key</strong>&quot;</p><ol><li><p>When referencing a <em>value</em>, you use its <em>unique</em> and dictionary will tell you the value <em>tied</em> to it</p></li><li><p>Key must be <strong><em>unique to value</em></strong>, but same value can be stored to <strong><em>different</em></strong> keys</p></li><li><p>Dictionary is also “<strong><em>iterable</em></strong><em>”</em> and can perform <strong><em>operations* or *comparisons</em></strong> on all values in them.</p></li></ol><h2 id="h-using-data-structure" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Using data structure</h2><p><strong>Searching algorithms</strong> - ways to <em>look</em> through a list of values <em>stored</em> in a array and find <em>particular piece of data.</em></p><p>Lists can be either <em>sorted</em> (by order or reason) or <em>unsorted</em> （the opposite)</p><p><strong>Efficiency</strong> based on <em>two values</em>:</p><ol><li><p>***worst ***case scenario</p></li><li><p><strong><em>average</em></strong> number of items case</p></li></ol><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/adeb82a44a5848f1af014131b9587160e6a480f1c8d5ecbd72afd281f96f9ce0.png" alt="Big 0 notation" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">Big 0 notation</figcaption></figure><p><strong>Linear search</strong> - start from beginning and systematically check <strong><em>each data point</em></strong> until you find what you are looking for.</p><blockquote><p>worst case - check every element 0(n) average case - find our search term halfway 0(n/2)</p></blockquote><p>work with both sorted and unsorted lists</p><p><strong>Binary search</strong> - a <strong><em>recursive process</em></strong> that break the list down into <strong><em>smaller</em></strong> and smaller parts to find item faster, takes advantage of <strong><em>sorted lists</em></strong></p><blockquote><p>worst case - runs in logarithmic time 0(log n) average case - find our item in logarithmic time 0 (log n)</p></blockquote><h2 id="h-what-is-recursion" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">What is recursion</h2><p><strong>Recursion</strong> is using functions that <em>repeated</em> call themselves , in instruction that occur w/in a function, one <em>instruction</em> will be a <em>call</em> to that same function e.g.</p><pre data-type="codeBlock" text="public ini myFunction(ini n)
{
instructions;
myFunctions(n+1);
} 
"><code>public ini <span class="hljs-built_in">myFunction</span>(ini n)
{
instructions;
<span class="hljs-built_in">myFunctions</span>(n+<span class="hljs-number">1</span>);
} 
</code></pre><pre data-type="codeBlock" text="public ini recursiveSum(ini n) {
    if (n&lt;=1) {
        return n;
    } else {
        return (n + recursiveSum(n-1))
    }
} 
"><code><span class="hljs-keyword">public</span> ini recursiveSum(ini n) {
    <span class="hljs-keyword">if</span> (n<span class="hljs-operator">&#x3C;</span><span class="hljs-operator">=</span><span class="hljs-number">1</span>) {
        <span class="hljs-keyword">return</span> n;
    } <span class="hljs-keyword">else</span> {
        <span class="hljs-keyword">return</span> (n <span class="hljs-operator">+</span> recursiveSum(n<span class="hljs-number">-1</span>))
    }
} 
</code></pre><blockquote><p>the above essentially calculates when N = 3, returns 3+2+1 = 6.</p></blockquote><p><strong>The Stack</strong> is a <em>data structure</em> containing all tasks the program is instructed to <strong><em>complete</em></strong>, based on a <strong><em>certain method</em></strong> the program will carry out the tasks you give it</p><p><strong>LIFO Structure</strong> (last in first out) mean the <strong><em>last</em></strong> item put one the stack will be the <strong><em>first</em></strong> removed from it.</p><p>if a recursive function is created <strong><em>w/out a reachable base case</em></strong>, processes will continue adding up the stack, causing a <strong><em>stack overflow error</em></strong> and program crash.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/bc4eca0fc56f5cc03305a7ad403ca25757ee8dcd4272d4031488ce9dad36964a.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>Recursion is useful because it breaks down <strong><em>large problem</em></strong> into <strong><em>smaller</em></strong> <em>pieces</em> to compute</p><h2 id="h-what-is-pseudocode" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">What is Pseudocode?</h2><p>Most programmer <strong><em>think about code</em></strong> more often than actually writing it. Simply roll-up ur sleeve and write code doesn&apos;t guarantee good program.</p><p><strong>Pseudocode</strong> simply means plan our the code before writing.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/31c0a24cb1a28212df930516ba84f67ed8e39aa17e9fcae433141ee9616961ca.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><ul><li><p><strong>Flowcharts</strong> - think through the process of a particular <em>function</em></p></li></ul><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/83febbbae6d0c26792afae98850ddc854af70b5967ce3dd0b2f28a157b15db10.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><ul><li><p><strong>Write-Up</strong> write what your code would behave <em>chronologically</em>, outline step by step what the program will <em>accomplish</em></p></li></ul><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/f3c74f0246425070eb269ce09804e245f2fc18a795442c9ab8d7eeb6f18d427f.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><blockquote><p>avoid being bogged down w/ syntax and naming conventions, simply making note of what the program ultimate goal should be</p></blockquote><ul><li><p><strong>Functionality Planning</strong> write up main <em>features</em> and what <em>functions or smaller programs</em> needed to complete those features.</p></li></ul><h2 id="h-choosing-a-language" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Choosing a language</h2><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/b03f7139a96369beed8b1224327645d902dc565a7a963169dd84600662b37b97.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p><em>Programming languages are built to optimise </em><strong><em>different tasks</em></strong><em>. e.g. HTML and CSS - web development</em></p><ol><li><p>HTML a markup language for writing the content of a website</p></li><li><p>CSS used to design the style of a website</p></li></ol><p><strong>Scripting language</strong> has many <em>commands</em> for you run <strong><em>w/out being complie</em>d</strong>, easier to <em>port</em> between operating systems. e.g. php, javascript</p><p><strong>General purpose languages</strong> has wide variety of use case and <strong><em>applications</em></strong></p><ol><li><p>Java - Game/ web development</p></li><li><p>Python - Data analysis/ scripting</p></li><li><p>C++ - application/ system programs</p></li></ol><h2 id="h-application-of-programming" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Application of programming</h2><ol><li><p>Research the language via official website and wiki</p></li><li><p>Learn the language use youtube to start introduction</p></li><li><p><strong><em>Find challenges so you can continue to code</em></strong></p><ul><li><p>Codingbet</p></li><li><p>coderbyte</p></li><li><p>hackerRank</p></li></ul></li></ol>]]></content:encoded>
            <author>tonysays@newsletter.paragraph.com (Tony Says)</author>
        </item>
        <item>
            <title><![CDATA[A fundamental analysis on KlimaDAO backing asset - BCT]]></title>
            <link>https://paragraph.com/@tonysays/a-fundamental-analysis-on-klimadao-backing-asset-bct</link>
            <guid>u2iNICArhLCB0Nee8DjD</guid>
            <pubDate>Thu, 06 Jan 2022 00:48:05 GMT</pubDate>
            <description><![CDATA[NOTE: Original piece published on 20 Nov 2021 by myself in Chinese, this is the English version to demonstrate my analytic skills and language skills. https://tonysays.substack.com/p/klimadaoIntroIn the past month, you may have heard of OlympusDAO (OHM), and if you follow OHM, you may have also heard of KlimaDAO. A protocol established in June this year utilising the same (3,3) mechanism as OHM, accumulating Base Carbon Tonnes (BCT) through bonding and staking. There are many article detailin...]]></description>
            <content:encoded><![CDATA[<p><em>NOTE: Original piece published on 20 Nov 2021 by myself in Chinese, this is the English version to demonstrate my analytic skills and language skills.</em></p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://tonysays.substack.com/p/klimadao">https://tonysays.substack.com/p/klimadao</a></p><h2 id="h-intro" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Intro</h2><p>In the past month, you may have heard of OlympusDAO (OHM), and if you follow OHM, you may have also heard of KlimaDAO. A protocol established in June this year utilising the same (3,3) mechanism as OHM, accumulating Base Carbon Tonnes (BCT) through bonding and staking. There are many article detailing OHM’s innovative Protocol Owned Liquidity (POL) mechanism so I won’t be discussing that in this piece, rather I assume you have a basic understand of it.</p><p>I’d like to talk about carbon offset trading and the carbon market, and the most important question I have regarding KilmaDAO - whether it collateralized backing asst Base Carbon Tone (BCT) has any value accruing.</p><h2 id="h-carbon-market" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Carbon Market</h2><p>One must understand the carbon market to understand BCT, as this is the market that would determine its intrinsic value via buy and sell.</p><p>Carbon trading is simply the trading of carbon emission in terms of CO2/tonne as a commodity via the carbon market, which can be categorized into two: the Compliance Carbon Market and the Voluntary Carbon Market.</p><p>The <strong>Compliance Carbon Market (CCM)</strong> is established based on Kyoto Protocol back in 1997, aimed at limiting greenhouse gas (GHG) emissions from industrialized countries to curb Global Warming. In 2005, Kyoto Protocol came into effect which makes the first time in our history to limit GHG via legislation and regulation by either reducing carbon emission or carbon offsets. The goal is to halve carbon emission in major industrial countries by more than 80% by 2050. Under the agreement, each participating country will meet this goal by setting emission reduction targets and tracking annual carbon emission.</p><p>Developing countries like China and India are not mandated to participate the Kyoto Protocol due their relatively small carbon emission during the industrial era (1881 - 1935). Due to strategic deployment, China adopted <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://www.gov.cn/zhengce/zhengceku/2021-01/06/content_5577360.htm"><em>Measures for the Administration of Carbon Emissions Trading (Trial Implementation)</em> Memorandum</a> in December 2020 to ensure compliance with global sentiments. The memorandum allows state departments to allocate carbon credits to Key Emitting Entities (26,000 tons of carbon emissions per year and above), while permitting and encouraging these carbon credits to be traded in the carbon emission trading platform. The basic idea is that if an Key Emitting Entity exceeds its annual carbon emission quota (carbon credit), additional carbon credits will have to be purchased from others with unused carbon credit, and compensate for its over-emissions.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/62f39555c2f2a34a291a50236bb31755dd42899c3018c44f7aaeb739245d51d7.png" alt="CCM Illustration" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">CCM Illustration</figcaption></figure><p>The largest carbon emitter United State among developed industrial countries, refused the sign the Kyoto Protocol in 2001 under the Bush administration. And to date, carbon emission control and trading rely only on individual states legislation and policies. e.g. the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ww2.arb.ca.gov/our-work/programs/compliance-offset-program">Carbon Emissions Regulatory Program</a> led by the California government in 2013 and the Regional Carbon Emissions Initiative launched by eleven northeastern states in 2005, other states have not passed legislation to encourage carbon trading markets.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/31c4d2163cb91079322cd2c59fc4921af90dba78c57546da34ae85561313e78b.png" alt="CCM in USA only in highlighted states" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">CCM in USA only in highlighted states</figcaption></figure><p>In general, regulated Compliance Carbon Market lacks coherence and couldn’t establish deep roots in any counties due to the fact that, most countries have not signed up to Kyoto Protocol and are still weighting in positions.</p><p>The <strong>Voluntary Carbon Market (VCM)</strong> on the other hand, is a market in which companies, individuals and organizations that are not bound by Kyoto Protocol, voluntarily purchase carbon emission offset to offset/ reduce their carbon footprint, in order to mitigate the global warming own up to its social responsibilities. The following conversation will be mostly concerning this market.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/e33207d545d8bd970885d6ccbd6da910160e3af31a7f39ee17fdc969257b5537.png" alt="VCM Illustration" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">VCM Illustration</figcaption></figure><p>As of August 2021, VCM total trading volume exceed $785M in 2021 (circa. 239 million tons of CO2) with a historical total of $6.7B. <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.mckinsey.com/business-functions/sustainability/our-insights/a-blueprint-for-scaling-voluntary-carbon-markets-to-meet-the-climate-challenge#:~:text=annual%20global%20demand%20for%20carbon%20credits%20could%20reach%20up%20to%201.5%20to%202.0%20gigatons%20of%20carbon%20dioxide%20(gtco2)%20by%202030%20and%20up%20to%207%20to%2013%20gtco2%20by%202050%20(exhibit%202).%20">According to McKinsey</a>, demand for carbon offsets is expected to reach 1.5-2 gigatons in 2030 and soar to 7-13 gigatons by 2030, roughly doubling demand every 10 years; and due to various constraints, carbon offset production is expected to fall short of purchases in the medium term, in another word demand will outstripe supply.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/c2348e1d0676d558317eed9706a2688cb67738ce790958cc707e3c9b64f9dbc6.png" alt="VCM Market Size" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">VCM Market Size</figcaption></figure><p><strong>Main participants in the VCM are:</strong></p><ol><li><p>Project developers - Represent upstream participants who invest capital to build emission reduction projects that generates carbon offsets. These projects need to be certified via recognized voluntary emission reduction standards, such as Verra&apos;s Verified Carbon Standard, to calculate the intended tonnage of carbon emission reducts and be certified for sale.</p></li><li><p>Downstream buyers - These are mainly the private companies mentioned earlier, who have the willingness and financial resources to purchase carbon offsets to meet the company&apos;s carbon neutral plan, to fulfill their social responsibility and to be accountable to investors and regulators.</p></li><li><p>Wholesalers and intermediaries - Each represents a different set of market participants. Wholesalers buy and package large quantities of carbon emissions and sell them to downstream sellers or intermediaries for a profit, while intermediaries sell them at a markup by distributing them to retail buyers.</p></li></ol><p>It’s worth noting that sale price per ton is not the same for every carbon reduction projects, they can be further categorized and prices based on country of origin, type of projects, certification standard, and certification time. As you can see from the chart below, the price of carbon offsets are not equal across continents, this is a unique aspect of carbon ffset pricing.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/069ee04bdf907a7b689ce703a621c3553c1928a9344b9ff64918ac6d921f3a4b.png" alt="Average price of carbon offset" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">Average price of carbon offset</figcaption></figure><p><strong>There are generally three types of carbon reduction project:</strong></p><ol><li><p><strong>Emission Avoidance Projects</strong> - aimed at avoiding carbon dioxide emissions altogether. This includes project that most of us are familiar with: Wind, hydro and solar power projects, as well as carbon reductions from conservation projects such as Reduced Deforestation and Prevention of Forest Degradation (REDD+) under the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.fao.org/redd/zh/">UN REDD+ framework</a>. For example, Verra-certified forest conservation projects are certified under this mechanism, which calculates the amount of carbon emissions that can be absorbed by an area of forest, if left unlogged and retained as is, to certify the projected carbon reductions/ offsets.</p></li><li><p><strong>Emission Reduction Projects -</strong> where it’s not possible to completely avoid carbon emissions, take measurements to reduce energy consumption to achieve emission reduction. An example of this is <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://cookstoveproject.org/">The Cookstove Project</a>. In today’s world, underdeveloped communities still rely on cutting down trees to collect firewood to fulfil basic need i.e. boiling water and cooking. The Cookstove Project come to these communities and build free cookstoves to improve the efficiency of firewood burning, thus reducing the amount of firewood consumed for cooking, and reducing the quantity and cycle of logging, thereby reducing emissions.</p></li><li><p><strong>Emission Removal Projects</strong> - including reforestation and afforestation, and <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.iea.org/fuels-and-technologies/carbon-capture-utilisation-and-storage">carbon capture, utilization and storage (CCUS)</a>, directly remove CO2 from the atmosphere.These high-tech projects require large start-up and operating capital and long payback periods, so they are mostly large-scale government led projects.</p></li></ol><h2 id="h-verra-verification-standards" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Verra Verification Standards</h2><p>As one of the certification standards for the Voluntary Carbon Market, Verra is a US based non-for-profit organization that developed the Verified Carbon Standard (VCS), a certification standard to approve and certify greenhouse gas emission reduction project. Proposed GHG reduction project needs to complete the follower steps to obtain certificated VCUs (Verra Carbon Units). Note at this stage, VCUs is the only asset which can be used to mint BCTs.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/9f9f8eef8850de2f8bc2f4271496b1da11b8896b76d6bcedba4dfe159eb168cd.png" alt="The VCS Project Cycle: Step by Step" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">The VCS Project Cycle: Step by Step</figcaption></figure><p>Now we have roughly covered how the current carbon market works. We can expect that VCM will only grow bigger in terms of demand and trade; carbon reduction has to go though Verra or other certification standards to obtain certified carbon emission reduction ( Carbon Offset), which then can be bought by individuals, companies and organizations in need of such offsets. Carbon offsets can be awarded from three types of projects (avoidance, reduction and removal), and other informations such as countries of origin and year of certification etc will have an impact on the price of carbon offsets. These information is critical to help understanding and analysing BCT/ KlimaDAO.</p><h2 id="h-the-origin-of-klimadao" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">The Origin of KlimaDAO</h2><p>If we understands that the backing asset behind OlympusDAO (<a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.coingecko.com/en/coins/olympus">OHM</a>) is DAI, the same minting mechanism also applies to KilmaDAO, new KilmaDAO (<a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.coingecko.com/en/coins/klima-dao">KLIMA</a>) mint would be backed by Base Carbon Tonne (BCT), a unit based on carbon emission reduction tonnage. Every KilmaDAO (<a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.coingecko.com/en/coins/klima-dao">KLIMA</a>) will and must be backed by a BCT, this is the fundamental logic behind its intrinsic value.</p><p>BCT is made up of TCO2 tokens ( ERC-721 token) that was minted via uploading Verra VCUs to <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://toucan.earth/">Toucan Protoco</a>l on Polygon, the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://docs.toucan.earth/protocol/bridge/tco2-toucan-carbon-tokens">TCO2 token</a> is then further fractionalised and deposited into Toucan’s Carbon Pool that holds a basket of different TCO2 tokens. (If we recall that every VCUs are priced differently, so is TCO2 as they merely represent the VCUs on-chain via Toucan. ) Toucan’s Carbon Pool will mix all TCO2s deposited and minted a fungible ERC-20 token called Base Carbon Tonne (<a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.coingecko.com/en/coins/toucan-protocol-base-carbon-tonne">BCT</a>).</p><p>To understand what KilmaDAO aim to achieve, we can read below abstract from KlimaDAO <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://klimadao.medium.com/klima-dao-as-a-liquidity-engine-3a806ce5d3d5">official Medium page</a>:</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/a986ec02fd7363e1509753627eccb1f67db47289a70dd3725fb68c8fe6e5be8f.png" alt="KlimaDAO Mission Statement" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">KlimaDAO Mission Statement</figcaption></figure><p>This is quite a radical but refreshing idea. It reminds of of the book <em>Homo Dues</em> <em>by Yuval Noah Harari,</em> Yuval mentioned that the limitation of tribal thinking makes it difficult for humans to think and make sense of the issues facing all of us, one of such issue is global warming and its profound impact to our future. There has also been a recent proposal on MakerDAO forum on the same topic, the author pointed out that climate related issue at its core, is a result of us (humans) chasing short-term gain over long term interest of humanity. And to <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://forum.makerdao.com/t/the-case-for-clean-money/10684#:~:text=%20only%20one%20option%20that%20can%20rise%20to%20meet%20this%20existential%20risk.%20we%20must%20harness%20the%20most%20powerful%20and%20ancient%20tool%20of%20our%20species%3A%20the%20power%20of%20money.">address this core issue</a>, it is suggested that a problem (climate issue) created by money needs to be resolved by money as well.</p><p>KilmaDAO’s approach is rather straightforward, buying up all the carbon offsets in VCM to 1) encourage more carbon emission reduction projects based on higher demand and higher profit, and 2) force carbon emission companies to find other ways to reduce or avoid emissions in order to save money, given that KilmaDAO buys up the supply and drive carbon offset price up.</p><p>I do think KlimaDAO earned its right to test the market in such way, and I’m not here to question how realistic is their goal and whether their approach is the best solutions. The idea of buying up all carbon offsets in the market to drive a fundamental shift of market sentiments toward carbon emission may be naive and imperfect, however, I believe at least some real money will go towards actually reducing carbon emission, just like every other charity project (from what I heard, 70% fund goes to the fundraising team and less than 30% went to the people in need, but I could be wrong though this topics deserves another piece in itself) .</p><p>So what are we doing when we buy KilmaDAO? Was this an action of investing or charity donation? This is up to each individual to decide, <strong>I’m here to answer my own question - whether KilmaDAO would qualify for an good investment, and to answer this question I must understand if BCT holds value to the market.</strong></p><h2 id="h-bct-valuation" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">BCT Valuation</h2><p>An an unofficial on-chain version of Verra’s VCUs via Toucan Protocol, BCT is valuable if someone is willing to purchase it for meeting their carbon emission reduction target (as previously mentioned, the VCM market will continue to grow so demand will unlikely fall short), then BCT has perceived value and in terms, KilmaDAO as a “black hole“ accumulating BCT is stacking value for its own token KLIMA.</p><p>At this stage, BCT can only be minted by depositing VCUs to Toucan’s Carbon Pool and VCUs are only applicable to the Voluntary Carbon Market (VCM), we can conclude that the Compliance Carbon Market (CCM) participants has no inventive or obligation to purchase them.</p><p>So the potential customer of BCT is essentially limited to companies, organizations and individuals participating in the VCM. <strong>Will they buy BCT for their carbon neutral mission?</strong></p><p>Let’s take a look at Microsoft’s <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://query.prod.cms.rt.microsoft.com/cms/api/am/binary/RE4MDlc">carbon removal purchase</a> and the logic and criteria behinds its purchase for an answer to our question. Microsoft is relevant here as it was <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://www.tanpaifang.com/tanjiaoyianli/2014/0707/34827.html">penalised back in 2014</a> for over-emission in China and released <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://blogs.microsoft.com/blog/2020/01/16/microsoft-will-be-carbon-negative-by-2030/">carbon negative plan</a> in early 2020, which was well celebrated. With $161B reported revenue in 2021, Microsoft is strategically place and financially equipped to really shake up the VCM in its lukewarm state, therefore this is a perfect case study.</p><p>In 2021, Microsoft purchased in total 1.3M cubic tonne of carbon offsets/ reduction that are generated solely from Emission Removal Projects, bypassing emission reduction and avoidance project all together. The reason being:</p><blockquote><p>We could no longer rely as heavily on carbon registries to validate project quality, because their standards were designed almost exclusively to measure and verify the claims of projects that avoid or reduce emissions, and we experienced a lack of consistency in how the standards address key criteria.</p><p>-Abstract from report</p></blockquote><p>Microsoft has also categorized projects based on their lifespan, and noted that most carbon offsets purchased to date was short-term projects (project lifespan &lt; 100 years) , in the future procurement will be focused on long term projects (project lifespan &gt; 1000 years).</p><p>Based on the certification standards, I make a quick chart to visualised what Microsoft had purchased. We can observe that 60% procured carbon offset came through <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://www.offsetguide.org/understanding-carbon-offsets/carbon-offset-programs/voluntary-offset-programs/american-carbon-registry/">American Carbon Registry (ACR)</a> Standards, next big chunk (23%) is offsets with no certification and VCS (Standards behinds VCUs) makes up 8%. ACR is another VCM certification standards that evaluates mostly US domestic project, where Verra contains mostly project originated in South East Asia and South America.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/1b33b31c0570488f9d10435d4d2af92d32ad9a4d3c619136e91f6942a81595c4.png" alt="Carbon Offsets allocation based on certification standards" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">Carbon Offsets allocation based on certification standards</figcaption></figure><p>Below is what I gathered:</p><ol><li><p>When purchasing carbon offsets, Microsoft takes a systematic approach with detailed evaluation criteria (as one can expect), and evaluate procurement on base by case basis.</p><p>Firstly, the quality issue behind various VCM certification standards was highlighted from the very beginning. These certification standards are designed and managed by various entities, e.g. ACR and Verra are most well-known. But their assessment process varies and some projects were certified purely on the basis of <strong>“ projected carbon emission reduction</strong> “. <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.theguardian.com/environment/2021/may/04/carbon-offsets-used-by-major-airlines-based-on-flawed-system-warn-experts">The Guardian reported</a> specifically on this matter, where they tracked 10 Verra certified projects and found that these projects were all certified using different methods (really should be the same methods) and questioned manipulation of data to achieve end result.</p></li><li><p>Microsoft clearly defined its future procurement will be targeting long-term projects (project lifespan &gt; 1000 years), due to constraint today most carbon offsets procured to date came from short-term projects (project lifespan &lt; 100 years), i.e. afforestation, reforestation, and forest protection projects.</p><p><strong>Long term projects</strong> are carbon removal projects that utilising scientific and technological methods to remove carbon in the atmosphere, non-labour intensive methods such as <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.climatecouncil.org.au/resources/what-is-carbon-capture-and-storage/">carbon capture and storage (BECCS)</a> and <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.wakefieldbiochar.com/science-of-biochar/">Biochar etc</a>. However, these technologies are not mature enough as of now and the cost is extremely high and the effectiveness remains a mystery. Additionally there are no certification standards applicable for them. Microsoft had only purchased 6000 cubic tonnes from this category (4% of total)</p><p>The reason behind avoiding <strong>short-term projects</strong> in the future is the challenge facing maintenance and the fact that, certification process is high subjective. Take an example of forest protection project with average 10-30 years project lifespan, there need to be as dedicated project team to carry our various maintenance tasks, and if for some reason they couldn’t continue or change their plan to purchase other interest, it is really hard to prolong these project and the legitimacy of the carbon offsets produced will be in doubt.</p><p>In addition, after examining Verra’s documents I discovered that there is a long of “wiggle room” to gain certification. Firstly, Any project can start applying for Verra certification since launch and claim maximum of 10 years worth of projected carbon offsets and start trading on Verra Register. And after 10 years, no re-assessment is required to claim for another 10 years worth for a maximum of 30 years to claim since project inception. What needs to be stressed here is: no re-assessment required to obtain new projected carbon offsets. Essentially the older the project, the harder it is to ensure authenticity of the offsets. This is also the reason behind Toucan Protocol does not accept carbon offsets prior to 2008 on-chain.</p><p>Secondly, Verra projects are indeed subject to human influence when it comes to certification. Verra non-for-profit organization only provides the certification criteria (VCS) and the certifier of a given project is done by a team of third party consultants, who is engaged and hired by the project owner. Yes, the certifier (Party B) is hired by the project (Party A), which is a huge Red Flag and conflict of interest. The certifier is supposed to monitor whether the certified carbon reduction project meets the standards set by Verra without taking a position, but in reality he is paid by the project and has other future business tied to his “performance” today. I find it hard to believe that any certifier would put up any &quot;roadblocks&quot; in getting a project certified under these circumstances.</p></li><li><p>Lastely, I guess Microsoft bought 60% of its carbon emissions from ACR, and most of its N/A (no certification standards) projects based US, with some geopolitical considerations. As a listed US company, it is wise to pick US based projects when there is really no great options in the market. The pressure of public opinion and regulation from within the United States will be most relevant to Microsoft. In the rising era of Political Correctness (PC), any climate related negative exposure will have a real impact on their share price and public image. This is fundamental behind Microsoft’ carbon removal purchase and therefore, US domestic projects will remain top of the list in the near future.</p></li></ol><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/43017892c46597c05ebab328fa633fbb6e37163780f4fb592a19e4e15994ac5b.png" alt="We all love PC principal " blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">We all love PC principal</figcaption></figure><p>Now let’s take a look at BCT and how it might fit into Microsoft’s procurement criteria? <strong>The short answer is it does NOT fit in</strong> and I’ll address this point by point.</p><ol><li><p><strong>No.</strong> BCT can only be generated via VCS at this stage, which makes up 8% of the prochase. This portion is further reduced as Microsoft purchased offsets from Emission Removal Projects exclusively, which means applicable BCT is reduced as well. As mentioned before, BCT is a fungible token without specific project detail and attributes in it, and only represent a base tonnage of Toucan’s Carbon Pool containing carbon offsets from projects of varying quality, one cannot buy them on case on case basis.</p></li><li><p><strong>No.</strong> The problem remains a Verra related problem. Verra certified projects are mostly short term and are flawed in the eyes of Microsoft. This is reflected by the percentage of projects with no certification (23%) weights in higher than Verra certified projects (7%)😓.</p></li><li><p><strong>No.</strong> Most Verra projects originated from South East Asia (China, India, Indonesia) and South America ( Brasil, Peru) , and has minimum exposure to US domestic projects. This is possibly due to the fact that there are many certification standards within US so the choices are plentiful, and many projects likely have off market buyer so there is no need for a public sale for its carbon offsets.</p></li></ol><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/1cfd5773d37fbbd97b7b2aabe890ee6bc381cc41d9f4707be67c5b73f992d19a.png" alt="Verra Project Origin" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">Verra Project Origin</figcaption></figure><p><strong>Couple more points I’d like to add:</strong></p><p>Verra has stated on its website that the carbon offsets listed in Verra Registry <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://verra.org/project/vcs-program/registry-system/verified-carbon-units-vcus/#:~:text=vcus%20cannot%20be%20transferred%20to%20other%20databases%20or%20traded%20as%20paper%20certificates.%20"><strong>“Cannot be transferred to other database or trade as paper certificates“</strong></a><strong>,</strong> which means its “on-chain equivalent” BCT is not guaranteed or recognized by Verra. Please do note this with caution when buying BCT to offset carbon emission.</p><p>Also at this stage, BCTs can only be minted via depositing VCUs, but BCTs cannot be redeemed for VCUs in reserve, this feature is still being developed by Toucan Protocol. Even if we assume that BCTs can be used to redeem VCUs in the future, there exist a possibility of exploits when we know older carbon offsets are questionable, hence less valuable; a speculators can buy these older, unwanted carbon offsets from VCM and deposit into Toucan’s Carbon Pool and use the minted BCT to redeem “fresh” VCUs that are less than 2 years old and profit from this. This is worrying because the Carbon Pool/ BCT will be striped of fresh and valuable VCUs and hold a bag of older, unwanted, “expired” VCUs.</p><p>We take another step back to say, Toucan/ BCT can fix this by changing its mechanism. But the VCUs are not perpetual in nature and are prone to expiry due to the concept of <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://secondnature.org/climate-action-guidance/purchasing-carbon-offsets-faqs/#:~:text=standards%20mentioned%20above.-,what%20does%20vintage%20year%20mean%3F,-The%20vintage%20year">Vintage Year</a>. So that in essence, KlimaDAO is purchasing and hoarding an expiring, depreciating asset as its backing asset, and mint KLIMA on 1:1 ratio, I can only conclude this plan is questionable at the very least.</p><h2 id="h-summary" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Summary</h2><p>In summary at this stage, the value and legitimacy of BCT and the future of KlimaDAO is closely correlated, when the question and concerns I have on BCT, I am in the view that KilmaDAO is in the same dilemma. KilmaDAO at its current state, is at best a Proof of Concept and need to withstand the test of time to see how the future will playout.</p><h2 id="h-three-suggestions-for-kilmadao" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Three Suggestions for KilmaDAO</h2><ol><li><p>Allow other form of carbon offsets to mint KLIMA, and leverage its trading volume to engage the VCM participants, incl. certifier, clients regulatory bodies.</p></li><li><p>Work with Toucan and improve Carton Pool minting mechanism, perhaps auto-burn the older and soon-to-expired VCUs in the pool. This way BCT will be baked with fresher VCUs and temporarily alleviate deflation rate.</p></li><li><p>Invest in real carbon reduction projects in a open book maner to control the quality of its carbon offsets.</p></li></ol><p>Thank you for reading my thoughts to the end :)</p><hr><h3 id="h-you-can-also-check-out-below-protocols-that-are-on-the-same-mission-to-revolutionise-the-vcm" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">You can also check out below protocols that are on the same mission to revolutionise the VCM.</h3><ul><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.regen.network/">Regen Network</a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://twitter.com/Changeblock_io">Changeblock</a></p></li></ul><h3 id="h-extended-reading" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">Extended reading</h3><ol><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://microsoft%20carbon%20removal%20lessons%20from%20an%20early%20corporate%20purchase/">Microsoft carbon removal - Lessons from an early corporate purchase</a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://colab.research.google.com/drive/1DqVFQ3Vr9dtLcaxsrtOivZNCFZR2dOno?usp=sharing#scrollTo=tTlCtRvyCB5S">VCU Registry + Toucan Analysis (v1)</a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://klimadao.medium.com/klima-dao-as-a-liquidity-engine-3a806ce5d3d5">KlimaDAO</a> Medium</p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://mck.co/2MH0Sfa">A blueprint for scaling voluntary carbon markets to meet the climate challenge</a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://forum.makerdao.com/t/the-case-for-clean-money/10684">The case for Clean Money</a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.theguardian.com/environment/2021/may/04/carbon-offsets-used-by-major-airlines-based-on-flawed-system-warn-experts">Carbon offsets used by major airlines based on flawed system, warn experts</a></p></li></ol>]]></content:encoded>
            <author>tonysays@newsletter.paragraph.com (Tony Says)</author>
        </item>
        <item>
            <title><![CDATA[BanklessCN S3 - Governance Proposal]]></title>
            <link>https://paragraph.com/@tonysays/banklesscn-s3-governance-proposal</link>
            <guid>SC6INb8rm8HBY0WYRR8R</guid>
            <pubDate>Sun, 19 Dec 2021 04:36:43 GMT</pubDate>
            <description><![CDATA[If you are new to BanklessDAO and our SubDAO BanklessCN, here is a little introduction: BankelssDAO or bDAO https://www.notion.so/Getting-Started-with-BanklessDAO-259defe59a384cc0aff7c69e7b1d18fe BanklessCN - a subDAO project under the bDAO Translator’s Guild to engage Chinese readers. https://0xbanklesscn.substack.com/Season 2 RecapSince inception of BannkelssCN (a subDAO under bDAO) late October 2022, we have achieved our seasonal goal of: Fulfilling Translators Guild Season 2 KPI target fo...]]></description>
            <content:encoded><![CDATA[<p>If you are new to BanklessDAO and our SubDAO BanklessCN, here is a little introduction:</p><p><strong>BankelssDAO or bDAO</strong></p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.notion.so/Getting-Started-with-BanklessDAO-259defe59a384cc0aff7c69e7b1d18fe">https://www.notion.so/Getting-Started-with-BanklessDAO-259defe59a384cc0aff7c69e7b1d18fe</a></p><p><strong>BanklessCN -</strong> a subDAO project under the bDAO Translator’s Guild to engage Chinese readers.</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://0xbanklesscn.substack.com/">https://0xbanklesscn.substack.com/</a></p><h2 id="h-season-2-recap" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Season 2 Recap</h2><p>Since inception of BannkelssCN (a subDAO under bDAO) late October 2022, we have achieved our seasonal goal of:</p><p><strong>Fulfilling Translators Guild Season 2 KPI target for funding;</strong></p><ul><li><p>Establish the media node</p></li><li><p>Maintain translation and publication for all Weekly Roll-ups and Decentralized Art</p></li><li><p>100% month to month growth in terms of audience and subscriber number.</p></li></ul><p><strong>Established official publication and distribution nodes across Twitter, Substack, 8btc, and more recently, Weibo and Wechat publication</strong></p><ul><li><p>Totals circa. <strong>600</strong> of readership; and</p></li><li><p>Planning for our first AMA session ETA early Jan 2022</p></li></ul><p><strong>Recruit and retained a small pool of active contributors to our little secluded channel.</strong></p><blockquote><p><em>One has to navigate through bDAO’s first guest → obtain guest pass → find our CN channel → “say hi” and read on-boarding documents → finally start contributing)</em></p></blockquote><p>All these have been done with sole support from Translator’s Guild’s grant (our budget for remuneration), there was no other external support and the growth is pretty much organic. Whilst this is an infant step toward our shared ambition (with Bankless) of “bringing one billion people into Crypto/ open finance“, this is a great achievement for BanklessCN (a subDAO under bDAO) and should be celebrated, <strong>so I want to take the time to say Thank you and show my gratitude to:</strong></p><ul><li><p>Season 1 contributor’s who has helped to demonstrate that the Chinese speaking community is capable of taking up translation tasks and provided high participation for the tasks from Translation Guild.</p></li><li><p>Season 2 contributors to date for your contributions and putting up with our disorganized on-boarding process and stuck with us thus far, and that you maintain a healthy discussion within the channel and a genuine interest in taking up and completing the tasks on time (for compensations that’s probably not matching your time spent).</p></li></ul><p>With a aforementioned strong foundation to end Season 2 soon, we gaze into Season 3 with the intention of further extending the output of Bankless, and better engaging contributors of different skillets to our DAO activities.</p><p>I have penciled down my thoughts below for a new Season 3 BanklessCN governance structure for discussion, per my season 2 proposal, this is a work-in-progress and all constructive feedbacks are welcomed.</p><h2 id="h-s3-banklesscn-governance-structure" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">S3 BanklessCN Governance Structure</h2><p>In Season 2, we’ve adopted a flat organization structure with some degree of centralization to Champion, albeit some inefficient and monotonous activities (translation tasks available only), for small operations it has worked so far. Please see schematic below for reference:</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/d0bb74be3012e67371f80149fa509800068647a5609d68eb056ab766f375fb71.png" alt="S2 Structure" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">S2 Structure</figcaption></figure><p>But is this structure really optimal and sufficient for a growing subDAO that aim to achieve great things?</p><p>Probably not. I observed some points that needed addressing:</p><ul><li><p>Translation works not enough for all contributors to participate</p></li><li><p>un-defined ownership leads to low accountability thus production rate suffers</p></li><li><p>Champion is somewhat un-supervised and has too much sayings in DAO operations</p></li></ul><p>There may be more but above is enough for me to conclude that 1) we need a structure in place and 2) extend our activities to suit people of different skillsets and retain talent via role creation and compensation structure.</p><blockquote><p><em>Further reading to how I came to this conclusion</em>.</p></blockquote><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.jofreeman.com/joreen/tyranny.htm">https://www.jofreeman.com/joreen/tyranny.htm</a></p><p>Through a couple weeks of on and of thinking, brainstorming, reading, scribbling, I’ve come up with a structure that, to the best of my current understanding and ability, may provide the clarity and stability needed for us over the short term (0-2 years).</p><p><strong>Below is an overall picture of the proposed governance schematic</strong></p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/cbb3f621fa0c28317563f939b99127126389f804ed731b892f45e02224f856c9.png" alt="S3 Structure Proposal" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">S3 Structure Proposal</figcaption></figure><h2 id="h-0-governance-broad" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">0. Governance Broad</h2><p>This function consist of involvement from 0.1 Translators Guild and 0.2 External Directors.</p><p><strong>0.1 Translator Guild</strong></p><p>Provide funding and general support and oversight of BanklessCN, afterall BanklessCN is a project initiative under the Translators Guild and the guild has facilitated the inception of BanklessCN by recruiting a language Champion in Season 2. .</p><p><strong>0.2 External Directors</strong></p><p>Do not participate in DAO’s day to day operation, only serves to provide advice on strategy and arbitrations when they arise. The ideal candidate is someone who is respected and experienced in the space.</p><h2 id="h-1-bankelsscn-core-team" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">1. BankelssCN Core Team</h2><p>We humans are social animals in core and through social and integration we achieve great things. In the context of DAO, however, structurelessness means the inevitable formation of small groups (some may call it elitism) will not be governed, nor would any form of accountability can be imposed upon them as they were never given authority/ legitimacy over what they do in the first place.</p><p>With clearly defined scope and boundary, we provide guidance and support to talents to empower the DAO and at the same time, there is a clear line in the sand.</p><p>The roles will require participation for the whole season.</p><p><strong>1.1 Coordinator A</strong></p><p>Champion for Season 3 and ultimately responsible for the success of our set goals. Point of contact for internal and external coordinations, day to day running of the DAO, manage Notion and other resources.</p><p>* Small budget allowance for posting bounty tasks.</p><p><strong>1.2 Coordinator B</strong></p><p>Basically assisting Coordinator A with the scope above.</p><p><strong>1.3 Project Team</strong></p><p>Consist of maximum 4 members to plan and execute pre-planned projects. Talents can apply individually or form a team and apply together.</p><p>* Small budget allowance for posting bounty tasks.</p><h2 id="h-2dao-activities" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">2.DAO Activities</h2><p><strong>2.1 Translation Job Board</strong></p><p>Our bread and butter tasks which covers translation of bDAO newsletters and other resources. Forms part of Translator Guild’s seasonal KPI.</p><p><strong>2.2 Bounty Board</strong></p><p>Project team and Coordinator team will be able to post tasks on this board and anyone with the right skill will be able to claim and complete the tasks for a reward.</p><p>This board will accommodate talents with diverse skill sets and get them started with working in a DAO.</p><p><strong>2.3 Pre-plan Project Board</strong></p><p>This board should display all projects planned by the project team showing progress and record of results.</p><p><strong>2.4 New Project Initiative</strong></p><p>If anyone feel the need to start a new project, they can post here and through community call or proposal/ votes, the community can decide whether or not this will go ahead.</p><h2 id="h-3dao-contributors" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">3.DAO Contributors</h2><p>This is the group of on-demand talent in the SubDAO that can take up the various roles and tasks. Depending on everyone’s availability, the interaction with DAO can be minimal (e.g. take up one task once in a while) or extensive (take up core team roles).</p><h2 id="h-summary" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Summary</h2><ul><li><p>Have a clear and inclusive team structure in place is key to organize and retain DAO’s most scarce resource - Telants.</p></li><li><p>Creation of multiple job broads to accommodate talents of diverse skillsets</p></li><li><p>Once-off task or fixed term commitments options to provide flexibility.</p></li></ul><p>DAO governance is a big topic and I don’t have it all figured out, hopefully thought try and error, collect feedback, improve and iterations, we will get a better understanding of the “Do’s“ and “Don’ts”.</p><p><em>Next topic would be budget proposal - to address the technicality of remunerations and allocation.</em></p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/dd7e7b28c8c08b0ec895ed523ac9bf8008bce147b9c2722f97691d1d7cb6ae5b.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure>]]></content:encoded>
            <author>tonysays@newsletter.paragraph.com (Tony Says)</author>
        </item>
    </channel>
</rss>