SlideShare a Scribd company logo
OpenStack Upstream Training Report
June/19/2014
Shuichiro Makigaki
Datastore Platform Group,
System Platform Development Section,
Global Infrastructure Development Department
2
Agenda
1. Self Introduction
2. What is Upstream Training?
• Objectives
• Schedule
3. Training Report
4. Thoughts
5. Short QA
3
Self Introduction
History
[1987 March 9th] Born in Nagano
[2012 April 1st ~] Join Rakuten
[2014 April ~] Join OpenStack Project
Current Job
• Datastore Admin/Architect (Clustrix)
• Infra web tool development (RoR)
• OpenStack
座右の銘: 原理は単純を、構造は複雑を極め、人は最も人らしく
長所: 考える・悩む・調べる・本を読む・黙る
短所: 喋らない・喋ることが無い・喋ることが思いつかない
Frequently Asked Questions:
Q1. 休日何してるんですか?
Q2. 私も本好きです!何読まれるんですか?
Q3. 趣味グラミングいいですね!何してるんですか?
Q4. でもなぜインフラなんかに?
APPLESEED
Masamune Shirow
4
What is Upstream Training?
5
Upstream
Training
Conference
In Atlanta
Design
Summit
What is Upstream Training?
Upstream (software development)
In software development, upstream refers to a direction toward the
original authors or maintainers of software that is distributed as source
code, and is a qualification of either a bug or a patch.
From Wikipedia, the free encyclopedia
6
Where is Atlanta?
Georgia World Congress Center
7
Objectives
 Faster integration of the companies product roadmap into the
OpenStack release cycle
 Successfully contribute one real world patch to an OpenStack
component
 Master the technical tools
 Understand the OpenStack contribution workflow and social norms
