Course code: AS-1
  • Years with company: 1
  • Years programming: 27
  • Primary programming language: C
  • Other programming languages: Python and C++ (looking at Rust)
  • Unit test harnesses: Google test and pytest. (Looked at Catch2)
  • Something else: I like golf and beer (hear you are on Untapped :))
  • Test practice now: System tests, automatic jig tests and local happy testing.
  • Target system: B1 robot is a multi CPU system with real-time requirements and a fair bit of dynamics (motor control).
  • Dev tools: gcc, VS Code, pytest (for integration testing), Confluence for doc, Jira, git, Gitlab. Clang-format checks on commits (new). SonarQube for analysis
  • Build time: 5-30 minutes
  • Coding standard: We're working on establishing a coding guideline for C as we speek, currently at draft level. We have established enough to automate clang-formatting, but we are still discussing parts of it.
  • Function too long: We have complexity measures in SonarQube - the problem is that the legacy code is way to complex so in practice it doesn't work at the moment. In my opinion it should be when it has more than one responsibility.
  • Code reviews: We have MR (Gitlab merge request) that needs to be approved before they are allowed into the master branch. We have some preliminary checklists of what to check and are currently requiring 1 approver and preferably also a second reviewer.
  • Code time: 2
  • Test time: 2
  • Debug time: 6
  • Favorite thing about dev: To create something
  • Least favorite thing about dev: Struggling with seemingly random faults, bad structure and I2C.
  • Tdd knowledge: It's a process where you develop tests before code in an iterative manner.
  • Why are you attending: Because I think we have a lot to learn as a group and an organisation!