Thursday, June 27, 2013

CS Educator Interview: Garth Flint

One of my summer projects is to collect stories from different computer science teachers. There are many teachers in many types of schools and many of them often feel like they are alone; that they are the only one in “their situation.” While all schools and all teachers are different (which is not a bad thing) there are usually similarities if you know where to look for them. That is the purpose of this series. I have asked a good number of teachers to answer some questions for me so I can post the result as a sort of interview.
Garth Flint from Loyola Sacred Heart High School in western Montana is one of the first teachers I approached. Garth is a regular blogger (Garth Flint’s blog) and frequently comments on my blog. The result is that I learn from him. So without more wasted time here is Garth’s response to my questions.

Where do you teach? What sort of school is it?

I teach at a private Catholic High School in a town of about 60,000 in western Montana.  This is a poor Catholic School so close to half of our students are on some kind of scholarship.

How did you get started teaching computer science?

When I interviewed for my first teaching job as a math teacher in ’83 the superintendent was giving me the school tour. We walking into the classroom and he pointed to two TRS-80 computers and asked if I know how to use them.  Apparently they had just bought them and nobody in the school know what to do with them.  I lied and said “Yes”.  I had some Apple IIe experience from college so I figured I could fudge a little on the answer.  That fall I started using them in my math classes and the kids wanted to learn how to program.  So I said to myself “I can figure this out.”  I have been saying that ever since.

Describe the computer science curriculum at your school. What courses do you have and what are the focuses of each?

Our curriculum is very flexible but the usual is:
  1. Computer Apps (freshman usually) – the usual Office, Photoshop and odds and ends.
  2. Computer Technology (9 – 12) – hardware, a little networking, viruses and malware, troubleshooting, ethics and a mish mash of other stuff that is happening in the world of technology.
  3. Programming I (9-11) – Typically Scratch and Small Basic.  Just a intro to the concepts and idea of programming.
  4. Programming II/III (10-12) – Mostly Corona but usually 2 or three other languages.  These courses are somewhat driven by the students in the class.  I like to show them a variety of languages with the intent of making them learn something from the beginning.  I try to teach them to learn, not teach them a language.  If I teach them language X then sure enough the college of their choice will use language Y.
  5. Programming Research (11-12) – Whatever I think is cool.  Again the focus is on learning a language from the beginning and not building Christmas trees with asterisks.  This fall I think we are going to look at TouchDevelop and some C++.  One of the students is in a robotics club that uses C++ so I figured it would be a good direction.
  6. Computer Technology II (10-12) – Offered when I have enough kids interested.  Setting up computers from scratch, building a domain, networking, Active Directory, Group Policy, routers, switches, troubleshooting weird issues, etc.

What is your overall teaching philosophy? Project based learning? Flipped classroom? In short, what makes your CS program “your CS program?”

I try to teach my students how to learn.  I taught math at the local university for 10 years and have friends teaching in the CS department.  College and high school students can learn by rote but they cannot seem to troubleshoot, develop a good trial and error strategy or locate learning resources.  My teaching philosophy/goal is to fix that as much as I am able.  One of my favorite assignments is “Draw a house using a turtle in language X.  You have two weeks.”  The students reply “But we do not know language X”.  My reply is usually “Bummer.  You better get to looking for resources then.”  One year I gave “Draw a house using a turtle in three different languages.”  One girl drew the house in Python.  I do not know Python.

What is the biggest challenge in teaching CS at your school?

My biggest challenge is keeping up with the kids.  I give these broad assignments then I have to find time to do them or at least be able to give the kids some help when they hit a bump.  Having learned all my CS on the job leaves some huge gaps in my knowledge base.  It also does not help when a good number of the kids are smarter than I am.  I think for any CS teacher the lack of formal education in methods of teaching CS is a massive handicap.  As a math teacher I have had multiple courses in math pedagogy and learning techniques.  There are a huge number of studies on why kids struggle or succeed in math classes.  CS not so much.

What is administration’s support (or lack of support) like at your school?

I get all the support my administration can afford.  Our graduation requirement is two semesters of computer technology.  We pride ourselves on offering more CS that the public schools.  Private schools can end up a little geek heavy demographically so my administration realizes a good percentage of our kids are going into computer intense fields.  We strive to be a tech school on a poor man’s budget and we do a pretty good job of it because the administration is behind the CS.

How do you measure success for your program? For your students?

I measure success by talking to the college students that come back to visit.  When they come back and say their first year of college CS was boringly easy I know I am doing OK.  My graduates are consistently hired to be tech aides at their universities.  Not because they know a lot of computer tech, but because they know how to troubleshoot and know how to learn.  I also measure my success by the way the students that take my CS courses are not absolutely turned off by CS or programming.  They may not go on in the field but they are no longer adverse to learning about computer technology or programming.

What is the one thing you like to talk about regarding your program that I haven’t already asked?

I get to build my own courses which allows me to pick up a new direction as CS changes.  Since we have not spent big money on a textbook or on some “program” we are able to introduce something new in the time it takes me to figure it out.  CS is not like math.  Math has been pretty much the same for a long time.  Euclid did the geometry we teach today.  CS on the other hand can change last week.


For a full list of interviews in this series please see CS Educator Interviews: The Index

No comments: