aragon / nest

A grants program to support the development of the ecosystem
https://aragon.org/project/grants
Creative Commons Zero v1.0 Universal
140 stars 78 forks source link

Connect DAOs to centralized systems #186

Closed matteoscurati closed 4 years ago

matteoscurati commented 4 years ago

Aragon Nest Proposal: Connect DAOs to centralized systems

Abstract

DAOs are already here, enabling a brand new way to think and run organisations and communities. So… why only a few use them? We think that the adoption curve isn’t as steep as we would like (also) because it’s hard for the average developer to connect those DAOs with the centralized technologies the world is based on right now. DAOs’ members, depending on their role in the DAO, will for sure rely also on centralized technologies for doing their job or getting things done. So the question is: who’s going to connect DAO’s trustless components with the rest of the IT world? The tool we're building enable to integrate Aragon with the centralized systems on which our economic system is currently based (APIs, Apps, CRMs, ERPs, emails, e-commerces) or create hybrid ecosystems based both on centralized and decentralized technologies, in no time, through a simple web interface.

The product

Our tool will allow also non-techie DAO members, crypto developers and “average” companies to create triggers→actions workflows based on:

  1. Watch a Contract - State changes of specific smart contracts’ variables. It can be based on a timer (time trigger, i.e. send me that variable-state every 2 minutes), any change (trigger me whenever that value changes) or on specific values (trigger me when that value is higher than X). What we do is basically calling view solidity functions/getters.
  2. Watch a Transaction - Triggers based on Ethereum transactions to smart contracts even without events (supporting multi-filters to any parameter of any function called, also on arrays’ elements)
  3. Watch an Event - Triggers based on Ethereum Events (this is something also other projects are doing, actually)

Actions will include sending all the decoded data (with custom templates):

  1. To a webhook
  2. Via email (also the “To” field can be picked up from a custom variable, so not-crypto companies will be able to notify the order signer via email with one line of solidity code)
  3. Via Telegram message

Developers will also be able to create workflows via GraphQL APIs without using the web form. Therefore the same application could create a trigger automatically and get back a notification with detailed data when the trigger is triggered. The result? Any application can integrated with Aragon without running nodes, polling new blocks/txs and dealing/filtering/decoding/storing transactions and state changes.

Our proposal: Use cases

See the attached PDF

Deliverables

  1. A web interface to create/active/deactive triggers and read the logs/audit any action execution
  2. A documented GraphQL API to create/active/deactive triggers and read the logs/audit any action execution
  3. A SaaS deployment to run the above
  4. A guide (with tutorials) for non-crypto developers on how to interact with Aragon DAOs and connect them with their centralized applications

Grant size

Chunk 1 - $20k in DAI - Deliverable enabling See the use cases 2, 6, 7, 9, 10, 13 Chunk 2 - $20k in DAI - Deliverable enabling use cases 1, 3, 4, 5, 11, 12, 14, 15, 16 Chunk 3 - $17k in DAI - Deliverable enabling use cases 8 + "Notify Aragon communities"

Success reward: Up 6k ANT, given out when all deliverables are ready.

Team and commitment

Matteo Scurati – 38yo – Fullstack developer – He studied Philosophy in Milan.  He has been for years the CTO of BookRepublic, leading the Italian digital publishing industry transformation and working with more than 150 publishers. Matteo is involved in the JAMstack community, working right now in DatoCMS, one of the most used headless CMS. He’s also a senior backend developer (Ruby, Php, Elixir). https://www.linkedin.com/in/matteoscurati/

Manlio Poltronieri – 29yo – Backend developer – He studied Philosophy in Milan and computer science in London (Imperial College). He’s worked as backend developer at “The Guardian” for 2 years. He has strong skills in Scala, Python and Java. https://www.linkedin.com/in/manliopoltronieri/

Alessio Biancalana – 29yo – Frontend Developer – Full stack web developer, with particular proficiency in Elixir, JavaScript (React.JS, Node.JS) and Python. https://www.linkedin.com/in/alessiobiancalana/

Sofia Girelli – 28yo – Visual Designer – She now works at Frank Studio (Milan) after many years at Frog Design. https://www.linkedin.com/in/sofia-girelli-softer-a4549163/

