Gas station without pumps

2015 September 1

Pedagogy for bioinformatics teaching

Filed under: Circuits course — gasstationwithoutpumps @ 10:48
Tags: , , , , ,

I was complaining recently about the dearth of teaching blogs in my field(s), and serendipitously almost immediately afterwards, I read a post by lexnederbragt Active learning strategies for bioinformatics teaching:

The more I read about how active learning techniques improve student learning, the more I am inclined to try out such techniques in my own teaching and training.

I attended the third week of Titus Brown’s “NGS Analysis Workshop”. This third week entailed, as one of the participants put it, ‘the bleeding edge of bioinformatics analysis taught by Software Carpentry instructors’ and was a unique opportunity to both learn different analysis techniques, try out new instruction material, as well as experience different instructors and their way of teaching. …

I demonstrated some of my teaching and was asked by one of the students for references for the different active learning approaches I used. Rather then just emailing her, I decided to put these in this blog post.

It is good to see someone blogging about teaching bioinformatics—there aren’t many of us doing it, and most of us are more focused on research than on our pedagogical techniques.  For that matter, in my bioinformatics courses, I’ve only been making minor tweaks to my teaching techniques—increasing wait time after asking questions, randomizing cold calls better, being more aware of the buildup of clutter on the whiteboard, … .  Where I’ve been focusing my pedagogic attention is on my applied electronics course and (to a lesser extent) the freshman design seminar.

I’ll be starting my main bioinformatics course in just over 3 weeks, a first-quarter graduate course that is also taken by seniors doing a BS in bioinformatics.  This will be the 14th time I’ve taught the course (every year since 2001, except for one year when I took a full-year sabbatical).  Although the course has evolved somewhat over that time, it is difficult for me to make major changes to something I’ve taught so often—I’ve already knocked off most of the rough edges, so major changes will always seem inferior, even if they would end up being better after a year or two of tweaking.  I think that major changes in the course would require a change of instructor—something that will have to be planned for, as I’ll be retiring in a few years.

My main goals in this core bioinformatics course are to teach some stochastic modeling (particularly the importance of good null models), dynamic programming (via Smith-Waterman alignment), hidden Markov models, and some Python programming.  The course is pretty intense (the Python programming assignments take up a lot of time), but I think it sets the students up well for the subsequent course in computational genomics (which I do not teach) and for general bioinformatics programming in their research labs. I don’t cover de Bruijn graphs or assembly in this course—those are covered in subsequent courses, though both the exercises Lex mentions seem useful for a course that covers genome assembly.

The live-coding approach that Lex mentions in his blog seems more appropriate for an undergrad course than for a grad course.  I do use that approach for teaching gnuplot in my applied electronics course, though I’ve had trouble getting students to bring their data sets and laptops to class to work on their own plots for the gnuplot classes—I’ll have to emphasize that expectation next spring.

It might be possible to use a live-coding approach near the beginning of the quarter in the bioinformatics course—on the first assignment when I’m trying to get students to learn the “yield” statement for make generators for input parsing. I’ve been thinking that a partial worked example would help students get started on the first program, so I could try live coding half the assignment, and having them finish it for their first homework.

One of the really nice things about Python is how easily one can create input handlers that spit out one item at a time and how cleanly one can interface them to one-pass algorithms. Way too many of the students have only done programming in a paradigm that reads all input, does all processing, and prints all output.  Although there are some bioinformatics programs that need to work that way, most bioinformatics tasks involve too much data for that paradigm, and programs need to process data on the fly, without storing it all.  Getting students to cleanly separate I/O from processing while processing only one item at time is the primary goal of the first two “warmup” Python programs in the course.

One thing I will have to demonstrate in doing the live coding is writing the docstring before writing any of the code for a routine.  Students (and professional programmers) have a tendency to code first and document later, which often turns into code-first-think-later, resulting in unreadable, undebuggable code. I should probably make a bigger point of document-first coding in the gnuplot instruction also, though the level of commenting needed in gnuplot is not huge (plot scripts tend to be fairly simple programs).

2015 August 30

Ask better questions

Filed under: Uncategorized — gasstationwithoutpumps @ 15:29
Tags: ,

There is a new blog, intended for K–12 math teachers, that is dedicated to “trying to get a little bit better at questioning”: https://betterqs.wordpress.com/

I read a number of math-teacher blogs, even though I’ve not taught a math course since Spring 2003 (Honors Applied Discrete Math), because a lot of the teaching discussion is relevant to what I do teach. I also read some physics teacher blogs, for the same reason.

