members_initialization_checklist - IRS-group/isr_tiago_docs GitHub Wiki

Members initialization checklist

This page is intended for the team leader. New members should visit the new members training page.

  • Collect email addresses and basic information and add to:
  • GitLab
    • Make GitLab account (ask Pedro Miraldo for this)
    • Add member to socrob_at_home group
    • Create new GitLab project for them if needed (ask Pedro Miraldo about this)
    • Correctly set their permission for each repo they need to clone
  • Intro to git
    • How to use remotes
    • Explain merge requests and code review
    • Show GitLab and GitHub
    • Explain how we use GitLab issues and how to make a new one *
  • SocRob software guidelines
    • How to make packages following SocRob guidelines
    • Good coding practices to follow to get your merge request accepted. Examples:
      • Always use while not rospy.is_shutdown() instead of while True in nodes
      • Write your nodes so that they only consume resources when needed
      • Set relevant parameters in launchfiles, so they can be configured when included by other launchfiles
      • Always use relative ros names rather than absolute names (e.g. 'my_topic' instead of '/my_topic'), unless absolutely (:( necessary
      • Use namespaces when possible (for an example, see mbot_perception)
      • How to choose between topic/service/action. For example, actions should be used for node control (instead of topics with 'e_start'/'e_stop', as was done in the past).
      • How to use mbot_class in SMACH
      • How to make new mbot_class functions (e.g., the function in mbot_class should only use actions/services/topics to command nodes and receive their results, and never ever fail or throw exceptions even if those nodes are not running or there was an error)
  • Identify interests and abilities and assign a task
  • Explain and show basic stuff
    • How to safely turn on and power off the robot
    • How to manually dock and undock the robot in a safe way (recommend using autonomous dock/undock)
    • Safety about the robot (e.g., switching everything off including the charger during the night)
    • How to ssh in the robots
    • How to bringup (bringup_mbot and bringup_sim) and other basic commands/aliases (nav, roslaunch mbot_perception_launch mbot_perception.launch, mbot_class, dock, undock, etc)
    • How to use the joypad
    • Send to introduction page
* Issues are like a credit, new members can create an issue to ask more
experienced members to solve problem they don't know how to tackle.
Once the members become expert themselves, they can pay back by solving
the issues for the next new members.

TODO: Add more items after learning from previous team leading experiences (i.e. mistakes:).