SlideShare a Scribd company logo
© 2017 IBM Corporation
Blockchain Hyperledger Fabric & Composer
Meetup – Nov 20th 2017
Explained Solutions Architected ExploredComposed
Blockchain education series
NextSteps
V5.0
What is Hyperledger
Composer
Application Development
Writing the application
Modeling the business network
Effective Administration
Deploying to a blockchain
Interacting with systems of record
Contents
3
© 2017 IBM Corporation
Blockchain Recap
– Blockchain builds on basic business concepts
– Business Networks connect businesses
– Participants with Identity
– Assets flow over business networks
– Transactions describe asset exchange
– Contracts underpin transactions
– The ledger is a log of transactions
– Blockchain is a shared, replicated ledger
– Consensus, immutability, finality, provenance
4
© 2017 IBM Corporation
Hyperledger Composer: Accelerating time to value
Business Application
HyperledgerComposer
Blockchain(HyperledgerFabric)
– A suite of high level application abstractions for business networks
– Emphasis on business-centric vocabulary for quick solution creation
– Reduce risk, and increase understanding and flexibility
– Features
– Model your business networks, test and expose via APIs
– Applications invoke APIs transactions to interact with business network
– Integrate existing systems of record using loopback/REST
– Fully open and part of Linux Foundation Hyperledger
– Try it in your web browser now: http://composer-playground.mybluemix.net/
https://hyperledger.github.io/composer/
5
© 2017 IBM Corporation
Benefits of Hyperledger Composer
Increases
understanding
Saves
time
Reduces
risk
Increases
flexibility
Bridges simply from
business concepts to
blockchain
Develop blockchain
applications more
quickly and cheaply
Well tested, efficient
design conforms to
best practice
Higher level
abstraction makes it
easier to iterate
Extensive, Familiar, Open Development Toolset
CLI utilities
Data modelling JavaScript
business logic
Web playground
Editor support Existing systems and
data
$ composer
Client libraries
composer-client
composer-admin
Code generation
Swagger
7
© 2017 IBM Corporation
User Roles in a Blockchain Project
Application Developer
• Developing the application that interacts with the ledger
• Modelling the business network
• Implementing the script files that define transaction behaviour
Solution Administrator
• Provisioning the target environment
• Deploying the business application
• Managing the blockchain
Business Network Participant
• Running an end-user application that invokes transactions
• Aware of business concepts: assets, participants and transactions
• May not be aware of blockchain underpinnings
D
A
P
What is Hyperledger
Composer
Application Development
Writing the application
Modeling the business network
Effective Administration
Deploying to a blockchain
Interacting with systems of record
Contents
9
© 2017 IBM Corporation
Key Concepts for the Application Developer
D
Asset
Registry
P
Business
Network
Participants
develops
use
Participant
Registry
Transaction
Registry
Application
S
D
KPPAssets
develops
transaction
logic
defined in
invokes
transaction
model
Pdevelops
Developer
10
© 2017 IBM Corporation
Example: Vehicle Auction
D
Vehicle
Listing
Registry
P
Members,
Auctioneers
develops
use
Member
Registry
Transaction
Registry
Application
S
D
KPP
Vehicle
develops
transaction
logic
defined in
Place Offer
Close bidding
model
P
develops
Vehicle
Listing Vehicle
Registry
Auctioneer
Registry
Developer
11
© 2017 IBM Corporation
Developer Concepts
• A domain specific language
(.CTO) that defines the type
structure of
• Assets
• Participants
• Transactions
• Aims to match how we talk
about business networks in
the real world
• Scripts provide the
implementation of
transaction processor logic
• Specified in Javascript
• Designed for any reasonable
Javascript developer to pick
up easily
• Provides front-end for the user
• May require different
applications per participant
• Interacts with the registries
• Add, delete, update, query
• Registries persisted on
blockchain
• Connects to blockchain via
JavaScript client libraries (SDK)
or REST
Applications Models Scripts
12
© 2017 IBM Corporation
Vehicle
VIN
(References a) Member
Vehicle Listing
listingId, reservePrice,
description, state, offers[]
(References a) Vehicle
User
email, firstName, lastName
Member (extends User)
balance
Auctioneer (extends User)
Place Offer
bidPrice
(References a) listing, member
Close Bidding
(References a) listing
Place Offer
If listingis forsale, add offer
to this vehicle listing’s offers[]
Close Bidding
If reserve price met
Incrementseller’s balance
Decrementbuyer’s balance
Change ownerto buyer
Vehicle Auction
D
Vehicle
Listing
Registry
P
Members,
Auctioneers
develops
use
Member
Registry
Transaction
Registry
Application
S
D
K
PP
Vehicle
develops
transaction
logic
defined in
Place Offer
Close bidding
model
P
develops
Vehicle
Listing
Vehicle
Registry
Auctioneer
Registry
App
App App
Applications Models Scripts
13
© 2017 IBM Corporation
Tools: Composer Playground
– Web tool for defining and testing Hyperledger
Composer models and scripts
– Designed for the application developer
– Define assets, participants and
transactions
– Implement transaction processor
scripts
– Test by populating registries and
invoking transactions
– Deploy to instances of Hyperledger Fabric V1,
or simulate completely within browser
– Install on your machine or run online at
http://composer-playground.mybluemix.net
14
© 2017 IBM Corporation
Visual Studio Code Support
– Composer extension available for this popular tool
– Features to aid rapid Composer development
– Edit all Composer file types with full syntax highlighting
– Validation support for models, queries and ACLs
– Inline error reporting
– Snippets (press Ctrl+Space for code suggestions)
– Generate UML diagrams from models
– Install directly from Code Marketplace
15
© 2017 IBM Corporation
Creating the Application
– JavaScript applications require() the NPM
“composer-client” module
– This provides the API to access
assets, participants and transactions
– RESTful API (via Loopback) also available…
see later
– Command-line tool available to generate
skeleton command-line or Angular2
application from model
– Also helps with the generation of unit tests
to help ensure quality code
model
P
16
© 2017 IBM Corporation
Events and Queries
– Events allow applications to take action when a transaction occurs
– Events are defined in models
– Events are emitted by scripts
– Events are caught by applications
– Caught events include transaction ID and other relevant information
– Queries allow applications to perform complex registry searches
– They can be statically defined in a separate .qry file or generated
dynamically by the application
– They are invoked in the application using buildQuery() or query()
– Queries require the blockchain to be backed by CouchDB
17
© 2017 IBM Corporation
Access Control
– It is possible to restrict which resources can be read
and modified by which participants
– Rules are defined in an .acl file and deployed
with the rest of the model
– Transaction processors can also look up the
current user and implement rules
programmatically
– ACL rules can be simple (e.g. everybody can read all
resources) or more complex (e.g. only the owner of an
asset can do everything to it)
– Application supplies credentials (userid/secret) of the
participant when connecting to the Fabric network
– This also applies to Playground!
– Remember to grant System ACL all access if
necessary
18
© 2017 IBM Corporation
Debugging
– Playground Historian allows you to view all transactions
– See what occurred and when
– Diagnostics framework allows for application level trace
– Uses the Winston Node.js logging framework
– Application logging using DEBUG env var
– Composer Logs sent to stdout and
./logs/trace_<processid>.trc
– Fabric chaincode tracing also possible (see later)
– More information online:
https://hyperledger.github.io/composer/problems/diagnostics.html
19
What is Hyperledger
Composer
Application Development
Writing the application
Modeling the business network
Effective Administration
Deploying to a blockchain
Interacting with systems of record
Contents
20
© 2017 IBM Corporation
Resources are packaged into BNA files
– Business Network Archive (.BNA) is a package of the
resources used by Fabric:
– Model files (.CTO)
– Transaction processors (.JS)
– Access Control Lists (.ACL)
– Static queries (.QRY)
– Documentation and versioning (.MD)
– It does not contain the client application
– The BNA simplifies deployment of blockchain and
promotion between environments
– c.f. TAR, WAR, EAR, JAR, BAR…
– Create BNA files from Playground or command line
– Build from filesystem or NPM module
model.cto
P
logic.js
Business Network Archive
readme.mdqueries.qry
?
permissions.acl
P
composer archive create –archiveFile my.bna
--sourceType module --sourceName myNetwork
21
© 2017 IBM Corporation
Deployment to Hyperledger Fabric
– Command line tool to script deployment
– Use Connection profiles to describe Fabric connection parameters
– Export from Playground, generate from script or create by hand
– Enrollment in Hyperledger Fabric network required
– Issue Fabric identity from Composer participants
– Additional command line options for management of business network
– For example: download, list, start, undeploy, upgrade…
composer network deploy -p myProfile -a my.bna -i user -s secret
22
© 2017 IBM Corporation
Participant Identity
– Participants require an identity in order to connect
to Hyperledger Fabric
– Issued by the administrator as a Hyperledger
Fabric userid/secret
– Supplied by the participant when the client
application connects
– Composer Participant to Fabric Identity mapping is
stored on the blockchain in an identity registry
– Perform identity management from Playground,
Javascript, REST or command line
– For example: Test connection, issue identity,
bind an identity to a participant, revoke an
identity, list identities
businessNetworkConnection.connect
('hlfv1', ’my-network', ’emma_id', ’fcb8ec88')
23
© 2017 IBM Corporation
Systems of Record Integration
– Domain specific APIs very attractive to
mobile and web developers. Resources
and operations are business-meaningful
– Composer exploits Loopback framework
to create REST APIs: https://loopback.io/
– Extensive test facilities for REST methods
using loopback
– Secured using JS Passport, giving >400
options for authentication
– Composer provides back-end integration
with any loopback compatible product
– e.g. IBM Integration Bus, API
Connect, StrongLoop
– Outbound and Inbound (where
supported by middleware)
24
© 2017 IBM Corporation
Exploiting Loopback: Examples
– IBM Integration Bus
– IIB V10 contains Loopback connector
– Example above takes input from file,
SAP or MQ
– Data mapping from CSV, BAPI/IDOC or
binary form to JSON model definition
– Node.RED
– Pre-built nodes available for Composer
– Connect to hardware devices, APIs and
online services
– Install direct from Node.RED UI
– Manage Palette -> Install ->
node-red-contrib-composer
25
© 2017 IBM Corporation
How Composer Maps to Fabric Chaincode
– Each Business Network is deployed to its own chaincode container
– Container contains a static piece of Go chaincode that starts a Javascript virtual machine
running transaction processors
– Browse these containers to view diagnostic information (docker logs)
– Embedded chaincode is not a Composer external interface
Composer
Client
Fabric
Client
Composer
Chaincode
(Go)
Composer
Runtime (JS)
End-User
Code
(JS)
Fabric
Shim
(Go)
Duktape JS VM
Hyperledger Fabric Peer
Events
– Define, Test and Deploy Business Networks
– Create domain APIs and sample applications
– Integrate existing systems and data
https://hyperledger.github.io/composer/
http://composer-playground.mybluemix.net/
Get started with Hyperledger Composer!
26
Thank you
www.ibm.com/blockchain
developer.ibm.com/blockchain
www.hyperledger.org
© Copyright IBM Corporation 2017. All rights reserved. The information contained in these
materials is provided for informational purposes only, and is provided AS IS without
warranty of any kind, express or implied. Any statement of direction represents IBM's
current intent, is subject to change or withdrawal, and represents only goals and
objectives. IBM, the IBM logo, and other IBM products and services are trademarks of the
International Business Machines Corporation, in the United States, other countries or both.
Other company, product, or service names may be trademarks or service marks of others.
IBM Bluemix Nice Meetup - 20171120 - Hyperledger Fabric & Composer

More Related Content

What's hot

Hyperledger Lightning Talk
Hyperledger Lightning TalkHyperledger Lightning Talk
Hyperledger Lightning Talk
Andrew Kennedy
 
Hyperledger Fabric & Composer
Hyperledger Fabric & Composer Hyperledger Fabric & Composer
Hyperledger Fabric & Composer
Dr. Ketan Parmar
 
Hyperledger
HyperledgerHyperledger
Hyperledger
Vinay Aitha
 
Hyperledger Composer
Hyperledger ComposerHyperledger Composer
Hyperledger Composer
Rihusoft
 
Роман Кравченко “Blockchain-Powered Internet of Things” {R0boCamp}
Роман Кравченко “Blockchain-Powered Internet of Things” {R0boCamp} Роман Кравченко “Blockchain-Powered Internet of Things” {R0boCamp}
Роман Кравченко “Blockchain-Powered Internet of Things” {R0boCamp}
Lviv Startup Club
 
Introduction of Hyperledger Fabric & Composer
Introduction of Hyperledger Fabric & Composer Introduction of Hyperledger Fabric & Composer
Introduction of Hyperledger Fabric & Composer
Dr. Ketan Parmar
 
Fabric Composer - London Hyperledger Meetup - March 2017
Fabric Composer - London Hyperledger Meetup - March 2017Fabric Composer - London Hyperledger Meetup - March 2017
Fabric Composer - London Hyperledger Meetup - March 2017
Simon Stone
 
Introduction to Blockchain and Hyperledger
Introduction to Blockchain and HyperledgerIntroduction to Blockchain and Hyperledger
Introduction to Blockchain and Hyperledger
Dev_Events
 
Ibm blockchain - Hyperledger 15.02.18
Ibm blockchain - Hyperledger 15.02.18Ibm blockchain - Hyperledger 15.02.18
Ibm blockchain - Hyperledger 15.02.18
TelecomValley
 
Hyperledger Composer overview - Hyperledger Budapest Meetup
Hyperledger Composer overview - Hyperledger Budapest MeetupHyperledger Composer overview - Hyperledger Budapest Meetup
Hyperledger Composer overview - Hyperledger Budapest Meetup
Imre Kocsis
 
Blockchain Hyperledger Lab
Blockchain Hyperledger LabBlockchain Hyperledger Lab
Blockchain Hyperledger Lab
Dev_Events
 
Conoscerehyperledger
ConoscerehyperledgerConoscerehyperledger
Conoscerehyperledger
Daniela Zuppini
 
Hyperledger Fabric and Tools
Hyperledger Fabric and ToolsHyperledger Fabric and Tools
Hyperledger Fabric and Tools
Rihusoft
 
IBM Cloud Côte D'Azur Meetup - 20181004 - Blockchain Hyperledger Workshop
IBM Cloud Côte D'Azur Meetup - 20181004 - Blockchain Hyperledger WorkshopIBM Cloud Côte D'Azur Meetup - 20181004 - Blockchain Hyperledger Workshop
IBM Cloud Côte D'Azur Meetup - 20181004 - Blockchain Hyperledger Workshop
IBM France Lab
 
Hyperledger community update February 2018
Hyperledger  community update   February 2018Hyperledger  community update   February 2018
Hyperledger community update February 2018
Christopher Ferris
 
Blockchain - HyperLedger Fabric
Blockchain - HyperLedger FabricBlockchain - HyperLedger Fabric
Blockchain - HyperLedger Fabric
Araf Karsh Hamid
 
Hyperledger Fabric: A Custom Blockchain Solution for Corporate Use
Hyperledger Fabric: A Custom Blockchain Solution for Corporate UseHyperledger Fabric: A Custom Blockchain Solution for Corporate Use
Hyperledger Fabric: A Custom Blockchain Solution for Corporate Use
Robert Tochman-Szewc
 
Hyperledger fabric 3
Hyperledger fabric 3Hyperledger fabric 3
Hyperledger fabric 3
Arvind Sridharan
 
Hyperledger fabric 20180528
Hyperledger fabric 20180528Hyperledger fabric 20180528
Hyperledger fabric 20180528
Arnaud Le Hors
 
Hyperledger community update 20180528
Hyperledger community update 20180528Hyperledger community update 20180528
Hyperledger community update 20180528
Arnaud Le Hors
 

What's hot (20)

Hyperledger Lightning Talk
Hyperledger Lightning TalkHyperledger Lightning Talk
Hyperledger Lightning Talk
 
Hyperledger Fabric & Composer
Hyperledger Fabric & Composer Hyperledger Fabric & Composer
Hyperledger Fabric & Composer
 
Hyperledger
HyperledgerHyperledger
Hyperledger
 
Hyperledger Composer
Hyperledger ComposerHyperledger Composer
Hyperledger Composer
 
Роман Кравченко “Blockchain-Powered Internet of Things” {R0boCamp}
Роман Кравченко “Blockchain-Powered Internet of Things” {R0boCamp} Роман Кравченко “Blockchain-Powered Internet of Things” {R0boCamp}
Роман Кравченко “Blockchain-Powered Internet of Things” {R0boCamp}
 
Introduction of Hyperledger Fabric & Composer
Introduction of Hyperledger Fabric & Composer Introduction of Hyperledger Fabric & Composer
Introduction of Hyperledger Fabric & Composer
 
Fabric Composer - London Hyperledger Meetup - March 2017
Fabric Composer - London Hyperledger Meetup - March 2017Fabric Composer - London Hyperledger Meetup - March 2017
Fabric Composer - London Hyperledger Meetup - March 2017
 
Introduction to Blockchain and Hyperledger
Introduction to Blockchain and HyperledgerIntroduction to Blockchain and Hyperledger
Introduction to Blockchain and Hyperledger
 
Ibm blockchain - Hyperledger 15.02.18
Ibm blockchain - Hyperledger 15.02.18Ibm blockchain - Hyperledger 15.02.18
Ibm blockchain - Hyperledger 15.02.18
 
Hyperledger Composer overview - Hyperledger Budapest Meetup
Hyperledger Composer overview - Hyperledger Budapest MeetupHyperledger Composer overview - Hyperledger Budapest Meetup
Hyperledger Composer overview - Hyperledger Budapest Meetup
 
Blockchain Hyperledger Lab
Blockchain Hyperledger LabBlockchain Hyperledger Lab
Blockchain Hyperledger Lab
 
Conoscerehyperledger
ConoscerehyperledgerConoscerehyperledger
Conoscerehyperledger
 
Hyperledger Fabric and Tools
Hyperledger Fabric and ToolsHyperledger Fabric and Tools
Hyperledger Fabric and Tools
 
IBM Cloud Côte D'Azur Meetup - 20181004 - Blockchain Hyperledger Workshop
IBM Cloud Côte D'Azur Meetup - 20181004 - Blockchain Hyperledger WorkshopIBM Cloud Côte D'Azur Meetup - 20181004 - Blockchain Hyperledger Workshop
IBM Cloud Côte D'Azur Meetup - 20181004 - Blockchain Hyperledger Workshop
 
Hyperledger community update February 2018
Hyperledger  community update   February 2018Hyperledger  community update   February 2018
Hyperledger community update February 2018
 
Blockchain - HyperLedger Fabric
Blockchain - HyperLedger FabricBlockchain - HyperLedger Fabric
Blockchain - HyperLedger Fabric
 
Hyperledger Fabric: A Custom Blockchain Solution for Corporate Use
Hyperledger Fabric: A Custom Blockchain Solution for Corporate UseHyperledger Fabric: A Custom Blockchain Solution for Corporate Use
Hyperledger Fabric: A Custom Blockchain Solution for Corporate Use
 
Hyperledger fabric 3
Hyperledger fabric 3Hyperledger fabric 3
Hyperledger fabric 3
 
Hyperledger fabric 20180528
Hyperledger fabric 20180528Hyperledger fabric 20180528
Hyperledger fabric 20180528
 
Hyperledger community update 20180528
Hyperledger community update 20180528Hyperledger community update 20180528
Hyperledger community update 20180528
 

Similar to IBM Bluemix Nice Meetup - 20171120 - Hyperledger Fabric & Composer

Introduction to Fabric Composer
Introduction to Fabric ComposerIntroduction to Fabric Composer
Introduction to Fabric Composer
Hyperleger Tokyo Meetup
 
Blockchin Architecture on Azure-Part-3
Blockchin Architecture on Azure-Part-3Blockchin Architecture on Azure-Part-3
Blockchin Architecture on Azure-Part-3
Mohammad Asif
 
MNAssociationEnterpriseArchitectsCloudFoundryJuly2017
MNAssociationEnterpriseArchitectsCloudFoundryJuly2017MNAssociationEnterpriseArchitectsCloudFoundryJuly2017
MNAssociationEnterpriseArchitectsCloudFoundryJuly2017
Andrew Ripka
 
Interconnect_Blockchain One Year On
Interconnect_Blockchain One Year OnInterconnect_Blockchain One Year On
Interconnect_Blockchain One Year On
Kathryn Harrison
 
IBM Hybrid Cloud Integration UCC Talk, 21st November 2018
IBM Hybrid Cloud Integration UCC Talk, 21st November 2018IBM Hybrid Cloud Integration UCC Talk, 21st November 2018
IBM Hybrid Cloud Integration UCC Talk, 21st November 2018
Michael O'Sullivan
 
A164 enterprise javascript ibm node sdk
A164 enterprise javascript ibm node sdkA164 enterprise javascript ibm node sdk
A164 enterprise javascript ibm node sdk
Toby Corbin
 
James Turner (Caplin) - Enterprise HTML5 Patterns
James Turner (Caplin) - Enterprise HTML5 PatternsJames Turner (Caplin) - Enterprise HTML5 Patterns
James Turner (Caplin) - Enterprise HTML5 Patterns
akqaanoraks
 
IBM Bluemix Nice Meetup - 20171120 - Smart Contracts
IBM Bluemix Nice Meetup - 20171120 - Smart ContractsIBM Bluemix Nice Meetup - 20171120 - Smart Contracts
IBM Bluemix Nice Meetup - 20171120 - Smart Contracts
IBM France Lab
 
20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"
20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"
20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"
IBM France Lab
 
Adobe PDF and LiveCycle ES Security
Adobe PDF and LiveCycle ES SecurityAdobe PDF and LiveCycle ES Security
Adobe PDF and LiveCycle ES Security
guest2a5a03
 
Kunal bhatia resume mass
Kunal bhatia   resume massKunal bhatia   resume mass
Kunal bhatia resume mass
Kunal Bhatia, MBA Candidate, BSc.
 
Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?
Phil Estes
 
IBM BP Session - Multiple CLoud Paks and Cloud Paks Foundational Services.pptx
IBM BP Session - Multiple CLoud Paks and Cloud Paks Foundational Services.pptxIBM BP Session - Multiple CLoud Paks and Cloud Paks Foundational Services.pptx
IBM BP Session - Multiple CLoud Paks and Cloud Paks Foundational Services.pptx
Georg Ember
 
03 - An introduction to hyperledger composer
03 - An introduction to hyperledger composer03 - An introduction to hyperledger composer
03 - An introduction to hyperledger composer
Merlec Mpyana
 
CODE IGNITER
CODE IGNITERCODE IGNITER
CODE IGNITER
Yesha kapadia
 
Architecting RIAs
Architecting RIAsArchitecting RIAs
Architecting RIAs
Mark Nankman
 
IBM Bluemix OpenWhisk: Serverless Conference 2016, London, UK: The Future of ...
IBM Bluemix OpenWhisk: Serverless Conference 2016, London, UK: The Future of ...IBM Bluemix OpenWhisk: Serverless Conference 2016, London, UK: The Future of ...
IBM Bluemix OpenWhisk: Serverless Conference 2016, London, UK: The Future of ...
OpenWhisk
 
Deploying and Managing Global Blockchain Networks
Deploying and Managing Global Blockchain Networks Deploying and Managing Global Blockchain Networks
Deploying and Managing Global Blockchain Networks
Duncan Johnston-Watt
 
The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...
The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...
The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...
Brian Pulito
 

Similar to IBM Bluemix Nice Meetup - 20171120 - Hyperledger Fabric & Composer (20)

Introduction to Fabric Composer
Introduction to Fabric ComposerIntroduction to Fabric Composer
Introduction to Fabric Composer
 
Blockchin Architecture on Azure-Part-3
Blockchin Architecture on Azure-Part-3Blockchin Architecture on Azure-Part-3
Blockchin Architecture on Azure-Part-3
 
MNAssociationEnterpriseArchitectsCloudFoundryJuly2017
MNAssociationEnterpriseArchitectsCloudFoundryJuly2017MNAssociationEnterpriseArchitectsCloudFoundryJuly2017
MNAssociationEnterpriseArchitectsCloudFoundryJuly2017
 
Interconnect_Blockchain One Year On
Interconnect_Blockchain One Year OnInterconnect_Blockchain One Year On
Interconnect_Blockchain One Year On
 
vinay-mittal-new
vinay-mittal-newvinay-mittal-new
vinay-mittal-new
 
IBM Hybrid Cloud Integration UCC Talk, 21st November 2018
IBM Hybrid Cloud Integration UCC Talk, 21st November 2018IBM Hybrid Cloud Integration UCC Talk, 21st November 2018
IBM Hybrid Cloud Integration UCC Talk, 21st November 2018
 
A164 enterprise javascript ibm node sdk
A164 enterprise javascript ibm node sdkA164 enterprise javascript ibm node sdk
A164 enterprise javascript ibm node sdk
 
James Turner (Caplin) - Enterprise HTML5 Patterns
James Turner (Caplin) - Enterprise HTML5 PatternsJames Turner (Caplin) - Enterprise HTML5 Patterns
James Turner (Caplin) - Enterprise HTML5 Patterns
 
IBM Bluemix Nice Meetup - 20171120 - Smart Contracts
IBM Bluemix Nice Meetup - 20171120 - Smart ContractsIBM Bluemix Nice Meetup - 20171120 - Smart Contracts
IBM Bluemix Nice Meetup - 20171120 - Smart Contracts
 
20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"
20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"
20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"
 
Adobe PDF and LiveCycle ES Security
Adobe PDF and LiveCycle ES SecurityAdobe PDF and LiveCycle ES Security
Adobe PDF and LiveCycle ES Security
 
Kunal bhatia resume mass
Kunal bhatia   resume massKunal bhatia   resume mass
Kunal bhatia resume mass
 
Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?
 
IBM BP Session - Multiple CLoud Paks and Cloud Paks Foundational Services.pptx
IBM BP Session - Multiple CLoud Paks and Cloud Paks Foundational Services.pptxIBM BP Session - Multiple CLoud Paks and Cloud Paks Foundational Services.pptx
IBM BP Session - Multiple CLoud Paks and Cloud Paks Foundational Services.pptx
 
03 - An introduction to hyperledger composer
03 - An introduction to hyperledger composer03 - An introduction to hyperledger composer
03 - An introduction to hyperledger composer
 
CODE IGNITER
CODE IGNITERCODE IGNITER
CODE IGNITER
 
Architecting RIAs
Architecting RIAsArchitecting RIAs
Architecting RIAs
 
IBM Bluemix OpenWhisk: Serverless Conference 2016, London, UK: The Future of ...
IBM Bluemix OpenWhisk: Serverless Conference 2016, London, UK: The Future of ...IBM Bluemix OpenWhisk: Serverless Conference 2016, London, UK: The Future of ...
IBM Bluemix OpenWhisk: Serverless Conference 2016, London, UK: The Future of ...
 
Deploying and Managing Global Blockchain Networks
Deploying and Managing Global Blockchain Networks Deploying and Managing Global Blockchain Networks
Deploying and Managing Global Blockchain Networks
 
The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...
The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...
The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...
 

More from IBM France Lab

20200113 - IBM Cloud Côte d'Azur - DeepDive Kubernetes
20200113 - IBM Cloud Côte d'Azur - DeepDive Kubernetes20200113 - IBM Cloud Côte d'Azur - DeepDive Kubernetes
20200113 - IBM Cloud Côte d'Azur - DeepDive Kubernetes
IBM France Lab
 
20200114 - IBM Cloud Paris Meetup - DevOps
20200114 - IBM Cloud Paris Meetup - DevOps20200114 - IBM Cloud Paris Meetup - DevOps
20200114 - IBM Cloud Paris Meetup - DevOps
IBM France Lab
 
20200128 - Meetup Nice Côte d'Azur - Agile Mindset
20200128 - Meetup Nice Côte d'Azur - Agile Mindset20200128 - Meetup Nice Côte d'Azur - Agile Mindset
20200128 - Meetup Nice Côte d'Azur - Agile Mindset
IBM France Lab
 
Défis de l'IA : droits, devoirs, enjeux économiques et éthiques
Défis de l'IA : droits, devoirs, enjeux économiques et éthiquesDéfis de l'IA : droits, devoirs, enjeux économiques et éthiques
Défis de l'IA : droits, devoirs, enjeux économiques et éthiques
IBM France Lab
 
Meetup ibm abakus banque postale
Meetup ibm abakus banque postaleMeetup ibm abakus banque postale
Meetup ibm abakus banque postale
IBM France Lab
 
20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"
20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"
20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"
IBM France Lab
 
IBM Watson IOT - Acoustic or Visual Insights
IBM Watson IOT - Acoustic or Visual InsightsIBM Watson IOT - Acoustic or Visual Insights
IBM Watson IOT - Acoustic or Visual Insights
IBM France Lab
 
Retour expérience Track & Trace - IBM using Sigfox.
Retour expérience Track & Trace - IBM using Sigfox.Retour expérience Track & Trace - IBM using Sigfox.
Retour expérience Track & Trace - IBM using Sigfox.
IBM France Lab
 
20190520 - IBM Cloud Paris-Saclay Meetup - Hardis Group
20190520  - IBM Cloud Paris-Saclay Meetup - Hardis Group20190520  - IBM Cloud Paris-Saclay Meetup - Hardis Group
20190520 - IBM Cloud Paris-Saclay Meetup - Hardis Group
IBM France Lab
 
IBM Cloud Paris Meetup - 20190520 - IA & Power
IBM Cloud Paris Meetup - 20190520 - IA & PowerIBM Cloud Paris Meetup - 20190520 - IA & Power
IBM Cloud Paris Meetup - 20190520 - IA & Power
IBM France Lab
 
IBM Cloud Côte d'Azur Meetup - 20190328 - Optimisation
IBM Cloud Côte d'Azur Meetup - 20190328 - OptimisationIBM Cloud Côte d'Azur Meetup - 20190328 - Optimisation
IBM Cloud Côte d'Azur Meetup - 20190328 - Optimisation
IBM France Lab
 
IBM Cloud Côte d'Azur Meetup - 20190328 - Optimisation
IBM Cloud Côte d'Azur Meetup - 20190328 - OptimisationIBM Cloud Côte d'Azur Meetup - 20190328 - Optimisation
IBM Cloud Côte d'Azur Meetup - 20190328 - Optimisation
IBM France Lab
 
IBM Cloud Bordeaux Meetup - 20190325 - Software Factory
IBM Cloud Bordeaux Meetup - 20190325 - Software FactoryIBM Cloud Bordeaux Meetup - 20190325 - Software Factory
IBM Cloud Bordeaux Meetup - 20190325 - Software Factory
IBM France Lab
 
IBM Cloud Paris Meetup - 20190129 - Assima
IBM Cloud Paris Meetup - 20190129 - AssimaIBM Cloud Paris Meetup - 20190129 - Assima
IBM Cloud Paris Meetup - 20190129 - Assima
IBM France Lab
 
IBM Cloud Paris Meetup - 20190129 - Myrtea
IBM Cloud Paris Meetup - 20190129 - MyrteaIBM Cloud Paris Meetup - 20190129 - Myrtea
IBM Cloud Paris Meetup - 20190129 - Myrtea
IBM France Lab
 
IBM Cloud Paris Meetup - 20181016 - L'agilité à l'échelle
IBM Cloud Paris Meetup - 20181016 - L'agilité à l'échelleIBM Cloud Paris Meetup - 20181016 - L'agilité à l'échelle
IBM Cloud Paris Meetup - 20181016 - L'agilité à l'échelle
IBM France Lab
 
IBM Cloud Côte d'Azur Meetup - Blockchain Business Processes & Rule-based Sm...
IBM Cloud Côte d'Azur Meetup - Blockchain Business Processes &  Rule-based Sm...IBM Cloud Côte d'Azur Meetup - Blockchain Business Processes &  Rule-based Sm...
IBM Cloud Côte d'Azur Meetup - Blockchain Business Processes & Rule-based Sm...
IBM France Lab
 
IBM Cloud Paris Meetup - 20180911 - Common Ledger for Public Administration
IBM Cloud Paris Meetup - 20180911 - Common Ledger for Public AdministrationIBM Cloud Paris Meetup - 20180911 - Common Ledger for Public Administration
IBM Cloud Paris Meetup - 20180911 - Common Ledger for Public Administration
IBM France Lab
 
IBM Cloud Paris Meetup - 20180911 - Smart Citizen Bot
IBM Cloud Paris Meetup - 20180911 - Smart Citizen BotIBM Cloud Paris Meetup - 20180911 - Smart Citizen Bot
IBM Cloud Paris Meetup - 20180911 - Smart Citizen Bot
IBM France Lab
 
IBM Cloud Paris Meetup - 20180911 - Goal Driven Automation
IBM Cloud Paris Meetup - 20180911 - Goal Driven AutomationIBM Cloud Paris Meetup - 20180911 - Goal Driven Automation
IBM Cloud Paris Meetup - 20180911 - Goal Driven Automation
IBM France Lab
 

More from IBM France Lab (20)

20200113 - IBM Cloud Côte d'Azur - DeepDive Kubernetes
20200113 - IBM Cloud Côte d'Azur - DeepDive Kubernetes20200113 - IBM Cloud Côte d'Azur - DeepDive Kubernetes
20200113 - IBM Cloud Côte d'Azur - DeepDive Kubernetes
 
20200114 - IBM Cloud Paris Meetup - DevOps
20200114 - IBM Cloud Paris Meetup - DevOps20200114 - IBM Cloud Paris Meetup - DevOps
20200114 - IBM Cloud Paris Meetup - DevOps
 
20200128 - Meetup Nice Côte d'Azur - Agile Mindset
20200128 - Meetup Nice Côte d'Azur - Agile Mindset20200128 - Meetup Nice Côte d'Azur - Agile Mindset
20200128 - Meetup Nice Côte d'Azur - Agile Mindset
 
Défis de l'IA : droits, devoirs, enjeux économiques et éthiques
Défis de l'IA : droits, devoirs, enjeux économiques et éthiquesDéfis de l'IA : droits, devoirs, enjeux économiques et éthiques
Défis de l'IA : droits, devoirs, enjeux économiques et éthiques
 
Meetup ibm abakus banque postale
Meetup ibm abakus banque postaleMeetup ibm abakus banque postale
Meetup ibm abakus banque postale
 
20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"
20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"
20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"
 
IBM Watson IOT - Acoustic or Visual Insights
IBM Watson IOT - Acoustic or Visual InsightsIBM Watson IOT - Acoustic or Visual Insights
IBM Watson IOT - Acoustic or Visual Insights
 
Retour expérience Track & Trace - IBM using Sigfox.
Retour expérience Track & Trace - IBM using Sigfox.Retour expérience Track & Trace - IBM using Sigfox.
Retour expérience Track & Trace - IBM using Sigfox.
 
20190520 - IBM Cloud Paris-Saclay Meetup - Hardis Group
20190520  - IBM Cloud Paris-Saclay Meetup - Hardis Group20190520  - IBM Cloud Paris-Saclay Meetup - Hardis Group
20190520 - IBM Cloud Paris-Saclay Meetup - Hardis Group
 
IBM Cloud Paris Meetup - 20190520 - IA & Power
IBM Cloud Paris Meetup - 20190520 - IA & PowerIBM Cloud Paris Meetup - 20190520 - IA & Power
IBM Cloud Paris Meetup - 20190520 - IA & Power
 
IBM Cloud Côte d'Azur Meetup - 20190328 - Optimisation
IBM Cloud Côte d'Azur Meetup - 20190328 - OptimisationIBM Cloud Côte d'Azur Meetup - 20190328 - Optimisation
IBM Cloud Côte d'Azur Meetup - 20190328 - Optimisation
 
IBM Cloud Côte d'Azur Meetup - 20190328 - Optimisation
IBM Cloud Côte d'Azur Meetup - 20190328 - OptimisationIBM Cloud Côte d'Azur Meetup - 20190328 - Optimisation
IBM Cloud Côte d'Azur Meetup - 20190328 - Optimisation
 
IBM Cloud Bordeaux Meetup - 20190325 - Software Factory
IBM Cloud Bordeaux Meetup - 20190325 - Software FactoryIBM Cloud Bordeaux Meetup - 20190325 - Software Factory
IBM Cloud Bordeaux Meetup - 20190325 - Software Factory
 
IBM Cloud Paris Meetup - 20190129 - Assima
IBM Cloud Paris Meetup - 20190129 - AssimaIBM Cloud Paris Meetup - 20190129 - Assima
IBM Cloud Paris Meetup - 20190129 - Assima
 
IBM Cloud Paris Meetup - 20190129 - Myrtea
IBM Cloud Paris Meetup - 20190129 - MyrteaIBM Cloud Paris Meetup - 20190129 - Myrtea
IBM Cloud Paris Meetup - 20190129 - Myrtea
 
IBM Cloud Paris Meetup - 20181016 - L'agilité à l'échelle
IBM Cloud Paris Meetup - 20181016 - L'agilité à l'échelleIBM Cloud Paris Meetup - 20181016 - L'agilité à l'échelle
IBM Cloud Paris Meetup - 20181016 - L'agilité à l'échelle
 
IBM Cloud Côte d'Azur Meetup - Blockchain Business Processes & Rule-based Sm...
IBM Cloud Côte d'Azur Meetup - Blockchain Business Processes &  Rule-based Sm...IBM Cloud Côte d'Azur Meetup - Blockchain Business Processes &  Rule-based Sm...
IBM Cloud Côte d'Azur Meetup - Blockchain Business Processes & Rule-based Sm...
 
IBM Cloud Paris Meetup - 20180911 - Common Ledger for Public Administration
IBM Cloud Paris Meetup - 20180911 - Common Ledger for Public AdministrationIBM Cloud Paris Meetup - 20180911 - Common Ledger for Public Administration
IBM Cloud Paris Meetup - 20180911 - Common Ledger for Public Administration
 
IBM Cloud Paris Meetup - 20180911 - Smart Citizen Bot
IBM Cloud Paris Meetup - 20180911 - Smart Citizen BotIBM Cloud Paris Meetup - 20180911 - Smart Citizen Bot
IBM Cloud Paris Meetup - 20180911 - Smart Citizen Bot
 
IBM Cloud Paris Meetup - 20180911 - Goal Driven Automation
IBM Cloud Paris Meetup - 20180911 - Goal Driven AutomationIBM Cloud Paris Meetup - 20180911 - Goal Driven Automation
IBM Cloud Paris Meetup - 20180911 - Goal Driven Automation
 

Recently uploaded

GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
g2nightmarescribd
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 

Recently uploaded (20)

GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 

IBM Bluemix Nice Meetup - 20171120 - Hyperledger Fabric & Composer

  • 1. © 2017 IBM Corporation Blockchain Hyperledger Fabric & Composer Meetup – Nov 20th 2017 Explained Solutions Architected ExploredComposed Blockchain education series NextSteps V5.0
  • 2. What is Hyperledger Composer Application Development Writing the application Modeling the business network Effective Administration Deploying to a blockchain Interacting with systems of record Contents
  • 3. 3 © 2017 IBM Corporation Blockchain Recap – Blockchain builds on basic business concepts – Business Networks connect businesses – Participants with Identity – Assets flow over business networks – Transactions describe asset exchange – Contracts underpin transactions – The ledger is a log of transactions – Blockchain is a shared, replicated ledger – Consensus, immutability, finality, provenance
  • 4. 4 © 2017 IBM Corporation Hyperledger Composer: Accelerating time to value Business Application HyperledgerComposer Blockchain(HyperledgerFabric) – A suite of high level application abstractions for business networks – Emphasis on business-centric vocabulary for quick solution creation – Reduce risk, and increase understanding and flexibility – Features – Model your business networks, test and expose via APIs – Applications invoke APIs transactions to interact with business network – Integrate existing systems of record using loopback/REST – Fully open and part of Linux Foundation Hyperledger – Try it in your web browser now: http://composer-playground.mybluemix.net/ https://hyperledger.github.io/composer/
  • 5. 5 © 2017 IBM Corporation Benefits of Hyperledger Composer Increases understanding Saves time Reduces risk Increases flexibility Bridges simply from business concepts to blockchain Develop blockchain applications more quickly and cheaply Well tested, efficient design conforms to best practice Higher level abstraction makes it easier to iterate
  • 6. Extensive, Familiar, Open Development Toolset CLI utilities Data modelling JavaScript business logic Web playground Editor support Existing systems and data $ composer Client libraries composer-client composer-admin Code generation Swagger
  • 7. 7 © 2017 IBM Corporation User Roles in a Blockchain Project Application Developer • Developing the application that interacts with the ledger • Modelling the business network • Implementing the script files that define transaction behaviour Solution Administrator • Provisioning the target environment • Deploying the business application • Managing the blockchain Business Network Participant • Running an end-user application that invokes transactions • Aware of business concepts: assets, participants and transactions • May not be aware of blockchain underpinnings D A P
  • 8. What is Hyperledger Composer Application Development Writing the application Modeling the business network Effective Administration Deploying to a blockchain Interacting with systems of record Contents
  • 9. 9 © 2017 IBM Corporation Key Concepts for the Application Developer D Asset Registry P Business Network Participants develops use Participant Registry Transaction Registry Application S D KPPAssets develops transaction logic defined in invokes transaction model Pdevelops Developer
  • 10. 10 © 2017 IBM Corporation Example: Vehicle Auction D Vehicle Listing Registry P Members, Auctioneers develops use Member Registry Transaction Registry Application S D KPP Vehicle develops transaction logic defined in Place Offer Close bidding model P develops Vehicle Listing Vehicle Registry Auctioneer Registry Developer
  • 11. 11 © 2017 IBM Corporation Developer Concepts • A domain specific language (.CTO) that defines the type structure of • Assets • Participants • Transactions • Aims to match how we talk about business networks in the real world • Scripts provide the implementation of transaction processor logic • Specified in Javascript • Designed for any reasonable Javascript developer to pick up easily • Provides front-end for the user • May require different applications per participant • Interacts with the registries • Add, delete, update, query • Registries persisted on blockchain • Connects to blockchain via JavaScript client libraries (SDK) or REST Applications Models Scripts
  • 12. 12 © 2017 IBM Corporation Vehicle VIN (References a) Member Vehicle Listing listingId, reservePrice, description, state, offers[] (References a) Vehicle User email, firstName, lastName Member (extends User) balance Auctioneer (extends User) Place Offer bidPrice (References a) listing, member Close Bidding (References a) listing Place Offer If listingis forsale, add offer to this vehicle listing’s offers[] Close Bidding If reserve price met Incrementseller’s balance Decrementbuyer’s balance Change ownerto buyer Vehicle Auction D Vehicle Listing Registry P Members, Auctioneers develops use Member Registry Transaction Registry Application S D K PP Vehicle develops transaction logic defined in Place Offer Close bidding model P develops Vehicle Listing Vehicle Registry Auctioneer Registry App App App Applications Models Scripts
  • 13. 13 © 2017 IBM Corporation Tools: Composer Playground – Web tool for defining and testing Hyperledger Composer models and scripts – Designed for the application developer – Define assets, participants and transactions – Implement transaction processor scripts – Test by populating registries and invoking transactions – Deploy to instances of Hyperledger Fabric V1, or simulate completely within browser – Install on your machine or run online at http://composer-playground.mybluemix.net
  • 14. 14 © 2017 IBM Corporation Visual Studio Code Support – Composer extension available for this popular tool – Features to aid rapid Composer development – Edit all Composer file types with full syntax highlighting – Validation support for models, queries and ACLs – Inline error reporting – Snippets (press Ctrl+Space for code suggestions) – Generate UML diagrams from models – Install directly from Code Marketplace
  • 15. 15 © 2017 IBM Corporation Creating the Application – JavaScript applications require() the NPM “composer-client” module – This provides the API to access assets, participants and transactions – RESTful API (via Loopback) also available… see later – Command-line tool available to generate skeleton command-line or Angular2 application from model – Also helps with the generation of unit tests to help ensure quality code model P
  • 16. 16 © 2017 IBM Corporation Events and Queries – Events allow applications to take action when a transaction occurs – Events are defined in models – Events are emitted by scripts – Events are caught by applications – Caught events include transaction ID and other relevant information – Queries allow applications to perform complex registry searches – They can be statically defined in a separate .qry file or generated dynamically by the application – They are invoked in the application using buildQuery() or query() – Queries require the blockchain to be backed by CouchDB
  • 17. 17 © 2017 IBM Corporation Access Control – It is possible to restrict which resources can be read and modified by which participants – Rules are defined in an .acl file and deployed with the rest of the model – Transaction processors can also look up the current user and implement rules programmatically – ACL rules can be simple (e.g. everybody can read all resources) or more complex (e.g. only the owner of an asset can do everything to it) – Application supplies credentials (userid/secret) of the participant when connecting to the Fabric network – This also applies to Playground! – Remember to grant System ACL all access if necessary
  • 18. 18 © 2017 IBM Corporation Debugging – Playground Historian allows you to view all transactions – See what occurred and when – Diagnostics framework allows for application level trace – Uses the Winston Node.js logging framework – Application logging using DEBUG env var – Composer Logs sent to stdout and ./logs/trace_<processid>.trc – Fabric chaincode tracing also possible (see later) – More information online: https://hyperledger.github.io/composer/problems/diagnostics.html
  • 19. 19 What is Hyperledger Composer Application Development Writing the application Modeling the business network Effective Administration Deploying to a blockchain Interacting with systems of record Contents
  • 20. 20 © 2017 IBM Corporation Resources are packaged into BNA files – Business Network Archive (.BNA) is a package of the resources used by Fabric: – Model files (.CTO) – Transaction processors (.JS) – Access Control Lists (.ACL) – Static queries (.QRY) – Documentation and versioning (.MD) – It does not contain the client application – The BNA simplifies deployment of blockchain and promotion between environments – c.f. TAR, WAR, EAR, JAR, BAR… – Create BNA files from Playground or command line – Build from filesystem or NPM module model.cto P logic.js Business Network Archive readme.mdqueries.qry ? permissions.acl P composer archive create –archiveFile my.bna --sourceType module --sourceName myNetwork
  • 21. 21 © 2017 IBM Corporation Deployment to Hyperledger Fabric – Command line tool to script deployment – Use Connection profiles to describe Fabric connection parameters – Export from Playground, generate from script or create by hand – Enrollment in Hyperledger Fabric network required – Issue Fabric identity from Composer participants – Additional command line options for management of business network – For example: download, list, start, undeploy, upgrade… composer network deploy -p myProfile -a my.bna -i user -s secret
  • 22. 22 © 2017 IBM Corporation Participant Identity – Participants require an identity in order to connect to Hyperledger Fabric – Issued by the administrator as a Hyperledger Fabric userid/secret – Supplied by the participant when the client application connects – Composer Participant to Fabric Identity mapping is stored on the blockchain in an identity registry – Perform identity management from Playground, Javascript, REST or command line – For example: Test connection, issue identity, bind an identity to a participant, revoke an identity, list identities businessNetworkConnection.connect ('hlfv1', ’my-network', ’emma_id', ’fcb8ec88')
  • 23. 23 © 2017 IBM Corporation Systems of Record Integration – Domain specific APIs very attractive to mobile and web developers. Resources and operations are business-meaningful – Composer exploits Loopback framework to create REST APIs: https://loopback.io/ – Extensive test facilities for REST methods using loopback – Secured using JS Passport, giving >400 options for authentication – Composer provides back-end integration with any loopback compatible product – e.g. IBM Integration Bus, API Connect, StrongLoop – Outbound and Inbound (where supported by middleware)
  • 24. 24 © 2017 IBM Corporation Exploiting Loopback: Examples – IBM Integration Bus – IIB V10 contains Loopback connector – Example above takes input from file, SAP or MQ – Data mapping from CSV, BAPI/IDOC or binary form to JSON model definition – Node.RED – Pre-built nodes available for Composer – Connect to hardware devices, APIs and online services – Install direct from Node.RED UI – Manage Palette -> Install -> node-red-contrib-composer
  • 25. 25 © 2017 IBM Corporation How Composer Maps to Fabric Chaincode – Each Business Network is deployed to its own chaincode container – Container contains a static piece of Go chaincode that starts a Javascript virtual machine running transaction processors – Browse these containers to view diagnostic information (docker logs) – Embedded chaincode is not a Composer external interface Composer Client Fabric Client Composer Chaincode (Go) Composer Runtime (JS) End-User Code (JS) Fabric Shim (Go) Duktape JS VM Hyperledger Fabric Peer Events
  • 26. – Define, Test and Deploy Business Networks – Create domain APIs and sample applications – Integrate existing systems and data https://hyperledger.github.io/composer/ http://composer-playground.mybluemix.net/ Get started with Hyperledger Composer! 26
  • 27. Thank you www.ibm.com/blockchain developer.ibm.com/blockchain www.hyperledger.org © Copyright IBM Corporation 2017. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of any kind, express or implied. Any statement of direction represents IBM's current intent, is subject to change or withdrawal, and represents only goals and objectives. IBM, the IBM logo, and other IBM products and services are trademarks of the International Business Machines Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others.