It would be nice if there were blogs discussing precisely the same courses and teaching challenges that I face, but I don’t know if there is anyone else in the world who teaches the same eclectic mix of courses that I do. Last year I taught a first-year grad course on bioinformatics, a how-to-be-a-grad-student course, a freshman design seminar for bioengineers, a senior thesis writing course, a grad course on assembling the banana-slug genome (co-taught with another faculty member), and a lecture/lab course on applied electronics.  Over the decades I’ve been a professor, I’ve created and taught courses on an even wider range than that, including bicycle transportation engineering, desktop publishing, VLSI design, technical writing, digital synthesis of music, and most of the core computer engineering courses. At the moment, I don’t see myself creating any more new courses before I retire, unless I can hand off some of the existing courses to younger faculty.

The “better at questioning” theme of betterqs.wordpress.com is an interesting one for a teacher blog, as it focuses on one rather narrow aspect of teaching, but is open to a diversity of different subjects, different age ranges for the students, and different teaching styles.  I’ve considered joining that blog as a contributor (it is open to any teacher, I believe), but I’m not sure how much I have to say about asking questions that is relevant to the math teachers who are the main audience.

I have much less time with students than K–12 teachers do (35 hours for a standard course, 95 for my intense Applied Electronics lecture+lab course), so I don’t have the luxury of slowly developing a classroom culture—I fully expect some students to still be uncomfortable with the way I teach even at the end of the course, though I attempt to get them to buy into the main purposes of the course within the first few hours of class time.

My goal in lecture classes is not to ask questions, but to get students to ask me questions—I’d rather that they figured out what they needed to know, rather than me trying to guess what holes they have based on what they get wrong on questions. I’m also not very interested in what students can do in 30 seconds—I want to know what they can do if they have adequate time to think and to look things up, so in-class questions don’t tell me much about what students need.  I rely on week-long homework and papers to do that.

I mainly use in-class questions to keep students engaged in the class—asking for the next step in a derivation, for example—rather than to test their knowledge or understanding. Since engagement is my goal, I don’t generally ask students who raise their hands, but do cold calling—selecting students randomly after asking the question.

Questions in the lab are a different matter. There I’m either trying to understand what the student is attempting (“What is the corner frequency you were trying to get?”) or prompting them to learn to do debugging (“Where is your circuit schematic?” “Have you compared your wiring to your schematic?” “What voltage did you expect to see there?”).

 

2015 June 19

Teaching as public speaking

Filed under: Uncategorized — gasstationwithoutpumps @ 21:57
Tags: ,

“Dean Dad” recently wrote a post Confessions of a Community College Dean: When Public Speaking Works Best, in which he talked about the advantages of improvised talks over highly prepared ones:

My best moments as a speaker have consisted of a layer of improvisation on top of a prepared framework. The words were substantially ad-libbed, but in a context that had been thought through in advance. Having the safety net of a clear framework, the knowledge of where I was going, and the security of knowing that the worst that could happen wouldn’t do permanent damage, made it possible to follow the muse of the moment. I could improvise knowing the direction I wanted to go, and having faith that I’d get there one way or the other.

That is my usual modus operandi for giving talks or class lectures. I start by figuring out what I want to cover and (sometimes) in what order, and make sure I understand the material thoroughly.  There have been a couple of times when I’ve had to give lectures on material I’m not completely comfortable with, and the results are not really satisfactory.  I know that there are people who can give scripted lectures from prepared PowerPoint slides on stuff they don’t really understand, but I can’t—I have to have the stuff really solid in my head. (Which is not to say that I never pass on mis-information—I have sometimes realized after further study that I’ve been teaching a simplification that is incorrect.)

My best classes usually have no more than about 5 words of lecture notes, reminding me of the topic of the day—the entire performance is improvised off of those notes, together with lots of “audience participation”—getting the students to ask questions and come up with partial solutions.  Such talks do not use prepared slides, but blackboard/whiteboard or live coding (for programs like gnuplot, where the concepts really rely on seeing what the program does with various scripts).  I also get a lot of digressions in the best classes, when students ask about what really interests them, rather than what I have prepared.  If the digressions are valuable and I know enough to go in that direction, I’ll take them.  If I don’t know enough, I’ll usually put the students off until the next lecture, so that I have time to do some reading.

I have, once, given a talk with a carefully written-out script (see Video of Designing Courses talk), when I had a very short time slot to present a large amount of material. The results were OK, but not as good as the longer, slower improvisational presentation I use in classes.

