Course code: COB-1
  • Years with company: 3
  • Years programming: 15
  • Primary programming language: C
  • Other programming languages: C++, python, bash
  • Unit test harnesses: cunit, cxxtest
  • Something else: Years programming (above) is professionally. Started playing with BASIC on a ZX spectrum when I was 9.
  • Test practice now: Cunit when possible. Failing that I normally write small toy programs to exercise algorithms in a debugger before testing them in the real system code.
  • Target system: X86 server running linux
  • Dev tools: gcc, gdb, eclipse, sublime text, HDE (our target simulator which runs on windows), real hardware.
  • Build time: 5-30 minutes
  • Coding standard: Reasonable. Aims to ensures consistent naming across our software, but if existing code doesn't match, we choose consistency with current code over matching the standard.
  • Function too long: When I can't understand it easily. (when it does more than one thing is a good rule of thumb IMO). > 1 screen of text (~50 lines) is another good rule.
  • Code reviews: We use code collaborator. It's excellent. Far better time/payoff tradeoff than paper Fagan inspections which I've used in previous jobs.
  • Code time: 10
  • Test time: 10
  • Debug time: 10
  • Favorite thing about dev: Making things. Finding and fixing errors (like "percentge" typo in question above :-))
  • Least favorite thing about dev: Finding duplication. (Though removing it can be satisfying.) Working out real requirements when there aren't any that are coherent. (Again though that can be satisfying when complete.)
  • Tdd knowledge: Have used it in a previous job where our primary language was C++. In the following job (also C++) I used it myself but it wasn't part of the company dev process. Here we use C, but now have cunit in our build sO I can again deliver code + tests.
  • Why are you attending: I feel very rusty. Have not had any coaching in TDD for several years (and have only been able to practice it sporadically during those years) so I'm pretty sure I've lots of room for improvement!