Marco De Rossi – 29yo – Product Manager – He’s the founder of WeSchool.com, largest Italian digital school platform, used by 2M students and 80k teachers. He has been a journalist and a digital marketing consultant. He’s also a developer (Python, Php and Solidity). https://www.linkedin.com/in/marcoderossi/

Overall commitment (please tell us if you need phase to phase details): 7.5 months FTE of Backend development, 4 months FTE of Frontend development, 3 months FTE for Product Management & PM, 1 month FTE for the Visual design of the frontend

Tech stack

Golang, Node.JS and React.JS

Development timeline

The delivery timeline will be the following one in regards to each deliverable:

  1. Jan 2020 (Deliverables described in Chunk 1)
  2. Mar 2020 (Deliverables described in Chunk 2)
  3. Apr 2020 (Deliverables described in Chunk 3)
pythonpete32 commented 4 years ago

Basic email notifications was introduced in 0.8 but a much more sophisticated push notification system is something I'd love to see. I really like how granular the notifications would be.

A few questions come to mind:

How would the project sustain its self after the third phase?

Do you envision this being a paid service?

Have you started working on a proof of concept?

matteoscurati commented 4 years ago

Hi @pythonpete32 !

How would the project sustain its self after the third phase?

We'd like to launch a general purpose tool for creating workflows on Ethereum and we plan to sell it as a SaaS

Do you envision this being a paid service?

No, what's developed for this grant proposal and what's described in the PDF will always be free for Aragon DAOs, since it's built with the help of the community

Have you started working on a proof of concept?

Yes, we can schedule a call to show you what we've done till now. Or we can share the backend repo we're working on.

Looking forward to getting your feedback about the proposal and the use cases! I'm curious! :-)

yeqbfgxjiq commented 4 years ago

Initial Impression

This looks interesting. Integrating with more traditional organizations and business cases is something that is top of mind for Aragon.

General Questions

I don't see a website or GitHub organization for this project.

Which Aragon applications? Aragon is a platform. There are currently a 10-20 official applications and dozens more unofficial applications. Which of these do you plan to support and for how long? How will your platform adapt to changes Aragon applications and/or new Aragon applications that are brought to market?

Why Telegram?

Deliverables

A web interface to create/active/deactive triggers and read the logs/audit any action execution

Have you started on this yet? Do you have examples of other web interfaces that you've built or design sketches you can share?

A documented GraphQL API to create/active/deactive triggers and read the logs/audit any action execution

Would this be open source?

A SaaS deployment to run the above

What would be the features of this SaaS deployment? Why would people pay for this? What features would Aragon get for free, for life, if we funded this grant?

A guide (with tutorials) for non-crypto developers on how to interact with Aragon DAOs and connect them with their centralized applications

Please describe exactly what this would include:

Grant Size

This would need to be re-written to correlate to specific deliverables that are designed and specified ahead of time. Ideally this would look like:

Business Model

Circling back to @pythonpete32's question: "How would the project sustain its self after the third phase?" One of our main goals with the Nest program is to provide activation energy for projects to get started, but then from there we want them to have a sustainable business model so that they are not reliant on Aragon treasury funding. If you're selling a SaaS product that would be great as it would create incentives for you to maintain and upgrade the product. With this in mind, where can we see the website for your product/company, what is your go-to-market plan to attract customers, and does your team have experience in non-development roles (sales, marketing, biz dev)?

Note: the Nest repo README states: "We are not interested in funding startups or monetizable solutions." We are actively working to redesign the Nest program and there is a high likelihood that this restriction will be lifted soon, but at the moment we are unable to fund for-profit projects.

matteoscurati commented 4 years ago

Hi @burrrata, thank you for your questions! Answers below:

Initial Impression

This looks interesting. Integrating with more traditional organizations and business cases is something that is top of mind for Aragon.

Yeah, that's in our opinion one of the key points in the road to adoption.

General Questions

  • If you're building a SaaS product, do you have website describing the company/product? Does your team have experience with sales and do you have a go-to-market strategy?

