A proud Canadian
Basic lab skills for scientific computing
What We Teach
Git / GitHub
Python (or R)
What We Actually Teach
Git / GitHub
Python or R
tracking and sharing
making work reproducible
If you build someone a fire, you'll keep them warm for a night. If you set someone on fire, you'll keep them warm for the rest of their life.
— Terry Pratchett
Since January 2012
Over 820 two-day workshops
…and we just hired our sixth full-time staff member
Where We've Been
Most scientists think of programming
as a tax they have to pay
in order to do science.
And those who don't are not representative
of the other 85%
(Hannay et al 2009)
The curriculum is full.
And even if it wasn't:
…for some value of "we".
Most people would rather fail than change.
I.e., they would rather ignore evidence
than change their working practices or business plan.
Stefik & Siebert: "An Empirical Investigation into Programming Language Syntax." ACM Trans. Computing Education, 2013(11), http://tinyurl.com/nwit-syntax
Programmers can rationalize anything
This is actually a pretty good tool
…once you normalize for effort
invested in mastering it
And stop blaming users for the fact that
version control can't handle it
Programmers can rationalize anything.
Git is as horrible as it is useful
Stop blaming users for its shortcomings too
Correctness isn't compelling.
But people care a lot about productivity.
We're smarter together
What about collaborative lesson construction?
Video lessons: just say no