paint-brush
Explorando JavaScript e contratos inteligentes com o CEO da Agoric, Dean Tribblepor@saragpinto
1,502 leituras
1,502 leituras

Explorando JavaScript e contratos inteligentes com o CEO da Agoric, Dean Tribble

por Sara Pinto16m2022/05/03
Read on Terminal Reader
Read this story w/o Javascript

Muito longo; Para ler

Neste tópico árduo, convidamos Dean Tribble, CEO da Agoric, uma empresa de desenvolvimento de código aberto. Dean tem perseguido uma visão de sistemas de computadores em rede em grande escala por décadas. Discutimos JavaScript, contratos inteligentes e defi.

People Mentioned

Mention Thumbnail
Mention Thumbnail

Companies Mentioned

Mention Thumbnail
Mention Thumbnail

Coins Mentioned

Mention Thumbnail
Mention Thumbnail
featured image - Explorando JavaScript e contratos inteligentes com o CEO da Agoric, Dean Tribble
Sara Pinto HackerNoon profile picture

Neste AMA, tivemos o prazer de entrevistar Dean Tribble. Dean é o CEO da Agoric e teve uma vasta jornada em tecnologia ao se envolver em vários projetos de software e startups desde os anos 80. Ele tem perseguido uma visão de sistemas de computadores em rede em larga escala e isso o levou a contratos inteligentes.

Este tópico de Slogging de Sara Pinto, Dean Tribble, Dimitar Bochvarovski, Pawan Sharma, Mónica Freitas e Limarc Ambalina ocorreu no canal #amas oficial do slogging e foi editado para facilitar a leitura.

Sara Pinto 15 de abril de 2022, 16:00

Ei @channel, junte-se a mim para dar as boas-vindas ao nosso próximo convidado do AMA, Dean Tribble, o CEO da http://agoric.com . Agoric é uma empresa de desenvolvimento de código aberto que está lançando uma cadeia e economia Proof-of-Stake interoperável.

Sinta-se à vontade para perguntar a Dean qualquer coisa sobre:

  • Contratos inteligentes de JavaScript para melhor capacidade de composição
  • Dimensionando o web3 por meio de mais de 10 milhões de desenvolvedores JavaScript em todo o mundo
  • Reduzindo vulnerabilidades comuns de contratos inteligentes
  • Construindo uma economia na indústria de finanças descentralizadas (DeFi)


👋 4
2
🎉 2
Dean Tribble 15 de abril de 2022, 16h01

Olá! Obrigado por me receber!

Sara Pinto 15 de abril de 2022, 16h01

Ei Dean Tribble, é ótimo ter você aqui conosco. Podemos começar com você nos contando um pouco sobre seu passado?

Dean Tribble 15 de abril de 2022, 16h14

Tive meu primeiro emprego no computador quando tinha 15 anos, minha primeira startup (financiada pelo fundador da Atari, Nolan Bushnell) quando tinha 17. Portanto, trabalho com software e startups desde os anos 80. Muito disso tem sido na construção de sistemas distribuídos em larga escala.

Dean Tribble 15 de abril de 2022, 16h06

