SlideShare a Scribd company logo
1 of 19
© Hitachi, Ltd. 2018. All rights reserved.
How to join Open Source
Software community
Hitachi, Ltd.
07/15/2018
Kazuhito Yokoi
© Hitachi, Ltd. 2018. All rights reserved.
What I will deliver in my presentation
1
• Open Source Software (OSS) contribution
is important activity in companies.
• OSS visual programing tool, “Node-RED”
• Contribution know-how based on our experiences
in joining Node-RED community
• New OSS project, “Node generator”
which Hitachi started contributing to
© Hitachi, Ltd. 2018. All rights reserved.
Advantages of OSS
2
There’re many advantages of using OSS in a company
[OSS user company]
• Low cost and delivery speed
• Reliable source code
• Long term support without vender lock-in
• Standard technologies (Docker, k8s, Cloud Foundry etc.)
[OSS contributor company]
• Companies can add new functionalities related to their business
• Companies can advertise their abilities to their customers
• Engineers can learn development skills from community members
© Hitachi, Ltd. 2018. All rights reserved.
Visual programing tool for IoT applications
• Flow-based programming which realizes quick development
• Various connectors (Node-RED nodes) to add functionalities
• Open source software under Linux Foundation
Node-RED
3
(2) Drag and drop
connectors to workspace
(3) Wire the connectors
in the processing order
(4) Flow runs immediately
once clicking deploy button
(1) Select connectors
which have various functions
© Hitachi, Ltd. 2018. All rights reserved.
Node-RED has been more open and popular
as OSS for both edge and cloud environments.
• March 2014: Developed by IBM UK and released in QCon London
• June 2014: Included in the catalog on IBM Cloud
• November 2015: Pre-installed in Raspberry Pi
• October 2016: Moved to Linux Foundation
• As of July 2018: Downloaded 50,000 times a month
History of Node-RED
4
0K
20K
40K
60K
Jan '15 Jul '15 Jan '16 Jul '16 Jan '17 Jul '17 Jan '18
npmdownloads
The number of npm downloads per month
50,000
downloads
in a month
© Hitachi, Ltd. 2018. All rights reserved.
Major companies have used Node-RED in their productions
• Cloud services
- AT&T, AT&T IoT Platform
- CISCO, Meraki
- Fujitsu, K5 COLMINA Platform
- Google, Xively
- Hitachi, Lumada
- IBM, IBM Cloud
- Siemens, MindSphere Visual Flow Creator
• Connectors (Node-RED nodes)
- Fujitsu, K5 IoT Platform
- IBM, Watson, Watson IoT Platform,
dashDB, Cloudant, OpenWhisk,
Weather Company Data
- Microsoft, Azure IoT Hub
- NEC, Mobile Backend Platform
- Val Laboratory Corporation, Ekispert
Node-RED users
5
• Edge Devices
- Fujitsu, INTELLIEDGE
A700 Appliance
- GE, Predix Developer Kit
- Intel, Intel IoT Gateway
- NEC, CONNEXIVE IoT
Connectivity Engine
- Samsung, Artik
- Siemens, SIMATIC IOT2020
- Toshiba, SPINEX
Red: companies which speakers in DevRelCon Tokyo work for
© Hitachi, Ltd. 2018. All rights reserved.
(1) Rapid development for IoT applications
• Factory engineers can create
IoT application within couple of hours
• Same development style
in both edge and cloud environments
(2) Standard technologies in industrial IoT
• Essential IoT technologies
(e.g. REST API, WebSocket and MQTT)
• Pre-installed software on standard edge devices
(3) Open community
• 80 contributors are developing Node-RED
• 3rd party 1,488 connectors
Benefits of Node-RED
6
© Hitachi, Ltd. 2018. All rights reserved.
Node-RED key features to realize IoT system
7
・・・
(2) Data
collection
(5) Data accumulation
/retrieving
IT systems
(1) Edge analytics
(4) Dashboard
Node-RED on Cloud
Node-RED on
edge devices
(3)Device
control
Sensor
OT systems
Business data
External
services
Sensor
MQTT
REST API
MQTT
REST API
Data lake
(6) Integration with
existing systems
(7) Connection to
external services
Hitachi’s contributions to Node-RED
8
We have added over 200 commits and
20,000 lines of code to Node-RED project
0
3,000
6,000
9,000
12,000
15,000
May-16 Sep-16 Jan-17 May-17 Sep-17 Jan-18 May-18
IBM
Hitachi
OtherHitachi started
contribution
Line of code
Line of codes in Node-RED repository
© Hitachi, Ltd. 2018. All rights reserved.
Problem: There’s no chance to start OSS activities
Solution: Face to face meeting with core developers
• To create relationship with core developers,
Hitachi members visited IBM UK office and had technical discussion.
What is the first step?
9
Image: https://www.ibm.com/blogs/solutions/jp-ja/introduction-of-nodered/
© Hitachi, Ltd. 2018. All rights reserved.
Problem: Contribution procedures on GitHub are not clear
Solution: On-site development with core developers
Hitachi engineers worked in IBM UK office for two weeks
to learn contribution procedures.
How to start contribution?
10
Image: https://www.ibm.com/blogs/solutions/jp-ja/introduction-of-nodered/
Discussion Coding
© Hitachi, Ltd. 2018. All rights reserved.
Problem: Continuous connection with developers
Solution: Monthly teleconference and online communication
• We hold monthly teleconference with core developers
(Recently we started biweekly teleconference with all developers)
• We use discourse forum to communicate with community members
How to continue to connect with developers?
11
Node-RED forumTechnical interchange meeting
© Hitachi, Ltd. 2018. All rights reserved.
How to establish presence in the community?
12
Problem: Number of users is important to be major OSS
Solution: Introductory book and presentations in conferences
Sessions in global conferenceNode-RED book for beginners
http://amzn.asia/hQBvEIK
© Hitachi, Ltd. 2018. All rights reserved.
What is the best for the first contribution?
13
• Documentation
(Sometimes official documents doesn’t contain the latest information)
• Quality improvement (Adding test cases and bug fix)
• Internationalization (Especially Japanese)
Japanese
Chinese
English(Original)
© Hitachi, Ltd. 2018. All rights reserved.
Hitachi drives new OSS project (1)
14
• We published our command line tool, “node generator”
as new OSS under Linux Foundation (JS Foundation).
• Using node generator tool, engineers can easily create
connectors (Node-RED nodes) from Swagger definition or
JavaScript code
Node Generator
JavaScript
code
Swagger
definition
Original node
https://github.com/node-red/node-red-nodegen
© Hitachi, Ltd. 2018. All rights reserved.
Hitachi drives new OSS project (2)
15
• To add the functionalities, we have open discussion using the tools.
• Slack: real time discussion with community members
• GitHub: Kanban board (projects) to share roadmap
Demo: Tracking space station on map
16
 Node-RED can easily get data via REST API and