We don't have a public website yet, nor a detailed go-to-market strategy. Yes, our founding team has also experience in sales (around €1m in the last year including, among the clients, six €1b+ revenue companies) and digital marketing (16,22m Google Analytics unique users in the last year). Please drop me a line to matteo.scurati@gmail.com to get details about these metrics.

  • Have you started building this yet? If so, is or will your code be open source? If so, please share a link to the GitHub org. If not, why?

Yes, we started building that. We have 3 repos:

Everything in currently in GitHub private repos, we just shared "Zoroaster" to give you a taste of what we're doing/we'd like to do (Pythagoras and Plato are too premature to be shared).

Zoroaster and Pythagoras will be open-sourced because we want to grow up with the help of the community (and viceversa) and we'd like to have dozens of companies leveraging on our technology. We haven't decided yet about Plato.

Which Aragon applications? Aragon is a platform. There are currently a 10-20 official applications and dozens more unofficial applications. Which of these do you plan to support and for how long? How will your platform adapt to changes Aragon applications and/or new Aragon applications that are brought to market?

We used "app" because that's the terminology used in Aragon's repos. Right now we refer to the official Aragon app mentioned in our Proposal. We don't have yet a specific plan about covering other official Apps and unofficial Apps. Our goal is, thanks to the grant, to deliver a working software and get feedback from the community (e.g. which unofficial App would be useful to support, etc). We don't think it's a good idea to define an "App to be supported" roadmap at this stage.

Why Telegram?

Because the blockchain community loves that (we too). But if you look at what the non-techie companies we'd like to help use, FB Messenger is definitely more popular :-/ Open to discuss on this point, also because even if endpoints to interact are different, the "one-way only bot logic" is similar, so we could code an abstraction layer/wrapper and support them both. Let's discuss.

Deliverables

A web interface to create/active/deactive triggers and read the logs/audit any action execution

Have you started on this yet? Do you have examples of other web interfaces that you've built or design sketches you can share?

We just shared with you a repo with our design/sketches. If you need references of already-implemented web interfaces by our team, please write to matteo.scurati@gmail.com. Or if you prefer we could update the repo I shared with also our portfolio.

A documented GraphQL API to create/active/deactive triggers and read the logs/audit any action execution

Would this be open source?

Yes, see above.

A SaaS deployment to run the above

What would be the features of this SaaS deployment? Why would people pay for this? What features would Aragon get for free, for life, if we funded this grant?

SaaS deployment will

We plan to offer a free tier to everybody to help developers to play and interact with Ethereum (connecting their centralized apps with Ethereum, etc). If they need to go at a production level (= many actions/workflows executed every month) we plan to charge a fee proportional to the amount of executed actions.

Any user creating a trigger on a smart contract which is part of an Aragon DAO official-repo deployment will get unmetered/free actions on that trigger. We're still finding out if implementing this automatically (checking the deployment transaction or comparing the bytecode) or with a self-declaration.

A guide (with tutorials) for non-crypto developers on how to interact with Aragon DAOs and connect them with their centralized applications

Please describe exactly what this would include:

  • technical docs?
  • user guides?
  • tutorial videos?
  • infographics?
  • support team that customers can contact for help?
  • interactive demos?

We refer to a specific page (tutorial) for every use case. Every page would include a step-by-step user guide (text + screenshots). We don't plan to create infographics or interactive demos, nor to setup a customer support service (it would be super-costly).

Grant Size

This would need to be re-written to correlate to specific deliverables that are designed and specified ahead of time. Ideally this would look like:

Milestone 1 - January 2020

Enable these use cases:

To achieve these goals, milestone 1 includes:

Milestone 2 - March 2020

Enable these use cases:

To achieve these goals, milestone 2 includes:

Milestone 3 - April 2020

Enable these use cases:

Milestone 3 includes:

Business Model

Circling back to @pythonpete32's question: "How would the project sustain its self after the third phase?" One of our main goals with the Nest program is to provide activation energy for projects to get started, but then from there we want them to have a sustainable business model so that they are not reliant on Aragon treasury funding. If you're selling a SaaS product that would be great as it would create incentives for you to maintain and upgrade the product.

Yep, that's the idea!

With this in mind, where can we see the website for your product/company, what is your go-to-market plan to attract customers, and does your team have experience in non-development roles (sales, marketing, biz dev)?

