I'm thinking about something teacher-y today.

As teachers, how do we approach the first day of class?

The approach I've found myself trying to emulate, lately, is an immersion one—inspired by a few teachers I've had who approached Lesson 1 with the absolute audacity.

/1
In college I took my first Arabic class. The teacher opened class by saying some stuff to us, presumably in Arabic.

"Ismi Muhammad, w ma ismok?" he asked of someone in class.

Now clearly, that person had no f'n idea what was going on. So the teacher pointed to himself.

/2
"Ismi Muhammad." Then he wrote "muhammad" on the board.

"wa", gestures towards student. "Ma ismok?"

Eventually the student took a guess: "Uh, Bryan?"

"BRYAN!" Teacher drew a map on the board and, above the square that corresponded to Bryan's seat, wrote "Bryan."

/3
"W anti, ma ismoki?" the teacher gestured to the next person.

"Uh, Amanda."

Teacher writes "Amanda" on the board above Amanda's square. And so on, until the whole class has introduced themselves.

Teacher then points to the board. "Look at that! You're speaking Arabic!"

/4
Now, were we fluent in Arabic? Clearly not. But I appreciate the effort that this teacher made, on minute 1 of day 1, to get us to think about ourselves as *practitioners.* For all the flaws that this specific implementation might have, I think the approach itself is useful.

/5
It happens to be ESPECIALLY useful when teaching a language because, turns out, it's easier to learn a language through immersion, with translation as a backup, compared to the other way around.

Why?

/6
Because translation is a separate, difficult skill. Making translation a prerequisite to learning a language slows things down.

This teacher knew that, and took time out of class to start with immersion.

My intro to CS teacher did a similar thing.

/7
On Day 1 of class, he rolled out a table with peanut butter, jelly, bread, and a knife on it. Then he asked us to instruct him how to make a peanut butter sandwich.

He did this exercise to like 60 nineteen year olds before he even told us his name.

/8


Why? Because he wanted to introduce us to computational thinking without requiring a programming language—a separate, difficult skill—to demonstrate the concept.

This teaching technique of recognizing and stripping away prerequisite skills is, IMHO, invaluable.

/9
@dabeaz does this too. In his classes, we write verifications for our code. Do we drag unittest or pytest into this? Nah. We use the builtin `assert`.

His classes inspired my decision, in my Python Programming class, to have students build a test framework, step by step.

/10
This way students learn a lot about API design, but they ALSO learn that the libraries they use in a job are not magic tools.

Students have built one of those themselves. They're *practitioners.*

/11
I found myself in a similar negotiation while preparing this @UChicagoMPCS / @UChicagoCAPP sample lecture.

"How do I get students to see themselves as software risk analysts WITHOUT prerequisite skills?

chelseatroy.com/2021/04/03/lar…

/12
This looks easy when done well and is, in fact, extremely difficult.

It's even harder when you are talented at, or a longtime practitioner of, the subject you teach, because you forget what the prerequisites even ARE.

(luckily I don't have that specific problem 🤪)

/13
Conveniently, practice with this translates out of the teach-o-sphere to other disciplines (as do many teaching skills, IMO).

I talked more about stripping prerequisites in this piece. Hacker News hated it, which is how you know it's good:

14/14

chelseatroy.com/2020/12/18/how…

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Chelsea Troy

Chelsea Troy Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @HeyChelseaTroy

8 May
This morning I saw @Dixie3Flatline's tweet about how you can dislike a tool without writing a mean blog post.

I remembered a conversation with @KentBeck about critique: art students explicitly learn to critique the work of others. Engineers...don't, and it shows.

What do?

/1
I trained in arts schools for years before becoming an engineer, and it has definitely impacted the way that I handle both giving and receiving critique.

So what constitutes a sophisticated, useful critique?

/2
BEFORE I BEGIN, two things.

1. I'm about to discuss critiquing a PIECE (like code, software, a product, or a book).

This is not about feedback for a PERSON. You can read about that below. Or, if you're light on time, check out the 20 minute talk.

/3


chelseatroy.com/tag/feedback/?…
Read 27 tweets
29 Apr
We have a pandemic, a reckoning about police brutality, late-stage capitalism, and more.

And consecutively, I'm supposed to be teaching a class about mobile software development.

I wanna talk for a second about why and how I address tough topics like these in the classroom.

1/
So first, why talk about tough stuff in the classroom?

1. These things affect my students lives and, therefore, ability to learn. Acknowledging the events makes it easier for students to come to me with questions and concerns related to their studies.

2/
2. I look like a tool if I teach 20 min after the Derek Chauvin trial concludes and I act like nothing just happened.

Computer scientists already have a reputation for living in their own little nerd world. I don't wanna feed that beast.

3/
Read 18 tweets
18 Apr
I have been watching several online lectures and lecture playlists from different instructors lately.

I'm starting to have some aggregate thoughts about what makes a lecture work—or, more specifically, NOT work.

1/
Before I begin, two things

1. I'm a graduate school instructor. I have given lectures. I'm not the peanut gallery.

2. My sample is "Lectures that got to YouTube," so their quality probably outstrips the average.

In particular...

2/
I have seen very few cases where the instructor didn't prepare or didn't care.

So this thread is really "What can STILL make a lecture not work, even if the instructor cared about the quality of instruction and prepared for class."

3/
Read 40 tweets
16 Apr
This evening in Chicago, I watch one moneyed/powerful institution after another sound alarms about Possible Protests.

That's what upsets them; not graphic evidence that Chicago Police murder innocent people with impunity.

What is the purpose of protest, here, now?

1/
Under the right circumstances, protests drive change. In 2020, multiple city administrations moved to divert funds from policing to community support, and Colorado became the first state to end qualified immunity since its introduction.

But Chicago's circumstances...
2/
I mean, let's start here: the mayor is a cop.

She has presided over, at this point, MULTIPLE high-profile cases of police misconduct attempted coverups.

What kind of change do we expect to drive?

3/
Read 15 tweets
11 Apr
So, engineers get blamed for a lot of stuff.

To be clear, engineers have a lot of power and share blame for a lot of stuff.

But also, engineering suffers a bit from the goalie problem, and it ends up negatively impacting orgs' opportunities to fix things. 1/
The Goalie Problem:

Any time the opponent scores, what's immediately obvious is whatever the goalie did wrong.

But the most fruitful answers to "how can we not let this happen again" often have to do with how that ball got into the goalie territory in the first place.

2/
Here's a common one: some kind of joke about "Engineers write bad error messages."

'kay, well, sure, hardy harr, but that's what happens when you don't give eng the time or access to ask questions and then and hire a designer who doesn't design failure cases.

3/
Read 18 tweets
12 Feb
@freakboy3742 So, I feel like an ass explaining this to a Django maintainer. This guy's gotta know 3x as much as I do—including why it's controversial.

The REPLIES, however, are getting kinda sarcastic and mean and poorly informed. So I'm'a explain, in good faith, why it's controversial. 1/
@freakboy3742 Before I begin, who the hell am I: I write Python that powers article recs on Firefox and NASA LandSat satellite data-to-image processing. I teach Python to CS grad students by having them replicate features of pytest, pandas, and memcached.

The reasons it's controversial:

2/
@freakboy3742 1. The first thing to understand about any language/framework is that computers are entirely manmade, and so therefore CS doesn't have "natural laws" like physics does.

CS's "laws of physics" are the perspectives of the humans who wrote whatever the thing is we're writing in. 3/
Read 17 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!

:(