Version 1 (modified by butler, 2 years ago) (diff)

GOAL:

familiarize people with all aspects of contributing and developing to SasView

  • Lower the “fear of the unknown” barrier to getting started (by knowing rather than guessing at what is involved)
  • A basic understanding of “what/how I might be able to contribute”
  • Where to go to get started. Where to find information, who to talk to etc.

OUTLINE

2h 17 min (leaves 45 min for questions and discussion and tangents)

  • 2 min - Welcome and intro = All the areas are important (hard core coding, documentation, checking math, testing that we get the right answers, testing usability and against crashes, responding to help requests)…
  • Show Roadmap here? Or later?
  • 3 min - goals and outline
  • 20 min - Demo of existing functionality - going through all the menu items and buttons
  • 10 min - Getting Help and Bug reporting — tickets (user list, help@) - Needs: reporting bugs and responders to queries (from “how do i” to “why does my model not fit my data”)
  • 10 min - How to write and distribute a model and the model marketplace. Needs: contributing models
  • 35 min - Code structure (where bits live) - Needs: contributing non model code and testing and validation
    • 5 min - SasView, sasmodels, bumps
    • 20 min SasView
      • 10 min - sasGUI
      • 10 min - sasCalc
    • 10 min - sasmodels
  • 20 min - Documentation - Needs: contributing documentation
    • 5 min - Overview
      • Use Sphinx to build both dev and user
      • Uses RST and Latex - currently builds html but plan for a pdf also
    • 4 min - Dev - Needs: lots of doc strings still missing
      • 4 min - docstrings at the start of “each” class and method
    • 10 min - User - Needs: never finished
      • 5 min - each section has an RST file (and images as appropriate)
      • 5 min - Models = the first doc string in the file is scraped to go into model documentation
      • 1 min - Tutorial …. Need a new one - Needs: help developing tutorial materials
  • 37 min - “Dev ops”
    • 2 min - Basic concepts in version control - EVERYTHING is under version control!!
    • 10 min Git code hosting
      • 7 min - Concepts in version control (repos, cloning, branching (vs. forking - baaaad), committing (with comments),pull requests, code review *3 min - Setting notifications etc
    • 25 min - “show me the code”- Needs: developers of all stripes = architecture, GPU, math whiz, sysadmins, …
      • 5 min - Git code repos (all of them), branches, stats… and CODE
      • 5 min - Compiling/run.py and local environment
      • 5 min - Py2exe and Ino → installer
      • 5 min - CI - eventually NOT local environment - real test is final build
        • Travis
        • Jenkins
      • 5 min - progress —>trac → ticket → work
        • Trac wiki
        • Trac tickets, milestones, workpackages, roadmap (trac version)
  • Concluding remarks??

Attachments (1)

Download all attachments as: .zip