Our team has a strong experience in biz dev with small and large clients and in non-development roles (see above mkt and sales KPIs, if you need details look at our bios or drop us a line via mail).

Note: the Nest repo README states: "We are not interested in funding startups or monetizable solutions." We are actively working to redesign the Nest program and there is a high likelihood that this restriction will be lifted soon, but at the moment we are unable to fund for-profit projects.

That's not the case, as described in our answers above.

BTW, we also have a question for you. How does this relate to https://t.co/DbLQkQGbks? Why not interacting with Aragon Chain in a future step? What do you think?

yeqbfgxjiq commented 4 years ago

Happy to answer questions and help you adjust your proposal to make it a good fit for the nest program. That being said, I'm not going to email you to retrieve basic information that should be included in your proposal from the start.

We plan to offer a free tier to everybody to help developers to play and interact with Ethereum (connecting their centralized apps with Ethereum, etc). If they need to go at a production level (= many actions/workflows executed every month) we plan to charge a fee proportional to the amount of executed actions.

This sounds like you're building a SaaS product for Ethereum developers and plan to extend functionality to Aragon. If so, please build the general Ethereum product first, then if it's open source, circle back to get support integrating Aragon.

Any user creating a trigger on a smart contract which is part of an Aragon DAO official-repo deployment will get unmetered/free actions on that trigger. We're still finding out if implementing this automatically (checking the deployment transaction or comparing the bytecode) or with a self-declaration.

As mentioned, the amount of Aragon DAO templates and applications is growing fast. We expect that many of these newer models will be just as popular, if not more popular, than the current applications. If the only thing that Aragon gets out of this grant is free support for basic Aragon apps then that would not be enough.

Business Model:

BTW, we also have a question for you. How does this relate to https://t.co/DbLQkQGbks? Why not interacting with Aragon Chain in a future step? What do you think?

Please provide a direct link to whatever it is you are linking to.


Overall, I see a lot of unknowns around this proposal:

These unknowns would have to be addressed before the proposal could be seriously considered.

hanani8 commented 4 years ago

I, honestly, hope that you guys get funded, i have been looking for this kind of functionality(to integrate aragon with a centralized application) everywhere. I hope that even if you are not funded you would build that product. I'll be following you guys.

On Sun, Oct 13, 2019 at 10:56 PM Matteo Scurati notifications@github.com wrote:

Aragon Nest Proposal: Connect DAOs to centralized systems Abstract

DAOs are already here, enabling a brand new way to think and run organisations and communities. So… why only a few use them? We think that the adoption curve isn’t as steep as we would like (also) because it’s hard for the average developer to connect those DAOs with the centralized technologies the world is based on right now. DAOs’ members, depending on their role in the DAO, will for sure rely also on centralized technologies for doing their job or getting things done. So the question is: who’s going to connect DAO’s trustless components with the rest of the IT world? The tool we're building enable to integrate Aragon with the centralized systems on which our economic system is currently based (APIs, Apps, CRMs, ERPs, emails, e-commerces) or create hybrid ecosystems based both on centralized and decentralized technologies, in no time, through a simple web interface. The product

Our tool will allow also non-techie DAO members, crypto developers and “average” companies to create triggers→actions workflows based on:

  1. Watch a Contract - State changes of specific smart contracts’ variables. It can be based on a timer (time trigger, i.e. send me that variable-state every 2 minutes), any change (trigger me whenever that value changes) or on specific values (trigger me when that value is higher than X). What we do is basically calling view solidity functions/getters.
  2. Watch a Transaction - Triggers based on Ethereum transactions to smart contracts even without events (supporting multi-filters to any parameter of any function called, also on arrays’ elements)
  3. Watch an Event - Triggers based on Ethereum Events (this is something also other projects are doing, actually)

Actions will include sending all the decoded data (with custom templates):

  1. To a webhook
  2. Via email (also the “To” field can be picked up from a custom variable, so not-crypto companies will be able to notify the order signer via email with one line of solidity code)
  3. Via Telegram message

