O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

Polyglot Ethereum - Smart Contracts for the Enterprise

Smart contracts require integration with legacy systems. It is not enough to say "we have enterprise blockchain"; if it is not integrated, you have nothing.

  • Entre para ver os comentários

  • Seja a primeira pessoa a gostar disto

Polyglot Ethereum - Smart Contracts for the Enterprise

  1. 1. Polyglot Ethereum Enabling Smart Contracts in Enterprises Mike Slinn January 16, 2018 World Crypto Economic Forum
  2. 2. Enterprises and Smart Contracts • Smart contracts require integration with legacy systems • Legacy systems dictate: o Integration points o Language bindings • IT policy dictates: o Security procedures o Approved technology
  3. 3. Its Not Enough to Say “We have enterprise blockchain” • What is the integration story? • If you can’t plug it in to existing systems you’ve got nothing
  4. 4. About Mike Slinn • Distinguished engineer • Expert witness • Operates ScalaCourses.com • Twitter: mslinn
  5. 5. Key Facts about Mike Slinn • Distributed computing focus • Wrote a book and an online course on security • Many computer languages (“polyglot”) • Produces business value by applying technology
  6. 6. Why Polyglot Smart Contracts? • To enable rule-based autonomous actions • …In large organizations and in society
  7. 7. Goal • To develop libraries and frameworks that support the integration needs of large organizations • To incorporate smart contracts / rule-based actions into supply chains o that interact with other entities (including humans). • Ethereum is not a requirement
  8. 8. Historically • Polyglot projects often become that way due to legacy system integration requirements. • The only way smart contracts / rule-based autonomous actions can be triggered or take action is by integrating the rules engine / Ethereum distributed system with whatever devices and systems need to be interacted with.
  9. 9. I have developed • A proof of concept that features multiple polyglot shells which can perform arbitrary processing via user input via consoles. • These shells share a common region of memory; any number of shells, in a variety of languages, can execute programs using the most desirable frameworks and bindings. • Inter-process communication is also possible
  10. 10. This means • Distributed systems can now be built that are 'best of breed' ... the best framework for the job, called from a program written in the best language for the job, and able to interact with other programs written in other languages.
  11. 11. The POC • Does not demonstrate all the concepts I have in mind yet • I intend to further develop and document the remainder in response to customer demand • I am ready to apply the lessons learned into projects
  12. 12. Libraries I Am Working With (1/3) • web3.js – JavaScript API for JSON-RPC • web3j – Java implementation of web3.js • web3j-scala – My idiomatic Scala wrapper for web3j
  13. 13. Libraries I Am Working With (2/3) • cli-loop – My polyglot console integrating Java and Scala code with interactive JavaScript, Python and Ruby (more languages possible). • consuela –100% Scala JSON-RPC. • sbt-ethereum – Essentially consuela, wrapped into an SBT Plugin (most Scala programmers use SBT as a full-featured Scala REPL).
  14. 14. Libraries I Am Working With (3/3) • beth - My Better ETHereum client using the above, also incorporating vert.x and Docker. • Goal: support distributed polyglot State Channels. • For example, ML projects often require Python, while enterprise projects often require JVM (Java, Scala, etc.)
  15. 15. Looking For Opportunity • Can work with or advise organizations using Ethereum / blockchain • Might found a startup or join an existing organization
  16. 16. Thank you! Mike Slinn mslinn@micronauticsResearch.com 650-678-2285