Tenho buscado uma visão de sistemas de computadores em rede em grande escala por literalmente décadas. Trabalhei na Xerox PARC (com alguns de meus colegas aqui na Agoric) nas primeiras linguagens de programação distribuída segura e sistemas operacionais. As promessas modernas em JavaScript e RUST descendem desse trabalho. Então fui trabalhar com hipertexto (antes da web) em Xanadu. Em algum lugar lá em 1989, trabalhei no primeiro contrato inteligente de produção (sim, 5 anos antes de Vitalik nascer 🙂.

Dean Tribble 15 de abril de 2022, 16h07

Desde então, trabalhei em muitos sistemas de grande escala, desde os primeiros sistemas de informações de corretagem em Java até meu show anterior de um instrumento de pagamento multibilionário. Normalmente, trata-se de trazer novas tecnologias ao mercado para permitir que mais estranhos cooperem com mais sucesso!

Dean Tribble 15 de abril de 2022, 16h08

Em primeiro lugar, foi isso que me levou aos contratos inteligentes: “o software que impõe os termos de um acordo semelhante a um contrato entre várias partes” permite muito mais cooperação no mundo. Todos os negócios, do eBay e PayPal ao AirBNB e Lyft, são esse tipo de negócio.

Dean Tribble 15 de abril de 2022, 16h10

Todos eles exigem um intermediário confiável e, como sabemos, nem sempre são confiáveis 🙂. Mas então veio o blockchain que permite que computadores independentes em diferentes jurisdições executem o mesmo software e verifiquem o trabalho uns dos outros e, de repente, você pode administrar negócios de contratos inteligentes sem o intermediário confiável. Foi isso que me levou a construir uma infraestrutura de contrato inteligente para a próxima geração de blockchains. E aqui estamos nós 🙂

Dean Tribble 15 de abril de 2022, 16h13

Isso me faz perceber que pulei a Sun e a Microsoft lá.

Dean Tribble 15 de abril de 2022, 16h15

Nos anos 90, no Sun Labs, tínhamos um projeto para construir uma plataforma de contrato inteligente. Essa é uma grande parte do trabalho inicial de design que levou aos elementos da plataforma de contrato inteligente JavaScript da Agoric.

Dean Tribble 15 de abril de 2022, 16h16

Na Microsoft, fui arquiteto do sistema operacional Midori (pesquisa), um sistema operacional de pesquisa que usa a mesma abordagem de arquitetura baseada em mensagem/ocap/promessa aysnc que agora usamos no Agoric vm/kernel.

Dimitar Bochvarovski 15 de abril de 2022, 16h12

Que carreira 🙂

🔥 3
Dimitar Bochvarovski 15 de abril de 2022, 16h18

Por que JavaScript? Quer dizer, eu pessoalmente sou um desenvolvedor Web e uso JS no meu dia a dia, e é a linguagem que não troco por mais nada, mas há muita discussão sobre os problemas que vêm com o JS, como tipos dinâmicos e a facilidade de cometer erros com o gerenciamento de memória...

Dimitar Bochvarovski 15 de abril de 2022, 16h19

E eu sou um grande fã de Kyle Simpson, para mencionar. Ele tem cursos interessantes para recursos de objeto em js

Dean Tribble 15 de abril de 2022, 16h19

Eu amo essa pergunta porque tem respostas surpreendentes e não surpreendentes.

Dean Tribble 15 de abril de 2022, 16h22

A resposta nada surpreendente está no “…é a linguagem que não troco por mais nada…”. 13,9 milhões de desenvolvedores! Quero ver mais cooperação no mundo, e os contratos inteligentes são uma ferramenta incrivelmente poderosa para ajudar isso a acontecer. Para que isso importe, porém, ele deve estar disponível para a maioria dos programadores do mundo. Não é de grande ajuda se, para construir um contrato inteligente, você tiver que rezar para o sacerdócio de 10 mil caros desenvolvedores do Solidity. É mais fácil encontrar um bom advogado e fazê-lo à moda antiga! Então, nos propusemos a encontrar os desenvolvedores onde eles estão e capacitá -los a criar contratos inteligentes.

👍 1
Dean Tribble 15 de abril de 2022, 16h27

A resposta surpreendente é que o JavaScript é mais seguro do que a maioria das outras linguagens de programação, devido em grande parte às contribuições de nosso cientista-chefe, Mark Miller. Ele está direcionando os elementos necessários para o JavaScript de nosso trabalho anterior de linguagem segura desde o início. Seu artigo de 2015 sobre criptografia financeira em “Instrumentos financeiros baseados em capacidade” mostrou exemplos na linguagem de programação E que agora você pode escrever em JavaScript no Agoric.

🔥 1
Dean Tribble 15 de abril de 2022, 16h33

A razão pela qual o JS é mais seguro também é em parte um acidente da história: a linguagem JS foi padronizada no ECMA, enquanto o ambiente de host do navegador foi padronizado no W3C. Isso corresponde a uma separação de modo de usuário/modo de sistema necessária para sistemas operacionais seguros. Você nunca viu um limite de design tão bem defendido quanto os comitês defendem seu território 😄. Portanto, a única maneira de um programa/módulo/qualquer coisa JS obter autoridade para qualquer coisa no sistema é se ele for colocado no objeto global usado para avaliação. No navegador, esse global inclui

 document
tal, enquanto no nó, o global inclui
 fs
e
 process
e similar. Mark e outros mantiveram JS nesse caminho. E com alguns recursos adicionais (por exemplo,
 freeze
) somos capazes de avaliar o código JS (por exemplo, no blockchain ou em servidores) onde a única autoridade que obtém é para serviços específicos que fornecemos Não pode chegar ao sistema de arquivos, rede, etc.

Dean Tribble 15 de abril de 2022, 16h35

esse é o “JavaScript endurecido”. É de código aberto, disponível para web2 e web3 em https://github.com/endojs/endo e executado em qualquer ambiente JS padrão. É a espinha dorsal da carteira de próxima geração da MetaMask, usada no AppExchange da Salesforce e, claro, usada para nossa plataforma de contrato inteligente.

1
Sara Pinto 15 de abril de 2022, 16h19

Dean Tribble, isso é incrível! Você teve uma jornada e tanto. Eu tenho que perguntar, em nome do pessoal não tão experiente em tecnologia, você poderia elaborar contratos inteligentes no blockchain? E o que você quer dizer com composição?

Dean Tribble 15 de abril de 2022, 16h44

Quanto ao que é um contrato inteligente: “software que impõe os termos de um acordo semelhante a um contrato entre várias partes”. Isso! Portanto, eBay, PayPal, Lyft e StubHub são, em grande parte, negócios de contratos inteligentes implantados por um “intermediário confiável”. Portanto, os contratos inteligentes eram de $ 1T + valor de mercado *antes* do blockchain. Contamos com os intermediários para executar fielmente seu software, e a maioria das transações ocorre sem qualquer envolvimento humano da empresa de hospedagem.

Dean Tribble 15 de abril de 2022, 16h46

Esses negócios decolaram muito mais rápido, uma vez que havia boas bibliotecas e plataformas para compor rapidamente novos negócios sem codificar tudo do zero (por exemplo, shopify, stripe, etc. todos os componentes fornecidos que os desenvolvedores poderiam reutilizar).

Dimitar Bochvarovski 15 de abril de 2022, 16h51

Por que foi tão difícil criar um "código que pode ser executado no blockchain", que é o contrato inteligente em geral (corrija-me se eu estiver errado), e precisávamos esperar que o Ethereum viesse com isso solução?

Dean Tribble 15 de abril de 2022, 16h52

Mas meu exemplo de modelo de componente favorito está no espaço da interface do usuário (afinal, trabalhei em interfaces do usuário como estagiário no grupo Smalltalk no PARC). Antes do React/vue/etc., os especialistas podiam construir algumas coisas bem legais em JavaScript. MAS é um pesadelo depurar aplicativos sofisticados escritos em HTML/JS bruto (ainda me lembro da minha última tentativa de depurar por que a taxa de imposto de alguma página de compra não estava mudando quando o usuário mudou seu código postal). O React fornece uma estrutura de componentes para componentes de interface do usuário que aborda completamente muitos dos problemas difíceis na construção de UIs sofisticadas e, além disso, permite que os componentes criados por várias partes funcionem muito bem juntos.

Dean Tribble 15 de abril de 2022, 16h54

O resultado é que logo após o lançamento do React, novos desenvolvedores podem criar aplicativos mais sofisticados, seguros, responsivos e úteis do que os especialistas no ano anterior ao React. Isso é o que uma estrutura de componentes oferece a você.

Dean Tribble 15 de abril de 2022, 16h58

Nosso objetivo é uma estrutura que forneça o mesmo tipo de suporte, mas para contratos inteligentes que lidam com ativos digitais, preços etc. (em vez de usar cliques e renderização). Em plataformas como a Ethereum, existem riscos de segurança que são francamente de alto risco para especialistas em criptografia, quanto mais para programadores de aplicativos apenas tentando resolver seus problemas de negócios. Nossa estrutura foi projetada para proteger os desenvolvedores desses perigos.

Dean Tribble 15 de abril de 2022, 17h02

Portanto, um contrato inteligente não é “código que pode ser executado em uma blockchain”, já que havia $ 1T+ de valor em contratos inteligentes antes das blockchains!

🙏 1
Dean Tribble 15 de abril de 2022, 17h04

O próprio Bitcoin é um contrato inteligente; é um software que impõe regras para transferência de BTC. É o primeiro contrato inteligente que não precisava de um intermediário confiável.

Dean Tribble 15 de abril de 2022, 17h07

Eth trouxe suporte para rodar o software de outras pessoas. Havia alguns requisitos para isso. O padrão ouro da blockchain é

vários computadores em diferentes jurisdições e diferentes domínios administrativos, todos chegando a um consenso sobre dados, escolhas e computação.

Vou descompactar isso e depois falar sobre por que é importante 🙂.

Pawan Sharma 15 de abril de 2022, 17h12

Ei, Dean Tribble, você poderia explicar um pouco sobre a segurança da oferta na Agoric e ela reembolsa o ativo original mais a taxa de transação ou apenas o ativo original?

Dean Tribble 15 de abril de 2022, 17h13

vários computadores em diferentes jurisdições e diferentes domínios administrativos, todos chegando a um consenso


Significa que nenhum ser humano, organização ou governo pode alterar unilateralmente o comportamento do sistema. Eles teriam que comprometer simultaneamente a maioria das máquinas (que são controladas por outras partes) para comprometer a integridade da computação.

sobre dados, escolhas e computação.

Dados: “Reitor tem $ 100 em sua conta”
Escolhas: “Dean tentou retirar sua oferta antes do encerramento do leilão. Ele ganhou o leilão e gastou o dinheiro ou conseguiu o dinheiro de volta?”
Cálculo: “o leilão decorreu e determinou que Dean seria o vencedor”

Dean Tribble 15 de abril de 2022, 17h20

A nova parte técnica difícil é “tudo chegar a um consenso”. Se você conhece todos os computadores (você não conhece) e pode confiar em todos eles para não trapacear (você não pode), então sabemos como contar votos e garantir que seja a maioria. A área de tolerância a falhas bizantinas abrange o tratamento do “e se eles trapacearem”. O insight mais brilhante no BitCoin foi como abordar o consenso quando você não conhece todos os computadores participantes.

Dean Tribble 15 de abril de 2022, 17h25

Finalmente, para que todos os computadores verifiquem se concordam, eles precisam realmente concordar! Portanto, o mesmo programa executado com os mesmos argumentos várias vezes em vários lugares deve produzir as mesmas respostas (isso é chamado de “determinístico”). Isso acaba sendo difícil! Se eles podem ver o relógio, eles podem se comportar de maneira diferente. Se eles puderem ver qualquer endereço de memória, eles podem se comportar de maneira diferente. Se eles puderem ver quando a coleta de lixo acontece,… você entendeu.

Dean Tribble 15 de abril de 2022, 17h29

Portanto, o Solidity tem muitos problemas e é de nível muito baixo, mas é executado de forma determinística. Nosso JavaScript reforçado permite que você execute JavaScript de forma determinista! Isso tornará tudo isso acessível a muito mais desenvolvedores

Dean Tribble 15 de abril de 2022, 17h35

Pawan Sharma pergunta sobre “oferecer segurança” em Agoric. Essa é uma das propriedades críticas da estrutura de contrato inteligente. Propriedades de segurança familiares são coisas como segurança de memória e segurança de tipo, onde elas eliminam completamente uma grande classe de bugs. Eles não resolvem tudo, mas podem tirar 80% dos bugs da mesa.

Dean Tribble 15 de abril de 2022, 17h38

Oferecer segurança é uma propriedade de segurança no nível econômico.

Primeiro, a configuração: nos sistemas de contrato inteligente de blockchains existentes, você executa transações enviando dinheiro para um “número aleatório” (um endereço de conta) e esperando que algo bom aconteça. As pessoas enviaram (e perderam) ativos para “endereços” que não eram contas reais, que eram contas erradas, para contratos que falharam etc. Esse modelo é propenso a erros e uma interação horrível do usuário. Quero enviar dinheiro para meu amigo John, não para 0x234ag3453.

Dean Tribble 15 de abril de 2022, 17h52

O negócio real envolve quid pro quo: “Eu te darei $ X se você me der o ingresso do show Y”. Apoiamos isso diretamente. Portanto, em nossa API, os clientes invocam contratos inteligentes fazendo

 offer
s. Cada oferta diz o que eles
 want
, o que eles vão
 give
para, e em que circunstâncias eles podem
 exit
com seus bens. Os pagamentos nessa oferta vão para a própria estrutura e NÃO para o contrato inteligente. A única maneira de o contrato inteligente obter os ativos é fornecer os ativos que a oferta deseja.

Dean Tribble 15 de abril de 2022, 17h59

Então, como é a segurança da oferta para um leilão?

  • o vendedor faz uma oferta para o contrato inteligente do leilão em que deseja pelo menos $ 40 e dará um ingresso para o show X
  • cada licitante faz uma oferta em que pretende o bilhete do concerto X, e um valor correspondente à sua licitação.

Zoe detém todos os ativos e notificou o contrato de cada oferta. Quando o leilão fecha, o contrato do leilão atomicamente

 reallocates
o ingresso do show para o licitante vencedor e o dinheiro do licitante vencedor para o vendedor. Essa realocação terá sucesso se o lance vencedor for suficiente para o vendedor e se o ingresso do show for de fato o que o licitante apostou.

Nenhum mau comportamento, bug, etc. por parte do contrato de leilão pode permitir que ele receba dinheiro dos licitantes que não estão recebendo o ingresso do show.

🔥 1
Dean Tribble 15 de abril de 2022, 18h01

Isso significa que os clientes do leilão estão MUITO mais seguros. Eles não precisam ler o código do leilão para saber que receberão o ingresso desejado ou o dinheiro de volta.

Dean Tribble 15 de abril de 2022, 18h02

Além disso, o criador do contrato de leilão também está feliz: muitos dos perigos em Solidity estão relacionados ao manuseio de dinheiro que você não deveria segurar. Houve literalmente $ 1 bilhão + perdidos / roubados devido ao manuseio desleixado da devolução de dinheiro de contratos. Com Zoe e oferece segurança, você não precisa escrever uma única linha de código no contrato para lidar com isso com segurança.

Dean Tribble 15 de abril de 2022, 18h09

Uma propriedade relacionada é “vivacidade de pagamento”: lembre-se de que cada off tem um

 exit
como parte de seus termos. O padrão para isso (que você convenientemente não precisa especificar) é “sempre que eu quiser; é o meu dinheiro caramba!“. Bem, é chamado de “OnDemand” 🙂 Isso significa apenas que você pode sair quando quiser e, novamente, nenhum bug ou comportamento malicioso por parte do contrato pode atrasar a saída da oferta e a recuperação de seus ativos. Observe, no entanto, que “seus ativos” podem estar após algumas realocações já terem ocorrido. Se sua oferta foi “comprarei até N ingressos para X moola”, então ele já pode ter realocado alguns desses N para você e recebido dinheiro por eles, de acordo com o
 want
que você especificou. Mas uma vez que seu sinal de saída chega, Zoe puxa seus ativos e os devolve a você sem que o contrato interfira. Da mesma forma, se o contrato falhar, travar, etc. Zoe sairá de sua oferta. É impressionante quanto dinheiro é involuntariamente “bloqueado” em contratos em que os usuários não têm como reaver seu dinheiro!

Sara Pinto 15 de abril de 2022, 18h13

Dean Tribble, muito obrigado por sua resposta detalhada! E as vulnerabilidades dos contratos inteligentes? Como podem ser reduzidos?

Pawan Sharma 15 de abril de 2022, 18h21

Dean Tribble Ótima explicação!!

🙏 1
Dean Tribble 17 de abril de 2022, 20h50

Para formas de reduzir vulnerabilidades de contratos inteligentes, discutimos

  • oferecer segurança
  • vivacidade de pagamento


Formas críticas adicionais:

  • acoplamento assíncrono para evitar reentrada
  • reutilização de componentes para evitar a reimplementação de tudo


Dean Tribble 17 de abril de 2022, 20h58

Na Ethereum e em outras cadeias (mais recentemente na PolyNetwork), bilhões em perdas vieram da “reentrada”. É aí que, se houver 2 componentes (ou contratos), A planeja chamar B e então fazer algo X, mas B chama de volta para a (reentra em A) antes que possa chegar a X. Por exemplo, A é um leilão, um B solicita um reembolso do lance. B diz "me envie meu reembolso", e então A procura, e envia o reembolso para B, e então registra que deu um reembolso para B. MAS quando B recebe o reembolso, em vez de responder "obrigado", ele envia imediatamente a mensagem “envie-me um reembolso” para A novamente. Como A ainda não registrou que B recebeu seu reembolso, ele segue em frente e envia o reembolso novamente . E, novamente, B reage a isso com “me envie um reembolso”. O serviço A nunca chega ao ponto de registrar que B recebeu seu reembolso, então B apenas faz isso até esgotar a conta de A. Parece absurdo quando dito assim, mas esse foi exatamente o bug em 2017 que fez as pessoas se perguntarem se a tecnologia por trás da Agoric poderia ajudar o blockchain. E uma exploração de $ 660 milhões no ano passado foi o mesmo problema básico. É porque a arquitetura do Eth permite, suporta e até requer reentrância.

Dean Tribble 17 de abril de 2022, 21:00

O modelo agórico é fundamentalmente assíncrono, o que significa que quando A envia uma mensagem para B, ele não fica esperando que B faça algo. Ele segue em frente e termina de gravar o que precisa gravar. Isso significa que exemplos triviais não são tão triviais, mas também significa que exemplos não triviais (como DeFi) não estão repletos de riscos à segurança.

Mónica Freitas 18 de abril de 2022, 11h22

Olá Dean Tribble! Ótimo ter você conosco! Quais você diria que são os principais desafios quando se trata de construir uma economia em DeFi?

Sara Pinto 18 de abril de 2022, 14h20

Oh, eu vejo. Obrigado por explicar, Reitor Tribble. A reentrada pode causar muitos problemas. Existe alguma maneira de saber quando estamos lidando com um sistema de reentrância?

Dean Tribble 18 de abril de 2022, 16h48

relocação; faz parte da arquitetura do sistema e, portanto, não pode ser ocultado por diferentes linguagens ou bibliotecas auxiliares. Um sistema no qual as chamadas entre contratos ou componentes do contrato são chamadas de retorno (A chama B e aguarda a resposta) são quase sempre reentrantes. Se enquanto A está ligando para B (“ei, pegue meu reembolso”), outra pessoa pode ligar para A, provavelmente é reentrante. As arquiteturas que não usam mensagens assíncronas (como agoric) ou apenas têm semântica limitada (como, por exemplo, Kadena).

Dean Tribble 18 de abril de 2022, 16h55

re desafios na construção de uma economia em DeFi

  • construindo uma plataforma sólida, é claro. Estamos terminando isso agora.
  • iniciando a liquidez. Os mercados funcionam porque há dinheiro de alguma forma fornecendo graxa para as engrenagens. Os crentes precisam trazer essa “graxa” na frente para que seja fácil para os usuários negociarem uns com os outros, em vez de lutar com o sistema.
  • navegando em questões regulatórias. 'nuff disse.
Sara Pinto 18 de abril de 2022, 22h27

Dean Tribble, que tal escalar o web3 por meio de desenvolvedores JavaScrip? O que você quer dizer com isso? Agoric está trabalhando em algo?

Dean Tribble 19 de abril de 2022, 1h29

É o cerne do que estamos trabalhando. Muitas pessoas falam sobre escalar a velocidade da transação, o tamanho do bloco ou a latência. Mas a coisa mais difícil de escalar é a base de desenvolvedores. Para alcançar uma comunidade significativamente maior de desenvolvedores, não podemos esperar que eles abandonem suas linguagens e ferramentas atuais e trabalhem em outra linguagem de programação. Devemos “encontrá-los onde eles estão”.

Dean Tribble 19 de abril de 2022, 1h30

Assim com agórico:

  • desenvolvedor na linguagem de programação mais popular do planeta
  • usando os ambientes e ferramentas de desenvolvimento mais populares
  • com modelos de programação com os quais eles estão familiarizados (loops de eventos com promessas, componentes de estilo de reação, etc.)
Dean Tribble 19 de abril de 2022, 1h33

Os detalhes são importantes (por exemplo, JavaScript com execução assíncrona e outros), mas também é importante que a prioridade seja capacitar os desenvolvedores que desejam apenas fazer algo. Nossa plataforma deve crescer como JS e Node: desde o início, porque permite que os programadores façam as coisas! :)