Developers will also be able to create workflows via GraphQL APIs without using the web form. Therefore the same application could create a trigger automatically and get back a notification with detailed data when the trigger is triggered. The result? Any application can integrated with Aragon without running nodes, polling new blocks/txs and dealing/filtering/decoding/storing transactions and state changes. Our proposal: Use cases

See the attached PDF https://github.com/aragon/nest/files/3721952/Aragon_Nest_Proposal_Connect_DAOs_to_centralized.pdf Deliverables

  1. A web interface to create/active/deactive triggers and read the logs/audit any action execution
  2. A documented GraphQL API to create/active/deactive triggers and read the logs/audit any action execution
  3. A SaaS deployment to run the above
  4. A guide (with tutorials) for non-crypto developers on how to interact with Aragon DAOs and connect them with their centralized applications

Grant size

Chunk 1 - $20k in DAI - Deliverable enabling See the use cases https://github.com/aragon/nest/files/3721952/Aragon_Nest_Proposal_Connect_DAOs_to_centralized.pdf 2, 6, 7, 9, 10, 13 Chunk 2 - $20k in DAI - Deliverable enabling use cases https://github.com/aragon/nest/files/3721952/Aragon_Nest_Proposal_Connect_DAOs_to_centralized.pdf 1, 3, 4, 5, 11, 12, 14, 15, 16 Chunk 3 - $17k in DAI - Deliverable enabling use cases https://github.com/aragon/nest/files/3721952/Aragon_Nest_Proposal_Connect_DAOs_to_centralized.pdf 8 + "Notify Aragon communities"

Success reward: Up 6k ANT, given out when all deliverables are ready. Team and commitment

Matteo Scurati – 38yo – Fullstack developer – He studied Philosophy in Milan. He has been for years the CTO of BookRepublic, leading the Italian digital publishing industry transformation and working with more than 150 publishers. Matteo is involved in the JAMstack community, working right now in DatoCMS, one of the most used headless CMS. He’s also a senior backend developer (Ruby, Php, Elixir). https://www.linkedin.com/in/matteoscurati/

Manlio Poltronieri – 29yo – Backend developer – He studied Philosophy in Milan and computer science in London (Imperial College). He’s worked as backend developer at “The Guardian” for 2 years. He has strong skills in Scala, Python and Java. https://www.linkedin.com/in/manliopoltronieri/

Alessio Biancalana – 29yo – Frontend Developer – Full stack web developer, with particular proficiency in Elixir, JavaScript (React.JS, Node.JS) and Python. https://www.linkedin.com/in/alessiobiancalana/

Sofia Girelli – 28yo – Visual Designer – She now works at Frank Studio (Milan) after many years at Frog Design. https://www.linkedin.com/in/sofia-girelli-softer-a4549163/

Marco De Rossi – 29yo – Product Manager – He’s the founder of WeSchool.com, largest Italian digital school platform, used by 2M students and 80k teachers. He has been a journalist and a digital marketing consultant. He’s also a developer (Python, Php and Solidity). https://www.linkedin.com/in/marcoderossi/

Overall commitment (please tell us if you need phase to phase details): 7.5 months FTE of Backend development, 4 months FTE of Frontend development, 3 months FTE for Product Management & PM, 1 month FTE for the Visual design of the frontend Tech stack

Golang, Node.JS and React.JS Development timeline

The delivery timeline will be the following one in regards to each deliverable:

  1. Jan 2020 (Deliverables described in Chunk 1)
  2. Mar 2020 (Deliverables described in Chunk 2)
  3. Apr 2020 (Deliverables described in Chunk 3)

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/aragon/nest/issues/186?email_source=notifications&email_token=AHQOGHMWAXSKAD4ZSXGLKZ3QONK6DA5CNFSM4JAH27EKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HROLEWA, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHQOGHJSO63XAAHNBJYQWA3QONK6DANCNFSM4JAH27EA .

matteoscurati commented 4 years ago

Hi @burrrata !

Happy to answer questions and help you adjust your proposal to make it a good fit for the nest program.

Thank you for your time! :)

That being said, I'm not going to email you to retrieve basic information that should be included in your proposal from the start.

The names of the services/products we've built are in our proposal from the start. See below the direct links for your convenience.

  • A B2C team needs a way to reach customers and a plan to do so. This is critical. Please detail how you're going to do this.

We thought this was a development grant. If you need details about the go-to-market strategy of the future phases of the project (B2B, not B2C: i.e. developers and companies without blockchain know how willing to integrate Aragon with their centralized stack), please confirm this and we'll work with our team to submit what you asked.

  • If you've previously built products and web UIs that people use please provide direct links to them.

Previous UIs: DatoCMS: https://www.datocms.com/ WeSchool https://app.weschool.com (Demo account, since there are no public areas. Username: tammy.teacher@gfebd.com Password: google1234) WeSchool Library https://library.weschool.com/lezioni/scienze/matematica

--> Total amount of Google Analytics unique users of those UIs in the last year: more than 16 million

  • Please either make your code open source so that we can look at it or circle back once you're ready to do so.

Done! As described before we're working on 3 repos (Plato, Pythagoras and Zoroaster). Zoroaster is now public: https://github.com/HAL-xyz/zoroaster

This sounds like you're building a SaaS product for Ethereum developers and plan to extend functionality to Aragon. If so, please build the general Ethereum product first, then if it's open source, circle back to get support integrating Aragon.

No, the two things are indistinguishable: it's impossible to build something useful for "general Ethereum" and unuseful for Aragon. Yes, that's true, the Aragon product we're are asking a development grant for could be useful also for Ethereum in general. We think this is a pro, not a con, since the code will be open source and Aragon is part of the Ethereum community.

As mentioned, the amount of Aragon DAO templates and applications is growing fast. We expect that many of these newer models will be just as popular, if not more popular, than the current applications. If the only thing that Aragon gets out of this grant is free support for basic Aragon apps then that would not be enough.

Please provide specific suggestions (i.e. popular apps): we would be happy to improve our proposal considering new use cases and your point of view. In general: please don't think about our grant proposal as "solid-rock": tips from the community are valuable and we would be glad to shape our proposal using (also) your feedback.

Business Model:

  • Saying you're a SaaS company is not a business plan.
  • Saying that you have experience in biz dev and sales is not a go-to-market plan.

As above: we thought this was a development grant. If you need those details, please confirm this and we'll setup a process to deliver this.

BTW, we also have a question for you. How does this relate to https://t.co/DbLQkQGbks? Why not interacting with Aragon Chain in a future step? What do you think?

Please provide a direct link to whatever it is you are linking to.

The link we provided has no hidden-trackers, it's a Twitter shortner created by Jorge Izquierdo from Aragon in this tweet (https://twitter.com/izqui9/status/1182643743725215744). If you don't want to use it, please click directly here: https://blog.aragon.one/aragon-chain/

Overall, I see a lot of unknowns around this proposal:

  • unknown technical feasibility due to the evolving ecosystem of Aragon DAOs

Can you tell us more? Are you talking about Aragon Chain or something else?

  • unknown demand for this product from end users

Please provide specific feedback with reference to the list of use cases we submitted

  • unknown go-to-market and sales strategy

See our question above

These unknowns would have to be addressed before the proposal could be seriously considered

We did the best to give you detailed answers, if something is missing to seriously consider our proposal, please tell us.

We would be happy to fix that.

Thanks!

yeqbfgxjiq commented 4 years ago

Hey. Thanks for providing that info.

First, you're totally right about the link shortening. That was 100% a mistake on my part. Was doing a million things at once and made a mistake. Sorry.

Second, your UIs look great. Thanks for sharing those in an accessible format.

Third, business models are very important. The main reason is that we want to make sure that the project has a way to sustain itself. In the past Aragon has funded projects that have since been sunset, thus not realizing the value that we were hoping for. On the other hand, some projects have required ongoing infusions of capital to sustain their operations, and this is also not good. Understanding how you're going to sustain your business beyond this grant is essential to evaluate the risk associated with the product/service being provided.

As mentioned earlier in this thread, without a website, product, or customers it is very difficult for us to asses this proposal. If you're looking for a little support to build out an early prototype we recommend the CFDAO program. Otherwise, we encourage you to circle back once your product is more developed, but at this moment it's not a good fit for the Nest program. Best of luck with the project.