visualize it on the browser
 The demonstration program gets location of space station
and plots it on the map
1. Get latitude
and longitude
2. Handle
location data
Web browser
3. Plot pins on map
Space station
Node-RED
REST API
Demo: Tracking space station on map
17
© Hitachi, Ltd. 2018. All rights reserved.
[Trademarks]
- IBM, Watson, dashDB, Cloudant and OpenWhisk are registered trademarks of International Business Machines Corporation.
- AT&T is a registered trademark of AT&T Inc.
- Fujitsu and COLMINA are registered trademarks of Fujitsu Ltd.
- Microsoft is a registered trademark of Microsoft Corporation.
- NEC and CONNEXIVE are registered trademarks of NEC Corporation.
- GE and Predix are registered trademarks of General Electric Company.
- Intel is a registered trademark of Intel Corporation.
- Samsung is a registered trademark of Samsung C&T Corporation.
- Samsung Artik is a registered trademark of Samsung Electronics Co. Ltd.
- Siemens and SIMATIC are registered trademarks of Siemens Aktiengesellschaft.
- Toshiba is a registered trademark of Toshiba Corporation.
- SPINEX is a registered trademark of Toshiba Digital Solutions Corporation.
- MySQL is a registered trademark of MySQL Aktiebolag.
- MongoDB is a registered trademark of MongoDB Limited.
- Slack is a registered trademark of Slack Technologies, Inc.
- GitHub is a registered trademark of GitHub, Inc.
- Cisco and Meraki are registered trademarks of Cisco Technology, Inc.
- Google is a registered trademarks of Google Inc.
[References]
- The number of download from npm repository: https://npm-stat.com/charts.html?package=node-red&from=2015-02-28&to=2018-02-28
- AT&T, AT&T IoT Platform: https://flow.att.com
- FUJITSU Cloud Service K5 COLMINA Platform ユーザーズガイド:
https://k5-doc.jp-east-1.paas.cloud.global.fujitsu.com/doc/jp/colminapf/document/manual/usersguide.pdf
- IBM Cloud, Node-RED Starter: https://console.bluemix.net/catalog/starters/node-red-starter
- Node-RED node for Azure IoT Hub: https://github.com/Azure/azure-iot-sdk-node/tree/master/device/node-red
- NEC Mobile Backend Platform: https://flows.nodered.org/node/node-red-contrib-nec-baas
- GE Predix Developer Kit: https://software.intel.com/en-us/predix-developer-kit-adding-sensors
- Intel, Intel IoT Gateway:
https://www.intel.com/content/dam/www/public/us/en/documents/solution-briefs/setting-up-to-connect-to-dreamfactory-platform-tutorial.pdf
- NEC, CONNEXIVE IoT Connectivity Engine: http://jpn.nec.com/connexive/ice/feature.html
- Samsung Artik: https://developer.artik.io/documentation/artik/tutorials/node-red.html
- Siemens, SIMATIC IOT2020
https://w5.siemens.com/italy/web/AD/ProdottieSoluzioni/HomeSCE/SupportoDidattico/PartnerAccordi/Documents/iot2020-flyer-en.pdf
- エッジコンピューティングを実現する 社会インフラ・産業分野向け IoTゲートウェイ装置
https://www.toshiba.co.jp/tech/review/2017/04/72_04pdf/a09.pdf
- Dreamforce2016 Day4:XivelyはIoT導入のカギとなるサービスかも知れない
https://www.terrasky.co.jp/blog/2016/161010_001859.php
- Fujitsu Client Computing Devices Product Facts
https://sp.ts.fujitsu.com/dmsp/Publications/public/br-Facts-Client-Computing-Devices.pdf
- Siemens, MindSphere Visual Flow Creator
https://documentation.mindsphere.io/resources/pdf/visual-flow-creator-en.pdf
- A node to call REST API for FUJITSU Cloud Service K5 IoT Platform
https://flows.nodered.org/node/node-red-contrib-fjiotpfhttp
Trademarks and references
18