2015 March 30

First day of S15 circuits class: demo failure

Filed under: Circuits course — gasstationwithoutpumps @ 16:23
Tags: , , , ,

I went into the class with a fairly short to-do list—much shorter than last year’s. I managed to cover the following:

  1. Went over syllabus .I showed them the syllabus and managed to go over scheduling of labs, partner work, and online texts, but did not get to some of the boilerplate about cheating and about disability services.  Oh well, it is enough that the boilerplate is on the syllabus.
  2. Demoed pressure sensor  with PteroDAQ on KL25Z board. I hooked everything up and it didn’t work. I fixed one problem of a loose wire (using the jeweler’s screwdriver, but it still didn’t work. I did manage to show them PteroDAQ and used gnuplot to show them a pressure trace I had recorded in the BME88A demo last quarter.
  3. Reading the book and doing design well before lab.
  4. Assigning reading due tomorrow and Thursday.
  5. Partners changing every week, so no one gets a free ride for very long and no one has to suffer with a freeloader.

I was thinking that I’d use the chalkboard a lot, so I used the small screen in the classroom (this classroom is ridiculously over-equipped with projectors, even having a project for a screen at the back of the classroom) rather than the big one, which covers most of the chalkboard. But I ended up using the projector to show them parts of the book and to use the document camera to show the KL25Z board and instrumentation amp protoboard, and barely used the chalkboard at all.

The rearrangement of the labs, with soldering on Tuesday, sampling and aliasing on Thursday, and the thermistor labs next week does give me a little leisurely start-up than last year, as I don’t have to get to Ohm’s law and Kirchhoff’s current law until the voltage-divider lecture on Friday.

Overall, I’m fairly happy with how the first day of class went, despite the demo failure.  I’ll debug the demo and show them either in lab tomorrow or in class on Wednesday.  I just hope I haven’t fried the instrumentation amplifier with static—they’re expensive and I don’t know whether I have any spares on hand.

Update 2015-Mar-30 17:58:  When I got home I checked out the board to figure out what might be wrong.  After probing for a while with the voltmeter, I determined that the wire that had come loose from its screw terminal and that I had fixed in class was not the only wire that had come loose.  The one next to it had also come loose.  It still looked ok, but wasn’t making contact.  Opening the screw terminal, reinserting the wire, and tightening it down again fixed the problem.

 

2015 January 6

New quarter, lots of work

Filed under: Uncategorized — gasstationwithoutpumps @ 21:21
Tags: , , , ,

The Winter quarter started yesterday, and my schedule is going to be even fuller than I thought.

I only have two classes this quarter, both 2-unit courses. One course is the freshman design seminar, the other is the senior thesis writing course, so I’m getting students at both the beginning and the end of their undergraduate experience. Two 2-unit courses sounds like a pretty light load, but the courses are more work for me than most 2-unit courses.

For the freshman design seminar, I’m having to create content as I go—we have some lab access this year that we didn’t have last year, and I want to get the students building stuff as soon as I can. But that means my having to build the stuff, to make sure it is feasible, and to figure out how to digest it down to the point where students can have success in the design and construction. I’ll probably be spending more time on the course than any of the students—they’re supposed to have 3.5 hours a week in class or lab and 2.5 hours a week on their homework—I’m expecting to spend more than that prepping for class, and even more on grading.

At the end of last quarter, I filled out a form on the library web site asking for an information session for the course, and I filled it out again yesterday.  Usually the librarians are pretty good about responding to the requests, and I was wondering why I hadn’t heard from them, so I sent e-mail to a couple of the librarians I’d worked with in the past—it seems that the forms on their web page weren’t entering the data into the request system (reason still not known), and they’d never gotten my requests to schedule the information session.  They forwarded my request on to other librarians (a different team handles lower-division information sessions, which worries me a bit, because I don’t want the sort of pablum they usually give freshmen—the ones I’m used to working with know that I want solid training on search techniques), but I’ve not heard back from that team yet. It’s a good thing that I haven’t figured out my schedule for the quarter yet, as I’ve no idea when they’ll be available.

I’m also still waiting to hear back from the engineering lab staff about what training the students need to be able to use the tools in the fab lab, and how I can get access.  I probably need to go and talk with them in person—I’ve gotten no responses to my e-mail requests.

Today I asked the bioengineering undergrads (by e-mail) for volunteers to lead lab tours of the labs they work in, and to explain to the freshmen how they managed to join the lab. My explanation of how to join labs never seems as convincing to the freshmen as hearing directly from juniors and seniors that are in labs. The lab tours are always rather cool, because there is a lot of interesting research going on by bioengineering undergrads here. So far, I’ve had one faculty member tell me he’s assigned some students to do the tour of his lab, but they haven’t contacted me to schedule it yet. Tomorrow, I may ask the seniors doing thesis research if any of them have time to help out.

The senior writing class meets for 3.5 hours this week, but for the rest of the quarter we’ll be meeting only 1.75 hours a week (Wednesdays 5–6:45) as a group, mainly to go over common problems and for them to practice presentations with an audience. I was expecting about 12 students in the class, but I have 19, six of whom had not taken the prerequisite tech-writing course. This pisses me off a bit, since I don’t have time in a 2-unit course to teach everything that should be covered in the 5-unit writing course. But the fault is not entirely theirs—the tech-writing class has been full with students not able to get in every quarter for the past few years.

I had to do some last-minute restructuring of the thesis-writing class because of the size.  The last time I’d taught the class (2 years ago), I read each student’s draft thesis 5 times, providing four rounds of detailed feedback before the final draft was evaluated. I won’t be able to do that this year. Instead, I’ve broken the class into three groups, who turn in their papers out of phase (6 this week, 7 next week, 6 the week after, then repeat).  This plan results in only 3 rounds of feedback before the final version, not 4, but still has me reading a thesis (50-to-100 pages) every day.

I will be meeting with each thesis writer individually for 20 minutes a week, for them to practice their elevator talk, to discuss their research with me, and to discuss their writing.  In some cases in the past, I could not understand their projects from their writing, and it took several rounds of discussion before I realized what they were trying to do, so that I could help them word it comprehensibly.  (In at least one case, the student had misunderstood the statistics so badly that what they were claiming as exciting results were all indistinguishable from chance.) Nineteen students at 20 minutes each is another 6.3 contact hours.

Another difference from the last time I taught the course is that most of the students are in the second quarter of the three-quarter thesis project, rather than in the last quarter. This was a deliberate rescheduling on my part, because I was appalled at how many students had been working for over 20 weeks and written absolutely nothing.  In some cases they hadn’t even properly done their background research, and found that they’d wasted most of the 20 weeks on rather useless stuff that didn’t address their real research questions.  (I did send some politely worded e-mail messages to the faculty who had been “supervising” them, though I wanted to scream at them for their incompetence as advisers.)  Since then, I’ve also gotten much more careful when signing the independent study forms as the undergraduate director and program chair (the forms call for both signatures, but for the bioengineering program, both signatures are mine) to make sure that the students are writing something every quarter.

In any case, the student will not have finished theses at the end of the writing course, but almost-finished ones, with just a few results to fill in next quarter and a little discussion.

So for the two small classes this quarter, I have 11.6 contact hours, 12 hours of grading, and probably 4–5 hours of prep work each week.  I also have 2 hours a week scheduled for office hours, 1.5 for meetings with the department manager, and 2 hours for the department research seminar. So I’m up to 17 hours a week of scheduled meetings and 12 hours of grading—and that doesn’t count the 2–3 hours a week I’ll need to spend with grad students and 1–2 with the nanopore research group, nor the extra advising load that will happen this quarter as all the sophomores try to declare their majors.. So figure at least 22 hours scheduled and 12 hours grading, before we get to my administrative duties.

Today was spent almost entirely on administrative duties—both the department and the bioengineering program are having to do self studies this year for WASC accreditation next year, and I’m stuck writing the whole self study for the bioengineering program and the undergrad portion for the department. I had written a draft of the bioengineering self study over the two-week break while campus was closed, but I only found the form with the prompts for the self study today.  None of what I wrote was wasted, but they wanted a whole lot more bureaucratic bullshit about “Program Learning Outcomes”, a top-down management approach that ensures that every faculty member will run screaming when asked to do anything about the curriculum.  (Actually, our faculty are much more subtle than that—they just nod their heads and disappear.)

I was particularly annoyed by the loaded question in one prompt:

Overall, how has program assessment (including all steps: defining the program learning outcomes, developing the curriculum matrix or rubrics, interpreting the findings) been used to guide improvement of the program? Provide at least one example since the last review of an improvement made to some aspect of the program’s curriculum or course effectiveness.

My current draft answer (which I’m afraid will have to be toned down a bit) is

This prompt assumes that the Program Learning Outcome process has some beneficial effect on improving the program, for which there is no empirical evidence in the bioengineering program.  The improvements in the program have come despite the time wasted on the PLO process, not because of it. The extensive curricular changes described in Section 2 considered data from senior exit interviews, careful thought about what concentrations were uniquely offerable at UCSC, what made pedagogic sense, and what courses and resources were available.  The overly bureaucratic PLO process, particular the curriculum matrix and “rubrics”, took time away from thinking about and discussing the curriculum and pedagogy, diverting it to satisfying arbitrary bureaucratic requirements.

As you might gather, I’m pretty pissed about the PLO process, which calls for an annual report on assessment of one of the Program Learning Outcomes.  I had to make up the outcomes myself last year (none of the faculty were interested), and I’ll have to do all the “assessment” and writing of the report this year for two programs (none of the other faculty are interested). If the process served to trigger discussion about curriculum or pedagogy among the faculty, it might be worthwhile, but it has had the opposite effect, making faculty even less willing than usual to engage in discussions of the curriculum. So I’m stuck writing bullshit reports for administrators who’ll probably never read them, when I’d much rather be teaching, advising students, or fixing problems in the curriculum with other faculty.  (Or even, gasp, doing some research!)

Note: there have been some substantial improvements to the curriculum since the last review—I spent countless hours last year meeting with other faculty (one-on-one or in small groups) to completely overhaul the bioengineering curriculum.  I’m pretty pleased with the result (and students who’ve compared the old and the new curriculum wish that I’d overhauled it a couple years earlier, so that they could have done the new curriculum). But it really was the case that the “Program Learning Outcomes” was a distraction and a sideshow that cut into the time I had to think about and fix the curriculum.

Anyway, after meeting with the BME chair and department manager this morning, to set the agenda for this Friday’s monthly BME faculty meeting, I spent most of the rest of the day trying to wrestle the draft of the bioengineering self-study into shape so that I could share it with the bioengineering faculty, while answering the loaded questions of the administrators. (I’d shared the first draft and gotten feedback from only two faculty out of the thirty—both of them instructors, not tenure-track faculty—two of the best teachers in the School of Engineering.)  I’m unlikely to get much out of the rest of the faculty—I have no carrot or stick to encourage compliance (the program chair of the bioengineering program comes with 0 resources, not even a course buyout for hundreds of hours of work on the curriculum and the self-study).

I had been planning to spend the afternoon doing a first draft of the undergraduate self-study for the bioinformatics program, but the amount of extra work needed on the bioengineering one took up my whole afternoon. I spent a lot of it asking staff for the data that the administrators wanted—much of the data they asked for was not available and will take the staff several days to try to compile. Some of the prompts were particularly irksome:

Provide a brief description of the learning outcomes assessment process, including a multiyear assessment plan, references to assessment instruments provided in Appendix III (e.g., a capstone rubric), and a summary of the annual assessment findings regarding each of the program learning outcomes (as many as have been
assessed to date). Comment on what the indirect evidence from the undergraduate major (UCUES) survey, such as students’ self-reported competency levels and satisfaction with educational experience, indicates in terms of the strengths and weaknesses of  the program. How do measures of direct evidence of student learning agree with indirect measures?                           

What is the UCUES survey data I’m supposed to analyze?  Well, after trawling through my e-mail I found a promise that I’d get the data in December. I never did, so I asked. Oh, they might have that by next week, maybe.  So much for trying to get the self-study written before the thesis-a-day grading starts tomorrow!  The “assessment instruments in Appendix III?” There aren’t any—I only wrote the bloody outcomes last year under duress, and there haven’t been any “assessment instruments” (by which they probably mean bullshit surveys and meaningless statistical analysis of portfolios using made-up “rubrics”). So, summary of annual assessment findings: “there haven’t been any and they wouldn’t mean squat even if there were some”.

I do have several years’ worth of portfolios from graduating seniors as well as notes from exit interviews (both portfolios and exit interviews are requirements for graduation), and I’ve actually read a lot of the student theses in depth. That’s useful to do, and a lot of the ideas for the curriculum overhaul came from discussing the curriculum with graduating seniors at the exit interviews, but turning the portfolios and interviews into an “assessment instrument” using their 50-page guide to the process?—pure, unadulterated educrap.

 

Next Page »

The Rubric Theme. Blog at WordPress.com.

Follow

Get every new post delivered to your Inbox.

Join 319 other followers

%d bloggers like this: