Learning Resources

06 December 2025, Giovanni Paolo, et al.

Python

Practices

SQL

git

Shell

Concepts

Contributing

Workflow

  1. Branch from master starting with your initials, e.g. gpsc-my-feature;
  2. Create a PR and mark it as Draft during development;
  3. Unmark Draft status when you finish your changes, and then request a code review;
  4. Discuss the questions and implement the requested changes
    • Don’t make non-trivial changes before clearing all questions
    • “rename foo to bar” can be done without discussing, if you accept the suggestion
    • “why did you do X instead of Y?” should not be replied with “I’ve changed it to Y”
    • Let the reviewer mark discussions as resolved, so that they can verify your changes
  5. Iterate until agreed and merged.

Requirements

  1. Your branch must be fast-forwardable from master
    • i.e. merge latest changes from master into your branch fix conflicts before requesting a review
  2. Use a short title and a descriptive message on your commits
    • The title should describe what
    • The description should describe why
    • The diff should describe how
  3. Your patch must be atomic
    • Small, cohesive, self-contained and without unrelated changes.

We strive to keep a clean and linear history in the master branch, so no merge-commits should land in master.

Other recommendations

General guidelines

Created by Giovanni Paolo, maintained by FCxAI team

  1. https://google.github.io/styleguide/pyguide.html#316-naming