Upgrade to Pro — share decks privately, control downloads, hide ads and more …




Jarkko Moilanen, PhD

March 26, 2019



    CrazyTown Platformoftrust.net #dataflows #dataliikkuu @PlatformOfTrust
  2. Hello! I am Jarkko Moilanen I am here because I’m

    the Developer Program Lead at Platform of Trust. 2 @Jarkko_moilanen, Phone: +358 40 535 9066, Email: jarkko.moilanen@oftrust.net
  3. Hello! I am Nazia Hasan UX/DX engineer. UI - UX

    Designer Interest: DX design - API Management & Usage 3 @NazarahTheCat
  4. Platform of Trust Slack 4 Get invitation to Slack from

  5. Future Platform of Trust developer events • 26.3.2019 Tampere -

    App developer workshop (now) • 9.5.2019 Helsinki - Data Product Canvas workshop • 9/2019 Tampere • 11/2019 Helsinki All events can be found from platformoftrust.net/events Developer Portal release 10th April developers.oftrust.net 5
  6. Platform of Trust is a data linking platform with marketplace

    to create better living environment
  7. INTEGRATION APPROACH? or “API-hell” “Platform to connect platforms”


    IT-integration costs Integrate into the platform only once Get rid of vendor locks Utilize all parties connected to the platform Develop applications faster Shared harmonized data models and application components Your data is yours Manage your data and parties connected to that thru digital twin frameworks

    consumers More parties, more data users, more value in the whole value network More data for AI, ML, VR, AR, etc Benefit from new technology enablers Convert data to revenue Data has value in modern economy Conquer new markets Thru global platform and market place to create better living environment
  10. For Application developers 10 The Platform of Trust brings you

    • Business community of biggest real-estate owners (Senaatti, Kojamo…). Expanding to global 2019-2020 • Hundreds of thousands of end-users • One API to all data - API driven developer experience • End-user identity and access management in platform • Market place to promote and sell your apps • Easy access to harmonized data….what data?
  11. What data? Lightning, doors, windows, floors, heating, water, tenants, people,

    temperature, maintenance, construction phase, contracts, statistics, reports, sensors... Digital Twin of the building
  12. 12

  13. ROADMAP idea commu nity funding try & learn JUNE’19 do

    busines s market place scale cross-industry global 2017 2018 2019 2020
  14. Frictionless End-to-End Developer eXperience Developer eXperience is built together to

    maximise ease of use of platform capabilities 14 Almost Harmonised data out Data in
  15. Developer Experience Why you should care? Developers change the world

    - ease of use is crucial 1
  16. 100 000 customers, handles 100 billion worth transactions, creates 1,5

    billion revenue with 1 API Stripe allows individuals and businesses to receive payments over the Internet. Stripe provides the technical, fraud prevention, and banking infrastructure required to operate on-line payment systems Est. 2010
  17. 40 000+ customers create 400 million revenue with 5+ APIs

    Why did they succeed? Twilio allows software developers to programmatically make and receive phone calls, send and receive text messages, and perform other communication functions using its web service APIs. Est. 2008
  18. Building a “developer-first” product that makes it easy for companies

    and developers to accept payments immediately. “We’ve all seen how APIs and developers have transformed entire industries” 1,5 billion revenue with 1 API 713 million revenue
  19. “ Product and customer-centric approach will take you to success,

    but developer-centric will make you the industry leader 19 Jarkko Moilanen
  20. Built with Developer centric approach Platform of Trust offers excellent

    Developer eXperience ….so you don’t need to worry about that.
  21. Data product End-to-end DX 21 Integrate and harmonise data Publish

    to market place Discover data products Connect app to data Test Sandbox, translator Production Test Sandbox App product Publish to market place Market place
  22. API-first - GUI & libraries next 22 Data Product CLI

    support App building CLI support API Product CLI support Code Libraries (python, JS) + additional CLI tools Data Product GUI support App building GUI support API Product GUI support Q1 / 2019 Q2 / 2019 Q3 / 2019 Q4 / 2019 Additional GUI tools
  23. Developer Portal Your self-service one-stop-shop. Preview Release 10th April 2019

  24. Developer tools 24 Sandbox with data Getting started guides API

    Console (coming Q2) API Documentation With code examples Use case descriptions Data Integration skeleton Data models With webapp ... developer.oftrust.net
  25. Sandbox 25 The Platform of Trust Sandbox environment is intended

    to be used by developers to test their applications and data product integrations, prior to production, in a safe and isolated manner. • Contains all platform APIs - https:/ /api-sandbox.oftrust.net/ • All API Documentation examples against sandbox • Sample data - all data products must provide sample data • Periodic environment reset • No SLA
  26. API Docs (WIP) 26 All APIs with code examples in

    one address docs.oftrust.net Looking for JS, Java and Python code example contributions https:/ /github.com/platformoftrust/docs/issues
  27. Guides - 101 (WIP) 27 We provide multiple simple 101

    type step by step guides with code examples to get you started: • Data Product Guide • Setup Translator • Manage Digital Twins • Use standard data models • Build Apps • ….
  28. App Development Decrease time-to-market by providing easy access to standardized

    data 2
  29. App development process 29 Decide what the end-user wants and

    needs? Find suitable data products, get access, learn, build logic and test Register and configure app Publish app to the market place 1 2 3 4 Business Technology 58% - > 20% 30% of your time 1% 1% Canvas User stories Sandbox Market place Product API Broker API Platform of Trust Product API Platform of Trust Product API
  30. Data query App requests data with standard endpoints and params.

    Details found from Data Product Translator Original source data App Data Broker API Translator converts original source data to standard format Ontologies defined by Platform of Trust Based on the ontologies expanding set of schemas are defined 1 2 3 Data is passed to application
  31. { "@context": "https://schema.org/", "@type": "collection", "ItemList": [ { "@context": "https://platformoftrust.github.io/standards/contexts/product.jsonld",

    "@type": "Product", "@id": "https://api-sandbox.oftrust.net/product/v1/products/prh-business-identity-data-product", "productCode": "business-identity-test", "dataContext": null, "parameterContext": "https://platformoftrust.github.io/standards/contexts/product-parameters.jsonld", "translatorUrl": "http://translator-test-backend-app/business-identity", "name": "PRH Business Identity", "organizationPublicKeys": null, "description": "Returns business information from the PRH Open Data API", "imageUrl": null } ] } curl https://api-sandbox.oftrust.net/product/v1/products PRODUCTS API
  32. { "@context": "https://platformoftrust.github.io/standards/contexts/product.jsonld", "@type": "Product", "@id": "https://api-sandbox.oftrust.net/product/v1/products/business-identity-test", "productCode": "business-identity-test", "dataContext":

    "https://platformoftrust.github.io/standards/contexts/product-data.jsonld", "parameterContext": "https://platformoftrust.github.io/standards/contexts/product-parameters.jsonld", "translatorUrl": "https://translator-test-backend-app/business-identity", "name": "Business identity", "organizationPublicKeys": [ { "url": "https://example.com/example.pub", "type": "RsaSignature2018" } ], "description": "Test translator business information", "imageUrl": null } curl https://api-sandbox.oftrust.net/product/v1/products/business-identity-test Available parameters PRODUCTS API
  33. curl -X POST https://api-sandbox.oftrust.net/broker/v0.1/fetch-data-product \ -H "Content-Type: application/json" \ -H

    "X-Pot-Signature: Ioma1gqOVFUBrXiziWSCLqBG4vFozG3YgzPzillNip0=" \ -H "X-Pot-App: 379780e4-b511-4fa9-aef8-bda9bd58ab89" \ -H "X-Pot-Token: eyJ0eXAiOiJKV1QiLCJhbGciOiJ...DVs5aaf" \ -d '{ "timestamp": "2019-02-27T14:38:00+02:00", "productCode": "business-identity-test", "parameters": { "businessId": "1234567-8" } }' Live coding example coming next time we meet... From the “parameterContext” BROKER API
  34. Lunch - back by 12:30 Let’s go for lunch 3

  35. Group work Let’s go start working with the apps 4

  36. App development process 36 Decide what the end-user wants and

    needs? Find suitable data products, get access, learn, build logic and test Register and configure app Publish app to the market place 1 2 3 4 Business Technology 58% - > 20% 30% of your time 1% 1% Canvas User stories Sandbox Market place Product API Broker API Platform of Trust Product API Platform of Trust Product API
  37. Task 37 5-7 person groups, time until 14:45 - show

    and tell 1. Describe your app development process step by step a. Use some realistic example b. How the app is designed, developed, distributed? 2. Identify capabilities you expect from platform a. Is the capability API or GUI driven? 3. Identify open questions in the process docs.oftrust.net
  38. Results Let’s look at the results 5

  39. 39 Thanks! Any questions?