Course code:
CARBON-2
Years with company:
1
Years programming:
50
Primary programming language:
C++ (or C in C++)
Other programming languages:
C, assembler (10 architectures), bash, Python, perl, LISP, FORTRAN, SNOBOL
Unit test harnesses:
CppUnit
Something else:
While blindly single-stepping instructions with no symbols on a new architecture at a new company, I once recognized that that the code had been compiled from C code that I had written 3 years previously.
Test practice now:
Some unit tests, some integration tests, some end-to-end tests, some manual tests, some automated tests, some regression tests, some code checkers (valgrind etc.), some beta deployments, ...
Target system:
Linux-on-PC
Dev tools:
vi/vim, GNU toolchain, gdb, printf, bash, Linux utilities
Build time:
1-5 minutes
Coding standard:
Linux kernel, modified by personal experience, sometimes coerced by legacy state
Function too long:
when it cannot be followed from reading the code
Code reviews:
It is hard to get the right level of communication. Either nIt-picking or glossing prevails.
Code time:
40
Test time:
10
Debug time:
50
Favorite thing about dev:
finding the limits of complexity, development time, execution time and size
Least favorite thing about dev:
Bureaucratic bean-counters who apply metrics without understanding.
Tdd knowledge:
There's enough hype. The overall environment has a strong influence on how well tdd succeeds.
Why are you attending:
To learn the present state of tdd, the costs and benefits, and how it might fit for our projects.