Brett Sun @sohkai Building Modular Organizations and the - - PowerPoint PPT Presentation

brett sun sohkai building modular organizations and the
SMART_READER_LITE
LIVE PREVIEW

Brett Sun @sohkai Building Modular Organizations and the - - PowerPoint PPT Presentation

Brett Sun @sohkai Building Modular Organizations and the governance structures underlying them Experiment at the speed of software Core Sandboxed app But thats not all Factory:


slide-1
SLIDE 1

🦆

@sohkai Brett Sun

slide-2
SLIDE 2

Building Modular Organizations

… and the governance structures underlying them

slide-3
SLIDE 3
slide-4
SLIDE 4

Experiment at the speed of software

slide-5
SLIDE 5

slide-6
SLIDE 6
slide-7
SLIDE 7
slide-8
SLIDE 8
slide-9
SLIDE 9
slide-10
SLIDE 10
slide-11
SLIDE 11
slide-12
SLIDE 12
slide-13
SLIDE 13
slide-14
SLIDE 14
slide-15
SLIDE 15
slide-16
SLIDE 16

Core Sandboxed app

slide-17
SLIDE 17

But that’s not all… ✨

slide-18
SLIDE 18
slide-19
SLIDE 19
slide-20
SLIDE 20

slide-21
SLIDE 21

slide-22
SLIDE 22

slide-23
SLIDE 23

Factory: https://github.com/aragon/dao-kits/blob/master/kits/beta/contracts/BetaTemplateBase.sol

slide-24
SLIDE 24

Permissions

Interface: https://github.com/aragon/aragonOS/blob/dev/contracts/acl/IACL.sol Implementation: https://github.com/aragon/aragonOS/blob/dev/contracts/acl/ACL.sol

Access Control List (ACL):

slide-25
SLIDE 25

Permissions

Using the ACL: auth()

Implementation: https://github.com/aragon/aragon-apps/blob/master/apps/voting/contracts/Voting.sol

slide-26
SLIDE 26

Forwarders

Interface: https://github.com/aragon/aragonOS/blob/dev/contracts/common/IForwarder.sol

Escalating requests to other modules:

slide-27
SLIDE 27

Forwarders

Implementation: https://github.com/aragon/aragon-apps/blob/master/apps/voting/contracts/Voting.sol

slide-28
SLIDE 28

EVMScripts

Interface: https://github.com/aragon/aragonOS/blob/dev/contracts/evmscript/IEVMScriptExecutor.sol Implementation: https://github.com/aragon/aragonOS/blob/dev/contracts/evmscript/executors/CallsScript.sol

slide-29
SLIDE 29

EVMScripts

Implementation: https://github.com/aragon/aragon-apps/blob/master/apps/voting/contracts/Voting.sol

Running a script: execScript()

slide-30
SLIDE 30

slide-31
SLIDE 31
slide-32
SLIDE 32

✨ by:

  • function hasPermission(


address who,
 address where,
 bytes32 what
 ) returns (bool);


  • function forward(bytes evmScript);
  • function execScript(bytes evmScript)


returns (bytes);

slide-33
SLIDE 33

Experiment at the speed of software

slide-34
SLIDE 34

hack.aragon.one

slide-35
SLIDE 35

Tutorial: https://hack.aragon.org/docs/tutorial.html

3 Steps to Governance

slide-36
SLIDE 36
slide-37
SLIDE 37
slide-38
SLIDE 38
slide-39
SLIDE 39
slide-40
SLIDE 40
slide-41
SLIDE 41
slide-42
SLIDE 42

💗

Thank you!

@sohkai

slide-43
SLIDE 43

https://www.youtube.com/watch?v=AqjIWmiAidw

Aragon - The Fight for Freedom

slide-44
SLIDE 44