Jump to: navigation, search

Nova/Mentoring

So you want to give more involved with Nova? Or you are new to Nova and wondering where to start?

We are working on building easy ways for you to get help and ideas on how to improve.

For more details contact the Mentoring Czar.

How do I get started?

There are quite a few global docs on this:


Top tips for engaging with the Nova community:

  • IRC
    • we talk a lot in #openstack-nova
    • do ask us questions in there, and we will try to help you
    • not sure about asking questions? feel free to listen in around other people's questions
    • we recommend you setup an IRC bouncer: https://wiki.openstack.org/wiki/IRC
  • Be Open
    • i.e. don't review your teams code in private, do it publicly in gerrit
    • i.e. be ready to talk about openly about problems you are having, not "theoretical" issues
    • that way you can start to gain the trust of the wider community
  • Ask questions early
    • raise any problems or questions early
    • we want to help you before you are frustrated or annoyed
    • unsure who to ask? Just ask in IRC, or check out the list of Nova people
  • Email
    • Use the [nova] tag in the mailing lists

Process

It can feel like you are faced with a wall of process. We are a big community, to make sure the right communication happens, we do use a minimal amount of process.

If you find something that doesn't make sense, please:

  • ask questions to find out *why* it happens
  • if you know of a better way to do it, please speak up
  • one "better way" might be to remove the process if it no longer helps

Why bother with any process?

Why is it worth creating a bug or blueprint to track your code review? This may seem like silly process, but there is usually a good reason behind it.

We have lots of code to review, and we have tools to try and get to really important code reviews first. If yours is really important, but not picked up by our tools, its possible you just get lost in the bottom of a big queue.

If you have a bug fix, you have done loads of work to identify the issue, and test out your fix, and submit it. By adding a bug report, you are making it easier for other folks who hit the same problem to find your work, possibly saving them the hours of pain you went through. With any luck that gives all those people the time to fix different bugs, all that might have affected you, if you had not given them the time go fix it.

Its similar with blueprints. You have worked out how to scratch your itch, lets tell others about that great new feature you have added, so they can use that. Also, it stops someone with a similar idea going through all the pain of creating a feature only to find you already have that feature ready and up for review, or merged into the latest release.

Hopefully this gives you an idea why we have applied a small layer of process to what we are doing. Having said all this, we need to unlearn old habits to move forward, there may be better ways to do things, and we are open to trying them. Please help be part of the solution.

How do I become nova-core?

The first step to becoming nova-core is learning how to be an active member of the Nova community, and doing great code reviews. For more details see Nova/CoreTeam#Membership_Expectations

If you feel like you have the time to commit to all the membership expectations, reach out the Nova PTL who will be able to find you an existing member of nova-core to help mentor you, and when you are ready, will ask the rest of the nova-core team to take a particular interest in your review, so you can (more quickly) gain the trust of the nova-core team.

How to do great code reviews?

More details coming soon...