Slide 1

Slide 1 text

The Future of Developer Tools for IoT Tracy Miranda Kichwa Coders @tracymiranda

Slide 2

Slide 2 text

Developer Tools Build software stuff Quickly, Scale well Troubleshoot

Slide 3

Slide 3 text

What Language for IoT ?

Slide 4

Slide 4 text

What Language for IoT ? https://www.slideshare.net/IanSkerrett/iot-developer-survey-2017

Slide 5

Slide 5 text

C Assembler Verilog C#

Slide 6

Slide 6 text

Eclipse IDE @eclipsejavaide

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

No content

Slide 9

Slide 9 text

To IDE or not to IDE?

Slide 10

Slide 10 text

VS Code

Slide 11

Slide 11 text

The IDE Spectrum Smart Editors IDE

Slide 12

Slide 12 text

VISUAL (HIGHER LEVEL) ARTIFICIAL INTELLIGENCE CLOUD

Slide 13

Slide 13 text

VISUAL (HIGHER LEVEL)

Slide 14

Slide 14 text

We need a higher level of abstraction for digital twin.

Slide 15

Slide 15 text

All IoT tools need more visuals and less text

Slide 16

Slide 16 text

Node-Red?

Slide 17

Slide 17 text

Visual Tools Should Be: • Able to support hierarchy of abstraction layers • Allow users to work at optimal layer (e.g. drill down) • Transition to text layer • Scriptable • Debuggable

Slide 18

Slide 18 text

ARTIFICIAL INTELLIGENCE

Slide 19

Slide 19 text

No content

Slide 20

Slide 20 text

Intelligent Completions: Code Recommenders

Slide 21

Slide 21 text

AI-Powered Bug Detection

Slide 22

Slide 22 text

Software Mining Open source code mining Configuration mining Natural language sources

Slide 23

Slide 23 text

Who wants AI powered tools?

Slide 24

Slide 24 text

We have the technology We have the data We need the integration & design

Slide 25

Slide 25 text

“Design is not just what it looks like and feels like. Design is how it works” –Steve Jobs

Slide 26

Slide 26 text

CLOUD

Slide 27

Slide 27 text

DevOps In The Cloud Source Control github, bitbucket, etc Builds & CI jenkins, hudson, travis, circleci etc Other jira, bugzilla, gerrit etc

Slide 28

Slide 28 text

Cloud Workspaces

Slide 29

Slide 29 text

Cloud Workspaces

Slide 30

Slide 30 text

Language Server Protocol LSP https://github.com/Microsoft/language-server-protocol/wiki/Protocol-Implementations

Slide 31

Slide 31 text

Language Server Protocol LSP https://github.com/Microsoft/language-server-protocol/wiki/Protocol-Implementations Code Completion Hovers Jump to definition Find References Diagnostics

Slide 32

Slide 32 text

Language Server Protocol: Developer communities and tools are restructuring to work together and be more effective.

Slide 33

Slide 33 text

Language Server Protocol: Desktop editors will keep up better with changes in languages.

Slide 34

Slide 34 text

Language Server Protocol: Cloud editors are set to significantly improve their functionality.

Slide 35

Slide 35 text

Github?

Slide 36

Slide 36 text

Github http://blog.atom.io/2017/09/12/announcing-atom-ide.html

Slide 37

Slide 37 text

Language Server Protocol: Let the fragmentation continue…

Slide 38

Slide 38 text

Every developer deserves their very own domain specific language… www.eclipse.org/xtext

Slide 39

Slide 39 text

Debug Protocol gdb GDB mi Protocol

Slide 40

Slide 40 text

The future is distributed: Monoliths to microservices. IDEs to micro-ides

Slide 41

Slide 41 text

Lots of new possibilities… https://www.producthunt.com/posts/interviews-on-skype

Slide 42

Slide 42 text

VISUAL (HIGHER LEVEL) ARTIFICIAL INTELLIGENCE CLOUD

Slide 43

Slide 43 text

Gen Z Codes in the Cloud by Default

Slide 44

Slide 44 text

Shape The Future Design, design, design Integrate all the things Think extensible Default to open source