Skip to content

Outreach process improvement ideas

James O. D. Hunt edited this page May 5, 2023 · 10 revisions

Overview

This page is designed to capture feedback on ways to improve the Kata Containers Outreach process.

Ideas

Idea Detail
Put students into groups of 2-3 Helps students break the problem down and work collaboratively to solve it. Also encourages communication between students.
Consider using planning poker to size and scope out work items Extremely powerful method to shake out problems, misunderstandings and make "SMART" plans.
Always start by making each group raise a "one line" / typo / good-first-issue PR A trivial change helps students undestand process and community.
Have two meetings per week rather than one Ensures process stays on track.
Start trying to write rust code from day 1! Rust is hard so it's important to start learning as early as possible 😄
Start using git from day 1! Create a repo and add a markdown file with notes on your progress
Don't use "git integration" features in editors - use git on the command line Give full control and helps you really understand what is happening
Meet regularly (ideally daily) in person if possible The more communication the better! ;)

Assumptions

Students have familiarity with:

  • Linux and are comfortable working on the command line / in a terminal environment.
  • An editor for coding (such as vim, emacs, VS).
  • The Git version control system.

Goals

A generic list of goals:

  • Have fun!
  • Learn about Kata.
  • Become more proficient in programming (rust, golang, shell, etc).
  • Participate in the Kata community.
  • Make some direct contributions to the Kata Containers and/or the community by raising an agreed number of PRs.

Approximate timescales

Task Approximate minimum time required
Learn rust Atleast 4 weeks
Size each teams task 1 hour (aka 1 meeting)
Learn about Kata (application, environment, community, process and "first PR") 2 weeks
Coding time Ideally atleast 4 weeks

The timings above suggest a minimum outreach project duration of ~12 weeks / 3 months.

Other considerations

  • Term dates.
  • Other committments (exams, etc).
  • Do any public or personal holidays impact schedule?
  • Availability of / access to hardware.
  • Linux skills?

See also