Teaching Assistant
The Grinnell College Computer Science department is not particularly large (no discipline is at Grinnell), but they are capable of offering a yearly course for non-majors. This course, The Digital Age, focuses on the Linux desktop, basic HTML, and Python as a first programming language. I served as a teaching assistant (T.A.) for each of the course's 15 labs, answering the inquisitive and helping the confused. Though interactions with non-technical users were by no means new (working as a Technology Consultant brought more than enough such events), assisting students in a strictly educational environment proved an interesting challenge.
Impressed with my clear explanations and student rapport as a T.A. in such a non-technical setting, and aware of my previous Summer working with the ViM text editor", the professor of the course requested I write a ViM-specific lab for her 200-level students. Using vimtutor and my recent neophyte experience with the editor, I introduced these CSC201 students to basic and intermediate features of this most useful utility. The lab emphasized its use for generic programming, including syntax highlighting, content folding, automatic indentation, etc., all of which will prove essential if the students continue into modern, large-scale development. The in-class, hands-on tutorial also served as a reference, structured so that students could easily look up commands in a index at the end of every section, as well as a spring-board to further learning, including references to ViM help pages and other resources. Recently, I pleasantly discovered my lab referenced in later versions of this course, hopefully assisting more groups of ViM-friendly computer programmers.