Dean Tribble 19 de abril de 2022, 1h33

Meu objetivo é que “se você pode construir um aplicativo web2 para a nuvem, você pode construir um aplicativo web3 para agoric”. É cedo, então ainda não chegamos lá, mas chegaremos.

Limarc Ambalina 19 de abril de 2022, 2h08

Olá, Dean Tribble, obrigado por se juntar a nós! Minha pergunta é: por que código aberto? Quais são os benefícios e contras desse modelo e como os prós superam os contras?

Dean Tribble 19 de abril de 2022, 3h46

Muitas razões para o código aberto.

Motivação pessoal: Tive a oportunidade de trabalhar em alguns projetos incríveis. O problema é que alguns dos mais incríveis não foram lançados e, portanto, essa parte da minha vida foi divertida, interessante, mas, no final das contas, muito menos tempo valioso gasto. Muito do que estamos fazendo é finalmente construir uma versão de código aberto de tecnologia realmente útil que construímos em várias encarnações, mas não conseguimos levar adiante facilmente em novos projetos.

Dean Tribble 19 de abril de 2022, 3h48

Motivação cultural: JavaScript é um mundo amplamente de código aberto. E queremos muitos componentes reutilizáveis. Historicamente, esse tipo de reutilização floresce melhor em um ambiente de código aberto: os desenvolvedores sabem que outros desenvolvedores estão indo para a mesma pilha de tecnologia para componentes, então é onde eles irão construir e contribuir com seus componentes.