More Related Content

Recently uploaded

#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsAndrey Dotsenko
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 

Recently uploaded (20)

#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 

Featured

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

Featured (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

How to join Open Source Software community

  • 1. © Hitachi, Ltd. 2018. All rights reserved. How to join Open Source Software community Hitachi, Ltd. 07/15/2018 Kazuhito Yokoi
  • 2. © Hitachi, Ltd. 2018. All rights reserved. What I will deliver in my presentation 1 • Open Source Software (OSS) contribution is important activity in companies. • OSS visual programing tool, “Node-RED” • Contribution know-how based on our experiences in joining Node-RED community • New OSS project, “Node generator” which Hitachi started contributing to
  • 3. © Hitachi, Ltd. 2018. All rights reserved. Advantages of OSS 2 There’re many advantages of using OSS in a company [OSS user company] • Low cost and delivery speed • Reliable source code • Long term support without vender lock-in • Standard technologies (Docker, k8s, Cloud Foundry etc.) [OSS contributor company] • Companies can add new functionalities related to their business • Companies can advertise their abilities to their customers • Engineers can learn development skills from community members
  • 4. © Hitachi, Ltd. 2018. All rights reserved. Visual programing tool for IoT applications • Flow-based programming which realizes quick development • Various connectors (Node-RED nodes) to add functionalities • Open source software under Linux Foundation Node-RED 3 (2) Drag and drop connectors to workspace (3) Wire the connectors in the processing order (4) Flow runs immediately once clicking deploy button (1) Select connectors which have various functions
  • 5. © Hitachi, Ltd. 2018. All rights reserved. Node-RED has been more open and popular as OSS for both edge and cloud environments. • March 2014: Developed by IBM UK and released in QCon London • June 2014: Included in the catalog on IBM Cloud • November 2015: Pre-installed in Raspberry Pi • October 2016: Moved to Linux Foundation • As of July 2018: Downloaded 50,000 times a month History of Node-RED 4 0K 20K 40K 60K Jan '15 Jul '15 Jan '16 Jul '16 Jan '17 Jul '17 Jan '18 npmdownloads The number of npm downloads per month 50,000 downloads in a month
  • 6. © Hitachi, Ltd. 2018. All rights reserved. Major companies have used Node-RED in their productions • Cloud services - AT&T, AT&T IoT Platform - CISCO, Meraki - Fujitsu, K5 COLMINA Platform - Google, Xively - Hitachi, Lumada - IBM, IBM Cloud - Siemens, MindSphere Visual Flow Creator • Connectors (Node-RED nodes) - Fujitsu, K5 IoT Platform - IBM, Watson, Watson IoT Platform, dashDB, Cloudant, OpenWhisk, Weather Company Data - Microsoft, Azure IoT Hub - NEC, Mobile Backend Platform - Val Laboratory Corporation, Ekispert Node-RED users 5 • Edge Devices - Fujitsu, INTELLIEDGE A700 Appliance - GE, Predix Developer Kit - Intel, Intel IoT Gateway - NEC, CONNEXIVE IoT Connectivity Engine - Samsung, Artik - Siemens, SIMATIC IOT2020 - Toshiba, SPINEX Red: companies which speakers in DevRelCon Tokyo work for
  • 7. © Hitachi, Ltd. 2018. All rights reserved. (1) Rapid development for IoT applications • Factory engineers can create IoT application within couple of hours • Same development style in both edge and cloud environments (2) Standard technologies in industrial IoT • Essential IoT technologies (e.g. REST API, WebSocket and MQTT) • Pre-installed software on standard edge devices (3) Open community • 80 contributors are developing Node-RED • 3rd party 1,488 connectors Benefits of Node-RED 6
  • 8. © Hitachi, Ltd. 2018. All rights reserved. Node-RED key features to realize IoT system 7 ・・・ (2) Data collection (5) Data accumulation /retrieving IT systems (1) Edge analytics (4) Dashboard Node-RED on Cloud Node-RED on edge devices (3)Device control Sensor OT systems Business data External services Sensor MQTT REST API MQTT REST API Data lake (6) Integration with existing systems (7) Connection to external services
  • 9. Hitachi’s contributions to Node-RED 8 We have added over 200 commits and 20,000 lines of code to Node-RED project 0 3,000 6,000 9,000 12,000 15,000 May-16 Sep-16 Jan-17 May-17 Sep-17 Jan-18 May-18 IBM Hitachi OtherHitachi started contribution Line of code Line of codes in Node-RED repository
  • 10. © Hitachi, Ltd. 2018. All rights reserved. Problem: There’s no chance to start OSS activities Solution: Face to face meeting with core developers • To create relationship with core developers, Hitachi members visited IBM UK office and had technical discussion. What is the first step? 9 Image: https://www.ibm.com/blogs/solutions/jp-ja/introduction-of-nodered/
  • 11. © Hitachi, Ltd. 2018. All rights reserved. Problem: Contribution procedures on GitHub are not clear Solution: On-site development with core developers Hitachi engineers worked in IBM UK office for two weeks to learn contribution procedures. How to start contribution? 10 Image: https://www.ibm.com/blogs/solutions/jp-ja/introduction-of-nodered/ Discussion Coding
  • 12. © Hitachi, Ltd. 2018. All rights reserved. Problem: Continuous connection with developers Solution: Monthly teleconference and online communication • We hold monthly teleconference with core developers (Recently we started biweekly teleconference with all developers) • We use discourse forum to communicate with community members How to continue to connect with developers? 11 Node-RED forumTechnical interchange meeting
  • 13. © Hitachi, Ltd. 2018. All rights reserved. How to establish presence in the community? 12 Problem: Number of users is important to be major OSS Solution: Introductory book and presentations in conferences Sessions in global conferenceNode-RED book for beginners http://amzn.asia/hQBvEIK
  • 14. © Hitachi, Ltd. 2018. All rights reserved. What is the best for the first contribution? 13 • Documentation (Sometimes official documents doesn’t contain the latest information) • Quality improvement (Adding test cases and bug fix) • Internationalization (Especially Japanese) Japanese Chinese English(Original)
  • 15. © Hitachi, Ltd. 2018. All rights reserved. Hitachi drives new OSS project (1) 14 • We published our command line tool, “node generator” as new OSS under Linux Foundation (JS Foundation). • Using node generator tool, engineers can easily create connectors (Node-RED nodes) from Swagger definition or JavaScript code Node Generator JavaScript code Swagger definition Original node https://github.com/node-red/node-red-nodegen
  • 16. © Hitachi, Ltd. 2018. All rights reserved. Hitachi drives new OSS project (2) 15 • To add the functionalities, we have open discussion using the tools. • Slack: real time discussion with community members • GitHub: Kanban board (projects) to share roadmap
  • 17. Demo: Tracking space station on map 16  Node-RED can easily get data via REST API and visualize it on the browser  The demonstration program gets location of space station and plots it on the map 1. Get latitude and longitude 2. Handle location data Web browser 3. Plot pins on map Space station Node-RED REST API
  • 18. Demo: Tracking space station on map 17
  • 19. © Hitachi, Ltd. 2018. All rights reserved. [Trademarks] - IBM, Watson, dashDB, Cloudant and OpenWhisk are registered trademarks of International Business Machines Corporation. - AT&T is a registered trademark of AT&T Inc. - Fujitsu and COLMINA are registered trademarks of Fujitsu Ltd. - Microsoft is a registered trademark of Microsoft Corporation. - NEC and CONNEXIVE are registered trademarks of NEC Corporation. - GE and Predix are registered trademarks of General Electric Company. - Intel is a registered trademark of Intel Corporation. - Samsung is a registered trademark of Samsung C&T Corporation. - Samsung Artik is a registered trademark of Samsung Electronics Co. Ltd. - Siemens and SIMATIC are registered trademarks of Siemens Aktiengesellschaft. - Toshiba is a registered trademark of Toshiba Corporation. - SPINEX is a registered trademark of Toshiba Digital Solutions Corporation. - MySQL is a registered trademark of MySQL Aktiebolag. - MongoDB is a registered trademark of MongoDB Limited. - Slack is a registered trademark of Slack Technologies, Inc. - GitHub is a registered trademark of GitHub, Inc. - Cisco and Meraki are registered trademarks of Cisco Technology, Inc. - Google is a registered trademarks of Google Inc. [References] - The number of download from npm repository: https://npm-stat.com/charts.html?package=node-red&from=2015-02-28&to=2018-02-28 - AT&T, AT&T IoT Platform: https://flow.att.com - FUJITSU Cloud Service K5 COLMINA Platform ユーザーズガイド: https://k5-doc.jp-east-1.paas.cloud.global.fujitsu.com/doc/jp/colminapf/document/manual/usersguide.pdf - IBM Cloud, Node-RED Starter: https://console.bluemix.net/catalog/starters/node-red-starter - Node-RED node for Azure IoT Hub: https://github.com/Azure/azure-iot-sdk-node/tree/master/device/node-red - NEC Mobile Backend Platform: https://flows.nodered.org/node/node-red-contrib-nec-baas - GE Predix Developer Kit: https://software.intel.com/en-us/predix-developer-kit-adding-sensors - Intel, Intel IoT Gateway: https://www.intel.com/content/dam/www/public/us/en/documents/solution-briefs/setting-up-to-connect-to-dreamfactory-platform-tutorial.pdf - NEC, CONNEXIVE IoT Connectivity Engine: http://jpn.nec.com/connexive/ice/feature.html - Samsung Artik: https://developer.artik.io/documentation/artik/tutorials/node-red.html - Siemens, SIMATIC IOT2020 https://w5.siemens.com/italy/web/AD/ProdottieSoluzioni/HomeSCE/SupportoDidattico/PartnerAccordi/Documents/iot2020-flyer-en.pdf - エッジコンピューティングを実現する 社会インフラ・産業分野向け IoTゲートウェイ装置 https://www.toshiba.co.jp/tech/review/2017/04/72_04pdf/a09.pdf - Dreamforce2016 Day4:XivelyはIoT導入のカギとなるサービスかも知れない https://www.terrasky.co.jp/blog/2016/161010_001859.php - Fujitsu Client Computing Devices Product Facts https://sp.ts.fujitsu.com/dmsp/Publications/public/br-Facts-Client-Computing-Devices.pdf - Siemens, MindSphere Visual Flow Creator https://documentation.mindsphere.io/resources/pdf/visual-flow-creator-en.pdf - A node to call REST API for FUJITSU Cloud Service K5 IoT Platform https://flows.nodered.org/node/node-red-contrib-fjiotpfhttp Trademarks and references 18

Editor's Notes

  1. Hello everyone. My name is Kazuhito Yokoi form Hitachi. I’m very glad to be here today. I’m one of the contributors in OSS Node-RED project. In my session, I’d like to talk about how to join OSS community. (0:20)
  2. First of all, let me start from what I will deliver in my presentation. I’ll talk about why OSS contribution is important activity in companies. Second, I’ll introduce an OSS visual programing tool, called “Node-RED” which was mainly contributed by IBM and Hitachi. Next, based on our own experiences in joining Node-RED community, I will talk about contribution know-how. Especially, for Japanese companies. Finally, I will introduce new OSS project, “Node generator” which Hitachi started contributing to. (0:48)
  3. In the next slide, I'll explain about advantages of OSS. As you know, there are many advantages of using OSS in a company. I think that user company has four points as follows. First, ”Low cost and delivery speed”. Everyone can easily download the OSS on the internet for free. Second, “Reliable source code” Entire source code is available on the internet. Therefore, if there is an error in the system, engineers can easily check the source code and come up with solutions. Third, “Long term support without vender lock-in” Sometimes vender lock-in has benefits for both vendor and engineers. But when the vendor stop their software, engineers need to migrate the software to others. On the other hand, if system uses OSS instead of the vender software, they don’t have to face that problem. Fourth, “Standard technologies” For example, Docker, kubernetes and Cloud Foundry are available as OSS. Because the system using OSS has compatibility, it can easily connect to other systems. OSS contributor company has more advantages over user company. First, they can add new functionalities related to their business. In the company, there are requirements about the software. If a company becomes a contributor, they can easily customize the software by themselves. Second, companies can advertise their abilities to their customers. Usually, companies can reach their customers through only their sales people. If a company becomes a contributor, they can reach their customers through OSS online activities. Actually, in my case, because of the online visibility, there are a lot of inquiries from customers after we started our contributions. Finally, engineers can learn development skills from community members. In traditional development style, engineers always need to solve the software problem inside their company. On the other hand, in OSS community, engineers can ask their questions on the internet and other engineers will help them. In my experience, I learned JavaScript coding methods, GitHub and Travis CI from community members. For these reasons, I encourage a lot of companies to be a contributor. (3:04)
  4. In this slide, I’d like to explain about “What is Node-RED?”. Node-RED is visual programing tool for IoT applications. The screenshot is development environment of Node-RED flow editor. There are a lot of connectors on the left side of the flow editor. After an engineer selects the connectors, he or she drags and drops them to the central workspace. Then the engineer wires connectors in the processing order. Once clicking the deploy button, the IoT application will run immediately. Because of the flow-based programing, it realizes quick development without coding. And there are various connectors to add functionalities. Node-RED is open source software under Linux Foundation project. A lot of companies including IBM and Hitachi have contributed to Node-RED. (1:20)
  5. This slide shows history of Node-RED. About four years ago, Node-RED was developed by IBM UK and released in Qcon London. As soon as the announcement was made, the beta version of IBM Cloud bundled Node-RED on the default catalog. Since the end of two thousand fifteen, Node-RED has been pre-installed on Raspberry Pi Linux OS. At the end of two thousand sixteen, the management of Node-RED project was transferred to Linux Foundation. As shown on the line chart, the number of downloads has increased gradually. Currently, Node-RED is downloaded fifty thousand times per month. As I have explained, Node-RED has been more open and popular as open source software for both edge and cloud environments. (1:13)
  6. Next, let me talk about “Who uses Node-RED?”. Major companies have used Node-RED in their productions. There are three types of the approaches. The first is cloud services. AT&T, Fujitsu, Hitachi and IBM have Node-RED environment on their cloud services. The second is connectors. IBM, Microsoft and NEC have published connectors for their services. The third is edge devices. GE, Intel, NEC, Samsung, Siemens and Toshiba have their edge devices which include Node-RED. RED means DevRelCon speaker’s companies. (1:00)
  7. Next slide is “Benefits of Node-RED”. There are three reasons why I recommend Node-RED. The first is “Rapid development for IoT applications”. Using Node-RED, IT and factory engineers can easily create their IoT application within couple of hours without coding. Same development style in both edge and cloud environments is also useful because IoT application tends to use both environments. The second is standard technologies in industrial IoT. Node-RED supports essential IoT technologies like REST API, WebSocket and MQTT protocols. As I said in the previous slide, a lot of standard edge devices including Raspberry Pi have Node-RED as their development environments. The third is open community. Eighty contributors are developing Node-RED on GitHub. You can join and suggest new features on GitHub. There are a lot of third party connectors on public npm repository. You can use the connectors to suit your needs. (1:30)
  8. In this slide, I’ll explain about “Node-RED key features”. In the typical IoT system, Node-RED has seven key features. (1) The first is Edge analytics. Edge devices have functionalities to connect sensor, camera, microphone and speaker via GPIO or serial port. After retrieving the data, Node-RED can filter or analyze them. For example, Open CV connector can locally detect human faces from image data. (2)(3) The second and third are Data collection and Device control. As the default, Node-RED has connectors for MQTT and WebSocket protocols. Via the protocols, Node-RED on cloud can collect data and control devices. (4) The fourth is dashboard. Using the dashboard, IoT application can visualize sensor data and notify alert when abnormal sensor data is detected. (5) The fifth is connection to data lake. Node-RED has connectors for major databases and object storages like MySQL, PostgreSQL, MongoDB and Amazon S3 compatible object storage. (6)(7) The sixth and seventh are connections to other systems. If other systems have REST API, Node-RED can easily connect to the system. (2:55)
  9. Let me talk about how much Hitachi has contributed to Node-RED project. In just a year, we have added over two hundred commits and twenty thousand lines of code to Node-RED project. As shown in the chart, Hitachi follows IBM as the second biggest contributor company. (0:30)
  10. When we decided to start contribution activity, we encountered the problem. We are not sure about the first step for the contribution. Our solution was face to face meeting with core developers. To create relationship with Node-RED core developers, Hitachi members visited IBM UK office and had technical discussion. The pictures on the right are IBM UK office and a snap with core developers. (0:35)
  11. After the face to face meeting, we understood the technical side of Node-RED. However, we were not familiar with the contribution procedures on GitHub because only a few Hitachi members used GitHub. As the solution, we suggested on-site development with core developers. And Hitachi engineers worked in IBM UK office for two weeks to learn contribution procedures. In the IBM office, We had discussion and coding. As shown in the picture, we sometimes had dinner together. (0:48)
  12. Next, “How to continue to connect with developers?”. Continuous connection with developers in foreign countries is important for online development. Therefore, we hold monthly teleconference with core developers. Recently we started biweekly teleconference with all developers in UK, Canada, the US and Japan. To communicate with community members, we are using discourse forum like this. On the forum, we always suggest new functionality and have discussions before we submit our pull request. (0:52)
  13. Next ,“How to establish presence in the community” I think that number of users is important to be major OSS. To realize it, we published five thousand introductory books in Japan. And we give presentations in global conferences. These activities were very effective in establishing our presence in the community. (0:35)
  14. Lastly, “What is the best for the first contribution?”. In terms of Japanese companies, I recommend some contributions as the first step. The first is “Documentation”. Because sometimes official documents do not contain the latest information. And Japanese have abilities to write documentation in English if they have a lot of time to write. The second is “Quality improvement”. I think that Japanese can concentrate on quality improvement by adding test cases and bug fix. The third is “internationalization” of the software. As you know, Japanese language tend to be used only in Japan. Therefore, in general, foreign engineers cannot translate into Japanese. In the Node-RED project, our first step was Japanese translation. If you change browser language setting, you can see other languages on Node-RED flow editor. (1:34)
  15. Finally, I will introduce a new OSS project which Hitachi is contributing to It is “node generator”, command line tool under Linux Foundation project. Using the tool, engineers can easily create Node-RED connectors from Swagger definition or JavaScript code. You can see the project on the following URL. (0:34)
  16. In the project, to add the functionalities, we have open discussion using the following tools. Slack is for real time discussion with community members. Currently, over forty members joined the node generator channel. To share development roadmap, we are using GitHub Kanban board. If you are interested in the project, please visit the web site. That’s all. Thank you for your listening. Have a nice day. (0:44)
  17. Let me demonstrate Node-RED. Node-RED can easily get data via REST API and visualize it on your browser. I’ll demonstrate simple example to get location data of space station and plots them on map. The demonstration consists of three steps. First, Node-RED gets location data of the space station from REST API. Second, Node-RED converts the data format for map framework. Finally, Node-RED plots the pins on the map in the browser. (0:46)