In addition,
• Make connection
• Introduce the training to your boss!
• Leaded by developers, not sales person.
8
Objectives
× Learn architecture of OpenStack components
× Learn source code structure
× Learn hidden parameters
× Learn actual operation know-how
× Learn the best management practice
9
Training Schedule
Online mentoring 1A week before Day 1
• Choice of a contribution, via email, with each participant
How OpenStack is madeDay 1
• Learn and practice git, gerrit, IRC
The theory of contributionDay 2
• Lego contribution simulation
• Individual presentation of the contribution plan
Online mentoring 2A week after Day 2
10
Training Report
11
A week before
Training
Day 1
Training
Day 2
Conference
A week
after Day 2
A week before Day 1
Pick a few (3 or so) bugs from the low hanging fruit list or elsewhere (it
is up to you) look like good candidates for you to work on during the
training
• Mentor will help you pick one.
It is best to chose a contribution that looks easy.
• The goal of the training will be to get your work accepted
upstream.
• Even the simplest work is an opportunity to learn.
12
A week before
Training
Day 1
Training
Day 2
Conference
A week
after Day 2
Day 1 (Morning)
How OpenStack is made
(3h including 1h30 exercises)
1. Release cycle
2. Relevant actors
3. Technical Committee
4. Program ecosystem
5. Design summits
6. IRC meetings
13
A week before
Training
Day 1
Training
Day 2
Conference
A week
after Day 2
Day 1 (Afternoon)
Workflow of an OpenStack
contribution and tools
(3h including 2h exercises)
1. devstack
2. How to contribute
3. launchpad
4. gerrit workflow
5. Branching model
6. reviewing
7. writing a commit message
8. jenkins
14
A week before
Training
Day 1
Training
Day 2
Conference
A week
after Day 2
Day 2
1. The Contribution Process (3 hours)
2. Agile for Contributors (15 min)
3. Contribution Simulation (1 hour)
4. Contribution Planning (2 hours)
15
A week before
Training
Day 1
Training
Day 2
Conference
A week
after Day 2
Day2 - The Contribution Process
Philosophy of open source contribution
Project pulse
Who's behind ?
Project social groups
Assess your approach
Engage immediately
Play with your network
Smaller tasks
Choosing a question
Code of conduct
Disagree
Understanding the Conventions
Explain what you do
Prepare the backport
Local and upstream
Good workflow
Bad workflow
Quantify the delta
Speeding the acceptance
Timeframe
Building karma
Parallelizing
From easy to difficult
Archive and collect
16
A week before
Training
Day 1
Training
Day 2
Conference
A week
after Day 2
Day 2 - Lego: What agile is.
Upstream project : a Lego town
Company deadline : Lego exhibition
Epic : become a major contributor and
demonstrate the company skills during
the exhibition
• planning (5 min) → building (15
min) → reviewing (5 min)
Actor
• Upstream (Board, Technical Committee, Core)
• Company (CEO, Product owner, Scrum Master, Team members)
• Free Software contributors (Distracted, Controversial, Agreeable…)
17
References
Training materials are available at:
https://wiki.openstack.org/wiki/OpenStack_Upstream_Training/Info
You can re-experience the training by reading them all.
18
Thoughts
19
Language barrier
Contribution is not just about being technically savvy. It's also about
cooperation and you will get an opportunity to practice from day one :-) For
instance, the language barrier is a handicap and an opportunity to help
or receive help. Native english speakers already noticed I'm not a native
english speaker and kindly refrained from criticizing me. I acknowledge
this problem and from time to time I'll ask for help to clarify an explanation. If
it turns out that my english is better than someone else, I'll return the favor
and gladly help rewrite a mail or rephrase a sentence.
From mentor’s email
20
Language barrier
Lack of English listening ability
Can not understand lecture completely
• Mottainai!
Can not understand Exercise completely
However, can not ask a question!
But, anyone is kind basically even if you speak slowly.
• Keep accuracy, honesty and professionalism
Nervous is not a problem, but don’t hesitate.
21
Import the training to Japan!
Required
• All!
• including free drink & lunch
Should be considered
• Lego: Alternative agile training
• Exercise: Make it clear. Sometimes vague…
Wanted
• Choose bugs carefully that will be fixed
• How to write better emails to community mailing list
• How to dive source code (gnu global, IDE, call graph…)
• How about other opensouce community style?
(Linux kernel, …, Github, bugzilla)
• How about other contribution way? (documentation, infra)
22
Others
Communication
• Don’t depend on Launchpad and mailing list
• Instead, use IRC!
• Push codes to gerrit, as well as discussing
• Try other contribution ways
• Documentation, code review, comments…
• Keep accuracy, honesty and professionalism
Don’t hesitate
• Everyone is kind 
, and never give up
• recheck no bug, recheck bug,…
• Ignored? Say “Hello, again!” on IRC
http://openstackreactions.enovance.com/2014/01/keep-hitting-recheck-no-bug-in-reviews/
23
A week before
Training
Day 1
Training
Day 2
Conference
A week
after Day 2
Online Meeting after Day2
24
Let’s start contribution!
25
Searching bug…
26
But, incomplete… (already fixed)
27
np. searching bug again…
28
Communicate well
29
OK, Push!
30
Reviewed!
but “-1”… OK, what should I fix..?
31
……?!
32
33
Never give up!
34
And, push!
35
Wow! Quick review!
36
Recheck
37
Recheck!
38
Recheck!!
39
Recheck!!!
40
Recheck!!!!
41
Review +2!
42
Thank you for listening.

More Related Content

PPTX
Beginner android
PPT
Workshop: Understanding our challenges
PPTX
PUG 2013 Presentation: Training Your Staff
PPTX
It's XP Stupid (2019)
PPTX
Delivering Quality: One Weekend At A Time
PDF
Remote Project Manager's Arsenal
PDF
From RUP to Scrum in an Internet company - UOL
PDF
The 5 People in your Organization that grow Legacy Code
Beginner android
Workshop: Understanding our challenges
PUG 2013 Presentation: Training Your Staff
It's XP Stupid (2019)
Delivering Quality: One Weekend At A Time
Remote Project Manager's Arsenal
From RUP to Scrum in an Internet company - UOL
The 5 People in your Organization that grow Legacy Code

Viewers also liked (6)

PPTX
Working With Upstream OpenStack Deadlines and Internal Deadlines
PDF
Assign, commit, and review - A developer’s guide to OpenStack contribution-20...
PPTX
The OpenStack Contribution Workflow
PPTX
[DevDay 2016] OpenStack and approaches for new users - Speaker: Chi Le – Head...
PDF
OpenStack: Upstream First
PDF
LAS16-301: OpenStack on Aarch64, running in production, upstream improvements...
Working With Upstream OpenStack Deadlines and Internal Deadlines
Assign, commit, and review - A developer’s guide to OpenStack contribution-20...
The OpenStack Contribution Workflow
[DevDay 2016] OpenStack and approaches for new users - Speaker: Chi Le – Head...
OpenStack: Upstream First
LAS16-301: OpenStack on Aarch64, running in production, upstream improvements...
Ad