Dean Tribble 19 de abril de 2022, 4h03

E, finalmente: o valor principal do blockchain é a alta integridade por meio da descentralização: os contratos inteligentes são executados em vários computadores administrados por operadores independentes em diferentes jurisdições. Se todos eles estiverem executando o mesmo software de código fechado, não obteríamos essencialmente nenhuma descentralização. Os implementadores são uma única fonte de falha. E realmente precisa crescer em código de propriedade da comunidade. Isso realmente só funciona com código aberto.

Sara Pinto 19 de abril de 2022, 16h40

Isso é um embrulho! Muito obrigado por estar aqui respondendo nossas perguntas, Reitor Tribble. Você tem alguma ideia final ou há algo que gostaria de promover?

Dean Tribble 19 de abril de 2022, 17h09

Estaremos lançando nossa “mainnet1” para fornecer um token estável apoiado pela comunidade para o ambiente interchain. Venha participar com a comunidade em http://agoric.com/discord e inscreva-se na newsletter e http://agoric.com/newsletter ! E se você for um desenvolvedor web2, confira endojs. Obrigado por me receber!

🔥 1
Dean Tribble 19 de abril de 2022, 17h16

E, claro, nossos canais de anúncios Agoric,
Telegram ( https://t.me/agoric_ann ) e Twitter ( https://twitter.com/agoric ).

🔥 1