Course code:
WEB-25
Years with company:
21
Years programming:
26
Primary programming language:
Objective-C
Other programming languages:
C++, C, Swift, Lua, Ruby
Unit test harnesses:
Ruby's "RSpec" (but not extensively).
Something else:
Prior to working here, I worked at a small Design of Experiments training company, writing statistical software.
Test practice now:
Most testing is done by walkthroughs of the actual app (no formal testing infrastructure). Since my work has a strong focus on custom UI implementation, and less focus on data models or computational engines, unit tests have less immediate relevance, and I haven't yet seen a UI testing framework that was worth the hassle.
Target system:
iOS 12 and 13, both compact and regular layout. I work on a cross platform app team (Mac/Win/Android/iOS); my work is almost exclusively in iOS, though I do deal with much code that is shared between the platforms.
Dev tools:
Xcode, Perforce (soon to be git), macOS command line. Python scripts which generate the Xcode projects. Collaborator by SmartBear for code reviews.
Build time:
1-5 minutes
Coding standard:
Don't understand the question.
Function too long:
When I can't clearly describe what it does in a sentence.
Code reviews:
All submission are reviewed by at least one other person, using Collaborator (by SmartBear). Check in comments must include the review URL.
Code time:
30
Test time:
10
Debug time:
60
Favorite thing about dev:
Opportunity for creativity in designing object responsibilities and interactions. Optimizing for performance.
Least favorite thing about dev:
Debugging semi-reproducible (or not reproducible) bugs. If I can consistently reproduce the bug, I'm 90% of the way to fixing it.
Tdd knowledge:
I've dabbled with it, and enjoy what little training I got on it (in Ruby), but I don't believe our current work environment (C++ very large code base) is as amenable to it as a small scripting project.
Why are you attending:
Was asked by management. Not my first preference. My opinion: the company needs to increase the resourcing/infrastructure for automated testing before asking developers to just "write more tests".