Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.

Internet of Things (IoT) and REST APIs

1.518 visualizaciones

Publicado el

Internet of Things (IoT) and REST APIs.

Publicado en: Tecnología
  • Sé el primero en comentar

Internet of Things (IoT) and REST APIs

  1. 1. e Internet of Things & REST A Alexandra Bowen @AlexandraABowen
  2. 2. I’m Alex. Community and Developer Relations Manager at DreamFactory IoT Enthusiast @AlexandraABowen #Defragcon
  3. 3. @AlexandraABowen #Defragcon
  4. 4. • Part 1: Current state of IoT • Part 2: Future of IoT • Part 3: Developer perspective • Part 4: APIs and REST • Part 5: Open Source Services Agenda @AlexandraABowen #Defragcon
  5. 5. @AlexandraABowen #Defragcon
  6. 6. • Part 1: Current state of IoT • Part 2: Future of IoT • Part 3: Developer perspective • Part 4: APIs and REST • Part 5: Open Source Services Current state of IoT @AlexandraABowen #Defragcon
  7. 7. @AlexandraABowen #Defragcon
  8. 8. @AlexandraABowen #Defrag
  9. 9. IoT connects people to physical objects via applications. This relationship has inherently changed to the way we engage and interact with objects. IDC predicts that the worldwide IoT market will grow to $7.1 trillion by 2020, so it’s not going away anytime soon. Current State @AlexandraABowen #Defrag
  10. 10. IoT connects people to physical objects via applications. This relationship has inherently changed to the way we engage and interact with objects. IDC predicts that the worldwide IoT market will grow to $7.1 trillion by 2020, so it’s not going away anytime soon. Current State @AlexandraABowen #Defragcon
  11. 11. @AlexandraABowen #Defragcon
  12. 12. The Internet of Things is driven by a combination of:
  13. 13. These services are already connected and available on the market today as popular devices.
  14. 14. Diverse Applications.
  15. 15. The Internet of Things is driven by a combination of:
  16. 16. @AlexandraABowen #Defragcon
  17. 17. @AlexandraABowen #Defragcon
  18. 18. @AlexandraABowen #Defragcon
  19. 19. @AlexandraABowen #Defragcon
  20. 20. Lord Kelvin “If you can’t measure it you can’t improve it.” @AlexandraABowen #Defragcon
  21. 21. 1. Hardware is becoming extremely cheap. 2. Connectivity. 3. Development is becoming easier . Why now? @AlexandraABowen #Defragcon
  22. 22. @AlexandraABowen #Defragcon
  23. 23. Everything should talk to everything else. @AlexandraABowen #Defragcon
  24. 24. Daily data generation 2020 @AlexandraABowen #Defragcon
  25. 25. Internet of useless things. @AlexandraABowen #Defragcon
  26. 26. • Part 1: Current state of IoT • Part 2: Future of IoT • Part 3: Developer perspective • Part 4: APIs and REST • Part 5: Open Source Services Future of IoT @AlexandraABowen #Defragcon
  27. 27. The IoT has the greatest potential to advance society since the Industrial Revolution: a world where all kinds of things are interconnected, smart, communicating, and improving our quality of life. Future State @AlexandraABowen #Defragcon
  28. 28. Interoperability & Interconnectedness Interoperability is the ability of different information technology systems and software applications to communicate, exchange data, and use the information that has been exchanged. Interconnectedness is part of the terminology of a worldview which sees a oneness in all things. @AlexandraABowen #Defragcon
  29. 29. Law and Order. Coming up: • Nielen’s Law • Moore’s Law • Metcalfe’s Law @AlexandraABowen #Defragcon
  30. 30. Nielen’s Law Users' bandwidth grows by 50% per year @AlexandraABowen #Defragcon
  31. 31. Moore’s Law Computers double in capabilities every 18 months: this corresponds to about 60% annual growth @AlexandraABowen #Defragcon
  32. 32. Comparing the two Laws shows that: Bandwidth grows slower than computer power. @AlexandraABowen #Defragcon
  33. 33. proportional to the square of the number of connected users of the @AlexandraABowen #Defragcon
  34. 34. Connected ≠ Smart By 2020, Cisco predicts there will be 37 billion “intelligent” things. @AlexandraABowen #Defragcon
  35. 35. Connected things 2020 @AlexandraABowen #Defragcon
  36. 36. Doug Fisher, Intel @AlexandraABowen #Defragcon
  37. 37. Value of Interconnectedness/Interoperability Total economic value to be generated by the IoT in 2025 is $11.1 Trillion. 47% of the value — $5.2 Trillion — will be unlocked by Interoperability. McKinsey 2015 IoT study @AlexandraABowen #Defragcon
  38. 38. The Zettabyte Era We are nearly in the Zettabyte Era. Global IP traffic will reach the Zettabyte threshold in 2016. 1 Zettabyte (ZB) = 1024 Exabytes (EB). Wherein 1 Exabyte = 1 million Terabytes (TB) of data. @AlexandraABowen #Defragcon
  39. 39. Humans turning Data into Wisdom.
  40. 40. Every minute… • 72 hours of videos are uploaded to Youtube • 204 million emails are sent • Google receives over 4 million search queries • Facebook users share close to 2.5 million pieces of content • Over 300,000 photos are being shared through whatsapp • Tinder users swipe more than 416,667 times @AlexandraABowen #Defragcon
  41. 41. Thresholds reached by 2020 • Global IP traffic has increased five fold over the past 5 years and will and will reach 2.3 ZB per year • The number of devices connected to IP networks will be more than three times the global population • There will be 3.4 networked devices per capita by 2020. Smartphone traffic will exceed PC traffic @AlexandraABowen #Defragcon
  42. 42. Fog computing involves pushing intelligence and processing capabilities down closer to where the data originates, from pumps, motors, sensors, relays…
  43. 43. Fog computing Fog computing is an extension of cloud computing that is: • Adding process and memory resources to Edge devices • Pre-processing collected data at the Edge • Sending aggregated results to the cloud @AlexandraABowen #Defragcon
  44. 44. • Part 1: Current state of IoT • Part 2: Future of IoT • Part 3: Developer perspective • Part 4: APIs and REST • Part 5: Open Source Services Dev Perspective @AlexandraABowen #Defragcon
  45. 45. Dev Perspective Building blocks of IoT development • Devices, endpoints • Device management — collecting information, storing it and extracting it • Filtering — information filtered out, event handling and notifications • User management- Permissions — users, access, roles @AlexandraABowen #Defragcon
  46. 46. • Hold your data in unstructured schemas • Choose a device agnostic platform, don’t model for certain kind of device. • Interoperability • Aggregation is not done in silo. Be open. • Optimize for small packets in high volumes • You may have constrained networks and resources. Offer ways to pass in information in a structured and minimalist way. Do’s and don’ts when developing @AlexandraABowen #Defragcon
  47. 47. • Handle failure conditions • Make sure you have good testing and error handling. • Documentation • Don’t neglect Documentation! • Start small • Reduce TTFHW (time to first hello world). Do’s and don’ts when developing @AlexandraABowen #Defragcon
  48. 48. Do’s and don’ts when developing • Security matters • Provide transport layer encryption, provide a permissions model for you to secure access and allow you to encrypt messages with public private keys. • Context matters • Don’t think that only one person, or device will be consuming. Keep in mind that devices have different form factors and computational power. • State matters • Decide whether a Pull or Push state makes more sense for your project. • REST (polling) works for most developers and if you have low(er) time sensitivity. Keep in mind, it can be as low as milliseconds. @AlexandraABowen #Defragcon
  49. 49. collaboration are required to enable this massively smart and interc @AlexandraABowen #Defragcon
  50. 50. Standards will unlock the massive opportunity in the IoT market, accelerate industry innovation and help developers and companies create solutions that map to a single open specification. @AlexandraABowen #Defragcon
  51. 51. What will it look like? • Open • Royalty free • Seamless • Technology agnostic • Fair and accessible • Cross industry • More secure • Structured @AlexandraABowen #Defragcon
  52. 52. Standards and collaboration drive adoption. • Wifi: $90 B in annual economic value in the US • OSS 31 billion lines of code. 3.8 million OS contributors • Mobile 2015 4 billion unique subs. Contributing $3.7 to global GOP • Web: 1995 <1% of the world connected. 2016 — over 40% connected @AlexandraABowen #Defragcon
  53. 53. • Part 1: Current state of IoT • Part 2: Future of IoT • Part 3: Developer perspective • Part 4: APIs and REST • Part 5: Open Source Services API’s and REST @AlexandraABowen #Defragcon
  54. 54. “Software is eating the world.” And it’s not just any software that’s eating the world, it’s API-driven and Javascript in particular. @AlexandraABowen #Defragcon
  55. 55. REST REST is the architecture of the web, and if you’re going to be building applications on the web — shouldn’t you work with the architecture not against it? @AlexandraABowen #Defragcon
  56. 56. REST Addresses • Performance • Scalability • Simplicity of interfaces • Modifiability • Visibility • Portability • Reliability @AlexandraABowen #Defragcon
  57. 57. Why APIs matter to IoT • APIs provide the ability to glue and integrate services • APIs allow developers to build context based applications • APIs are a set of routines, protocols, and tools for building software applications @AlexandraABowen #Defragcon
  58. 58. • Part 1: Current state of IoT • Part 2: Future of IoT • Part 3: Developer perspective • Part 4: APIs and REST • Part 5: Open Source Services Open Source @AlexandraABowen #Defragcon
  59. 59. Open Source Resources: Hardware • Arduino — Electronics platform based on easy-to-use hardware and software. It’s intended for anyone making interactive projects. • BeagleBoard — Low-power open-source hardware single-board computer produced by Texas Instruments in association with Digi-Key and Newark element14. • Microduino — Powerful, small, stackable electronic hardware to makers, designers, engineers, students and curious tinkerers of all ages. Build open- source projects or create innovative new ones. • Node MCU (ESP 8266) — IoT platform. It uses the Lua scripting language. It is based on the eLua project, and built on the ESP8266 SDK 0.9.5. • OLinuXino — Software and Hardware low cost (EUR 30) Linux Industrial grade single board computer with GPIOs capable of operating from -25°C to +85°C. • Raspberry Pi — Low cost, credit-card sized computer that plugs into a computer monitor or TV, and uses a standard keyboard and mouse. It’s capable of doing everything you’d expect a desktop computer to do. • Tessel — Community-driven IoT and robotics development platform. It encompasses development boards, hardware module add-ons, and the software that runs on them. @AlexandraABowen #Defragcon
  60. 60. Open Source Resources: Software, operating systems • Contiki— Operating system for the Internet of Things. Contiki connects tiny low-cost, low-power microcontrollers to the Internet. • OpenWrt — Operating system (in particular, an embedded operating system) based on the Linux kernel, primarily used on embedded devices to route network traffic. The main components are the Linux kernel, util-linux, uClibc or musl, and BusyBox. All components have been optimized for size, to be small enough for fitting into the limited storage and memory available in home routers. • Tiny OS — Operating system designed for low-power wireless devices, such as those used in sensor networks, ubiquitous computing, personal area networks, smart buildings, and smart meters. • Linux @AlexandraABowen #Defragcon
  61. 61. Open Source Resources: Frameworks • AllJoyn— Software framework that makes it easy for devices and apps to discover and communicate with each other. • Countly IoT Analytics — General purpose analytics platform for mobile and IoT devices, available as open source. • Iotivity — Software framework enabling seamless device-to-device connectivity to address the emerging needs of the Internet of Things. • Kura— Java/OSGi-based container for M2M applications running in service gateways. Kura provides or, when available, aggregates open source implementations for the most common services needed by M2M applications. • OpenHAB — The openHAB runtime is a set of OSGi bundles deployed on an OSGi framework (Equinox). It is therefore a pure Java solution and needs a JVM to run. @AlexandraABowen #Defragcon
  62. 62. Open Source Resources: Middleware • Kaa — Middleware platform for rapid creation of IoT solutions. • Losant —Developer platform designed to help you quickly and securely build complex connected solutions. Losant uses open communication standards like REST and MQTT to provide connectivity from one to millions of devices. Losant provides powerful data collection, aggregation, and visualization features to help understand and quantify vast amounts of sensor data. Losant’s drag-and-drop workflow editor allows you to trigger actions, notifications, and machine-to-machine communication without programming. • DreamFactory — Free open source REST API Platform for mobile, web and IoT Applications. @AlexandraABowen #Defragcon
  63. 63. DreamFactory • An API Platform that allows you to build IoT Applications • Open Source • Automatically generates REST APIs • Low code platform, with custom scripting support • Automatically creates Documentation, through Swagger, for your APIs • Maximizes the reliability, scalability, and security @AlexandraABowen #Defragcon
  64. 64. DreamFactory Platform Instant APIs • SQL, NoSQL, File Storage • External REST/SOAP Instant Dev Environments • Automatic platform generation • Interactive documentation • Server-side scripting • Orchestration of 3rd party services • Custom API construction • Role-based access controls • SSO, AD, LDAP, OAuth • Multi-tenant sandboxes Run on any server or cloud • JWT for massive scalability @AlexandraABowen #Defragcon
  65. 65. Let’s break it down (quickly) @AlexandraABowen #Defragcon
  66. 66. Install on any server ● Infrastructure as a Service (IaaS) ● Platform as a Service (PaaS) ● On Premises Data Center ● Desktop Installer @AlexandraABowen #Defragcon
  67. 67. Connect to any database ● SQL ● NoSQL ● File Storage ● External Web Services @AlexandraABowen #Defragcon
  68. 68. Develop for any device ● HTML5 ● Native Apps ● Browser Websites ● Internet of Things ● Server to Server @AlexandraABowen #Defragcon
  69. 69. API Automation Approach • Reusable APIs for any new project • Customization for special cases • Focus on front-end app development • Decouple client-side from server-side • Flexible backend infrastructure • Flexible backend data sources • Automatically documented • Scalable, reliable, portable, secure @AlexandraABowen #Defragcon
  70. 70. DreamFactory IoT stack offers MQTT integration • Existing support for a variety of data sources • Developers are able to build end-to-end IoT applications that take advantage of MQTT and REST • Using DreamFactory’s Server Side Scripts, developers can write rules (Javascript, PHP, Python…) • We integrated Mosca, an open source MQTT broker, with DreamFactory to complement the RESTful API. @AlexandraABowen #Defragcon
  71. 71. DreamFactory IoT Building Blocks @AlexandraABowen #Defragcon
  72. 72. Take Aways • IoT is already here, and we need developers to help us harmonize on data models, on APIs, on device classes across industries. • Standards will help ensure secure interoperability for consumers, business, and industry. • IoT is the next evolution of the internet. • IoT is changing the way we engage and interact with devices and people. • There are many hurdles in IoT before we start to see smart, connected devices and interoperability. • IoT is a great opportunity, making things smart and connected only makes sense if it’s useful and done well. • The premise is, that everything should talk to everything else. APIs and standards help with this. @AlexandraABowen #Defragcon
  73. 73. @AlexandraABowen #Defragcon
  74. 74. Thank you! @AlexandraABowen #Defragcon

×