Similar to OpenStack Upstream Training Report (20)

PPTX
TDD - Seriously, try it! (updated '22)
PPTX
TDD - Seriously, try it! - Trójmiasto Java User Group (17th May '23)
PPTX
TDD - Seriously, try it! - Trjjmiasto JUG (17th May '23)
PPTX
TDD - Seriously, try it! - Bucarest Tech Week
PPTX
DevCoach - Solid Foundations for the New Wave of Software Developers
PPTX
TDD - Seriously, try it - Codemotion (May '24)
PDF
Standing on the Shoulders of Giants: How Community Shapes Development in Elli...
PDF
Improve performance of developer - Khodak
PDF
Class One: The Computer
PPTX
TDD - Seriously, try it! - Opensouthcode
PDF
It's XP, Stupid
PDF
Open Source Lessons from the TODO Group
PPTX
Oscon 2016: open source lessons from the todo group
PPTX
Don't get blamed for your choices - Techorama 2019
PDF
We Need to Talk: How Communication Helps Code
PDF
Technical Writing Overview: WTD Nigeria
PDF
How to Teach Yourself to Code
PDF
Rex Sprint 0 - how build the data model with 2 BA and 3 IT architects
PPTX
Pair Programming Styles
KEY
SlideShare culture
TDD - Seriously, try it! (updated '22)
TDD - Seriously, try it! - Trójmiasto Java User Group (17th May '23)
TDD - Seriously, try it! - Trjjmiasto JUG (17th May '23)
TDD - Seriously, try it! - Bucarest Tech Week
DevCoach - Solid Foundations for the New Wave of Software Developers
TDD - Seriously, try it - Codemotion (May '24)
Standing on the Shoulders of Giants: How Community Shapes Development in Elli...
Improve performance of developer - Khodak
Class One: The Computer
TDD - Seriously, try it! - Opensouthcode
It's XP, Stupid
Open Source Lessons from the TODO Group
Oscon 2016: open source lessons from the todo group
Don't get blamed for your choices - Techorama 2019
We Need to Talk: How Communication Helps Code
Technical Writing Overview: WTD Nigeria
How to Teach Yourself to Code
Rex Sprint 0 - how build the data model with 2 BA and 3 IT architects
Pair Programming Styles
SlideShare culture
Ad

More from Rakuten Group, Inc. (20)

PDF
EPSS (Exploit Prediction Scoring System)モニタリングツールの開発
PPTX
コードレビュー改善のためにJenkinsとIntelliJ IDEAのプラグインを自作してみた話
PDF
楽天における安全な秘匿情報管理への道のり
PDF
What Makes Software Green?
PDF
Simple and Effective Knowledge-Driven Query Expansion for QA-Based Product At...
PDF
DataSkillCultureを浸透させる楽天の取り組み
PDF
大規模なリアルタイム監視の導入と展開
PDF
楽天における大規模データベースの運用
PDF
楽天サービスを支えるネットワークインフラストラクチャー
PDF
楽天の規模とクラウドプラットフォーム統括部の役割
PDF
Rakuten Services and Infrastructure Team.pdf
PDF
The Data Platform Administration Handling the 100 PB.pdf
PDF
Supporting Internal Customers as Technical Account Managers.pdf
PDF
Making Cloud Native CI_CD Services.pdf
PDF
How We Defined Our Own Cloud.pdf
PDF
Travel & Leisure Platform Department's tech info
PDF
Travel & Leisure Platform Department's tech info
PDF
OWASPTop10_Introduction
PDF
Introduction of GORA API Group technology
PDF
100PBを越えるデータプラットフォームの実情
EPSS (Exploit Prediction Scoring System)モニタリングツールの開発
コードレビュー改善のためにJenkinsとIntelliJ IDEAのプラグインを自作してみた話
楽天における安全な秘匿情報管理への道のり
What Makes Software Green?
Simple and Effective Knowledge-Driven Query Expansion for QA-Based Product At...
DataSkillCultureを浸透させる楽天の取り組み
大規模なリアルタイム監視の導入と展開
楽天における大規模データベースの運用
楽天サービスを支えるネットワークインフラストラクチャー
楽天の規模とクラウドプラットフォーム統括部の役割
Rakuten Services and Infrastructure Team.pdf
The Data Platform Administration Handling the 100 PB.pdf
Supporting Internal Customers as Technical Account Managers.pdf
Making Cloud Native CI_CD Services.pdf
How We Defined Our Own Cloud.pdf
Travel & Leisure Platform Department's tech info
Travel & Leisure Platform Department's tech info
OWASPTop10_Introduction
Introduction of GORA API Group technology
100PBを越えるデータプラットフォームの実情

Recently uploaded (20)

PPTX
Cloud computing and distributed systems.
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PPTX
Programs and apps: productivity, graphics, security and other tools
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
Spectroscopy.pptx food analysis technology
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPTX
MYSQL Presentation for SQL database connectivity
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
KodekX | Application Modernization Development
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Cloud computing and distributed systems.
Chapter 3 Spatial Domain Image Processing.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
Dropbox Q2 2025 Financial Results & Investor Presentation
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Programs and apps: productivity, graphics, security and other tools
20250228 LYD VKU AI Blended-Learning.pptx
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Review of recent advances in non-invasive hemoglobin estimation
Spectroscopy.pptx food analysis technology
Reach Out and Touch Someone: Haptics and Empathic Computing
MYSQL Presentation for SQL database connectivity
NewMind AI Weekly Chronicles - August'25 Week I
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Network Security Unit 5.pdf for BCA BBA.
KodekX | Application Modernization Development
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Unlocking AI with Model Context Protocol (MCP)
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...

OpenStack Upstream Training Report

  • 1. OpenStack Upstream Training Report June/19/2014 Shuichiro Makigaki Datastore Platform Group, System Platform Development Section, Global Infrastructure Development Department
  • 2. 2 Agenda 1. Self Introduction 2. What is Upstream Training? • Objectives • Schedule 3. Training Report 4. Thoughts 5. Short QA
  • 3. 3 Self Introduction History [1987 March 9th] Born in Nagano [2012 April 1st ~] Join Rakuten [2014 April ~] Join OpenStack Project Current Job • Datastore Admin/Architect (Clustrix) • Infra web tool development (RoR) • OpenStack 座右の銘: 原理は単純を、構造は複雑を極め、人は最も人らしく 長所: 考える・悩む・調べる・本を読む・黙る 短所: 喋らない・喋ることが無い・喋ることが思いつかない Frequently Asked Questions: Q1. 休日何してるんですか? Q2. 私も本好きです!何読まれるんですか? Q3. 趣味グラミングいいですね!何してるんですか? Q4. でもなぜインフラなんかに? APPLESEED Masamune Shirow
  • 4. 4 What is Upstream Training?
  • 5. 5 Upstream Training Conference In Atlanta Design Summit What is Upstream Training? Upstream (software development) In software development, upstream refers to a direction toward the original authors or maintainers of software that is distributed as source code, and is a qualification of either a bug or a patch. From Wikipedia, the free encyclopedia
  • 6. 6 Where is Atlanta? Georgia World Congress Center
  • 7. 7 Objectives  Faster integration of the companies product roadmap into the OpenStack release cycle  Successfully contribute one real world patch to an OpenStack component  Master the technical tools  Understand the OpenStack contribution workflow and social norms In addition, • Make connection • Introduce the training to your boss! • Leaded by developers, not sales person.
  • 8. 8 Objectives × Learn architecture of OpenStack components × Learn source code structure × Learn hidden parameters × Learn actual operation know-how × Learn the best management practice
  • 9. 9 Training Schedule Online mentoring 1A week before Day 1 • Choice of a contribution, via email, with each participant How OpenStack is madeDay 1 • Learn and practice git, gerrit, IRC The theory of contributionDay 2 • Lego contribution simulation • Individual presentation of the contribution plan Online mentoring 2A week after Day 2
  • 11. 11 A week before Training Day 1 Training Day 2 Conference A week after Day 2 A week before Day 1 Pick a few (3 or so) bugs from the low hanging fruit list or elsewhere (it is up to you) look like good candidates for you to work on during the training • Mentor will help you pick one. It is best to chose a contribution that looks easy. • The goal of the training will be to get your work accepted upstream. • Even the simplest work is an opportunity to learn.
  • 12. 12 A week before Training Day 1 Training Day 2 Conference A week after Day 2 Day 1 (Morning) How OpenStack is made (3h including 1h30 exercises) 1. Release cycle 2. Relevant actors 3. Technical Committee 4. Program ecosystem 5. Design summits 6. IRC meetings
  • 13. 13 A week before Training Day 1 Training Day 2 Conference A week after Day 2 Day 1 (Afternoon) Workflow of an OpenStack contribution and tools (3h including 2h exercises) 1. devstack 2. How to contribute 3. launchpad 4. gerrit workflow 5. Branching model 6. reviewing 7. writing a commit message 8. jenkins
  • 14. 14 A week before Training Day 1 Training Day 2 Conference A week after Day 2 Day 2 1. The Contribution Process (3 hours) 2. Agile for Contributors (15 min) 3. Contribution Simulation (1 hour) 4. Contribution Planning (2 hours)
  • 15. 15 A week before Training Day 1 Training Day 2 Conference A week after Day 2 Day2 - The Contribution Process Philosophy of open source contribution Project pulse Who's behind ? Project social groups Assess your approach Engage immediately Play with your network Smaller tasks Choosing a question Code of conduct Disagree Understanding the Conventions Explain what you do Prepare the backport Local and upstream Good workflow Bad workflow Quantify the delta Speeding the acceptance Timeframe Building karma Parallelizing From easy to difficult Archive and collect
  • 16. 16 A week before Training Day 1 Training Day 2 Conference A week after Day 2 Day 2 - Lego: What agile is. Upstream project : a Lego town Company deadline : Lego exhibition Epic : become a major contributor and demonstrate the company skills during the exhibition • planning (5 min) → building (15 min) → reviewing (5 min) Actor • Upstream (Board, Technical Committee, Core) • Company (CEO, Product owner, Scrum Master, Team members) • Free Software contributors (Distracted, Controversial, Agreeable…)
  • 17. 17 References Training materials are available at: https://wiki.openstack.org/wiki/OpenStack_Upstream_Training/Info You can re-experience the training by reading them all.
  • 19. 19 Language barrier Contribution is not just about being technically savvy. It's also about cooperation and you will get an opportunity to practice from day one :-) For instance, the language barrier is a handicap and an opportunity to help or receive help. Native english speakers already noticed I'm not a native english speaker and kindly refrained from criticizing me. I acknowledge this problem and from time to time I'll ask for help to clarify an explanation. If it turns out that my english is better than someone else, I'll return the favor and gladly help rewrite a mail or rephrase a sentence. From mentor’s email
  • 20. 20 Language barrier Lack of English listening ability Can not understand lecture completely • Mottainai! Can not understand Exercise completely However, can not ask a question! But, anyone is kind basically even if you speak slowly. • Keep accuracy, honesty and professionalism Nervous is not a problem, but don’t hesitate.
  • 21. 21 Import the training to Japan! Required • All! • including free drink & lunch Should be considered • Lego: Alternative agile training • Exercise: Make it clear. Sometimes vague… Wanted • Choose bugs carefully that will be fixed • How to write better emails to community mailing list • How to dive source code (gnu global, IDE, call graph…) • How about other opensouce community style? (Linux kernel, …, Github, bugzilla) • How about other contribution way? (documentation, infra)
  • 22. 22 Others Communication • Don’t depend on Launchpad and mailing list • Instead, use IRC! • Push codes to gerrit, as well as discussing • Try other contribution ways • Documentation, code review, comments… • Keep accuracy, honesty and professionalism Don’t hesitate • Everyone is kind  , and never give up • recheck no bug, recheck bug,… • Ignored? Say “Hello, again!” on IRC http://openstackreactions.enovance.com/2014/01/keep-hitting-recheck-no-bug-in-reviews/
  • 23. 23 A week before Training Day 1 Training Day 2 Conference A week after Day 2 Online Meeting after Day2
  • 30. 30 Reviewed! but “-1”… OK, what should I fix..?
  • 32. 32
  • 42. 42 Thank you for listening.