<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://wiki.openstack.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Dachary</id>
		<title>OpenStack - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://wiki.openstack.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Dachary"/>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/wiki/Special:Contributions/Dachary"/>
		<updated>2026-06-29T14:24:45Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.28.2</generator>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=Akanda&amp;diff=90405</id>
		<title>Akanda</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=Akanda&amp;diff=90405"/>
				<updated>2015-09-16T16:08:38Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: fix the link to the codebase&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; Docs http://docs.akanda.io/en/latest/&lt;br /&gt;
 Past IRC Meetings http://eavesdrop.openstack.org/meetings/akanda&lt;br /&gt;
 [https://review.openstack.org/#/q/status:open+project:stackforge/akanda-appliance+OR+project:stackforge/akanda-appliance+OR+project:stackforge/akanda-appliance-builder+OR+project:stackforge/akanda-rug+OR+project:stackforge/akanda-horizon+OR+project:stackforge/akanda-neutron,n,z Patches in review]&lt;br /&gt;
 Code series https://launchpad.net/akanda&lt;br /&gt;
 Codebase https://github.com/stackforge/akanda&lt;br /&gt;
 Meeting agenda https://wiki.openstack.org/wiki/Meetings/akanda&lt;br /&gt;
&lt;br /&gt;
= What Is Akanda =&lt;br /&gt;
Akanda is the only open source network virtualization solution built by OpenStack&lt;br /&gt;
operators for real OpenStack clouds. Akanda eliminates the need for complex SDN&lt;br /&gt;
controllers, overlays and multiple plugins for cloud networking by providing a&lt;br /&gt;
simple integrated networking stack (routing, firewall, load balancing) for&lt;br /&gt;
connecting and securing multi-tenant OpenStack environments.&lt;br /&gt;
&lt;br /&gt;
Akanda is layer 2 agnostic and interfaces with the OpenStack Neutron REST APIs.&lt;br /&gt;
Akanda includes a sophisticated lifecycle management and orchestration platform&lt;br /&gt;
to monitor, configure, and manage 3rd party virtualized routers, load balancers&lt;br /&gt;
and firewalls.&lt;br /&gt;
&lt;br /&gt;
The Name - Project names are a powerful tool because they can be used to bond teams,&lt;br /&gt;
communicate effectively and convey the end goal. Like many projects, we&lt;br /&gt;
considered many names until a member of our team sought out to find a word&lt;br /&gt;
appropriate for an open project. This word enables us to say something more&lt;br /&gt;
clearly and with a bevy of excellent synonyms by using the Sanskrit word&lt;br /&gt;
अखण्ड (akhaNDa) which has such lovely connotations as &amp;quot;non-stop, &amp;quot;undivided,&lt;br /&gt;
&amp;quot;entire,&amp;quot; &amp;quot;whole,&amp;quot; and most importantly, &amp;quot;**not broken**.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
= Installing Akanda =&lt;br /&gt;
* Using source http://docs.akanda.io/en/latest/operation.html#installation&lt;br /&gt;
* Using devstack http://docs.akanda.io/en/latest/developer_quickstart.html#deploying-akanda-using-devstack&lt;br /&gt;
&lt;br /&gt;
= Operating Akanda = &lt;br /&gt;
Rug ctl commands http://docs.akanda.io/en/latest/operation.html#id1&lt;br /&gt;
&lt;br /&gt;
= Akanda Development Plans =&lt;br /&gt;
Akanda is only open source and OpenStack. We have only have code in https://git.openstack.org. From our Liberty Summit development plans here https://etherpad.openstack.org/p/liberty-akanda-design, the Akanda project is working towards supporting more OpenStack Neutron Advanced services, more stability, better performance, and better OpenStack code integration. All the details of our plans are outlined in our blueprints and specs that can be found here https://blueprints.launchpad.net/akanda.&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=67096</id>
		<title>OpenStack Upstream Training/Info</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=67096"/>
				<updated>2014-10-31T13:29:52Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: add kilo etherpad links&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;translate&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction == &lt;br /&gt;
&lt;br /&gt;
With over 2000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions.  These can significantly slow down the speed at which newcomers are successful at integrating their own roadmap into that of the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to help professional developers negotiate this hurdle.  It shows them how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time.  The educational program requires students to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In a followup session, the students benefit from individual online sessions to help them resolve any remaining problems they might have.&lt;br /&gt;
&lt;br /&gt;
== Objectives == &lt;br /&gt;
&lt;br /&gt;
* Faster integration of the companies product roadmap into the OpenStack release cycle&lt;br /&gt;
* Successfully contribute one real world patch to an OpenStack component&lt;br /&gt;
* Master the technical tools&lt;br /&gt;
* Understand the OpenStack contribution workflow and social norms&lt;br /&gt;
&lt;br /&gt;
== Target Audience == &lt;br /&gt;
&lt;br /&gt;
* Developers&lt;br /&gt;
* System administrators&lt;br /&gt;
&lt;br /&gt;
== Prerequisites == &lt;br /&gt;
&lt;br /&gt;
* Being able to read and write English at a technical level.&lt;br /&gt;
* If contributing code, being technically proficient enough to carry out simple bug fixes in the project.&lt;br /&gt;
* If contributing documentation, being able to produce documents in the project's chosen infrastructure.&lt;br /&gt;
* Having at least 8 hours a week to dedicate to the project, be it through programming or through interacting with the community.&lt;br /&gt;
&lt;br /&gt;
== Duration == &lt;br /&gt;
&lt;br /&gt;
* Face-to-face section: 2 days&lt;br /&gt;
* Online section: 10 one-hour individual mentoring sessions over a period of 4 to 10 weeks&lt;br /&gt;
&lt;br /&gt;
== Infrastructure == &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Setup_DevStack|ready to use devstack VM]] for participants with network connectivity but troubles with their laptop&lt;br /&gt;
&lt;br /&gt;
= Course Outline = &lt;br /&gt;
&lt;br /&gt;
== First day == &lt;br /&gt;
&lt;br /&gt;
=== Introduction === &lt;br /&gt;
&lt;br /&gt;
* A week before Day 1: choice of a contribution, via email, with each participant&lt;br /&gt;
* Day 1: How OpenStack is made&lt;br /&gt;
* Day 1: Learn and practice git, gerrit, IRC&lt;br /&gt;
&lt;br /&gt;
* Day 2: The theory of contribution&lt;br /&gt;
* Day 2: Lego contribution simulation&lt;br /&gt;
* Day 2: Individual presentation of the contribution plan&lt;br /&gt;
* Day 2: Online mentoring&lt;br /&gt;
&lt;br /&gt;
=== How OpenStack is made (3h including 1h30 exercises) === &lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Release_Cycle Release cycle] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/01-release-cycle.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Planning_.28Design.2C_Discuss_and_Target.29 Planning (Design, Discuss and Target)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Implementation_.28Milestone_iterations.29 Implementation (Milestone iterations)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Pre-release_.28Release_Candidates_dance.29 Pre-release (Release Candidates dance)]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_candidate_1 Release candidate 1]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Other_release_candidates Other release candidates]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_day Release day]&lt;br /&gt;
** Exercise: based on the [https://wiki.openstack.org/wiki/Juno_Release_Schedule Juno release schedule] find the URL of a document or a patch that belongs to each of the above steps.&lt;br /&gt;
* Relevant actors ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/02-relevant-actors.rst slides] )&lt;br /&gt;
** [http://www.stackalytics.com/?release=juno&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] companies&lt;br /&gt;
** [http://www.stackalytics.com/?release=juno&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] individuals (bottom of the page)&lt;br /&gt;
** Your management&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee Technical Committee] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/03-technical-committee.rst slides] )&lt;br /&gt;
** Decide what is an [https://wiki.openstack.org/wiki/Programs OpenStack Program]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/TechnicalCommittee meetings] &lt;br /&gt;
** Exercise: read [http://eavesdrop.openstack.org/meetings/tc/2014/tc.2014-04-01-20.03.log.html archived] and briefly comment on [https://etherpad.openstack.org/p/keystone-incubation-integration-requirements keystone document]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Program_Leads PTLs]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_PTL_seats_.28.22APC.22.29 APC]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_TC_seats_.28.22ATC.22.29 ATC]&lt;br /&gt;
** Exercise: each APC / ATC in the class add a URL to the etherpad proving it&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/NewProjects Program ecosystem]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/04-program-ecosystem.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Incubation Incubated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Integrated Integrated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Core_.3F Core]&lt;br /&gt;
** [http://ci.openstack.org/stackforge.html Stackforge]&lt;br /&gt;
** Exercise: What kind of Program do you contribute to ?&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Summit Design summits]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/05-design-summit.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#Propose_sessions propose sessions]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#At_the_Design_Summit attend or lead a session]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit/Kilo/Etherpads Kilo Summit Etherpads]&lt;br /&gt;
** Exercise: Add a session proposal regarding your contribution in an etherpad, review two proposals&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Meetings IRC meetings]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/06-irc-meetings.rst slides] )&lt;br /&gt;
** [http://ci.openstack.org/meetbot.html modified] [http://wiki.debian.org/MeetBot meetbot]&lt;br /&gt;
** #info - Add an info item to the minutes. People should liberally use this for important things they say, so that they can be logged in the minutes. &lt;br /&gt;
** #action - Document an action item in the minutes. Include any nicknames in the line, and the item will be assigned to them. (nicknames are case-sensitive) &lt;br /&gt;
** #help - Add a &amp;quot;Call for Help&amp;quot; to the minutes. Use this command when you need to recruit someone to do a task. (Counter-intuitively, this doesn't provide help on the bot)&lt;br /&gt;
** Exercise: lunch menu online meeting&lt;br /&gt;
&lt;br /&gt;
=== Workflow of an OpenStack contribution and tools (3h including 2h exercises) === &lt;br /&gt;
&lt;br /&gt;
* [http://devstack.org/ devstack] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/11-devstack.rst slides] )&lt;br /&gt;
** Ubuntu or Fedora&lt;br /&gt;
** git clone https://github.com/openstack-dev/devstack.git&lt;br /&gt;
** [http://devstack.org/configuration.html minimal configuration]&lt;br /&gt;
** cd devstack; ./stack.sh&lt;br /&gt;
** Exercise: get the code for the targeted contribution&lt;br /&gt;
* [[How_To_Contribute|HOW to contribute URL]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/12-howtocontribute.rst slides] )&lt;br /&gt;
** [[Puppet-openstack#Contributing_to_the_modules|puppet stackforge]]&lt;br /&gt;
** [[Documentation/HowTo|documentation]]&lt;br /&gt;
** [http://docs.openstack.org/training-guides/content/under-construction.html training guides]&lt;br /&gt;
** Excercise: Apply for individual membership and sign the CLA&lt;br /&gt;
* [https://help.launchpad.net/ launchpad] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/13-launchpad.rst slides] )&lt;br /&gt;
** [[Blueprints|blueprints]]&lt;br /&gt;
** [[Bugs|bugs]]&lt;br /&gt;
*** [[Bugs#Bugs_reference|Status, Importance, Assigned To, Milestone, Tags]]&lt;br /&gt;
*** [[Bugs#Reporting|reporting a bug]]&lt;br /&gt;
*** [[Bugs#Confirming_.26_prioritizing|confirming and prioritizing]]&lt;br /&gt;
*** [[Bugs#Debugging_.28optional.29|debugging]]&lt;br /&gt;
*** [[Bugs#Bugfixing|bugfixing]]&lt;br /&gt;
** Exercise: review other launchpad bugs and improve yours&lt;br /&gt;
* [[GerritWorkflow|gerrit workflow]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/14-gerrit.rst slides] )&lt;br /&gt;
** [[GerritWorkflow#Account_Setup|account setup]]&lt;br /&gt;
** [[GerritWorkflow#Git_Review_Installation|git review installation]]&lt;br /&gt;
** [[GerritWorkflow#SSH_Setup|ssh setup]]&lt;br /&gt;
** [[GerritWorkflow#Project_Setup|project setup]]&lt;br /&gt;
** [[GerritWorkflow#Normal_Workflow|gerrit workflow]]&lt;br /&gt;
** [[Testing#Unit_Tests|running unit tests]]&lt;br /&gt;
** [http://www.mediawiki.org/wiki/Gerrit/Advanced_usage review dependencies]&lt;br /&gt;
** Exercise: push a wip or draft and invite reviewers&lt;br /&gt;
* Branching model ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/15-branching-model.rst slides] )&lt;br /&gt;
** [[BranchModel|development]]&lt;br /&gt;
** [[StableBranch|stable]]&lt;br /&gt;
** Exercise: checkout the latest stable branch&lt;br /&gt;
* [[GerritJenkinsGit#Reviewing_a_Change|reviewing]]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/16-reviewing.rst slides] )&lt;br /&gt;
* [[GerritWorkflow#Committing_Changes|writing a commit message]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/17-commit-message.rst slides] )&lt;br /&gt;
** reference to a bug or a blueprint&lt;br /&gt;
** amending a commit message&lt;br /&gt;
** Exercise: review each other messages on the draft&lt;br /&gt;
* [[GerritJenkinsGit|jenkins]]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/18-jenkins.rst slides] )&lt;br /&gt;
** Exercise: add an error and match it to the jenkins message&lt;br /&gt;
&lt;br /&gt;
== Second day == &lt;br /&gt;
&lt;br /&gt;
=== The Contribution Process (1 hour) === &lt;br /&gt;
&lt;br /&gt;
 ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/19-training-contribution-process.rst slides] )&lt;br /&gt;
* Take the pulse of the project.&lt;br /&gt;
* Figure out who's behind it.&lt;br /&gt;
* Determine the project's social groups.&lt;br /&gt;
* Assess your approach.&lt;br /&gt;
* Engage immediately.&lt;br /&gt;
* Play with your network.&lt;br /&gt;
* Perform the smaller tasks.&lt;br /&gt;
* Choose a question.&lt;br /&gt;
* Familiarize yourself with the code of conduct.&lt;br /&gt;
* Understand the conventions.&lt;br /&gt;
* Explain what you do.&lt;br /&gt;
* Prepare the backport.&lt;br /&gt;
* Learn what's local and what's upstream.&lt;br /&gt;
* Learn what distinguishes good work flow from bad work flow.&lt;br /&gt;
* Quantify the delta.&lt;br /&gt;
* Speed up the acceptance.&lt;br /&gt;
* Determine the time frame.&lt;br /&gt;
* Maximize karma.&lt;br /&gt;
* Work in parallel.&lt;br /&gt;
* Archive and collect.&lt;br /&gt;
&lt;br /&gt;
=== Agile for Contributors (15 min) === &lt;br /&gt;
&lt;br /&gt;
 ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/20-training-agile-for-contributors.rst slides] )&lt;br /&gt;
* Apply agile&lt;br /&gt;
* Who is the customer?&lt;br /&gt;
* Company &amp;amp; Upstream product owner&lt;br /&gt;
* Sprint review presentation to Upstream&lt;br /&gt;
&lt;br /&gt;
=== Contribution Simulation (2 hour) === &lt;br /&gt;
&lt;br /&gt;
The students make a virtual contribution simulation using Lego bricks as props, with the goal of expanding a Lego town, built by upstream. They are divided into teams; the teacher is by turns the product owner in the company and the upstream.&lt;br /&gt;
&lt;br /&gt;
=== Contribution Planning (2 hours) === &lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-student-project-sample.odp odp slides] [http://dachary.org/loic/openstack-training/training-student-project-sample.pdf pdf slides] )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* The students use template slides to prepare a 5-minute presentation of their planned contribution.&lt;br /&gt;
* A sample presentation is given by the teacher, as an example.&lt;br /&gt;
* Each student group prepares a presentation describing:&lt;br /&gt;
** the contribution they plan to work on during the online sessions,&lt;br /&gt;
** how they will engage with the Upstream,&lt;br /&gt;
** how it contributes to the company's agenda&lt;br /&gt;
** and whom they will be working with.&lt;br /&gt;
* Each student group presents its slides to the class&lt;br /&gt;
&lt;br /&gt;
=== Etherpad ===&lt;br /&gt;
&lt;br /&gt;
https://etherpad.openstack.org/p/kilo-upstream-training&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=67095</id>
		<title>OpenStack Upstream Training/Info</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=67095"/>
				<updated>2014-10-31T13:23:39Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: update to juno stackalitics&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;translate&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction == &lt;br /&gt;
&lt;br /&gt;
With over 2000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions.  These can significantly slow down the speed at which newcomers are successful at integrating their own roadmap into that of the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to help professional developers negotiate this hurdle.  It shows them how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time.  The educational program requires students to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In a followup session, the students benefit from individual online sessions to help them resolve any remaining problems they might have.&lt;br /&gt;
&lt;br /&gt;
== Objectives == &lt;br /&gt;
&lt;br /&gt;
* Faster integration of the companies product roadmap into the OpenStack release cycle&lt;br /&gt;
* Successfully contribute one real world patch to an OpenStack component&lt;br /&gt;
* Master the technical tools&lt;br /&gt;
* Understand the OpenStack contribution workflow and social norms&lt;br /&gt;
&lt;br /&gt;
== Target Audience == &lt;br /&gt;
&lt;br /&gt;
* Developers&lt;br /&gt;
* System administrators&lt;br /&gt;
&lt;br /&gt;
== Prerequisites == &lt;br /&gt;
&lt;br /&gt;
* Being able to read and write English at a technical level.&lt;br /&gt;
* If contributing code, being technically proficient enough to carry out simple bug fixes in the project.&lt;br /&gt;
* If contributing documentation, being able to produce documents in the project's chosen infrastructure.&lt;br /&gt;
* Having at least 8 hours a week to dedicate to the project, be it through programming or through interacting with the community.&lt;br /&gt;
&lt;br /&gt;
== Duration == &lt;br /&gt;
&lt;br /&gt;
* Face-to-face section: 2 days&lt;br /&gt;
* Online section: 10 one-hour individual mentoring sessions over a period of 4 to 10 weeks&lt;br /&gt;
&lt;br /&gt;
== Infrastructure == &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Setup_DevStack|ready to use devstack VM]] for participants with network connectivity but troubles with their laptop&lt;br /&gt;
&lt;br /&gt;
= Course Outline = &lt;br /&gt;
&lt;br /&gt;
== First day == &lt;br /&gt;
&lt;br /&gt;
=== Introduction === &lt;br /&gt;
&lt;br /&gt;
* A week before Day 1: choice of a contribution, via email, with each participant&lt;br /&gt;
* Day 1: How OpenStack is made&lt;br /&gt;
* Day 1: Learn and practice git, gerrit, IRC&lt;br /&gt;
&lt;br /&gt;
* Day 2: The theory of contribution&lt;br /&gt;
* Day 2: Lego contribution simulation&lt;br /&gt;
* Day 2: Individual presentation of the contribution plan&lt;br /&gt;
* Day 2: Online mentoring&lt;br /&gt;
&lt;br /&gt;
=== How OpenStack is made (3h including 1h30 exercises) === &lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Release_Cycle Release cycle] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/01-release-cycle.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Planning_.28Design.2C_Discuss_and_Target.29 Planning (Design, Discuss and Target)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Implementation_.28Milestone_iterations.29 Implementation (Milestone iterations)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Pre-release_.28Release_Candidates_dance.29 Pre-release (Release Candidates dance)]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_candidate_1 Release candidate 1]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Other_release_candidates Other release candidates]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_day Release day]&lt;br /&gt;
** Exercise: based on the [https://wiki.openstack.org/wiki/Juno_Release_Schedule Juno release schedule] find the URL of a document or a patch that belongs to each of the above steps.&lt;br /&gt;
* Relevant actors ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/02-relevant-actors.rst slides] )&lt;br /&gt;
** [http://www.stackalytics.com/?release=juno&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] companies&lt;br /&gt;
** [http://www.stackalytics.com/?release=juno&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] individuals (bottom of the page)&lt;br /&gt;
** Your management&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee Technical Committee] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/03-technical-committee.rst slides] )&lt;br /&gt;
** Decide what is an [https://wiki.openstack.org/wiki/Programs OpenStack Program]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/TechnicalCommittee meetings] &lt;br /&gt;
** Exercise: read [http://eavesdrop.openstack.org/meetings/tc/2014/tc.2014-04-01-20.03.log.html archived] and briefly comment on [https://etherpad.openstack.org/p/keystone-incubation-integration-requirements keystone document]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Program_Leads PTLs]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_PTL_seats_.28.22APC.22.29 APC]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_TC_seats_.28.22ATC.22.29 ATC]&lt;br /&gt;
** Exercise: each APC / ATC in the class add a URL to the etherpad proving it&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/NewProjects Program ecosystem]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/04-program-ecosystem.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Incubation Incubated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Integrated Integrated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Core_.3F Core]&lt;br /&gt;
** [http://ci.openstack.org/stackforge.html Stackforge]&lt;br /&gt;
** Exercise: What kind of Program do you contribute to ?&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Summit Design summits]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/05-design-summit.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#Propose_sessions propose sessions]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#At_the_Design_Summit attend or lead a session]&lt;br /&gt;
** Exercise: Add a session proposal regarding your contribution in an etherpad, review two proposals&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Meetings IRC meetings]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/06-irc-meetings.rst slides] )&lt;br /&gt;
** [http://ci.openstack.org/meetbot.html modified] [http://wiki.debian.org/MeetBot meetbot]&lt;br /&gt;
** #info - Add an info item to the minutes. People should liberally use this for important things they say, so that they can be logged in the minutes. &lt;br /&gt;
** #action - Document an action item in the minutes. Include any nicknames in the line, and the item will be assigned to them. (nicknames are case-sensitive) &lt;br /&gt;
** #help - Add a &amp;quot;Call for Help&amp;quot; to the minutes. Use this command when you need to recruit someone to do a task. (Counter-intuitively, this doesn't provide help on the bot)&lt;br /&gt;
** Exercise: lunch menu online meeting&lt;br /&gt;
&lt;br /&gt;
=== Workflow of an OpenStack contribution and tools (3h including 2h exercises) === &lt;br /&gt;
&lt;br /&gt;
* [http://devstack.org/ devstack] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/11-devstack.rst slides] )&lt;br /&gt;
** Ubuntu or Fedora&lt;br /&gt;
** git clone https://github.com/openstack-dev/devstack.git&lt;br /&gt;
** [http://devstack.org/configuration.html minimal configuration]&lt;br /&gt;
** cd devstack; ./stack.sh&lt;br /&gt;
** Exercise: get the code for the targeted contribution&lt;br /&gt;
* [[How_To_Contribute|HOW to contribute URL]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/12-howtocontribute.rst slides] )&lt;br /&gt;
** [[Puppet-openstack#Contributing_to_the_modules|puppet stackforge]]&lt;br /&gt;
** [[Documentation/HowTo|documentation]]&lt;br /&gt;
** [http://docs.openstack.org/training-guides/content/under-construction.html training guides]&lt;br /&gt;
** Excercise: Apply for individual membership and sign the CLA&lt;br /&gt;
* [https://help.launchpad.net/ launchpad] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/13-launchpad.rst slides] )&lt;br /&gt;
** [[Blueprints|blueprints]]&lt;br /&gt;
** [[Bugs|bugs]]&lt;br /&gt;
*** [[Bugs#Bugs_reference|Status, Importance, Assigned To, Milestone, Tags]]&lt;br /&gt;
*** [[Bugs#Reporting|reporting a bug]]&lt;br /&gt;
*** [[Bugs#Confirming_.26_prioritizing|confirming and prioritizing]]&lt;br /&gt;
*** [[Bugs#Debugging_.28optional.29|debugging]]&lt;br /&gt;
*** [[Bugs#Bugfixing|bugfixing]]&lt;br /&gt;
** Exercise: review other launchpad bugs and improve yours&lt;br /&gt;
* [[GerritWorkflow|gerrit workflow]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/14-gerrit.rst slides] )&lt;br /&gt;
** [[GerritWorkflow#Account_Setup|account setup]]&lt;br /&gt;
** [[GerritWorkflow#Git_Review_Installation|git review installation]]&lt;br /&gt;
** [[GerritWorkflow#SSH_Setup|ssh setup]]&lt;br /&gt;
** [[GerritWorkflow#Project_Setup|project setup]]&lt;br /&gt;
** [[GerritWorkflow#Normal_Workflow|gerrit workflow]]&lt;br /&gt;
** [[Testing#Unit_Tests|running unit tests]]&lt;br /&gt;
** [http://www.mediawiki.org/wiki/Gerrit/Advanced_usage review dependencies]&lt;br /&gt;
** Exercise: push a wip or draft and invite reviewers&lt;br /&gt;
* Branching model ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/15-branching-model.rst slides] )&lt;br /&gt;
** [[BranchModel|development]]&lt;br /&gt;
** [[StableBranch|stable]]&lt;br /&gt;
** Exercise: checkout the latest stable branch&lt;br /&gt;
* [[GerritJenkinsGit#Reviewing_a_Change|reviewing]]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/16-reviewing.rst slides] )&lt;br /&gt;
* [[GerritWorkflow#Committing_Changes|writing a commit message]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/17-commit-message.rst slides] )&lt;br /&gt;
** reference to a bug or a blueprint&lt;br /&gt;
** amending a commit message&lt;br /&gt;
** Exercise: review each other messages on the draft&lt;br /&gt;
* [[GerritJenkinsGit|jenkins]]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/18-jenkins.rst slides] )&lt;br /&gt;
** Exercise: add an error and match it to the jenkins message&lt;br /&gt;
&lt;br /&gt;
== Second day == &lt;br /&gt;
&lt;br /&gt;
=== The Contribution Process (1 hour) === &lt;br /&gt;
&lt;br /&gt;
 ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/19-training-contribution-process.rst slides] )&lt;br /&gt;
* Take the pulse of the project.&lt;br /&gt;
* Figure out who's behind it.&lt;br /&gt;
* Determine the project's social groups.&lt;br /&gt;
* Assess your approach.&lt;br /&gt;
* Engage immediately.&lt;br /&gt;
* Play with your network.&lt;br /&gt;
* Perform the smaller tasks.&lt;br /&gt;
* Choose a question.&lt;br /&gt;
* Familiarize yourself with the code of conduct.&lt;br /&gt;
* Understand the conventions.&lt;br /&gt;
* Explain what you do.&lt;br /&gt;
* Prepare the backport.&lt;br /&gt;
* Learn what's local and what's upstream.&lt;br /&gt;
* Learn what distinguishes good work flow from bad work flow.&lt;br /&gt;
* Quantify the delta.&lt;br /&gt;
* Speed up the acceptance.&lt;br /&gt;
* Determine the time frame.&lt;br /&gt;
* Maximize karma.&lt;br /&gt;
* Work in parallel.&lt;br /&gt;
* Archive and collect.&lt;br /&gt;
&lt;br /&gt;
=== Agile for Contributors (15 min) === &lt;br /&gt;
&lt;br /&gt;
 ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/20-training-agile-for-contributors.rst slides] )&lt;br /&gt;
* Apply agile&lt;br /&gt;
* Who is the customer?&lt;br /&gt;
* Company &amp;amp; Upstream product owner&lt;br /&gt;
* Sprint review presentation to Upstream&lt;br /&gt;
&lt;br /&gt;
=== Contribution Simulation (2 hour) === &lt;br /&gt;
&lt;br /&gt;
The students make a virtual contribution simulation using Lego bricks as props, with the goal of expanding a Lego town, built by upstream. They are divided into teams; the teacher is by turns the product owner in the company and the upstream.&lt;br /&gt;
&lt;br /&gt;
=== Contribution Planning (2 hours) === &lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-student-project-sample.odp odp slides] [http://dachary.org/loic/openstack-training/training-student-project-sample.pdf pdf slides] )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* The students use template slides to prepare a 5-minute presentation of their planned contribution.&lt;br /&gt;
* A sample presentation is given by the teacher, as an example.&lt;br /&gt;
* Each student group prepares a presentation describing:&lt;br /&gt;
** the contribution they plan to work on during the online sessions,&lt;br /&gt;
** how they will engage with the Upstream,&lt;br /&gt;
** how it contributes to the company's agenda&lt;br /&gt;
** and whom they will be working with.&lt;br /&gt;
* Each student group presents its slides to the class&lt;br /&gt;
&lt;br /&gt;
=== Etherpad ===&lt;br /&gt;
&lt;br /&gt;
https://etherpad.openstack.org/p/kilo-upstream-training&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=67094</id>
		<title>OpenStack Upstream Training/Info</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=67094"/>
				<updated>2014-10-31T13:19:38Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: /* How OpenStack is made (3h including 1h30 exercises) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;translate&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction == &lt;br /&gt;
&lt;br /&gt;
With over 2000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions.  These can significantly slow down the speed at which newcomers are successful at integrating their own roadmap into that of the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to help professional developers negotiate this hurdle.  It shows them how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time.  The educational program requires students to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In a followup session, the students benefit from individual online sessions to help them resolve any remaining problems they might have.&lt;br /&gt;
&lt;br /&gt;
== Objectives == &lt;br /&gt;
&lt;br /&gt;
* Faster integration of the companies product roadmap into the OpenStack release cycle&lt;br /&gt;
* Successfully contribute one real world patch to an OpenStack component&lt;br /&gt;
* Master the technical tools&lt;br /&gt;
* Understand the OpenStack contribution workflow and social norms&lt;br /&gt;
&lt;br /&gt;
== Target Audience == &lt;br /&gt;
&lt;br /&gt;
* Developers&lt;br /&gt;
* System administrators&lt;br /&gt;
&lt;br /&gt;
== Prerequisites == &lt;br /&gt;
&lt;br /&gt;
* Being able to read and write English at a technical level.&lt;br /&gt;
* If contributing code, being technically proficient enough to carry out simple bug fixes in the project.&lt;br /&gt;
* If contributing documentation, being able to produce documents in the project's chosen infrastructure.&lt;br /&gt;
* Having at least 8 hours a week to dedicate to the project, be it through programming or through interacting with the community.&lt;br /&gt;
&lt;br /&gt;
== Duration == &lt;br /&gt;
&lt;br /&gt;
* Face-to-face section: 2 days&lt;br /&gt;
* Online section: 10 one-hour individual mentoring sessions over a period of 4 to 10 weeks&lt;br /&gt;
&lt;br /&gt;
== Infrastructure == &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Setup_DevStack|ready to use devstack VM]] for participants with network connectivity but troubles with their laptop&lt;br /&gt;
&lt;br /&gt;
= Course Outline = &lt;br /&gt;
&lt;br /&gt;
== First day == &lt;br /&gt;
&lt;br /&gt;
=== Introduction === &lt;br /&gt;
&lt;br /&gt;
* A week before Day 1: choice of a contribution, via email, with each participant&lt;br /&gt;
* Day 1: How OpenStack is made&lt;br /&gt;
* Day 1: Learn and practice git, gerrit, IRC&lt;br /&gt;
&lt;br /&gt;
* Day 2: The theory of contribution&lt;br /&gt;
* Day 2: Lego contribution simulation&lt;br /&gt;
* Day 2: Individual presentation of the contribution plan&lt;br /&gt;
* Day 2: Online mentoring&lt;br /&gt;
&lt;br /&gt;
=== How OpenStack is made (3h including 1h30 exercises) === &lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Release_Cycle Release cycle] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/01-release-cycle.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Planning_.28Design.2C_Discuss_and_Target.29 Planning (Design, Discuss and Target)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Implementation_.28Milestone_iterations.29 Implementation (Milestone iterations)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Pre-release_.28Release_Candidates_dance.29 Pre-release (Release Candidates dance)]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_candidate_1 Release candidate 1]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Other_release_candidates Other release candidates]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_day Release day]&lt;br /&gt;
** Exercise: based on the [https://wiki.openstack.org/wiki/Juno_Release_Schedule Juno release schedule] find the URL of a document or a patch that belongs to each of the above steps.&lt;br /&gt;
* Relevant actors ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/02-relevant-actors.rst slides] )&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] companies&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] individuals&lt;br /&gt;
** Your management&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee Technical Committee] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/03-technical-committee.rst slides] )&lt;br /&gt;
** Decide what is an [https://wiki.openstack.org/wiki/Programs OpenStack Program]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/TechnicalCommittee meetings] &lt;br /&gt;
** Exercise: read [http://eavesdrop.openstack.org/meetings/tc/2014/tc.2014-04-01-20.03.log.html archived] and briefly comment on [https://etherpad.openstack.org/p/keystone-incubation-integration-requirements keystone document]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Program_Leads PTLs]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_PTL_seats_.28.22APC.22.29 APC]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_TC_seats_.28.22ATC.22.29 ATC]&lt;br /&gt;
** Exercise: each APC / ATC in the class add a URL to the etherpad proving it&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/NewProjects Program ecosystem]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/04-program-ecosystem.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Incubation Incubated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Integrated Integrated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Core_.3F Core]&lt;br /&gt;
** [http://ci.openstack.org/stackforge.html Stackforge]&lt;br /&gt;
** Exercise: What kind of Program do you contribute to ?&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Summit Design summits]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/05-design-summit.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#Propose_sessions propose sessions]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#At_the_Design_Summit attend or lead a session]&lt;br /&gt;
** Exercise: Add a session proposal regarding your contribution in an etherpad, review two proposals&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Meetings IRC meetings]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/06-irc-meetings.rst slides] )&lt;br /&gt;
** [http://ci.openstack.org/meetbot.html modified] [http://wiki.debian.org/MeetBot meetbot]&lt;br /&gt;
** #info - Add an info item to the minutes. People should liberally use this for important things they say, so that they can be logged in the minutes. &lt;br /&gt;
** #action - Document an action item in the minutes. Include any nicknames in the line, and the item will be assigned to them. (nicknames are case-sensitive) &lt;br /&gt;
** #help - Add a &amp;quot;Call for Help&amp;quot; to the minutes. Use this command when you need to recruit someone to do a task. (Counter-intuitively, this doesn't provide help on the bot)&lt;br /&gt;
** Exercise: lunch menu online meeting&lt;br /&gt;
&lt;br /&gt;
=== Workflow of an OpenStack contribution and tools (3h including 2h exercises) === &lt;br /&gt;
&lt;br /&gt;
* [http://devstack.org/ devstack] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/11-devstack.rst slides] )&lt;br /&gt;
** Ubuntu or Fedora&lt;br /&gt;
** git clone https://github.com/openstack-dev/devstack.git&lt;br /&gt;
** [http://devstack.org/configuration.html minimal configuration]&lt;br /&gt;
** cd devstack; ./stack.sh&lt;br /&gt;
** Exercise: get the code for the targeted contribution&lt;br /&gt;
* [[How_To_Contribute|HOW to contribute URL]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/12-howtocontribute.rst slides] )&lt;br /&gt;
** [[Puppet-openstack#Contributing_to_the_modules|puppet stackforge]]&lt;br /&gt;
** [[Documentation/HowTo|documentation]]&lt;br /&gt;
** [http://docs.openstack.org/training-guides/content/under-construction.html training guides]&lt;br /&gt;
** Excercise: Apply for individual membership and sign the CLA&lt;br /&gt;
* [https://help.launchpad.net/ launchpad] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/13-launchpad.rst slides] )&lt;br /&gt;
** [[Blueprints|blueprints]]&lt;br /&gt;
** [[Bugs|bugs]]&lt;br /&gt;
*** [[Bugs#Bugs_reference|Status, Importance, Assigned To, Milestone, Tags]]&lt;br /&gt;
*** [[Bugs#Reporting|reporting a bug]]&lt;br /&gt;
*** [[Bugs#Confirming_.26_prioritizing|confirming and prioritizing]]&lt;br /&gt;
*** [[Bugs#Debugging_.28optional.29|debugging]]&lt;br /&gt;
*** [[Bugs#Bugfixing|bugfixing]]&lt;br /&gt;
** Exercise: review other launchpad bugs and improve yours&lt;br /&gt;
* [[GerritWorkflow|gerrit workflow]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/14-gerrit.rst slides] )&lt;br /&gt;
** [[GerritWorkflow#Account_Setup|account setup]]&lt;br /&gt;
** [[GerritWorkflow#Git_Review_Installation|git review installation]]&lt;br /&gt;
** [[GerritWorkflow#SSH_Setup|ssh setup]]&lt;br /&gt;
** [[GerritWorkflow#Project_Setup|project setup]]&lt;br /&gt;
** [[GerritWorkflow#Normal_Workflow|gerrit workflow]]&lt;br /&gt;
** [[Testing#Unit_Tests|running unit tests]]&lt;br /&gt;
** [http://www.mediawiki.org/wiki/Gerrit/Advanced_usage review dependencies]&lt;br /&gt;
** Exercise: push a wip or draft and invite reviewers&lt;br /&gt;
* Branching model ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/15-branching-model.rst slides] )&lt;br /&gt;
** [[BranchModel|development]]&lt;br /&gt;
** [[StableBranch|stable]]&lt;br /&gt;
** Exercise: checkout the latest stable branch&lt;br /&gt;
* [[GerritJenkinsGit#Reviewing_a_Change|reviewing]]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/16-reviewing.rst slides] )&lt;br /&gt;
* [[GerritWorkflow#Committing_Changes|writing a commit message]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/17-commit-message.rst slides] )&lt;br /&gt;
** reference to a bug or a blueprint&lt;br /&gt;
** amending a commit message&lt;br /&gt;
** Exercise: review each other messages on the draft&lt;br /&gt;
* [[GerritJenkinsGit|jenkins]]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/18-jenkins.rst slides] )&lt;br /&gt;
** Exercise: add an error and match it to the jenkins message&lt;br /&gt;
&lt;br /&gt;
== Second day == &lt;br /&gt;
&lt;br /&gt;
=== The Contribution Process (1 hour) === &lt;br /&gt;
&lt;br /&gt;
 ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/19-training-contribution-process.rst slides] )&lt;br /&gt;
* Take the pulse of the project.&lt;br /&gt;
* Figure out who's behind it.&lt;br /&gt;
* Determine the project's social groups.&lt;br /&gt;
* Assess your approach.&lt;br /&gt;
* Engage immediately.&lt;br /&gt;
* Play with your network.&lt;br /&gt;
* Perform the smaller tasks.&lt;br /&gt;
* Choose a question.&lt;br /&gt;
* Familiarize yourself with the code of conduct.&lt;br /&gt;
* Understand the conventions.&lt;br /&gt;
* Explain what you do.&lt;br /&gt;
* Prepare the backport.&lt;br /&gt;
* Learn what's local and what's upstream.&lt;br /&gt;
* Learn what distinguishes good work flow from bad work flow.&lt;br /&gt;
* Quantify the delta.&lt;br /&gt;
* Speed up the acceptance.&lt;br /&gt;
* Determine the time frame.&lt;br /&gt;
* Maximize karma.&lt;br /&gt;
* Work in parallel.&lt;br /&gt;
* Archive and collect.&lt;br /&gt;
&lt;br /&gt;
=== Agile for Contributors (15 min) === &lt;br /&gt;
&lt;br /&gt;
 ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/20-training-agile-for-contributors.rst slides] )&lt;br /&gt;
* Apply agile&lt;br /&gt;
* Who is the customer?&lt;br /&gt;
* Company &amp;amp; Upstream product owner&lt;br /&gt;
* Sprint review presentation to Upstream&lt;br /&gt;
&lt;br /&gt;
=== Contribution Simulation (2 hour) === &lt;br /&gt;
&lt;br /&gt;
The students make a virtual contribution simulation using Lego bricks as props, with the goal of expanding a Lego town, built by upstream. They are divided into teams; the teacher is by turns the product owner in the company and the upstream.&lt;br /&gt;
&lt;br /&gt;
=== Contribution Planning (2 hours) === &lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-student-project-sample.odp odp slides] [http://dachary.org/loic/openstack-training/training-student-project-sample.pdf pdf slides] )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* The students use template slides to prepare a 5-minute presentation of their planned contribution.&lt;br /&gt;
* A sample presentation is given by the teacher, as an example.&lt;br /&gt;
* Each student group prepares a presentation describing:&lt;br /&gt;
** the contribution they plan to work on during the online sessions,&lt;br /&gt;
** how they will engage with the Upstream,&lt;br /&gt;
** how it contributes to the company's agenda&lt;br /&gt;
** and whom they will be working with.&lt;br /&gt;
* Each student group presents its slides to the class&lt;br /&gt;
&lt;br /&gt;
=== Etherpad ===&lt;br /&gt;
&lt;br /&gt;
https://etherpad.openstack.org/p/kilo-upstream-training&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=67092</id>
		<title>OpenStack Upstream Training/Info</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=67092"/>
				<updated>2014-10-31T11:48:27Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: /* Contribution Simulation (1 hour) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;translate&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction == &lt;br /&gt;
&lt;br /&gt;
With over 2000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions.  These can significantly slow down the speed at which newcomers are successful at integrating their own roadmap into that of the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to help professional developers negotiate this hurdle.  It shows them how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time.  The educational program requires students to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In a followup session, the students benefit from individual online sessions to help them resolve any remaining problems they might have.&lt;br /&gt;
&lt;br /&gt;
== Objectives == &lt;br /&gt;
&lt;br /&gt;
* Faster integration of the companies product roadmap into the OpenStack release cycle&lt;br /&gt;
* Successfully contribute one real world patch to an OpenStack component&lt;br /&gt;
* Master the technical tools&lt;br /&gt;
* Understand the OpenStack contribution workflow and social norms&lt;br /&gt;
&lt;br /&gt;
== Target Audience == &lt;br /&gt;
&lt;br /&gt;
* Developers&lt;br /&gt;
* System administrators&lt;br /&gt;
&lt;br /&gt;
== Prerequisites == &lt;br /&gt;
&lt;br /&gt;
* Being able to read and write English at a technical level.&lt;br /&gt;
* If contributing code, being technically proficient enough to carry out simple bug fixes in the project.&lt;br /&gt;
* If contributing documentation, being able to produce documents in the project's chosen infrastructure.&lt;br /&gt;
* Having at least 8 hours a week to dedicate to the project, be it through programming or through interacting with the community.&lt;br /&gt;
&lt;br /&gt;
== Duration == &lt;br /&gt;
&lt;br /&gt;
* Face-to-face section: 2 days&lt;br /&gt;
* Online section: 10 one-hour individual mentoring sessions over a period of 4 to 10 weeks&lt;br /&gt;
&lt;br /&gt;
== Infrastructure == &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Setup_DevStack|ready to use devstack VM]] for participants with network connectivity but troubles with their laptop&lt;br /&gt;
&lt;br /&gt;
= Course Outline = &lt;br /&gt;
&lt;br /&gt;
== First day == &lt;br /&gt;
&lt;br /&gt;
=== Introduction === &lt;br /&gt;
&lt;br /&gt;
* A week before Day 1: choice of a contribution, via email, with each participant&lt;br /&gt;
* Day 1: How OpenStack is made&lt;br /&gt;
* Day 1: Learn and practice git, gerrit, IRC&lt;br /&gt;
&lt;br /&gt;
* Day 2: The theory of contribution&lt;br /&gt;
* Day 2: Lego contribution simulation&lt;br /&gt;
* Day 2: Individual presentation of the contribution plan&lt;br /&gt;
* Day 2: Online mentoring&lt;br /&gt;
&lt;br /&gt;
=== How OpenStack is made (3h including 1h30 exercises) === &lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Release_Cycle Release cycle] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/01-release-cycle.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Planning_.28Design.2C_Discuss_and_Target.29 Planning (Design, Discuss and Target)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Implementation_.28Milestone_iterations.29 Implementation (Milestone iterations)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Pre-release_.28Release_Candidates_dance.29 Pre-release (Release Candidates dance)]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_candidate_1 Release candidate 1]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Other_release_candidates Other release candidates]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_day Release day]&lt;br /&gt;
** Exercise: based on the [https://wiki.openstack.org/wiki/Icehouse_Release_Schedule Icehouse release schedule] find the URL of a document or a patch that belongs to each of the above steps.&lt;br /&gt;
* Relevant actors ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/02-relevant-actors.rst slides] )&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] companies&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] individuals&lt;br /&gt;
** Your management&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee Technical Committee] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/03-technical-committee.rst slides] )&lt;br /&gt;
** Decide what is an [https://wiki.openstack.org/wiki/Programs OpenStack Program]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/TechnicalCommittee meetings] &lt;br /&gt;
** Exercise: read [http://eavesdrop.openstack.org/meetings/tc/2014/tc.2014-04-01-20.03.log.html archived] and briefly comment on [https://etherpad.openstack.org/p/keystone-incubation-integration-requirements keystone document]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Program_Leads PTLs]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_PTL_seats_.28.22APC.22.29 APC]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_TC_seats_.28.22ATC.22.29 ATC]&lt;br /&gt;
** Exercise: each APC / ATC in the class add a URL to the etherpad proving it&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/NewProjects Program ecosystem]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/04-program-ecosystem.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Incubation Incubated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Integrated Integrated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Core_.3F Core]&lt;br /&gt;
** [http://ci.openstack.org/stackforge.html Stackforge]&lt;br /&gt;
** Exercise: What kind of Program do you contribute to ?&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Summit Design summits]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/05-design-summit.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#Propose_sessions propose sessions]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#At_the_Design_Summit attend or lead a session]&lt;br /&gt;
** Exercise: Add a session proposal regarding your contribution in an etherpad, review two proposals&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Meetings IRC meetings]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/06-irc-meetings.rst slides] )&lt;br /&gt;
** [http://ci.openstack.org/meetbot.html modified] [http://wiki.debian.org/MeetBot meetbot]&lt;br /&gt;
** #info - Add an info item to the minutes. People should liberally use this for important things they say, so that they can be logged in the minutes. &lt;br /&gt;
** #action - Document an action item in the minutes. Include any nicknames in the line, and the item will be assigned to them. (nicknames are case-sensitive) &lt;br /&gt;
** #help - Add a &amp;quot;Call for Help&amp;quot; to the minutes. Use this command when you need to recruit someone to do a task. (Counter-intuitively, this doesn't provide help on the bot)&lt;br /&gt;
** Exercise: lunch menu online meeting&lt;br /&gt;
&lt;br /&gt;
=== Workflow of an OpenStack contribution and tools (3h including 2h exercises) === &lt;br /&gt;
&lt;br /&gt;
* [http://devstack.org/ devstack] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/11-devstack.rst slides] )&lt;br /&gt;
** Ubuntu or Fedora&lt;br /&gt;
** git clone https://github.com/openstack-dev/devstack.git&lt;br /&gt;
** [http://devstack.org/configuration.html minimal configuration]&lt;br /&gt;
** cd devstack; ./stack.sh&lt;br /&gt;
** Exercise: get the code for the targeted contribution&lt;br /&gt;
* [[How_To_Contribute|HOW to contribute URL]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/12-howtocontribute.rst slides] )&lt;br /&gt;
** [[Puppet-openstack#Contributing_to_the_modules|puppet stackforge]]&lt;br /&gt;
** [[Documentation/HowTo|documentation]]&lt;br /&gt;
** [http://docs.openstack.org/training-guides/content/under-construction.html training guides]&lt;br /&gt;
** Excercise: Apply for individual membership and sign the CLA&lt;br /&gt;
* [https://help.launchpad.net/ launchpad] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/13-launchpad.rst slides] )&lt;br /&gt;
** [[Blueprints|blueprints]]&lt;br /&gt;
** [[Bugs|bugs]]&lt;br /&gt;
*** [[Bugs#Bugs_reference|Status, Importance, Assigned To, Milestone, Tags]]&lt;br /&gt;
*** [[Bugs#Reporting|reporting a bug]]&lt;br /&gt;
*** [[Bugs#Confirming_.26_prioritizing|confirming and prioritizing]]&lt;br /&gt;
*** [[Bugs#Debugging_.28optional.29|debugging]]&lt;br /&gt;
*** [[Bugs#Bugfixing|bugfixing]]&lt;br /&gt;
** Exercise: review other launchpad bugs and improve yours&lt;br /&gt;
* [[GerritWorkflow|gerrit workflow]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/14-gerrit.rst slides] )&lt;br /&gt;
** [[GerritWorkflow#Account_Setup|account setup]]&lt;br /&gt;
** [[GerritWorkflow#Git_Review_Installation|git review installation]]&lt;br /&gt;
** [[GerritWorkflow#SSH_Setup|ssh setup]]&lt;br /&gt;
** [[GerritWorkflow#Project_Setup|project setup]]&lt;br /&gt;
** [[GerritWorkflow#Normal_Workflow|gerrit workflow]]&lt;br /&gt;
** [[Testing#Unit_Tests|running unit tests]]&lt;br /&gt;
** [http://www.mediawiki.org/wiki/Gerrit/Advanced_usage review dependencies]&lt;br /&gt;
** Exercise: push a wip or draft and invite reviewers&lt;br /&gt;
* Branching model ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/15-branching-model.rst slides] )&lt;br /&gt;
** [[BranchModel|development]]&lt;br /&gt;
** [[StableBranch|stable]]&lt;br /&gt;
** Exercise: checkout the latest stable branch&lt;br /&gt;
* [[GerritJenkinsGit#Reviewing_a_Change|reviewing]]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/16-reviewing.rst slides] )&lt;br /&gt;
* [[GerritWorkflow#Committing_Changes|writing a commit message]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/17-commit-message.rst slides] )&lt;br /&gt;
** reference to a bug or a blueprint&lt;br /&gt;
** amending a commit message&lt;br /&gt;
** Exercise: review each other messages on the draft&lt;br /&gt;
* [[GerritJenkinsGit|jenkins]]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/18-jenkins.rst slides] )&lt;br /&gt;
** Exercise: add an error and match it to the jenkins message&lt;br /&gt;
&lt;br /&gt;
== Second day == &lt;br /&gt;
&lt;br /&gt;
=== The Contribution Process (1 hour) === &lt;br /&gt;
&lt;br /&gt;
 ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/19-training-contribution-process.rst slides] )&lt;br /&gt;
* Take the pulse of the project.&lt;br /&gt;
* Figure out who's behind it.&lt;br /&gt;
* Determine the project's social groups.&lt;br /&gt;
* Assess your approach.&lt;br /&gt;
* Engage immediately.&lt;br /&gt;
* Play with your network.&lt;br /&gt;
* Perform the smaller tasks.&lt;br /&gt;
* Choose a question.&lt;br /&gt;
* Familiarize yourself with the code of conduct.&lt;br /&gt;
* Understand the conventions.&lt;br /&gt;
* Explain what you do.&lt;br /&gt;
* Prepare the backport.&lt;br /&gt;
* Learn what's local and what's upstream.&lt;br /&gt;
* Learn what distinguishes good work flow from bad work flow.&lt;br /&gt;
* Quantify the delta.&lt;br /&gt;
* Speed up the acceptance.&lt;br /&gt;
* Determine the time frame.&lt;br /&gt;
* Maximize karma.&lt;br /&gt;
* Work in parallel.&lt;br /&gt;
* Archive and collect.&lt;br /&gt;
&lt;br /&gt;
=== Agile for Contributors (15 min) === &lt;br /&gt;
&lt;br /&gt;
 ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/20-training-agile-for-contributors.rst slides] )&lt;br /&gt;
* Apply agile&lt;br /&gt;
* Who is the customer?&lt;br /&gt;
* Company &amp;amp; Upstream product owner&lt;br /&gt;
* Sprint review presentation to Upstream&lt;br /&gt;
&lt;br /&gt;
=== Contribution Simulation (2 hour) === &lt;br /&gt;
&lt;br /&gt;
The students make a virtual contribution simulation using Lego bricks as props, with the goal of expanding a Lego town, built by upstream. They are divided into teams; the teacher is by turns the product owner in the company and the upstream.&lt;br /&gt;
&lt;br /&gt;
=== Contribution Planning (2 hours) === &lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-student-project-sample.odp odp slides] [http://dachary.org/loic/openstack-training/training-student-project-sample.pdf pdf slides] )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* The students use template slides to prepare a 5-minute presentation of their planned contribution.&lt;br /&gt;
* A sample presentation is given by the teacher, as an example.&lt;br /&gt;
* Each student group prepares a presentation describing:&lt;br /&gt;
** the contribution they plan to work on during the online sessions,&lt;br /&gt;
** how they will engage with the Upstream,&lt;br /&gt;
** how it contributes to the company's agenda&lt;br /&gt;
** and whom they will be working with.&lt;br /&gt;
* Each student group presents its slides to the class&lt;br /&gt;
&lt;br /&gt;
=== Etherpad ===&lt;br /&gt;
&lt;br /&gt;
https://etherpad.openstack.org/p/kilo-upstream-training&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=67091</id>
		<title>OpenStack Upstream Training/Info</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=67091"/>
				<updated>2014-10-31T11:45:14Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: /* The Contribution Process (3 hours) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;translate&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction == &lt;br /&gt;
&lt;br /&gt;
With over 2000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions.  These can significantly slow down the speed at which newcomers are successful at integrating their own roadmap into that of the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to help professional developers negotiate this hurdle.  It shows them how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time.  The educational program requires students to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In a followup session, the students benefit from individual online sessions to help them resolve any remaining problems they might have.&lt;br /&gt;
&lt;br /&gt;
== Objectives == &lt;br /&gt;
&lt;br /&gt;
* Faster integration of the companies product roadmap into the OpenStack release cycle&lt;br /&gt;
* Successfully contribute one real world patch to an OpenStack component&lt;br /&gt;
* Master the technical tools&lt;br /&gt;
* Understand the OpenStack contribution workflow and social norms&lt;br /&gt;
&lt;br /&gt;
== Target Audience == &lt;br /&gt;
&lt;br /&gt;
* Developers&lt;br /&gt;
* System administrators&lt;br /&gt;
&lt;br /&gt;
== Prerequisites == &lt;br /&gt;
&lt;br /&gt;
* Being able to read and write English at a technical level.&lt;br /&gt;
* If contributing code, being technically proficient enough to carry out simple bug fixes in the project.&lt;br /&gt;
* If contributing documentation, being able to produce documents in the project's chosen infrastructure.&lt;br /&gt;
* Having at least 8 hours a week to dedicate to the project, be it through programming or through interacting with the community.&lt;br /&gt;
&lt;br /&gt;
== Duration == &lt;br /&gt;
&lt;br /&gt;
* Face-to-face section: 2 days&lt;br /&gt;
* Online section: 10 one-hour individual mentoring sessions over a period of 4 to 10 weeks&lt;br /&gt;
&lt;br /&gt;
== Infrastructure == &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Setup_DevStack|ready to use devstack VM]] for participants with network connectivity but troubles with their laptop&lt;br /&gt;
&lt;br /&gt;
= Course Outline = &lt;br /&gt;
&lt;br /&gt;
== First day == &lt;br /&gt;
&lt;br /&gt;
=== Introduction === &lt;br /&gt;
&lt;br /&gt;
* A week before Day 1: choice of a contribution, via email, with each participant&lt;br /&gt;
* Day 1: How OpenStack is made&lt;br /&gt;
* Day 1: Learn and practice git, gerrit, IRC&lt;br /&gt;
&lt;br /&gt;
* Day 2: The theory of contribution&lt;br /&gt;
* Day 2: Lego contribution simulation&lt;br /&gt;
* Day 2: Individual presentation of the contribution plan&lt;br /&gt;
* Day 2: Online mentoring&lt;br /&gt;
&lt;br /&gt;
=== How OpenStack is made (3h including 1h30 exercises) === &lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Release_Cycle Release cycle] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/01-release-cycle.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Planning_.28Design.2C_Discuss_and_Target.29 Planning (Design, Discuss and Target)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Implementation_.28Milestone_iterations.29 Implementation (Milestone iterations)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Pre-release_.28Release_Candidates_dance.29 Pre-release (Release Candidates dance)]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_candidate_1 Release candidate 1]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Other_release_candidates Other release candidates]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_day Release day]&lt;br /&gt;
** Exercise: based on the [https://wiki.openstack.org/wiki/Icehouse_Release_Schedule Icehouse release schedule] find the URL of a document or a patch that belongs to each of the above steps.&lt;br /&gt;
* Relevant actors ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/02-relevant-actors.rst slides] )&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] companies&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] individuals&lt;br /&gt;
** Your management&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee Technical Committee] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/03-technical-committee.rst slides] )&lt;br /&gt;
** Decide what is an [https://wiki.openstack.org/wiki/Programs OpenStack Program]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/TechnicalCommittee meetings] &lt;br /&gt;
** Exercise: read [http://eavesdrop.openstack.org/meetings/tc/2014/tc.2014-04-01-20.03.log.html archived] and briefly comment on [https://etherpad.openstack.org/p/keystone-incubation-integration-requirements keystone document]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Program_Leads PTLs]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_PTL_seats_.28.22APC.22.29 APC]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_TC_seats_.28.22ATC.22.29 ATC]&lt;br /&gt;
** Exercise: each APC / ATC in the class add a URL to the etherpad proving it&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/NewProjects Program ecosystem]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/04-program-ecosystem.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Incubation Incubated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Integrated Integrated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Core_.3F Core]&lt;br /&gt;
** [http://ci.openstack.org/stackforge.html Stackforge]&lt;br /&gt;
** Exercise: What kind of Program do you contribute to ?&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Summit Design summits]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/05-design-summit.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#Propose_sessions propose sessions]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#At_the_Design_Summit attend or lead a session]&lt;br /&gt;
** Exercise: Add a session proposal regarding your contribution in an etherpad, review two proposals&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Meetings IRC meetings]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/06-irc-meetings.rst slides] )&lt;br /&gt;
** [http://ci.openstack.org/meetbot.html modified] [http://wiki.debian.org/MeetBot meetbot]&lt;br /&gt;
** #info - Add an info item to the minutes. People should liberally use this for important things they say, so that they can be logged in the minutes. &lt;br /&gt;
** #action - Document an action item in the minutes. Include any nicknames in the line, and the item will be assigned to them. (nicknames are case-sensitive) &lt;br /&gt;
** #help - Add a &amp;quot;Call for Help&amp;quot; to the minutes. Use this command when you need to recruit someone to do a task. (Counter-intuitively, this doesn't provide help on the bot)&lt;br /&gt;
** Exercise: lunch menu online meeting&lt;br /&gt;
&lt;br /&gt;
=== Workflow of an OpenStack contribution and tools (3h including 2h exercises) === &lt;br /&gt;
&lt;br /&gt;
* [http://devstack.org/ devstack] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/11-devstack.rst slides] )&lt;br /&gt;
** Ubuntu or Fedora&lt;br /&gt;
** git clone https://github.com/openstack-dev/devstack.git&lt;br /&gt;
** [http://devstack.org/configuration.html minimal configuration]&lt;br /&gt;
** cd devstack; ./stack.sh&lt;br /&gt;
** Exercise: get the code for the targeted contribution&lt;br /&gt;
* [[How_To_Contribute|HOW to contribute URL]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/12-howtocontribute.rst slides] )&lt;br /&gt;
** [[Puppet-openstack#Contributing_to_the_modules|puppet stackforge]]&lt;br /&gt;
** [[Documentation/HowTo|documentation]]&lt;br /&gt;
** [http://docs.openstack.org/training-guides/content/under-construction.html training guides]&lt;br /&gt;
** Excercise: Apply for individual membership and sign the CLA&lt;br /&gt;
* [https://help.launchpad.net/ launchpad] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/13-launchpad.rst slides] )&lt;br /&gt;
** [[Blueprints|blueprints]]&lt;br /&gt;
** [[Bugs|bugs]]&lt;br /&gt;
*** [[Bugs#Bugs_reference|Status, Importance, Assigned To, Milestone, Tags]]&lt;br /&gt;
*** [[Bugs#Reporting|reporting a bug]]&lt;br /&gt;
*** [[Bugs#Confirming_.26_prioritizing|confirming and prioritizing]]&lt;br /&gt;
*** [[Bugs#Debugging_.28optional.29|debugging]]&lt;br /&gt;
*** [[Bugs#Bugfixing|bugfixing]]&lt;br /&gt;
** Exercise: review other launchpad bugs and improve yours&lt;br /&gt;
* [[GerritWorkflow|gerrit workflow]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/14-gerrit.rst slides] )&lt;br /&gt;
** [[GerritWorkflow#Account_Setup|account setup]]&lt;br /&gt;
** [[GerritWorkflow#Git_Review_Installation|git review installation]]&lt;br /&gt;
** [[GerritWorkflow#SSH_Setup|ssh setup]]&lt;br /&gt;
** [[GerritWorkflow#Project_Setup|project setup]]&lt;br /&gt;
** [[GerritWorkflow#Normal_Workflow|gerrit workflow]]&lt;br /&gt;
** [[Testing#Unit_Tests|running unit tests]]&lt;br /&gt;
** [http://www.mediawiki.org/wiki/Gerrit/Advanced_usage review dependencies]&lt;br /&gt;
** Exercise: push a wip or draft and invite reviewers&lt;br /&gt;
* Branching model ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/15-branching-model.rst slides] )&lt;br /&gt;
** [[BranchModel|development]]&lt;br /&gt;
** [[StableBranch|stable]]&lt;br /&gt;
** Exercise: checkout the latest stable branch&lt;br /&gt;
* [[GerritJenkinsGit#Reviewing_a_Change|reviewing]]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/16-reviewing.rst slides] )&lt;br /&gt;
* [[GerritWorkflow#Committing_Changes|writing a commit message]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/17-commit-message.rst slides] )&lt;br /&gt;
** reference to a bug or a blueprint&lt;br /&gt;
** amending a commit message&lt;br /&gt;
** Exercise: review each other messages on the draft&lt;br /&gt;
* [[GerritJenkinsGit|jenkins]]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/18-jenkins.rst slides] )&lt;br /&gt;
** Exercise: add an error and match it to the jenkins message&lt;br /&gt;
&lt;br /&gt;
== Second day == &lt;br /&gt;
&lt;br /&gt;
=== The Contribution Process (1 hour) === &lt;br /&gt;
&lt;br /&gt;
 ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/19-training-contribution-process.rst slides] )&lt;br /&gt;
* Take the pulse of the project.&lt;br /&gt;
* Figure out who's behind it.&lt;br /&gt;
* Determine the project's social groups.&lt;br /&gt;
* Assess your approach.&lt;br /&gt;
* Engage immediately.&lt;br /&gt;
* Play with your network.&lt;br /&gt;
* Perform the smaller tasks.&lt;br /&gt;
* Choose a question.&lt;br /&gt;
* Familiarize yourself with the code of conduct.&lt;br /&gt;
* Understand the conventions.&lt;br /&gt;
* Explain what you do.&lt;br /&gt;
* Prepare the backport.&lt;br /&gt;
* Learn what's local and what's upstream.&lt;br /&gt;
* Learn what distinguishes good work flow from bad work flow.&lt;br /&gt;
* Quantify the delta.&lt;br /&gt;
* Speed up the acceptance.&lt;br /&gt;
* Determine the time frame.&lt;br /&gt;
* Maximize karma.&lt;br /&gt;
* Work in parallel.&lt;br /&gt;
* Archive and collect.&lt;br /&gt;
&lt;br /&gt;
=== Agile for Contributors (15 min) === &lt;br /&gt;
&lt;br /&gt;
 ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/20-training-agile-for-contributors.rst slides] )&lt;br /&gt;
* Apply agile&lt;br /&gt;
* Who is the customer?&lt;br /&gt;
* Company &amp;amp; Upstream product owner&lt;br /&gt;
* Sprint review presentation to Upstream&lt;br /&gt;
&lt;br /&gt;
=== Contribution Simulation (1 hour) === &lt;br /&gt;
&lt;br /&gt;
The students make a virtual contribution simulation using Lego bricks as props, with the goal of expanding a Lego town, built by upstream. They are divided into teams; the teacher is by turns the product owner in the company and the upstream.&lt;br /&gt;
&lt;br /&gt;
=== Contribution Planning (2 hours) === &lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-student-project-sample.odp odp slides] [http://dachary.org/loic/openstack-training/training-student-project-sample.pdf pdf slides] )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* The students use template slides to prepare a 5-minute presentation of their planned contribution.&lt;br /&gt;
* A sample presentation is given by the teacher, as an example.&lt;br /&gt;
* Each student group prepares a presentation describing:&lt;br /&gt;
** the contribution they plan to work on during the online sessions,&lt;br /&gt;
** how they will engage with the Upstream,&lt;br /&gt;
** how it contributes to the company's agenda&lt;br /&gt;
** and whom they will be working with.&lt;br /&gt;
* Each student group presents its slides to the class&lt;br /&gt;
&lt;br /&gt;
=== Etherpad ===&lt;br /&gt;
&lt;br /&gt;
https://etherpad.openstack.org/p/kilo-upstream-training&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=67090</id>
		<title>OpenStack Upstream Training/Info</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=67090"/>
				<updated>2014-10-31T10:47:47Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: link to the pad&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;translate&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction == &lt;br /&gt;
&lt;br /&gt;
With over 2000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions.  These can significantly slow down the speed at which newcomers are successful at integrating their own roadmap into that of the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to help professional developers negotiate this hurdle.  It shows them how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time.  The educational program requires students to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In a followup session, the students benefit from individual online sessions to help them resolve any remaining problems they might have.&lt;br /&gt;
&lt;br /&gt;
== Objectives == &lt;br /&gt;
&lt;br /&gt;
* Faster integration of the companies product roadmap into the OpenStack release cycle&lt;br /&gt;
* Successfully contribute one real world patch to an OpenStack component&lt;br /&gt;
* Master the technical tools&lt;br /&gt;
* Understand the OpenStack contribution workflow and social norms&lt;br /&gt;
&lt;br /&gt;
== Target Audience == &lt;br /&gt;
&lt;br /&gt;
* Developers&lt;br /&gt;
* System administrators&lt;br /&gt;
&lt;br /&gt;
== Prerequisites == &lt;br /&gt;
&lt;br /&gt;
* Being able to read and write English at a technical level.&lt;br /&gt;
* If contributing code, being technically proficient enough to carry out simple bug fixes in the project.&lt;br /&gt;
* If contributing documentation, being able to produce documents in the project's chosen infrastructure.&lt;br /&gt;
* Having at least 8 hours a week to dedicate to the project, be it through programming or through interacting with the community.&lt;br /&gt;
&lt;br /&gt;
== Duration == &lt;br /&gt;
&lt;br /&gt;
* Face-to-face section: 2 days&lt;br /&gt;
* Online section: 10 one-hour individual mentoring sessions over a period of 4 to 10 weeks&lt;br /&gt;
&lt;br /&gt;
== Infrastructure == &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Setup_DevStack|ready to use devstack VM]] for participants with network connectivity but troubles with their laptop&lt;br /&gt;
&lt;br /&gt;
= Course Outline = &lt;br /&gt;
&lt;br /&gt;
== First day == &lt;br /&gt;
&lt;br /&gt;
=== Introduction === &lt;br /&gt;
&lt;br /&gt;
* A week before Day 1: choice of a contribution, via email, with each participant&lt;br /&gt;
* Day 1: How OpenStack is made&lt;br /&gt;
* Day 1: Learn and practice git, gerrit, IRC&lt;br /&gt;
&lt;br /&gt;
* Day 2: The theory of contribution&lt;br /&gt;
* Day 2: Lego contribution simulation&lt;br /&gt;
* Day 2: Individual presentation of the contribution plan&lt;br /&gt;
* Day 2: Online mentoring&lt;br /&gt;
&lt;br /&gt;
=== How OpenStack is made (3h including 1h30 exercises) === &lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Release_Cycle Release cycle] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/01-release-cycle.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Planning_.28Design.2C_Discuss_and_Target.29 Planning (Design, Discuss and Target)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Implementation_.28Milestone_iterations.29 Implementation (Milestone iterations)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Pre-release_.28Release_Candidates_dance.29 Pre-release (Release Candidates dance)]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_candidate_1 Release candidate 1]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Other_release_candidates Other release candidates]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_day Release day]&lt;br /&gt;
** Exercise: based on the [https://wiki.openstack.org/wiki/Icehouse_Release_Schedule Icehouse release schedule] find the URL of a document or a patch that belongs to each of the above steps.&lt;br /&gt;
* Relevant actors ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/02-relevant-actors.rst slides] )&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] companies&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] individuals&lt;br /&gt;
** Your management&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee Technical Committee] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/03-technical-committee.rst slides] )&lt;br /&gt;
** Decide what is an [https://wiki.openstack.org/wiki/Programs OpenStack Program]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/TechnicalCommittee meetings] &lt;br /&gt;
** Exercise: read [http://eavesdrop.openstack.org/meetings/tc/2014/tc.2014-04-01-20.03.log.html archived] and briefly comment on [https://etherpad.openstack.org/p/keystone-incubation-integration-requirements keystone document]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Program_Leads PTLs]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_PTL_seats_.28.22APC.22.29 APC]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_TC_seats_.28.22ATC.22.29 ATC]&lt;br /&gt;
** Exercise: each APC / ATC in the class add a URL to the etherpad proving it&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/NewProjects Program ecosystem]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/04-program-ecosystem.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Incubation Incubated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Integrated Integrated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Core_.3F Core]&lt;br /&gt;
** [http://ci.openstack.org/stackforge.html Stackforge]&lt;br /&gt;
** Exercise: What kind of Program do you contribute to ?&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Summit Design summits]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/05-design-summit.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#Propose_sessions propose sessions]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#At_the_Design_Summit attend or lead a session]&lt;br /&gt;
** Exercise: Add a session proposal regarding your contribution in an etherpad, review two proposals&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Meetings IRC meetings]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/06-irc-meetings.rst slides] )&lt;br /&gt;
** [http://ci.openstack.org/meetbot.html modified] [http://wiki.debian.org/MeetBot meetbot]&lt;br /&gt;
** #info - Add an info item to the minutes. People should liberally use this for important things they say, so that they can be logged in the minutes. &lt;br /&gt;
** #action - Document an action item in the minutes. Include any nicknames in the line, and the item will be assigned to them. (nicknames are case-sensitive) &lt;br /&gt;
** #help - Add a &amp;quot;Call for Help&amp;quot; to the minutes. Use this command when you need to recruit someone to do a task. (Counter-intuitively, this doesn't provide help on the bot)&lt;br /&gt;
** Exercise: lunch menu online meeting&lt;br /&gt;
&lt;br /&gt;
=== Workflow of an OpenStack contribution and tools (3h including 2h exercises) === &lt;br /&gt;
&lt;br /&gt;
* [http://devstack.org/ devstack] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/11-devstack.rst slides] )&lt;br /&gt;
** Ubuntu or Fedora&lt;br /&gt;
** git clone https://github.com/openstack-dev/devstack.git&lt;br /&gt;
** [http://devstack.org/configuration.html minimal configuration]&lt;br /&gt;
** cd devstack; ./stack.sh&lt;br /&gt;
** Exercise: get the code for the targeted contribution&lt;br /&gt;
* [[How_To_Contribute|HOW to contribute URL]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/12-howtocontribute.rst slides] )&lt;br /&gt;
** [[Puppet-openstack#Contributing_to_the_modules|puppet stackforge]]&lt;br /&gt;
** [[Documentation/HowTo|documentation]]&lt;br /&gt;
** [http://docs.openstack.org/training-guides/content/under-construction.html training guides]&lt;br /&gt;
** Excercise: Apply for individual membership and sign the CLA&lt;br /&gt;
* [https://help.launchpad.net/ launchpad] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/13-launchpad.rst slides] )&lt;br /&gt;
** [[Blueprints|blueprints]]&lt;br /&gt;
** [[Bugs|bugs]]&lt;br /&gt;
*** [[Bugs#Bugs_reference|Status, Importance, Assigned To, Milestone, Tags]]&lt;br /&gt;
*** [[Bugs#Reporting|reporting a bug]]&lt;br /&gt;
*** [[Bugs#Confirming_.26_prioritizing|confirming and prioritizing]]&lt;br /&gt;
*** [[Bugs#Debugging_.28optional.29|debugging]]&lt;br /&gt;
*** [[Bugs#Bugfixing|bugfixing]]&lt;br /&gt;
** Exercise: review other launchpad bugs and improve yours&lt;br /&gt;
* [[GerritWorkflow|gerrit workflow]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/14-gerrit.rst slides] )&lt;br /&gt;
** [[GerritWorkflow#Account_Setup|account setup]]&lt;br /&gt;
** [[GerritWorkflow#Git_Review_Installation|git review installation]]&lt;br /&gt;
** [[GerritWorkflow#SSH_Setup|ssh setup]]&lt;br /&gt;
** [[GerritWorkflow#Project_Setup|project setup]]&lt;br /&gt;
** [[GerritWorkflow#Normal_Workflow|gerrit workflow]]&lt;br /&gt;
** [[Testing#Unit_Tests|running unit tests]]&lt;br /&gt;
** [http://www.mediawiki.org/wiki/Gerrit/Advanced_usage review dependencies]&lt;br /&gt;
** Exercise: push a wip or draft and invite reviewers&lt;br /&gt;
* Branching model ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/15-branching-model.rst slides] )&lt;br /&gt;
** [[BranchModel|development]]&lt;br /&gt;
** [[StableBranch|stable]]&lt;br /&gt;
** Exercise: checkout the latest stable branch&lt;br /&gt;
* [[GerritJenkinsGit#Reviewing_a_Change|reviewing]]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/16-reviewing.rst slides] )&lt;br /&gt;
* [[GerritWorkflow#Committing_Changes|writing a commit message]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/17-commit-message.rst slides] )&lt;br /&gt;
** reference to a bug or a blueprint&lt;br /&gt;
** amending a commit message&lt;br /&gt;
** Exercise: review each other messages on the draft&lt;br /&gt;
* [[GerritJenkinsGit|jenkins]]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/18-jenkins.rst slides] )&lt;br /&gt;
** Exercise: add an error and match it to the jenkins message&lt;br /&gt;
&lt;br /&gt;
== Second day == &lt;br /&gt;
&lt;br /&gt;
=== The Contribution Process (3 hours) === &lt;br /&gt;
&lt;br /&gt;
 ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/19-training-contribution-process.rst slides] )&lt;br /&gt;
* Take the pulse of the project.&lt;br /&gt;
* Figure out who's behind it.&lt;br /&gt;
* Determine the project's social groups.&lt;br /&gt;
* Assess your approach.&lt;br /&gt;
* Engage immediately.&lt;br /&gt;
* Play with your network.&lt;br /&gt;
* Perform the smaller tasks.&lt;br /&gt;
* Choose a question.&lt;br /&gt;
* Familiarize yourself with the code of conduct.&lt;br /&gt;
* Understand the conventions.&lt;br /&gt;
* Explain what you do.&lt;br /&gt;
* Prepare the backport.&lt;br /&gt;
* Learn what's local and what's upstream.&lt;br /&gt;
* Learn what distinguishes good work flow from bad work flow.&lt;br /&gt;
* Quantify the delta.&lt;br /&gt;
* Speed up the acceptance.&lt;br /&gt;
* Determine the time frame.&lt;br /&gt;
* Maximize karma.&lt;br /&gt;
* Work in parallel.&lt;br /&gt;
* Archive and collect.&lt;br /&gt;
&lt;br /&gt;
=== Agile for Contributors (15 min) === &lt;br /&gt;
&lt;br /&gt;
 ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/20-training-agile-for-contributors.rst slides] )&lt;br /&gt;
* Apply agile&lt;br /&gt;
* Who is the customer?&lt;br /&gt;
* Company &amp;amp; Upstream product owner&lt;br /&gt;
* Sprint review presentation to Upstream&lt;br /&gt;
&lt;br /&gt;
=== Contribution Simulation (1 hour) === &lt;br /&gt;
&lt;br /&gt;
The students make a virtual contribution simulation using Lego bricks as props, with the goal of expanding a Lego town, built by upstream. They are divided into teams; the teacher is by turns the product owner in the company and the upstream.&lt;br /&gt;
&lt;br /&gt;
=== Contribution Planning (2 hours) === &lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-student-project-sample.odp odp slides] [http://dachary.org/loic/openstack-training/training-student-project-sample.pdf pdf slides] )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* The students use template slides to prepare a 5-minute presentation of their planned contribution.&lt;br /&gt;
* A sample presentation is given by the teacher, as an example.&lt;br /&gt;
* Each student group prepares a presentation describing:&lt;br /&gt;
** the contribution they plan to work on during the online sessions,&lt;br /&gt;
** how they will engage with the Upstream,&lt;br /&gt;
** how it contributes to the company's agenda&lt;br /&gt;
** and whom they will be working with.&lt;br /&gt;
* Each student group presents its slides to the class&lt;br /&gt;
&lt;br /&gt;
=== Etherpad ===&lt;br /&gt;
&lt;br /&gt;
https://etherpad.openstack.org/p/kilo-upstream-training&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=66847</id>
		<title>OpenStack Upstream Training/Info</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=66847"/>
				<updated>2014-10-28T06:10:27Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: add labels to contribution planning slides&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;translate&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction == &lt;br /&gt;
&lt;br /&gt;
With over 2000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions.  These can significantly slow down the speed at which newcomers are successful at integrating their own roadmap into that of the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to help professional developers negotiate this hurdle.  It shows them how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time.  The educational program requires students to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In a followup session, the students benefit from individual online sessions to help them resolve any remaining problems they might have.&lt;br /&gt;
&lt;br /&gt;
== Objectives == &lt;br /&gt;
&lt;br /&gt;
* Faster integration of the companies product roadmap into the OpenStack release cycle&lt;br /&gt;
* Successfully contribute one real world patch to an OpenStack component&lt;br /&gt;
* Master the technical tools&lt;br /&gt;
* Understand the OpenStack contribution workflow and social norms&lt;br /&gt;
&lt;br /&gt;
== Target Audience == &lt;br /&gt;
&lt;br /&gt;
* Developers&lt;br /&gt;
* System administrators&lt;br /&gt;
&lt;br /&gt;
== Prerequisites == &lt;br /&gt;
&lt;br /&gt;
* Being able to read and write English at a technical level.&lt;br /&gt;
* If contributing code, being technically proficient enough to carry out simple bug fixes in the project.&lt;br /&gt;
* If contributing documentation, being able to produce documents in the project's chosen infrastructure.&lt;br /&gt;
* Having at least 8 hours a week to dedicate to the project, be it through programming or through interacting with the community.&lt;br /&gt;
&lt;br /&gt;
== Duration == &lt;br /&gt;
&lt;br /&gt;
* Face-to-face section: 2 days&lt;br /&gt;
* Online section: 10 one-hour individual mentoring sessions over a period of 4 to 10 weeks&lt;br /&gt;
&lt;br /&gt;
== Infrastructure == &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Setup_DevStack|ready to use devstack VM]] for participants with network connectivity but troubles with their laptop&lt;br /&gt;
&lt;br /&gt;
= Course Outline = &lt;br /&gt;
&lt;br /&gt;
== First day == &lt;br /&gt;
&lt;br /&gt;
=== Introduction === &lt;br /&gt;
&lt;br /&gt;
* A week before Day 1: choice of a contribution, via email, with each participant&lt;br /&gt;
* Day 1: How OpenStack is made&lt;br /&gt;
* Day 1: Learn and practice git, gerrit, IRC&lt;br /&gt;
&lt;br /&gt;
* Day 2: The theory of contribution&lt;br /&gt;
* Day 2: Lego contribution simulation&lt;br /&gt;
* Day 2: Individual presentation of the contribution plan&lt;br /&gt;
* Day 2: Online mentoring&lt;br /&gt;
&lt;br /&gt;
=== How OpenStack is made (3h including 1h30 exercises) === &lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Release_Cycle Release cycle] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/01-release-cycle.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Planning_.28Design.2C_Discuss_and_Target.29 Planning (Design, Discuss and Target)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Implementation_.28Milestone_iterations.29 Implementation (Milestone iterations)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Pre-release_.28Release_Candidates_dance.29 Pre-release (Release Candidates dance)]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_candidate_1 Release candidate 1]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Other_release_candidates Other release candidates]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_day Release day]&lt;br /&gt;
** Exercise: based on the [https://wiki.openstack.org/wiki/Icehouse_Release_Schedule Icehouse release schedule] find the URL of a document or a patch that belongs to each of the above steps.&lt;br /&gt;
* Relevant actors ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/02-relevant-actors.rst slides] )&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] companies&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] individuals&lt;br /&gt;
** Your management&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee Technical Committee] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/03-technical-committee.rst slides] )&lt;br /&gt;
** Decide what is an [https://wiki.openstack.org/wiki/Programs OpenStack Program]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/TechnicalCommittee meetings] &lt;br /&gt;
** Exercise: read [http://eavesdrop.openstack.org/meetings/tc/2014/tc.2014-04-01-20.03.log.html archived] and briefly comment on [https://etherpad.openstack.org/p/keystone-incubation-integration-requirements keystone document]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Program_Leads PTLs]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_PTL_seats_.28.22APC.22.29 APC]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_TC_seats_.28.22ATC.22.29 ATC]&lt;br /&gt;
** Exercise: each APC / ATC in the class add a URL to the etherpad proving it&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/NewProjects Program ecosystem]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/04-program-ecosystem.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Incubation Incubated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Integrated Integrated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Core_.3F Core]&lt;br /&gt;
** [http://ci.openstack.org/stackforge.html Stackforge]&lt;br /&gt;
** Exercise: What kind of Program do you contribute to ?&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Summit Design summits]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/05-design-summit.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#Propose_sessions propose sessions]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#At_the_Design_Summit attend or lead a session]&lt;br /&gt;
** Exercise: Add a session proposal regarding your contribution in an etherpad, review two proposals&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Meetings IRC meetings]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/06-irc-meetings.rst slides] )&lt;br /&gt;
** [http://ci.openstack.org/meetbot.html modified] [http://wiki.debian.org/MeetBot meetbot]&lt;br /&gt;
** #info - Add an info item to the minutes. People should liberally use this for important things they say, so that they can be logged in the minutes. &lt;br /&gt;
** #action - Document an action item in the minutes. Include any nicknames in the line, and the item will be assigned to them. (nicknames are case-sensitive) &lt;br /&gt;
** #help - Add a &amp;quot;Call for Help&amp;quot; to the minutes. Use this command when you need to recruit someone to do a task. (Counter-intuitively, this doesn't provide help on the bot)&lt;br /&gt;
** Exercise: lunch menu online meeting&lt;br /&gt;
&lt;br /&gt;
=== Workflow of an OpenStack contribution and tools (3h including 2h exercises) === &lt;br /&gt;
&lt;br /&gt;
* [http://devstack.org/ devstack] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/11-devstack.rst slides] )&lt;br /&gt;
** Ubuntu or Fedora&lt;br /&gt;
** git clone https://github.com/openstack-dev/devstack.git&lt;br /&gt;
** [http://devstack.org/configuration.html minimal configuration]&lt;br /&gt;
** cd devstack; ./stack.sh&lt;br /&gt;
** Exercise: get the code for the targeted contribution&lt;br /&gt;
* [[How_To_Contribute|HOW to contribute URL]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/12-howtocontribute.rst slides] )&lt;br /&gt;
** [[Puppet-openstack#Contributing_to_the_modules|puppet stackforge]]&lt;br /&gt;
** [[Documentation/HowTo|documentation]]&lt;br /&gt;
** [http://docs.openstack.org/training-guides/content/under-construction.html training guides]&lt;br /&gt;
** Excercise: Apply for individual membership and sign the CLA&lt;br /&gt;
* [https://help.launchpad.net/ launchpad] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/13-launchpad.rst slides] )&lt;br /&gt;
** [[Blueprints|blueprints]]&lt;br /&gt;
** [[Bugs|bugs]]&lt;br /&gt;
*** [[Bugs#Bugs_reference|Status, Importance, Assigned To, Milestone, Tags]]&lt;br /&gt;
*** [[Bugs#Reporting|reporting a bug]]&lt;br /&gt;
*** [[Bugs#Confirming_.26_prioritizing|confirming and prioritizing]]&lt;br /&gt;
*** [[Bugs#Debugging_.28optional.29|debugging]]&lt;br /&gt;
*** [[Bugs#Bugfixing|bugfixing]]&lt;br /&gt;
** Exercise: review other launchpad bugs and improve yours&lt;br /&gt;
* [[GerritWorkflow|gerrit workflow]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/14-gerrit.rst slides] )&lt;br /&gt;
** [[GerritWorkflow#Account_Setup|account setup]]&lt;br /&gt;
** [[GerritWorkflow#Git_Review_Installation|git review installation]]&lt;br /&gt;
** [[GerritWorkflow#SSH_Setup|ssh setup]]&lt;br /&gt;
** [[GerritWorkflow#Project_Setup|project setup]]&lt;br /&gt;
** [[GerritWorkflow#Normal_Workflow|gerrit workflow]]&lt;br /&gt;
** [[Testing#Unit_Tests|running unit tests]]&lt;br /&gt;
** [http://www.mediawiki.org/wiki/Gerrit/Advanced_usage review dependencies]&lt;br /&gt;
** Exercise: push a wip or draft and invite reviewers&lt;br /&gt;
* Branching model ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/15-branching-model.rst slides] )&lt;br /&gt;
** [[BranchModel|development]]&lt;br /&gt;
** [[StableBranch|stable]]&lt;br /&gt;
** Exercise: checkout the latest stable branch&lt;br /&gt;
* [[GerritJenkinsGit#Reviewing_a_Change|reviewing]]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/16-reviewing.rst slides] )&lt;br /&gt;
* [[GerritWorkflow#Committing_Changes|writing a commit message]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/17-commit-message.rst slides] )&lt;br /&gt;
** reference to a bug or a blueprint&lt;br /&gt;
** amending a commit message&lt;br /&gt;
** Exercise: review each other messages on the draft&lt;br /&gt;
* [[GerritJenkinsGit|jenkins]]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/18-jenkins.rst slides] )&lt;br /&gt;
** Exercise: add an error and match it to the jenkins message&lt;br /&gt;
&lt;br /&gt;
== Second day == &lt;br /&gt;
&lt;br /&gt;
=== The Contribution Process (3 hours) === &lt;br /&gt;
&lt;br /&gt;
 ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/19-training-contribution-process.rst slides] )&lt;br /&gt;
* Take the pulse of the project.&lt;br /&gt;
* Figure out who's behind it.&lt;br /&gt;
* Determine the project's social groups.&lt;br /&gt;
* Assess your approach.&lt;br /&gt;
* Engage immediately.&lt;br /&gt;
* Play with your network.&lt;br /&gt;
* Perform the smaller tasks.&lt;br /&gt;
* Choose a question.&lt;br /&gt;
* Familiarize yourself with the code of conduct.&lt;br /&gt;
* Understand the conventions.&lt;br /&gt;
* Explain what you do.&lt;br /&gt;
* Prepare the backport.&lt;br /&gt;
* Learn what's local and what's upstream.&lt;br /&gt;
* Learn what distinguishes good work flow from bad work flow.&lt;br /&gt;
* Quantify the delta.&lt;br /&gt;
* Speed up the acceptance.&lt;br /&gt;
* Determine the time frame.&lt;br /&gt;
* Maximize karma.&lt;br /&gt;
* Work in parallel.&lt;br /&gt;
* Archive and collect.&lt;br /&gt;
&lt;br /&gt;
=== Agile for Contributors (15 min) === &lt;br /&gt;
&lt;br /&gt;
 ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/20-training-agile-for-contributors.rst slides] )&lt;br /&gt;
* Apply agile&lt;br /&gt;
* Who is the customer?&lt;br /&gt;
* Company &amp;amp; Upstream product owner&lt;br /&gt;
* Sprint review presentation to Upstream&lt;br /&gt;
&lt;br /&gt;
=== Contribution Simulation (1 hour) === &lt;br /&gt;
&lt;br /&gt;
The students make a virtual contribution simulation using Lego bricks as props, with the goal of expanding a Lego town, built by upstream. They are divided into teams; the teacher is by turns the product owner in the company and the upstream.&lt;br /&gt;
&lt;br /&gt;
=== Contribution Planning (2 hours) === &lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-student-project-sample.odp odp slides] [http://dachary.org/loic/openstack-training/training-student-project-sample.pdf pdf slides] )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* The students use template slides to prepare a 5-minute presentation of their planned contribution.&lt;br /&gt;
* A sample presentation is given by the teacher, as an example.&lt;br /&gt;
* Each student group prepares a presentation describing:&lt;br /&gt;
** the contribution they plan to work on during the online sessions,&lt;br /&gt;
** how they will engage with the Upstream,&lt;br /&gt;
** how it contributes to the company's agenda&lt;br /&gt;
** and whom they will be working with.&lt;br /&gt;
* Each student group presents its slides to the class&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=66846</id>
		<title>OpenStack Upstream Training/Info</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=66846"/>
				<updated>2014-10-28T06:09:06Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: update links to slides to point to https://github.com/openstack/training-guides/&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;translate&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction == &lt;br /&gt;
&lt;br /&gt;
With over 2000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions.  These can significantly slow down the speed at which newcomers are successful at integrating their own roadmap into that of the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to help professional developers negotiate this hurdle.  It shows them how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time.  The educational program requires students to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In a followup session, the students benefit from individual online sessions to help them resolve any remaining problems they might have.&lt;br /&gt;
&lt;br /&gt;
== Objectives == &lt;br /&gt;
&lt;br /&gt;
* Faster integration of the companies product roadmap into the OpenStack release cycle&lt;br /&gt;
* Successfully contribute one real world patch to an OpenStack component&lt;br /&gt;
* Master the technical tools&lt;br /&gt;
* Understand the OpenStack contribution workflow and social norms&lt;br /&gt;
&lt;br /&gt;
== Target Audience == &lt;br /&gt;
&lt;br /&gt;
* Developers&lt;br /&gt;
* System administrators&lt;br /&gt;
&lt;br /&gt;
== Prerequisites == &lt;br /&gt;
&lt;br /&gt;
* Being able to read and write English at a technical level.&lt;br /&gt;
* If contributing code, being technically proficient enough to carry out simple bug fixes in the project.&lt;br /&gt;
* If contributing documentation, being able to produce documents in the project's chosen infrastructure.&lt;br /&gt;
* Having at least 8 hours a week to dedicate to the project, be it through programming or through interacting with the community.&lt;br /&gt;
&lt;br /&gt;
== Duration == &lt;br /&gt;
&lt;br /&gt;
* Face-to-face section: 2 days&lt;br /&gt;
* Online section: 10 one-hour individual mentoring sessions over a period of 4 to 10 weeks&lt;br /&gt;
&lt;br /&gt;
== Infrastructure == &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Setup_DevStack|ready to use devstack VM]] for participants with network connectivity but troubles with their laptop&lt;br /&gt;
&lt;br /&gt;
= Course Outline = &lt;br /&gt;
&lt;br /&gt;
== First day == &lt;br /&gt;
&lt;br /&gt;
=== Introduction === &lt;br /&gt;
&lt;br /&gt;
* A week before Day 1: choice of a contribution, via email, with each participant&lt;br /&gt;
* Day 1: How OpenStack is made&lt;br /&gt;
* Day 1: Learn and practice git, gerrit, IRC&lt;br /&gt;
&lt;br /&gt;
* Day 2: The theory of contribution&lt;br /&gt;
* Day 2: Lego contribution simulation&lt;br /&gt;
* Day 2: Individual presentation of the contribution plan&lt;br /&gt;
* Day 2: Online mentoring&lt;br /&gt;
&lt;br /&gt;
=== How OpenStack is made (3h including 1h30 exercises) === &lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Release_Cycle Release cycle] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/01-release-cycle.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Planning_.28Design.2C_Discuss_and_Target.29 Planning (Design, Discuss and Target)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Implementation_.28Milestone_iterations.29 Implementation (Milestone iterations)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Pre-release_.28Release_Candidates_dance.29 Pre-release (Release Candidates dance)]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_candidate_1 Release candidate 1]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Other_release_candidates Other release candidates]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_day Release day]&lt;br /&gt;
** Exercise: based on the [https://wiki.openstack.org/wiki/Icehouse_Release_Schedule Icehouse release schedule] find the URL of a document or a patch that belongs to each of the above steps.&lt;br /&gt;
* Relevant actors ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/02-relevant-actors.rst slides] )&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] companies&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] individuals&lt;br /&gt;
** Your management&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee Technical Committee] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/03-technical-committee.rst slides] )&lt;br /&gt;
** Decide what is an [https://wiki.openstack.org/wiki/Programs OpenStack Program]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/TechnicalCommittee meetings] &lt;br /&gt;
** Exercise: read [http://eavesdrop.openstack.org/meetings/tc/2014/tc.2014-04-01-20.03.log.html archived] and briefly comment on [https://etherpad.openstack.org/p/keystone-incubation-integration-requirements keystone document]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Program_Leads PTLs]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_PTL_seats_.28.22APC.22.29 APC]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_TC_seats_.28.22ATC.22.29 ATC]&lt;br /&gt;
** Exercise: each APC / ATC in the class add a URL to the etherpad proving it&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/NewProjects Program ecosystem]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/04-program-ecosystem.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Incubation Incubated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Integrated Integrated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Core_.3F Core]&lt;br /&gt;
** [http://ci.openstack.org/stackforge.html Stackforge]&lt;br /&gt;
** Exercise: What kind of Program do you contribute to ?&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Summit Design summits]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/05-design-summit.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#Propose_sessions propose sessions]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#At_the_Design_Summit attend or lead a session]&lt;br /&gt;
** Exercise: Add a session proposal regarding your contribution in an etherpad, review two proposals&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Meetings IRC meetings]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/06-irc-meetings.rst slides] )&lt;br /&gt;
** [http://ci.openstack.org/meetbot.html modified] [http://wiki.debian.org/MeetBot meetbot]&lt;br /&gt;
** #info - Add an info item to the minutes. People should liberally use this for important things they say, so that they can be logged in the minutes. &lt;br /&gt;
** #action - Document an action item in the minutes. Include any nicknames in the line, and the item will be assigned to them. (nicknames are case-sensitive) &lt;br /&gt;
** #help - Add a &amp;quot;Call for Help&amp;quot; to the minutes. Use this command when you need to recruit someone to do a task. (Counter-intuitively, this doesn't provide help on the bot)&lt;br /&gt;
** Exercise: lunch menu online meeting&lt;br /&gt;
&lt;br /&gt;
=== Workflow of an OpenStack contribution and tools (3h including 2h exercises) === &lt;br /&gt;
&lt;br /&gt;
* [http://devstack.org/ devstack] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/11-devstack.rst slides] )&lt;br /&gt;
** Ubuntu or Fedora&lt;br /&gt;
** git clone https://github.com/openstack-dev/devstack.git&lt;br /&gt;
** [http://devstack.org/configuration.html minimal configuration]&lt;br /&gt;
** cd devstack; ./stack.sh&lt;br /&gt;
** Exercise: get the code for the targeted contribution&lt;br /&gt;
* [[How_To_Contribute|HOW to contribute URL]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/12-howtocontribute.rst slides] )&lt;br /&gt;
** [[Puppet-openstack#Contributing_to_the_modules|puppet stackforge]]&lt;br /&gt;
** [[Documentation/HowTo|documentation]]&lt;br /&gt;
** [http://docs.openstack.org/training-guides/content/under-construction.html training guides]&lt;br /&gt;
** Excercise: Apply for individual membership and sign the CLA&lt;br /&gt;
* [https://help.launchpad.net/ launchpad] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/13-launchpad.rst slides] )&lt;br /&gt;
** [[Blueprints|blueprints]]&lt;br /&gt;
** [[Bugs|bugs]]&lt;br /&gt;
*** [[Bugs#Bugs_reference|Status, Importance, Assigned To, Milestone, Tags]]&lt;br /&gt;
*** [[Bugs#Reporting|reporting a bug]]&lt;br /&gt;
*** [[Bugs#Confirming_.26_prioritizing|confirming and prioritizing]]&lt;br /&gt;
*** [[Bugs#Debugging_.28optional.29|debugging]]&lt;br /&gt;
*** [[Bugs#Bugfixing|bugfixing]]&lt;br /&gt;
** Exercise: review other launchpad bugs and improve yours&lt;br /&gt;
* [[GerritWorkflow|gerrit workflow]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/14-gerrit.rst slides] )&lt;br /&gt;
** [[GerritWorkflow#Account_Setup|account setup]]&lt;br /&gt;
** [[GerritWorkflow#Git_Review_Installation|git review installation]]&lt;br /&gt;
** [[GerritWorkflow#SSH_Setup|ssh setup]]&lt;br /&gt;
** [[GerritWorkflow#Project_Setup|project setup]]&lt;br /&gt;
** [[GerritWorkflow#Normal_Workflow|gerrit workflow]]&lt;br /&gt;
** [[Testing#Unit_Tests|running unit tests]]&lt;br /&gt;
** [http://www.mediawiki.org/wiki/Gerrit/Advanced_usage review dependencies]&lt;br /&gt;
** Exercise: push a wip or draft and invite reviewers&lt;br /&gt;
* Branching model ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/15-branching-model.rst slides] )&lt;br /&gt;
** [[BranchModel|development]]&lt;br /&gt;
** [[StableBranch|stable]]&lt;br /&gt;
** Exercise: checkout the latest stable branch&lt;br /&gt;
* [[GerritJenkinsGit#Reviewing_a_Change|reviewing]]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/16-reviewing.rst slides] )&lt;br /&gt;
* [[GerritWorkflow#Committing_Changes|writing a commit message]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/17-commit-message.rst slides] )&lt;br /&gt;
** reference to a bug or a blueprint&lt;br /&gt;
** amending a commit message&lt;br /&gt;
** Exercise: review each other messages on the draft&lt;br /&gt;
* [[GerritJenkinsGit|jenkins]]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/18-jenkins.rst slides] )&lt;br /&gt;
** Exercise: add an error and match it to the jenkins message&lt;br /&gt;
&lt;br /&gt;
== Second day == &lt;br /&gt;
&lt;br /&gt;
=== The Contribution Process (3 hours) === &lt;br /&gt;
&lt;br /&gt;
 ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/19-training-contribution-process.rst slides] )&lt;br /&gt;
* Take the pulse of the project.&lt;br /&gt;
* Figure out who's behind it.&lt;br /&gt;
* Determine the project's social groups.&lt;br /&gt;
* Assess your approach.&lt;br /&gt;
* Engage immediately.&lt;br /&gt;
* Play with your network.&lt;br /&gt;
* Perform the smaller tasks.&lt;br /&gt;
* Choose a question.&lt;br /&gt;
* Familiarize yourself with the code of conduct.&lt;br /&gt;
* Understand the conventions.&lt;br /&gt;
* Explain what you do.&lt;br /&gt;
* Prepare the backport.&lt;br /&gt;
* Learn what's local and what's upstream.&lt;br /&gt;
* Learn what distinguishes good work flow from bad work flow.&lt;br /&gt;
* Quantify the delta.&lt;br /&gt;
* Speed up the acceptance.&lt;br /&gt;
* Determine the time frame.&lt;br /&gt;
* Maximize karma.&lt;br /&gt;
* Work in parallel.&lt;br /&gt;
* Archive and collect.&lt;br /&gt;
&lt;br /&gt;
=== Agile for Contributors (15 min) === &lt;br /&gt;
&lt;br /&gt;
 ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/20-training-agile-for-contributors.rst slides] )&lt;br /&gt;
* Apply agile&lt;br /&gt;
* Who is the customer?&lt;br /&gt;
* Company &amp;amp; Upstream product owner&lt;br /&gt;
* Sprint review presentation to Upstream&lt;br /&gt;
&lt;br /&gt;
=== Contribution Simulation (1 hour) === &lt;br /&gt;
&lt;br /&gt;
The students make a virtual contribution simulation using Lego bricks as props, with the goal of expanding a Lego town, built by upstream. They are divided into teams; the teacher is by turns the product owner in the company and the upstream.&lt;br /&gt;
&lt;br /&gt;
=== Contribution Planning (2 hours) === &lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-student-project-sample.odp] [http://dachary.org/loic/openstack-training/training-student-project-sample.pdf] )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* The students use template slides to prepare a 5-minute presentation of their planned contribution.&lt;br /&gt;
* A sample presentation is given by the teacher, as an example.&lt;br /&gt;
* Each student group prepares a presentation describing:&lt;br /&gt;
** the contribution they plan to work on during the online sessions,&lt;br /&gt;
** how they will engage with the Upstream,&lt;br /&gt;
** how it contributes to the company's agenda&lt;br /&gt;
** and whom they will be working with.&lt;br /&gt;
* Each student group presents its slides to the class&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=66845</id>
		<title>OpenStack Upstream Training/Info</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=66845"/>
				<updated>2014-10-28T06:08:24Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: update links to slides to point to https://github.com/openstack/training-guides/&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;translate&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction == &lt;br /&gt;
&lt;br /&gt;
With over 2000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions.  These can significantly slow down the speed at which newcomers are successful at integrating their own roadmap into that of the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to help professional developers negotiate this hurdle.  It shows them how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time.  The educational program requires students to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In a followup session, the students benefit from individual online sessions to help them resolve any remaining problems they might have.&lt;br /&gt;
&lt;br /&gt;
== Objectives == &lt;br /&gt;
&lt;br /&gt;
* Faster integration of the companies product roadmap into the OpenStack release cycle&lt;br /&gt;
* Successfully contribute one real world patch to an OpenStack component&lt;br /&gt;
* Master the technical tools&lt;br /&gt;
* Understand the OpenStack contribution workflow and social norms&lt;br /&gt;
&lt;br /&gt;
== Target Audience == &lt;br /&gt;
&lt;br /&gt;
* Developers&lt;br /&gt;
* System administrators&lt;br /&gt;
&lt;br /&gt;
== Prerequisites == &lt;br /&gt;
&lt;br /&gt;
* Being able to read and write English at a technical level.&lt;br /&gt;
* If contributing code, being technically proficient enough to carry out simple bug fixes in the project.&lt;br /&gt;
* If contributing documentation, being able to produce documents in the project's chosen infrastructure.&lt;br /&gt;
* Having at least 8 hours a week to dedicate to the project, be it through programming or through interacting with the community.&lt;br /&gt;
&lt;br /&gt;
== Duration == &lt;br /&gt;
&lt;br /&gt;
* Face-to-face section: 2 days&lt;br /&gt;
* Online section: 10 one-hour individual mentoring sessions over a period of 4 to 10 weeks&lt;br /&gt;
&lt;br /&gt;
== Infrastructure == &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Setup_DevStack|ready to use devstack VM]] for participants with network connectivity but troubles with their laptop&lt;br /&gt;
&lt;br /&gt;
= Course Outline = &lt;br /&gt;
&lt;br /&gt;
== First day == &lt;br /&gt;
&lt;br /&gt;
=== Introduction === &lt;br /&gt;
&lt;br /&gt;
* A week before Day 1: choice of a contribution, via email, with each participant&lt;br /&gt;
* Day 1: How OpenStack is made&lt;br /&gt;
* Day 1: Learn and practice git, gerrit, IRC&lt;br /&gt;
&lt;br /&gt;
* Day 2: The theory of contribution&lt;br /&gt;
* Day 2: Lego contribution simulation&lt;br /&gt;
* Day 2: Individual presentation of the contribution plan&lt;br /&gt;
* Day 2: Online mentoring&lt;br /&gt;
&lt;br /&gt;
=== How OpenStack is made (3h including 1h30 exercises) === &lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Release_Cycle Release cycle] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/01-release-cycle.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Planning_.28Design.2C_Discuss_and_Target.29 Planning (Design, Discuss and Target)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Implementation_.28Milestone_iterations.29 Implementation (Milestone iterations)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Pre-release_.28Release_Candidates_dance.29 Pre-release (Release Candidates dance)]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_candidate_1 Release candidate 1]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Other_release_candidates Other release candidates]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_day Release day]&lt;br /&gt;
** Exercise: based on the [https://wiki.openstack.org/wiki/Icehouse_Release_Schedule Icehouse release schedule] find the URL of a document or a patch that belongs to each of the above steps.&lt;br /&gt;
* Relevant actors ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/02-relevant-actors.rst slides] )&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] companies&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] individuals&lt;br /&gt;
** Your management&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee Technical Committee] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/03-technical-committee.rst slides] )&lt;br /&gt;
** Decide what is an [https://wiki.openstack.org/wiki/Programs OpenStack Program]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/TechnicalCommittee meetings] &lt;br /&gt;
** Exercise: read [http://eavesdrop.openstack.org/meetings/tc/2014/tc.2014-04-01-20.03.log.html archived] and briefly comment on [https://etherpad.openstack.org/p/keystone-incubation-integration-requirements keystone document]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Program_Leads PTLs]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_PTL_seats_.28.22APC.22.29 APC]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_TC_seats_.28.22ATC.22.29 ATC]&lt;br /&gt;
** Exercise: each APC / ATC in the class add a URL to the etherpad proving it&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/NewProjects Program ecosystem]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/04-program-ecosystem.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Incubation Incubated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Integrated Integrated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Core_.3F Core]&lt;br /&gt;
** [http://ci.openstack.org/stackforge.html Stackforge]&lt;br /&gt;
** Exercise: What kind of Program do you contribute to ?&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Summit Design summits]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/05-design-summit.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#Propose_sessions propose sessions]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#At_the_Design_Summit attend or lead a session]&lt;br /&gt;
** Exercise: Add a session proposal regarding your contribution in an etherpad, review two proposals&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Meetings IRC meetings]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/06-irc-meetings.rst slides] )&lt;br /&gt;
** [http://ci.openstack.org/meetbot.html modified] [http://wiki.debian.org/MeetBot meetbot]&lt;br /&gt;
** #info - Add an info item to the minutes. People should liberally use this for important things they say, so that they can be logged in the minutes. &lt;br /&gt;
** #action - Document an action item in the minutes. Include any nicknames in the line, and the item will be assigned to them. (nicknames are case-sensitive) &lt;br /&gt;
** #help - Add a &amp;quot;Call for Help&amp;quot; to the minutes. Use this command when you need to recruit someone to do a task. (Counter-intuitively, this doesn't provide help on the bot)&lt;br /&gt;
** Exercise: lunch menu online meeting&lt;br /&gt;
&lt;br /&gt;
=== Workflow of an OpenStack contribution and tools (3h including 2h exercises) === &lt;br /&gt;
&lt;br /&gt;
* [http://devstack.org/ devstack] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/11-devstack.rst slides] )&lt;br /&gt;
** Ubuntu or Fedora&lt;br /&gt;
** git clone https://github.com/openstack-dev/devstack.git&lt;br /&gt;
** [http://devstack.org/configuration.html minimal configuration]&lt;br /&gt;
** cd devstack; ./stack.sh&lt;br /&gt;
** Exercise: get the code for the targeted contribution&lt;br /&gt;
* [[How_To_Contribute|HOW to contribute URL]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/12-howtocontribute.rst slides] )&lt;br /&gt;
** [[Puppet-openstack#Contributing_to_the_modules|puppet stackforge]]&lt;br /&gt;
** [[Documentation/HowTo|documentation]]&lt;br /&gt;
** [http://docs.openstack.org/training-guides/content/under-construction.html training guides]&lt;br /&gt;
** Excercise: Apply for individual membership and sign the CLA&lt;br /&gt;
* [https://help.launchpad.net/ launchpad] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/13-launchpad.rst slides] )&lt;br /&gt;
** [[Blueprints|blueprints]]&lt;br /&gt;
** [[Bugs|bugs]]&lt;br /&gt;
*** [[Bugs#Bugs_reference|Status, Importance, Assigned To, Milestone, Tags]]&lt;br /&gt;
*** [[Bugs#Reporting|reporting a bug]]&lt;br /&gt;
*** [[Bugs#Confirming_.26_prioritizing|confirming and prioritizing]]&lt;br /&gt;
*** [[Bugs#Debugging_.28optional.29|debugging]]&lt;br /&gt;
*** [[Bugs#Bugfixing|bugfixing]]&lt;br /&gt;
** Exercise: review other launchpad bugs and improve yours&lt;br /&gt;
* [[GerritWorkflow|gerrit workflow]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/14-gerrit.rst slides] )&lt;br /&gt;
** [[GerritWorkflow#Account_Setup|account setup]]&lt;br /&gt;
** [[GerritWorkflow#Git_Review_Installation|git review installation]]&lt;br /&gt;
** [[GerritWorkflow#SSH_Setup|ssh setup]]&lt;br /&gt;
** [[GerritWorkflow#Project_Setup|project setup]]&lt;br /&gt;
** [[GerritWorkflow#Normal_Workflow|gerrit workflow]]&lt;br /&gt;
** [[Testing#Unit_Tests|running unit tests]]&lt;br /&gt;
** [http://www.mediawiki.org/wiki/Gerrit/Advanced_usage review dependencies]&lt;br /&gt;
** Exercise: push a wip or draft and invite reviewers&lt;br /&gt;
* Branching model ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/15-branching-model.rst slides] )&lt;br /&gt;
** [[BranchModel|development]]&lt;br /&gt;
** [[StableBranch|stable]]&lt;br /&gt;
** Exercise: checkout the latest stable branch&lt;br /&gt;
* [[GerritJenkinsGit#Reviewing_a_Change|reviewing]]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/16-reviewing.rst slides] )&lt;br /&gt;
* [[GerritWorkflow#Committing_Changes|writing a commit message]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/17-commit-message.rst slides] )&lt;br /&gt;
** reference to a bug or a blueprint&lt;br /&gt;
** amending a commit message&lt;br /&gt;
** Exercise: review each other messages on the draft&lt;br /&gt;
* [[GerritJenkinsGit|jenkins]]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/18-jenkins.rst slides] )&lt;br /&gt;
** Exercise: add an error and match it to the jenkins message&lt;br /&gt;
&lt;br /&gt;
== Second day == &lt;br /&gt;
&lt;br /&gt;
=== The Contribution Process (3 hours) === &lt;br /&gt;
&lt;br /&gt;
 ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/19-training-contribution-process.rst slides] )&lt;br /&gt;
* Take the pulse of the project.&lt;br /&gt;
* Figure out who's behind it.&lt;br /&gt;
* Determine the project's social groups.&lt;br /&gt;
* Assess your approach.&lt;br /&gt;
* Engage immediately.&lt;br /&gt;
* Play with your network.&lt;br /&gt;
* Perform the smaller tasks.&lt;br /&gt;
* Choose a question.&lt;br /&gt;
* Familiarize yourself with the code of conduct.&lt;br /&gt;
* Understand the conventions.&lt;br /&gt;
* Explain what you do.&lt;br /&gt;
* Prepare the backport.&lt;br /&gt;
* Learn what's local and what's upstream.&lt;br /&gt;
* Learn what distinguishes good work flow from bad work flow.&lt;br /&gt;
* Quantify the delta.&lt;br /&gt;
* Speed up the acceptance.&lt;br /&gt;
* Determine the time frame.&lt;br /&gt;
* Maximize karma.&lt;br /&gt;
* Work in parallel.&lt;br /&gt;
* Archive and collect.&lt;br /&gt;
&lt;br /&gt;
=== Agile for Contributors (15 min) === &lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-agile-for-contributors.odp] [http://dachary.org/loic/openstack-training/training-agile-for-contributors.pdf] )&lt;br /&gt;
* Apply agile&lt;br /&gt;
* Who is the customer?&lt;br /&gt;
* Company &amp;amp; Upstream product owner&lt;br /&gt;
* Sprint review presentation to Upstream&lt;br /&gt;
&lt;br /&gt;
=== Contribution Simulation (1 hour) === &lt;br /&gt;
&lt;br /&gt;
The students make a virtual contribution simulation using Lego bricks as props, with the goal of expanding a Lego town, built by upstream. They are divided into teams; the teacher is by turns the product owner in the company and the upstream.&lt;br /&gt;
&lt;br /&gt;
=== Contribution Planning (2 hours) === &lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-student-project-sample.odp] [http://dachary.org/loic/openstack-training/training-student-project-sample.pdf] )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* The students use template slides to prepare a 5-minute presentation of their planned contribution.&lt;br /&gt;
* A sample presentation is given by the teacher, as an example.&lt;br /&gt;
* Each student group prepares a presentation describing:&lt;br /&gt;
** the contribution they plan to work on during the online sessions,&lt;br /&gt;
** how they will engage with the Upstream,&lt;br /&gt;
** how it contributes to the company's agenda&lt;br /&gt;
** and whom they will be working with.&lt;br /&gt;
* Each student group presents its slides to the class&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=66844</id>
		<title>OpenStack Upstream Training/Info</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=66844"/>
				<updated>2014-10-28T06:07:12Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: update links to slides to point to https://github.com/openstack/training-guides/&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;translate&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction == &lt;br /&gt;
&lt;br /&gt;
With over 2000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions.  These can significantly slow down the speed at which newcomers are successful at integrating their own roadmap into that of the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to help professional developers negotiate this hurdle.  It shows them how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time.  The educational program requires students to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In a followup session, the students benefit from individual online sessions to help them resolve any remaining problems they might have.&lt;br /&gt;
&lt;br /&gt;
== Objectives == &lt;br /&gt;
&lt;br /&gt;
* Faster integration of the companies product roadmap into the OpenStack release cycle&lt;br /&gt;
* Successfully contribute one real world patch to an OpenStack component&lt;br /&gt;
* Master the technical tools&lt;br /&gt;
* Understand the OpenStack contribution workflow and social norms&lt;br /&gt;
&lt;br /&gt;
== Target Audience == &lt;br /&gt;
&lt;br /&gt;
* Developers&lt;br /&gt;
* System administrators&lt;br /&gt;
&lt;br /&gt;
== Prerequisites == &lt;br /&gt;
&lt;br /&gt;
* Being able to read and write English at a technical level.&lt;br /&gt;
* If contributing code, being technically proficient enough to carry out simple bug fixes in the project.&lt;br /&gt;
* If contributing documentation, being able to produce documents in the project's chosen infrastructure.&lt;br /&gt;
* Having at least 8 hours a week to dedicate to the project, be it through programming or through interacting with the community.&lt;br /&gt;
&lt;br /&gt;
== Duration == &lt;br /&gt;
&lt;br /&gt;
* Face-to-face section: 2 days&lt;br /&gt;
* Online section: 10 one-hour individual mentoring sessions over a period of 4 to 10 weeks&lt;br /&gt;
&lt;br /&gt;
== Infrastructure == &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Setup_DevStack|ready to use devstack VM]] for participants with network connectivity but troubles with their laptop&lt;br /&gt;
&lt;br /&gt;
= Course Outline = &lt;br /&gt;
&lt;br /&gt;
== First day == &lt;br /&gt;
&lt;br /&gt;
=== Introduction === &lt;br /&gt;
&lt;br /&gt;
* A week before Day 1: choice of a contribution, via email, with each participant&lt;br /&gt;
* Day 1: How OpenStack is made&lt;br /&gt;
* Day 1: Learn and practice git, gerrit, IRC&lt;br /&gt;
&lt;br /&gt;
* Day 2: The theory of contribution&lt;br /&gt;
* Day 2: Lego contribution simulation&lt;br /&gt;
* Day 2: Individual presentation of the contribution plan&lt;br /&gt;
* Day 2: Online mentoring&lt;br /&gt;
&lt;br /&gt;
=== How OpenStack is made (3h including 1h30 exercises) === &lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Release_Cycle Release cycle] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/01-release-cycle.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Planning_.28Design.2C_Discuss_and_Target.29 Planning (Design, Discuss and Target)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Implementation_.28Milestone_iterations.29 Implementation (Milestone iterations)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Pre-release_.28Release_Candidates_dance.29 Pre-release (Release Candidates dance)]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_candidate_1 Release candidate 1]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Other_release_candidates Other release candidates]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_day Release day]&lt;br /&gt;
** Exercise: based on the [https://wiki.openstack.org/wiki/Icehouse_Release_Schedule Icehouse release schedule] find the URL of a document or a patch that belongs to each of the above steps.&lt;br /&gt;
* Relevant actors ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/02-relevant-actors.rst slides] )&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] companies&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] individuals&lt;br /&gt;
** Your management&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee Technical Committee] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/03-technical-committee.rst slides] )&lt;br /&gt;
** Decide what is an [https://wiki.openstack.org/wiki/Programs OpenStack Program]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/TechnicalCommittee meetings] &lt;br /&gt;
** Exercise: read [http://eavesdrop.openstack.org/meetings/tc/2014/tc.2014-04-01-20.03.log.html archived] and briefly comment on [https://etherpad.openstack.org/p/keystone-incubation-integration-requirements keystone document]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Program_Leads PTLs]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_PTL_seats_.28.22APC.22.29 APC]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_TC_seats_.28.22ATC.22.29 ATC]&lt;br /&gt;
** Exercise: each APC / ATC in the class add a URL to the etherpad proving it&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/NewProjects Program ecosystem]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/04-program-ecosystem.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Incubation Incubated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Integrated Integrated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Core_.3F Core]&lt;br /&gt;
** [http://ci.openstack.org/stackforge.html Stackforge]&lt;br /&gt;
** Exercise: What kind of Program do you contribute to ?&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Summit Design summits]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/05-design-summit.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#Propose_sessions propose sessions]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#At_the_Design_Summit attend or lead a session]&lt;br /&gt;
** Exercise: Add a session proposal regarding your contribution in an etherpad, review two proposals&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Meetings IRC meetings]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/06-irc-meetings.rst slides] )&lt;br /&gt;
** [http://ci.openstack.org/meetbot.html modified] [http://wiki.debian.org/MeetBot meetbot]&lt;br /&gt;
** #info - Add an info item to the minutes. People should liberally use this for important things they say, so that they can be logged in the minutes. &lt;br /&gt;
** #action - Document an action item in the minutes. Include any nicknames in the line, and the item will be assigned to them. (nicknames are case-sensitive) &lt;br /&gt;
** #help - Add a &amp;quot;Call for Help&amp;quot; to the minutes. Use this command when you need to recruit someone to do a task. (Counter-intuitively, this doesn't provide help on the bot)&lt;br /&gt;
** Exercise: lunch menu online meeting&lt;br /&gt;
&lt;br /&gt;
=== Workflow of an OpenStack contribution and tools (3h including 2h exercises) === &lt;br /&gt;
&lt;br /&gt;
* [http://devstack.org/ devstack] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/11-devstack.rst slides] )&lt;br /&gt;
** Ubuntu or Fedora&lt;br /&gt;
** git clone https://github.com/openstack-dev/devstack.git&lt;br /&gt;
** [http://devstack.org/configuration.html minimal configuration]&lt;br /&gt;
** cd devstack; ./stack.sh&lt;br /&gt;
** Exercise: get the code for the targeted contribution&lt;br /&gt;
* [[How_To_Contribute|HOW to contribute URL]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/12-howtocontribute.rst slides] )&lt;br /&gt;
** [[Puppet-openstack#Contributing_to_the_modules|puppet stackforge]]&lt;br /&gt;
** [[Documentation/HowTo|documentation]]&lt;br /&gt;
** [http://docs.openstack.org/training-guides/content/under-construction.html training guides]&lt;br /&gt;
** Excercise: Apply for individual membership and sign the CLA&lt;br /&gt;
* [https://help.launchpad.net/ launchpad] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/13-launchpad.rst slides] )&lt;br /&gt;
** [[Blueprints|blueprints]]&lt;br /&gt;
** [[Bugs|bugs]]&lt;br /&gt;
*** [[Bugs#Bugs_reference|Status, Importance, Assigned To, Milestone, Tags]]&lt;br /&gt;
*** [[Bugs#Reporting|reporting a bug]]&lt;br /&gt;
*** [[Bugs#Confirming_.26_prioritizing|confirming and prioritizing]]&lt;br /&gt;
*** [[Bugs#Debugging_.28optional.29|debugging]]&lt;br /&gt;
*** [[Bugs#Bugfixing|bugfixing]]&lt;br /&gt;
** Exercise: review other launchpad bugs and improve yours&lt;br /&gt;
* [[GerritWorkflow|gerrit workflow]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/14-gerrit.rst slides] )&lt;br /&gt;
** [[GerritWorkflow#Account_Setup|account setup]]&lt;br /&gt;
** [[GerritWorkflow#Git_Review_Installation|git review installation]]&lt;br /&gt;
** [[GerritWorkflow#SSH_Setup|ssh setup]]&lt;br /&gt;
** [[GerritWorkflow#Project_Setup|project setup]]&lt;br /&gt;
** [[GerritWorkflow#Normal_Workflow|gerrit workflow]]&lt;br /&gt;
** [[Testing#Unit_Tests|running unit tests]]&lt;br /&gt;
** [http://www.mediawiki.org/wiki/Gerrit/Advanced_usage review dependencies]&lt;br /&gt;
** Exercise: push a wip or draft and invite reviewers&lt;br /&gt;
* Branching model ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/15-branching-model.rst slides] )&lt;br /&gt;
** [[BranchModel|development]]&lt;br /&gt;
** [[StableBranch|stable]]&lt;br /&gt;
** Exercise: checkout the latest stable branch&lt;br /&gt;
* [[GerritJenkinsGit#Reviewing_a_Change|reviewing]]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/16-reviewing.rst slides] )&lt;br /&gt;
* [[GerritWorkflow#Committing_Changes|writing a commit message]] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/17-commit-message.rst slides] )&lt;br /&gt;
** reference to a bug or a blueprint&lt;br /&gt;
** amending a commit message&lt;br /&gt;
** Exercise: review each other messages on the draft&lt;br /&gt;
* [[GerritJenkinsGit|jenkins]]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/18-jenkins.rst slides] )&lt;br /&gt;
** Exercise: add an error and match it to the jenkins message&lt;br /&gt;
&lt;br /&gt;
== Second day == &lt;br /&gt;
&lt;br /&gt;
=== The Contribution Process (3 hours) === &lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-contribution-process.odp] [http://dachary.org/loic/openstack-training/training-contribution-process.pdf] )&lt;br /&gt;
* Take the pulse of the project.&lt;br /&gt;
* Figure out who's behind it.&lt;br /&gt;
* Determine the project's social groups.&lt;br /&gt;
* Assess your approach.&lt;br /&gt;
* Engage immediately.&lt;br /&gt;
* Play with your network.&lt;br /&gt;
* Perform the smaller tasks.&lt;br /&gt;
* Choose a question.&lt;br /&gt;
* Familiarize yourself with the code of conduct.&lt;br /&gt;
* Understand the conventions.&lt;br /&gt;
* Explain what you do.&lt;br /&gt;
* Prepare the backport.&lt;br /&gt;
* Learn what's local and what's upstream.&lt;br /&gt;
* Learn what distinguishes good work flow from bad work flow.&lt;br /&gt;
* Quantify the delta.&lt;br /&gt;
* Speed up the acceptance.&lt;br /&gt;
* Determine the time frame.&lt;br /&gt;
* Maximize karma.&lt;br /&gt;
* Work in parallel.&lt;br /&gt;
* Archive and collect.&lt;br /&gt;
&lt;br /&gt;
=== Agile for Contributors (15 min) === &lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-agile-for-contributors.odp] [http://dachary.org/loic/openstack-training/training-agile-for-contributors.pdf] )&lt;br /&gt;
* Apply agile&lt;br /&gt;
* Who is the customer?&lt;br /&gt;
* Company &amp;amp; Upstream product owner&lt;br /&gt;
* Sprint review presentation to Upstream&lt;br /&gt;
&lt;br /&gt;
=== Contribution Simulation (1 hour) === &lt;br /&gt;
&lt;br /&gt;
The students make a virtual contribution simulation using Lego bricks as props, with the goal of expanding a Lego town, built by upstream. They are divided into teams; the teacher is by turns the product owner in the company and the upstream.&lt;br /&gt;
&lt;br /&gt;
=== Contribution Planning (2 hours) === &lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-student-project-sample.odp] [http://dachary.org/loic/openstack-training/training-student-project-sample.pdf] )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* The students use template slides to prepare a 5-minute presentation of their planned contribution.&lt;br /&gt;
* A sample presentation is given by the teacher, as an example.&lt;br /&gt;
* Each student group prepares a presentation describing:&lt;br /&gt;
** the contribution they plan to work on during the online sessions,&lt;br /&gt;
** how they will engage with the Upstream,&lt;br /&gt;
** how it contributes to the company's agenda&lt;br /&gt;
** and whom they will be working with.&lt;br /&gt;
* Each student group presents its slides to the class&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=66843</id>
		<title>OpenStack Upstream Training/Info</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=66843"/>
				<updated>2014-10-28T06:02:47Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: /* How OpenStack is made (3h including 1h30 exercises) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;translate&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction == &lt;br /&gt;
&lt;br /&gt;
With over 2000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions.  These can significantly slow down the speed at which newcomers are successful at integrating their own roadmap into that of the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to help professional developers negotiate this hurdle.  It shows them how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time.  The educational program requires students to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In a followup session, the students benefit from individual online sessions to help them resolve any remaining problems they might have.&lt;br /&gt;
&lt;br /&gt;
== Objectives == &lt;br /&gt;
&lt;br /&gt;
* Faster integration of the companies product roadmap into the OpenStack release cycle&lt;br /&gt;
* Successfully contribute one real world patch to an OpenStack component&lt;br /&gt;
* Master the technical tools&lt;br /&gt;
* Understand the OpenStack contribution workflow and social norms&lt;br /&gt;
&lt;br /&gt;
== Target Audience == &lt;br /&gt;
&lt;br /&gt;
* Developers&lt;br /&gt;
* System administrators&lt;br /&gt;
&lt;br /&gt;
== Prerequisites == &lt;br /&gt;
&lt;br /&gt;
* Being able to read and write English at a technical level.&lt;br /&gt;
* If contributing code, being technically proficient enough to carry out simple bug fixes in the project.&lt;br /&gt;
* If contributing documentation, being able to produce documents in the project's chosen infrastructure.&lt;br /&gt;
* Having at least 8 hours a week to dedicate to the project, be it through programming or through interacting with the community.&lt;br /&gt;
&lt;br /&gt;
== Duration == &lt;br /&gt;
&lt;br /&gt;
* Face-to-face section: 2 days&lt;br /&gt;
* Online section: 10 one-hour individual mentoring sessions over a period of 4 to 10 weeks&lt;br /&gt;
&lt;br /&gt;
== Infrastructure == &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Setup_DevStack|ready to use devstack VM]] for participants with network connectivity but troubles with their laptop&lt;br /&gt;
&lt;br /&gt;
= Course Outline = &lt;br /&gt;
&lt;br /&gt;
== First day == &lt;br /&gt;
&lt;br /&gt;
=== Introduction === &lt;br /&gt;
&lt;br /&gt;
* A week before Day 1: choice of a contribution, via email, with each participant&lt;br /&gt;
* Day 1: How OpenStack is made&lt;br /&gt;
* Day 1: Learn and practice git, gerrit, IRC&lt;br /&gt;
&lt;br /&gt;
* Day 2: The theory of contribution&lt;br /&gt;
* Day 2: Lego contribution simulation&lt;br /&gt;
* Day 2: Individual presentation of the contribution plan&lt;br /&gt;
* Day 2: Online mentoring&lt;br /&gt;
&lt;br /&gt;
=== How OpenStack is made (3h including 1h30 exercises) === &lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Release_Cycle Release cycle] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/01-release-cycle.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Planning_.28Design.2C_Discuss_and_Target.29 Planning (Design, Discuss and Target)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Implementation_.28Milestone_iterations.29 Implementation (Milestone iterations)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Pre-release_.28Release_Candidates_dance.29 Pre-release (Release Candidates dance)]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_candidate_1 Release candidate 1]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Other_release_candidates Other release candidates]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_day Release day]&lt;br /&gt;
** Exercise: based on the [https://wiki.openstack.org/wiki/Icehouse_Release_Schedule Icehouse release schedule] find the URL of a document or a patch that belongs to each of the above steps.&lt;br /&gt;
* Relevant actors ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/02-relevant-actors.rst slides] )&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] companies&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] individuals&lt;br /&gt;
** Your management&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee Technical Committee] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/03-technical-committee.rst slides] )&lt;br /&gt;
** Decide what is an [https://wiki.openstack.org/wiki/Programs OpenStack Program]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/TechnicalCommittee meetings] &lt;br /&gt;
** Exercise: read [http://eavesdrop.openstack.org/meetings/tc/2014/tc.2014-04-01-20.03.log.html archived] and briefly comment on [https://etherpad.openstack.org/p/keystone-incubation-integration-requirements keystone document]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Program_Leads PTLs]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_PTL_seats_.28.22APC.22.29 APC]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_TC_seats_.28.22ATC.22.29 ATC]&lt;br /&gt;
** Exercise: each APC / ATC in the class add a URL to the etherpad proving it&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/NewProjects Program ecosystem]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/04-program-ecosystem.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Incubation Incubated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Integrated Integrated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Core_.3F Core]&lt;br /&gt;
** [http://ci.openstack.org/stackforge.html Stackforge]&lt;br /&gt;
** Exercise: What kind of Program do you contribute to ?&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Summit Design summits]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/05-design-summit.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#Propose_sessions propose sessions]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#At_the_Design_Summit attend or lead a session]&lt;br /&gt;
** Exercise: Add a session proposal regarding your contribution in an etherpad, review two proposals&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Meetings IRC meetings]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/06-irc-meetings.rst slides] )&lt;br /&gt;
** [http://ci.openstack.org/meetbot.html modified] [http://wiki.debian.org/MeetBot meetbot]&lt;br /&gt;
** #info - Add an info item to the minutes. People should liberally use this for important things they say, so that they can be logged in the minutes. &lt;br /&gt;
** #action - Document an action item in the minutes. Include any nicknames in the line, and the item will be assigned to them. (nicknames are case-sensitive) &lt;br /&gt;
** #help - Add a &amp;quot;Call for Help&amp;quot; to the minutes. Use this command when you need to recruit someone to do a task. (Counter-intuitively, this doesn't provide help on the bot)&lt;br /&gt;
** Exercise: lunch menu online meeting&lt;br /&gt;
&lt;br /&gt;
=== Workflow of an OpenStack contribution and tools (3h including 2h exercises) === &lt;br /&gt;
&lt;br /&gt;
* [http://devstack.org/ devstack] ( [http://dachary.org/loic/openstack-training/devstack.odp slides.odp] [http://dachary.org/loic/openstack-training/devstack.pdf slides.pdf] )&lt;br /&gt;
** Ubuntu or Fedora&lt;br /&gt;
** git clone https://github.com/openstack-dev/devstack.git&lt;br /&gt;
** [http://devstack.org/configuration.html minimal configuration]&lt;br /&gt;
** cd devstack; ./stack.sh&lt;br /&gt;
** Exercise: get the code for the targeted contribution&lt;br /&gt;
* [[How_To_Contribute|HOW to contribute URL]] ( [http://dachary.org/loic/openstack-training/howtocontribute.odp slides.odp] [http://dachary.org/loic/openstack-training/howtocontribute.pdf slides.pdf] )&lt;br /&gt;
** [[Puppet-openstack#Contributing_to_the_modules|puppet stackforge]]&lt;br /&gt;
** [[Documentation/HowTo|documentation]]&lt;br /&gt;
** [http://docs.openstack.org/training-guides/content/under-construction.html training guides]&lt;br /&gt;
** Excercise: Apply for individual membership and sign the CLA&lt;br /&gt;
* [https://help.launchpad.net/ launchpad] ( [http://dachary.org/loic/openstack-training/launchpad.odp slides.odp] [http://dachary.org/loic/openstack-training/launchpad.pdf slides.pdf] )&lt;br /&gt;
** [[Blueprints|blueprints]]&lt;br /&gt;
** [[Bugs|bugs]]&lt;br /&gt;
*** [[Bugs#Bugs_reference|Status, Importance, Assigned To, Milestone, Tags]]&lt;br /&gt;
*** [[Bugs#Reporting|reporting a bug]]&lt;br /&gt;
*** [[Bugs#Confirming_.26_prioritizing|confirming and prioritizing]]&lt;br /&gt;
*** [[Bugs#Debugging_.28optional.29|debugging]]&lt;br /&gt;
*** [[Bugs#Bugfixing|bugfixing]]&lt;br /&gt;
** Exercise: review other launchpad bugs and improve yours&lt;br /&gt;
* [[GerritWorkflow|gerrit workflow]] ( [http://dachary.org/loic/openstack-training/gerrit.odp slides.odp] [http://dachary.org/loic/openstack-training/gerrit.pdf slides.pdf] )&lt;br /&gt;
** [[GerritWorkflow#Account_Setup|account setup]]&lt;br /&gt;
** [[GerritWorkflow#Git_Review_Installation|git review installation]]&lt;br /&gt;
** [[GerritWorkflow#SSH_Setup|ssh setup]]&lt;br /&gt;
** [[GerritWorkflow#Project_Setup|project setup]]&lt;br /&gt;
** [[GerritWorkflow#Normal_Workflow|gerrit workflow]]&lt;br /&gt;
** [[Testing#Unit_Tests|running unit tests]]&lt;br /&gt;
** [http://www.mediawiki.org/wiki/Gerrit/Advanced_usage review dependencies]&lt;br /&gt;
** Exercise: push a wip or draft and invite reviewers&lt;br /&gt;
* Branching model ( [http://dachary.org/loic/openstack-training/branching-model.odp slides.odp] [http://dachary.org/loic/openstack-training/branching-model.pdf slides.pdf] )&lt;br /&gt;
** [[BranchModel|development]]&lt;br /&gt;
** [[StableBranch|stable]]&lt;br /&gt;
** Exercise: checkout the latest stable branch&lt;br /&gt;
* [[GerritJenkinsGit#Reviewing_a_Change|reviewing]]  ( [http://dachary.org/loic/openstack-training/reviewing.odp slides.odp] [http://dachary.org/loic/openstack-training/reviewing.pdf slides.pdf] )&lt;br /&gt;
* [[GerritWorkflow#Committing_Changes|writing a commit message]] ( [http://dachary.org/loic/openstack-training/commit-message.odp slides.odp] [http://dachary.org/loic/openstack-training/commit-message.pdf slides.pdf] )&lt;br /&gt;
** reference to a bug or a blueprint&lt;br /&gt;
** amending a commit message&lt;br /&gt;
** Exercise: review each other messages on the draft&lt;br /&gt;
* [[GerritJenkinsGit|jenkins]]  ( [http://dachary.org/loic/openstack-training/jenkins.odp slides.odp] [http://dachary.org/loic/openstack-training/jenkins.pdf slides.pdf] )&lt;br /&gt;
** Exercise: add an error and match it to the jenkins message&lt;br /&gt;
&lt;br /&gt;
== Second day == &lt;br /&gt;
&lt;br /&gt;
=== The Contribution Process (3 hours) === &lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-contribution-process.odp] [http://dachary.org/loic/openstack-training/training-contribution-process.pdf] )&lt;br /&gt;
* Take the pulse of the project.&lt;br /&gt;
* Figure out who's behind it.&lt;br /&gt;
* Determine the project's social groups.&lt;br /&gt;
* Assess your approach.&lt;br /&gt;
* Engage immediately.&lt;br /&gt;
* Play with your network.&lt;br /&gt;
* Perform the smaller tasks.&lt;br /&gt;
* Choose a question.&lt;br /&gt;
* Familiarize yourself with the code of conduct.&lt;br /&gt;
* Understand the conventions.&lt;br /&gt;
* Explain what you do.&lt;br /&gt;
* Prepare the backport.&lt;br /&gt;
* Learn what's local and what's upstream.&lt;br /&gt;
* Learn what distinguishes good work flow from bad work flow.&lt;br /&gt;
* Quantify the delta.&lt;br /&gt;
* Speed up the acceptance.&lt;br /&gt;
* Determine the time frame.&lt;br /&gt;
* Maximize karma.&lt;br /&gt;
* Work in parallel.&lt;br /&gt;
* Archive and collect.&lt;br /&gt;
&lt;br /&gt;
=== Agile for Contributors (15 min) === &lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-agile-for-contributors.odp] [http://dachary.org/loic/openstack-training/training-agile-for-contributors.pdf] )&lt;br /&gt;
* Apply agile&lt;br /&gt;
* Who is the customer?&lt;br /&gt;
* Company &amp;amp; Upstream product owner&lt;br /&gt;
* Sprint review presentation to Upstream&lt;br /&gt;
&lt;br /&gt;
=== Contribution Simulation (1 hour) === &lt;br /&gt;
&lt;br /&gt;
The students make a virtual contribution simulation using Lego bricks as props, with the goal of expanding a Lego town, built by upstream. They are divided into teams; the teacher is by turns the product owner in the company and the upstream.&lt;br /&gt;
&lt;br /&gt;
=== Contribution Planning (2 hours) === &lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-student-project-sample.odp] [http://dachary.org/loic/openstack-training/training-student-project-sample.pdf] )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* The students use template slides to prepare a 5-minute presentation of their planned contribution.&lt;br /&gt;
* A sample presentation is given by the teacher, as an example.&lt;br /&gt;
* Each student group prepares a presentation describing:&lt;br /&gt;
** the contribution they plan to work on during the online sessions,&lt;br /&gt;
** how they will engage with the Upstream,&lt;br /&gt;
** how it contributes to the company's agenda&lt;br /&gt;
** and whom they will be working with.&lt;br /&gt;
* Each student group presents its slides to the class&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=66842</id>
		<title>OpenStack Upstream Training/Info</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=66842"/>
				<updated>2014-10-28T06:02:09Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: /* How OpenStack is made (3h including 1h30 exercises) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;translate&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction == &lt;br /&gt;
&lt;br /&gt;
With over 2000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions.  These can significantly slow down the speed at which newcomers are successful at integrating their own roadmap into that of the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to help professional developers negotiate this hurdle.  It shows them how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time.  The educational program requires students to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In a followup session, the students benefit from individual online sessions to help them resolve any remaining problems they might have.&lt;br /&gt;
&lt;br /&gt;
== Objectives == &lt;br /&gt;
&lt;br /&gt;
* Faster integration of the companies product roadmap into the OpenStack release cycle&lt;br /&gt;
* Successfully contribute one real world patch to an OpenStack component&lt;br /&gt;
* Master the technical tools&lt;br /&gt;
* Understand the OpenStack contribution workflow and social norms&lt;br /&gt;
&lt;br /&gt;
== Target Audience == &lt;br /&gt;
&lt;br /&gt;
* Developers&lt;br /&gt;
* System administrators&lt;br /&gt;
&lt;br /&gt;
== Prerequisites == &lt;br /&gt;
&lt;br /&gt;
* Being able to read and write English at a technical level.&lt;br /&gt;
* If contributing code, being technically proficient enough to carry out simple bug fixes in the project.&lt;br /&gt;
* If contributing documentation, being able to produce documents in the project's chosen infrastructure.&lt;br /&gt;
* Having at least 8 hours a week to dedicate to the project, be it through programming or through interacting with the community.&lt;br /&gt;
&lt;br /&gt;
== Duration == &lt;br /&gt;
&lt;br /&gt;
* Face-to-face section: 2 days&lt;br /&gt;
* Online section: 10 one-hour individual mentoring sessions over a period of 4 to 10 weeks&lt;br /&gt;
&lt;br /&gt;
== Infrastructure == &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Setup_DevStack|ready to use devstack VM]] for participants with network connectivity but troubles with their laptop&lt;br /&gt;
&lt;br /&gt;
= Course Outline = &lt;br /&gt;
&lt;br /&gt;
== First day == &lt;br /&gt;
&lt;br /&gt;
=== Introduction === &lt;br /&gt;
&lt;br /&gt;
* A week before Day 1: choice of a contribution, via email, with each participant&lt;br /&gt;
* Day 1: How OpenStack is made&lt;br /&gt;
* Day 1: Learn and practice git, gerrit, IRC&lt;br /&gt;
&lt;br /&gt;
* Day 2: The theory of contribution&lt;br /&gt;
* Day 2: Lego contribution simulation&lt;br /&gt;
* Day 2: Individual presentation of the contribution plan&lt;br /&gt;
* Day 2: Online mentoring&lt;br /&gt;
&lt;br /&gt;
=== How OpenStack is made (3h including 1h30 exercises) === &lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Release_Cycle Release cycle] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/01-release-cycle.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Planning_.28Design.2C_Discuss_and_Target.29 Planning (Design, Discuss and Target)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Implementation_.28Milestone_iterations.29 Implementation (Milestone iterations)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Pre-release_.28Release_Candidates_dance.29 Pre-release (Release Candidates dance)]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_candidate_1 Release candidate 1]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Other_release_candidates Other release candidates]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_day Release day]&lt;br /&gt;
** Exercise: based on the [https://wiki.openstack.org/wiki/Icehouse_Release_Schedule Icehouse release schedule] find the URL of a document or a patch that belongs to each of the above steps.&lt;br /&gt;
* Relevant actors ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/02-relevant-actors.rst slides] )&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] companies&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] individuals&lt;br /&gt;
** Your management&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee Technical Committee] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/03-technical-committee.rst slides] )&lt;br /&gt;
** Decide what is an [https://wiki.openstack.org/wiki/Programs OpenStack Program]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/TechnicalCommittee meetings] &lt;br /&gt;
** Exercise: read [http://eavesdrop.openstack.org/meetings/tc/2014/tc.2014-04-01-20.03.log.html archived] and briefly comment on [https://etherpad.openstack.org/p/keystone-incubation-integration-requirements keystone document]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Program_Leads PTLs]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_PTL_seats_.28.22APC.22.29 APC]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_TC_seats_.28.22ATC.22.29 ATC]&lt;br /&gt;
** Exercise: each APC / ATC in the class add a URL to the etherpad proving it&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/NewProjects Program ecosystem]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/04-program-ecosystem.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Incubation Incubated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Integrated Integrated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Core_.3F Core]&lt;br /&gt;
** [http://ci.openstack.org/stackforge.html Stackforge]&lt;br /&gt;
** Exercise: What kind of Program do you contribute to ?&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Summit Design summits]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/05-design-summit.rst slides )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#Propose_sessions propose sessions]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#At_the_Design_Summit attend or lead a session]&lt;br /&gt;
** Exercise: Add a session proposal regarding your contribution in an etherpad, review two proposals&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Meetings IRC meetings]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/06-irc-meetings.rst slides] )&lt;br /&gt;
** [http://ci.openstack.org/meetbot.html modified] [http://wiki.debian.org/MeetBot meetbot]&lt;br /&gt;
** #info - Add an info item to the minutes. People should liberally use this for important things they say, so that they can be logged in the minutes. &lt;br /&gt;
** #action - Document an action item in the minutes. Include any nicknames in the line, and the item will be assigned to them. (nicknames are case-sensitive) &lt;br /&gt;
** #help - Add a &amp;quot;Call for Help&amp;quot; to the minutes. Use this command when you need to recruit someone to do a task. (Counter-intuitively, this doesn't provide help on the bot)&lt;br /&gt;
** Exercise: lunch menu online meeting&lt;br /&gt;
&lt;br /&gt;
=== Workflow of an OpenStack contribution and tools (3h including 2h exercises) === &lt;br /&gt;
&lt;br /&gt;
* [http://devstack.org/ devstack] ( [http://dachary.org/loic/openstack-training/devstack.odp slides.odp] [http://dachary.org/loic/openstack-training/devstack.pdf slides.pdf] )&lt;br /&gt;
** Ubuntu or Fedora&lt;br /&gt;
** git clone https://github.com/openstack-dev/devstack.git&lt;br /&gt;
** [http://devstack.org/configuration.html minimal configuration]&lt;br /&gt;
** cd devstack; ./stack.sh&lt;br /&gt;
** Exercise: get the code for the targeted contribution&lt;br /&gt;
* [[How_To_Contribute|HOW to contribute URL]] ( [http://dachary.org/loic/openstack-training/howtocontribute.odp slides.odp] [http://dachary.org/loic/openstack-training/howtocontribute.pdf slides.pdf] )&lt;br /&gt;
** [[Puppet-openstack#Contributing_to_the_modules|puppet stackforge]]&lt;br /&gt;
** [[Documentation/HowTo|documentation]]&lt;br /&gt;
** [http://docs.openstack.org/training-guides/content/under-construction.html training guides]&lt;br /&gt;
** Excercise: Apply for individual membership and sign the CLA&lt;br /&gt;
* [https://help.launchpad.net/ launchpad] ( [http://dachary.org/loic/openstack-training/launchpad.odp slides.odp] [http://dachary.org/loic/openstack-training/launchpad.pdf slides.pdf] )&lt;br /&gt;
** [[Blueprints|blueprints]]&lt;br /&gt;
** [[Bugs|bugs]]&lt;br /&gt;
*** [[Bugs#Bugs_reference|Status, Importance, Assigned To, Milestone, Tags]]&lt;br /&gt;
*** [[Bugs#Reporting|reporting a bug]]&lt;br /&gt;
*** [[Bugs#Confirming_.26_prioritizing|confirming and prioritizing]]&lt;br /&gt;
*** [[Bugs#Debugging_.28optional.29|debugging]]&lt;br /&gt;
*** [[Bugs#Bugfixing|bugfixing]]&lt;br /&gt;
** Exercise: review other launchpad bugs and improve yours&lt;br /&gt;
* [[GerritWorkflow|gerrit workflow]] ( [http://dachary.org/loic/openstack-training/gerrit.odp slides.odp] [http://dachary.org/loic/openstack-training/gerrit.pdf slides.pdf] )&lt;br /&gt;
** [[GerritWorkflow#Account_Setup|account setup]]&lt;br /&gt;
** [[GerritWorkflow#Git_Review_Installation|git review installation]]&lt;br /&gt;
** [[GerritWorkflow#SSH_Setup|ssh setup]]&lt;br /&gt;
** [[GerritWorkflow#Project_Setup|project setup]]&lt;br /&gt;
** [[GerritWorkflow#Normal_Workflow|gerrit workflow]]&lt;br /&gt;
** [[Testing#Unit_Tests|running unit tests]]&lt;br /&gt;
** [http://www.mediawiki.org/wiki/Gerrit/Advanced_usage review dependencies]&lt;br /&gt;
** Exercise: push a wip or draft and invite reviewers&lt;br /&gt;
* Branching model ( [http://dachary.org/loic/openstack-training/branching-model.odp slides.odp] [http://dachary.org/loic/openstack-training/branching-model.pdf slides.pdf] )&lt;br /&gt;
** [[BranchModel|development]]&lt;br /&gt;
** [[StableBranch|stable]]&lt;br /&gt;
** Exercise: checkout the latest stable branch&lt;br /&gt;
* [[GerritJenkinsGit#Reviewing_a_Change|reviewing]]  ( [http://dachary.org/loic/openstack-training/reviewing.odp slides.odp] [http://dachary.org/loic/openstack-training/reviewing.pdf slides.pdf] )&lt;br /&gt;
* [[GerritWorkflow#Committing_Changes|writing a commit message]] ( [http://dachary.org/loic/openstack-training/commit-message.odp slides.odp] [http://dachary.org/loic/openstack-training/commit-message.pdf slides.pdf] )&lt;br /&gt;
** reference to a bug or a blueprint&lt;br /&gt;
** amending a commit message&lt;br /&gt;
** Exercise: review each other messages on the draft&lt;br /&gt;
* [[GerritJenkinsGit|jenkins]]  ( [http://dachary.org/loic/openstack-training/jenkins.odp slides.odp] [http://dachary.org/loic/openstack-training/jenkins.pdf slides.pdf] )&lt;br /&gt;
** Exercise: add an error and match it to the jenkins message&lt;br /&gt;
&lt;br /&gt;
== Second day == &lt;br /&gt;
&lt;br /&gt;
=== The Contribution Process (3 hours) === &lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-contribution-process.odp] [http://dachary.org/loic/openstack-training/training-contribution-process.pdf] )&lt;br /&gt;
* Take the pulse of the project.&lt;br /&gt;
* Figure out who's behind it.&lt;br /&gt;
* Determine the project's social groups.&lt;br /&gt;
* Assess your approach.&lt;br /&gt;
* Engage immediately.&lt;br /&gt;
* Play with your network.&lt;br /&gt;
* Perform the smaller tasks.&lt;br /&gt;
* Choose a question.&lt;br /&gt;
* Familiarize yourself with the code of conduct.&lt;br /&gt;
* Understand the conventions.&lt;br /&gt;
* Explain what you do.&lt;br /&gt;
* Prepare the backport.&lt;br /&gt;
* Learn what's local and what's upstream.&lt;br /&gt;
* Learn what distinguishes good work flow from bad work flow.&lt;br /&gt;
* Quantify the delta.&lt;br /&gt;
* Speed up the acceptance.&lt;br /&gt;
* Determine the time frame.&lt;br /&gt;
* Maximize karma.&lt;br /&gt;
* Work in parallel.&lt;br /&gt;
* Archive and collect.&lt;br /&gt;
&lt;br /&gt;
=== Agile for Contributors (15 min) === &lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-agile-for-contributors.odp] [http://dachary.org/loic/openstack-training/training-agile-for-contributors.pdf] )&lt;br /&gt;
* Apply agile&lt;br /&gt;
* Who is the customer?&lt;br /&gt;
* Company &amp;amp; Upstream product owner&lt;br /&gt;
* Sprint review presentation to Upstream&lt;br /&gt;
&lt;br /&gt;
=== Contribution Simulation (1 hour) === &lt;br /&gt;
&lt;br /&gt;
The students make a virtual contribution simulation using Lego bricks as props, with the goal of expanding a Lego town, built by upstream. They are divided into teams; the teacher is by turns the product owner in the company and the upstream.&lt;br /&gt;
&lt;br /&gt;
=== Contribution Planning (2 hours) === &lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-student-project-sample.odp] [http://dachary.org/loic/openstack-training/training-student-project-sample.pdf] )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* The students use template slides to prepare a 5-minute presentation of their planned contribution.&lt;br /&gt;
* A sample presentation is given by the teacher, as an example.&lt;br /&gt;
* Each student group prepares a presentation describing:&lt;br /&gt;
** the contribution they plan to work on during the online sessions,&lt;br /&gt;
** how they will engage with the Upstream,&lt;br /&gt;
** how it contributes to the company's agenda&lt;br /&gt;
** and whom they will be working with.&lt;br /&gt;
* Each student group presents its slides to the class&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=66841</id>
		<title>OpenStack Upstream Training/Info</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=66841"/>
				<updated>2014-10-28T06:01:10Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: update links to slides to point to https://github.com/openstack/training-guides/&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;translate&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction == &lt;br /&gt;
&lt;br /&gt;
With over 2000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions.  These can significantly slow down the speed at which newcomers are successful at integrating their own roadmap into that of the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to help professional developers negotiate this hurdle.  It shows them how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time.  The educational program requires students to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In a followup session, the students benefit from individual online sessions to help them resolve any remaining problems they might have.&lt;br /&gt;
&lt;br /&gt;
== Objectives == &lt;br /&gt;
&lt;br /&gt;
* Faster integration of the companies product roadmap into the OpenStack release cycle&lt;br /&gt;
* Successfully contribute one real world patch to an OpenStack component&lt;br /&gt;
* Master the technical tools&lt;br /&gt;
* Understand the OpenStack contribution workflow and social norms&lt;br /&gt;
&lt;br /&gt;
== Target Audience == &lt;br /&gt;
&lt;br /&gt;
* Developers&lt;br /&gt;
* System administrators&lt;br /&gt;
&lt;br /&gt;
== Prerequisites == &lt;br /&gt;
&lt;br /&gt;
* Being able to read and write English at a technical level.&lt;br /&gt;
* If contributing code, being technically proficient enough to carry out simple bug fixes in the project.&lt;br /&gt;
* If contributing documentation, being able to produce documents in the project's chosen infrastructure.&lt;br /&gt;
* Having at least 8 hours a week to dedicate to the project, be it through programming or through interacting with the community.&lt;br /&gt;
&lt;br /&gt;
== Duration == &lt;br /&gt;
&lt;br /&gt;
* Face-to-face section: 2 days&lt;br /&gt;
* Online section: 10 one-hour individual mentoring sessions over a period of 4 to 10 weeks&lt;br /&gt;
&lt;br /&gt;
== Infrastructure == &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Setup_DevStack|ready to use devstack VM]] for participants with network connectivity but troubles with their laptop&lt;br /&gt;
&lt;br /&gt;
= Course Outline = &lt;br /&gt;
&lt;br /&gt;
== First day == &lt;br /&gt;
&lt;br /&gt;
=== Introduction === &lt;br /&gt;
&lt;br /&gt;
* A week before Day 1: choice of a contribution, via email, with each participant&lt;br /&gt;
* Day 1: How OpenStack is made&lt;br /&gt;
* Day 1: Learn and practice git, gerrit, IRC&lt;br /&gt;
&lt;br /&gt;
* Day 2: The theory of contribution&lt;br /&gt;
* Day 2: Lego contribution simulation&lt;br /&gt;
* Day 2: Individual presentation of the contribution plan&lt;br /&gt;
* Day 2: Online mentoring&lt;br /&gt;
&lt;br /&gt;
=== How OpenStack is made (3h including 1h30 exercises) === &lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Release_Cycle Release cycle] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/01-release-cycle.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Planning_.28Design.2C_Discuss_and_Target.29 Planning (Design, Discuss and Target)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Implementation_.28Milestone_iterations.29 Implementation (Milestone iterations)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Pre-release_.28Release_Candidates_dance.29 Pre-release (Release Candidates dance)]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_candidate_1 Release candidate 1]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Other_release_candidates Other release candidates]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_day Release day]&lt;br /&gt;
** Exercise: based on the [https://wiki.openstack.org/wiki/Icehouse_Release_Schedule Icehouse release schedule] find the URL of a document or a patch that belongs to each of the above steps.&lt;br /&gt;
* Relevant actors ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/02-relevant-actors.rst slides] )&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] companies&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] individuals&lt;br /&gt;
** Your management&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee Technical Committee] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/03-technical-committee.rst slides )&lt;br /&gt;
** Decide what is an [https://wiki.openstack.org/wiki/Programs OpenStack Program]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/TechnicalCommittee meetings] &lt;br /&gt;
** Exercise: read [http://eavesdrop.openstack.org/meetings/tc/2014/tc.2014-04-01-20.03.log.html archived] and briefly comment on [https://etherpad.openstack.org/p/keystone-incubation-integration-requirements keystone document]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Program_Leads PTLs]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_PTL_seats_.28.22APC.22.29 APC]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_TC_seats_.28.22ATC.22.29 ATC]&lt;br /&gt;
** Exercise: each APC / ATC in the class add a URL to the etherpad proving it&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/NewProjects Program ecosystem]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/04-program-ecosystem.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Incubation Incubated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Integrated Integrated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Core_.3F Core]&lt;br /&gt;
** [http://ci.openstack.org/stackforge.html Stackforge]&lt;br /&gt;
** Exercise: What kind of Program do you contribute to ?&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Summit Design summits]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/05-design-summit.rst slides )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#Propose_sessions propose sessions]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#At_the_Design_Summit attend or lead a session]&lt;br /&gt;
** Exercise: Add a session proposal regarding your contribution in an etherpad, review two proposals&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Meetings IRC meetings]  ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/06-irc-meetings.rst slides] )&lt;br /&gt;
** [http://ci.openstack.org/meetbot.html modified] [http://wiki.debian.org/MeetBot meetbot]&lt;br /&gt;
** #info - Add an info item to the minutes. People should liberally use this for important things they say, so that they can be logged in the minutes. &lt;br /&gt;
** #action - Document an action item in the minutes. Include any nicknames in the line, and the item will be assigned to them. (nicknames are case-sensitive) &lt;br /&gt;
** #help - Add a &amp;quot;Call for Help&amp;quot; to the minutes. Use this command when you need to recruit someone to do a task. (Counter-intuitively, this doesn't provide help on the bot)&lt;br /&gt;
** Exercise: lunch menu online meeting&lt;br /&gt;
&lt;br /&gt;
=== Workflow of an OpenStack contribution and tools (3h including 2h exercises) === &lt;br /&gt;
&lt;br /&gt;
* [http://devstack.org/ devstack] ( [http://dachary.org/loic/openstack-training/devstack.odp slides.odp] [http://dachary.org/loic/openstack-training/devstack.pdf slides.pdf] )&lt;br /&gt;
** Ubuntu or Fedora&lt;br /&gt;
** git clone https://github.com/openstack-dev/devstack.git&lt;br /&gt;
** [http://devstack.org/configuration.html minimal configuration]&lt;br /&gt;
** cd devstack; ./stack.sh&lt;br /&gt;
** Exercise: get the code for the targeted contribution&lt;br /&gt;
* [[How_To_Contribute|HOW to contribute URL]] ( [http://dachary.org/loic/openstack-training/howtocontribute.odp slides.odp] [http://dachary.org/loic/openstack-training/howtocontribute.pdf slides.pdf] )&lt;br /&gt;
** [[Puppet-openstack#Contributing_to_the_modules|puppet stackforge]]&lt;br /&gt;
** [[Documentation/HowTo|documentation]]&lt;br /&gt;
** [http://docs.openstack.org/training-guides/content/under-construction.html training guides]&lt;br /&gt;
** Excercise: Apply for individual membership and sign the CLA&lt;br /&gt;
* [https://help.launchpad.net/ launchpad] ( [http://dachary.org/loic/openstack-training/launchpad.odp slides.odp] [http://dachary.org/loic/openstack-training/launchpad.pdf slides.pdf] )&lt;br /&gt;
** [[Blueprints|blueprints]]&lt;br /&gt;
** [[Bugs|bugs]]&lt;br /&gt;
*** [[Bugs#Bugs_reference|Status, Importance, Assigned To, Milestone, Tags]]&lt;br /&gt;
*** [[Bugs#Reporting|reporting a bug]]&lt;br /&gt;
*** [[Bugs#Confirming_.26_prioritizing|confirming and prioritizing]]&lt;br /&gt;
*** [[Bugs#Debugging_.28optional.29|debugging]]&lt;br /&gt;
*** [[Bugs#Bugfixing|bugfixing]]&lt;br /&gt;
** Exercise: review other launchpad bugs and improve yours&lt;br /&gt;
* [[GerritWorkflow|gerrit workflow]] ( [http://dachary.org/loic/openstack-training/gerrit.odp slides.odp] [http://dachary.org/loic/openstack-training/gerrit.pdf slides.pdf] )&lt;br /&gt;
** [[GerritWorkflow#Account_Setup|account setup]]&lt;br /&gt;
** [[GerritWorkflow#Git_Review_Installation|git review installation]]&lt;br /&gt;
** [[GerritWorkflow#SSH_Setup|ssh setup]]&lt;br /&gt;
** [[GerritWorkflow#Project_Setup|project setup]]&lt;br /&gt;
** [[GerritWorkflow#Normal_Workflow|gerrit workflow]]&lt;br /&gt;
** [[Testing#Unit_Tests|running unit tests]]&lt;br /&gt;
** [http://www.mediawiki.org/wiki/Gerrit/Advanced_usage review dependencies]&lt;br /&gt;
** Exercise: push a wip or draft and invite reviewers&lt;br /&gt;
* Branching model ( [http://dachary.org/loic/openstack-training/branching-model.odp slides.odp] [http://dachary.org/loic/openstack-training/branching-model.pdf slides.pdf] )&lt;br /&gt;
** [[BranchModel|development]]&lt;br /&gt;
** [[StableBranch|stable]]&lt;br /&gt;
** Exercise: checkout the latest stable branch&lt;br /&gt;
* [[GerritJenkinsGit#Reviewing_a_Change|reviewing]]  ( [http://dachary.org/loic/openstack-training/reviewing.odp slides.odp] [http://dachary.org/loic/openstack-training/reviewing.pdf slides.pdf] )&lt;br /&gt;
* [[GerritWorkflow#Committing_Changes|writing a commit message]] ( [http://dachary.org/loic/openstack-training/commit-message.odp slides.odp] [http://dachary.org/loic/openstack-training/commit-message.pdf slides.pdf] )&lt;br /&gt;
** reference to a bug or a blueprint&lt;br /&gt;
** amending a commit message&lt;br /&gt;
** Exercise: review each other messages on the draft&lt;br /&gt;
* [[GerritJenkinsGit|jenkins]]  ( [http://dachary.org/loic/openstack-training/jenkins.odp slides.odp] [http://dachary.org/loic/openstack-training/jenkins.pdf slides.pdf] )&lt;br /&gt;
** Exercise: add an error and match it to the jenkins message&lt;br /&gt;
&lt;br /&gt;
== Second day == &lt;br /&gt;
&lt;br /&gt;
=== The Contribution Process (3 hours) === &lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-contribution-process.odp] [http://dachary.org/loic/openstack-training/training-contribution-process.pdf] )&lt;br /&gt;
* Take the pulse of the project.&lt;br /&gt;
* Figure out who's behind it.&lt;br /&gt;
* Determine the project's social groups.&lt;br /&gt;
* Assess your approach.&lt;br /&gt;
* Engage immediately.&lt;br /&gt;
* Play with your network.&lt;br /&gt;
* Perform the smaller tasks.&lt;br /&gt;
* Choose a question.&lt;br /&gt;
* Familiarize yourself with the code of conduct.&lt;br /&gt;
* Understand the conventions.&lt;br /&gt;
* Explain what you do.&lt;br /&gt;
* Prepare the backport.&lt;br /&gt;
* Learn what's local and what's upstream.&lt;br /&gt;
* Learn what distinguishes good work flow from bad work flow.&lt;br /&gt;
* Quantify the delta.&lt;br /&gt;
* Speed up the acceptance.&lt;br /&gt;
* Determine the time frame.&lt;br /&gt;
* Maximize karma.&lt;br /&gt;
* Work in parallel.&lt;br /&gt;
* Archive and collect.&lt;br /&gt;
&lt;br /&gt;
=== Agile for Contributors (15 min) === &lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-agile-for-contributors.odp] [http://dachary.org/loic/openstack-training/training-agile-for-contributors.pdf] )&lt;br /&gt;
* Apply agile&lt;br /&gt;
* Who is the customer?&lt;br /&gt;
* Company &amp;amp; Upstream product owner&lt;br /&gt;
* Sprint review presentation to Upstream&lt;br /&gt;
&lt;br /&gt;
=== Contribution Simulation (1 hour) === &lt;br /&gt;
&lt;br /&gt;
The students make a virtual contribution simulation using Lego bricks as props, with the goal of expanding a Lego town, built by upstream. They are divided into teams; the teacher is by turns the product owner in the company and the upstream.&lt;br /&gt;
&lt;br /&gt;
=== Contribution Planning (2 hours) === &lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-student-project-sample.odp] [http://dachary.org/loic/openstack-training/training-student-project-sample.pdf] )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* The students use template slides to prepare a 5-minute presentation of their planned contribution.&lt;br /&gt;
* A sample presentation is given by the teacher, as an example.&lt;br /&gt;
* Each student group prepares a presentation describing:&lt;br /&gt;
** the contribution they plan to work on during the online sessions,&lt;br /&gt;
** how they will engage with the Upstream,&lt;br /&gt;
** how it contributes to the company's agenda&lt;br /&gt;
** and whom they will be working with.&lt;br /&gt;
* Each student group presents its slides to the class&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=66839</id>
		<title>OpenStack Upstream Training/Info</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=66839"/>
				<updated>2014-10-28T05:57:37Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: 01-release-cycle.rst links to slides&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;translate&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction == &lt;br /&gt;
&lt;br /&gt;
With over 2000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions.  These can significantly slow down the speed at which newcomers are successful at integrating their own roadmap into that of the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to help professional developers negotiate this hurdle.  It shows them how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time.  The educational program requires students to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In a followup session, the students benefit from individual online sessions to help them resolve any remaining problems they might have.&lt;br /&gt;
&lt;br /&gt;
== Objectives == &lt;br /&gt;
&lt;br /&gt;
* Faster integration of the companies product roadmap into the OpenStack release cycle&lt;br /&gt;
* Successfully contribute one real world patch to an OpenStack component&lt;br /&gt;
* Master the technical tools&lt;br /&gt;
* Understand the OpenStack contribution workflow and social norms&lt;br /&gt;
&lt;br /&gt;
== Target Audience == &lt;br /&gt;
&lt;br /&gt;
* Developers&lt;br /&gt;
* System administrators&lt;br /&gt;
&lt;br /&gt;
== Prerequisites == &lt;br /&gt;
&lt;br /&gt;
* Being able to read and write English at a technical level.&lt;br /&gt;
* If contributing code, being technically proficient enough to carry out simple bug fixes in the project.&lt;br /&gt;
* If contributing documentation, being able to produce documents in the project's chosen infrastructure.&lt;br /&gt;
* Having at least 8 hours a week to dedicate to the project, be it through programming or through interacting with the community.&lt;br /&gt;
&lt;br /&gt;
== Duration == &lt;br /&gt;
&lt;br /&gt;
* Face-to-face section: 2 days&lt;br /&gt;
* Online section: 10 one-hour individual mentoring sessions over a period of 4 to 10 weeks&lt;br /&gt;
&lt;br /&gt;
== Infrastructure == &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Setup_DevStack|ready to use devstack VM]] for participants with network connectivity but troubles with their laptop&lt;br /&gt;
&lt;br /&gt;
= Course Outline = &lt;br /&gt;
&lt;br /&gt;
== First day == &lt;br /&gt;
&lt;br /&gt;
=== Introduction === &lt;br /&gt;
&lt;br /&gt;
* A week before Day 1: choice of a contribution, via email, with each participant&lt;br /&gt;
* Day 1: How OpenStack is made&lt;br /&gt;
* Day 1: Learn and practice git, gerrit, IRC&lt;br /&gt;
&lt;br /&gt;
* Day 2: The theory of contribution&lt;br /&gt;
* Day 2: Lego contribution simulation&lt;br /&gt;
* Day 2: Individual presentation of the contribution plan&lt;br /&gt;
* Day 2: Online mentoring&lt;br /&gt;
&lt;br /&gt;
=== How OpenStack is made (3h including 1h30 exercises) === &lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Release_Cycle Release cycle] ( [https://github.com/openstack/training-guides/blob/master/doc/upstream-training/01-release-cycle.rst slides] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Planning_.28Design.2C_Discuss_and_Target.29 Planning (Design, Discuss and Target)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Implementation_.28Milestone_iterations.29 Implementation (Milestone iterations)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Pre-release_.28Release_Candidates_dance.29 Pre-release (Release Candidates dance)]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_candidate_1 Release candidate 1]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Other_release_candidates Other release candidates]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_day Release day]&lt;br /&gt;
** Exercise: based on the [https://wiki.openstack.org/wiki/Icehouse_Release_Schedule Icehouse release schedule] find the URL of a document or a patch that belongs to each of the above steps.&lt;br /&gt;
* Relevant actors ( [http://dachary.org/loic/openstack-training/relevant-actors.odp slides.odp] [http://dachary.org/loic/openstack-training/relevant-actors.pdf slides.pdf] )&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] companies&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] individuals&lt;br /&gt;
** Your management&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee Technical Committee] ( [http://dachary.org/loic/openstack-training/technical-committee.odp slides.odp] [http://dachary.org/loic/openstack-training/technical-committee.pdf slides.pdf] )&lt;br /&gt;
** Decide what is an [https://wiki.openstack.org/wiki/Programs OpenStack Program]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/TechnicalCommittee meetings] &lt;br /&gt;
** Exercise: read [http://eavesdrop.openstack.org/meetings/tc/2014/tc.2014-04-01-20.03.log.html archived] and briefly comment on [https://etherpad.openstack.org/p/keystone-incubation-integration-requirements keystone document]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Program_Leads PTLs]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_PTL_seats_.28.22APC.22.29 APC]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_TC_seats_.28.22ATC.22.29 ATC]&lt;br /&gt;
** Exercise: each APC / ATC in the class add a URL to the etherpad proving it&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/NewProjects Program ecosystem]  ( [http://dachary.org/loic/openstack-training/program-ecosystem.odp slides.odp] [http://dachary.org/loic/openstack-training/program-ecosystem.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Incubation Incubated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Integrated Integrated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Core_.3F Core]&lt;br /&gt;
** [http://ci.openstack.org/stackforge.html Stackforge]&lt;br /&gt;
** Exercise: What kind of Program do you contribute to ?&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Summit Design summits]  ( [http://dachary.org/loic/openstack-training/design-summit.odp slides.odp] [http://dachary.org/loic/openstack-training/design-summit.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#Propose_sessions propose sessions]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#At_the_Design_Summit attend or lead a session]&lt;br /&gt;
** Exercise: Add a session proposal regarding your contribution in an etherpad, review two proposals&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Meetings IRC meetings]  ( [http://dachary.org/loic/openstack-training/irc-meetings.odp slides.odp] [http://dachary.org/loic/openstack-training/irc-meetings.pdf slides.pdf] )&lt;br /&gt;
** [http://ci.openstack.org/meetbot.html modified] [http://wiki.debian.org/MeetBot meetbot]&lt;br /&gt;
** #info - Add an info item to the minutes. People should liberally use this for important things they say, so that they can be logged in the minutes. &lt;br /&gt;
** #action - Document an action item in the minutes. Include any nicknames in the line, and the item will be assigned to them. (nicknames are case-sensitive) &lt;br /&gt;
** #help - Add a &amp;quot;Call for Help&amp;quot; to the minutes. Use this command when you need to recruit someone to do a task. (Counter-intuitively, this doesn't provide help on the bot)&lt;br /&gt;
** Exercise: lunch menu online meeting&lt;br /&gt;
&lt;br /&gt;
=== Workflow of an OpenStack contribution and tools (3h including 2h exercises) === &lt;br /&gt;
&lt;br /&gt;
* [http://devstack.org/ devstack] ( [http://dachary.org/loic/openstack-training/devstack.odp slides.odp] [http://dachary.org/loic/openstack-training/devstack.pdf slides.pdf] )&lt;br /&gt;
** Ubuntu or Fedora&lt;br /&gt;
** git clone https://github.com/openstack-dev/devstack.git&lt;br /&gt;
** [http://devstack.org/configuration.html minimal configuration]&lt;br /&gt;
** cd devstack; ./stack.sh&lt;br /&gt;
** Exercise: get the code for the targeted contribution&lt;br /&gt;
* [[How_To_Contribute|HOW to contribute URL]] ( [http://dachary.org/loic/openstack-training/howtocontribute.odp slides.odp] [http://dachary.org/loic/openstack-training/howtocontribute.pdf slides.pdf] )&lt;br /&gt;
** [[Puppet-openstack#Contributing_to_the_modules|puppet stackforge]]&lt;br /&gt;
** [[Documentation/HowTo|documentation]]&lt;br /&gt;
** [http://docs.openstack.org/training-guides/content/under-construction.html training guides]&lt;br /&gt;
** Excercise: Apply for individual membership and sign the CLA&lt;br /&gt;
* [https://help.launchpad.net/ launchpad] ( [http://dachary.org/loic/openstack-training/launchpad.odp slides.odp] [http://dachary.org/loic/openstack-training/launchpad.pdf slides.pdf] )&lt;br /&gt;
** [[Blueprints|blueprints]]&lt;br /&gt;
** [[Bugs|bugs]]&lt;br /&gt;
*** [[Bugs#Bugs_reference|Status, Importance, Assigned To, Milestone, Tags]]&lt;br /&gt;
*** [[Bugs#Reporting|reporting a bug]]&lt;br /&gt;
*** [[Bugs#Confirming_.26_prioritizing|confirming and prioritizing]]&lt;br /&gt;
*** [[Bugs#Debugging_.28optional.29|debugging]]&lt;br /&gt;
*** [[Bugs#Bugfixing|bugfixing]]&lt;br /&gt;
** Exercise: review other launchpad bugs and improve yours&lt;br /&gt;
* [[GerritWorkflow|gerrit workflow]] ( [http://dachary.org/loic/openstack-training/gerrit.odp slides.odp] [http://dachary.org/loic/openstack-training/gerrit.pdf slides.pdf] )&lt;br /&gt;
** [[GerritWorkflow#Account_Setup|account setup]]&lt;br /&gt;
** [[GerritWorkflow#Git_Review_Installation|git review installation]]&lt;br /&gt;
** [[GerritWorkflow#SSH_Setup|ssh setup]]&lt;br /&gt;
** [[GerritWorkflow#Project_Setup|project setup]]&lt;br /&gt;
** [[GerritWorkflow#Normal_Workflow|gerrit workflow]]&lt;br /&gt;
** [[Testing#Unit_Tests|running unit tests]]&lt;br /&gt;
** [http://www.mediawiki.org/wiki/Gerrit/Advanced_usage review dependencies]&lt;br /&gt;
** Exercise: push a wip or draft and invite reviewers&lt;br /&gt;
* Branching model ( [http://dachary.org/loic/openstack-training/branching-model.odp slides.odp] [http://dachary.org/loic/openstack-training/branching-model.pdf slides.pdf] )&lt;br /&gt;
** [[BranchModel|development]]&lt;br /&gt;
** [[StableBranch|stable]]&lt;br /&gt;
** Exercise: checkout the latest stable branch&lt;br /&gt;
* [[GerritJenkinsGit#Reviewing_a_Change|reviewing]]  ( [http://dachary.org/loic/openstack-training/reviewing.odp slides.odp] [http://dachary.org/loic/openstack-training/reviewing.pdf slides.pdf] )&lt;br /&gt;
* [[GerritWorkflow#Committing_Changes|writing a commit message]] ( [http://dachary.org/loic/openstack-training/commit-message.odp slides.odp] [http://dachary.org/loic/openstack-training/commit-message.pdf slides.pdf] )&lt;br /&gt;
** reference to a bug or a blueprint&lt;br /&gt;
** amending a commit message&lt;br /&gt;
** Exercise: review each other messages on the draft&lt;br /&gt;
* [[GerritJenkinsGit|jenkins]]  ( [http://dachary.org/loic/openstack-training/jenkins.odp slides.odp] [http://dachary.org/loic/openstack-training/jenkins.pdf slides.pdf] )&lt;br /&gt;
** Exercise: add an error and match it to the jenkins message&lt;br /&gt;
&lt;br /&gt;
== Second day == &lt;br /&gt;
&lt;br /&gt;
=== The Contribution Process (3 hours) === &lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-contribution-process.odp] [http://dachary.org/loic/openstack-training/training-contribution-process.pdf] )&lt;br /&gt;
* Take the pulse of the project.&lt;br /&gt;
* Figure out who's behind it.&lt;br /&gt;
* Determine the project's social groups.&lt;br /&gt;
* Assess your approach.&lt;br /&gt;
* Engage immediately.&lt;br /&gt;
* Play with your network.&lt;br /&gt;
* Perform the smaller tasks.&lt;br /&gt;
* Choose a question.&lt;br /&gt;
* Familiarize yourself with the code of conduct.&lt;br /&gt;
* Understand the conventions.&lt;br /&gt;
* Explain what you do.&lt;br /&gt;
* Prepare the backport.&lt;br /&gt;
* Learn what's local and what's upstream.&lt;br /&gt;
* Learn what distinguishes good work flow from bad work flow.&lt;br /&gt;
* Quantify the delta.&lt;br /&gt;
* Speed up the acceptance.&lt;br /&gt;
* Determine the time frame.&lt;br /&gt;
* Maximize karma.&lt;br /&gt;
* Work in parallel.&lt;br /&gt;
* Archive and collect.&lt;br /&gt;
&lt;br /&gt;
=== Agile for Contributors (15 min) === &lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-agile-for-contributors.odp] [http://dachary.org/loic/openstack-training/training-agile-for-contributors.pdf] )&lt;br /&gt;
* Apply agile&lt;br /&gt;
* Who is the customer?&lt;br /&gt;
* Company &amp;amp; Upstream product owner&lt;br /&gt;
* Sprint review presentation to Upstream&lt;br /&gt;
&lt;br /&gt;
=== Contribution Simulation (1 hour) === &lt;br /&gt;
&lt;br /&gt;
The students make a virtual contribution simulation using Lego bricks as props, with the goal of expanding a Lego town, built by upstream. They are divided into teams; the teacher is by turns the product owner in the company and the upstream.&lt;br /&gt;
&lt;br /&gt;
=== Contribution Planning (2 hours) === &lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-student-project-sample.odp] [http://dachary.org/loic/openstack-training/training-student-project-sample.pdf] )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* The students use template slides to prepare a 5-minute presentation of their planned contribution.&lt;br /&gt;
* A sample presentation is given by the teacher, as an example.&lt;br /&gt;
* Each student group prepares a presentation describing:&lt;br /&gt;
** the contribution they plan to work on during the online sessions,&lt;br /&gt;
** how they will engage with the Upstream,&lt;br /&gt;
** how it contributes to the company's agenda&lt;br /&gt;
** and whom they will be working with.&lt;br /&gt;
* Each student group presents its slides to the class&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=65139</id>
		<title>OpenStack Upstream Training/Info</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=65139"/>
				<updated>2014-10-16T13:00:07Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
With over 2000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions.  These can significantly slow down the speed at which newcomers are successful at integrating their own roadmap into that of the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to help professional developers negotiate this hurdle.  It shows them how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time.  The educational program requires students to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In a followup session, the students benefit from individual online sessions to help them resolve any remaining problems they might have.&lt;br /&gt;
&lt;br /&gt;
== Objectives ==&lt;br /&gt;
&lt;br /&gt;
* Faster integration of the companies product roadmap into the OpenStack release cycle&lt;br /&gt;
* Successfully contribute one real world patch to an OpenStack component&lt;br /&gt;
* Master the technical tools&lt;br /&gt;
* Understand the OpenStack contribution workflow and social norms&lt;br /&gt;
&lt;br /&gt;
== Target Audience ==&lt;br /&gt;
&lt;br /&gt;
* Developers&lt;br /&gt;
* System administrators&lt;br /&gt;
&lt;br /&gt;
== Prerequisites ==&lt;br /&gt;
&lt;br /&gt;
* Being able to read and write English at a technical level.&lt;br /&gt;
* If contributing code, being technically proficient enough to carry out simple bug fixes in the project.&lt;br /&gt;
* If contributing documentation, being able to produce documents in the project's chosen infrastructure.&lt;br /&gt;
* Having at least 8 hours a week to dedicate to the project, be it through programming or through interacting with the community.&lt;br /&gt;
&lt;br /&gt;
== Duration ==&lt;br /&gt;
&lt;br /&gt;
* Face-to-face section: 2 days&lt;br /&gt;
* Online section: 10 one-hour individual mentoring sessions over a period of 4 to 10 weeks&lt;br /&gt;
&lt;br /&gt;
== Infrastructure ==&lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Setup_DevStack|ready to use devstack VM]] for participants with network connectivity but troubles with their laptop&lt;br /&gt;
= Course Outline =&lt;br /&gt;
&lt;br /&gt;
== First day ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
* A week before Day 1: choice of a contribution, via email, with each participant&lt;br /&gt;
* Day 1: How OpenStack is made&lt;br /&gt;
* Day 1: Learn and practice git, gerrit, IRC&lt;br /&gt;
&lt;br /&gt;
* Day 2: The theory of contribution&lt;br /&gt;
* Day 2: Lego contribution simulation&lt;br /&gt;
* Day 2: Individual presentation of the contribution plan&lt;br /&gt;
* Day 2: Online mentoring&lt;br /&gt;
&lt;br /&gt;
=== How OpenStack is made (3h including 1h30 exercises) ===&lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Release_Cycle Release cycle] ( [http://dachary.org/loic/openstack-training/release-cycle.odp slides.odp] [http://dachary.org/loic/openstack-training/release-cycle.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Planning_.28Design.2C_Discuss_and_Target.29 Planning (Design, Discuss and Target)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Implementation_.28Milestone_iterations.29 Implementation (Milestone iterations)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Pre-release_.28Release_Candidates_dance.29 Pre-release (Release Candidates dance)]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_candidate_1 Release candidate 1]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Other_release_candidates Other release candidates]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_day Release day]&lt;br /&gt;
** Exercise: based on the [https://wiki.openstack.org/wiki/Icehouse_Release_Schedule Icehouse release schedule] find the URL of a document or a patch that belongs to each of the above steps.&lt;br /&gt;
* Relevant actors ( [http://dachary.org/loic/openstack-training/relevant-actors.odp slides.odp] [http://dachary.org/loic/openstack-training/relevant-actors.pdf slides.pdf] )&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] companies&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] individuals&lt;br /&gt;
** Your management&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee Technical Committee] ( [http://dachary.org/loic/openstack-training/technical-committee.odp slides.odp] [http://dachary.org/loic/openstack-training/technical-committee.pdf slides.pdf] )&lt;br /&gt;
** Decide what is an [https://wiki.openstack.org/wiki/Programs OpenStack Program]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/TechnicalCommittee meetings] &lt;br /&gt;
** Exercise: read [http://eavesdrop.openstack.org/meetings/tc/2014/tc.2014-04-01-20.03.log.html archived] and briefly comment on [https://etherpad.openstack.org/p/keystone-incubation-integration-requirements keystone document]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Program_Leads PTLs]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_PTL_seats_.28.22APC.22.29 APC]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_TC_seats_.28.22ATC.22.29 ATC]&lt;br /&gt;
** Exercise: each APC / ATC in the class add a URL to the etherpad proving it&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/NewProjects Program ecosystem]  ( [http://dachary.org/loic/openstack-training/program-ecosystem.odp slides.odp] [http://dachary.org/loic/openstack-training/program-ecosystem.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Incubation Incubated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Integrated Integrated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Core_.3F Core]&lt;br /&gt;
** [http://ci.openstack.org/stackforge.html Stackforge]&lt;br /&gt;
** Exercise: What kind of Program do you contribute to ?&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Summit Design summits]  ( [http://dachary.org/loic/openstack-training/design-summit.odp slides.odp] [http://dachary.org/loic/openstack-training/design-summit.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#Propose_sessions propose sessions]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#At_the_Design_Summit attend or lead a session]&lt;br /&gt;
** Exercise: Add a session proposal regarding your contribution in an etherpad, review two proposals&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Meetings IRC meetings]  ( [http://dachary.org/loic/openstack-training/irc-meetings.odp slides.odp] [http://dachary.org/loic/openstack-training/irc-meetings.pdf slides.pdf] )&lt;br /&gt;
** [http://ci.openstack.org/meetbot.html modified] [http://wiki.debian.org/MeetBot meetbot]&lt;br /&gt;
** #info - Add an info item to the minutes. People should liberally use this for important things they say, so that they can be logged in the minutes. &lt;br /&gt;
** #action - Document an action item in the minutes. Include any nicknames in the line, and the item will be assigned to them. (nicknames are case-sensitive) &lt;br /&gt;
** #help - Add a &amp;quot;Call for Help&amp;quot; to the minutes. Use this command when you need to recruit someone to do a task. (Counter-intuitively, this doesn't provide help on the bot)&lt;br /&gt;
** Exercise: lunch menu online meeting&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Workflow of an OpenStack contribution and tools (3h including 2h exercises) ===&lt;br /&gt;
&lt;br /&gt;
* [http://devstack.org/ devstack] ( [http://dachary.org/loic/openstack-training/devstack.odp slides.odp] [http://dachary.org/loic/openstack-training/devstack.pdf slides.pdf] )&lt;br /&gt;
** Ubuntu or Fedora&lt;br /&gt;
** git clone https://github.com/openstack-dev/devstack.git&lt;br /&gt;
** [http://devstack.org/configuration.html minimal configuration]&lt;br /&gt;
** cd devstack; ./stack.sh&lt;br /&gt;
** Exercise: get the code for the targeted contribution&lt;br /&gt;
* [[How_To_Contribute|HOW to contribute URL]] ( [http://dachary.org/loic/openstack-training/howtocontribute.odp slides.odp] [http://dachary.org/loic/openstack-training/howtocontribute.pdf slides.pdf] )&lt;br /&gt;
** [[Puppet-openstack#Contributing_to_the_modules|puppet stackforge]]&lt;br /&gt;
** [[Documentation/HowTo|documentation]]&lt;br /&gt;
** [http://docs.openstack.org/training-guides/content/under-construction.html training guides]&lt;br /&gt;
** Excercise: Apply for individual membership and sign the CLA&lt;br /&gt;
* [https://help.launchpad.net/ launchpad] ( [http://dachary.org/loic/openstack-training/launchpad.odp slides.odp] [http://dachary.org/loic/openstack-training/launchpad.pdf slides.pdf] )&lt;br /&gt;
** [[Blueprints|blueprints]]&lt;br /&gt;
** [[Bugs|bugs]]&lt;br /&gt;
*** [[Bugs#Bugs_reference|Status, Importance, Assigned To, Milestone, Tags]]&lt;br /&gt;
*** [[Bugs#Reporting|reporting a bug]]&lt;br /&gt;
*** [[Bugs#Confirming_.26_prioritizing|confirming and prioritizing]]&lt;br /&gt;
*** [[Bugs#Debugging_.28optional.29|debugging]]&lt;br /&gt;
*** [[Bugs#Bugfixing|bugfixing]]&lt;br /&gt;
** Exercise: review other launchpad bugs and improve yours&lt;br /&gt;
* [[GerritWorkflow|gerrit workflow]] ( [http://dachary.org/loic/openstack-training/gerrit.odp slides.odp] [http://dachary.org/loic/openstack-training/gerrit.pdf slides.pdf] )&lt;br /&gt;
** [[GerritWorkflow#Account_Setup|account setup]]&lt;br /&gt;
** [[GerritWorkflow#Git_Review_Installation|git review installation]]&lt;br /&gt;
** [[GerritWorkflow#SSH_Setup|ssh setup]]&lt;br /&gt;
** [[GerritWorkflow#Project_Setup|project setup]]&lt;br /&gt;
** [[GerritWorkflow#Normal_Workflow|gerrit workflow]]&lt;br /&gt;
** [[Testing#Unit_Tests|running unit tests]]&lt;br /&gt;
** [http://www.mediawiki.org/wiki/Gerrit/Advanced_usage review dependencies]&lt;br /&gt;
** Exercise: push a wip or draft and invite reviewers&lt;br /&gt;
* Branching model ( [http://dachary.org/loic/openstack-training/branching-model.odp slides.odp] [http://dachary.org/loic/openstack-training/branching-model.pdf slides.pdf] )&lt;br /&gt;
** [[BranchModel|development]]&lt;br /&gt;
** [[StableBranch|stable]]&lt;br /&gt;
** Exercise: checkout the latest stable branch&lt;br /&gt;
* [[GerritJenkinsGit#Reviewing_a_Change|reviewing]]  ( [http://dachary.org/loic/openstack-training/reviewing.odp slides.odp] [http://dachary.org/loic/openstack-training/reviewing.pdf slides.pdf] )&lt;br /&gt;
* [[GerritWorkflow#Committing_Changes|writing a commit message]] ( [http://dachary.org/loic/openstack-training/commit-message.odp slides.odp] [http://dachary.org/loic/openstack-training/commit-message.pdf slides.pdf] )&lt;br /&gt;
** reference to a bug or a blueprint&lt;br /&gt;
** amending a commit message&lt;br /&gt;
** Exercise: review each other messages on the draft&lt;br /&gt;
* [[GerritJenkinsGit|jenkins]]  ( [http://dachary.org/loic/openstack-training/jenkins.odp slides.odp] [http://dachary.org/loic/openstack-training/jenkins.pdf slides.pdf] )&lt;br /&gt;
** Exercise: add an error and match it to the jenkins message&lt;br /&gt;
&lt;br /&gt;
== Second day ==&lt;br /&gt;
&lt;br /&gt;
=== The Contribution Process (3 hours) ===&lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-contribution-process.odp] [http://dachary.org/loic/openstack-training/training-contribution-process.pdf] )&lt;br /&gt;
* Take the pulse of the project.&lt;br /&gt;
* Figure out who's behind it.&lt;br /&gt;
* Determine the project's social groups.&lt;br /&gt;
* Assess your approach.&lt;br /&gt;
* Engage immediately.&lt;br /&gt;
* Play with your network.&lt;br /&gt;
* Perform the smaller tasks.&lt;br /&gt;
* Choose a question.&lt;br /&gt;
* Familiarize yourself with the code of conduct.&lt;br /&gt;
* Understand the conventions.&lt;br /&gt;
* Explain what you do.&lt;br /&gt;
* Prepare the backport.&lt;br /&gt;
* Learn what's local and what's upstream.&lt;br /&gt;
* Learn what distinguishes good work flow from bad work flow.&lt;br /&gt;
* Quantify the delta.&lt;br /&gt;
* Speed up the acceptance.&lt;br /&gt;
* Determine the time frame.&lt;br /&gt;
* Maximize karma.&lt;br /&gt;
* Work in parallel.&lt;br /&gt;
* Archive and collect.&lt;br /&gt;
&lt;br /&gt;
=== Agile for Contributors (15 min) ===&lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-agile-for-contributors.odp] [http://dachary.org/loic/openstack-training/training-agile-for-contributors.pdf] )&lt;br /&gt;
* Apply agile&lt;br /&gt;
* Who is the customer?&lt;br /&gt;
* Company &amp;amp; Upstream product owner&lt;br /&gt;
* Sprint review presentation to Upstream&lt;br /&gt;
&lt;br /&gt;
=== Contribution Simulation (1 hour) ===&lt;br /&gt;
&lt;br /&gt;
The students make a virtual contribution simulation using Lego bricks as props, with the goal of expanding a Lego town, built by upstream. They are divided into teams; the teacher is by turns the product owner in the company and the upstream.&lt;br /&gt;
&lt;br /&gt;
=== Contribution Planning (2 hours) ===&lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-student-project-sample.odp] [http://dachary.org/loic/openstack-training/training-student-project-sample.pdf] )&lt;br /&gt;
&lt;br /&gt;
* The students use template slides to prepare a 5-minute presentation of their planned contribution.&lt;br /&gt;
* A sample presentation is given by the teacher, as an example.&lt;br /&gt;
* Each student group prepares a presentation describing:&lt;br /&gt;
** the contribution they plan to work on during the online sessions,&lt;br /&gt;
** how they will engage with the Upstream,&lt;br /&gt;
** how it contributes to the company's agenda&lt;br /&gt;
** and whom they will be working with.&lt;br /&gt;
* Each student group presents its slides to the class&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Setup_DevStack&amp;diff=65136</id>
		<title>OpenStack Upstream Training/Setup DevStack</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Setup_DevStack&amp;diff=65136"/>
				<updated>2014-10-16T12:56:07Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Save the file below in $HOME/devstack_cloudinit.yaml&lt;br /&gt;
* nova boot --flavor 4GB-ram-10GB-disk --image &amp;quot;Ubuntu 14.04&amp;quot; --nic port-id=$PORT --key-name mykey --user-data $HOME/devstack_cloudinit.yaml test_devstack&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#cloud-config&lt;br /&gt;
&lt;br /&gt;
package_update: true&lt;br /&gt;
package_upgrade: true&lt;br /&gt;
package_reboot_if_required: true&lt;br /&gt;
&lt;br /&gt;
packages:&lt;br /&gt;
  - git&lt;br /&gt;
  - mc&lt;br /&gt;
  - vim&lt;br /&gt;
  - traceroute&lt;br /&gt;
  - htop&lt;br /&gt;
  - tmux&lt;br /&gt;
  - nmap&lt;br /&gt;
&lt;br /&gt;
ssh_pwauth: True&lt;br /&gt;
&lt;br /&gt;
groups:&lt;br /&gt;
  - stack&lt;br /&gt;
&lt;br /&gt;
users:&lt;br /&gt;
  - default&lt;br /&gt;
  - name: stack&lt;br /&gt;
    gecos: Foo User&lt;br /&gt;
    primary-group: stack&lt;br /&gt;
    groups: admin&lt;br /&gt;
    plain_text_passwd: 'stack'&lt;br /&gt;
    sudo: ALL=(ALL) NOPASSWD:ALL&lt;br /&gt;
    lock-passwd: false&lt;br /&gt;
    shell: /bin/bash&lt;br /&gt;
&lt;br /&gt;
write_files:&lt;br /&gt;
-   content: |&lt;br /&gt;
        [[local|localrc]]&lt;br /&gt;
        disable_service n-net&lt;br /&gt;
        disable_service n-obj&lt;br /&gt;
        disable_service tempest&lt;br /&gt;
        disable_service cinder&lt;br /&gt;
        disable_service c-api&lt;br /&gt;
        disable_service c-vol&lt;br /&gt;
        disable_service c-sch&lt;br /&gt;
        #disable_service n-novnc&lt;br /&gt;
        enable_service horizon&lt;br /&gt;
        disable_service n-xvnc&lt;br /&gt;
        enable_service q-svc&lt;br /&gt;
        enable_service q-agt&lt;br /&gt;
        enable_service q-dhcp&lt;br /&gt;
        enable_service q-l3&lt;br /&gt;
        enable_service q-meta&lt;br /&gt;
        enable_service neutron&lt;br /&gt;
        #enable_service n-spice&lt;br /&gt;
        enable_service n-vnc&lt;br /&gt;
&lt;br /&gt;
        ADMIN_PASSWORD=password&lt;br /&gt;
        MYSQL_PASSWORD=password&lt;br /&gt;
        RABBIT_PASSWORD=password&lt;br /&gt;
        SERVICE_PASSWORD=password&lt;br /&gt;
        SERVICE_TOKEN=tokentoken&lt;br /&gt;
&lt;br /&gt;
        ROOTSLEEP=0&lt;br /&gt;
        RECLONE=True&lt;br /&gt;
        #OFFLINE=True&lt;br /&gt;
        DATA_DIR=$TOP_DIR/data&lt;br /&gt;
        SCREEN_LOGDIR=$TOP_DIR/log&lt;br /&gt;
        VERBOSE=False&lt;br /&gt;
&lt;br /&gt;
        MULTI_HOST=True&lt;br /&gt;
        FIXED_RANGE=192.168.85.0/24&lt;br /&gt;
&lt;br /&gt;
        ### NEUTRON ###&lt;br /&gt;
        ### ML2 plugin ###&lt;br /&gt;
        ENABLE_TENANT_TUNNELS=True&lt;br /&gt;
        Q_ML2_PLUGIN_MECHANISM_DRIVERS=linuxbridge&lt;br /&gt;
        Q_AGENT=linuxbridge&lt;br /&gt;
&lt;br /&gt;
        Q_ML2_PLUGIN_TYPE_DRIVERS=flat,vlan,gre,vxlan&lt;br /&gt;
&lt;br /&gt;
        # Prevent L3 agent from using br-ex&lt;br /&gt;
        PUBLIC_BRIDGE=&lt;br /&gt;
&lt;br /&gt;
        # L2 population&lt;br /&gt;
        Q_ML2_PLUGIN_MECHANISM_DRIVERS=$Q_ML2_PLUGIN_MECHANISM_DRIVERS,l2population&lt;br /&gt;
&lt;br /&gt;
        [[post-config|$NOVA_CONF]]&lt;br /&gt;
        [DEFAULT]&lt;br /&gt;
        vnc_enabled=True&lt;br /&gt;
        vnc_keymap=fr&lt;br /&gt;
        vncserver_listen=0.0.0.0&lt;br /&gt;
        vncserver_proxyclient_address=$HOST_IP&lt;br /&gt;
        libvirt_inject_key = False&lt;br /&gt;
        libvirt_inject_partition = -2&lt;br /&gt;
&lt;br /&gt;
        [[post-config|/$Q_PLUGIN_CONF_FILE]]&lt;br /&gt;
        [ml2]&lt;br /&gt;
        tenant_network_types=vxlan&lt;br /&gt;
&lt;br /&gt;
        [vxlan]&lt;br /&gt;
        enable_vxlan=true&lt;br /&gt;
        l2_population=True&lt;br /&gt;
        local_ip=$HOST_IP&lt;br /&gt;
&lt;br /&gt;
        [linux_bridge]&lt;br /&gt;
        physical_interface_mappings = public:eth0&lt;br /&gt;
&lt;br /&gt;
        [ml2_type_flat]&lt;br /&gt;
        flat_networks = public&lt;br /&gt;
&lt;br /&gt;
        [ml2_type_vxlan]&lt;br /&gt;
        vni_ranges = 1001:2000&lt;br /&gt;
&lt;br /&gt;
        [[post-config|/$Q_DHCP_CONF_FILE]]&lt;br /&gt;
        [DEFAULT]&lt;br /&gt;
        enable_isolated_metadata = True&lt;br /&gt;
        dnsmasq_dns_server = 8.8.8.8&lt;br /&gt;
        dnsmasq_config_file = /etc/dnsmasq.conf&lt;br /&gt;
&lt;br /&gt;
        [[post-config|/$Q_L3_CONF_FILE]]&lt;br /&gt;
        [DEFAULT]&lt;br /&gt;
        external_network_bridge = &amp;quot;&amp;quot;&lt;br /&gt;
    path: /opt/local.conf&lt;br /&gt;
    permissions: 0664&lt;br /&gt;
-   content: |&lt;br /&gt;
        #!/usr/bin/env bash&lt;br /&gt;
&lt;br /&gt;
        tmux new-session -s devstack -n shell -d&lt;br /&gt;
        tmux new-window -t devstack:1 -n devstack&lt;br /&gt;
        tmux send-keys -t devstack:1 'cd ~/devstack; ./stack.sh' C-m&lt;br /&gt;
        tmux select-window -t devstack:1&lt;br /&gt;
    path: /opt/run_devstack_into_tmux.sh&lt;br /&gt;
    permissions: 0775&lt;br /&gt;
&lt;br /&gt;
runcmd:&lt;br /&gt;
  - [ sh, -xc, &amp;quot;echo '127.0.0.1 $(wget -q -O- http://169.254.169.254/latest/meta-data/hostname | cut -d .  -f 1)'' &amp;gt;&amp;gt; /etc/hosts&amp;quot; ]&lt;br /&gt;
  - [ sh, -xc, &amp;quot;su stack -c 'cd ~; git clone https://github.com/openstack-dev/devstack.git'&amp;quot; ]&lt;br /&gt;
  - [ sh, -xc, &amp;quot;su stack -c 'cp /opt/local.conf ~/devstack/'&amp;quot; ]&lt;br /&gt;
  - [ sh, -xc, &amp;quot;su stack -c 'bash /opt/run_devstack_into_tmux.sh'&amp;quot; ]&lt;br /&gt;
&lt;br /&gt;
final_message: &amp;quot;!!! Your devstack is up and running. You can reach the OpenStack dashboard !!! (cloudinit runs in $UPTIME seconds)&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Setup_DevStack&amp;diff=65135</id>
		<title>OpenStack Upstream Training/Setup DevStack</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Setup_DevStack&amp;diff=65135"/>
				<updated>2014-10-16T12:52:50Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: devstack for cloudinit&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Save the file below in $HOME/devstack_cloudinit.yaml&lt;br /&gt;
* nova boot --flavor 4GB-ram-10GB-disk --image &amp;quot;Ubuntu 14.04&amp;quot; --nic port-id=$PORT --key-name mykey --user-data $HOME/devstack_cloudinit.yaml test_devstack&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
#cloud-config&lt;br /&gt;
&lt;br /&gt;
package_update: true&lt;br /&gt;
package_upgrade: true&lt;br /&gt;
package_reboot_if_required: true&lt;br /&gt;
&lt;br /&gt;
packages:&lt;br /&gt;
  - git&lt;br /&gt;
  - mc&lt;br /&gt;
  - vim&lt;br /&gt;
  - traceroute&lt;br /&gt;
  - htop&lt;br /&gt;
  - tmux&lt;br /&gt;
  - nmap&lt;br /&gt;
&lt;br /&gt;
ssh_pwauth: True&lt;br /&gt;
&lt;br /&gt;
groups:&lt;br /&gt;
  - stack&lt;br /&gt;
&lt;br /&gt;
users:&lt;br /&gt;
  - default&lt;br /&gt;
  - name: stack&lt;br /&gt;
    gecos: Foo User&lt;br /&gt;
    primary-group: stack&lt;br /&gt;
    groups: admin&lt;br /&gt;
    plain_text_passwd: 'stack'&lt;br /&gt;
    sudo: ALL=(ALL) NOPASSWD:ALL&lt;br /&gt;
    lock-passwd: false&lt;br /&gt;
    shell: /bin/bash&lt;br /&gt;
&lt;br /&gt;
write_files:&lt;br /&gt;
-   content: |&lt;br /&gt;
        [[local|localrc]]&lt;br /&gt;
        disable_service n-net&lt;br /&gt;
        disable_service n-obj&lt;br /&gt;
        disable_service tempest&lt;br /&gt;
        disable_service cinder&lt;br /&gt;
        disable_service c-api&lt;br /&gt;
        disable_service c-vol&lt;br /&gt;
        disable_service c-sch&lt;br /&gt;
        #disable_service n-novnc&lt;br /&gt;
        enable_service horizon&lt;br /&gt;
        disable_service n-xvnc&lt;br /&gt;
        enable_service q-svc&lt;br /&gt;
        enable_service q-agt&lt;br /&gt;
        enable_service q-dhcp&lt;br /&gt;
        enable_service q-l3&lt;br /&gt;
        enable_service q-meta&lt;br /&gt;
        enable_service neutron&lt;br /&gt;
        #enable_service n-spice&lt;br /&gt;
        enable_service n-vnc&lt;br /&gt;
&lt;br /&gt;
        ADMIN_PASSWORD=password&lt;br /&gt;
        MYSQL_PASSWORD=password&lt;br /&gt;
        RABBIT_PASSWORD=password&lt;br /&gt;
        SERVICE_PASSWORD=password&lt;br /&gt;
        SERVICE_TOKEN=tokentoken&lt;br /&gt;
&lt;br /&gt;
        ROOTSLEEP=0&lt;br /&gt;
        RECLONE=True&lt;br /&gt;
        #OFFLINE=True&lt;br /&gt;
        DATA_DIR=$TOP_DIR/data&lt;br /&gt;
        SCREEN_LOGDIR=$TOP_DIR/log&lt;br /&gt;
        VERBOSE=False&lt;br /&gt;
&lt;br /&gt;
        MULTI_HOST=True&lt;br /&gt;
        FIXED_RANGE=192.168.85.0/24&lt;br /&gt;
&lt;br /&gt;
        ### NEUTRON ###&lt;br /&gt;
        ### ML2 plugin ###&lt;br /&gt;
        ENABLE_TENANT_TUNNELS=True&lt;br /&gt;
        Q_ML2_PLUGIN_MECHANISM_DRIVERS=linuxbridge&lt;br /&gt;
        Q_AGENT=linuxbridge&lt;br /&gt;
&lt;br /&gt;
        Q_ML2_PLUGIN_TYPE_DRIVERS=flat,vlan,gre,vxlan&lt;br /&gt;
&lt;br /&gt;
        # Prevent L3 agent from using br-ex&lt;br /&gt;
        PUBLIC_BRIDGE=&lt;br /&gt;
&lt;br /&gt;
        # L2 population&lt;br /&gt;
        Q_ML2_PLUGIN_MECHANISM_DRIVERS=$Q_ML2_PLUGIN_MECHANISM_DRIVERS,l2population&lt;br /&gt;
&lt;br /&gt;
        [[post-config|$NOVA_CONF]]&lt;br /&gt;
        [DEFAULT]&lt;br /&gt;
        vnc_enabled=True&lt;br /&gt;
        vnc_keymap=fr&lt;br /&gt;
        vncserver_listen=0.0.0.0&lt;br /&gt;
        vncserver_proxyclient_address=$HOST_IP&lt;br /&gt;
        libvirt_inject_key = False&lt;br /&gt;
        libvirt_inject_partition = -2&lt;br /&gt;
&lt;br /&gt;
        [[post-config|/$Q_PLUGIN_CONF_FILE]]&lt;br /&gt;
        [ml2]&lt;br /&gt;
        tenant_network_types=vxlan&lt;br /&gt;
&lt;br /&gt;
        [vxlan]&lt;br /&gt;
        enable_vxlan=true&lt;br /&gt;
        l2_population=True&lt;br /&gt;
        local_ip=$HOST_IP&lt;br /&gt;
&lt;br /&gt;
        [linux_bridge]&lt;br /&gt;
        physical_interface_mappings = public:eth0&lt;br /&gt;
&lt;br /&gt;
        [ml2_type_flat]&lt;br /&gt;
        flat_networks = public&lt;br /&gt;
&lt;br /&gt;
        [ml2_type_vxlan]&lt;br /&gt;
        vni_ranges = 1001:2000&lt;br /&gt;
&lt;br /&gt;
        [[post-config|/$Q_DHCP_CONF_FILE]]&lt;br /&gt;
        [DEFAULT]&lt;br /&gt;
        enable_isolated_metadata = True&lt;br /&gt;
        dnsmasq_dns_server = 8.8.8.8&lt;br /&gt;
        dnsmasq_config_file = /etc/dnsmasq.conf&lt;br /&gt;
&lt;br /&gt;
        [[post-config|/$Q_L3_CONF_FILE]]&lt;br /&gt;
        [DEFAULT]&lt;br /&gt;
        external_network_bridge = &amp;quot;&amp;quot;&lt;br /&gt;
    path: /opt/local.conf&lt;br /&gt;
    permissions: 0664&lt;br /&gt;
-   content: |&lt;br /&gt;
        #!/usr/bin/env bash&lt;br /&gt;
&lt;br /&gt;
        tmux new-session -s devstack -n shell -d&lt;br /&gt;
        tmux new-window -t devstack:1 -n devstack&lt;br /&gt;
        tmux send-keys -t devstack:1 'cd ~/devstack; ./stack.sh' C-m&lt;br /&gt;
        tmux select-window -t devstack:1&lt;br /&gt;
    path: /opt/run_devstack_into_tmux.sh&lt;br /&gt;
    permissions: 0775&lt;br /&gt;
&lt;br /&gt;
runcmd:&lt;br /&gt;
  - [ sh, -xc, &amp;quot;echo '127.0.0.1 $(wget -q -O- http://169.254.169.254/latest/meta-data/hostname | cut -d .  -f 1)'' &amp;gt;&amp;gt; /etc/hosts&amp;quot; ]&lt;br /&gt;
  - [ sh, -xc, &amp;quot;su stack -c 'cd ~; git clone https://github.com/openstack-dev/devstack.git'&amp;quot; ]&lt;br /&gt;
  - [ sh, -xc, &amp;quot;su stack -c 'cp /opt/local.conf ~/devstack/'&amp;quot; ]&lt;br /&gt;
  - [ sh, -xc, &amp;quot;su stack -c 'bash /opt/run_devstack_into_tmux.sh'&amp;quot; ]&lt;br /&gt;
&lt;br /&gt;
final_message: &amp;quot;!!! Your devstack is up and running. You can reach the OpenStack dashboard !!! (cloudinit runs in $UPTIME seconds)&amp;quot;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=64263</id>
		<title>OpenStack Upstream Institute</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=64263"/>
				<updated>2014-10-03T10:37:28Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: Haikel Guemar&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in '''social norms''' and '''technical conventions'''. These can significantly slow down the speed at which changes by newcomers are integrated in the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to accelerate the speed at which new OpenStack developers are successful at integrating their own roadmap into that of the OpenStack project. The program shows developers how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time. Students are required to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In followup sessions, the students benefit from individual online sessions to help them resolve any remaining problems they might have. &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Info|More details]]&lt;br /&gt;
&lt;br /&gt;
= When &amp;amp; Where to get OpenStack Upstream Training =&lt;br /&gt;
&lt;br /&gt;
Next installation of the OpenStack Upstream Training will be in Paris, before the OpenStack Summit. Stay tuned !&lt;br /&gt;
&lt;br /&gt;
= How to prepare =&lt;br /&gt;
&lt;br /&gt;
* Make sure you have a wifi enabled laptop with you.&lt;br /&gt;
* Create a virtual machine on the laptop with Ubuntu 12.04 or 14.04 installed and 4GB of RAM.&lt;br /&gt;
* Check that a you can ssh from your laptop to the virtual machine. Check that apt-get install works from within the virtual machine.&lt;br /&gt;
* Get in touch with Loic Dachary &amp;lt;loic@dachary.org&amp;gt; to pick a contribution to work on.&lt;br /&gt;
&lt;br /&gt;
= Staff =&lt;br /&gt;
* Stefano Maffulli &amp;lt;stefano@openstack.org&amp;gt; (training, mentoring, assistant, english) (2014/05)&lt;br /&gt;
* Loic Dachary &amp;lt;loic@dachary.org&amp;gt; (training, mentoring, assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Chris Ricker &amp;lt;chris.ricker@gmail.com&amp;gt; (training, mentoring, assistant, english) (2014/05, 2014/11)&lt;br /&gt;
* Xavier Antoviaque &amp;lt;xavier@antoviaque.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Rodolphe Quiedeville &amp;lt;rodolphe@quiedeville.org&amp;gt; (training, mentoring, assistant, french) (2014/11)&lt;br /&gt;
* Edouard THULEAU &amp;lt;edouard.thuleau@cloudwatt.com&amp;gt; (assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Sahid Ferdjaoui &amp;lt;sahid.ferdjaoui@redhat.com&amp;gt;  (assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Christophe Sauthier &amp;lt;christophe.sauthier@objectif-libre.com&amp;gt; (training, mentoring, french) + (assistant, french, english) (2014/11)&lt;br /&gt;
* Sylvain Bauza &amp;lt;sbauza@redhat.com&amp;gt; (assistant, mentoring, training, french, english) (2014/11)&lt;br /&gt;
* Julie Pichon &amp;lt;jpichon@redhat.com&amp;gt;  (training, mentoring, assistant, english) (2014/11)&lt;br /&gt;
* Adrien Cunin &amp;lt;adrien.cunin@osones.com&amp;gt; (mentoring, assistant, french, english) (2014/11)&lt;br /&gt;
* Tim Freund &amp;lt;tim@freunds.net&amp;gt; (assistant, english) (2014/11)&lt;br /&gt;
* Syed Armani &amp;lt;syed.armani@hastexo.com&amp;gt; (training, mentoring, assistant, english) (2014/11)&lt;br /&gt;
* Victoria Martínez de la Cruz &amp;lt;victoria@vmartinezdelacruz.com&amp;gt; (assistant, english) (2014/11)&lt;br /&gt;
* Cindy Pallares &amp;lt;cpallares@redhat.com&amp;gt; (assistant, english) (2014/11)&lt;br /&gt;
* Irena Berezovsky &amp;lt;irena.berezovsky@gmail.com&amp;gt; (assistant, mentor, english) (2014/11)&lt;br /&gt;
* Haikel Guemar &amp;lt;haikel.guemar@gmail.com&amp;gt; (assistant, mentor, french, english) (2014/11)&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=62683</id>
		<title>OpenStack Upstream Institute</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=62683"/>
				<updated>2014-09-16T08:59:04Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: Irena Berezovsky&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in '''social norms''' and '''technical conventions'''. These can significantly slow down the speed at which changes by newcomers are integrated in the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to accelerate the speed at which new OpenStack developers are successful at integrating their own roadmap into that of the OpenStack project. The program shows developers how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time. Students are required to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In followup sessions, the students benefit from individual online sessions to help them resolve any remaining problems they might have. &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Info|More details]]&lt;br /&gt;
&lt;br /&gt;
= When &amp;amp; Where to get OpenStack Upstream Training =&lt;br /&gt;
&lt;br /&gt;
Next installation of the OpenStack Upstream Training will be in Paris, before the OpenStack Summit. Stay tuned !&lt;br /&gt;
&lt;br /&gt;
= How to prepare =&lt;br /&gt;
&lt;br /&gt;
* Make sure you have a wifi enabled laptop with you.&lt;br /&gt;
* Create a virtual machine on the laptop with Ubuntu 12.04 or 14.04 installed and 4GB of RAM.&lt;br /&gt;
* Check that a you can ssh from your laptop to the virtual machine. Check that apt-get install works from within the virtual machine.&lt;br /&gt;
* Get in touch with Loic Dachary &amp;lt;loic@dachary.org&amp;gt; to pick a contribution to work on.&lt;br /&gt;
&lt;br /&gt;
= Staff =&lt;br /&gt;
* Stefano Maffulli &amp;lt;stefano@openstack.org&amp;gt; (training, mentoring, assistant, english) (2014/05)&lt;br /&gt;
* Loic Dachary &amp;lt;loic@dachary.org&amp;gt; (training, mentoring, assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Chris Ricker &amp;lt;chris.ricker@gmail.com&amp;gt; (training, mentoring, assistant, english) (2014/05, 2014/11)&lt;br /&gt;
* Xavier Antoviaque &amp;lt;xavier@antoviaque.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Rodolphe Quiedeville &amp;lt;rodolphe@quiedeville.org&amp;gt; (training, mentoring, assistant, french) (2014/11)&lt;br /&gt;
* Edouard THULEAU &amp;lt;edouard.thuleau@cloudwatt.com&amp;gt; (assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Sahid Ferdjaoui &amp;lt;sahid.ferdjaoui@redhat.com&amp;gt;  (assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Christophe Sauthier &amp;lt;christophe.sauthier@objectif-libre.com&amp;gt; (training, mentoring, french) + (assistant, french, english) (2014/11)&lt;br /&gt;
* Sylvain Bauza &amp;lt;sbauza@redhat.com&amp;gt; (assistant, mentoring, training, french, english) (2014/11)&lt;br /&gt;
* Julie Pichon &amp;lt;jpichon@redhat.com&amp;gt;  (training, mentoring, assistant, english) (2014/11)&lt;br /&gt;
* Adrien Cunin &amp;lt;adrien.cunin@osones.com&amp;gt; (mentoring, assistant, french, english) (2014/11)&lt;br /&gt;
* Tim Freund &amp;lt;tim@freunds.net&amp;gt; (assistant, english) (2014/11)&lt;br /&gt;
* Syed Armani &amp;lt;syed.armani@hastexo.com&amp;gt; (training, mentoring, assistant, english) (2014/11)&lt;br /&gt;
* Victoria Martínez de la Cruz &amp;lt;victoria@vmartinezdelacruz.com&amp;gt; (assistant, english) (2014/11)&lt;br /&gt;
* Cindy Pallares &amp;lt;cpallares@redhat.com&amp;gt; (assistant, english) (2014/11)&lt;br /&gt;
* Irena Berezovsky &amp;lt;irena.berezovsky@gmail.com&amp;gt; (assistant, mentor, english) (2014/11)&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=62287</id>
		<title>OpenStack Upstream Institute</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=62287"/>
				<updated>2014-09-09T12:55:58Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: Victoria&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in '''social norms''' and '''technical conventions'''. These can significantly slow down the speed at which changes by newcomers are integrated in the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to accelerate the speed at which new OpenStack developers are successful at integrating their own roadmap into that of the OpenStack project. The program shows developers how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time. Students are required to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In followup sessions, the students benefit from individual online sessions to help them resolve any remaining problems they might have. &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Info|More details]]&lt;br /&gt;
&lt;br /&gt;
= When &amp;amp; Where to get OpenStack Upstream Training =&lt;br /&gt;
&lt;br /&gt;
Next installation of the OpenStack Upstream Training will be in Paris, before the OpenStack Summit. Stay tuned !&lt;br /&gt;
&lt;br /&gt;
= How to prepare =&lt;br /&gt;
&lt;br /&gt;
* Make sure you have a wifi enabled laptop with you.&lt;br /&gt;
* Create a virtual machine on the laptop with Ubuntu 12.04 or 14.04 installed and 4GB of RAM.&lt;br /&gt;
* Check that a you can ssh from your laptop to the virtual machine. Check that apt-get install works from within the virtual machine.&lt;br /&gt;
* Get in touch with Loic Dachary &amp;lt;loic@dachary.org&amp;gt; to pick a contribution to work on.&lt;br /&gt;
&lt;br /&gt;
= Staff =&lt;br /&gt;
* Stefano Maffulli &amp;lt;stefano@openstack.org&amp;gt; (training, mentoring, assistant, english) (2014/05)&lt;br /&gt;
* Loic Dachary &amp;lt;loic@dachary.org&amp;gt; (training, mentoring, assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Chris Ricker &amp;lt;chris.ricker@gmail.com&amp;gt; (training, mentoring, assistant, english) (2014/05, 2014/11)&lt;br /&gt;
* Xavier Antoviaque &amp;lt;xavier@antoviaque.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Rodolphe Quiedeville &amp;lt;rodolphe@quiedeville.org&amp;gt; (training, mentoring, assistant, french) (2014/11)&lt;br /&gt;
* Edouard THULEAU &amp;lt;edouard.thuleau@cloudwatt.com&amp;gt; (assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Sahid Ferdjaoui &amp;lt;sahid.ferdjaoui@redhat.com&amp;gt;  (assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Christophe Sauthier &amp;lt;christophe.sauthier@objectif-libre.com&amp;gt; (training, mentoring, french) + (assistant, french, english) (2014/11)&lt;br /&gt;
* Sylvain Bauza &amp;lt;sbauza@redhat.com&amp;gt; (assistant, mentoring, training, french, english) (2014/11)&lt;br /&gt;
* Julie Pichon &amp;lt;jpichon@redhat.com&amp;gt;  (training, mentoring, assistant, english) (2014/11)&lt;br /&gt;
* Adrien Cunin &amp;lt;adrien.cunin@osones.com&amp;gt; (mentoring, assistant, french, english) (2014/11)&lt;br /&gt;
* Tim Freund &amp;lt;tim@freunds.net&amp;gt; (assistant, english) (2014/11)&lt;br /&gt;
* Syed Armani &amp;lt;syed.armani@hastexo.com&amp;gt; (training, mentoring, assistant, english) (2014/11)&lt;br /&gt;
* Victoria Martínez de la Cruz &amp;lt;victoria@vmartinezdelacruz.com&amp;gt; (assistant, english) (2014/11)&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=62048</id>
		<title>OpenStack Upstream Institute</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=62048"/>
				<updated>2014-09-04T13:20:11Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: Syed Armani&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in '''social norms''' and '''technical conventions'''. These can significantly slow down the speed at which changes by newcomers are integrated in the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to accelerate the speed at which new OpenStack developers are successful at integrating their own roadmap into that of the OpenStack project. The program shows developers how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time. Students are required to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In followup sessions, the students benefit from individual online sessions to help them resolve any remaining problems they might have. &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Info|More details]]&lt;br /&gt;
&lt;br /&gt;
= When &amp;amp; Where to get OpenStack Upstream Training =&lt;br /&gt;
&lt;br /&gt;
Next installation of the OpenStack Upstream Training will be in Paris, before the OpenStack Summit. Stay tuned !&lt;br /&gt;
&lt;br /&gt;
= How to prepare =&lt;br /&gt;
&lt;br /&gt;
* Make sure you have a wifi enabled laptop with you.&lt;br /&gt;
* Create a virtual machine on the laptop with Ubuntu 12.04 or 14.04 installed and 4GB of RAM.&lt;br /&gt;
* Check that a you can ssh from your laptop to the virtual machine. Check that apt-get install works from within the virtual machine.&lt;br /&gt;
* Get in touch with Loic Dachary &amp;lt;loic@dachary.org&amp;gt; to pick a contribution to work on.&lt;br /&gt;
&lt;br /&gt;
= Staff =&lt;br /&gt;
* Stefano Maffulli &amp;lt;stefano@openstack.org&amp;gt; (training, mentoring, assistant, english) (2014/05)&lt;br /&gt;
* Loic Dachary &amp;lt;loic@dachary.org&amp;gt; (training, mentoring, assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Chris Ricker &amp;lt;chris.ricker@gmail.com&amp;gt; (training, mentoring, assistant, english) (2014/05, 2014/11)&lt;br /&gt;
* Xavier Antoviaque &amp;lt;xavier@antoviaque.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Rodolphe Quiedeville &amp;lt;rodolphe@quiedeville.org&amp;gt; (training, mentoring, assistant, french) (2014/11)&lt;br /&gt;
* Edouard THULEAU &amp;lt;edouard.thuleau@cloudwatt.com&amp;gt; (assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Sahid Ferdjaoui &amp;lt;sahid.ferdjaoui@redhat.com&amp;gt;  (assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Christophe Sauthier &amp;lt;christophe.sauthier@objectif-libre.com&amp;gt; (training, mentoring, french) + (assistant, french, english) (2014/11)&lt;br /&gt;
* Sylvain Bauza &amp;lt;sbauza@redhat.com&amp;gt; (assistant, mentoring, training, french, english) (2014/11)&lt;br /&gt;
* Julie Pichon &amp;lt;jpichon@redhat.com&amp;gt;  (training, mentoring, assistant, english) (2014/11)&lt;br /&gt;
* Adrien Cunin &amp;lt;adrien.cunin@osones.com&amp;gt; (mentoring, assistant, french, english) (2014/11)&lt;br /&gt;
* Tim Freund &amp;lt;tim@freunds.net&amp;gt; (assistant, english) (2014/11)&lt;br /&gt;
* Syed Armani &amp;lt;syed.armani@hastexo.com&amp;gt; (training, mentoring, assistant, english) (2014/11)&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=Puppet&amp;diff=55915</id>
		<title>Puppet</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=Puppet&amp;diff=55915"/>
				<updated>2014-06-16T08:16:16Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: add puppet-ceph to the list of projects&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
The Puppet modules for OpenStack were written as a collaborative effort between OpenStack operators using Puppet.&lt;br /&gt;
&lt;br /&gt;
== Puppet Modules ==&lt;br /&gt;
&lt;br /&gt;
Puppet modules for the OpenStack project are hosted on [http://ci.openstack.org/stackforge.html StackForge].&lt;br /&gt;
&lt;br /&gt;
The following Puppet modules exist:&lt;br /&gt;
* [https://github.com/stackforge/puppet-ceilometer stackforge/puppet-ceilometer]&lt;br /&gt;
* [https://github.com/stackforge/puppet-cinder stackforge/puppet-cinder]&lt;br /&gt;
* [https://github.com/stackforge/puppet-designate stackforge/puppet-designate]&lt;br /&gt;
* [https://github.com/stackforge/puppet-glance stackforge/puppet-glance]&lt;br /&gt;
* [https://github.com/stackforge/puppet-heat stackforge/puppet-heat]&lt;br /&gt;
* [https://github.com/stackforge/puppet-horizon stackforge/puppet-horizon]&lt;br /&gt;
* [https://github.com/stackforge/puppet-ironic stackforge/puppet-ironic]&lt;br /&gt;
* [https://github.com/stackforge/puppet-keystone stackforge/puppet-keystone]&lt;br /&gt;
* [https://github.com/stackforge/puppet-neutron stackforge/puppet-neutron]&lt;br /&gt;
* [https://github.com/stackforge/puppet-nova stackforge/puppet-nova]&lt;br /&gt;
* [https://github.com/stackforge/puppet-openstack stackforge/puppet-openstack]&lt;br /&gt;
* [https://github.com/stackforge/puppet-swift stackforge/puppet-swift]&lt;br /&gt;
* [https://github.com/stackforge/puppet-tempest stackforge/puppet-tempest]&lt;br /&gt;
* [https://github.com/stackforge/puppet-vswitch stackforge/puppet-vswitch]&lt;br /&gt;
* [https://github.com/stackforge/puppet-ceph stackforge/puppet-ceph]&lt;br /&gt;
&lt;br /&gt;
=== Branches ===&lt;br /&gt;
&lt;br /&gt;
The master branch of each modules corresponds to the master branch of the current OpenStack core projects. Once released, a stable branch will be created and should be considered stable.&lt;br /&gt;
&lt;br /&gt;
For example, the current master branch of stackforge/puppet-keystone is targeting OpenStack Juno, once released, a new stable/juno branch will be created, from that point onward the master branch should target the OpenStack K release.&lt;br /&gt;
&lt;br /&gt;
=== Releases ===&lt;br /&gt;
&lt;br /&gt;
Master version of the modules will be released as a new major version to Puppet Forge (forge.puppetlabs.com) when its related version of OpenStack is released.&lt;br /&gt;
&lt;br /&gt;
Each version of OpenStack have a corresponding release on the forge.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Module Version !! OpenStack Version !! OpenStack Version Codename&lt;br /&gt;
|-&lt;br /&gt;
| 2.y.z || 2013.1.x || Grizzly&lt;br /&gt;
|-&lt;br /&gt;
| 3.y.z || 2013.2.x || Havana&lt;br /&gt;
|-&lt;br /&gt;
| 4.y.z || 2014.1.x || Icehouse&lt;br /&gt;
|-&lt;br /&gt;
| 5.z.y || 2014.2.x || Juno&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Supported Platforms ===&lt;br /&gt;
&lt;br /&gt;
The following OS/version are supported by the Puppet modules:&lt;br /&gt;
* Fedora 18&lt;br /&gt;
* RHEL 6.4&lt;br /&gt;
* Ubuntu 12.04 (Precise)&lt;br /&gt;
* Debian 7.0 (Wheezy)&lt;br /&gt;
&lt;br /&gt;
The modules have been primarily tested on Puppet 2.7.x and Ruby 1.8.7, although they are also being used with Puppet 3.1.x, 3.0.x, with Ruby 1.9.3.&lt;br /&gt;
&lt;br /&gt;
Puppet 2.6.x is currently NOT supported, it has been EOL'ed by PuppetLabs.&lt;br /&gt;
&lt;br /&gt;
== Getting Help ==&lt;br /&gt;
&lt;br /&gt;
=== Mailing list ===&lt;br /&gt;
&lt;br /&gt;
In general, the mailing list is preferred, because it makes the information more readily available so that others who have the same question can search for and find those answers.&lt;br /&gt;
&lt;br /&gt;
You can read and subscribe to the mailing list here: https://groups.google.com/a/puppetlabs.com/forum/#!forum/puppet-openstack&lt;br /&gt;
&lt;br /&gt;
 puppet-openstack@puppetlabs.com&lt;br /&gt;
&lt;br /&gt;
=== IRC ===&lt;br /&gt;
&lt;br /&gt;
You can talk to us directly in IRC on the '''#puppet-openstack''' channel. (freenode.net)&lt;br /&gt;
&lt;br /&gt;
IRC logs can be found [http://irclog.perlgeek.de/puppet-openstack/ here].&lt;br /&gt;
&lt;br /&gt;
=== Reporting bugs ===&lt;br /&gt;
&lt;br /&gt;
We are using [https://launchpad.net/ Launchpad] for bugs and features tracking. Issues and requests should be submitted under the [https://launchpad.net/puppet-openstack/ Puppet OpenStack] project.&lt;br /&gt;
&lt;br /&gt;
== Developer documentation ==&lt;br /&gt;
&lt;br /&gt;
=== Contributing to the modules ===&lt;br /&gt;
&lt;br /&gt;
==== Getting Started ====&lt;br /&gt;
&lt;br /&gt;
We follow the same process as all of the other OpenStack projects.&lt;br /&gt;
&lt;br /&gt;
To contribute, the following docs contain enough information to get started:&lt;br /&gt;
* https://wiki.openstack.org/wiki/How_To_Contribute&lt;br /&gt;
* https://wiki.openstack.org/wiki/GettingTheCode&lt;br /&gt;
* https://wiki.openstack.org/wiki/GerritWorkflow&lt;br /&gt;
&lt;br /&gt;
* go to : settings &amp;gt; watched projects and add the puppet projects (all of the form stackforge/puppet-*)&lt;br /&gt;
&lt;br /&gt;
=== How code gets merged ===&lt;br /&gt;
&lt;br /&gt;
Code is merged based on the voting process of the modules in Gerrit. All submitted patches automatically trigger a job that runs its rspec-puppet tests. This job is considered to be a gate in that no code is allowed to be merged that does not pass these tests. The results of this job are listed for every patch as a +1 Verified vote from Jenkins.&lt;br /&gt;
&lt;br /&gt;
Any users can +/- 1 a commit and add comments on commit, but only members of the puppet-manager-core group have the ability to +2 and approve code to be merged.&lt;br /&gt;
&lt;br /&gt;
Puppet OpenStack CI, and SmokeStack are two continuous integration environments that can be used to verify that any given patch can be used to deploy a functional multi-node environments. The integration of both of these systems is an ongoing process, so failures should be followed up on, but are not considered blockers at this moment.&lt;br /&gt;
&lt;br /&gt;
=== Patches ===&lt;br /&gt;
&lt;br /&gt;
Patches waiting to be merged can be viewed in Gerrit e.g. for stackforge/puppet-keystone&lt;br /&gt;
&lt;br /&gt;
 https://review.openstack.org/#/q/status:open+project:stackforge/puppet-keystone,n,z&lt;br /&gt;
&lt;br /&gt;
Q. How do I go about submitting a patch for a released branch, what the correct process?&lt;br /&gt;
Unless is not relevant all patches should be approved for the master branch before you submit them for a stable branch. This ensures we maintain stability in the stable branches and functionality&lt;br /&gt;
&lt;br /&gt;
==== Downloading a local patch ====&lt;br /&gt;
&lt;br /&gt;
Clone the relevant module from StackForge, ex:&lt;br /&gt;
&lt;br /&gt;
     git clone git://github.com/stackforge/puppet-openstack&lt;br /&gt;
&lt;br /&gt;
in the patch, find the git checkout or cherry-pick command, and copy it:&lt;br /&gt;
&lt;br /&gt;
     git fetch https://review.openstack.org/stackforge/puppet-openstack refs/changes/52/29452/9 &amp;amp;&amp;amp; git checkout FETCH_HEAD&lt;br /&gt;
&lt;br /&gt;
if you wanted to update an existing patch:&lt;br /&gt;
&lt;br /&gt;
make a topic branch:&lt;br /&gt;
&lt;br /&gt;
    git checkout -b my_topic&lt;br /&gt;
&lt;br /&gt;
make your changes:&lt;br /&gt;
&lt;br /&gt;
    hack,hack,hack&lt;br /&gt;
&lt;br /&gt;
amend the current commit:&lt;br /&gt;
&lt;br /&gt;
    git commit --amend .&lt;br /&gt;
&lt;br /&gt;
now resubmit:&lt;br /&gt;
&lt;br /&gt;
    git review&lt;br /&gt;
&lt;br /&gt;
=== Rspec puppet tests ===&lt;br /&gt;
 &lt;br /&gt;
Rspec puppet tests are a requirement for getting code merged into the StackForge modules.&lt;br /&gt;
&lt;br /&gt;
The best reference for getting started with rspec-puppet can be found [http://rspec-puppet.com/ here]&lt;br /&gt;
&lt;br /&gt;
==== Running local tests ====&lt;br /&gt;
&lt;br /&gt;
The following command can invoked from any if the  modules' directories to run their rspec puppet tests.&lt;br /&gt;
&lt;br /&gt;
It assumes that both bundler as well as rubygems (and ruby) are already installed on the system.&lt;br /&gt;
&lt;br /&gt;
 mkdir vendor&lt;br /&gt;
 export GEM_HOME=vendor&lt;br /&gt;
 bundle install&lt;br /&gt;
 # bundle exec rake -T&lt;br /&gt;
 bundle exec rake spec&lt;br /&gt;
&lt;br /&gt;
This relies on the file .fixtures.yaml to install all of the external module required for testing.&lt;br /&gt;
The urls in this file use the git:// protocol, so this may need to be updated if you are behind a proxy.&lt;br /&gt;
&lt;br /&gt;
=== stable branches ===&lt;br /&gt;
&lt;br /&gt;
Master of the modules should be targeting the trunk of openstack as soon as a release is announced.&lt;br /&gt;
&lt;br /&gt;
When this happens, a stable branch is created for any previous releases.&lt;br /&gt;
&lt;br /&gt;
    ie: stable/grizzly&lt;br /&gt;
&lt;br /&gt;
It is the responsibility for the patch submitted to know if their patch should be backported to previous stable branches.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The general process for this can be found here: https://wiki.openstack.org/wiki/StableBranch#Workflow&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=55001</id>
		<title>OpenStack Upstream Institute</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=55001"/>
				<updated>2014-06-05T15:22:12Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: /* Staff */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in '''social norms''' and '''technical conventions'''. These can significantly slow down the speed at which changes by newcomers are integrated in the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to accelerate the speed at which new OpenStack developers are successful at integrating their own roadmap into that of the OpenStack project. The program shows developers how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time. Students are required to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In followup sessions, the students benefit from individual online sessions to help them resolve any remaining problems they might have. &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Info|More details]]&lt;br /&gt;
&lt;br /&gt;
= When &amp;amp; Where to get OpenStack Upstream Training =&lt;br /&gt;
&lt;br /&gt;
Next installation of the OpenStack Upstream Training will be in Paris, before the OpenStack Summit. Stay tuned !&lt;br /&gt;
&lt;br /&gt;
= How to prepare =&lt;br /&gt;
&lt;br /&gt;
* Make sure you have a wifi enabled laptop with you.&lt;br /&gt;
* Create a virtual machine on the laptop with Ubuntu 12.04 or 14.04 installed and 4GB of RAM.&lt;br /&gt;
* Check that a you can ssh from your laptop to the virtual machine. Check that apt-get install works from within the virtual machine.&lt;br /&gt;
* Get in touch with Loic Dachary &amp;lt;loic@dachary.org&amp;gt; to pick a contribution to work on.&lt;br /&gt;
&lt;br /&gt;
= Staff =&lt;br /&gt;
* Stefano Maffulli &amp;lt;stefano@openstack.org&amp;gt; (training, mentoring, assistant, english) (2014/05)&lt;br /&gt;
* Loic Dachary &amp;lt;loic@dachary.org&amp;gt; (training, mentoring, assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Chris Ricker &amp;lt;chris.ricker@gmail.com&amp;gt; (training, mentoring, assistant, english) (2014/05, 2014/11)&lt;br /&gt;
* Xavier Antoviaque &amp;lt;xavier@antoviaque.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Rodolphe Quiedeville &amp;lt;rodolphe@quiedeville.org&amp;gt; (training, mentoring, assistant, french) (2014/11)&lt;br /&gt;
* Edouard THULEAU &amp;lt;edouard.thuleau@cloudwatt.com&amp;gt; (assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Sahid Ferdjaoui &amp;lt;sahid.ferdjaoui@cloudwatt.com&amp;gt;  (assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Christophe Sauthier &amp;lt;christophe.sauthier@objectif-libre.com&amp;gt; (training, mentoring, french) + (assistant, french, english) (2014/11)&lt;br /&gt;
* Sylvain Bauza &amp;lt;sbauza@redhat.com&amp;gt; (assistant, mentoring, french, english)&lt;br /&gt;
* Julie Pichon &amp;lt;jpichon@redhat.com&amp;gt;  (training, mentoring, assistant, english) (2014/11)&lt;br /&gt;
* Adrien Cunin &amp;lt;adrien.cunin@osones.com&amp;gt; (mentoring, assistant, french, english) (2014/11)&lt;br /&gt;
* Tim Freund &amp;lt;tim@freunds.net&amp;gt; (assistant, english)&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=54733</id>
		<title>OpenStack Upstream Institute</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=54733"/>
				<updated>2014-06-03T17:13:00Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: Tim Freund&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in '''social norms''' and '''technical conventions'''. These can significantly slow down the speed at which changes by newcomers are integrated in the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to accelerate the speed at which new OpenStack developers are successful at integrating their own roadmap into that of the OpenStack project. The program shows developers how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time. Students are required to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In followup sessions, the students benefit from individual online sessions to help them resolve any remaining problems they might have. &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Info|More details]]&lt;br /&gt;
&lt;br /&gt;
= When &amp;amp; Where to get OpenStack Upstream Training =&lt;br /&gt;
&lt;br /&gt;
Next installation of the OpenStack Upstream Training will be in Paris, before the OpenStack Summit. Stay tuned !&lt;br /&gt;
&lt;br /&gt;
= How to prepare =&lt;br /&gt;
&lt;br /&gt;
* Make sure you have a wifi enabled laptop with you.&lt;br /&gt;
* Create a virtual machine on the laptop with Ubuntu 12.04 or 14.04 installed and 4GB of RAM.&lt;br /&gt;
* Check that a you can ssh from your laptop to the virtual machine. Check that apt-get install works from within the virtual machine.&lt;br /&gt;
* Get in touch with Loic Dachary &amp;lt;loic@dachary.org&amp;gt; to pick a contribution to work on.&lt;br /&gt;
&lt;br /&gt;
= Staff =&lt;br /&gt;
* Stefano Maffulli &amp;lt;stefano@openstack.org&amp;gt; (training, mentoring, assistant, english) (2014/05)&lt;br /&gt;
* Loic Dachary &amp;lt;loic@dachary.org&amp;gt; (training, mentoring, assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Chris Ricker &amp;lt;chris.ricker@gmail.com&amp;gt; (training, mentoring, assistant, english) (2014/05, 2014/11)&lt;br /&gt;
* Xavier Antoviaque &amp;lt;xavier@antoviaque.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Rodolphe Quiedeville &amp;lt;rq@quiedeville.org&amp;gt; (training, mentoring, assistant, french) (2014/11)&lt;br /&gt;
* Edouard THULEAU &amp;lt;edouard.thuleau@cloudwatt.com&amp;gt; (assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Sahid Ferdjaoui &amp;lt;sahid.ferdjaoui@cloudwatt.com&amp;gt;  (assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Christophe Sauthier &amp;lt;christophe.sauthier@objectif-libre.com&amp;gt; (training, mentoring, french) + (assistant, french, english) (2014/11)&lt;br /&gt;
* Sylvain Bauza &amp;lt;sbauza@redhat.com&amp;gt; (assistant, mentoring, french, english)&lt;br /&gt;
* Julie Pichon &amp;lt;jpichon@redhat.com&amp;gt;  (training, mentoring, assistant, english) (2014/11)&lt;br /&gt;
* Adrien Cunin &amp;lt;adrien.cunin@osones.com&amp;gt; (mentoring, assistant, french, english) (2014/11)&lt;br /&gt;
* Tim Freund &amp;lt;tim@freunds.net&amp;gt; (assistant, english)&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=54674</id>
		<title>OpenStack Upstream Institute</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=54674"/>
				<updated>2014-06-03T12:01:57Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: Adrien Cunin&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in '''social norms''' and '''technical conventions'''. These can significantly slow down the speed at which changes by newcomers are integrated in the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to accelerate the speed at which new OpenStack developers are successful at integrating their own roadmap into that of the OpenStack project. The program shows developers how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time. Students are required to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In followup sessions, the students benefit from individual online sessions to help them resolve any remaining problems they might have. &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Info|More details]]&lt;br /&gt;
&lt;br /&gt;
= When &amp;amp; Where to get OpenStack Upstream Training =&lt;br /&gt;
&lt;br /&gt;
Next installation of the OpenStack Upstream Training will be in Paris, before the OpenStack Summit. Stay tuned !&lt;br /&gt;
&lt;br /&gt;
= How to prepare =&lt;br /&gt;
&lt;br /&gt;
* Make sure you have a wifi enabled laptop with you.&lt;br /&gt;
* Create a virtual machine on the laptop with Ubuntu 12.04 or 14.04 installed and 4GB of RAM.&lt;br /&gt;
* Check that a you can ssh from your laptop to the virtual machine. Check that apt-get install works from within the virtual machine.&lt;br /&gt;
* Get in touch with Loic Dachary &amp;lt;loic@dachary.org&amp;gt; to pick a contribution to work on.&lt;br /&gt;
&lt;br /&gt;
= Staff =&lt;br /&gt;
* Stefano Maffulli &amp;lt;stefano@openstack.org&amp;gt; (training, mentoring, assistant, english) (2014/05)&lt;br /&gt;
* Loic Dachary &amp;lt;loic@dachary.org&amp;gt; (training, mentoring, assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Chris Ricker &amp;lt;chris.ricker@gmail.com&amp;gt; (training, mentoring, assistant, english) (2014/05, 2014/11)&lt;br /&gt;
* Xavier Antoviaque &amp;lt;xavier@antoviaque.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Rodolphe Quiedeville &amp;lt;rq@quiedeville.org&amp;gt; (training, mentoring, assistant, french) (2014/11)&lt;br /&gt;
* Edouard THULEAU &amp;lt;edouard.thuleau@cloudwatt.com&amp;gt; (assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Sahid Ferdjaoui &amp;lt;sahid.ferdjaoui@cloudwatt.com&amp;gt;  (assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Christophe Sauthier &amp;lt;christophe.sauthier@objectif-libre.com&amp;gt; (training, mentoring, french) + (assistant, french, english) (2014/11)&lt;br /&gt;
* Sylvain Bauza &amp;lt;sbauza@redhat.com&amp;gt; (assistant, mentoring, french, english)&lt;br /&gt;
* Julie Pichon &amp;lt;jpichon@redhat.com&amp;gt;  (training, mentoring, assistant, english) (2014/11)&lt;br /&gt;
* Adrien Cunin &amp;lt;adrien.cunin@osones.com&amp;gt; (mentoring, assistant, french, english) (2014/11)&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=54656</id>
		<title>OpenStack Upstream Institute</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=54656"/>
				<updated>2014-06-03T09:55:46Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: Stefano of course !&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in '''social norms''' and '''technical conventions'''. These can significantly slow down the speed at which changes by newcomers are integrated in the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to accelerate the speed at which new OpenStack developers are successful at integrating their own roadmap into that of the OpenStack project. The program shows developers how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time. Students are required to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In followup sessions, the students benefit from individual online sessions to help them resolve any remaining problems they might have. &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Info|More details]]&lt;br /&gt;
&lt;br /&gt;
= When &amp;amp; Where to get OpenStack Upstream Training =&lt;br /&gt;
&lt;br /&gt;
Next installation of the OpenStack Upstream Training will be in Paris, before the OpenStack Summit. Stay tuned !&lt;br /&gt;
&lt;br /&gt;
= How to prepare =&lt;br /&gt;
&lt;br /&gt;
* Make sure you have a wifi enabled laptop with you.&lt;br /&gt;
* Create a virtual machine on the laptop with Ubuntu 12.04 or 14.04 installed and 4GB of RAM.&lt;br /&gt;
* Check that a you can ssh from your laptop to the virtual machine. Check that apt-get install works from within the virtual machine.&lt;br /&gt;
* Get in touch with Loic Dachary &amp;lt;loic@dachary.org&amp;gt; to pick a contribution to work on.&lt;br /&gt;
&lt;br /&gt;
= Staff =&lt;br /&gt;
* Stefano Maffulli &amp;lt;stefano@openstack.org&amp;gt; (training, mentoring, assistant, english) (2014/05)&lt;br /&gt;
* Loic Dachary &amp;lt;loic@dachary.org&amp;gt; (training, mentoring, assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Chris Ricker &amp;lt;chris.ricker@gmail.com&amp;gt; (training, mentoring, assistant, english) (2014/05, 2014/11)&lt;br /&gt;
* Xavier Antoviaque &amp;lt;xavier@antoviaque.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Rodolphe Quiedeville &amp;lt;rq@quiedeville.org&amp;gt; (training, mentoring, assistant, french) (2014/11)&lt;br /&gt;
* Edouard THULEAU &amp;lt;edouard.thuleau@cloudwatt.com&amp;gt; (assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Sahid Ferdjaoui &amp;lt;sahid.ferdjaoui@cloudwatt.com&amp;gt;  (assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Christophe Sauthier &amp;lt;christophe.sauthier@objectif-libre.com&amp;gt; (training, mentoring, french) + (assistant, french, english) (2014/11)&lt;br /&gt;
* Sylvain Bauza &amp;lt;sbauza@redhat.com&amp;gt; (assistant, mentoring, french, english)&lt;br /&gt;
* Julie Pichon &amp;lt;jpichon@redhat.com&amp;gt;  (training, mentoring, assistant, english) (2014/11)&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=54653</id>
		<title>OpenStack Upstream Institute</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=54653"/>
				<updated>2014-06-03T09:45:37Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: english only&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in '''social norms''' and '''technical conventions'''. These can significantly slow down the speed at which changes by newcomers are integrated in the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to accelerate the speed at which new OpenStack developers are successful at integrating their own roadmap into that of the OpenStack project. The program shows developers how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time. Students are required to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In followup sessions, the students benefit from individual online sessions to help them resolve any remaining problems they might have. &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Info|More details]]&lt;br /&gt;
&lt;br /&gt;
= When &amp;amp; Where to get OpenStack Upstream Training =&lt;br /&gt;
&lt;br /&gt;
Next installation of the OpenStack Upstream Training will be in Paris, before the OpenStack Summit. Stay tuned !&lt;br /&gt;
&lt;br /&gt;
= How to prepare =&lt;br /&gt;
&lt;br /&gt;
* Make sure you have a wifi enabled laptop with you.&lt;br /&gt;
* Create a virtual machine on the laptop with Ubuntu 12.04 or 14.04 installed and 4GB of RAM.&lt;br /&gt;
* Check that a you can ssh from your laptop to the virtual machine. Check that apt-get install works from within the virtual machine.&lt;br /&gt;
* Get in touch with Loic Dachary &amp;lt;loic@dachary.org&amp;gt; to pick a contribution to work on.&lt;br /&gt;
&lt;br /&gt;
= Staff =&lt;br /&gt;
&lt;br /&gt;
* Loic Dachary &amp;lt;loic@dachary.org&amp;gt; (training, mentoring, assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Chris Ricker &amp;lt;chris.ricker@gmail.com&amp;gt; (training, mentoring, assistant, english) (2014/05, 2014/11)&lt;br /&gt;
* Xavier Antoviaque &amp;lt;xavier@antoviaque.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Rodolphe Quiedeville &amp;lt;rq@quiedeville.org&amp;gt; (training, mentoring, assistant, french) (2014/11)&lt;br /&gt;
* Edouard THULEAU &amp;lt;edouard.thuleau@cloudwatt.com&amp;gt; (assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Sahid Ferdjaoui &amp;lt;sahid.ferdjaoui@cloudwatt.com&amp;gt;  (assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Christophe Sauthier &amp;lt;christophe.sauthier@objectif-libre.com&amp;gt; (training, mentoring, french) + (assistant, french, english) (2014/11)&lt;br /&gt;
* Sylvain Bauza &amp;lt;sbauza@redhat.com&amp;gt; (assistant, mentoring, french, english)&lt;br /&gt;
* Julie Pichon &amp;lt;jpichon@redhat.com&amp;gt;  (training, mentoring, assistant, english) (2014/11)&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=54652</id>
		<title>OpenStack Upstream Institute</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=54652"/>
				<updated>2014-06-03T09:43:06Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: Julie Pichon&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in '''social norms''' and '''technical conventions'''. These can significantly slow down the speed at which changes by newcomers are integrated in the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to accelerate the speed at which new OpenStack developers are successful at integrating their own roadmap into that of the OpenStack project. The program shows developers how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time. Students are required to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In followup sessions, the students benefit from individual online sessions to help them resolve any remaining problems they might have. &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Info|More details]]&lt;br /&gt;
&lt;br /&gt;
= When &amp;amp; Where to get OpenStack Upstream Training =&lt;br /&gt;
&lt;br /&gt;
Next installation of the OpenStack Upstream Training will be in Paris, before the OpenStack Summit. Stay tuned !&lt;br /&gt;
&lt;br /&gt;
= How to prepare =&lt;br /&gt;
&lt;br /&gt;
* Make sure you have a wifi enabled laptop with you.&lt;br /&gt;
* Create a virtual machine on the laptop with Ubuntu 12.04 or 14.04 installed and 4GB of RAM.&lt;br /&gt;
* Check that a you can ssh from your laptop to the virtual machine. Check that apt-get install works from within the virtual machine.&lt;br /&gt;
* Get in touch with Loic Dachary &amp;lt;loic@dachary.org&amp;gt; to pick a contribution to work on.&lt;br /&gt;
&lt;br /&gt;
= Staff =&lt;br /&gt;
&lt;br /&gt;
* Loic Dachary &amp;lt;loic@dachary.org&amp;gt; (training, mentoring, assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Chris Ricker &amp;lt;chris.ricker@gmail.com&amp;gt; (training, mentoring, assistant, english) (2014/05, 2014/11)&lt;br /&gt;
* Xavier Antoviaque &amp;lt;xavier@antoviaque.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Rodolphe Quiedeville &amp;lt;rq@quiedeville.org&amp;gt; (training, mentoring, assistant, french) (2014/11)&lt;br /&gt;
* Edouard THULEAU &amp;lt;edouard.thuleau@cloudwatt.com&amp;gt; (assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Sahid Ferdjaoui &amp;lt;sahid.ferdjaoui@cloudwatt.com&amp;gt;  (assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Christophe Sauthier &amp;lt;christophe.sauthier@objectif-libre.com&amp;gt; (training, mentoring, french) + (assistant, french, english) (2014/11)&lt;br /&gt;
* Sylvain Bauza &amp;lt;sbauza@redhat.com&amp;gt; (assistant, mentoring, french, english)&lt;br /&gt;
* Julie Pichon &amp;lt;jpichon@redhat.com&amp;gt;  (training, mentoring, assistant, french, english) (2014/11)&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=54650</id>
		<title>OpenStack Upstream Institute</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=54650"/>
				<updated>2014-06-03T09:23:34Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: Schedule for staff members&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in '''social norms''' and '''technical conventions'''. These can significantly slow down the speed at which changes by newcomers are integrated in the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to accelerate the speed at which new OpenStack developers are successful at integrating their own roadmap into that of the OpenStack project. The program shows developers how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time. Students are required to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In followup sessions, the students benefit from individual online sessions to help them resolve any remaining problems they might have. &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Info|More details]]&lt;br /&gt;
&lt;br /&gt;
= When &amp;amp; Where to get OpenStack Upstream Training =&lt;br /&gt;
&lt;br /&gt;
Next installation of the OpenStack Upstream Training will be in Paris, before the OpenStack Summit. Stay tuned !&lt;br /&gt;
&lt;br /&gt;
= How to prepare =&lt;br /&gt;
&lt;br /&gt;
* Make sure you have a wifi enabled laptop with you.&lt;br /&gt;
* Create a virtual machine on the laptop with Ubuntu 12.04 or 14.04 installed and 4GB of RAM.&lt;br /&gt;
* Check that a you can ssh from your laptop to the virtual machine. Check that apt-get install works from within the virtual machine.&lt;br /&gt;
* Get in touch with Loic Dachary &amp;lt;loic@dachary.org&amp;gt; to pick a contribution to work on.&lt;br /&gt;
&lt;br /&gt;
= Staff =&lt;br /&gt;
&lt;br /&gt;
* Loic Dachary &amp;lt;loic@dachary.org&amp;gt; (training, mentoring, assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Chris Ricker &amp;lt;chris.ricker@gmail.com&amp;gt; (training, mentoring, assistant, english) (2014/05, 2014/11)&lt;br /&gt;
* Xavier Antoviaque &amp;lt;xavier@antoviaque.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Rodolphe Quiedeville &amp;lt;rq@quiedeville.org&amp;gt; (training, mentoring, assistant, french) (2014/11)&lt;br /&gt;
* Edouard THULEAU &amp;lt;edouard.thuleau@cloudwatt.com&amp;gt; (assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Sahid Ferdjaoui &amp;lt;sahid.ferdjaoui@cloudwatt.com&amp;gt;  (assistant, french, english) (2014/05, 2014/11)&lt;br /&gt;
* Christophe Sauthier &amp;lt;christophe.sauthier@objectif-libre.com&amp;gt; (training, mentoring, french) + (assistant, french, english) (2014/11)&lt;br /&gt;
* Sylvain Bauza &amp;lt;sbauza@redhat.com&amp;gt; (assistant, mentoring, french, english)&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=54649</id>
		<title>OpenStack Upstream Institute</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=54649"/>
				<updated>2014-06-03T09:16:58Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: Sylvain Bauza&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in '''social norms''' and '''technical conventions'''. These can significantly slow down the speed at which changes by newcomers are integrated in the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to accelerate the speed at which new OpenStack developers are successful at integrating their own roadmap into that of the OpenStack project. The program shows developers how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time. Students are required to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In followup sessions, the students benefit from individual online sessions to help them resolve any remaining problems they might have. &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Info|More details]]&lt;br /&gt;
&lt;br /&gt;
= When &amp;amp; Where to get OpenStack Upstream Training =&lt;br /&gt;
&lt;br /&gt;
Next installation of the OpenStack Upstream Training will be in Paris, before the OpenStack Summit. Stay tuned !&lt;br /&gt;
&lt;br /&gt;
= How to prepare =&lt;br /&gt;
&lt;br /&gt;
* Make sure you have a wifi enabled laptop with you.&lt;br /&gt;
* Create a virtual machine on the laptop with Ubuntu 12.04 or 14.04 installed and 4GB of RAM.&lt;br /&gt;
* Check that a you can ssh from your laptop to the virtual machine. Check that apt-get install works from within the virtual machine.&lt;br /&gt;
* Get in touch with Loic Dachary &amp;lt;loic@dachary.org&amp;gt; to pick a contribution to work on.&lt;br /&gt;
&lt;br /&gt;
= Staff =&lt;br /&gt;
&lt;br /&gt;
* Loic Dachary &amp;lt;loic@dachary.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Chris Ricker &amp;lt;chris.ricker@gmail.com&amp;gt; (training, mentoring, assistant, english)&lt;br /&gt;
* Xavier Antoviaque &amp;lt;xavier@antoviaque.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Rodolphe Quiedeville &amp;lt;rq@quiedeville.org&amp;gt; (training, mentoring, assistant, french)&lt;br /&gt;
* Edouard THULEAU &amp;lt;edouard.thuleau@cloudwatt.com&amp;gt; (assistant, french, english)&lt;br /&gt;
* Sahid Ferdjaoui &amp;lt;sahid.ferdjaoui@cloudwatt.com&amp;gt;  (assistant, french, english)&lt;br /&gt;
* Christophe Sauthier &amp;lt;christophe.sauthier@objectif-libre.com&amp;gt; (training, mentoring, french) + (assistant, french, english)&lt;br /&gt;
* Sylvain Bauza &amp;lt;sbauza@redhat.com&amp;gt; (assistant, mentoring, french, english)&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=54321</id>
		<title>OpenStack Upstream Institute</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=54321"/>
				<updated>2014-05-30T14:17:06Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: Add christophe&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in '''social norms''' and '''technical conventions'''. These can significantly slow down the speed at which changes by newcomers are integrated in the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to accelerate the speed at which new OpenStack developers are successful at integrating their own roadmap into that of the OpenStack project. The program shows developers how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time. Students are required to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In followup sessions, the students benefit from individual online sessions to help them resolve any remaining problems they might have. &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Info|More details]]&lt;br /&gt;
&lt;br /&gt;
= When &amp;amp; Where to get OpenStack Upstream Training =&lt;br /&gt;
&lt;br /&gt;
Next installation of the OpenStack Upstream Training will be in Paris, before the OpenStack Summit. Stay tuned !&lt;br /&gt;
&lt;br /&gt;
= How to prepare =&lt;br /&gt;
&lt;br /&gt;
* Make sure you have a wifi enabled laptop with you.&lt;br /&gt;
* Create a virtual machine on the laptop with Ubuntu 12.04 or 14.04 installed and 4GB of RAM.&lt;br /&gt;
* Check that a you can ssh from your laptop to the virtual machine. Check that apt-get install works from within the virtual machine.&lt;br /&gt;
* Get in touch with Loic Dachary &amp;lt;loic@dachary.org&amp;gt; to pick a contribution to work on.&lt;br /&gt;
&lt;br /&gt;
= Staff =&lt;br /&gt;
&lt;br /&gt;
* Loic Dachary &amp;lt;loic@dachary.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Chris Ricker &amp;lt;chris.ricker@gmail.com&amp;gt; (training, mentoring, assistant, english)&lt;br /&gt;
* Xavier Antoviaque &amp;lt;xavier@antoviaque.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Rodolphe Quiedeville &amp;lt;rq@quiedeville.org&amp;gt; (training, mentoring, assistant, french)&lt;br /&gt;
* Edouard THULEAU &amp;lt;edouard.thuleau@cloudwatt.com&amp;gt; (assistant, french, english)&lt;br /&gt;
* Sahid Ferdjaoui &amp;lt;sahid.ferdjaoui@cloudwatt.com&amp;gt;  (assistant, french, english)&lt;br /&gt;
* Christophe Sauthier &amp;lt;christophe.sauthier@objectif-libre.com&amp;gt; (training, mentoring, french) + (assistant, french, english)&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=52468</id>
		<title>OpenStack Upstream Institute</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=52468"/>
				<updated>2014-05-16T03:32:48Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: wrong mail&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in '''social norms''' and '''technical conventions'''. These can significantly slow down the speed at which changes by newcomers are integrated in the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to accelerate the speed at which new OpenStack developers are successful at integrating their own roadmap into that of the OpenStack project. The program shows developers how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time. Students are required to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In followup sessions, the students benefit from individual online sessions to help them resolve any remaining problems they might have. &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Info|More details]]&lt;br /&gt;
&lt;br /&gt;
= When &amp;amp; Where to get OpenStack Upstream Training =&lt;br /&gt;
&lt;br /&gt;
Next installation of the OpenStack Upstream Training will be in Paris, before the OpenStack Summit. Stay tuned !&lt;br /&gt;
&lt;br /&gt;
= How to prepare =&lt;br /&gt;
&lt;br /&gt;
* Make sure you have a wifi enabled laptop with you.&lt;br /&gt;
* Create a virtual machine on the laptop with Ubuntu 12.04 or 14.04 installed and 4GB of RAM.&lt;br /&gt;
* Check that a you can ssh from your laptop to the virtual machine. Check that apt-get install works from within the virtual machine.&lt;br /&gt;
* Get in touch with Loic Dachary &amp;lt;loic@dachary.org&amp;gt; to pick a contribution to work on.&lt;br /&gt;
&lt;br /&gt;
= Staff =&lt;br /&gt;
&lt;br /&gt;
* Loic Dachary &amp;lt;loic@dachary.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Chris Ricker &amp;lt;chris.ricker@gmail.com&amp;gt; (training, mentoring, assistant, english)&lt;br /&gt;
* Xavier Antoviaque &amp;lt;xavier@antoviaque.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Rodolphe Quiedeville &amp;lt;rq@quiedeville.org&amp;gt; (training, mentoring, assistant, french)&lt;br /&gt;
* Edouard THULEAU &amp;lt;edouard.thuleau@cloudwatt.com&amp;gt; (assistant, french, english)&lt;br /&gt;
* Sahid Ferdjaoui &amp;lt;sahid.ferdjaoui@cloudwatt.com&amp;gt;  (assistant, french, english)&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=52467</id>
		<title>OpenStack Upstream Institute</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=52467"/>
				<updated>2014-05-16T03:28:53Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: /* When &amp;amp; Where to get OpenStack Upstream Training */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in '''social norms''' and '''technical conventions'''. These can significantly slow down the speed at which changes by newcomers are integrated in the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to accelerate the speed at which new OpenStack developers are successful at integrating their own roadmap into that of the OpenStack project. The program shows developers how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time. Students are required to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In followup sessions, the students benefit from individual online sessions to help them resolve any remaining problems they might have. &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Info|More details]]&lt;br /&gt;
&lt;br /&gt;
= When &amp;amp; Where to get OpenStack Upstream Training =&lt;br /&gt;
&lt;br /&gt;
Next installation of the OpenStack Upstream Training will be in Paris, before the OpenStack Summit. Stay tuned !&lt;br /&gt;
&lt;br /&gt;
= How to prepare =&lt;br /&gt;
&lt;br /&gt;
* Make sure you have a wifi enabled laptop with you.&lt;br /&gt;
* Create a virtual machine on the laptop with Ubuntu 12.04 or 14.04 installed and 4GB of RAM.&lt;br /&gt;
* Check that a you can ssh from your laptop to the virtual machine. Check that apt-get install works from within the virtual machine.&lt;br /&gt;
* Get in touch with Loic Dachary &amp;lt;loic@dachary.org&amp;gt; to pick a contribution to work on.&lt;br /&gt;
&lt;br /&gt;
= Staff =&lt;br /&gt;
&lt;br /&gt;
* Loic Dachary &amp;lt;loic@dachary.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Chris Ricker &amp;lt;chris.ricker@gmail.com&amp;gt; (training, mentoring, assistant, english)&lt;br /&gt;
* Xavier Antoviaque &amp;lt;xavier@antoviaque.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Rodolphe Quiedeville &amp;lt;rq@quiedeville.org&amp;gt; (training, mentoring, assistant, french)&lt;br /&gt;
* Edouard THULEAU &amp;lt;edouard.thuleau@cloudwatt.com&amp;gt; (assistant, french, english)&lt;br /&gt;
* Sahid Ferdjaoui &amp;lt;sahid.ferdjaoui@cloudwatt.com&amp;gt;  (assistant, french, english)&lt;br /&gt;
* Pierre Padruxe &amp;lt;pierre.padruxe@gmail.com&amp;gt; (mentoring, french, english)&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=52466</id>
		<title>OpenStack Upstream Institute</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=52466"/>
				<updated>2014-05-16T03:27:34Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: /* Staff */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in '''social norms''' and '''technical conventions'''. These can significantly slow down the speed at which changes by newcomers are integrated in the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to accelerate the speed at which new OpenStack developers are successful at integrating their own roadmap into that of the OpenStack project. The program shows developers how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time. Students are required to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In followup sessions, the students benefit from individual online sessions to help them resolve any remaining problems they might have. &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Info|More details]]&lt;br /&gt;
&lt;br /&gt;
= When &amp;amp; Where to get OpenStack Upstream Training =&lt;br /&gt;
&lt;br /&gt;
Next installation of the OpenStack Upstream Training will be in Atlanta, before the OpenStack Summit, Sat-Sun May 10-11. [http://www.eventbrite.com/e/openstack-upstream-training-tickets-2769119511 Reserve you seat]. &lt;br /&gt;
&lt;br /&gt;
= How to prepare =&lt;br /&gt;
&lt;br /&gt;
* Make sure you have a wifi enabled laptop with you.&lt;br /&gt;
* Create a virtual machine on the laptop with Ubuntu 12.04 or 14.04 installed and 4GB of RAM.&lt;br /&gt;
* Check that a you can ssh from your laptop to the virtual machine. Check that apt-get install works from within the virtual machine.&lt;br /&gt;
* Get in touch with Loic Dachary &amp;lt;loic@dachary.org&amp;gt; to pick a contribution to work on.&lt;br /&gt;
&lt;br /&gt;
= Staff =&lt;br /&gt;
&lt;br /&gt;
* Loic Dachary &amp;lt;loic@dachary.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Chris Ricker &amp;lt;chris.ricker@gmail.com&amp;gt; (training, mentoring, assistant, english)&lt;br /&gt;
* Xavier Antoviaque &amp;lt;xavier@antoviaque.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Rodolphe Quiedeville &amp;lt;rq@quiedeville.org&amp;gt; (training, mentoring, assistant, french)&lt;br /&gt;
* Edouard THULEAU &amp;lt;edouard.thuleau@cloudwatt.com&amp;gt; (assistant, french, english)&lt;br /&gt;
* Sahid Ferdjaoui &amp;lt;sahid.ferdjaoui@cloudwatt.com&amp;gt;  (assistant, french, english)&lt;br /&gt;
* Pierre Padruxe &amp;lt;pierre.padruxe@gmail.com&amp;gt; (mentoring, french, english)&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=52465</id>
		<title>OpenStack Upstream Institute</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=52465"/>
				<updated>2014-05-16T03:26:22Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: /* How to prepare */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in '''social norms''' and '''technical conventions'''. These can significantly slow down the speed at which changes by newcomers are integrated in the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to accelerate the speed at which new OpenStack developers are successful at integrating their own roadmap into that of the OpenStack project. The program shows developers how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time. Students are required to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In followup sessions, the students benefit from individual online sessions to help them resolve any remaining problems they might have. &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Info|More details]]&lt;br /&gt;
&lt;br /&gt;
= When &amp;amp; Where to get OpenStack Upstream Training =&lt;br /&gt;
&lt;br /&gt;
Next installation of the OpenStack Upstream Training will be in Atlanta, before the OpenStack Summit, Sat-Sun May 10-11. [http://www.eventbrite.com/e/openstack-upstream-training-tickets-2769119511 Reserve you seat]. &lt;br /&gt;
&lt;br /&gt;
= How to prepare =&lt;br /&gt;
&lt;br /&gt;
* Make sure you have a wifi enabled laptop with you.&lt;br /&gt;
* Create a virtual machine on the laptop with Ubuntu 12.04 or 14.04 installed and 4GB of RAM.&lt;br /&gt;
* Check that a you can ssh from your laptop to the virtual machine. Check that apt-get install works from within the virtual machine.&lt;br /&gt;
* Get in touch with Loic Dachary &amp;lt;loic@dachary.org&amp;gt; to pick a contribution to work on.&lt;br /&gt;
&lt;br /&gt;
= Staff =&lt;br /&gt;
&lt;br /&gt;
* Loic Dachary &amp;lt;loic@dachary.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Chris Ricker &amp;lt;chris.ricker@gmail.com&amp;gt; (trainng, mentoring, assistant, english)&lt;br /&gt;
* Xavier Antoviaque &amp;lt;xavier@antoviaque.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Rodolphe Quiedeville &amp;lt;rq@quiedeville.org&amp;gt; (training, mentoring, assistant, french)&lt;br /&gt;
* Edouard THULEAU &amp;lt;edouard.thuleau@cloudwatt.com&amp;gt; (assistant, french, english)&lt;br /&gt;
* Sahid Ferdjaoui &amp;lt;sahid.ferdjaoui@cloudwatt.com&amp;gt;  (assistant, french, english)&lt;br /&gt;
* Pierre Padruxe &amp;lt;pierre.padruxe@gmail.com&amp;gt; (mentoring, french, english)&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=52464</id>
		<title>OpenStack Upstream Institute</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=52464"/>
				<updated>2014-05-16T03:23:21Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: The date is not set yet.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in '''social norms''' and '''technical conventions'''. These can significantly slow down the speed at which changes by newcomers are integrated in the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to accelerate the speed at which new OpenStack developers are successful at integrating their own roadmap into that of the OpenStack project. The program shows developers how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time. Students are required to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In followup sessions, the students benefit from individual online sessions to help them resolve any remaining problems they might have. &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Info|More details]]&lt;br /&gt;
&lt;br /&gt;
= When &amp;amp; Where to get OpenStack Upstream Training =&lt;br /&gt;
&lt;br /&gt;
Next installation of the OpenStack Upstream Training will be in Atlanta, before the OpenStack Summit, Sat-Sun May 10-11. [http://www.eventbrite.com/e/openstack-upstream-training-tickets-2769119511 Reserve you seat]. &lt;br /&gt;
&lt;br /&gt;
= How to prepare =&lt;br /&gt;
&lt;br /&gt;
* Make sure you have a laptop with you.&lt;br /&gt;
* Get in touch with Loic Dachary &amp;lt;loic@dachary.org&amp;gt; to pick a contribution to work on.&lt;br /&gt;
&lt;br /&gt;
= Staff =&lt;br /&gt;
&lt;br /&gt;
* Loic Dachary &amp;lt;loic@dachary.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Chris Ricker &amp;lt;chris.ricker@gmail.com&amp;gt; (trainng, mentoring, assistant, english)&lt;br /&gt;
* Xavier Antoviaque &amp;lt;xavier@antoviaque.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Rodolphe Quiedeville &amp;lt;rq@quiedeville.org&amp;gt; (training, mentoring, assistant, french)&lt;br /&gt;
* Edouard THULEAU &amp;lt;edouard.thuleau@cloudwatt.com&amp;gt; (assistant, french, english)&lt;br /&gt;
* Sahid Ferdjaoui &amp;lt;sahid.ferdjaoui@cloudwatt.com&amp;gt;  (assistant, french, english)&lt;br /&gt;
* Pierre Padruxe &amp;lt;pierre.padruxe@gmail.com&amp;gt; (mentoring, french, english)&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=52462</id>
		<title>OpenStack Upstream Institute</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Institute&amp;diff=52462"/>
				<updated>2014-05-16T03:19:22Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: Add staff list&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in '''social norms''' and '''technical conventions'''. These can significantly slow down the speed at which changes by newcomers are integrated in the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to accelerate the speed at which new OpenStack developers are successful at integrating their own roadmap into that of the OpenStack project. The program shows developers how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time. Students are required to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In followup sessions, the students benefit from individual online sessions to help them resolve any remaining problems they might have. &lt;br /&gt;
&lt;br /&gt;
[[OpenStack_Upstream_Training/Info|More details]]&lt;br /&gt;
&lt;br /&gt;
= When &amp;amp; Where to get OpenStack Upstream Training =&lt;br /&gt;
&lt;br /&gt;
Next installation of the OpenStack Upstream Training will be in Atlanta, before the OpenStack Summit, Sat-Sun May 10-11. [http://www.eventbrite.com/e/openstack-upstream-training-tickets-2769119511 Reserve you seat]. &lt;br /&gt;
&lt;br /&gt;
= How to prepare =&lt;br /&gt;
&lt;br /&gt;
* Make sure you have a laptop with you.&lt;br /&gt;
* Get in touch with Loic Dachary &amp;lt;loic@dachary.org&amp;gt; to pick a contribution to work on, before April 25th, 2014.&lt;br /&gt;
&lt;br /&gt;
= Staff =&lt;br /&gt;
&lt;br /&gt;
* Loic Dachary &amp;lt;loic@dachary.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Chris Ricker &amp;lt;chris.ricker@gmail.com&amp;gt; (trainng, mentoring, assistant, english)&lt;br /&gt;
* Xavier Antoviaque &amp;lt;xavier@antoviaque.org&amp;gt; (training, mentoring, assistant, french, english)&lt;br /&gt;
* Rodolphe Quiedeville &amp;lt;rq@quiedeville.org&amp;gt; (training, mentoring, assistant, french)&lt;br /&gt;
* Edouard THULEAU &amp;lt;edouard.thuleau@cloudwatt.com&amp;gt; (assistant, french, english)&lt;br /&gt;
* Sahid Ferdjaoui &amp;lt;sahid.ferdjaoui@cloudwatt.com&amp;gt;  (assistant, french, english)&lt;br /&gt;
* Pierre Padruxe &amp;lt;pierre.padruxe@gmail.com&amp;gt; (mentoring, french, english)&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=Design_Summit/Juno/Etherpads&amp;diff=52172</id>
		<title>Design Summit/Juno/Etherpads</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=Design_Summit/Juno/Etherpads&amp;diff=52172"/>
				<updated>2014-05-13T12:57:03Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: rename the design summit 101 pad&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Summit]]&lt;br /&gt;
[[Category:Juno]]&lt;br /&gt;
[[Category:Etherpad]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;column-count:3;-moz-column-count:3;-webkit-column-count:3&amp;quot;&amp;gt;&lt;br /&gt;
__TOC__&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Barbican ==&lt;br /&gt;
&lt;br /&gt;
* Tue 1115-1155 [https://etherpad.openstack.org/p/barbican-events Barbican Events]&lt;br /&gt;
* Tue 1205-1245 [https://etherpad.openstack.org/p/barbican-kite Kite]&lt;br /&gt;
* Tue 1640-1720 [https://etherpad.openstack.org/p/barbican-plugins Barbican Plug-in Architecture]&lt;br /&gt;
* Tue 1730-1810 [https://etherpad.openstack.org/p/barbican-asym Barbican SSL/TLS Workflow]&lt;br /&gt;
&lt;br /&gt;
== Ceilometer ==&lt;br /&gt;
&lt;br /&gt;
* Wed 0900-0940 [https://etherpad.openstack.org/p/ceilometer-agent-repartition Ceilometer agents repartition]&lt;br /&gt;
* Wed 0950-1030 [https://etherpad.openstack.org/p/ceilometer-test-strategy Improve Ceilometer test strategy]&lt;br /&gt;
* Wed 1100-1140 Complex query on Ceilometer stats &amp;amp; project-specific meters&lt;br /&gt;
* Wed 1150-1230 [https://etherpad.openstack.org/p/ceilometer-tsdaas Rethinking Ceilometer as Time-Series-Data-as-a-Service]&lt;br /&gt;
* Wed 1350-1430 [https://etherpad.openstack.org/p/ceilometer-schema Revise Ceilometer data model to improve performance]&lt;br /&gt;
* Wed 1440-1520 Ceilometer Dev/Ops Session&lt;br /&gt;
* Wed 1530-1610 [https://etherpad.openstack.org/p/ceilometer-snmp-inspector Ceilometer SNMP improvements &amp;amp; code-free meters]&lt;br /&gt;
* Wed 1630-1710 [https://etherpad.openstack.org/p/ceilometer-alarm-and-log-improvments Ceilometer alarm evaluation improvements &amp;amp; effective logging]&lt;br /&gt;
* Wed 1720-1800 Ironic and Ceilometer&lt;br /&gt;
* Thurs 0900-0940 [https://etherpad.openstack.org/p/juno-summit-metering-network-services Deploying Ceilometer w/ TripleO &amp;amp; Metering Network Services]&lt;br /&gt;
&lt;br /&gt;
== Cinder ==&lt;br /&gt;
&lt;br /&gt;
* Thurs 15.30-16:10 [https://etherpad.openstack.org/p/juno-cinder-backup-restore Volume Backup\Restore]&lt;br /&gt;
* Thurs 16:10-16:50 [https://etherpad.openstack.org/p/juno-cinder-volume-replication Volume Replication]&lt;br /&gt;
* Thurs 17:00-17:40 [https://etherpad.openstack.org/p/juno-cinder-DRBD DRBD For Cinder-Volumes]&lt;br /&gt;
* Friday 09:00-09:40 [https://etherpad.openstack.org/p/juno-cinder-nfs-in-cinder NFS and its role within Cinder]&lt;br /&gt;
* Friday 10:00-10:40 [https://etherpad.openstack.org/p/juno-cinder-cinder-consistency-groups Adding Consistency Groups to Cinder]&lt;br /&gt;
* Friday 10:50-11:30 [https://etherpad.openstack.org/p/juno-cinder-3rd-party-cert-and-verification 3'rd party certificiation and CI systems]&lt;br /&gt;
* Friday 11:40-12:20 [https://etherpad.openstack.org/p/juno-cinder-changed-block-list Changed Block List for Cinder Volumes]&lt;br /&gt;
* Friday 13:20-14:00 [https://etherpad.openstack.org/p/juno-cinder-state-and-workflow-management Cinder State and Workflow Management]&lt;br /&gt;
* Friday 14:10-14:50 [https://etherpad.openstack.org/p/juno-cinder-framework-for-state-reporting Framework for detailed Volume Stats reporting]&lt;br /&gt;
* Friday 15:00-15:40 [https://etherpad.openstack.org/p/juno-cinder-multiple-pools-per-backend Mulitple Pools per Cinder Backend]&lt;br /&gt;
* Friday 16:00-16:40 [https://etherpad.openstack.org/p/juno-cinder-whats-a-cinder-driver What is a Cinder Driver]&lt;br /&gt;
&lt;br /&gt;
==Cross-Project==&lt;br /&gt;
* Tues 11:15-11:55 [https://etherpad.openstack.org/p/juno-cross-project-future-of-python The Future of Python Support]&lt;br /&gt;
* Tues 11:15-11:55 [https://etherpad.openstack.org/p/9XQ7Q2NQdv Solum, Murano, Heat: how to handle app lifecycle ?]&lt;br /&gt;
* Tues 11:15-12:45 [https://etherpad.openstack.org/p/juno-cross-project-consistency-across-rest-apis Consistency Across OpenStack REST APIs]&lt;br /&gt;
* Tues 14:00-14:40 [https://etherpad.openstack.org/p/juno-cross-oslo-library-releases New Oslo Library Releases and Your Project]&lt;br /&gt;
* Tues 14:00-14:40 [https://etherpad.openstack.org/p/juno-dealing-rejections Dealing with changes of plans, rejections and more]&lt;br /&gt;
* Tues 14:50-15:30 [https://etherpad.openstack.org/p/openstack-and-its-cla Taking another look at our CLA]&lt;br /&gt;
* Tues 14:50-15.30[https://etherpad.openstack.org/p/juno-summit-cross-project-user-experience User Experience Designers Gathering]&lt;br /&gt;
* Tues 15:40-16:20 [https://etherpad.openstack.org/p/juno-cross-project-quota-management-endpoint Cross-project Quota Management Service Endpoint]&lt;br /&gt;
* Tues 15:40 [https://etherpad.openstack.org/p/juno-cross-project-tracking-features Tracking incoming features]&lt;br /&gt;
* Tues 16:40 [https://etherpad.openstack.org/p/juno-summit-gate How do we make it easier to fix the Gate?]&lt;br /&gt;
* Tues 16:40 [https://etherpad.openstack.org/p/juno-summit-openstackclient Clients and SDKs Part I]&lt;br /&gt;
* Tues 17:30 [https://etherpad.openstack.org/p/juno-test-maxtrices Test Matrices and Feature Parity]&lt;br /&gt;
* Tues 17:30 [https://etherpad.openstack.org/p/juno-summit-sdk Clients and SDKs Part II]&lt;br /&gt;
&lt;br /&gt;
== Devstack ==&lt;br /&gt;
* Fri 16:00 [https://etherpad.openstack.org/p/juno-summit-devstack-update DevStack Update]&lt;br /&gt;
* Fri 16:50 [https://etherpad.openstack.org/p/juno-summit-devstack-project-support DevStack Project Support]&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
&lt;br /&gt;
* Tues 11:05 B304 [https://etherpad.openstack.org/p/summit-session-cross-project-docs Cross-Project Documentation]&lt;br /&gt;
* Wed 09:00 [https://etherpad.openstack.org/p/installation-guide-audit Installation Guide Discussion]&lt;br /&gt;
* Thu 09:50 [https://etherpad.openstack.org/p/summit0514-session-patching-the-docs-process Patching the Documentation Process]&lt;br /&gt;
* Fri 09:00 [https://etherpad.openstack.org/p/summit-b301-ci-doc-automation Continuous Publishing and Automation for Docs]&lt;br /&gt;
* Fri 11:40 [http://junodesignsummit.sched.org/event/bd8428a881229a747d9c2c3cab96e1b2#.U3Eitq1dU0w Beef Up User and Operations Guides for Integrated]&lt;br /&gt;
&lt;br /&gt;
== Glance ==&lt;br /&gt;
* Wed 5:20-6:00: [https://etherpad.openstack.org/p/juno-hot-artifacts-repository-finalize-design Hot/Artifacts repository finalize design]&lt;br /&gt;
* Thur 9:00-9:40: [https://etherpad.openstack.org/p/juno-glance-store-and-future-features Glance Store and Future Features]&lt;br /&gt;
* Thur 9:50-10:30: [https://etherpad.openstack.org/p/juno-tasks-review-and-taskflow Task Review and Taskflow]&lt;br /&gt;
* Thur 11:00-11:40: [https://etherpad.openstack.org/p/juno-adding-functional-operations-to-glance-api Adding functional operations to Glance API]&lt;br /&gt;
* Thur 11:50-12:30: [https://etherpad.openstack.org/p/juno-poking-image-filesystem Poking Image Filesystem]&lt;br /&gt;
&lt;br /&gt;
== Heat ==&lt;br /&gt;
&lt;br /&gt;
* Wed 9.00-9:40 [https://etherpad.openstack.org/p/juno-summit-heat-dev-ops Dev/Ops Session]&lt;br /&gt;
* Wed 9.50-10:30 [https://etherpad.openstack.org/p/juno-summit-heat-sw-orch Next Steps for Software Orchestration]&lt;br /&gt;
* Wed 11.00-11:40 [https://etherpad.openstack.org/p/heat-workflow-vs-convergence Scaling, Robustness and Convergence]&lt;br /&gt;
* Wed 11.50-12:30 [https://etherpad.openstack.org/p/juno-summit-heat-notifications Augmenting Polling with Notifications]&lt;br /&gt;
* Wed 13.50-14:30 [https://etherpad.openstack.org/p/juno-summit-heat-event Event notifications]&lt;br /&gt;
* Wed 14.40-15:20 [https://etherpad.openstack.org/p/juno-summit-heat-callbacks Stack and Resource lifecycle callbacks]&lt;br /&gt;
* Wed 15.30-16:10 [https://etherpad.openstack.org/p/juno-summit-heat-api-v2 API v2]&lt;br /&gt;
* Wed 16.30-17:10 [https://etherpad.openstack.org/p/juno-summit-heat-plugin-versioning Resource Plugin Versioning]&lt;br /&gt;
&lt;br /&gt;
== Horizon ==&lt;br /&gt;
* Wed 15:30-16:10 [https://etherpad.openstack.org/p/juno-summit-horizon-static-files Handling of static files]&lt;br /&gt;
* Wed 16:30-17:10 [https://etherpad.openstack.org/p/juno-summit-horizon-widgets Modular, widget-based views and more pluggability]&lt;br /&gt;
* Wed 17:20-18:00 [https://etherpad.openstack.org/p/juno-summit-horizon-client-side Client side development]&lt;br /&gt;
* Thu 17:00-17:40 [https://etherpad.openstack.org/p/juno-summit-horizon-tuskar-ui Tuskar-UI and its relationship to Horizon]&lt;br /&gt;
* Fri 09:00-09:40 [https://etherpad.openstack.org/p/juno-summit-horizon-usability-test-results Review Horizon Usability Test feedback, proposals]&lt;br /&gt;
* Fri 9:50-10:30 [https://etherpad.openstack.org/p/juno-summit-overview-page-horizon Better Overview Pages]&lt;br /&gt;
* Fri 9:50-10:30 [https://etherpad.openstack.org/p/Dashboard_Accessibility Dashboard Accessibility]&lt;br /&gt;
* Fri 10:50-11:30 [https://etherpad.openstack.org/p/juno-summit-horizon-devops Horizon Dev/Ops Session]&lt;br /&gt;
&lt;br /&gt;
== Infrastructure ==&lt;br /&gt;
* Wed 9:50 - [https://etherpad.openstack.org/p/juno-summit-elastic-recheck Elastic Recheck next steps]&lt;br /&gt;
* Wed 11:00 - [https://etherpad.openstack.org/p/juno-summit-jenkins-moving-forward Jenkins moving forward]&lt;br /&gt;
* Wed 11:50 - [https://etherpad.openstack.org/p/juno-infra-improving-3rd-party-testing Improving Third Party Testing]&lt;br /&gt;
* Thu 11:00 - [https://etherpad.openstack.org/p/juno-infra-design-Vinz-review-system Discussion/design talk of Vinz code review system]&lt;br /&gt;
* Thu 11:50 - [https://etherpad.openstack.org/p/juno-infra-storyboard StoryBoard: current status &amp;amp; Juno plans]&lt;br /&gt;
* Fri 9:50 - [https://etherpad.openstack.org/p/juno-openid Replace Launchpad OpenID authentication]&lt;br /&gt;
* Fri 10:50 - [https://etherpad.openstack.org/p/translation-platform-discussion Translation platform discussion]&lt;br /&gt;
&lt;br /&gt;
== Ironic ==&lt;br /&gt;
&lt;br /&gt;
* Tues 11:15 [https://etherpad.openstack.org/p/juno-summit-ironic-python-agent Ironic Python Agent]&lt;br /&gt;
* Tues 12:05 [https://etherpad.openstack.org/p/juno-summit-ironic-multitenancy Hardware Multitenancy Risk Mitigation]&lt;br /&gt;
* Tues 14:50 [https://etherpad.openstack.org/p/juno-summit-ironic-performance Performance and Scalability]&lt;br /&gt;
* Tues 15:40 [https://etherpad.openstack.org/p/juno-summit-ironic-arch Planning changes for Juno]&lt;br /&gt;
&lt;br /&gt;
== Keystone ==&lt;br /&gt;
&lt;br /&gt;
* Wed 11:50-12:30 [https://etherpad.openstack.org/p/juno-keystone-hierarchical-multitenancy Hierarchical Multitenancy]&lt;br /&gt;
* Wed 13:50-14:30 [https://etherpad.openstack.org/p/juno-keystone-devops DevOps]&lt;br /&gt;
* Wed 14:40-15:20 [https://etherpad.openstack.org/p/juno-keystone-client python-keystoneclient]&lt;br /&gt;
* Thurs 11:50-12:30 [https://etherpad.openstack.org/p/juno-keystone-authorization Authorization]&lt;br /&gt;
* Thurs 13:30-14:10 [https://etherpad.openstack.org/p/juno-keystone-federation Federation]&lt;br /&gt;
* Thurs 14:20-15:00 [https://etherpad.openstack.org/p/juno-keystone-locally-managed-identities Locally-managed identities]&lt;br /&gt;
* Fri 11:40-12:20 [https://etherpad.openstack.org/p/juno-keystone-user-ids User &amp;amp; Group IDs]&lt;br /&gt;
* Fri 13:20-14:00 [https://etherpad.openstack.org/p/juno-keystone-service-catalog Service Catalog]&lt;br /&gt;
&lt;br /&gt;
== Marconi ==&lt;br /&gt;
&lt;br /&gt;
* Tues 14:50 - [https://etherpad.openstack.org/p/juno-marconi-queue-flavors Queue Flavors]&lt;br /&gt;
* Tues 15:40 - [https://etherpad.openstack.org/p/juno-marconi-notifications-on-marconi Notifications on Marconi]&lt;br /&gt;
* Tues 16:40 - [https://etherpad.openstack.org/p/ATL-marconi-ops Marconi Dev/Ops Session]&lt;br /&gt;
* Tues 17:30 - [https://etherpad.openstack.org/p/juno-marconi-scale-single-queue Scaling an Individual Queue]&lt;br /&gt;
&lt;br /&gt;
== Neutron ==&lt;br /&gt;
* Wed 9:00-9:40: [https://etherpad.openstack.org/p/juno-neutron-policies New Policies for Neutron in Juno]&lt;br /&gt;
* Wed 9:50-10:30: [https://etherpad.openstack.org/p/juno-neutron-code-review Code Review Process Improvements]&lt;br /&gt;
* Wed 11:00-11:40: [https://etherpad.openstack.org/p/neutron-ipv6-atlanta-summit IPv6 status in Neutron]&lt;br /&gt;
* Wed 11:50-12:30: [https://etherpad.openstack.org/p/ML2_Juno_Roadmap ML2 Juno Roadmap] and [https://etherpad.openstack.org/p/ML2_mechanismdriver_extensions_support Extensions Support In ML2 Mechanism Drivers]&lt;br /&gt;
* Wed 13:50-14:30: Refactoring the Neutron Server Core&lt;br /&gt;
* Wed 14:40-15:20: [https://etherpad.openstack.org/p/novanet-neutron-migration Nova-Net to Neutron migration]&lt;br /&gt;
* Wed 15:30-14:10: Integrating Tasks into Neutron&lt;br /&gt;
* Wed 16:30-17:10: [https://etherpad.openstack.org/p/juno-advanced-services Advanced Services] and [https://etherpad.openstack.org/p/juno-virtual-resource-for-service-chaining Virtual Resource for Service Chaining]&lt;br /&gt;
* Wed 17:20-18:00: [https://etherpad.openstack.org/p/Distributed-Virtual-Router Neutron Distributed Virtual Router Progress Update]&lt;br /&gt;
* Thu 9:00-9:40: [https://etherpad.openstack.org/p/TempestAndNeutronJuno Neutron QA and Testing]&lt;br /&gt;
* Thu 9:50-10:30: [https://etherpad.openstack.org/p/juno-neutron-responsibilities Sharing the load of operational responsibility]&lt;br /&gt;
* Thu 11:00-11:40: Neutron LBaaS Update&lt;br /&gt;
* Thur 11:50-12:30: [https://etherpad.openstack.org/p/juno-neutron-modular-l2-agent Modular Layer2 Agents]&lt;br /&gt;
* Fri 10:50-11:30: [https://etherpad.openstack.org/p/group-based-policy Neutron Group Based Policy]&lt;br /&gt;
* Fri 11:40-12:30: [https://etherpad.openstack.org/p/juno-fwaas FWaaS] and [https://etherpad.openstack.org/p/juno-vpnaas VPNaaS]&lt;br /&gt;
* Fri 13:20-14:00: LBaaS SSL L7 and automated scenarios&lt;br /&gt;
* Fri 14:10-14:50: [https://etherpad.openstack.org/p/hierarchical_network_topology Hierarchical Network Topologies]&lt;br /&gt;
* Fri 15:00-15:40: [https://etherpad.openstack.org/p/L3-vendor-plugins L3 Vendor Plugins]&lt;br /&gt;
* Fri 16:00-16:40: [https://etherpad.openstack.org/p/juno-dynamic-routing Dynamic routing] and [https://etherpad.openstack.org/p/juno-neutron-pluggable-external-network pluggable external networks]&lt;br /&gt;
* Fri 16:50-17:30: [https://etherpad.openstack.org/p/servicevm Service VM Discussion]&lt;br /&gt;
&lt;br /&gt;
== Nova ==&lt;br /&gt;
&lt;br /&gt;
'''Wednesday, May 14'''&lt;br /&gt;
 &lt;br /&gt;
* 9:00am [https://etherpad.openstack.org/p/juno-nova-third-party-ci Continuation of third party CI]&lt;br /&gt;
* 9:50am [https://etherpad.openstack.org/p/juno-nova-clustered-hypervisor-support Clustered hypervisor support in Nova]&lt;br /&gt;
* 11:00am [https://etherpad.openstack.org/p/juno-nova-deprecating-baremetal The road to deprecating nova.virt.baremetal]&lt;br /&gt;
* 11:50am [https://etherpad.openstack.org/p/juno-nova-data-transfer-service Data transfer service plug-in]&lt;br /&gt;
* 1:50pm [https://etherpad.openstack.org/p/juno-nova-live-upgrade Next steps in live upgrade]&lt;br /&gt;
* 2:40pm [https://etherpad.openstack.org/p/juno-nova-image-precaching Image precaching service]&lt;br /&gt;
* 3:30pm [https://etherpad.openstack.org/p/juno-nova-flavor-storage-revamp Flavor storage re-vamp]&lt;br /&gt;
* 4:30pm [https://etherpad.openstack.org/p/juno-nova-cross-project-interactions Rethinking cross project interactions]&lt;br /&gt;
* 5:20pm [https://etherpad.openstack.org/p/juno-nova-v2-on-v3-api-poc Nova V2 on V3 API implementation POC]&lt;br /&gt;
 &lt;br /&gt;
'''Thursday, May 15'''&lt;br /&gt;
 &lt;br /&gt;
* 9:00am [https://etherpad.openstack.org/p/juno-nova-hypev-new-features Hyper-V Driver new features]&lt;br /&gt;
* 9:50am [https://etherpad.openstack.org/p/juno-nova-libvirt-driver-roadmap Libvirt driver roadmap for Juno]&lt;br /&gt;
* 11:00am [https://etherpad.openstack.org/p/juno-nova-kvm-live-migration Improve performance of live migration on KVM]&lt;br /&gt;
* 11:50am [https://etherpad.openstack.org/p/juno-nova-conductor-api limited conductor API]&lt;br /&gt;
* 1:30pm [https://etherpad.openstack.org/p/juno-nova-quota-state-management Implementing state management for quotas]&lt;br /&gt;
* 2:20pm [https://etherpad.openstack.org/p/juno-nova-multi-volume-snapshots Multi-Volume Snapshots]&lt;br /&gt;
* 3:10pm [https://etherpad.openstack.org/p/juno-nova-hypervisor-power-mgmt Hypervisor power management]&lt;br /&gt;
* 4:10pm [https://etherpad.openstack.org/p/juno-nova-sriov-support SR-IOV support]&lt;br /&gt;
* 5:00pm [https://etherpad.openstack.org/p/juno-nova-v3-api Nova V3 API]&lt;br /&gt;
 &lt;br /&gt;
'''Friday, May 16'''&lt;br /&gt;
 &lt;br /&gt;
* 9:00am [https://etherpad.openstack.org/p/juno-nova-vmware-driver-roadmap Vmwareapi driver roadmap for Juno]&lt;br /&gt;
* 9:50am [https://etherpad.openstack.org/p/juno-nova-docker-driver-features Docker driver - features &amp;amp; testing]&lt;br /&gt;
* 10:50am [https://etherpad.openstack.org/p/juno-nova-gantt-apis Future of Gantt APIs and interfaces]&lt;br /&gt;
* 11:40am [https://etherpad.openstack.org/p/juno-nova-no-db-scheduler Common no DB Scheduler]&lt;br /&gt;
* 1:20pm [https://etherpad.openstack.org/p/juno-nova-scheduling-server-groups Simultaneous Scheduling for Server Groups]&lt;br /&gt;
* 2:10pm [https://etherpad.openstack.org/p/juno-nova-scheduler-hints-vm-lifecycle Scheduler hints for VM life cycle]&lt;br /&gt;
* 3:00pm [https://etherpad.openstack.org/p/juno-nova-devops Nova Dev/Ops Session]&lt;br /&gt;
* 4:00pm [https://etherpad.openstack.org/p/juno-nova-unsession Unsession]&lt;br /&gt;
&lt;br /&gt;
== Ops ==&lt;br /&gt;
* Mon 1115 – 1155   [https://etherpad.openstack.org/p/juno-summit-ops-askthedevs Ask the devs: Meet the PTLs and TC, How to get the best out of the design summit]&lt;br /&gt;
* Mon 1205 – 1245  [https://etherpad.openstack.org/p/juno-summit-ops-reasonabledefaults Reasonable Defaults]&lt;br /&gt;
* Mon 1400 – 1440  [https://etherpad.openstack.org/p/juno-summit-ops-upgradesdeployment Upgrades and Deployment Approaches]&lt;br /&gt;
* Mon 1450 – 1620  [https://etherpad.openstack.org/p/juno-summit-ops-architecture Architecture Show and Tell, Tales and Fails]&lt;br /&gt;
* Mon 1640 – 1720  [https://etherpad.openstack.org/p/juno-summit-ops-networking Networking]&lt;br /&gt;
* Mon 1730 – 1810   [https://etherpad.openstack.org/p/juno-summit-ops-security Security]&lt;br /&gt;
&lt;br /&gt;
* Fri 9:00 – 9:40    [https://etherpad.openstack.org/p/juno-summit-ops-enterprise Enterprise Gaps]&lt;br /&gt;
* Fri 9:50 – 10:30   [https://etherpad.openstack.org/p/juno-summit-ops-database Database]&lt;br /&gt;
* Fri 10:50 – 11:30  [https://etherpad.openstack.org/p/juno-summit-ops-issuesatscale Issues at Scale]&lt;br /&gt;
* Fri 11:40 – 12:20  [https://etherpad.openstack.org/p/juno-summit-ops-meta Meta Discussion – ops communication and governance]&lt;br /&gt;
* Fri 1:20 – 2:00  [https://etherpad.openstack.org/p/juno-summit-ops-ansible Ansible]&lt;br /&gt;
* Fri 2:10 – 2:50  [https://etherpad.openstack.org/p/juno-summit-ops-chef Chef]&lt;br /&gt;
* Fri 3:00 – 3:40  [https://etherpad.openstack.org/p/juno-summit-ops-puppet Puppet]&lt;br /&gt;
* Fri 4:00 – 4:30  [https://etherpad.openstack.org/p/juno-summit-ops-monitoringlogging Monitoring and Logging]&lt;br /&gt;
&lt;br /&gt;
== Oslo ==&lt;br /&gt;
* Wed 9:00 - 9:40 [https://etherpad.openstack.org/p/juno-oslo-release-plan Release Plan for Low-level Libraries]&lt;br /&gt;
* Wed 9:50 - 10:30 [https://etherpad.openstack.org/p/juno-oslo-messaging oslo.messaging status and plans for Juno]&lt;br /&gt;
* Wed 11:00 - 11:40 [https://etherpad.openstack.org/p/olso.messaging_amqp_1.0 AMQP 1.0 protocol driver]&lt;br /&gt;
* Thu 9:00 - 9:40 Oslo Library Teams Breakout Session&lt;br /&gt;
* Thu 9:50 - 10:30 [https://etherpad.openstack.org/p/juno-infra-library-testing Testing pre-releases of Oslo libs with apps]&lt;br /&gt;
* Thu 11:00 - 11:40 [https://etherpad.openstack.org/p/juno-osprofiler OpenStack cross service/project OpenStack profiler]&lt;br /&gt;
* Thu 15:10 - 16:00 [https://etherpad.openstack.org/p/juno-oslo-bayer Upstream chat with Mike Bayer]&lt;br /&gt;
* Thu 16:10 - 17:00 [https://etherpad.openstack.org/p/juno-summit-oslo-messaging-rpc-proxy rpc proxy(oslo.messaging)]&lt;br /&gt;
* Fri 14:10 - 15:50 [https://etherpad.openstack.org/p/juno-summit-oslo-rootwrap oslo.rootwrap: performance and other improvements]&lt;br /&gt;
* Fri 15:00 - 16:40 [https://etherpad.openstack.org/p/juno-oslo-semantic-versioning Semantic versioning and oslo]&lt;br /&gt;
* Fri 16:00 - 16:40  [https://etherpad.openstack.org/p/juno-oslo-pki-for-messaging PKI for messaging]&lt;br /&gt;
&lt;br /&gt;
== QA ==&lt;br /&gt;
&lt;br /&gt;
'''Wednesday'''&lt;br /&gt;
* 2:40 – 3:20 [https://etherpad.openstack.org/p/juno-summit-branchless-tempest Branchless Tempest]&lt;br /&gt;
* 3:30 – 4:10 [https://etherpad.openstack.org/p/juno-summit-tempest-documentation Tempest Documentation Gaps]&lt;br /&gt;
* 4:30 – 5:10 [https://etherpad.openstack.org/p/juno-qa-functional-api Functional API Testing - post dev QA vs TDD]&lt;br /&gt;
* 5:20 – 6:00 [https://etherpad.openstack.org/p/juno-rally-and-tempest Rally and Tempest Integration]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Thursday'''&lt;br /&gt;
* 1:30 – 2:10  [https://etherpad.openstack.org/p/juno-summit-api-tests-with-jsonschema API tests with JSONSchema]&lt;br /&gt;
* 2:20 – 3:00 [https://etherpad.openstack.org/p/juno-summit-negative-fuzzy-testing Negative Testing: Fuzzy Test Framework]&lt;br /&gt;
* 3:10 – 3:50 [https://etherpad.openstack.org/p/juno-summit-improve-ux-tools How to improve the UX of our Testing Tools]&lt;br /&gt;
* 4:10 – 4:50 [https://etherpad.openstack.org/p/juno-summit-tempest-gui-client-server Tempest, GUI, Client, Server]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Friday'''&lt;br /&gt;
* 1:20 – 2:00 [https://etherpad.openstack.org/p/juno-summit-grenade Grenade Current Status and Next Steps]&lt;br /&gt;
* 2:10 – 2:50 [https://etherpad.openstack.org/p/juno-summit-qa-policy QA Program Policy and Changes in Juno]&lt;br /&gt;
&lt;br /&gt;
== Release Management ==&lt;br /&gt;
&lt;br /&gt;
* Wednesday 1:50pm [https://etherpad.openstack.org/p/juno-summit-release-branches Release branches, QA and requirements]&lt;br /&gt;
* Thursday 9:00am [https://etherpad.openstack.org/p/juno-summit-vmt Vulnerability management in Juno]&lt;br /&gt;
* Thursday 5:00pm [https://etherpad.openstack.org/p/StableIcehouse Stable branches maintenance]&lt;br /&gt;
* Friday 3:00pm [https://etherpad.openstack.org/p/juno-summit-release-schedule Juno release schedule and processes]&lt;br /&gt;
* Friday 4:50pm [https://etherpad.openstack.org/p/juno-summit-feedback Design Summit feedback]&lt;br /&gt;
&lt;br /&gt;
== Sahara (ex. Savanna) ==&lt;br /&gt;
&lt;br /&gt;
* [http://junodesignsummit.sched.org/event/b4f52627efa42f285978d5af3643e189 Thu 13:30] [https://etherpad.openstack.org/p/juno-summit-sahara-relmngmt-backward Releasing and backward compatibility]&lt;br /&gt;
* [http://junodesignsummit.sched.org/event/c8774beefd9e9188a3e0729d2bd7131e Thu 14:20] [https://etherpad.openstack.org/p/juno-summit-sahara-testing-plugins CI/gating and plugin requirements]&lt;br /&gt;
* [http://junodesignsummit.sched.org/event/10bc9a23eb43eb9df885586035fb2491 Thu 15:10] [https://etherpad.openstack.org/p/juno-summit-sahara-scale-integration Scalable Sahara and further OpenStack integration]&lt;br /&gt;
* [http://junodesignsummit.sched.org/event/be842178a085fe95b7665a653f8ab541 Thu 16:10] [https://etherpad.openstack.org/p/juno-summit-sahara-ux UX improvements]&lt;br /&gt;
* [http://junodesignsummit.sched.org/event/dfa603324c0bbf29c2f09a77efb82d1d Thu 17:00] [https://etherpad.openstack.org/p/juno-summit-sahara-edp Future of EDP: plugins, SPI, Oozie]&lt;br /&gt;
* [http://junodesignsummit.sched.org/event/a64f771cf28ed3ad637730db828668ff Fri 09:00] [https://etherpad.openstack.org/p/juno-summit-sahara-v2-api Next major REST API - v2]&lt;br /&gt;
* [http://junodesignsummit.sched.org/event/49089a1d9c8203c6a4c1f0001fa417af Fri 09:50] [https://etherpad.openstack.org/p/juno-summit-sahara-roadmap-retro Sahara in Icehouse and Juno]&lt;br /&gt;
&lt;br /&gt;
== Swift ==&lt;br /&gt;
== TripleO (Deployment) ==&lt;br /&gt;
* Fri 11:40 - 12:20 [https://etherpad.openstack.org/p/juno-summit-tripleo-tuskar-planning TripleO Tuskar Planning]&lt;br /&gt;
* Fri 13:20 - 14:00 [https://etherpad.openstack.org/p/juno-summit-tripleo-environment TripleO Development and Testing Environment]&lt;br /&gt;
* Fri 14:10 - 14:50   [https://etherpad.openstack.org/p/juno-summit-tripleo-and-docker TripleO and Docker]&lt;br /&gt;
* Fri 15:00 - 15:40   [https://etherpad.openstack.org/p/juno-summit-tripleo-ci TripleO CI]&lt;br /&gt;
* Fri 16:00 - 16:40   [https://etherpad.openstack.org/p/juno-summit-tripleo-neutron TripleO and Neutron]&lt;br /&gt;
* Fri 16:50 - 17:30   [https://etherpad.openstack.org/p/juno-summit-tripleo-devops TripleO Dev/Ops Session]&lt;br /&gt;
&lt;br /&gt;
== Trove ==&lt;br /&gt;
== User Committee ==&lt;br /&gt;
== Other Projects ==&lt;br /&gt;
* [http://junodesignsummit.sched.org/event/e04c26e2a5df3a5089b2ed701d2aac3b Tue 11:15 - 11:55] [https://etherpad.openstack.org/p/juno-101 Design Summit 101]&lt;br /&gt;
* [http://junodesignsummit.sched.org/event/6f9fe2ec2e6d3843139663a350cdc511 Tue 17:30 - 18:10] [https://etherpad.openstack.org/p/juno-summit-discovery-and-diagnostic-for-openstack Discovery and Diagnostic for OpenStack]&lt;br /&gt;
* [http://junodesignsummit.sched.org/event/ab6d8eed3c6fd85dc450c099aba22e11 Tue 12:05 - 12:45] [https://etherpad.openstack.org/p/juno-design-summit-designate-session-1 Designate Session 1]&lt;br /&gt;
* Tue 16:40 - 19:20 [https://etherpad.openstack.org/p/juno-summit-resource-reservation Climate, Resource Reservation for the OpenStack]&lt;br /&gt;
* [http://openstacksummitmay2014atlanta.sched.org/event/6e53527347d56d67120decd49bbac53b Wed 13:50 - 17:20] [https://etherpad.openstack.org/p/SolumSummitAgenda Solum Session]&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=Design_Summit/Juno/Etherpads&amp;diff=52169</id>
		<title>Design Summit/Juno/Etherpads</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=Design_Summit/Juno/Etherpads&amp;diff=52169"/>
				<updated>2014-05-13T12:34:13Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: Design summit 101&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Summit]]&lt;br /&gt;
[[Category:Juno]]&lt;br /&gt;
[[Category:Etherpad]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;column-count:3;-moz-column-count:3;-webkit-column-count:3&amp;quot;&amp;gt;&lt;br /&gt;
__TOC__&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Barbican ==&lt;br /&gt;
&lt;br /&gt;
* Tue 1115-1155 [https://etherpad.openstack.org/p/barbican-events Barbican Events]&lt;br /&gt;
* Tue 1205-1245 [https://etherpad.openstack.org/p/barbican-kite Kite]&lt;br /&gt;
* Tue 1640-1720 [https://etherpad.openstack.org/p/barbican-plugins Barbican Plug-in Architecture]&lt;br /&gt;
* Tue 1730-1810 [https://etherpad.openstack.org/p/barbican-asym Barbican SSL/TLS Workflow]&lt;br /&gt;
&lt;br /&gt;
== Ceilometer ==&lt;br /&gt;
&lt;br /&gt;
* Wed 0900-0940 [https://etherpad.openstack.org/p/ceilometer-agent-repartition Ceilometer agents repartition]&lt;br /&gt;
* Wed 0950-1030 [https://etherpad.openstack.org/p/ceilometer-test-strategy Improve Ceilometer test strategy]&lt;br /&gt;
* Wed 1100-1140 Complex query on Ceilometer stats &amp;amp; project-specific meters&lt;br /&gt;
* Wed 1150-1230 [https://etherpad.openstack.org/p/ceilometer-tsdaas Rethinking Ceilometer as Time-Series-Data-as-a-Service]&lt;br /&gt;
* Wed 1350-1430 [https://etherpad.openstack.org/p/ceilometer-schema Revise Ceilometer data model to improve performance]&lt;br /&gt;
* Wed 1440-1520 Ceilometer Dev/Ops Session&lt;br /&gt;
* Wed 1530-1610 [https://etherpad.openstack.org/p/ceilometer-snmp-inspector Ceilometer SNMP improvements &amp;amp; code-free meters]&lt;br /&gt;
* Wed 1630-1710 [https://etherpad.openstack.org/p/ceilometer-alarm-and-log-improvments Ceilometer alarm evaluation improvements &amp;amp; effective logging]&lt;br /&gt;
* Wed 1720-1800 Ironic and Ceilometer&lt;br /&gt;
* Thurs 0900-0940 [https://etherpad.openstack.org/p/juno-summit-metering-network-services Deploying Ceilometer w/ TripleO &amp;amp; Metering Network Services]&lt;br /&gt;
&lt;br /&gt;
== Cinder ==&lt;br /&gt;
&lt;br /&gt;
* Thurs 15.30-16:10 [https://etherpad.openstack.org/p/juno-cinder-backup-restore Volume Backup\Restore]&lt;br /&gt;
* Thurs 16:10-16:50 [https://etherpad.openstack.org/p/juno-cinder-volume-replication Volume Replication]&lt;br /&gt;
* Thurs 17:00-17:40 [https://etherpad.openstack.org/p/juno-cinder-DRBD DRBD For Cinder-Volumes]&lt;br /&gt;
* Friday 09:00-09:40 [https://etherpad.openstack.org/p/juno-cinder-nfs-in-cinder NFS and its role within Cinder]&lt;br /&gt;
* Friday 10:00-10:40 [https://etherpad.openstack.org/p/juno-cinder-cinder-consistency-groups Adding Consistency Groups to Cinder]&lt;br /&gt;
* Friday 10:50-11:30 [https://etherpad.openstack.org/p/juno-cinder-3rd-party-cert-and-verification 3'rd party certificiation and CI systems]&lt;br /&gt;
* Friday 11:40-12:20 [https://etherpad.openstack.org/p/juno-cinder-changed-block-list Changed Block List for Cinder Volumes]&lt;br /&gt;
* Friday 13:20-14:00 [https://etherpad.openstack.org/p/juno-cinder-state-and-workflow-management Cinder State and Workflow Management]&lt;br /&gt;
* Friday 14:10-14:50 [https://etherpad.openstack.org/p/juno-cinder-framework-for-state-reporting Framework for detailed Volume Stats reporting]&lt;br /&gt;
* Friday 15:00-15:40 [https://etherpad.openstack.org/p/juno-cinder-multiple-pools-per-backend Mulitple Pools per Cinder Backend]&lt;br /&gt;
* Friday 16:00-16:40 [https://etherpad.openstack.org/p/juno-cinder-whats-a-cinder-driver What is a Cinder Driver]&lt;br /&gt;
&lt;br /&gt;
==Cross-Project==&lt;br /&gt;
* Tues 11:15-11:55 [https://etherpad.openstack.org/p/juno-cross-project-future-of-python The Future of Python Support]&lt;br /&gt;
* Tues 11:15-11:55 [https://etherpad.openstack.org/p/9XQ7Q2NQdv Solum, Murano, Heat: how to handle app lifecycle ?]&lt;br /&gt;
* Tues 11:15-12:45 [https://etherpad.openstack.org/p/juno-cross-project-consistency-across-rest-apis Consistency Across OpenStack REST APIs]&lt;br /&gt;
* Tues 14:00-14:40 [https://etherpad.openstack.org/p/juno-cross-oslo-library-releases New Oslo Library Releases and Your Project]&lt;br /&gt;
* Tues 14:00-14:40 [https://etherpad.openstack.org/p/juno-dealing-rejections Dealing with changes of plans, rejections and more]&lt;br /&gt;
* Tues 14:50-15:30 [https://etherpad.openstack.org/p/openstack-and-its-cla Taking another look at our CLA]&lt;br /&gt;
* Tues 14:50-15.30[https://etherpad.openstack.org/p/juno-summit-cross-project-user-experience User Experience Designers Gathering]&lt;br /&gt;
* Tues 15:40-16:20 [https://etherpad.openstack.org/p/juno-cross-project-quota-management-endpoint Cross-project Quota Management Service Endpoint]&lt;br /&gt;
* Tues 15:40 [https://etherpad.openstack.org/p/juno-cross-project-tracking-features Tracking incoming features]&lt;br /&gt;
* Tues 16:40 [https://etherpad.openstack.org/p/juno-summit-gate How do we make it easier to fix the Gate?]&lt;br /&gt;
* Tues 16:40 [https://etherpad.openstack.org/p/juno-summit-openstackclient Clients and SDKs Part I]&lt;br /&gt;
* Tues 17:30 [https://etherpad.openstack.org/p/juno-test-maxtrices Test Matrices and Feature Parity]&lt;br /&gt;
* Tues 17:30 [https://etherpad.openstack.org/p/juno-summit-sdk Clients and SDKs Part II]&lt;br /&gt;
&lt;br /&gt;
== Devstack ==&lt;br /&gt;
* Fri 16:00 [https://etherpad.openstack.org/p/juno-summit-devstack-update DevStack Update]&lt;br /&gt;
* Fri 16:50 [https://etherpad.openstack.org/p/juno-summit-devstack-project-support DevStack Project Support]&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
&lt;br /&gt;
* Tues 11:05 B304 [https://etherpad.openstack.org/p/summit-session-cross-project-docs Cross-Project Documentation]&lt;br /&gt;
* Wed 09:00 [https://etherpad.openstack.org/p/installation-guide-audit Installation Guide Discussion]&lt;br /&gt;
* Thu 09:50 [https://etherpad.openstack.org/p/summit0514-session-patching-the-docs-process Patching the Documentation Process]&lt;br /&gt;
* Fri 09:00 [https://etherpad.openstack.org/p/summit-b301-ci-doc-automation Continuous Publishing and Automation for Docs]&lt;br /&gt;
* Fri 11:40 [http://junodesignsummit.sched.org/event/bd8428a881229a747d9c2c3cab96e1b2#.U3Eitq1dU0w Beef Up User and Operations Guides for Integrated]&lt;br /&gt;
&lt;br /&gt;
== Glance ==&lt;br /&gt;
* Wed 5:20-6:00: [https://etherpad.openstack.org/p/juno-hot-artifacts-repository-finalize-design Hot/Artifacts repository finalize design]&lt;br /&gt;
* Thur 9:00-9:40: [https://etherpad.openstack.org/p/juno-glance-store-and-future-features Glance Store and Future Features]&lt;br /&gt;
* Thur 9:50-10:30: [https://etherpad.openstack.org/p/juno-tasks-review-and-taskflow Task Review and Taskflow]&lt;br /&gt;
* Thur 11:00-11:40: [https://etherpad.openstack.org/p/juno-adding-functional-operations-to-glance-api Adding functional operations to Glance API]&lt;br /&gt;
* Thur 11:50-12:30: [https://etherpad.openstack.org/p/juno-poking-image-filesystem Poking Image Filesystem]&lt;br /&gt;
&lt;br /&gt;
== Heat ==&lt;br /&gt;
&lt;br /&gt;
* Wed 9.00-9:40 [https://etherpad.openstack.org/p/juno-summit-heat-dev-ops Dev/Ops Session]&lt;br /&gt;
* Wed 9.50-10:30 [https://etherpad.openstack.org/p/juno-summit-heat-sw-orch Next Steps for Software Orchestration]&lt;br /&gt;
* Wed 11.00-11:40 [https://etherpad.openstack.org/p/heat-workflow-vs-convergence Scaling, Robustness and Convergence]&lt;br /&gt;
* Wed 11.50-12:30 [https://etherpad.openstack.org/p/juno-summit-heat-notifications Augmenting Polling with Notifications]&lt;br /&gt;
* Wed 13.50-14:30 [https://etherpad.openstack.org/p/juno-summit-heat-event Event notifications]&lt;br /&gt;
* Wed 14.40-15:20 [https://etherpad.openstack.org/p/juno-summit-heat-callbacks Stack and Resource lifecycle callbacks]&lt;br /&gt;
* Wed 15.30-16:10 [https://etherpad.openstack.org/p/juno-summit-heat-api-v2 API v2]&lt;br /&gt;
* Wed 16.30-17:10 [https://etherpad.openstack.org/p/juno-summit-heat-plugin-versioning Resource Plugin Versioning]&lt;br /&gt;
&lt;br /&gt;
== Horizon ==&lt;br /&gt;
* Wed 15:30-16:10 [https://etherpad.openstack.org/p/juno-summit-horizon-static-files Handling of static files]&lt;br /&gt;
* Wed 16:30-17:10 [https://etherpad.openstack.org/p/juno-summit-horizon-widgets Modular, widget-based views and more pluggability]&lt;br /&gt;
* Wed 17:20-18:00 [https://etherpad.openstack.org/p/juno-summit-horizon-client-side Client side development]&lt;br /&gt;
* Thu 17:00-17:40 [https://etherpad.openstack.org/p/juno-summit-horizon-tuskar-ui Tuskar-UI and its relationship to Horizon]&lt;br /&gt;
* Fri 09:00-09:40 [https://etherpad.openstack.org/p/juno-summit-horizon-usability-test-results Review Horizon Usability Test feedback, proposals]&lt;br /&gt;
* Fri 9:50-10:30 [https://etherpad.openstack.org/p/juno-summit-overview-page-horizon Better Overview Pages]&lt;br /&gt;
* Fri 9:50-10:30 [https://etherpad.openstack.org/p/Dashboard_Accessibility Dashboard Accessibility]&lt;br /&gt;
* Fri 10:50-11:30 [https://etherpad.openstack.org/p/juno-summit-horizon-devops Horizon Dev/Ops Session]&lt;br /&gt;
&lt;br /&gt;
== Infrastructure ==&lt;br /&gt;
* Wed 9:50 - [https://etherpad.openstack.org/p/juno-summit-elastic-recheck Elastic Recheck next steps]&lt;br /&gt;
* Wed 11:00 - [https://etherpad.openstack.org/p/juno-summit-jenkins-moving-forward Jenkins moving forward]&lt;br /&gt;
* Wed 11:50 - [https://etherpad.openstack.org/p/juno-infra-improving-3rd-party-testing Improving Third Party Testing]&lt;br /&gt;
* Thu 11:00 - [https://etherpad.openstack.org/p/juno-infra-design-Vinz-review-system Discussion/design talk of Vinz code review system]&lt;br /&gt;
* Thu 11:50 - [https://etherpad.openstack.org/p/juno-infra-storyboard StoryBoard: current status &amp;amp; Juno plans]&lt;br /&gt;
* Fri 9:50 - [https://etherpad.openstack.org/p/juno-openid Replace Launchpad OpenID authentication]&lt;br /&gt;
* Fri 10:50 - [https://etherpad.openstack.org/p/translation-platform-discussion Translation platform discussion]&lt;br /&gt;
&lt;br /&gt;
== Ironic ==&lt;br /&gt;
&lt;br /&gt;
* Tues 11:15 [https://etherpad.openstack.org/p/juno-summit-ironic-python-agent Ironic Python Agent]&lt;br /&gt;
* Tues 12:05 [https://etherpad.openstack.org/p/juno-summit-ironic-multitenancy Hardware Multitenancy Risk Mitigation]&lt;br /&gt;
* Tues 14:50 [https://etherpad.openstack.org/p/juno-summit-ironic-performance Performance and Scalability]&lt;br /&gt;
* Tues 15:40 [https://etherpad.openstack.org/p/juno-summit-ironic-arch Planning changes for Juno]&lt;br /&gt;
&lt;br /&gt;
== Keystone ==&lt;br /&gt;
&lt;br /&gt;
* Wed 11:50-12:30 [https://etherpad.openstack.org/p/juno-keystone-hierarchical-multitenancy Hierarchical Multitenancy]&lt;br /&gt;
* Wed 13:50-14:30 [https://etherpad.openstack.org/p/juno-keystone-devops DevOps]&lt;br /&gt;
* Wed 14:40-15:20 [https://etherpad.openstack.org/p/juno-keystone-client python-keystoneclient]&lt;br /&gt;
* Thurs 11:50-12:30 [https://etherpad.openstack.org/p/juno-keystone-authorization Authorization]&lt;br /&gt;
* Thurs 13:30-14:10 [https://etherpad.openstack.org/p/juno-keystone-federation Federation]&lt;br /&gt;
* Thurs 14:20-15:00 [https://etherpad.openstack.org/p/juno-keystone-locally-managed-identities Locally-managed identities]&lt;br /&gt;
* Fri 11:40-12:20 [https://etherpad.openstack.org/p/juno-keystone-user-ids User &amp;amp; Group IDs]&lt;br /&gt;
* Fri 13:20-14:00 [https://etherpad.openstack.org/p/juno-keystone-service-catalog Service Catalog]&lt;br /&gt;
&lt;br /&gt;
== Marconi ==&lt;br /&gt;
&lt;br /&gt;
* Tues 14:50 - [https://etherpad.openstack.org/p/juno-marconi-queue-flavors Queue Flavors]&lt;br /&gt;
* Tues 15:40 - [https://etherpad.openstack.org/p/juno-marconi-notifications-on-marconi Notifications on Marconi]&lt;br /&gt;
* Tues 16:40 - [https://etherpad.openstack.org/p/ATL-marconi-ops Marconi Dev/Ops Session]&lt;br /&gt;
* Tues 17:30 - [https://etherpad.openstack.org/p/juno-marconi-scale-single-queue Scaling an Individual Queue]&lt;br /&gt;
&lt;br /&gt;
== Neutron ==&lt;br /&gt;
* Wed 9:00-9:40: [https://etherpad.openstack.org/p/juno-neutron-policies New Policies for Neutron in Juno]&lt;br /&gt;
* Wed 9:50-10:30: [https://etherpad.openstack.org/p/juno-neutron-code-review Code Review Process Improvements]&lt;br /&gt;
* Wed 11:00-11:40: [https://etherpad.openstack.org/p/neutron-ipv6-atlanta-summit IPv6 status in Neutron]&lt;br /&gt;
* Wed 11:50-12:30: [https://etherpad.openstack.org/p/ML2_Juno_Roadmap ML2 Juno Roadmap] and [https://etherpad.openstack.org/p/ML2_mechanismdriver_extensions_support Extensions Support In ML2 Mechanism Drivers]&lt;br /&gt;
* Wed 13:50-14:30: Refactoring the Neutron Server Core&lt;br /&gt;
* Wed 14:40-15:20: [https://etherpad.openstack.org/p/novanet-neutron-migration Nova-Net to Neutron migration]&lt;br /&gt;
* Wed 15:30-14:10: Integrating Tasks into Neutron&lt;br /&gt;
* Wed 16:30-17:10: [https://etherpad.openstack.org/p/juno-advanced-services Advanced Services] and [https://etherpad.openstack.org/p/juno-virtual-resource-for-service-chaining Virtual Resource for Service Chaining]&lt;br /&gt;
* Wed 17:20-18:00: [https://etherpad.openstack.org/p/Distributed-Virtual-Router Neutron Distributed Virtual Router Progress Update]&lt;br /&gt;
* Thu 9:00-9:40: [https://etherpad.openstack.org/p/TempestAndNeutronJuno Neutron QA and Testing]&lt;br /&gt;
* Thu 9:50-10:30: [https://etherpad.openstack.org/p/juno-neutron-responsibilities Sharing the load of operational responsibility]&lt;br /&gt;
* Thu 11:00-11:40: Neutron LBaaS Update&lt;br /&gt;
* Thur 11:50-12:30: [https://etherpad.openstack.org/p/juno-neutron-modular-l2-agent Modular Layer2 Agents]&lt;br /&gt;
* Fri 10:50-11:30: [https://etherpad.openstack.org/p/group-based-policy Neutron Group Based Policy]&lt;br /&gt;
* Fri 11:40-12:30: [https://etherpad.openstack.org/p/juno-fwaas FWaaS] and [https://etherpad.openstack.org/p/juno-vpnaas VPNaaS]&lt;br /&gt;
* Fri 13:20-14:00: LBaaS SSL L7 and automated scenarios&lt;br /&gt;
* Fri 14:10-14:50: [https://etherpad.openstack.org/p/hierarchical_network_topology Hierarchical Network Topologies]&lt;br /&gt;
* Fri 15:00-15:40: [https://etherpad.openstack.org/p/L3-vendor-plugins L3 Vendor Plugins]&lt;br /&gt;
* Fri 16:00-16:40: [https://etherpad.openstack.org/p/juno-dynamic-routing Dynamic routing] and [https://etherpad.openstack.org/p/juno-neutron-pluggable-external-network pluggable external networks]&lt;br /&gt;
* Fri 16:50-17:30: [https://etherpad.openstack.org/p/servicevm Service VM Discussion]&lt;br /&gt;
&lt;br /&gt;
== Nova ==&lt;br /&gt;
&lt;br /&gt;
'''Wednesday, May 14'''&lt;br /&gt;
 &lt;br /&gt;
* 9:00am [https://etherpad.openstack.org/p/juno-nova-third-party-ci Continuation of third party CI]&lt;br /&gt;
* 9:50am [https://etherpad.openstack.org/p/juno-nova-clustered-hypervisor-support Clustered hypervisor support in Nova]&lt;br /&gt;
* 11:00am [https://etherpad.openstack.org/p/juno-nova-deprecating-baremetal The road to deprecating nova.virt.baremetal]&lt;br /&gt;
* 11:50am [https://etherpad.openstack.org/p/juno-nova-data-transfer-service Data transfer service plug-in]&lt;br /&gt;
* 1:50pm [https://etherpad.openstack.org/p/juno-nova-live-upgrade Next steps in live upgrade]&lt;br /&gt;
* 2:40pm [https://etherpad.openstack.org/p/juno-nova-image-precaching Image precaching service]&lt;br /&gt;
* 3:30pm [https://etherpad.openstack.org/p/juno-nova-flavor-storage-revamp Flavor storage re-vamp]&lt;br /&gt;
* 4:30pm [https://etherpad.openstack.org/p/juno-nova-cross-project-interactions Rethinking cross project interactions]&lt;br /&gt;
* 5:20pm [https://etherpad.openstack.org/p/juno-nova-v2-on-v3-api-poc Nova V2 on V3 API implementation POC]&lt;br /&gt;
 &lt;br /&gt;
'''Thursday, May 15'''&lt;br /&gt;
 &lt;br /&gt;
* 9:00am [https://etherpad.openstack.org/p/juno-nova-hypev-new-features Hyper-V Driver new features]&lt;br /&gt;
* 9:50am [https://etherpad.openstack.org/p/juno-nova-libvirt-driver-roadmap Libvirt driver roadmap for Juno]&lt;br /&gt;
* 11:00am [https://etherpad.openstack.org/p/juno-nova-kvm-live-migration Improve performance of live migration on KVM]&lt;br /&gt;
* 11:50am [https://etherpad.openstack.org/p/juno-nova-conductor-api limited conductor API]&lt;br /&gt;
* 1:30pm [https://etherpad.openstack.org/p/juno-nova-quota-state-management Implementing state management for quotas]&lt;br /&gt;
* 2:20pm [https://etherpad.openstack.org/p/juno-nova-multi-volume-snapshots Multi-Volume Snapshots]&lt;br /&gt;
* 3:10pm [https://etherpad.openstack.org/p/juno-nova-hypervisor-power-mgmt Hypervisor power management]&lt;br /&gt;
* 4:10pm [https://etherpad.openstack.org/p/juno-nova-sriov-support SR-IOV support]&lt;br /&gt;
* 5:00pm [https://etherpad.openstack.org/p/juno-nova-v3-api Nova V3 API]&lt;br /&gt;
 &lt;br /&gt;
'''Friday, May 16'''&lt;br /&gt;
 &lt;br /&gt;
* 9:00am [https://etherpad.openstack.org/p/juno-nova-vmware-driver-roadmap Vmwareapi driver roadmap for Juno]&lt;br /&gt;
* 9:50am [https://etherpad.openstack.org/p/juno-nova-docker-driver-features Docker driver - features &amp;amp; testing]&lt;br /&gt;
* 10:50am [https://etherpad.openstack.org/p/juno-nova-gantt-apis Future of Gantt APIs and interfaces]&lt;br /&gt;
* 11:40am [https://etherpad.openstack.org/p/juno-nova-no-db-scheduler Common no DB Scheduler]&lt;br /&gt;
* 1:20pm [https://etherpad.openstack.org/p/juno-nova-scheduling-server-groups Simultaneous Scheduling for Server Groups]&lt;br /&gt;
* 2:10pm [https://etherpad.openstack.org/p/juno-nova-scheduler-hints-vm-lifecycle Scheduler hints for VM life cycle]&lt;br /&gt;
* 3:00pm [https://etherpad.openstack.org/p/juno-nova-devops Nova Dev/Ops Session]&lt;br /&gt;
* 4:00pm [https://etherpad.openstack.org/p/juno-nova-unsession Unsession]&lt;br /&gt;
&lt;br /&gt;
== Ops ==&lt;br /&gt;
* Mon 1115 – 1155   [https://etherpad.openstack.org/p/juno-summit-ops-askthedevs Ask the devs: Meet the PTLs and TC, How to get the best out of the design summit]&lt;br /&gt;
* Mon 1205 – 1245  [https://etherpad.openstack.org/p/juno-summit-ops-reasonabledefaults Reasonable Defaults]&lt;br /&gt;
* Mon 1400 – 1440  [https://etherpad.openstack.org/p/juno-summit-ops-upgradesdeployment Upgrades and Deployment Approaches]&lt;br /&gt;
* Mon 1450 – 1620  [https://etherpad.openstack.org/p/juno-summit-ops-architecture Architecture Show and Tell, Tales and Fails]&lt;br /&gt;
* Mon 1640 – 1720  [https://etherpad.openstack.org/p/juno-summit-ops-networking Networking]&lt;br /&gt;
* Mon 1730 – 1810   [https://etherpad.openstack.org/p/juno-summit-ops-security Security]&lt;br /&gt;
&lt;br /&gt;
* Fri 9:00 – 9:40    [https://etherpad.openstack.org/p/juno-summit-ops-enterprise Enterprise Gaps]&lt;br /&gt;
* Fri 9:50 – 10:30   [https://etherpad.openstack.org/p/juno-summit-ops-database Database]&lt;br /&gt;
* Fri 10:50 – 11:30  [https://etherpad.openstack.org/p/juno-summit-ops-issuesatscale Issues at Scale]&lt;br /&gt;
* Fri 11:40 – 12:20  [https://etherpad.openstack.org/p/juno-summit-ops-meta Meta Discussion – ops communication and governance]&lt;br /&gt;
* Fri 1:20 – 2:00  [https://etherpad.openstack.org/p/juno-summit-ops-ansible Ansible]&lt;br /&gt;
* Fri 2:10 – 2:50  [https://etherpad.openstack.org/p/juno-summit-ops-chef Chef]&lt;br /&gt;
* Fri 3:00 – 3:40  [https://etherpad.openstack.org/p/juno-summit-ops-puppet Puppet]&lt;br /&gt;
* Fri 4:00 – 4:30  [https://etherpad.openstack.org/p/juno-summit-ops-monitoringlogging Monitoring and Logging]&lt;br /&gt;
&lt;br /&gt;
== Oslo ==&lt;br /&gt;
* Wed 9:00 - 9:40 [https://etherpad.openstack.org/p/juno-oslo-release-plan Release Plan for Low-level Libraries]&lt;br /&gt;
* Wed 9:50 - 10:30 [https://etherpad.openstack.org/p/juno-oslo-messaging oslo.messaging status and plans for Juno]&lt;br /&gt;
* Wed 11:00 - 11:40 [https://etherpad.openstack.org/p/olso.messaging_amqp_1.0 AMQP 1.0 protocol driver]&lt;br /&gt;
* Thu 9:00 - 9:40 Oslo Library Teams Breakout Session&lt;br /&gt;
* Thu 9:50 - 10:30 [https://etherpad.openstack.org/p/juno-infra-library-testing Testing pre-releases of Oslo libs with apps]&lt;br /&gt;
* Thu 11:00 - 11:40 [https://etherpad.openstack.org/p/juno-osprofiler OpenStack cross service/project OpenStack profiler]&lt;br /&gt;
* Thu 15:10 - 16:00 [https://etherpad.openstack.org/p/juno-oslo-bayer Upstream chat with Mike Bayer]&lt;br /&gt;
* Thu 16:10 - 17:00 [https://etherpad.openstack.org/p/juno-summit-oslo-messaging-rpc-proxy rpc proxy(oslo.messaging)]&lt;br /&gt;
* Fri 14:10 - 15:50 [https://etherpad.openstack.org/p/juno-summit-oslo-rootwrap oslo.rootwrap: performance and other improvements]&lt;br /&gt;
* Fri 15:00 - 16:40 [https://etherpad.openstack.org/p/juno-oslo-semantic-versioning Semantic versioning and oslo]&lt;br /&gt;
* Fri 16:00 - 16:40  [https://etherpad.openstack.org/p/juno-oslo-pki-for-messaging PKI for messaging]&lt;br /&gt;
&lt;br /&gt;
== QA ==&lt;br /&gt;
&lt;br /&gt;
'''Wednesday'''&lt;br /&gt;
* 2:40 – 3:20 [https://etherpad.openstack.org/p/juno-summit-branchless-tempest Branchless Tempest]&lt;br /&gt;
* 3:30 – 4:10 [https://etherpad.openstack.org/p/juno-summit-tempest-documentation Tempest Documentation Gaps]&lt;br /&gt;
* 4:30 – 5:10 [https://etherpad.openstack.org/p/juno-qa-functional-api Functional API Testing - post dev QA vs TDD]&lt;br /&gt;
* 5:20 – 6:00 [https://etherpad.openstack.org/p/juno-rally-and-tempest Rally and Tempest Integration]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Thursday'''&lt;br /&gt;
* 1:30 – 2:10  [https://etherpad.openstack.org/p/juno-summit-api-tests-with-jsonschema API tests with JSONSchema]&lt;br /&gt;
* 2:20 – 3:00 [https://etherpad.openstack.org/p/juno-summit-negative-fuzzy-testing Negative Testing: Fuzzy Test Framework]&lt;br /&gt;
* 3:10 – 3:50 [https://etherpad.openstack.org/p/juno-summit-improve-ux-tools How to improve the UX of our Testing Tools]&lt;br /&gt;
* 4:10 – 4:50 [https://etherpad.openstack.org/p/juno-summit-tempest-gui-client-server Tempest, GUI, Client, Server]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Friday'''&lt;br /&gt;
* 1:20 – 2:00 [https://etherpad.openstack.org/p/juno-summit-grenade Grenade Current Status and Next Steps]&lt;br /&gt;
* 2:10 – 2:50 [https://etherpad.openstack.org/p/juno-summit-qa-policy QA Program Policy and Changes in Juno]&lt;br /&gt;
&lt;br /&gt;
== Release Management ==&lt;br /&gt;
&lt;br /&gt;
* Wednesday 1:50pm [https://etherpad.openstack.org/p/juno-summit-release-branches Release branches, QA and requirements]&lt;br /&gt;
* Thursday 9:00am [https://etherpad.openstack.org/p/juno-summit-vmt Vulnerability management in Juno]&lt;br /&gt;
* Thursday 5:00pm [https://etherpad.openstack.org/p/StableIcehouse Stable branches maintenance]&lt;br /&gt;
* Friday 3:00pm [https://etherpad.openstack.org/p/juno-summit-release-schedule Juno release schedule and processes]&lt;br /&gt;
* Friday 4:50pm [https://etherpad.openstack.org/p/juno-summit-feedback Design Summit feedback]&lt;br /&gt;
&lt;br /&gt;
== Sahara (ex. Savanna) ==&lt;br /&gt;
&lt;br /&gt;
* [http://junodesignsummit.sched.org/event/b4f52627efa42f285978d5af3643e189 Thu 13:30] [https://etherpad.openstack.org/p/juno-summit-sahara-relmngmt-backward Releasing and backward compatibility]&lt;br /&gt;
* [http://junodesignsummit.sched.org/event/c8774beefd9e9188a3e0729d2bd7131e Thu 14:20] [https://etherpad.openstack.org/p/juno-summit-sahara-testing-plugins CI/gating and plugin requirements]&lt;br /&gt;
* [http://junodesignsummit.sched.org/event/10bc9a23eb43eb9df885586035fb2491 Thu 15:10] [https://etherpad.openstack.org/p/juno-summit-sahara-scale-integration Scalable Sahara and further OpenStack integration]&lt;br /&gt;
* [http://junodesignsummit.sched.org/event/be842178a085fe95b7665a653f8ab541 Thu 16:10] [https://etherpad.openstack.org/p/juno-summit-sahara-ux UX improvements]&lt;br /&gt;
* [http://junodesignsummit.sched.org/event/dfa603324c0bbf29c2f09a77efb82d1d Thu 17:00] [https://etherpad.openstack.org/p/juno-summit-sahara-edp Future of EDP: plugins, SPI, Oozie]&lt;br /&gt;
* [http://junodesignsummit.sched.org/event/a64f771cf28ed3ad637730db828668ff Fri 09:00] [https://etherpad.openstack.org/p/juno-summit-sahara-v2-api Next major REST API - v2]&lt;br /&gt;
* [http://junodesignsummit.sched.org/event/49089a1d9c8203c6a4c1f0001fa417af Fri 09:50] [https://etherpad.openstack.org/p/juno-summit-sahara-roadmap-retro Sahara in Icehouse and Juno]&lt;br /&gt;
&lt;br /&gt;
== Swift ==&lt;br /&gt;
== TripleO (Deployment) ==&lt;br /&gt;
* Fri 11:40 - 12:20 [https://etherpad.openstack.org/p/juno-summit-tripleo-tuskar-planning TripleO Tuskar Planning]&lt;br /&gt;
* Fri 13:20 - 14:00 [https://etherpad.openstack.org/p/juno-summit-tripleo-environment TripleO Development and Testing Environment]&lt;br /&gt;
* Fri 14:10 - 14:50   [https://etherpad.openstack.org/p/juno-summit-tripleo-and-docker TripleO and Docker]&lt;br /&gt;
* Fri 15:00 - 15:40   [https://etherpad.openstack.org/p/juno-summit-tripleo-ci TripleO CI]&lt;br /&gt;
* Fri 16:00 - 16:40   [https://etherpad.openstack.org/p/juno-summit-tripleo-neutron TripleO and Neutron]&lt;br /&gt;
* Fri 16:50 - 17:30   [https://etherpad.openstack.org/p/juno-summit-tripleo-devops TripleO Dev/Ops Session]&lt;br /&gt;
&lt;br /&gt;
== Trove ==&lt;br /&gt;
== User Committee ==&lt;br /&gt;
== Other Projects ==&lt;br /&gt;
* [http://junodesignsummit.sched.org/event/e04c26e2a5df3a5089b2ed701d2aac3b Tue 11:15 - 11:55] [https://etherpad.openstack.org/p/summit-101 Design Summit 101]&lt;br /&gt;
* [http://junodesignsummit.sched.org/event/6f9fe2ec2e6d3843139663a350cdc511 Tue 17:30 - 18:10] [https://etherpad.openstack.org/p/juno-summit-discovery-and-diagnostic-for-openstack Discovery and Diagnostic for OpenStack]&lt;br /&gt;
* [http://junodesignsummit.sched.org/event/ab6d8eed3c6fd85dc450c099aba22e11 Tue 12:05 - 12:45] [https://etherpad.openstack.org/p/juno-design-summit-designate-session-1 Designate Session 1]&lt;br /&gt;
* Tue 16:40 - 19:20 [https://etherpad.openstack.org/p/juno-summit-resource-reservation Climate, Resource Reservation for the OpenStack]&lt;br /&gt;
* [http://openstacksummitmay2014atlanta.sched.org/event/6e53527347d56d67120decd49bbac53b Wed 13:50 - 17:20] [https://etherpad.openstack.org/p/SolumSummitAgenda Solum Session]&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=52057</id>
		<title>OpenStack Upstream Training/Info</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=52057"/>
				<updated>2014-05-11T20:32:03Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: links to slides&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
With over 2000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions.  These can significantly slow down the speed at which newcomers are successful at integrating their own roadmap into that of the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to help professional developers negotiate this hurdle.  It shows them how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time.  The educational program requires students to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In a followup session, the students benefit from individual online sessions to help them resolve any remaining problems they might have.&lt;br /&gt;
&lt;br /&gt;
== Objectives ==&lt;br /&gt;
&lt;br /&gt;
* Faster integration of the companies product roadmap into the OpenStack release cycle&lt;br /&gt;
* Successfully contribute one real world patch to an OpenStack component&lt;br /&gt;
* Master the technical tools&lt;br /&gt;
* Understand the OpenStack contribution workflow and social norms&lt;br /&gt;
&lt;br /&gt;
== Target Audience ==&lt;br /&gt;
&lt;br /&gt;
* Developers&lt;br /&gt;
* System administrators&lt;br /&gt;
&lt;br /&gt;
== Prerequisites ==&lt;br /&gt;
&lt;br /&gt;
* Being able to read and write English at a technical level.&lt;br /&gt;
* If contributing code, being technically proficient enough to carry out simple bug fixes in the project.&lt;br /&gt;
* If contributing documentation, being able to produce documents in the project's chosen infrastructure.&lt;br /&gt;
* Having at least 8 hours a week to dedicate to the project, be it through programming or through interacting with the community.&lt;br /&gt;
&lt;br /&gt;
== Duration ==&lt;br /&gt;
&lt;br /&gt;
* Face-to-face section: 2 days&lt;br /&gt;
* Online section: 10 one-hour individual mentoring sessions over a period of 4 to 10 weeks&lt;br /&gt;
&lt;br /&gt;
= Course Outline =&lt;br /&gt;
&lt;br /&gt;
== First day ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
* A week before Day 1: choice of a contribution, via email, with each participant&lt;br /&gt;
* Day 1: How OpenStack is made&lt;br /&gt;
* Day 1: Learn and practice git, gerrit, IRC&lt;br /&gt;
&lt;br /&gt;
* Day 2: The theory of contribution&lt;br /&gt;
* Day 2: Lego contribution simulation&lt;br /&gt;
* Day 2: Individual presentation of the contribution plan&lt;br /&gt;
* Day 2: Online mentoring&lt;br /&gt;
&lt;br /&gt;
=== How OpenStack is made (3h including 1h30 exercises) ===&lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Release_Cycle Release cycle] ( [http://dachary.org/loic/openstack-training/release-cycle.odp slides.odp] [http://dachary.org/loic/openstack-training/release-cycle.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Planning_.28Design.2C_Discuss_and_Target.29 Planning (Design, Discuss and Target)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Implementation_.28Milestone_iterations.29 Implementation (Milestone iterations)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Pre-release_.28Release_Candidates_dance.29 Pre-release (Release Candidates dance)]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_candidate_1 Release candidate 1]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Other_release_candidates Other release candidates]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_day Release day]&lt;br /&gt;
** Exercise: based on the [https://wiki.openstack.org/wiki/Icehouse_Release_Schedule Icehouse release schedule] find the URL of a document or a patch that belongs to each of the above steps.&lt;br /&gt;
* Relevant actors ( [http://dachary.org/loic/openstack-training/relevant-actors.odp slides.odp] [http://dachary.org/loic/openstack-training/relevant-actors.pdf slides.pdf] )&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] companies&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] individuals&lt;br /&gt;
** Your management&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee Technical Committee] ( [http://dachary.org/loic/openstack-training/technical-committee.odp slides.odp] [http://dachary.org/loic/openstack-training/technical-committee.pdf slides.pdf] )&lt;br /&gt;
** Decide what is an [https://wiki.openstack.org/wiki/Programs OpenStack Program]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/TechnicalCommittee meetings] &lt;br /&gt;
** Exercise: read [http://eavesdrop.openstack.org/meetings/tc/2014/tc.2014-04-01-20.03.log.html archived] and briefly comment on [https://etherpad.openstack.org/p/keystone-incubation-integration-requirements keystone document]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Program_Leads PTLs]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_PTL_seats_.28.22APC.22.29 APC]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_TC_seats_.28.22ATC.22.29 ATC]&lt;br /&gt;
** Exercise: each APC / ATC in the class add a URL to the etherpad proving it&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/NewProjects Program ecosystem]  ( [http://dachary.org/loic/openstack-training/program-ecosystem.odp slides.odp] [http://dachary.org/loic/openstack-training/program-ecosystem.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Incubation Incubated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Integrated Integrated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Core_.3F Core]&lt;br /&gt;
** [http://ci.openstack.org/stackforge.html Stackforge]&lt;br /&gt;
** Exercise: What kind of Program do you contribute to ?&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Summit Design summits]  ( [http://dachary.org/loic/openstack-training/design-summit.odp slides.odp] [http://dachary.org/loic/openstack-training/design-summit.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#Propose_sessions propose sessions]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#At_the_Design_Summit attend or lead a session]&lt;br /&gt;
** Exercise: Add a session proposal regarding your contribution in an etherpad, review two proposals&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Meetings IRC meetings]  ( [http://dachary.org/loic/openstack-training/irc-meetings.odp slides.odp] [http://dachary.org/loic/openstack-training/irc-meetings.pdf slides.pdf] )&lt;br /&gt;
** [http://ci.openstack.org/meetbot.html modified] [http://wiki.debian.org/MeetBot meetbot]&lt;br /&gt;
** #info - Add an info item to the minutes. People should liberally use this for important things they say, so that they can be logged in the minutes. &lt;br /&gt;
** #action - Document an action item in the minutes. Include any nicknames in the line, and the item will be assigned to them. (nicknames are case-sensitive) &lt;br /&gt;
** #help - Add a &amp;quot;Call for Help&amp;quot; to the minutes. Use this command when you need to recruit someone to do a task. (Counter-intuitively, this doesn't provide help on the bot)&lt;br /&gt;
** Exercise: lunch menu online meeting&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Workflow of an OpenStack contribution and tools (3h including 2h exercises) ===&lt;br /&gt;
&lt;br /&gt;
* [http://devstack.org/ devstack] ( [http://dachary.org/loic/openstack-training/devstack.odp slides.odp] [http://dachary.org/loic/openstack-training/devstack.pdf slides.pdf] )&lt;br /&gt;
** Ubuntu or Fedora&lt;br /&gt;
** git clone https://github.com/openstack-dev/devstack.git&lt;br /&gt;
** [http://devstack.org/configuration.html minimal configuration]&lt;br /&gt;
** cd devstack; ./stack.sh&lt;br /&gt;
** Exercise: get the code for the targeted contribution&lt;br /&gt;
* [[How_To_Contribute|HOW to contribute URL]] ( [http://dachary.org/loic/openstack-training/howtocontribute.odp slides.odp] [http://dachary.org/loic/openstack-training/howtocontribute.pdf slides.pdf] )&lt;br /&gt;
** [[Puppet-openstack#Contributing_to_the_modules|puppet stackforge]]&lt;br /&gt;
** [[Documentation/HowTo|documentation]]&lt;br /&gt;
** [http://docs.openstack.org/training-guides/content/under-construction.html training guides]&lt;br /&gt;
** Excercise: Apply for individual membership and sign the CLA&lt;br /&gt;
* [https://help.launchpad.net/ launchpad] ( [http://dachary.org/loic/openstack-training/launchpad.odp slides.odp] [http://dachary.org/loic/openstack-training/launchpad.pdf slides.pdf] )&lt;br /&gt;
** [[Blueprints|blueprints]]&lt;br /&gt;
** [[Bugs|bugs]]&lt;br /&gt;
*** [[Bugs#Bugs_reference|Status, Importance, Assigned To, Milestone, Tags]]&lt;br /&gt;
*** [[Bugs#Reporting|reporting a bug]]&lt;br /&gt;
*** [[Bugs#Confirming_.26_prioritizing|confirming and prioritizing]]&lt;br /&gt;
*** [[Bugs#Debugging_.28optional.29|debugging]]&lt;br /&gt;
*** [[Bugs#Bugfixing|bugfixing]]&lt;br /&gt;
** Exercise: review other launchpad bugs and improve yours&lt;br /&gt;
* [[GerritWorkflow|gerrit workflow]] ( [http://dachary.org/loic/openstack-training/gerrit.odp slides.odp] [http://dachary.org/loic/openstack-training/gerrit.pdf slides.pdf] )&lt;br /&gt;
** [[GerritWorkflow#Account_Setup|account setup]]&lt;br /&gt;
** [[GerritWorkflow#Git_Review_Installation|git review installation]]&lt;br /&gt;
** [[GerritWorkflow#SSH_Setup|ssh setup]]&lt;br /&gt;
** [[GerritWorkflow#Project_Setup|project setup]]&lt;br /&gt;
** [[GerritWorkflow#Normal_Workflow|gerrit workflow]]&lt;br /&gt;
** [[Testing#Unit_Tests|running unit tests]]&lt;br /&gt;
** [http://www.mediawiki.org/wiki/Gerrit/Advanced_usage review dependencies]&lt;br /&gt;
** Exercise: push a wip or draft and invite reviewers&lt;br /&gt;
* Branching model ( [http://dachary.org/loic/openstack-training/branching-model.odp slides.odp] [http://dachary.org/loic/openstack-training/branching-model.pdf slides.pdf] )&lt;br /&gt;
** [[BranchModel|development]]&lt;br /&gt;
** [[StableBranch|stable]]&lt;br /&gt;
** Exercise: checkout the latest stable branch&lt;br /&gt;
* [[GerritJenkinsGit#Reviewing_a_Change|reviewing]]  ( [http://dachary.org/loic/openstack-training/reviewing.odp slides.odp] [http://dachary.org/loic/openstack-training/reviewing.pdf slides.pdf] )&lt;br /&gt;
* [[GerritWorkflow#Committing_Changes|writing a commit message]] ( [http://dachary.org/loic/openstack-training/commit-message.odp slides.odp] [http://dachary.org/loic/openstack-training/commit-message.pdf slides.pdf] )&lt;br /&gt;
** reference to a bug or a blueprint&lt;br /&gt;
** amending a commit message&lt;br /&gt;
** Exercise: review each other messages on the draft&lt;br /&gt;
* [[GerritJenkinsGit|jenkins]]  ( [http://dachary.org/loic/openstack-training/jenkins.odp slides.odp] [http://dachary.org/loic/openstack-training/jenkins.pdf slides.pdf] )&lt;br /&gt;
** Exercise: add an error and match it to the jenkins message&lt;br /&gt;
&lt;br /&gt;
== Second day ==&lt;br /&gt;
&lt;br /&gt;
=== The Contribution Process (3 hours) ===&lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-contribution-process.odp] [http://dachary.org/loic/openstack-training/training-contribution-process.pdf] )&lt;br /&gt;
* Take the pulse of the project.&lt;br /&gt;
* Figure out who's behind it.&lt;br /&gt;
* Determine the project's social groups.&lt;br /&gt;
* Assess your approach.&lt;br /&gt;
* Engage immediately.&lt;br /&gt;
* Play with your network.&lt;br /&gt;
* Perform the smaller tasks.&lt;br /&gt;
* Choose a question.&lt;br /&gt;
* Familiarize yourself with the code of conduct.&lt;br /&gt;
* Understand the conventions.&lt;br /&gt;
* Explain what you do.&lt;br /&gt;
* Prepare the backport.&lt;br /&gt;
* Learn what's local and what's upstream.&lt;br /&gt;
* Learn what distinguishes good work flow from bad work flow.&lt;br /&gt;
* Quantify the delta.&lt;br /&gt;
* Speed up the acceptance.&lt;br /&gt;
* Determine the time frame.&lt;br /&gt;
* Maximize karma.&lt;br /&gt;
* Work in parallel.&lt;br /&gt;
* Archive and collect.&lt;br /&gt;
&lt;br /&gt;
=== Agile for Contributors (15 min) ===&lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-agile-for-contributors.odp] [http://dachary.org/loic/openstack-training/training-agile-for-contributors.pdf] )&lt;br /&gt;
* Apply agile&lt;br /&gt;
* Who is the customer?&lt;br /&gt;
* Company &amp;amp; Upstream product owner&lt;br /&gt;
* Sprint review presentation to Upstream&lt;br /&gt;
&lt;br /&gt;
=== Contribution Simulation (1 hour) ===&lt;br /&gt;
&lt;br /&gt;
The students make a virtual contribution simulation using Lego bricks as props, with the goal of expanding a Lego town, built by upstream. They are divided into teams; the teacher is by turns the product owner in the company and the upstream.&lt;br /&gt;
&lt;br /&gt;
=== Contribution Planning (2 hours) ===&lt;br /&gt;
&lt;br /&gt;
 ( [http://dachary.org/loic/openstack-training/training-student-project-sample.odp] [http://dachary.org/loic/openstack-training/training-student-project-sample.pdf] )&lt;br /&gt;
&lt;br /&gt;
* The students use template slides to prepare a 5-minute presentation of their planned contribution.&lt;br /&gt;
* A sample presentation is given by the teacher, as an example.&lt;br /&gt;
* Each student group prepares a presentation describing:&lt;br /&gt;
** the contribution they plan to work on during the online sessions,&lt;br /&gt;
** how they will engage with the Upstream,&lt;br /&gt;
** how it contributes to the company's agenda&lt;br /&gt;
** and whom they will be working with.&lt;br /&gt;
* Each student group presents its slides to the class&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=48509</id>
		<title>OpenStack Upstream Training/Info</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=48509"/>
				<updated>2014-04-13T12:30:05Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: reviewing moves before the exercise&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions.  These can significantly slow down the speed at which newcomers are successful at integrating their own roadmap into that of the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to help professional developers negotiate this hurdle.  It shows them how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time.  The educational program requires students to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In a followup session, the students benefit from individual online sessions to help them resolve any remaining problems they might have.&lt;br /&gt;
&lt;br /&gt;
== Objectives ==&lt;br /&gt;
&lt;br /&gt;
* Faster integration of the companies product roadmap into the OpenStack release cycle&lt;br /&gt;
* Successfully contribute one real world patch to an OpenStack component&lt;br /&gt;
* Master the technical tools&lt;br /&gt;
* Understand the OpenStack contribution workflow and social norms&lt;br /&gt;
&lt;br /&gt;
== Target Audience ==&lt;br /&gt;
&lt;br /&gt;
* Developers&lt;br /&gt;
* System administrators&lt;br /&gt;
&lt;br /&gt;
== Prerequisites ==&lt;br /&gt;
&lt;br /&gt;
* Being able to read and write English at a technical level.&lt;br /&gt;
* If contributing code, being technically proficient enough to carry out simple bug fixes in the project.&lt;br /&gt;
* If contributing documentation, being able to produce documents in the project's chosen infrastructure.&lt;br /&gt;
* Having at least 8 hours a week to dedicate to the project, be it through programming or through interacting with the community.&lt;br /&gt;
&lt;br /&gt;
== Duration ==&lt;br /&gt;
&lt;br /&gt;
* Face-to-face section: 2 days&lt;br /&gt;
* Online section: 10 one-hour individual mentoring sessions over a period of 4 to 10 weeks&lt;br /&gt;
&lt;br /&gt;
= Course Outline =&lt;br /&gt;
&lt;br /&gt;
== First day ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
* A week before Day 1: choice of a contribution, via email, with each participant&lt;br /&gt;
* Day 1: How OpenStack is made&lt;br /&gt;
* Day 1: Learn and practice git, gerrit, IRC&lt;br /&gt;
&lt;br /&gt;
* Day 2: The theory of contribution&lt;br /&gt;
* Day 2: Lego contribution simulation&lt;br /&gt;
* Day 2: Individual presentation of the contribution plan&lt;br /&gt;
* Day 2: Online mentoring&lt;br /&gt;
&lt;br /&gt;
=== How OpenStack is made (3h including 1h30 exercises) ===&lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Release_Cycle Release cycle] ( [http://dachary.org/loic/openstack-training/release-cycle.odp slides.odp] [http://dachary.org/loic/openstack-training/release-cycle.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Planning_.28Design.2C_Discuss_and_Target.29 Planning (Design, Discuss and Target)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Implementation_.28Milestone_iterations.29 Implementation (Milestone iterations)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Pre-release_.28Release_Candidates_dance.29 Pre-release (Release Candidates dance)]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_candidate_1 Release candidate 1]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Other_release_candidates Other release candidates]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_day Release day]&lt;br /&gt;
** Exercise: based on the [https://wiki.openstack.org/wiki/Icehouse_Release_Schedule Icehouse release schedule] find the URL of a document or a patch that belongs to each of the above steps.&lt;br /&gt;
* Relevant actors ( [http://dachary.org/loic/openstack-training/relevant-actors.odp slides.odp] [http://dachary.org/loic/openstack-training/relevant-actors.pdf slides.pdf] )&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] companies&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] individuals&lt;br /&gt;
** Your management&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee Technical Committee] ( [http://dachary.org/loic/openstack-training/technical-committee.odp slides.odp] [http://dachary.org/loic/openstack-training/technical-committee.pdf slides.pdf] )&lt;br /&gt;
** Decide what is an [https://wiki.openstack.org/wiki/Programs OpenStack Program]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/TechnicalCommittee meetings] &lt;br /&gt;
** Exercise: read [http://eavesdrop.openstack.org/meetings/tc/2014/tc.2014-04-01-20.03.log.html archived] and briefly comment on [https://etherpad.openstack.org/p/keystone-incubation-integration-requirements keystone document]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Program_Leads PTLs]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_PTL_seats_.28.22APC.22.29 APC]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_TC_seats_.28.22ATC.22.29 ATC]&lt;br /&gt;
** Exercise: each APC / ATC in the class add a URL to the etherpad proving it&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/NewProjects Program ecosystem]  ( [http://dachary.org/loic/openstack-training/program-ecosystem.odp slides.odp] [http://dachary.org/loic/openstack-training/program-ecosystem.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Incubation Incubated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Integrated Integrated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Core_.3F Core]&lt;br /&gt;
** [http://ci.openstack.org/stackforge.html Stackforge]&lt;br /&gt;
** Exercise: What kind of Program do you contribute to ?&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Summit Design summits]  ( [http://dachary.org/loic/openstack-training/design-summit.odp slides.odp] [http://dachary.org/loic/openstack-training/design-summit.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#Propose_sessions propose sessions]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#At_the_Design_Summit attend or lead a session]&lt;br /&gt;
** Exercise: Add a session proposal regarding your contribution in an etherpad, review two proposals&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Meetings IRC meetings]  ( [http://dachary.org/loic/openstack-training/irc-meetings.odp slides.odp] [http://dachary.org/loic/openstack-training/irc-meetings.pdf slides.pdf] )&lt;br /&gt;
** [http://ci.openstack.org/meetbot.html modified] [http://wiki.debian.org/MeetBot meetbot]&lt;br /&gt;
** #info - Add an info item to the minutes. People should liberally use this for important things they say, so that they can be logged in the minutes. &lt;br /&gt;
** #action - Document an action item in the minutes. Include any nicknames in the line, and the item will be assigned to them. (nicknames are case-sensitive) &lt;br /&gt;
** #help - Add a &amp;quot;Call for Help&amp;quot; to the minutes. Use this command when you need to recruit someone to do a task. (Counter-intuitively, this doesn't provide help on the bot)&lt;br /&gt;
** Exercise: lunch menu online meeting&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Workflow of an OpenStack contribution and tools (3h including 2h exercises) ===&lt;br /&gt;
&lt;br /&gt;
* [http://devstack.org/ devstack] ( [http://dachary.org/loic/openstack-training/devstack.odp slides.odp] [http://dachary.org/loic/openstack-training/devstack.pdf slides.pdf] )&lt;br /&gt;
** Ubuntu or Fedora&lt;br /&gt;
** git clone https://github.com/openstack-dev/devstack.git&lt;br /&gt;
** [http://devstack.org/configuration.html minimal configuration]&lt;br /&gt;
** cd devstack; ./stack.sh&lt;br /&gt;
** Exercise: get the code for the targeted contribution&lt;br /&gt;
* [[How_To_Contribute|HOW to contribute URL]] ( [http://dachary.org/loic/openstack-training/howtocontribute.odp slides.odp] [http://dachary.org/loic/openstack-training/howtocontribute.pdf slides.pdf] )&lt;br /&gt;
** [[Puppet-openstack#Contributing_to_the_modules|puppet stackforge]]&lt;br /&gt;
** [[Documentation/HowTo|documentation]]&lt;br /&gt;
** [http://docs.openstack.org/training-guides/content/under-construction.html training guides]&lt;br /&gt;
** Excercise: Apply for individual membership and sign the CLA&lt;br /&gt;
* [https://help.launchpad.net/ launchpad] ( [http://dachary.org/loic/openstack-training/launchpad.odp slides.odp] [http://dachary.org/loic/openstack-training/launchpad.pdf slides.pdf] )&lt;br /&gt;
** [[Blueprints|blueprints]]&lt;br /&gt;
** [[Bugs|bugs]]&lt;br /&gt;
*** [[Bugs#Bugs_reference|Status, Importance, Assigned To, Milestone, Tags]]&lt;br /&gt;
*** [[Bugs#Reporting|reporting a bug]]&lt;br /&gt;
*** [[Bugs#Confirming_.26_prioritizing|confirming and prioritizing]]&lt;br /&gt;
*** [[Bugs#Debugging_.28optional.29|debugging]]&lt;br /&gt;
*** [[Bugs#Bugfixing|bugfixing]]&lt;br /&gt;
** Exercise: review other launchpad bugs and improve yours&lt;br /&gt;
* [[GerritWorkflow|gerrit workflow]] ( [http://dachary.org/loic/openstack-training/gerrit.odp slides.odp] [http://dachary.org/loic/openstack-training/gerrit.pdf slides.pdf] )&lt;br /&gt;
** [[GerritWorkflow#Account_Setup|account setup]]&lt;br /&gt;
** [[GerritWorkflow#Git_Review_Installation|git review installation]]&lt;br /&gt;
** [[GerritWorkflow#SSH_Setup|ssh setup]]&lt;br /&gt;
** [[GerritWorkflow#Project_Setup|project setup]]&lt;br /&gt;
** [[GerritWorkflow#Normal_Workflow|gerrit workflow]]&lt;br /&gt;
** [[Testing#Unit_Tests|running unit tests]]&lt;br /&gt;
** [http://www.mediawiki.org/wiki/Gerrit/Advanced_usage review dependencies]&lt;br /&gt;
** Exercise: push a wip or draft and invite reviewers&lt;br /&gt;
* Branching model ( [http://dachary.org/loic/openstack-training/branching-model.odp slides.odp] [http://dachary.org/loic/openstack-training/branching-model.pdf slides.pdf] )&lt;br /&gt;
** [[BranchModel|development]]&lt;br /&gt;
** [[StableBranch|stable]]&lt;br /&gt;
** Exercise: checkout the latest stable branch&lt;br /&gt;
* [[GerritJenkinsGit#Reviewing_a_Change|reviewing]]  ( [http://dachary.org/loic/openstack-training/reviewing.odp slides.odp] [http://dachary.org/loic/openstack-training/reviewing.pdf slides.pdf] )&lt;br /&gt;
* [[GerritWorkflow#Committing_Changes|writing a commit message]] ( [http://dachary.org/loic/openstack-training/commit-message.odp slides.odp] [http://dachary.org/loic/openstack-training/commit-message.pdf slides.pdf] )&lt;br /&gt;
** reference to a bug or a blueprint&lt;br /&gt;
** amending a commit message&lt;br /&gt;
** Exercise: review each other messages on the draft&lt;br /&gt;
* [[GerritJenkinsGit|jenkins]]  ( [http://dachary.org/loic/openstack-training/jenkins.odp slides.odp] [http://dachary.org/loic/openstack-training/jenkins.pdf slides.pdf] )&lt;br /&gt;
** Exercise: add an error and match it to the jenkins message&lt;br /&gt;
&lt;br /&gt;
== Second day ==&lt;br /&gt;
&lt;br /&gt;
=== The Contribution Process (3 hours) ===&lt;br /&gt;
&lt;br /&gt;
* Take the pulse of the project.&lt;br /&gt;
* Figure out who's behind it.&lt;br /&gt;
* Determine the project's social groups.&lt;br /&gt;
* Assess your approach.&lt;br /&gt;
* Engage immediately.&lt;br /&gt;
* Play with your network.&lt;br /&gt;
* Perform the smaller tasks.&lt;br /&gt;
* Choose a question.&lt;br /&gt;
* Familiarize yourself with the code of conduct.&lt;br /&gt;
* Understand the conventions.&lt;br /&gt;
* Explain what you do.&lt;br /&gt;
* Prepare the backport.&lt;br /&gt;
* Learn what's local and what's upstream.&lt;br /&gt;
* Learn what distinguishes good work flow from bad work flow.&lt;br /&gt;
* Quantify the delta.&lt;br /&gt;
* Speed up the acceptance.&lt;br /&gt;
* Determine the time frame.&lt;br /&gt;
* Maximize karma.&lt;br /&gt;
* Work in parallel.&lt;br /&gt;
* Archive and collect.&lt;br /&gt;
&lt;br /&gt;
=== Agile for Contributors (15 min) ===&lt;br /&gt;
&lt;br /&gt;
* Apply agile&lt;br /&gt;
* Who is the customer?&lt;br /&gt;
* Company &amp;amp; Upstream product owner&lt;br /&gt;
* Sprint review presentation to Upstream&lt;br /&gt;
&lt;br /&gt;
=== Contribution Simulation (1 hour) ===&lt;br /&gt;
&lt;br /&gt;
The students make a virtual contribution simulation using Lego bricks as props, with the goal of expanding a Lego town, built by upstream. They are divided into teams; the teacher is by turns the product owner in the company and the upstream.&lt;br /&gt;
&lt;br /&gt;
=== Contribution Planning (2 hours) ===&lt;br /&gt;
&lt;br /&gt;
* The students use template slides to prepare a 5-minute presentation of their planned contribution.&lt;br /&gt;
* A sample presentation is given by the teacher, as an example.&lt;br /&gt;
* Each student group prepares a presentation describing:&lt;br /&gt;
** the contribution they plan to work on during the online sessions,&lt;br /&gt;
** how they will engage with the Upstream,&lt;br /&gt;
** how it contributes to the company's agenda&lt;br /&gt;
** and whom they will be working with.&lt;br /&gt;
* Each student group presents its slides to the class&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=48508</id>
		<title>OpenStack Upstream Training/Info</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=48508"/>
				<updated>2014-04-13T12:26:57Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: reviewing slides&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions.  These can significantly slow down the speed at which newcomers are successful at integrating their own roadmap into that of the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to help professional developers negotiate this hurdle.  It shows them how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time.  The educational program requires students to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In a followup session, the students benefit from individual online sessions to help them resolve any remaining problems they might have.&lt;br /&gt;
&lt;br /&gt;
== Objectives ==&lt;br /&gt;
&lt;br /&gt;
* Faster integration of the companies product roadmap into the OpenStack release cycle&lt;br /&gt;
* Successfully contribute one real world patch to an OpenStack component&lt;br /&gt;
* Master the technical tools&lt;br /&gt;
* Understand the OpenStack contribution workflow and social norms&lt;br /&gt;
&lt;br /&gt;
== Target Audience ==&lt;br /&gt;
&lt;br /&gt;
* Developers&lt;br /&gt;
* System administrators&lt;br /&gt;
&lt;br /&gt;
== Prerequisites ==&lt;br /&gt;
&lt;br /&gt;
* Being able to read and write English at a technical level.&lt;br /&gt;
* If contributing code, being technically proficient enough to carry out simple bug fixes in the project.&lt;br /&gt;
* If contributing documentation, being able to produce documents in the project's chosen infrastructure.&lt;br /&gt;
* Having at least 8 hours a week to dedicate to the project, be it through programming or through interacting with the community.&lt;br /&gt;
&lt;br /&gt;
== Duration ==&lt;br /&gt;
&lt;br /&gt;
* Face-to-face section: 2 days&lt;br /&gt;
* Online section: 10 one-hour individual mentoring sessions over a period of 4 to 10 weeks&lt;br /&gt;
&lt;br /&gt;
= Course Outline =&lt;br /&gt;
&lt;br /&gt;
== First day ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
* A week before Day 1: choice of a contribution, via email, with each participant&lt;br /&gt;
* Day 1: How OpenStack is made&lt;br /&gt;
* Day 1: Learn and practice git, gerrit, IRC&lt;br /&gt;
&lt;br /&gt;
* Day 2: The theory of contribution&lt;br /&gt;
* Day 2: Lego contribution simulation&lt;br /&gt;
* Day 2: Individual presentation of the contribution plan&lt;br /&gt;
* Day 2: Online mentoring&lt;br /&gt;
&lt;br /&gt;
=== How OpenStack is made (3h including 1h30 exercises) ===&lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Release_Cycle Release cycle] ( [http://dachary.org/loic/openstack-training/release-cycle.odp slides.odp] [http://dachary.org/loic/openstack-training/release-cycle.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Planning_.28Design.2C_Discuss_and_Target.29 Planning (Design, Discuss and Target)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Implementation_.28Milestone_iterations.29 Implementation (Milestone iterations)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Pre-release_.28Release_Candidates_dance.29 Pre-release (Release Candidates dance)]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_candidate_1 Release candidate 1]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Other_release_candidates Other release candidates]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_day Release day]&lt;br /&gt;
** Exercise: based on the [https://wiki.openstack.org/wiki/Icehouse_Release_Schedule Icehouse release schedule] find the URL of a document or a patch that belongs to each of the above steps.&lt;br /&gt;
* Relevant actors ( [http://dachary.org/loic/openstack-training/relevant-actors.odp slides.odp] [http://dachary.org/loic/openstack-training/relevant-actors.pdf slides.pdf] )&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] companies&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] individuals&lt;br /&gt;
** Your management&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee Technical Committee] ( [http://dachary.org/loic/openstack-training/technical-committee.odp slides.odp] [http://dachary.org/loic/openstack-training/technical-committee.pdf slides.pdf] )&lt;br /&gt;
** Decide what is an [https://wiki.openstack.org/wiki/Programs OpenStack Program]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/TechnicalCommittee meetings] &lt;br /&gt;
** Exercise: read [http://eavesdrop.openstack.org/meetings/tc/2014/tc.2014-04-01-20.03.log.html archived] and briefly comment on [https://etherpad.openstack.org/p/keystone-incubation-integration-requirements keystone document]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Program_Leads PTLs]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_PTL_seats_.28.22APC.22.29 APC]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_TC_seats_.28.22ATC.22.29 ATC]&lt;br /&gt;
** Exercise: each APC / ATC in the class add a URL to the etherpad proving it&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/NewProjects Program ecosystem]  ( [http://dachary.org/loic/openstack-training/program-ecosystem.odp slides.odp] [http://dachary.org/loic/openstack-training/program-ecosystem.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Incubation Incubated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Integrated Integrated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Core_.3F Core]&lt;br /&gt;
** [http://ci.openstack.org/stackforge.html Stackforge]&lt;br /&gt;
** Exercise: What kind of Program do you contribute to ?&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Summit Design summits]  ( [http://dachary.org/loic/openstack-training/design-summit.odp slides.odp] [http://dachary.org/loic/openstack-training/design-summit.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#Propose_sessions propose sessions]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#At_the_Design_Summit attend or lead a session]&lt;br /&gt;
** Exercise: Add a session proposal regarding your contribution in an etherpad, review two proposals&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Meetings IRC meetings]  ( [http://dachary.org/loic/openstack-training/irc-meetings.odp slides.odp] [http://dachary.org/loic/openstack-training/irc-meetings.pdf slides.pdf] )&lt;br /&gt;
** [http://ci.openstack.org/meetbot.html modified] [http://wiki.debian.org/MeetBot meetbot]&lt;br /&gt;
** #info - Add an info item to the minutes. People should liberally use this for important things they say, so that they can be logged in the minutes. &lt;br /&gt;
** #action - Document an action item in the minutes. Include any nicknames in the line, and the item will be assigned to them. (nicknames are case-sensitive) &lt;br /&gt;
** #help - Add a &amp;quot;Call for Help&amp;quot; to the minutes. Use this command when you need to recruit someone to do a task. (Counter-intuitively, this doesn't provide help on the bot)&lt;br /&gt;
** Exercise: lunch menu online meeting&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Workflow of an OpenStack contribution and tools (3h including 2h exercises) ===&lt;br /&gt;
&lt;br /&gt;
* [http://devstack.org/ devstack] ( [http://dachary.org/loic/openstack-training/devstack.odp slides.odp] [http://dachary.org/loic/openstack-training/devstack.pdf slides.pdf] )&lt;br /&gt;
** Ubuntu or Fedora&lt;br /&gt;
** git clone https://github.com/openstack-dev/devstack.git&lt;br /&gt;
** [http://devstack.org/configuration.html minimal configuration]&lt;br /&gt;
** cd devstack; ./stack.sh&lt;br /&gt;
** Exercise: get the code for the targeted contribution&lt;br /&gt;
* [[How_To_Contribute|HOW to contribute URL]] ( [http://dachary.org/loic/openstack-training/howtocontribute.odp slides.odp] [http://dachary.org/loic/openstack-training/howtocontribute.pdf slides.pdf] )&lt;br /&gt;
** [[Puppet-openstack#Contributing_to_the_modules|puppet stackforge]]&lt;br /&gt;
** [[Documentation/HowTo|documentation]]&lt;br /&gt;
** [http://docs.openstack.org/training-guides/content/under-construction.html training guides]&lt;br /&gt;
** Excercise: Apply for individual membership and sign the CLA&lt;br /&gt;
* [https://help.launchpad.net/ launchpad] ( [http://dachary.org/loic/openstack-training/launchpad.odp slides.odp] [http://dachary.org/loic/openstack-training/launchpad.pdf slides.pdf] )&lt;br /&gt;
** [[Blueprints|blueprints]]&lt;br /&gt;
** [[Bugs|bugs]]&lt;br /&gt;
*** [[Bugs#Bugs_reference|Status, Importance, Assigned To, Milestone, Tags]]&lt;br /&gt;
*** [[Bugs#Reporting|reporting a bug]]&lt;br /&gt;
*** [[Bugs#Confirming_.26_prioritizing|confirming and prioritizing]]&lt;br /&gt;
*** [[Bugs#Debugging_.28optional.29|debugging]]&lt;br /&gt;
*** [[Bugs#Bugfixing|bugfixing]]&lt;br /&gt;
** Exercise: review other launchpad bugs and improve yours&lt;br /&gt;
* [[GerritWorkflow|gerrit workflow]] ( [http://dachary.org/loic/openstack-training/gerrit.odp slides.odp] [http://dachary.org/loic/openstack-training/gerrit.pdf slides.pdf] )&lt;br /&gt;
** [[GerritWorkflow#Account_Setup|account setup]]&lt;br /&gt;
** [[GerritWorkflow#Git_Review_Installation|git review installation]]&lt;br /&gt;
** [[GerritWorkflow#SSH_Setup|ssh setup]]&lt;br /&gt;
** [[GerritWorkflow#Project_Setup|project setup]]&lt;br /&gt;
** [[GerritWorkflow#Normal_Workflow|gerrit workflow]]&lt;br /&gt;
** [[Testing#Unit_Tests|running unit tests]]&lt;br /&gt;
** [http://www.mediawiki.org/wiki/Gerrit/Advanced_usage review dependencies]&lt;br /&gt;
** Exercise: push a wip or draft and invite reviewers&lt;br /&gt;
* Branching model ( [http://dachary.org/loic/openstack-training/branching-model.odp slides.odp] [http://dachary.org/loic/openstack-training/branching-model.pdf slides.pdf] )&lt;br /&gt;
** [[BranchModel|development]]&lt;br /&gt;
** [[StableBranch|stable]]&lt;br /&gt;
** Exercise: checkout the latest stable branch&lt;br /&gt;
* [[GerritWorkflow#Committing_Changes|writing a commit message]] ( [http://dachary.org/loic/openstack-training/commit-message.odp slides.odp] [http://dachary.org/loic/openstack-training/commit-message.pdf slides.pdf] )&lt;br /&gt;
** reference to a bug or a blueprint&lt;br /&gt;
** amending a commit message&lt;br /&gt;
** Exercise: review each other messages on the draft&lt;br /&gt;
* [[GerritJenkinsGit|jenkins]]  ( [http://dachary.org/loic/openstack-training/jenkins.odp slides.odp] [http://dachary.org/loic/openstack-training/jenkins.pdf slides.pdf] )&lt;br /&gt;
** Exercise: add an error and match it to the jenkins message&lt;br /&gt;
* [[GerritJenkinsGit#Reviewing_a_Change|reviewing]]  ( [http://dachary.org/loic/openstack-training/reviewing.odp slides.odp] [http://dachary.org/loic/openstack-training/reviewing.pdf slides.pdf] )&lt;br /&gt;
&lt;br /&gt;
== Second day ==&lt;br /&gt;
&lt;br /&gt;
=== The Contribution Process (3 hours) ===&lt;br /&gt;
&lt;br /&gt;
* Take the pulse of the project.&lt;br /&gt;
* Figure out who's behind it.&lt;br /&gt;
* Determine the project's social groups.&lt;br /&gt;
* Assess your approach.&lt;br /&gt;
* Engage immediately.&lt;br /&gt;
* Play with your network.&lt;br /&gt;
* Perform the smaller tasks.&lt;br /&gt;
* Choose a question.&lt;br /&gt;
* Familiarize yourself with the code of conduct.&lt;br /&gt;
* Understand the conventions.&lt;br /&gt;
* Explain what you do.&lt;br /&gt;
* Prepare the backport.&lt;br /&gt;
* Learn what's local and what's upstream.&lt;br /&gt;
* Learn what distinguishes good work flow from bad work flow.&lt;br /&gt;
* Quantify the delta.&lt;br /&gt;
* Speed up the acceptance.&lt;br /&gt;
* Determine the time frame.&lt;br /&gt;
* Maximize karma.&lt;br /&gt;
* Work in parallel.&lt;br /&gt;
* Archive and collect.&lt;br /&gt;
&lt;br /&gt;
=== Agile for Contributors (15 min) ===&lt;br /&gt;
&lt;br /&gt;
* Apply agile&lt;br /&gt;
* Who is the customer?&lt;br /&gt;
* Company &amp;amp; Upstream product owner&lt;br /&gt;
* Sprint review presentation to Upstream&lt;br /&gt;
&lt;br /&gt;
=== Contribution Simulation (1 hour) ===&lt;br /&gt;
&lt;br /&gt;
The students make a virtual contribution simulation using Lego bricks as props, with the goal of expanding a Lego town, built by upstream. They are divided into teams; the teacher is by turns the product owner in the company and the upstream.&lt;br /&gt;
&lt;br /&gt;
=== Contribution Planning (2 hours) ===&lt;br /&gt;
&lt;br /&gt;
* The students use template slides to prepare a 5-minute presentation of their planned contribution.&lt;br /&gt;
* A sample presentation is given by the teacher, as an example.&lt;br /&gt;
* Each student group prepares a presentation describing:&lt;br /&gt;
** the contribution they plan to work on during the online sessions,&lt;br /&gt;
** how they will engage with the Upstream,&lt;br /&gt;
** how it contributes to the company's agenda&lt;br /&gt;
** and whom they will be working with.&lt;br /&gt;
* Each student group presents its slides to the class&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=48507</id>
		<title>OpenStack Upstream Training/Info</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=48507"/>
				<updated>2014-04-13T11:58:55Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: jenkins slides&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions.  These can significantly slow down the speed at which newcomers are successful at integrating their own roadmap into that of the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to help professional developers negotiate this hurdle.  It shows them how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time.  The educational program requires students to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In a followup session, the students benefit from individual online sessions to help them resolve any remaining problems they might have.&lt;br /&gt;
&lt;br /&gt;
== Objectives ==&lt;br /&gt;
&lt;br /&gt;
* Faster integration of the companies product roadmap into the OpenStack release cycle&lt;br /&gt;
* Successfully contribute one real world patch to an OpenStack component&lt;br /&gt;
* Master the technical tools&lt;br /&gt;
* Understand the OpenStack contribution workflow and social norms&lt;br /&gt;
&lt;br /&gt;
== Target Audience ==&lt;br /&gt;
&lt;br /&gt;
* Developers&lt;br /&gt;
* System administrators&lt;br /&gt;
&lt;br /&gt;
== Prerequisites ==&lt;br /&gt;
&lt;br /&gt;
* Being able to read and write English at a technical level.&lt;br /&gt;
* If contributing code, being technically proficient enough to carry out simple bug fixes in the project.&lt;br /&gt;
* If contributing documentation, being able to produce documents in the project's chosen infrastructure.&lt;br /&gt;
* Having at least 8 hours a week to dedicate to the project, be it through programming or through interacting with the community.&lt;br /&gt;
&lt;br /&gt;
== Duration ==&lt;br /&gt;
&lt;br /&gt;
* Face-to-face section: 2 days&lt;br /&gt;
* Online section: 10 one-hour individual mentoring sessions over a period of 4 to 10 weeks&lt;br /&gt;
&lt;br /&gt;
= Course Outline =&lt;br /&gt;
&lt;br /&gt;
== First day ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
* A week before Day 1: choice of a contribution, via email, with each participant&lt;br /&gt;
* Day 1: How OpenStack is made&lt;br /&gt;
* Day 1: Learn and practice git, gerrit, IRC&lt;br /&gt;
&lt;br /&gt;
* Day 2: The theory of contribution&lt;br /&gt;
* Day 2: Lego contribution simulation&lt;br /&gt;
* Day 2: Individual presentation of the contribution plan&lt;br /&gt;
* Day 2: Online mentoring&lt;br /&gt;
&lt;br /&gt;
=== How OpenStack is made (3h including 1h30 exercises) ===&lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Release_Cycle Release cycle] ( [http://dachary.org/loic/openstack-training/release-cycle.odp slides.odp] [http://dachary.org/loic/openstack-training/release-cycle.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Planning_.28Design.2C_Discuss_and_Target.29 Planning (Design, Discuss and Target)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Implementation_.28Milestone_iterations.29 Implementation (Milestone iterations)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Pre-release_.28Release_Candidates_dance.29 Pre-release (Release Candidates dance)]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_candidate_1 Release candidate 1]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Other_release_candidates Other release candidates]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_day Release day]&lt;br /&gt;
** Exercise: based on the [https://wiki.openstack.org/wiki/Icehouse_Release_Schedule Icehouse release schedule] find the URL of a document or a patch that belongs to each of the above steps.&lt;br /&gt;
* Relevant actors ( [http://dachary.org/loic/openstack-training/relevant-actors.odp slides.odp] [http://dachary.org/loic/openstack-training/relevant-actors.pdf slides.pdf] )&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] companies&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] individuals&lt;br /&gt;
** Your management&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee Technical Committee] ( [http://dachary.org/loic/openstack-training/technical-committee.odp slides.odp] [http://dachary.org/loic/openstack-training/technical-committee.pdf slides.pdf] )&lt;br /&gt;
** Decide what is an [https://wiki.openstack.org/wiki/Programs OpenStack Program]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/TechnicalCommittee meetings] &lt;br /&gt;
** Exercise: read [http://eavesdrop.openstack.org/meetings/tc/2014/tc.2014-04-01-20.03.log.html archived] and briefly comment on [https://etherpad.openstack.org/p/keystone-incubation-integration-requirements keystone document]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Program_Leads PTLs]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_PTL_seats_.28.22APC.22.29 APC]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_TC_seats_.28.22ATC.22.29 ATC]&lt;br /&gt;
** Exercise: each APC / ATC in the class add a URL to the etherpad proving it&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/NewProjects Program ecosystem]  ( [http://dachary.org/loic/openstack-training/program-ecosystem.odp slides.odp] [http://dachary.org/loic/openstack-training/program-ecosystem.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Incubation Incubated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Integrated Integrated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Core_.3F Core]&lt;br /&gt;
** [http://ci.openstack.org/stackforge.html Stackforge]&lt;br /&gt;
** Exercise: What kind of Program do you contribute to ?&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Summit Design summits]  ( [http://dachary.org/loic/openstack-training/design-summit.odp slides.odp] [http://dachary.org/loic/openstack-training/design-summit.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#Propose_sessions propose sessions]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#At_the_Design_Summit attend or lead a session]&lt;br /&gt;
** Exercise: Add a session proposal regarding your contribution in an etherpad, review two proposals&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Meetings IRC meetings]  ( [http://dachary.org/loic/openstack-training/irc-meetings.odp slides.odp] [http://dachary.org/loic/openstack-training/irc-meetings.pdf slides.pdf] )&lt;br /&gt;
** [http://ci.openstack.org/meetbot.html modified] [http://wiki.debian.org/MeetBot meetbot]&lt;br /&gt;
** #info - Add an info item to the minutes. People should liberally use this for important things they say, so that they can be logged in the minutes. &lt;br /&gt;
** #action - Document an action item in the minutes. Include any nicknames in the line, and the item will be assigned to them. (nicknames are case-sensitive) &lt;br /&gt;
** #help - Add a &amp;quot;Call for Help&amp;quot; to the minutes. Use this command when you need to recruit someone to do a task. (Counter-intuitively, this doesn't provide help on the bot)&lt;br /&gt;
** Exercise: lunch menu online meeting&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Workflow of an OpenStack contribution and tools (3h including 2h exercises) ===&lt;br /&gt;
&lt;br /&gt;
* [http://devstack.org/ devstack] ( [http://dachary.org/loic/openstack-training/devstack.odp slides.odp] [http://dachary.org/loic/openstack-training/devstack.pdf slides.pdf] )&lt;br /&gt;
** Ubuntu or Fedora&lt;br /&gt;
** git clone https://github.com/openstack-dev/devstack.git&lt;br /&gt;
** [http://devstack.org/configuration.html minimal configuration]&lt;br /&gt;
** cd devstack; ./stack.sh&lt;br /&gt;
** Exercise: get the code for the targeted contribution&lt;br /&gt;
* [[How_To_Contribute|HOW to contribute URL]] ( [http://dachary.org/loic/openstack-training/howtocontribute.odp slides.odp] [http://dachary.org/loic/openstack-training/howtocontribute.pdf slides.pdf] )&lt;br /&gt;
** [[Puppet-openstack#Contributing_to_the_modules|puppet stackforge]]&lt;br /&gt;
** [[Documentation/HowTo|documentation]]&lt;br /&gt;
** [http://docs.openstack.org/training-guides/content/under-construction.html training guides]&lt;br /&gt;
** Excercise: Apply for individual membership and sign the CLA&lt;br /&gt;
* [https://help.launchpad.net/ launchpad] ( [http://dachary.org/loic/openstack-training/launchpad.odp slides.odp] [http://dachary.org/loic/openstack-training/launchpad.pdf slides.pdf] )&lt;br /&gt;
** [[Blueprints|blueprints]]&lt;br /&gt;
** [[Bugs|bugs]]&lt;br /&gt;
*** [[Bugs#Bugs_reference|Status, Importance, Assigned To, Milestone, Tags]]&lt;br /&gt;
*** [[Bugs#Reporting|reporting a bug]]&lt;br /&gt;
*** [[Bugs#Confirming_.26_prioritizing|confirming and prioritizing]]&lt;br /&gt;
*** [[Bugs#Debugging_.28optional.29|debugging]]&lt;br /&gt;
*** [[Bugs#Bugfixing|bugfixing]]&lt;br /&gt;
** Exercise: review other launchpad bugs and improve yours&lt;br /&gt;
* [[GerritWorkflow|gerrit workflow]] ( [http://dachary.org/loic/openstack-training/gerrit.odp slides.odp] [http://dachary.org/loic/openstack-training/gerrit.pdf slides.pdf] )&lt;br /&gt;
** [[GerritWorkflow#Account_Setup|account setup]]&lt;br /&gt;
** [[GerritWorkflow#Git_Review_Installation|git review installation]]&lt;br /&gt;
** [[GerritWorkflow#SSH_Setup|ssh setup]]&lt;br /&gt;
** [[GerritWorkflow#Project_Setup|project setup]]&lt;br /&gt;
** [[GerritWorkflow#Normal_Workflow|gerrit workflow]]&lt;br /&gt;
** [[Testing#Unit_Tests|running unit tests]]&lt;br /&gt;
** [http://www.mediawiki.org/wiki/Gerrit/Advanced_usage review dependencies]&lt;br /&gt;
** Exercise: push a wip or draft and invite reviewers&lt;br /&gt;
* Branching model ( [http://dachary.org/loic/openstack-training/branching-model.odp slides.odp] [http://dachary.org/loic/openstack-training/branching-model.pdf slides.pdf] )&lt;br /&gt;
** [[BranchModel|development]]&lt;br /&gt;
** [[StableBranch|stable]]&lt;br /&gt;
** Exercise: checkout the latest stable branch&lt;br /&gt;
* [[GerritWorkflow#Committing_Changes|writing a commit message]] ( [http://dachary.org/loic/openstack-training/commit-message.odp slides.odp] [http://dachary.org/loic/openstack-training/commit-message.pdf slides.pdf] )&lt;br /&gt;
** reference to a bug or a blueprint&lt;br /&gt;
** amending a commit message&lt;br /&gt;
** Exercise: review each other messages on the draft&lt;br /&gt;
* [[GerritJenkinsGit|jenkins]]  ( [http://dachary.org/loic/openstack-training/jenkins.odp slides.odp] [http://dachary.org/loic/openstack-training/jenkins.pdf slides.pdf] )&lt;br /&gt;
** Exercise: add an error and match it to the jenkins message&lt;br /&gt;
* [[GerritJenkinsGit#Reviewing_a_Change|reviewing]]&lt;br /&gt;
** [[GerritJenkinsGit#Gerrit_Comment_Formatting|comment formatting]]&lt;br /&gt;
** [[GerritJenkinsGit#Gerrit_Best_Practices|use a topic branch]]&lt;br /&gt;
** more than one change for a single bug multiple changes&lt;br /&gt;
&lt;br /&gt;
== Second day ==&lt;br /&gt;
&lt;br /&gt;
=== The Contribution Process (3 hours) ===&lt;br /&gt;
&lt;br /&gt;
* Take the pulse of the project.&lt;br /&gt;
* Figure out who's behind it.&lt;br /&gt;
* Determine the project's social groups.&lt;br /&gt;
* Assess your approach.&lt;br /&gt;
* Engage immediately.&lt;br /&gt;
* Play with your network.&lt;br /&gt;
* Perform the smaller tasks.&lt;br /&gt;
* Choose a question.&lt;br /&gt;
* Familiarize yourself with the code of conduct.&lt;br /&gt;
* Understand the conventions.&lt;br /&gt;
* Explain what you do.&lt;br /&gt;
* Prepare the backport.&lt;br /&gt;
* Learn what's local and what's upstream.&lt;br /&gt;
* Learn what distinguishes good work flow from bad work flow.&lt;br /&gt;
* Quantify the delta.&lt;br /&gt;
* Speed up the acceptance.&lt;br /&gt;
* Determine the time frame.&lt;br /&gt;
* Maximize karma.&lt;br /&gt;
* Work in parallel.&lt;br /&gt;
* Archive and collect.&lt;br /&gt;
&lt;br /&gt;
=== Agile for Contributors (15 min) ===&lt;br /&gt;
&lt;br /&gt;
* Apply agile&lt;br /&gt;
* Who is the customer?&lt;br /&gt;
* Company &amp;amp; Upstream product owner&lt;br /&gt;
* Sprint review presentation to Upstream&lt;br /&gt;
&lt;br /&gt;
=== Contribution Simulation (1 hour) ===&lt;br /&gt;
&lt;br /&gt;
The students make a virtual contribution simulation using Lego bricks as props, with the goal of expanding a Lego town, built by upstream. They are divided into teams; the teacher is by turns the product owner in the company and the upstream.&lt;br /&gt;
&lt;br /&gt;
=== Contribution Planning (2 hours) ===&lt;br /&gt;
&lt;br /&gt;
* The students use template slides to prepare a 5-minute presentation of their planned contribution.&lt;br /&gt;
* A sample presentation is given by the teacher, as an example.&lt;br /&gt;
* Each student group prepares a presentation describing:&lt;br /&gt;
** the contribution they plan to work on during the online sessions,&lt;br /&gt;
** how they will engage with the Upstream,&lt;br /&gt;
** how it contributes to the company's agenda&lt;br /&gt;
** and whom they will be working with.&lt;br /&gt;
* Each student group presents its slides to the class&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=48506</id>
		<title>OpenStack Upstream Training/Info</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=48506"/>
				<updated>2014-04-13T11:15:30Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: commit message slides&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions.  These can significantly slow down the speed at which newcomers are successful at integrating their own roadmap into that of the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to help professional developers negotiate this hurdle.  It shows them how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time.  The educational program requires students to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In a followup session, the students benefit from individual online sessions to help them resolve any remaining problems they might have.&lt;br /&gt;
&lt;br /&gt;
== Objectives ==&lt;br /&gt;
&lt;br /&gt;
* Faster integration of the companies product roadmap into the OpenStack release cycle&lt;br /&gt;
* Successfully contribute one real world patch to an OpenStack component&lt;br /&gt;
* Master the technical tools&lt;br /&gt;
* Understand the OpenStack contribution workflow and social norms&lt;br /&gt;
&lt;br /&gt;
== Target Audience ==&lt;br /&gt;
&lt;br /&gt;
* Developers&lt;br /&gt;
* System administrators&lt;br /&gt;
&lt;br /&gt;
== Prerequisites ==&lt;br /&gt;
&lt;br /&gt;
* Being able to read and write English at a technical level.&lt;br /&gt;
* If contributing code, being technically proficient enough to carry out simple bug fixes in the project.&lt;br /&gt;
* If contributing documentation, being able to produce documents in the project's chosen infrastructure.&lt;br /&gt;
* Having at least 8 hours a week to dedicate to the project, be it through programming or through interacting with the community.&lt;br /&gt;
&lt;br /&gt;
== Duration ==&lt;br /&gt;
&lt;br /&gt;
* Face-to-face section: 2 days&lt;br /&gt;
* Online section: 10 one-hour individual mentoring sessions over a period of 4 to 10 weeks&lt;br /&gt;
&lt;br /&gt;
= Course Outline =&lt;br /&gt;
&lt;br /&gt;
== First day ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
* A week before Day 1: choice of a contribution, via email, with each participant&lt;br /&gt;
* Day 1: How OpenStack is made&lt;br /&gt;
* Day 1: Learn and practice git, gerrit, IRC&lt;br /&gt;
&lt;br /&gt;
* Day 2: The theory of contribution&lt;br /&gt;
* Day 2: Lego contribution simulation&lt;br /&gt;
* Day 2: Individual presentation of the contribution plan&lt;br /&gt;
* Day 2: Online mentoring&lt;br /&gt;
&lt;br /&gt;
=== How OpenStack is made (3h including 1h30 exercises) ===&lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Release_Cycle Release cycle] ( [http://dachary.org/loic/openstack-training/release-cycle.odp slides.odp] [http://dachary.org/loic/openstack-training/release-cycle.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Planning_.28Design.2C_Discuss_and_Target.29 Planning (Design, Discuss and Target)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Implementation_.28Milestone_iterations.29 Implementation (Milestone iterations)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Pre-release_.28Release_Candidates_dance.29 Pre-release (Release Candidates dance)]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_candidate_1 Release candidate 1]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Other_release_candidates Other release candidates]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_day Release day]&lt;br /&gt;
** Exercise: based on the [https://wiki.openstack.org/wiki/Icehouse_Release_Schedule Icehouse release schedule] find the URL of a document or a patch that belongs to each of the above steps.&lt;br /&gt;
* Relevant actors ( [http://dachary.org/loic/openstack-training/relevant-actors.odp slides.odp] [http://dachary.org/loic/openstack-training/relevant-actors.pdf slides.pdf] )&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] companies&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] individuals&lt;br /&gt;
** Your management&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee Technical Committee] ( [http://dachary.org/loic/openstack-training/technical-committee.odp slides.odp] [http://dachary.org/loic/openstack-training/technical-committee.pdf slides.pdf] )&lt;br /&gt;
** Decide what is an [https://wiki.openstack.org/wiki/Programs OpenStack Program]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/TechnicalCommittee meetings] &lt;br /&gt;
** Exercise: read [http://eavesdrop.openstack.org/meetings/tc/2014/tc.2014-04-01-20.03.log.html archived] and briefly comment on [https://etherpad.openstack.org/p/keystone-incubation-integration-requirements keystone document]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Program_Leads PTLs]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_PTL_seats_.28.22APC.22.29 APC]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_TC_seats_.28.22ATC.22.29 ATC]&lt;br /&gt;
** Exercise: each APC / ATC in the class add a URL to the etherpad proving it&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/NewProjects Program ecosystem]  ( [http://dachary.org/loic/openstack-training/program-ecosystem.odp slides.odp] [http://dachary.org/loic/openstack-training/program-ecosystem.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Incubation Incubated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Integrated Integrated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Core_.3F Core]&lt;br /&gt;
** [http://ci.openstack.org/stackforge.html Stackforge]&lt;br /&gt;
** Exercise: What kind of Program do you contribute to ?&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Summit Design summits]  ( [http://dachary.org/loic/openstack-training/design-summit.odp slides.odp] [http://dachary.org/loic/openstack-training/design-summit.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#Propose_sessions propose sessions]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#At_the_Design_Summit attend or lead a session]&lt;br /&gt;
** Exercise: Add a session proposal regarding your contribution in an etherpad, review two proposals&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Meetings IRC meetings]  ( [http://dachary.org/loic/openstack-training/irc-meetings.odp slides.odp] [http://dachary.org/loic/openstack-training/irc-meetings.pdf slides.pdf] )&lt;br /&gt;
** [http://ci.openstack.org/meetbot.html modified] [http://wiki.debian.org/MeetBot meetbot]&lt;br /&gt;
** #info - Add an info item to the minutes. People should liberally use this for important things they say, so that they can be logged in the minutes. &lt;br /&gt;
** #action - Document an action item in the minutes. Include any nicknames in the line, and the item will be assigned to them. (nicknames are case-sensitive) &lt;br /&gt;
** #help - Add a &amp;quot;Call for Help&amp;quot; to the minutes. Use this command when you need to recruit someone to do a task. (Counter-intuitively, this doesn't provide help on the bot)&lt;br /&gt;
** Exercise: lunch menu online meeting&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Workflow of an OpenStack contribution and tools (3h including 2h exercises) ===&lt;br /&gt;
&lt;br /&gt;
* [http://devstack.org/ devstack] ( [http://dachary.org/loic/openstack-training/devstack.odp slides.odp] [http://dachary.org/loic/openstack-training/devstack.pdf slides.pdf] )&lt;br /&gt;
** Ubuntu or Fedora&lt;br /&gt;
** git clone https://github.com/openstack-dev/devstack.git&lt;br /&gt;
** [http://devstack.org/configuration.html minimal configuration]&lt;br /&gt;
** cd devstack; ./stack.sh&lt;br /&gt;
** Exercise: get the code for the targeted contribution&lt;br /&gt;
* [[How_To_Contribute|HOW to contribute URL]] ( [http://dachary.org/loic/openstack-training/howtocontribute.odp slides.odp] [http://dachary.org/loic/openstack-training/howtocontribute.pdf slides.pdf] )&lt;br /&gt;
** [[Puppet-openstack#Contributing_to_the_modules|puppet stackforge]]&lt;br /&gt;
** [[Documentation/HowTo|documentation]]&lt;br /&gt;
** [http://docs.openstack.org/training-guides/content/under-construction.html training guides]&lt;br /&gt;
** Excercise: Apply for individual membership and sign the CLA&lt;br /&gt;
* [https://help.launchpad.net/ launchpad] ( [http://dachary.org/loic/openstack-training/launchpad.odp slides.odp] [http://dachary.org/loic/openstack-training/launchpad.pdf slides.pdf] )&lt;br /&gt;
** [[Blueprints|blueprints]]&lt;br /&gt;
** [[Bugs|bugs]]&lt;br /&gt;
*** [[Bugs#Bugs_reference|Status, Importance, Assigned To, Milestone, Tags]]&lt;br /&gt;
*** [[Bugs#Reporting|reporting a bug]]&lt;br /&gt;
*** [[Bugs#Confirming_.26_prioritizing|confirming and prioritizing]]&lt;br /&gt;
*** [[Bugs#Debugging_.28optional.29|debugging]]&lt;br /&gt;
*** [[Bugs#Bugfixing|bugfixing]]&lt;br /&gt;
** Exercise: review other launchpad bugs and improve yours&lt;br /&gt;
* [[GerritWorkflow|gerrit workflow]] ( [http://dachary.org/loic/openstack-training/gerrit.odp slides.odp] [http://dachary.org/loic/openstack-training/gerrit.pdf slides.pdf] )&lt;br /&gt;
** [[GerritWorkflow#Account_Setup|account setup]]&lt;br /&gt;
** [[GerritWorkflow#Git_Review_Installation|git review installation]]&lt;br /&gt;
** [[GerritWorkflow#SSH_Setup|ssh setup]]&lt;br /&gt;
** [[GerritWorkflow#Project_Setup|project setup]]&lt;br /&gt;
** [[GerritWorkflow#Normal_Workflow|gerrit workflow]]&lt;br /&gt;
** [[Testing#Unit_Tests|running unit tests]]&lt;br /&gt;
** [http://www.mediawiki.org/wiki/Gerrit/Advanced_usage review dependencies]&lt;br /&gt;
** Exercise: push a wip or draft and invite reviewers&lt;br /&gt;
* Branching model ( [http://dachary.org/loic/openstack-training/branching-model.odp slides.odp] [http://dachary.org/loic/openstack-training/branching-model.pdf slides.pdf] )&lt;br /&gt;
** [[BranchModel|development]]&lt;br /&gt;
** [[StableBranch|stable]]&lt;br /&gt;
** Exercise: checkout the latest stable branch&lt;br /&gt;
* [[GerritWorkflow#Committing_Changes|writing a commit message]] ( [http://dachary.org/loic/openstack-training/commit-message.odp slides.odp] [http://dachary.org/loic/openstack-training/commit-message.pdf slides.pdf] )&lt;br /&gt;
** reference to a bug or a blueprint&lt;br /&gt;
** amending a commit message&lt;br /&gt;
** Exercise: review each other messages on the draft&lt;br /&gt;
* [[GerritJenkinsGit|jenkins]]&lt;br /&gt;
** Exercise: add an error and match it to the jenkins message&lt;br /&gt;
* [[GerritJenkinsGit#Reviewing_a_Change|reviewing]]&lt;br /&gt;
** [[GerritJenkinsGit#Gerrit_Comment_Formatting|comment formatting]]&lt;br /&gt;
** [[GerritJenkinsGit#Gerrit_Best_Practices|use a topic branch]]&lt;br /&gt;
** more than one change for a single bug multiple changes&lt;br /&gt;
&lt;br /&gt;
== Second day ==&lt;br /&gt;
&lt;br /&gt;
=== The Contribution Process (3 hours) ===&lt;br /&gt;
&lt;br /&gt;
* Take the pulse of the project.&lt;br /&gt;
* Figure out who's behind it.&lt;br /&gt;
* Determine the project's social groups.&lt;br /&gt;
* Assess your approach.&lt;br /&gt;
* Engage immediately.&lt;br /&gt;
* Play with your network.&lt;br /&gt;
* Perform the smaller tasks.&lt;br /&gt;
* Choose a question.&lt;br /&gt;
* Familiarize yourself with the code of conduct.&lt;br /&gt;
* Understand the conventions.&lt;br /&gt;
* Explain what you do.&lt;br /&gt;
* Prepare the backport.&lt;br /&gt;
* Learn what's local and what's upstream.&lt;br /&gt;
* Learn what distinguishes good work flow from bad work flow.&lt;br /&gt;
* Quantify the delta.&lt;br /&gt;
* Speed up the acceptance.&lt;br /&gt;
* Determine the time frame.&lt;br /&gt;
* Maximize karma.&lt;br /&gt;
* Work in parallel.&lt;br /&gt;
* Archive and collect.&lt;br /&gt;
&lt;br /&gt;
=== Agile for Contributors (15 min) ===&lt;br /&gt;
&lt;br /&gt;
* Apply agile&lt;br /&gt;
* Who is the customer?&lt;br /&gt;
* Company &amp;amp; Upstream product owner&lt;br /&gt;
* Sprint review presentation to Upstream&lt;br /&gt;
&lt;br /&gt;
=== Contribution Simulation (1 hour) ===&lt;br /&gt;
&lt;br /&gt;
The students make a virtual contribution simulation using Lego bricks as props, with the goal of expanding a Lego town, built by upstream. They are divided into teams; the teacher is by turns the product owner in the company and the upstream.&lt;br /&gt;
&lt;br /&gt;
=== Contribution Planning (2 hours) ===&lt;br /&gt;
&lt;br /&gt;
* The students use template slides to prepare a 5-minute presentation of their planned contribution.&lt;br /&gt;
* A sample presentation is given by the teacher, as an example.&lt;br /&gt;
* Each student group prepares a presentation describing:&lt;br /&gt;
** the contribution they plan to work on during the online sessions,&lt;br /&gt;
** how they will engage with the Upstream,&lt;br /&gt;
** how it contributes to the company's agenda&lt;br /&gt;
** and whom they will be working with.&lt;br /&gt;
* Each student group presents its slides to the class&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=48500</id>
		<title>OpenStack Upstream Training/Info</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=48500"/>
				<updated>2014-04-13T10:49:49Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: gerrit slides&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions.  These can significantly slow down the speed at which newcomers are successful at integrating their own roadmap into that of the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to help professional developers negotiate this hurdle.  It shows them how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time.  The educational program requires students to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In a followup session, the students benefit from individual online sessions to help them resolve any remaining problems they might have.&lt;br /&gt;
&lt;br /&gt;
== Objectives ==&lt;br /&gt;
&lt;br /&gt;
* Faster integration of the companies product roadmap into the OpenStack release cycle&lt;br /&gt;
* Successfully contribute one real world patch to an OpenStack component&lt;br /&gt;
* Master the technical tools&lt;br /&gt;
* Understand the OpenStack contribution workflow and social norms&lt;br /&gt;
&lt;br /&gt;
== Target Audience ==&lt;br /&gt;
&lt;br /&gt;
* Developers&lt;br /&gt;
* System administrators&lt;br /&gt;
&lt;br /&gt;
== Prerequisites ==&lt;br /&gt;
&lt;br /&gt;
* Being able to read and write English at a technical level.&lt;br /&gt;
* If contributing code, being technically proficient enough to carry out simple bug fixes in the project.&lt;br /&gt;
* If contributing documentation, being able to produce documents in the project's chosen infrastructure.&lt;br /&gt;
* Having at least 8 hours a week to dedicate to the project, be it through programming or through interacting with the community.&lt;br /&gt;
&lt;br /&gt;
== Duration ==&lt;br /&gt;
&lt;br /&gt;
* Face-to-face section: 2 days&lt;br /&gt;
* Online section: 10 one-hour individual mentoring sessions over a period of 4 to 10 weeks&lt;br /&gt;
&lt;br /&gt;
= Course Outline =&lt;br /&gt;
&lt;br /&gt;
== First day ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
* A week before Day 1: choice of a contribution, via email, with each participant&lt;br /&gt;
* Day 1: How OpenStack is made&lt;br /&gt;
* Day 1: Learn and practice git, gerrit, IRC&lt;br /&gt;
&lt;br /&gt;
* Day 2: The theory of contribution&lt;br /&gt;
* Day 2: Lego contribution simulation&lt;br /&gt;
* Day 2: Individual presentation of the contribution plan&lt;br /&gt;
* Day 2: Online mentoring&lt;br /&gt;
&lt;br /&gt;
=== How OpenStack is made (3h including 1h30 exercises) ===&lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Release_Cycle Release cycle] ( [http://dachary.org/loic/openstack-training/release-cycle.odp slides.odp] [http://dachary.org/loic/openstack-training/release-cycle.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Planning_.28Design.2C_Discuss_and_Target.29 Planning (Design, Discuss and Target)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Implementation_.28Milestone_iterations.29 Implementation (Milestone iterations)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Pre-release_.28Release_Candidates_dance.29 Pre-release (Release Candidates dance)]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_candidate_1 Release candidate 1]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Other_release_candidates Other release candidates]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_day Release day]&lt;br /&gt;
** Exercise: based on the [https://wiki.openstack.org/wiki/Icehouse_Release_Schedule Icehouse release schedule] find the URL of a document or a patch that belongs to each of the above steps.&lt;br /&gt;
* Relevant actors ( [http://dachary.org/loic/openstack-training/relevant-actors.odp slides.odp] [http://dachary.org/loic/openstack-training/relevant-actors.pdf slides.pdf] )&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] companies&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] individuals&lt;br /&gt;
** Your management&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee Technical Committee] ( [http://dachary.org/loic/openstack-training/technical-committee.odp slides.odp] [http://dachary.org/loic/openstack-training/technical-committee.pdf slides.pdf] )&lt;br /&gt;
** Decide what is an [https://wiki.openstack.org/wiki/Programs OpenStack Program]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/TechnicalCommittee meetings] &lt;br /&gt;
** Exercise: read [http://eavesdrop.openstack.org/meetings/tc/2014/tc.2014-04-01-20.03.log.html archived] and briefly comment on [https://etherpad.openstack.org/p/keystone-incubation-integration-requirements keystone document]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Program_Leads PTLs]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_PTL_seats_.28.22APC.22.29 APC]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_TC_seats_.28.22ATC.22.29 ATC]&lt;br /&gt;
** Exercise: each APC / ATC in the class add a URL to the etherpad proving it&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/NewProjects Program ecosystem]  ( [http://dachary.org/loic/openstack-training/program-ecosystem.odp slides.odp] [http://dachary.org/loic/openstack-training/program-ecosystem.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Incubation Incubated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Integrated Integrated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Core_.3F Core]&lt;br /&gt;
** [http://ci.openstack.org/stackforge.html Stackforge]&lt;br /&gt;
** Exercise: What kind of Program do you contribute to ?&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Summit Design summits]  ( [http://dachary.org/loic/openstack-training/design-summit.odp slides.odp] [http://dachary.org/loic/openstack-training/design-summit.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#Propose_sessions propose sessions]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#At_the_Design_Summit attend or lead a session]&lt;br /&gt;
** Exercise: Add a session proposal regarding your contribution in an etherpad, review two proposals&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Meetings IRC meetings]  ( [http://dachary.org/loic/openstack-training/irc-meetings.odp slides.odp] [http://dachary.org/loic/openstack-training/irc-meetings.pdf slides.pdf] )&lt;br /&gt;
** [http://ci.openstack.org/meetbot.html modified] [http://wiki.debian.org/MeetBot meetbot]&lt;br /&gt;
** #info - Add an info item to the minutes. People should liberally use this for important things they say, so that they can be logged in the minutes. &lt;br /&gt;
** #action - Document an action item in the minutes. Include any nicknames in the line, and the item will be assigned to them. (nicknames are case-sensitive) &lt;br /&gt;
** #help - Add a &amp;quot;Call for Help&amp;quot; to the minutes. Use this command when you need to recruit someone to do a task. (Counter-intuitively, this doesn't provide help on the bot)&lt;br /&gt;
** Exercise: lunch menu online meeting&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Workflow of an OpenStack contribution and tools (3h including 2h exercises) ===&lt;br /&gt;
&lt;br /&gt;
* [http://devstack.org/ devstack] ( [http://dachary.org/loic/openstack-training/devstack.odp slides.odp] [http://dachary.org/loic/openstack-training/devstack.pdf slides.pdf] )&lt;br /&gt;
** Ubuntu or Fedora&lt;br /&gt;
** git clone https://github.com/openstack-dev/devstack.git&lt;br /&gt;
** [http://devstack.org/configuration.html minimal configuration]&lt;br /&gt;
** cd devstack; ./stack.sh&lt;br /&gt;
** Exercise: get the code for the targeted contribution&lt;br /&gt;
* [[How_To_Contribute|HOW to contribute URL]] ( [http://dachary.org/loic/openstack-training/howtocontribute.odp slides.odp] [http://dachary.org/loic/openstack-training/howtocontribute.pdf slides.pdf] )&lt;br /&gt;
** [[Puppet-openstack#Contributing_to_the_modules|puppet stackforge]]&lt;br /&gt;
** [[Documentation/HowTo|documentation]]&lt;br /&gt;
** [http://docs.openstack.org/training-guides/content/under-construction.html training guides]&lt;br /&gt;
** Excercise: Apply for individual membership and sign the CLA&lt;br /&gt;
* [https://help.launchpad.net/ launchpad] ( [http://dachary.org/loic/openstack-training/launchpad.odp slides.odp] [http://dachary.org/loic/openstack-training/launchpad.pdf slides.pdf] )&lt;br /&gt;
** [[Blueprints|blueprints]]&lt;br /&gt;
** [[Bugs|bugs]]&lt;br /&gt;
*** [[Bugs#Bugs_reference|Status, Importance, Assigned To, Milestone, Tags]]&lt;br /&gt;
*** [[Bugs#Reporting|reporting a bug]]&lt;br /&gt;
*** [[Bugs#Confirming_.26_prioritizing|confirming and prioritizing]]&lt;br /&gt;
*** [[Bugs#Debugging_.28optional.29|debugging]]&lt;br /&gt;
*** [[Bugs#Bugfixing|bugfixing]]&lt;br /&gt;
** Exercise: review other launchpad bugs and improve yours&lt;br /&gt;
* [[GerritWorkflow|gerrit workflow]] ( [http://dachary.org/loic/openstack-training/gerrit.odp slides.odp] [http://dachary.org/loic/openstack-training/gerrit.pdf slides.pdf] )&lt;br /&gt;
** [[GerritWorkflow#Account_Setup|account setup]]&lt;br /&gt;
** [[GerritWorkflow#Git_Review_Installation|git review installation]]&lt;br /&gt;
** [[GerritWorkflow#SSH_Setup|ssh setup]]&lt;br /&gt;
** [[GerritWorkflow#Project_Setup|project setup]]&lt;br /&gt;
** [[GerritWorkflow#Normal_Workflow|gerrit workflow]]&lt;br /&gt;
** [[Testing#Unit_Tests|running unit tests]]&lt;br /&gt;
** [http://www.mediawiki.org/wiki/Gerrit/Advanced_usage review dependencies]&lt;br /&gt;
** Exercise: push a wip or draft and invite reviewers&lt;br /&gt;
* Branching model ( [http://dachary.org/loic/openstack-training/branching-model.odp slides.odp] [http://dachary.org/loic/openstack-training/branching-model.pdf slides.pdf] )&lt;br /&gt;
** [[BranchModel|development]]&lt;br /&gt;
** [[StableBranch|stable]]&lt;br /&gt;
** Exercise: checkout the latest stable branch&lt;br /&gt;
* [[GerritWorkflow#Committing_Changes|writing a commit message]]&lt;br /&gt;
** reference to a bug or a blueprint&lt;br /&gt;
** amending a commit message&lt;br /&gt;
** Exercise: review each other messages on the draft&lt;br /&gt;
* [[GerritJenkinsGit|jenkins]]&lt;br /&gt;
** Exercise: add an error and match it to the jenkins message&lt;br /&gt;
* [[GerritJenkinsGit#Reviewing_a_Change|reviewing]]&lt;br /&gt;
** [[GerritJenkinsGit#Gerrit_Comment_Formatting|comment formatting]]&lt;br /&gt;
** [[GerritJenkinsGit#Gerrit_Best_Practices|use a topic branch]]&lt;br /&gt;
** more than one change for a single bug multiple changes&lt;br /&gt;
&lt;br /&gt;
== Second day ==&lt;br /&gt;
&lt;br /&gt;
=== The Contribution Process (3 hours) ===&lt;br /&gt;
&lt;br /&gt;
* Take the pulse of the project.&lt;br /&gt;
* Figure out who's behind it.&lt;br /&gt;
* Determine the project's social groups.&lt;br /&gt;
* Assess your approach.&lt;br /&gt;
* Engage immediately.&lt;br /&gt;
* Play with your network.&lt;br /&gt;
* Perform the smaller tasks.&lt;br /&gt;
* Choose a question.&lt;br /&gt;
* Familiarize yourself with the code of conduct.&lt;br /&gt;
* Understand the conventions.&lt;br /&gt;
* Explain what you do.&lt;br /&gt;
* Prepare the backport.&lt;br /&gt;
* Learn what's local and what's upstream.&lt;br /&gt;
* Learn what distinguishes good work flow from bad work flow.&lt;br /&gt;
* Quantify the delta.&lt;br /&gt;
* Speed up the acceptance.&lt;br /&gt;
* Determine the time frame.&lt;br /&gt;
* Maximize karma.&lt;br /&gt;
* Work in parallel.&lt;br /&gt;
* Archive and collect.&lt;br /&gt;
&lt;br /&gt;
=== Agile for Contributors (15 min) ===&lt;br /&gt;
&lt;br /&gt;
* Apply agile&lt;br /&gt;
* Who is the customer?&lt;br /&gt;
* Company &amp;amp; Upstream product owner&lt;br /&gt;
* Sprint review presentation to Upstream&lt;br /&gt;
&lt;br /&gt;
=== Contribution Simulation (1 hour) ===&lt;br /&gt;
&lt;br /&gt;
The students make a virtual contribution simulation using Lego bricks as props, with the goal of expanding a Lego town, built by upstream. They are divided into teams; the teacher is by turns the product owner in the company and the upstream.&lt;br /&gt;
&lt;br /&gt;
=== Contribution Planning (2 hours) ===&lt;br /&gt;
&lt;br /&gt;
* The students use template slides to prepare a 5-minute presentation of their planned contribution.&lt;br /&gt;
* A sample presentation is given by the teacher, as an example.&lt;br /&gt;
* Each student group prepares a presentation describing:&lt;br /&gt;
** the contribution they plan to work on during the online sessions,&lt;br /&gt;
** how they will engage with the Upstream,&lt;br /&gt;
** how it contributes to the company's agenda&lt;br /&gt;
** and whom they will be working with.&lt;br /&gt;
* Each student group presents its slides to the class&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=48498</id>
		<title>OpenStack Upstream Training/Info</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=48498"/>
				<updated>2014-04-13T08:48:33Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: do not include bug selection strategy in the first day&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions.  These can significantly slow down the speed at which newcomers are successful at integrating their own roadmap into that of the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to help professional developers negotiate this hurdle.  It shows them how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time.  The educational program requires students to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In a followup session, the students benefit from individual online sessions to help them resolve any remaining problems they might have.&lt;br /&gt;
&lt;br /&gt;
== Objectives ==&lt;br /&gt;
&lt;br /&gt;
* Faster integration of the companies product roadmap into the OpenStack release cycle&lt;br /&gt;
* Successfully contribute one real world patch to an OpenStack component&lt;br /&gt;
* Master the technical tools&lt;br /&gt;
* Understand the OpenStack contribution workflow and social norms&lt;br /&gt;
&lt;br /&gt;
== Target Audience ==&lt;br /&gt;
&lt;br /&gt;
* Developers&lt;br /&gt;
* System administrators&lt;br /&gt;
&lt;br /&gt;
== Prerequisites ==&lt;br /&gt;
&lt;br /&gt;
* Being able to read and write English at a technical level.&lt;br /&gt;
* If contributing code, being technically proficient enough to carry out simple bug fixes in the project.&lt;br /&gt;
* If contributing documentation, being able to produce documents in the project's chosen infrastructure.&lt;br /&gt;
* Having at least 8 hours a week to dedicate to the project, be it through programming or through interacting with the community.&lt;br /&gt;
&lt;br /&gt;
== Duration ==&lt;br /&gt;
&lt;br /&gt;
* Face-to-face section: 2 days&lt;br /&gt;
* Online section: 10 one-hour individual mentoring sessions over a period of 4 to 10 weeks&lt;br /&gt;
&lt;br /&gt;
= Course Outline =&lt;br /&gt;
&lt;br /&gt;
== First day ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
* A week before Day 1: choice of a contribution, via email, with each participant&lt;br /&gt;
* Day 1: How OpenStack is made&lt;br /&gt;
* Day 1: Learn and practice git, gerrit, IRC&lt;br /&gt;
&lt;br /&gt;
* Day 2: The theory of contribution&lt;br /&gt;
* Day 2: Lego contribution simulation&lt;br /&gt;
* Day 2: Individual presentation of the contribution plan&lt;br /&gt;
* Day 2: Online mentoring&lt;br /&gt;
&lt;br /&gt;
=== How OpenStack is made (3h including 1h30 exercises) ===&lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Release_Cycle Release cycle] ( [http://dachary.org/loic/openstack-training/release-cycle.odp slides.odp] [http://dachary.org/loic/openstack-training/release-cycle.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Planning_.28Design.2C_Discuss_and_Target.29 Planning (Design, Discuss and Target)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Implementation_.28Milestone_iterations.29 Implementation (Milestone iterations)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Pre-release_.28Release_Candidates_dance.29 Pre-release (Release Candidates dance)]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_candidate_1 Release candidate 1]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Other_release_candidates Other release candidates]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_day Release day]&lt;br /&gt;
** Exercise: based on the [https://wiki.openstack.org/wiki/Icehouse_Release_Schedule Icehouse release schedule] find the URL of a document or a patch that belongs to each of the above steps.&lt;br /&gt;
* Relevant actors ( [http://dachary.org/loic/openstack-training/relevant-actors.odp slides.odp] [http://dachary.org/loic/openstack-training/relevant-actors.pdf slides.pdf] )&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] companies&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] individuals&lt;br /&gt;
** Your management&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee Technical Committee] ( [http://dachary.org/loic/openstack-training/technical-committee.odp slides.odp] [http://dachary.org/loic/openstack-training/technical-committee.pdf slides.pdf] )&lt;br /&gt;
** Decide what is an [https://wiki.openstack.org/wiki/Programs OpenStack Program]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/TechnicalCommittee meetings] &lt;br /&gt;
** Exercise: read [http://eavesdrop.openstack.org/meetings/tc/2014/tc.2014-04-01-20.03.log.html archived] and briefly comment on [https://etherpad.openstack.org/p/keystone-incubation-integration-requirements keystone document]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Program_Leads PTLs]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_PTL_seats_.28.22APC.22.29 APC]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_TC_seats_.28.22ATC.22.29 ATC]&lt;br /&gt;
** Exercise: each APC / ATC in the class add a URL to the etherpad proving it&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/NewProjects Program ecosystem]  ( [http://dachary.org/loic/openstack-training/program-ecosystem.odp slides.odp] [http://dachary.org/loic/openstack-training/program-ecosystem.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Incubation Incubated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Integrated Integrated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Core_.3F Core]&lt;br /&gt;
** [http://ci.openstack.org/stackforge.html Stackforge]&lt;br /&gt;
** Exercise: What kind of Program do you contribute to ?&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Summit Design summits]  ( [http://dachary.org/loic/openstack-training/design-summit.odp slides.odp] [http://dachary.org/loic/openstack-training/design-summit.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#Propose_sessions propose sessions]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#At_the_Design_Summit attend or lead a session]&lt;br /&gt;
** Exercise: Add a session proposal regarding your contribution in an etherpad, review two proposals&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Meetings IRC meetings]  ( [http://dachary.org/loic/openstack-training/irc-meetings.odp slides.odp] [http://dachary.org/loic/openstack-training/irc-meetings.pdf slides.pdf] )&lt;br /&gt;
** [http://ci.openstack.org/meetbot.html modified] [http://wiki.debian.org/MeetBot meetbot]&lt;br /&gt;
** #info - Add an info item to the minutes. People should liberally use this for important things they say, so that they can be logged in the minutes. &lt;br /&gt;
** #action - Document an action item in the minutes. Include any nicknames in the line, and the item will be assigned to them. (nicknames are case-sensitive) &lt;br /&gt;
** #help - Add a &amp;quot;Call for Help&amp;quot; to the minutes. Use this command when you need to recruit someone to do a task. (Counter-intuitively, this doesn't provide help on the bot)&lt;br /&gt;
** Exercise: lunch menu online meeting&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Workflow of an OpenStack contribution and tools (3h including 2h exercises) ===&lt;br /&gt;
&lt;br /&gt;
* [http://devstack.org/ devstack] ( [http://dachary.org/loic/openstack-training/devstack.odp slides.odp] [http://dachary.org/loic/openstack-training/devstack.pdf slides.pdf] )&lt;br /&gt;
** Ubuntu or Fedora&lt;br /&gt;
** git clone https://github.com/openstack-dev/devstack.git&lt;br /&gt;
** [http://devstack.org/configuration.html minimal configuration]&lt;br /&gt;
** cd devstack; ./stack.sh&lt;br /&gt;
** Exercise: get the code for the targeted contribution&lt;br /&gt;
* [[How_To_Contribute|HOW to contribute URL]] ( [http://dachary.org/loic/openstack-training/howtocontribute.odp slides.odp] [http://dachary.org/loic/openstack-training/howtocontribute.pdf slides.pdf] )&lt;br /&gt;
** [[Puppet-openstack#Contributing_to_the_modules|puppet stackforge]]&lt;br /&gt;
** [[Documentation/HowTo|documentation]]&lt;br /&gt;
** [http://docs.openstack.org/training-guides/content/under-construction.html training guides]&lt;br /&gt;
** Excercise: Apply for individual membership and sign the CLA&lt;br /&gt;
* [https://help.launchpad.net/ launchpad] ( [http://dachary.org/loic/openstack-training/launchpad.odp slides.odp] [http://dachary.org/loic/openstack-training/launchpad.pdf slides.pdf] )&lt;br /&gt;
** [[Blueprints|blueprints]]&lt;br /&gt;
** [[Bugs|bugs]]&lt;br /&gt;
*** [[Bugs#Bugs_reference|Status, Importance, Assigned To, Milestone, Tags]]&lt;br /&gt;
*** [[Bugs#Reporting|reporting a bug]]&lt;br /&gt;
*** [[Bugs#Confirming_.26_prioritizing|confirming and prioritizing]]&lt;br /&gt;
*** [[Bugs#Debugging_.28optional.29|debugging]]&lt;br /&gt;
*** [[Bugs#Bugfixing|bugfixing]]&lt;br /&gt;
** Exercise: review other launchpad bugs and improve yours&lt;br /&gt;
* [[GerritWorkflow|gerrit workflow]]&lt;br /&gt;
** [[GerritWorkflow#Account_Setup|account setup]]&lt;br /&gt;
** [[GerritWorkflow#Git_Review_Installation|git review installation]]&lt;br /&gt;
** [[GerritWorkflow#SSH_Setup|ssh setup]]&lt;br /&gt;
** [[GerritWorkflow#Project_Setup|project setup]]&lt;br /&gt;
** [[GerritWorkflow#Normal_Workflow|gerrit workflow]]&lt;br /&gt;
** [[Testing#Unit_Tests|running unit tests]]&lt;br /&gt;
** [http://www.mediawiki.org/wiki/Gerrit/Advanced_usage review dependencies]&lt;br /&gt;
** Exercise: push a wip or draft and invite reviewers&lt;br /&gt;
* Branching model ( [http://dachary.org/loic/openstack-training/branching-model.odp slides.odp] [http://dachary.org/loic/openstack-training/branching-model.pdf slides.pdf] )&lt;br /&gt;
** [[BranchModel|development]]&lt;br /&gt;
** [[StableBranch|stable]]&lt;br /&gt;
** Exercise: checkout the latest stable branch&lt;br /&gt;
* [[GerritWorkflow#Committing_Changes|writing a commit message]]&lt;br /&gt;
** reference to a bug or a blueprint&lt;br /&gt;
** amending a commit message&lt;br /&gt;
** Exercise: review each other messages on the draft&lt;br /&gt;
* [[GerritJenkinsGit|jenkins]]&lt;br /&gt;
** Exercise: add an error and match it to the jenkins message&lt;br /&gt;
* [[GerritJenkinsGit#Reviewing_a_Change|reviewing]]&lt;br /&gt;
** [[GerritJenkinsGit#Gerrit_Comment_Formatting|comment formatting]]&lt;br /&gt;
** [[GerritJenkinsGit#Gerrit_Best_Practices|use a topic branch]]&lt;br /&gt;
** more than one change for a single bug multiple changes&lt;br /&gt;
&lt;br /&gt;
== Second day ==&lt;br /&gt;
&lt;br /&gt;
=== The Contribution Process (3 hours) ===&lt;br /&gt;
&lt;br /&gt;
* Take the pulse of the project.&lt;br /&gt;
* Figure out who's behind it.&lt;br /&gt;
* Determine the project's social groups.&lt;br /&gt;
* Assess your approach.&lt;br /&gt;
* Engage immediately.&lt;br /&gt;
* Play with your network.&lt;br /&gt;
* Perform the smaller tasks.&lt;br /&gt;
* Choose a question.&lt;br /&gt;
* Familiarize yourself with the code of conduct.&lt;br /&gt;
* Understand the conventions.&lt;br /&gt;
* Explain what you do.&lt;br /&gt;
* Prepare the backport.&lt;br /&gt;
* Learn what's local and what's upstream.&lt;br /&gt;
* Learn what distinguishes good work flow from bad work flow.&lt;br /&gt;
* Quantify the delta.&lt;br /&gt;
* Speed up the acceptance.&lt;br /&gt;
* Determine the time frame.&lt;br /&gt;
* Maximize karma.&lt;br /&gt;
* Work in parallel.&lt;br /&gt;
* Archive and collect.&lt;br /&gt;
&lt;br /&gt;
=== Agile for Contributors (15 min) ===&lt;br /&gt;
&lt;br /&gt;
* Apply agile&lt;br /&gt;
* Who is the customer?&lt;br /&gt;
* Company &amp;amp; Upstream product owner&lt;br /&gt;
* Sprint review presentation to Upstream&lt;br /&gt;
&lt;br /&gt;
=== Contribution Simulation (1 hour) ===&lt;br /&gt;
&lt;br /&gt;
The students make a virtual contribution simulation using Lego bricks as props, with the goal of expanding a Lego town, built by upstream. They are divided into teams; the teacher is by turns the product owner in the company and the upstream.&lt;br /&gt;
&lt;br /&gt;
=== Contribution Planning (2 hours) ===&lt;br /&gt;
&lt;br /&gt;
* The students use template slides to prepare a 5-minute presentation of their planned contribution.&lt;br /&gt;
* A sample presentation is given by the teacher, as an example.&lt;br /&gt;
* Each student group prepares a presentation describing:&lt;br /&gt;
** the contribution they plan to work on during the online sessions,&lt;br /&gt;
** how they will engage with the Upstream,&lt;br /&gt;
** how it contributes to the company's agenda&lt;br /&gt;
** and whom they will be working with.&lt;br /&gt;
* Each student group presents its slides to the class&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=48497</id>
		<title>OpenStack Upstream Training/Info</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=48497"/>
				<updated>2014-04-13T08:45:30Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: launchpad slides&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions.  These can significantly slow down the speed at which newcomers are successful at integrating their own roadmap into that of the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to help professional developers negotiate this hurdle.  It shows them how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time.  The educational program requires students to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In a followup session, the students benefit from individual online sessions to help them resolve any remaining problems they might have.&lt;br /&gt;
&lt;br /&gt;
== Objectives ==&lt;br /&gt;
&lt;br /&gt;
* Faster integration of the companies product roadmap into the OpenStack release cycle&lt;br /&gt;
* Successfully contribute one real world patch to an OpenStack component&lt;br /&gt;
* Master the technical tools&lt;br /&gt;
* Understand the OpenStack contribution workflow and social norms&lt;br /&gt;
&lt;br /&gt;
== Target Audience ==&lt;br /&gt;
&lt;br /&gt;
* Developers&lt;br /&gt;
* System administrators&lt;br /&gt;
&lt;br /&gt;
== Prerequisites ==&lt;br /&gt;
&lt;br /&gt;
* Being able to read and write English at a technical level.&lt;br /&gt;
* If contributing code, being technically proficient enough to carry out simple bug fixes in the project.&lt;br /&gt;
* If contributing documentation, being able to produce documents in the project's chosen infrastructure.&lt;br /&gt;
* Having at least 8 hours a week to dedicate to the project, be it through programming or through interacting with the community.&lt;br /&gt;
&lt;br /&gt;
== Duration ==&lt;br /&gt;
&lt;br /&gt;
* Face-to-face section: 2 days&lt;br /&gt;
* Online section: 10 one-hour individual mentoring sessions over a period of 4 to 10 weeks&lt;br /&gt;
&lt;br /&gt;
= Course Outline =&lt;br /&gt;
&lt;br /&gt;
== First day ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
* A week before Day 1: choice of a contribution, via email, with each participant&lt;br /&gt;
* Day 1: How OpenStack is made&lt;br /&gt;
* Day 1: Learn and practice git, gerrit, IRC&lt;br /&gt;
&lt;br /&gt;
* Day 2: The theory of contribution&lt;br /&gt;
* Day 2: Lego contribution simulation&lt;br /&gt;
* Day 2: Individual presentation of the contribution plan&lt;br /&gt;
* Day 2: Online mentoring&lt;br /&gt;
&lt;br /&gt;
=== How OpenStack is made (3h including 1h30 exercises) ===&lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Release_Cycle Release cycle] ( [http://dachary.org/loic/openstack-training/release-cycle.odp slides.odp] [http://dachary.org/loic/openstack-training/release-cycle.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Planning_.28Design.2C_Discuss_and_Target.29 Planning (Design, Discuss and Target)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Implementation_.28Milestone_iterations.29 Implementation (Milestone iterations)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Pre-release_.28Release_Candidates_dance.29 Pre-release (Release Candidates dance)]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_candidate_1 Release candidate 1]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Other_release_candidates Other release candidates]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_day Release day]&lt;br /&gt;
** Exercise: based on the [https://wiki.openstack.org/wiki/Icehouse_Release_Schedule Icehouse release schedule] find the URL of a document or a patch that belongs to each of the above steps.&lt;br /&gt;
* Relevant actors ( [http://dachary.org/loic/openstack-training/relevant-actors.odp slides.odp] [http://dachary.org/loic/openstack-training/relevant-actors.pdf slides.pdf] )&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] companies&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] individuals&lt;br /&gt;
** Your management&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee Technical Committee] ( [http://dachary.org/loic/openstack-training/technical-committee.odp slides.odp] [http://dachary.org/loic/openstack-training/technical-committee.pdf slides.pdf] )&lt;br /&gt;
** Decide what is an [https://wiki.openstack.org/wiki/Programs OpenStack Program]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/TechnicalCommittee meetings] &lt;br /&gt;
** Exercise: read [http://eavesdrop.openstack.org/meetings/tc/2014/tc.2014-04-01-20.03.log.html archived] and briefly comment on [https://etherpad.openstack.org/p/keystone-incubation-integration-requirements keystone document]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Program_Leads PTLs]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_PTL_seats_.28.22APC.22.29 APC]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_TC_seats_.28.22ATC.22.29 ATC]&lt;br /&gt;
** Exercise: each APC / ATC in the class add a URL to the etherpad proving it&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/NewProjects Program ecosystem]  ( [http://dachary.org/loic/openstack-training/program-ecosystem.odp slides.odp] [http://dachary.org/loic/openstack-training/program-ecosystem.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Incubation Incubated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Integrated Integrated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Core_.3F Core]&lt;br /&gt;
** [http://ci.openstack.org/stackforge.html Stackforge]&lt;br /&gt;
** Exercise: What kind of Program do you contribute to ?&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Summit Design summits]  ( [http://dachary.org/loic/openstack-training/design-summit.odp slides.odp] [http://dachary.org/loic/openstack-training/design-summit.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#Propose_sessions propose sessions]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#At_the_Design_Summit attend or lead a session]&lt;br /&gt;
** Exercise: Add a session proposal regarding your contribution in an etherpad, review two proposals&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Meetings IRC meetings]  ( [http://dachary.org/loic/openstack-training/irc-meetings.odp slides.odp] [http://dachary.org/loic/openstack-training/irc-meetings.pdf slides.pdf] )&lt;br /&gt;
** [http://ci.openstack.org/meetbot.html modified] [http://wiki.debian.org/MeetBot meetbot]&lt;br /&gt;
** #info - Add an info item to the minutes. People should liberally use this for important things they say, so that they can be logged in the minutes. &lt;br /&gt;
** #action - Document an action item in the minutes. Include any nicknames in the line, and the item will be assigned to them. (nicknames are case-sensitive) &lt;br /&gt;
** #help - Add a &amp;quot;Call for Help&amp;quot; to the minutes. Use this command when you need to recruit someone to do a task. (Counter-intuitively, this doesn't provide help on the bot)&lt;br /&gt;
** Exercise: lunch menu online meeting&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Workflow of an OpenStack contribution and tools (3h including 2h exercises) ===&lt;br /&gt;
&lt;br /&gt;
* [http://devstack.org/ devstack] ( [http://dachary.org/loic/openstack-training/devstack.odp slides.odp] [http://dachary.org/loic/openstack-training/devstack.pdf slides.pdf] )&lt;br /&gt;
** Ubuntu or Fedora&lt;br /&gt;
** git clone https://github.com/openstack-dev/devstack.git&lt;br /&gt;
** [http://devstack.org/configuration.html minimal configuration]&lt;br /&gt;
** cd devstack; ./stack.sh&lt;br /&gt;
** Exercise: get the code for the targeted contribution&lt;br /&gt;
* [[How_To_Contribute|HOW to contribute URL]] ( [http://dachary.org/loic/openstack-training/howtocontribute.odp slides.odp] [http://dachary.org/loic/openstack-training/howtocontribute.pdf slides.pdf] )&lt;br /&gt;
** [[Puppet-openstack#Contributing_to_the_modules|puppet stackforge]]&lt;br /&gt;
** [[Documentation/HowTo|documentation]]&lt;br /&gt;
** [http://docs.openstack.org/training-guides/content/under-construction.html training guides]&lt;br /&gt;
** Excercise: Apply for individual membership and sign the CLA&lt;br /&gt;
* [https://help.launchpad.net/ launchpad] ( [http://dachary.org/loic/openstack-training/launchpad.odp slides.odp] [http://dachary.org/loic/openstack-training/launchpad.pdf slides.pdf] )&lt;br /&gt;
** [[Blueprints|blueprints]]&lt;br /&gt;
** [[Bugs|bugs]]&lt;br /&gt;
*** [[Bugs#Bugs_reference|Status, Importance, Assigned To, Milestone, Tags]]&lt;br /&gt;
*** [[Bugs#Reporting|reporting a bug]]&lt;br /&gt;
*** [[Bugs#Confirming_.26_prioritizing|confirming and prioritizing]]&lt;br /&gt;
*** [[Bugs#Debugging_.28optional.29|debugging]]&lt;br /&gt;
*** [[Bugs#Bugfixing|bugfixing]]&lt;br /&gt;
** Selecting a bug&lt;br /&gt;
*** age&lt;br /&gt;
*** complexity&lt;br /&gt;
** Exercise: review other launchpad bugs and improve yours&lt;br /&gt;
* [[GerritWorkflow|gerrit workflow]]&lt;br /&gt;
** [[GerritWorkflow#Account_Setup|account setup]]&lt;br /&gt;
** [[GerritWorkflow#Git_Review_Installation|git review installation]]&lt;br /&gt;
** [[GerritWorkflow#SSH_Setup|ssh setup]]&lt;br /&gt;
** [[GerritWorkflow#Project_Setup|project setup]]&lt;br /&gt;
** [[GerritWorkflow#Normal_Workflow|gerrit workflow]]&lt;br /&gt;
** [[Testing#Unit_Tests|running unit tests]]&lt;br /&gt;
** [http://www.mediawiki.org/wiki/Gerrit/Advanced_usage review dependencies]&lt;br /&gt;
** Exercise: push a wip or draft and invite reviewers&lt;br /&gt;
* Branching model ( [http://dachary.org/loic/openstack-training/branching-model.odp slides.odp] [http://dachary.org/loic/openstack-training/branching-model.pdf slides.pdf] )&lt;br /&gt;
** [[BranchModel|development]]&lt;br /&gt;
** [[StableBranch|stable]]&lt;br /&gt;
** Exercise: checkout the latest stable branch&lt;br /&gt;
* [[GerritWorkflow#Committing_Changes|writing a commit message]]&lt;br /&gt;
** reference to a bug or a blueprint&lt;br /&gt;
** amending a commit message&lt;br /&gt;
** Exercise: review each other messages on the draft&lt;br /&gt;
* [[GerritJenkinsGit|jenkins]]&lt;br /&gt;
** Exercise: add an error and match it to the jenkins message&lt;br /&gt;
* [[GerritJenkinsGit#Reviewing_a_Change|reviewing]]&lt;br /&gt;
** [[GerritJenkinsGit#Gerrit_Comment_Formatting|comment formatting]]&lt;br /&gt;
** [[GerritJenkinsGit#Gerrit_Best_Practices|use a topic branch]]&lt;br /&gt;
** more than one change for a single bug multiple changes&lt;br /&gt;
&lt;br /&gt;
== Second day ==&lt;br /&gt;
&lt;br /&gt;
=== The Contribution Process (3 hours) ===&lt;br /&gt;
&lt;br /&gt;
* Take the pulse of the project.&lt;br /&gt;
* Figure out who's behind it.&lt;br /&gt;
* Determine the project's social groups.&lt;br /&gt;
* Assess your approach.&lt;br /&gt;
* Engage immediately.&lt;br /&gt;
* Play with your network.&lt;br /&gt;
* Perform the smaller tasks.&lt;br /&gt;
* Choose a question.&lt;br /&gt;
* Familiarize yourself with the code of conduct.&lt;br /&gt;
* Understand the conventions.&lt;br /&gt;
* Explain what you do.&lt;br /&gt;
* Prepare the backport.&lt;br /&gt;
* Learn what's local and what's upstream.&lt;br /&gt;
* Learn what distinguishes good work flow from bad work flow.&lt;br /&gt;
* Quantify the delta.&lt;br /&gt;
* Speed up the acceptance.&lt;br /&gt;
* Determine the time frame.&lt;br /&gt;
* Maximize karma.&lt;br /&gt;
* Work in parallel.&lt;br /&gt;
* Archive and collect.&lt;br /&gt;
&lt;br /&gt;
=== Agile for Contributors (15 min) ===&lt;br /&gt;
&lt;br /&gt;
* Apply agile&lt;br /&gt;
* Who is the customer?&lt;br /&gt;
* Company &amp;amp; Upstream product owner&lt;br /&gt;
* Sprint review presentation to Upstream&lt;br /&gt;
&lt;br /&gt;
=== Contribution Simulation (1 hour) ===&lt;br /&gt;
&lt;br /&gt;
The students make a virtual contribution simulation using Lego bricks as props, with the goal of expanding a Lego town, built by upstream. They are divided into teams; the teacher is by turns the product owner in the company and the upstream.&lt;br /&gt;
&lt;br /&gt;
=== Contribution Planning (2 hours) ===&lt;br /&gt;
&lt;br /&gt;
* The students use template slides to prepare a 5-minute presentation of their planned contribution.&lt;br /&gt;
* A sample presentation is given by the teacher, as an example.&lt;br /&gt;
* Each student group prepares a presentation describing:&lt;br /&gt;
** the contribution they plan to work on during the online sessions,&lt;br /&gt;
** how they will engage with the Upstream,&lt;br /&gt;
** how it contributes to the company's agenda&lt;br /&gt;
** and whom they will be working with.&lt;br /&gt;
* Each student group presents its slides to the class&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=Bugs&amp;diff=48496</id>
		<title>Bugs</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=Bugs&amp;diff=48496"/>
				<updated>2014-04-13T08:36:25Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: remove extra )&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&amp;lt;!-- ## page was renamed from [[BugsLifecycle]] --&amp;gt;&lt;br /&gt;
Launchpad bugs are used to track known issues and defects in OpenStack software.&lt;br /&gt;
&lt;br /&gt;
= Bugs reference =&lt;br /&gt;
&lt;br /&gt;
Here are the different fields available in Launchpad bugs, and how we use them within the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
=== Status ===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot;&lt;br /&gt;
|  ''New''&lt;br /&gt;
| The bug was just created &lt;br /&gt;
|-&lt;br /&gt;
|  ''Incomplete'' &lt;br /&gt;
| The bug is waiting on input from the reporter &lt;br /&gt;
|-&lt;br /&gt;
|  ''Confirmed'' &lt;br /&gt;
| The bug was reproduced or confirmed as a genuine bug &lt;br /&gt;
|-&lt;br /&gt;
|  ''Triaged'' &lt;br /&gt;
| The bug comments contain a full analysis on how to properly fix the issue &lt;br /&gt;
|-&lt;br /&gt;
|  ''In Progress'' &lt;br /&gt;
| Work on the fix is in progress, bug has an assignee &lt;br /&gt;
|-&lt;br /&gt;
|  ''Fix Committed'' &lt;br /&gt;
| The branch containing the fix was merged into master &lt;br /&gt;
|-&lt;br /&gt;
|  ''Fix Released'' &lt;br /&gt;
| The fix is included in the milestone-proposed branch, a past milestone or a past release &lt;br /&gt;
|-&lt;br /&gt;
|  ''Invalid'' &lt;br /&gt;
| This is not a bug &lt;br /&gt;
|-&lt;br /&gt;
|  ''Opinion'' &lt;br /&gt;
| This is a valid issue, but it is the way it should be &lt;br /&gt;
|-&lt;br /&gt;
|  ''Won't Fix'' &lt;br /&gt;
| This is a valid issue, but we don't intend to fix that &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Importance ===&lt;br /&gt;
&lt;br /&gt;
This should be set when the status reaches ''Confirmed'' stage. It is a combination of short-term impact (unavailability of a feature), long-term impact (data corruption, security breach), number of people affected, and presence of a documented workaround. Use these as guidelines:&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot;&lt;br /&gt;
|  ''Critical'' &lt;br /&gt;
| Data corruption / complete failure affecting most users, no workaround &lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot; | ''High'' &lt;br /&gt;
| Data corruption / complete failure affecting most users, with workaround&lt;br /&gt;
|-&lt;br /&gt;
| Failure of a significant feature, no workaround &lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot; | ''Medium'' &lt;br /&gt;
| Failure of a significant feature, with workaround &lt;br /&gt;
|-&lt;br /&gt;
| Failure of a fringe feature, no workaround &lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot; | ''Low'' &lt;br /&gt;
| Small issue with an easy workaround &lt;br /&gt;
|-&lt;br /&gt;
| Any other insignificant bug &lt;br /&gt;
|-&lt;br /&gt;
|  ''Wishlist'' &lt;br /&gt;
| Not really a bug, but a suggested improvement &lt;br /&gt;
|-&lt;br /&gt;
|  ''Undefined'' &lt;br /&gt;
|  Impact was not assessed yet &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note that presence of ''Critical'' bugs will delay the release.&lt;br /&gt;
&lt;br /&gt;
=== Assigned To ===&lt;br /&gt;
The person currently working to fix this bug. Must be set by ''In progress'' stage.&lt;br /&gt;
&lt;br /&gt;
=== Milestone ===&lt;br /&gt;
The milestone we need to fix the bug for, or the milestone/version it was fixed in.&lt;br /&gt;
&lt;br /&gt;
=== Tags ===&lt;br /&gt;
Free-form tags you can use to search bugs with. Here is the list of [[BugTags|official tags]].&lt;br /&gt;
&lt;br /&gt;
= Bugs lifecycle =&lt;br /&gt;
&lt;br /&gt;
Bugs go through multiple stages before final resolution.&lt;br /&gt;
&lt;br /&gt;
=== Reporting ===&lt;br /&gt;
&lt;br /&gt;
When you find a bug, you should file it against the proper OpenStack project using the corresponding link:&lt;br /&gt;
* Report a [https://bugs.launchpad.net/nova/+filebug bug in Nova]&lt;br /&gt;
* Report a [https://bugs.launchpad.net/glance/+filebug bug in Glance]&lt;br /&gt;
* Report a [https://bugs.launchpad.net/swift/+filebug bug in Swift]&lt;br /&gt;
* Report a [https://bugs.launchpad.net/horizon/+filebug bug in Horizon]&lt;br /&gt;
* Report a [https://bugs.launchpad.net/keystone/+filebug bug in Keystone]&lt;br /&gt;
* Report a [https://bugs.launchpad.net/cinder/+filebug bug in Cinder]&lt;br /&gt;
* Report a [https://bugs.launchpad.net/neutron/+filebug bug in Neutron]&lt;br /&gt;
* Report a [https://bugs.launchpad.net/heat/+filebug bug in Heat]&lt;br /&gt;
* Report a [https://bugs.launchpad.net/openstack-manuals/+filebug bug in the manuals]&lt;br /&gt;
* Report a [https://bugs.launchpad.net/openstack-api-site/+filebug bug in the api documentation]&lt;br /&gt;
* Report a [https://bugs.launchpad.net/openstack-community/+filebug bug in the community tools]&lt;br /&gt;
&lt;br /&gt;
Make sure there is no bug already filed for the same issue, then enter the details of your report. It should at least include:&lt;br /&gt;
* The release, or milestone, or commitid corresponding to the software that you are running&lt;br /&gt;
&lt;br /&gt;
When this is done, the bug is created with:&lt;br /&gt;
&lt;br /&gt;
* Status: ''New''&lt;br /&gt;
&lt;br /&gt;
=== Confirming &amp;amp; prioritizing ===&lt;br /&gt;
&lt;br /&gt;
This stage is about checking that a bug is real and assessing its impact. If you are lacking information to properly reproduce or assess the importance of the bug, you should ask the original reporter for more information and set the bug to:&lt;br /&gt;
&lt;br /&gt;
* Status: ''Incomplete''&lt;br /&gt;
&lt;br /&gt;
Once you have reproduced the issue (or are 100% confident that this is indeed a valid bug), you should set:&lt;br /&gt;
&lt;br /&gt;
* Status: ''Confirmed''&lt;br /&gt;
&lt;br /&gt;
If you're a core developer or a member of the project bug supervision team, you should also prioritize the bug:&lt;br /&gt;
&lt;br /&gt;
* Importance: &amp;lt;Bug impact&amp;gt; (see above)&lt;br /&gt;
&lt;br /&gt;
=== Debugging (optional) ===&lt;br /&gt;
&lt;br /&gt;
This optional stage is about determining how to fix the bug and posting the solution in the comments. Sometimes the implementation of the fix will be straightforward and you would jump directly to bugfixing, but in some other cases, you would just post your complete debugging analysis and give someone else the opportunity of fixing the bug. Then you should ask a core developer or bug supervisor to set:&lt;br /&gt;
&lt;br /&gt;
* Status: ''Triaged''&lt;br /&gt;
&lt;br /&gt;
=== Bugfixing ===&lt;br /&gt;
&lt;br /&gt;
At this stage, a developer will work on a fix. During that time, in order to avoid duplicating the work, he should set:&lt;br /&gt;
&lt;br /&gt;
* Status: ''In progress''&lt;br /&gt;
* Assignee: &amp;lt;yourself&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When the fix is ready, he will propose the change and get it reviewed.&lt;br /&gt;
&lt;br /&gt;
Note that Gerrit will automatically set the status and assignee when a change is proposed that mentions the bug number.&lt;br /&gt;
&lt;br /&gt;
=== After the change is accepted ===&lt;br /&gt;
&lt;br /&gt;
Once the change is reviewed, accepted, and has landed in master, it will automatically move to:&lt;br /&gt;
&lt;br /&gt;
* Status: ''Fix Committed''&lt;br /&gt;
&lt;br /&gt;
When the fix makes it into a milestone or release branch, it will automatically move to:&lt;br /&gt;
&lt;br /&gt;
* Milestone: Milestone the bug was fixed in&lt;br /&gt;
* Status: ''Fix Released''&lt;br /&gt;
&lt;br /&gt;
= See also =&lt;br /&gt;
* [[ReleaseCycle]]&lt;br /&gt;
* [[Blueprints]]&lt;br /&gt;
* [[BugTags]]&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	<entry>
		<id>https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=48495</id>
		<title>OpenStack Upstream Training/Info</title>
		<link rel="alternate" type="text/html" href="https://wiki.openstack.org/w/index.php?title=OpenStack_Upstream_Training/Info&amp;diff=48495"/>
				<updated>2014-04-13T08:19:17Z</updated>
		
		<summary type="html">&lt;p&gt;Dachary: branching model slides&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
With over 1000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions.  These can significantly slow down the speed at which newcomers are successful at integrating their own roadmap into that of the OpenStack project.&lt;br /&gt;
&lt;br /&gt;
We've designed a training program to help professional developers negotiate this hurdle.  It shows them how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time.  The educational program requires students to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In a followup session, the students benefit from individual online sessions to help them resolve any remaining problems they might have.&lt;br /&gt;
&lt;br /&gt;
== Objectives ==&lt;br /&gt;
&lt;br /&gt;
* Faster integration of the companies product roadmap into the OpenStack release cycle&lt;br /&gt;
* Successfully contribute one real world patch to an OpenStack component&lt;br /&gt;
* Master the technical tools&lt;br /&gt;
* Understand the OpenStack contribution workflow and social norms&lt;br /&gt;
&lt;br /&gt;
== Target Audience ==&lt;br /&gt;
&lt;br /&gt;
* Developers&lt;br /&gt;
* System administrators&lt;br /&gt;
&lt;br /&gt;
== Prerequisites ==&lt;br /&gt;
&lt;br /&gt;
* Being able to read and write English at a technical level.&lt;br /&gt;
* If contributing code, being technically proficient enough to carry out simple bug fixes in the project.&lt;br /&gt;
* If contributing documentation, being able to produce documents in the project's chosen infrastructure.&lt;br /&gt;
* Having at least 8 hours a week to dedicate to the project, be it through programming or through interacting with the community.&lt;br /&gt;
&lt;br /&gt;
== Duration ==&lt;br /&gt;
&lt;br /&gt;
* Face-to-face section: 2 days&lt;br /&gt;
* Online section: 10 one-hour individual mentoring sessions over a period of 4 to 10 weeks&lt;br /&gt;
&lt;br /&gt;
= Course Outline =&lt;br /&gt;
&lt;br /&gt;
== First day ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
* A week before Day 1: choice of a contribution, via email, with each participant&lt;br /&gt;
* Day 1: How OpenStack is made&lt;br /&gt;
* Day 1: Learn and practice git, gerrit, IRC&lt;br /&gt;
&lt;br /&gt;
* Day 2: The theory of contribution&lt;br /&gt;
* Day 2: Lego contribution simulation&lt;br /&gt;
* Day 2: Individual presentation of the contribution plan&lt;br /&gt;
* Day 2: Online mentoring&lt;br /&gt;
&lt;br /&gt;
=== How OpenStack is made (3h including 1h30 exercises) ===&lt;br /&gt;
&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Release_Cycle Release cycle] ( [http://dachary.org/loic/openstack-training/release-cycle.odp slides.odp] [http://dachary.org/loic/openstack-training/release-cycle.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Planning_.28Design.2C_Discuss_and_Target.29 Planning (Design, Discuss and Target)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Implementation_.28Milestone_iterations.29 Implementation (Milestone iterations)]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Release_Cycle#Pre-release_.28Release_Candidates_dance.29 Pre-release (Release Candidates dance)]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_candidate_1 Release candidate 1]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Other_release_candidates Other release candidates]&lt;br /&gt;
*** [https://wiki.openstack.org/wiki/Release_Cycle#Release_day Release day]&lt;br /&gt;
** Exercise: based on the [https://wiki.openstack.org/wiki/Icehouse_Release_Schedule Icehouse release schedule] find the URL of a document or a patch that belongs to each of the above steps.&lt;br /&gt;
* Relevant actors ( [http://dachary.org/loic/openstack-training/relevant-actors.odp slides.odp] [http://dachary.org/loic/openstack-training/relevant-actors.pdf slides.pdf] )&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] companies&lt;br /&gt;
** [http://www.stackalytics.com/?release=icehouse&amp;amp;metric=commits&amp;amp;project_type=integrated&amp;amp;module=&amp;amp;company=&amp;amp;user_id= commiters] individuals&lt;br /&gt;
** Your management&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee Technical Committee] ( [http://dachary.org/loic/openstack-training/technical-committee.odp slides.odp] [http://dachary.org/loic/openstack-training/technical-committee.pdf slides.pdf] )&lt;br /&gt;
** Decide what is an [https://wiki.openstack.org/wiki/Programs OpenStack Program]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/TechnicalCommittee meetings] &lt;br /&gt;
** Exercise: read [http://eavesdrop.openstack.org/meetings/tc/2014/tc.2014-04-01-20.03.log.html archived] and briefly comment on [https://etherpad.openstack.org/p/keystone-incubation-integration-requirements keystone document]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Program_Leads PTLs]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_PTL_seats_.28.22APC.22.29 APC]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee#Voters_for_TC_seats_.28.22ATC.22.29 ATC]&lt;br /&gt;
** Exercise: each APC / ATC in the class add a URL to the etherpad proving it&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Governance/NewProjects Program ecosystem]  ( [http://dachary.org/loic/openstack-training/program-ecosystem.odp slides.odp] [http://dachary.org/loic/openstack-training/program-ecosystem.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Incubation Incubated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Integrated Integrated]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Governance/NewProjects#Core_.3F Core]&lt;br /&gt;
** [http://ci.openstack.org/stackforge.html Stackforge]&lt;br /&gt;
** Exercise: What kind of Program do you contribute to ?&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Summit Design summits]  ( [http://dachary.org/loic/openstack-training/design-summit.odp slides.odp] [http://dachary.org/loic/openstack-training/design-summit.pdf slides.pdf] )&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#Propose_sessions propose sessions]&lt;br /&gt;
** [https://wiki.openstack.org/wiki/Summit#At_the_Design_Summit attend or lead a session]&lt;br /&gt;
** Exercise: Add a session proposal regarding your contribution in an etherpad, review two proposals&lt;br /&gt;
* [https://wiki.openstack.org/wiki/Meetings IRC meetings]  ( [http://dachary.org/loic/openstack-training/irc-meetings.odp slides.odp] [http://dachary.org/loic/openstack-training/irc-meetings.pdf slides.pdf] )&lt;br /&gt;
** [http://ci.openstack.org/meetbot.html modified] [http://wiki.debian.org/MeetBot meetbot]&lt;br /&gt;
** #info - Add an info item to the minutes. People should liberally use this for important things they say, so that they can be logged in the minutes. &lt;br /&gt;
** #action - Document an action item in the minutes. Include any nicknames in the line, and the item will be assigned to them. (nicknames are case-sensitive) &lt;br /&gt;
** #help - Add a &amp;quot;Call for Help&amp;quot; to the minutes. Use this command when you need to recruit someone to do a task. (Counter-intuitively, this doesn't provide help on the bot)&lt;br /&gt;
** Exercise: lunch menu online meeting&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Workflow of an OpenStack contribution and tools (3h including 2h exercises) ===&lt;br /&gt;
&lt;br /&gt;
* [http://devstack.org/ devstack] ( [http://dachary.org/loic/openstack-training/devstack.odp slides.odp] [http://dachary.org/loic/openstack-training/devstack.pdf slides.pdf] )&lt;br /&gt;
** Ubuntu or Fedora&lt;br /&gt;
** git clone https://github.com/openstack-dev/devstack.git&lt;br /&gt;
** [http://devstack.org/configuration.html minimal configuration]&lt;br /&gt;
** cd devstack; ./stack.sh&lt;br /&gt;
** Exercise: get the code for the targeted contribution&lt;br /&gt;
* [[How_To_Contribute|HOW to contribute URL]] ( [http://dachary.org/loic/openstack-training/howtocontribute.odp slides.odp] [http://dachary.org/loic/openstack-training/howtocontribute.pdf slides.pdf] )&lt;br /&gt;
** [[Puppet-openstack#Contributing_to_the_modules|puppet stackforge]]&lt;br /&gt;
** [[Documentation/HowTo|documentation]]&lt;br /&gt;
** [http://docs.openstack.org/training-guides/content/under-construction.html training guides]&lt;br /&gt;
** Excercise: Apply for individual membership and sign the CLA&lt;br /&gt;
* [https://help.launchpad.net/ launchpad]&lt;br /&gt;
** [[Blueprints|blueprints]]&lt;br /&gt;
** [[Bugs|bugs]]&lt;br /&gt;
*** [[Bugs#Bugs_reference|Status, Importance, Assigned To, Milestone, Tags]]&lt;br /&gt;
*** [[Bugs#Reporting|reporting a bug]]&lt;br /&gt;
*** [[Bugs#Confirming_.26_prioritizing|confirming and prioritizing]]&lt;br /&gt;
*** [[Bugs#Debugging_.28optional.29|debugging]]&lt;br /&gt;
*** [[Bugs#Bugfixing|bugfixing]]&lt;br /&gt;
** Selecting a bug&lt;br /&gt;
*** age&lt;br /&gt;
*** complexity&lt;br /&gt;
** Exercise: review other launchpad bugs and improve yours&lt;br /&gt;
* [[GerritWorkflow|gerrit workflow]]&lt;br /&gt;
** [[GerritWorkflow#Account_Setup|account setup]]&lt;br /&gt;
** [[GerritWorkflow#Git_Review_Installation|git review installation]]&lt;br /&gt;
** [[GerritWorkflow#SSH_Setup|ssh setup]]&lt;br /&gt;
** [[GerritWorkflow#Project_Setup|project setup]]&lt;br /&gt;
** [[GerritWorkflow#Normal_Workflow|gerrit workflow]]&lt;br /&gt;
** [[Testing#Unit_Tests|running unit tests]]&lt;br /&gt;
** [http://www.mediawiki.org/wiki/Gerrit/Advanced_usage review dependencies]&lt;br /&gt;
** Exercise: push a wip or draft and invite reviewers&lt;br /&gt;
* Branching model ( [http://dachary.org/loic/openstack-training/branching-model.odp slides.odp] [http://dachary.org/loic/openstack-training/branching-model.pdf slides.pdf] )&lt;br /&gt;
** [[BranchModel|development]]&lt;br /&gt;
** [[StableBranch|stable]]&lt;br /&gt;
** Exercise: checkout the latest stable branch&lt;br /&gt;
* [[GerritWorkflow#Committing_Changes|writing a commit message]]&lt;br /&gt;
** reference to a bug or a blueprint&lt;br /&gt;
** amending a commit message&lt;br /&gt;
** Exercise: review each other messages on the draft&lt;br /&gt;
* [[GerritJenkinsGit|jenkins]]&lt;br /&gt;
** Exercise: add an error and match it to the jenkins message&lt;br /&gt;
* [[GerritJenkinsGit#Reviewing_a_Change|reviewing]]&lt;br /&gt;
** [[GerritJenkinsGit#Gerrit_Comment_Formatting|comment formatting]]&lt;br /&gt;
** [[GerritJenkinsGit#Gerrit_Best_Practices|use a topic branch]]&lt;br /&gt;
** more than one change for a single bug multiple changes&lt;br /&gt;
&lt;br /&gt;
== Second day ==&lt;br /&gt;
&lt;br /&gt;
=== The Contribution Process (3 hours) ===&lt;br /&gt;
&lt;br /&gt;
* Take the pulse of the project.&lt;br /&gt;
* Figure out who's behind it.&lt;br /&gt;
* Determine the project's social groups.&lt;br /&gt;
* Assess your approach.&lt;br /&gt;
* Engage immediately.&lt;br /&gt;
* Play with your network.&lt;br /&gt;
* Perform the smaller tasks.&lt;br /&gt;
* Choose a question.&lt;br /&gt;
* Familiarize yourself with the code of conduct.&lt;br /&gt;
* Understand the conventions.&lt;br /&gt;
* Explain what you do.&lt;br /&gt;
* Prepare the backport.&lt;br /&gt;
* Learn what's local and what's upstream.&lt;br /&gt;
* Learn what distinguishes good work flow from bad work flow.&lt;br /&gt;
* Quantify the delta.&lt;br /&gt;
* Speed up the acceptance.&lt;br /&gt;
* Determine the time frame.&lt;br /&gt;
* Maximize karma.&lt;br /&gt;
* Work in parallel.&lt;br /&gt;
* Archive and collect.&lt;br /&gt;
&lt;br /&gt;
=== Agile for Contributors (15 min) ===&lt;br /&gt;
&lt;br /&gt;
* Apply agile&lt;br /&gt;
* Who is the customer?&lt;br /&gt;
* Company &amp;amp; Upstream product owner&lt;br /&gt;
* Sprint review presentation to Upstream&lt;br /&gt;
&lt;br /&gt;
=== Contribution Simulation (1 hour) ===&lt;br /&gt;
&lt;br /&gt;
The students make a virtual contribution simulation using Lego bricks as props, with the goal of expanding a Lego town, built by upstream. They are divided into teams; the teacher is by turns the product owner in the company and the upstream.&lt;br /&gt;
&lt;br /&gt;
=== Contribution Planning (2 hours) ===&lt;br /&gt;
&lt;br /&gt;
* The students use template slides to prepare a 5-minute presentation of their planned contribution.&lt;br /&gt;
* A sample presentation is given by the teacher, as an example.&lt;br /&gt;
* Each student group prepares a presentation describing:&lt;br /&gt;
** the contribution they plan to work on during the online sessions,&lt;br /&gt;
** how they will engage with the Upstream,&lt;br /&gt;
** how it contributes to the company's agenda&lt;br /&gt;
** and whom they will be working with.&lt;br /&gt;
* Each student group presents its slides to the class&lt;/div&gt;</summary>
		<author><name>Dachary</name></author>	</entry>

	</feed>