By Leszek Tarkowski, software trainer at Infotraining, and former research scientist in material sciences.
I am a 37 year old former scientist, currently teaching people how to write software. I used to work as a researcher in the field of material science, but I found my vocation in teaching others how to use software.
Why material science? When I was in high school I was playing a lot with computers. I wrote some short programs firstly in Basic, then in Pascal, Assembler and finally C. But when I finally had to decide what to study at university, I hesitated. I applied for two departments: telecommunication and physics. Why, you may ask, did I settle for the latter? Because I thought, or at least had a premonition, that computer programming is just a means to help my reasoning and research.
In September 2006, I had reached the final stage of my PhD, when my friend forwarded me a job offer. A small company was looking for someone to do the training in Linux administration. Linux administration was one of my computing hobbies at the time, so I was quite keen to run the training. On the top of that was the money: an offer any PhD student finds hard to resist. I went for it, but I was terrified because I didn’t had much teaching experience. I worked in a research organisation, writing software, playing with computers and various more-or-less dangerous devices for experimental research. I was a talkative person, that’s true. Yet I knew that delivering the training would take more than that.
I delivered the training to a group of nice people who really wanted to be proficient in Linux. To my surprise, one of them was actually a researcher trying to run some simulation software on the machine he had access to. Suddenly it started to make sense. I was doing things the way I liked, talking, drawing on whiteboards, laughing and telling anecdotes. I was making real impact on people’s lives, pushing them forward to use or make better software. It looked like I finally found my real vocation. I enjoyed the fact that I could meet new people, face new challenges and seek for solutions.
I started taking a new route off the research track. I finished my PhD and then quietly resigned from my permanent position at my research institute. I set up my own training company and became a full-time software trainer teaching mostly Python, C++ and C. The scientific part of my brain is still in use: I joined the Software Carpentry initiative. Greg Wilson inspired me to read and research more about teaching process. I think the whole story is just the beginning of a very exciting journey.
What is important, in my opinion, to become a successful teacher? First of all - you don’t have to be the best in the field. I am certainly not a genius programmer. Maybe it is even better if you are not a genius because you don't see everything as trivial or intuitive. You have to be curious and have interest in people’s problems. Try walking in their shoes, try to give them support in finding the solution in their own way. Don’t let your experience obscure the problems of the novices in the field.