Skip to main content

Musings, by topic

Essays on writing, or at least on writing my musings

My audience (Essay #10)

I tell my students to pay attention to their audience when they write. This essay reflects my attempts to consider the audience (or audiences) for these essays.

Finding the time to write (Essay #17)

Relatively early into the essay a day experiment, one of my colleagues said Sam, I don’t know how you find time to write an essay each day. I don’t even find time to read your essays. Here, I attempt to consider how and why I am trying to find the time to write.

On making, breaking, and remaking the habit of daily writing (Essay #41)

Reflections on trying to restart these essays.

Essays I did not post (Essay #48)

In which I explore two (or maybe three) essays that I wrote and realized that I should not post.

Writing about people (Essay #57)

In which I think about a slightly different genre of essay.

Wrapping up (Essay #84)

On ending essays and other forms of writing.

The Freewrite typewriter (Essay #186)

A cool-looking writing device that does not fit my writing style.

Candidate’s statement, Special Interest Group on Computers and Society (Essay #195)

An exercise in editing.

(Un)professional development (Essay #200)

On the potential purposes of these essays.

Reinventing the wheel (Essay #222)

Some additional reasons I wrote the don’t embarrass me series.

Writer’s block (Essay #256)

On missing the third (?) voice in my head.

A draft description of the new CSC 151 (Musing #264)

The evolution of a description.

Fun with writing tools: The CSC 151 description (Musing #265);

Adventures using Grammarly and the Hemingway Editor.

Bad advice from Grammarly: Quotation marks and punctuation (Musing #278)

Why I should not trust electronic editors.

Bad advice from Grammarly: Repeated words (Musing #281)

More reasons not to trust electronic editors.

Fun with Grammarly (Musing #349)

What I learn (or don’t learn) from a writing tool.

Writing to learn (Musing #458)

One of the important reasons that I write.

Learning to satisfice (Musing #483)

A great word.

Becoming someone else’s assigned reading (Musing #532)

Something I had not expected.

I write like … (Musing #605)

SamR plays with silly Interweb tools.

A blurb for the new CSC 151 (Musing #712)

An exercise in editing.

Writer’s block (Musing #734)

It comes at the least opportune times.

Bad writing choices (Musing #737)

Strange and obscure jokes.

Writer’s block (Musing #780)

It continues.

Writer’s block (Musing #793)

Exploring causes.

No NaNoWriMo for now (Musing #797)

Maybe next year.

Reading for Ralph (Musing #993)

No, not reading to ralph.

Revising a blurb (Musing #1001)

Exercises in editing.

One hundred words (Musing #1005)

So few!

My first ENG-207 assignment (Musing #1016)

Seven points to consider.

Responding to my manuscript (Musing #1022)

I may not be the nicest editor.

Knock (Musing #1025)

Exploring a short-short story

Another assignment for The Craft of Creative Nonfiction (Musing #1040)

Did I make it too easy for myself?

My second manuscript for The Craft of Creative Nonfiction (Musing #1041)

Is it just an extended musing?

The Wrong Stuff (Musing #1049)

Does Ralph hate us?

Drafting my third essay for The Craft of Creative Nonfiction (Musing #1055)

So much effort!

My third assignment for The Craft of Creative Nonfiction (Musing #1057)

A pathography

Journals, notebooks, diaries, and blogs (Musing #1251)

So many options

On language

Notes on language usage. I didn’t add this category until after musing 650, so there are likely many musings on language missing. I hope to link to them eventually.

Choosing the right word (Musing #657)

If only I could pronounce the right word correctly.

Strunk & White and Williams (Musing #668)

Clearer elements of style.

A number of (Musing #676)

Idioms I should not use.

Busses and bussing (Musing #750)

The number of s’s matters.

A broken record (Musing #824)

Multiple meanings.

Advisor wins! (Musing #833)

Watching spelling policies change.

Conciseness vs. concision (Musing #840)


Difficult issues (Musing #865)

Words that hurt.

Fisking (Musing #937)

A word I had not known.

Wayne State’s 2020 word list (Musing #980)

Fun with words.

Slash and backslash (Musing #1033)

Learn the difference.

Halfway there (Musing #1175)

Inclusion happens gradually.

Terminology (Musing #1198)

Complicated, but sometimes necessarily so.

Another inappropriate B-word (Musing #1256)

Let’s consider each other’s feelings.

Buffalo! (Musing #1281)

Times eleven.

ChatGPT, LLMs, and Other Similar Issues

On writing and computers (perhaps also ChatGPT and large language models) (Musing #1254)

Starting a new series.


Notes on the experience of musing. I didn’t add this category until after writing musing 650, so there are likely many meta-musings missing. I hope to link to them eventually. For now, most can still be found in the list of musings on writing.

On the genesis of Sam’s Assorted Musings and Rants (Essay #5)

Why I started this site.

On the form of these musings and rants (Essay #11)

Why I’m putting my essays on a Web site and not a ’blog or Twitter feed.

Following my muse (Essay #88)

How I choose what to write about each day.

Closing in on one-hundred essays (Essay #95)

Getting ready for some kind of milestone (or centistone).

My one-hundredth essay of the day (Essay #100)


Do you take requests? (Essay #140)

Thoughts on what I should do when readers request that I write about something.

Why are you doing this? (Essay #141)

An answer to a series of questions I received about these essays.

Removing another essay (Essay #145)

Reflections on the need to remove essays.

A few forthcoming essays (Essay #146)

Almost what it says. A potential preview of some upcoming essay topics.

Pursuing the serious, settling for the frivolous (Essay #156)

Why I’m recently been writing essays about myself rather than other topics.

An introduction to a month of technical essays (Essay #174)

A note for my regular readers on the month on Don’t embarrass me; don’t embarrass yourself.

Sam, you’re losing your audience (Essay #184)

A followup to a comment from a reader.

Writing on the road (Musing #266)

Why I didn’t get many essays posted.

My muse may be on spring break (Musing #269)

On not writing.

My muse is still away for spring break (Musing #270)

On continuing to not write.

Too many topics, too little time (Musing #300)

A potential new name for this collection.

Three-hundred and sixty-five musings (Musing #365)

Not an anniversary.

I don’t read your footnotes (Musing #385)

Then why read my musings? The end notes are the best part.

A new record? (Musing #393).

Something like five or six.

Eleven and one months of daily musings (Musing #399)

Starting new series.

Four-hundred musings (Musing #400)

Another milestone, or perhaps millstone.

What happened? (Musing #421)

An explanation for a week off of musing.

Wrapping up (Musing #426)

The last musing of a day of musings (or is that a day of musing).

One year of nearly-daily musings (Musing #433)

And a related anniversary.

On hiatus (Musing #455)

Pausing musing, not because I want to, but because I have to.

Why keep musing? (Musing #500)


Too much to write (Musing #520)

Why doesn’t the length of my list of topics to write about ever decrease?

Failing to muse (Musing #528)

One of those days that I just can’t write.

Missing fifty-five musings (Musing #538)

It appears that I don’t muse every day.

Choosing a topic (Musing #548)

My current strategy for choosing a musing.

The evolution of a musing (Musing #570)

From muse to musing.

A second anniversary (Musing #606)

Reflecting on two years since the first musing.

Whoops (Musing #616)

Forgetting the end-of-month musing.

An introduction to SamR’s musings for members of SIGCSE-members (Musing #636)

Some day I’ll write a real introduction.

An introduction to SamR’s Assorted Musings and Rants (Musing #643)

My latest attempt at proving context to the musings.

You can’t always write what you want (Musing #647)

Sometimes you might just find that you write what you need.

Back from vacation (Musing #661)

An explanation for a week of missing musings.

Musings you’ll never read (Musing #679)

A few that got away.

System downtime (Musing #687)

External constraints on musing.

Someone else’s musings (Musing #751)

I’m not alone in using the term.

More musings by others (Musing #754)

I’m not even the only Sam who uses the term.

Clearing cruft (Musing #771)

Dealing with the musings project.

Dreaming about musing (or vice versa) (Musing #785)

What is my subconscious trying to tell me?

Starting a new sketchbook (Musing #800)

A minor purge.

More musings I’ll fail to finish (Musing #820)

Some that were purged.

My muse takes a vacation (Musing #845)

One reason I wasn’t writing.

I’m back (I think) (Musing #861)

A return to writing (I hope).

Failing to rant (Musing #874)

Have I beomce too polite?

Prelude to my next musing (Musing #999)

What’s in a name?

Reaching One Thousand (Musing #1000)

An achievement, of sorts.

Musing 1024 (Musing #1024)

Going beyond ten bits. Or more than a buck and a quarter.

Comfortable structures (Musing #1046)

You should know what to expect.

Attempting to understand my readers (Musing #1056)

Sam trolls for comments and compliments.

Going on hiatus (Musing #1105)

It’s never good when my musings begin with a list of positives.

Considering a return from hiatus (Musing #1107)

Still undecided.

Musing Twelve Hundred (more or less) (Musing #1200)

I’ve written more than 1200. So does that makes this more or less?

I miss your musings (Musing #1216)

I’m not sure how to respond.

Monthly reflections

I conclude most months with a reflection on musing. You will find most of them here.

One month of musings (Essay #31)

Reflections on my first month of writing.

A second month of daily essays (Essay #71)

Reflections on my second month of writing, including an explanation of why this is essay #71.

A third month of essays (Essay #104)

Reflections on my third month of essay writing.

A fourth month of essays (Essay #138)

I bet you can figure this one out.

Five months of essays (Essay #173)

The series continues.

Six months of daily essays (Essay #215)

Let’s see … 215 - 173 is 42. Those are pretty strange months.

Seven months of daily essays (Essay #244)

Alternatively, six consecutive months of daily essays.

Eight months of musings (Musing #275)

In which I revise the term I use to refer to these pieces of writing.

Nine months of daily musings (Musing #305)

Or one year since my first daily musing.

Ten months of daily musings (Musing #342)

Is it time to stop (again)?

Eleven months of daily musings (Musing #361)

Having trouble keeping up with daily musings.

Eleven and one months of daily musings (Musing #399)

Starting a new series.

Thirteen months of daily musings (Musing #432)

Another anniversary.

Another month of daily musings (Musing #526)

Restarting the monthly meta-musings.

Another month of musing (Musing #554)

Continuing the monthly meta-musings.

Another month of daily musings (Musing #585)

What did I learn from musing this month?

Another month of daily musings (Musing #617)

Thirty days hath April.

Another month of daily musings (Musing #648)

Much too much musing on marketing.

Another month of daily musings (Musing #672)

Shorter musings than normal. Fewer musings than normal.

Another month of daily musings (Musing #705)

Rant less. Code more.

Another month of (nearly) daily musings (Musing #738)

Rant more. Write, too.

Another month of daily musings (Musing #764)


Another month of daily musings (Musing #796).

Better than last month.

Another month of (almost) daily musings (Musing #825)

Better still.

Another month (or two) of daily musings (Musing #887)

Reflections on my return to the musings.

Another month of daily musings (Musing #905)

Getting comfortable with the lapses.

Another month (or two) of (approximately bi-) daily musings (Musing #939)

Adding (parenthetical) remarks to the title.

Another month of (mostly) daily musings (Musing #972)

Also another year.

Another month of daily musings (Musing #1004)

Looking forward to learning how to write.

Another month (or two) of (nothing that resembles) daily musings (Musing #1035)

Even less writing than usual.

Another month of (almost) daily musings (Musing #1060)

Musing in a time of confusion.

For prospective students, parents of prospective students, and others with similar interests

Studying CS at a liberal arts college vs. a large university (Essay #7)

A response to parents and prospectives who asked about the differences.

Grinnell’s CS department (Essay #8)

A response to students who ask about the differences between CS at Grinnell and CS at our peer institutions.

Some shorter questions and answers about Grinnell’s CS program (Musing #294)

Additional information about the department.

Grinnell’s Individually Advised Curriculum (Essay #24)

One of the highlights of a Grinnell education.

Grinnell’s Mission Statement (Essay #166)

The statement that guides a Grinnell education.

MathLAN: Grinnell’s Linux Network (Essay #52)

How Linux integrates with a Grinnell education.

Research in CS at Grinnell (2016 Edition) (Essay #59)

A short overview of student-faculty research, with some details about the topics from summer 2016.

Studying at Grinnell (Essay #182)

A more general comparison of Grinnell to its peers, reflecting on overall characteristics of the institution and the student body.

What kind of computer should you buy? (Essay #2)

A response to a recent question from a prospective student. Also a response to a question that I get way too often.

Why study CS? (Essay #33)

Computer science is an awesome discipline. Here, I reflect not only on some of the reasons that I study CS, but also reasons that students might want to study CS.

A draft MathLANifesto (Essay #238)

Some more thoughts about our approach to teaching.

Outcomes of a liberal arts education (Essay #248)

Why study at a liberal arts college?

A spectrum of international CS majors (Musing #273)

A short reflection on the variety of people you will meet in the CS department.

Summer research with students (Musing #292)

Why I offer summer research opportunities.

Self-studying computer science (Musing #1051)

I’d rather you take our classes, but here are some alternatives.

Preparing to do HCI (Musing #1052)

Study broadly.

Dear Grinnell students who want to take CSC-151 (Musing #1151)

Plan ahead.

For prospective faculty

On teaching CS at Grinnell (Essay #45)

Things that I think make our department great.

For current students and others with similar interests

Contacting faculty members on behalf of students (Essay #1)

Some notes on my approaches to this complex topic.

Profanity in class (Essay #6)

Why I don’t use profanity in class, and why I don’t want my students to, either.

Convocation (Essay #9)

I think every member of the Grinnell community should attend Scholars Convocation. Here’s why.

Naming week 14 (Essay #22)

What (not) to call the last week of classes.

On the last day of class (Essay #25)

Reflections on the end of a class, and the end of the semester.

Infusing the college mission into the residential experience (Essay #26)

A reflection on one section of the initial list of recommendations from the task force on residential learning.

Musings on Self Governance (Essay #28)

Self gov is a central aspect of Grinnell’s academic and residential culture. This note reflects my own perspectives on self-gov. I may follow them with a more considered essay.

Why study CS? (Essay #33)

Computer science is an awesome discipline. Here, I reflect not only on some of the reasons that I study CS, but also reasons that students might want to study CS.

Friday PSA (Essay #44)

An extended version of things I say to most of my classes every Friday.

Research in CS at Grinnell (2016 Edition) (Essay #59)

A short overview of student-faculty research, with some details about the topics from summer 2016.

Remaining optimistic (Essay #14)

At a recent meeting of students and faculty about some campus issues, a student asked How, after fifteen or more years of trying to advocate for change, and seeing where we are, how can you keep trying? Here’s my attempt to answer that question.

Scholarship for all in CS (Essay #69)

Grinnell has begun a research for all endeavor, which the CS department is renaming scholarship for all in honor of the Boyer report. These are some preliminary thoughts on what the goal means and how we might meet that goal.

Notes for a talk on Scholarship Opportunities for All in Computer Science (Essay #99)

A followup to the previous essay, intended as a speech for a panel on a Faculty Friday.

What makes you happy vs. what you do (Essay #15)

Michelle showed me a Facebook post that said something like Make a list of the things that make you happy. Make a list of the things you do every day. Compare the lists. Adjust accordingly. That post inspired this essay.

Exit interviews (Essay #30)

The CS department’s favorite assessment tool.

Helping students with programming problems (Essay #32)

Some notes for our peer educators.

The Grinnell Prize (Essay #75)

Comments on a distinct part of Grinnell.

Thoughts for CS Majors on Studying Abroad (Essay #77)

Potentially an important element of your education.

Exploring the CS major, 2016 (Essay #97)

A draft of a speech to prospective majors.

A letter to our students (Essay #237)

Advice to students about letters.

Advice for students on interviewing (Musing #289)

The title says it all.

Tag your bike: Some advice to students (Musing #438)

This title says it all, too.

Starting a (CS) major in your fourth semester (Musing #815)

Not the best idea.

For alumni and others who donate to the department

How we spend your donations (Essay #4)

A thank-you note, of sorts.

Thank-you letter to donors to the CS department (version of December 2016) (Essay #164)

A revised version of the thank-you note, about six months later.

Planning a CS Affinity Reunion (Essay #49)

Thoughts on an upcoming event.

Donating to Grinnell (Essay #157)

Some reasons to donate.

Reflections on some important issues

Preliminary notes on accessibility in the classroom (Essay #20)

Some sketchy thoughts as I get ready for a meeting about accessibility in the classroom.

Alcohol at Grinnell (Essay #42)

Thoughts about recent policy changes on alcohol use, and the broader problems of alcohol use on campus.

Microaggressions and safe spaces (Essay #60)

On my own experiences with microaggressions and what I draw from those experiences.

Diversity in computer science (Essay #63)

Why I make diversifying the discipline one of my priorities

Promoting diversity in computer science at Grinnell (Essay #67)

Because we value diversity in the discipline, we take a number of steps to recruit and support a wide range of students. This is my attempt to explain some of them.

Thinking the best of other people (Essay #55)

One of the best lessons I learned from Freda and Bill Rebelsky.

Dumb ways to address implicit bias (Essay #72)

Addressing implicit bias is essential. But there are smart ways to do so and not-so-smart ways to do so.

On faculty/staff relationships (Essay #74)

We should work together, but we’re too often at odds. A consideration of some obstacles and some ways we and the institution can help overcome those obstacles.

Shared governance (Essay #82)

Faculty, staff, administrators, and maybe even students working together to govern the College.

Shared governance, revisited (Musing #288)

Some followup discussions on shared governance.

Web Accessibility (Essay #92)

What you should pay attention to when building Web pages.

On the termination of Grinnell’s relationship with Posse, revisited (Essay #177)

An updated version of a much earlier essay.

Borrowed, used, downloaded (Essay #211)

A consideration of comparative ethics.

Work-life balance (Essay #212)

Way too many thoughts on finding harmony between the personal and the professional.

Class notes and note takers (Essay #223)

Thoughts on one type of accommodation.

Complaints about captioning, take 1 (Essay #226)

What were we thinking?

The white elephant in the room (Essay #227)

Surviving America.

Intent vs. impact (Musing #313)

Our words and how people interpret them.

Owning your privilege (Musing #316)

You know about your privilege, not others’.

Curmudgeonly fun (Musing #322)

Asking others to pay attention to Web accessibility and FERPA issues in Web hosting.

Complexity and simplicity (Musing #469)

Finding myself frustrated by reductionist approaches.

Shared governance (Musing #529)

Something Grinnell needs to work on.

Departmental initiatives to support diversity in CS (Musing #1062)

Many, but never enough


On Grinnell’s Completion Rate (Essay #23)

Grinnell is working hard to increase our six-year completion rate.
I reflect a bit on that goal and the way it is being phrased.

Grinnell’s expected student workload (Essay #18)

In spring 2016, Grinnell’s Curriculum Committee released a document setting policies for minimum workloads in classes. In this essay, I attempt to reflect on the implications of that document.

Grinnell’s Web Presence (Essay #54)

I’ve spent the past three years complaining about the loss of important public information from our Web site. In this essay, I attempt to tie together my various comments on these issues.

Software hammers (Essay #40)

On the dangers of having too limited a view of software.

Proofpoint: How to make email miserable to use (Essay #21)

My reaction to Grinnell’s installation of Proofpoint. While I rant about bad software in a separate essay, Proofpoint causes me enough difficulty that it’s worth a separate essay.

Word choice that irritates me: Sell Yourself (Essay #80)

With all the baggage that phrase carries, why would anyone ever use it?

Terms I’ve come to despise: Best practices (Essay #86)

They aren’t.

The College bookstore (Essay #87)

Narrow and broad views of a central campus resource.

CV vs. Vita (Essay #93)

Why it bothers me when people write vita when they mean CV.

Software for reporting sexual assault (Essay #101)

Frustrations with yet another piece of software on campus, one that is particularly important to get right.

Ordering from Harry and David (Essay #139)

A comedy of (technical) errors.

More fun with Harry & David (Essay #163)

The comedy continues.

Even more fun with Harry & David (Essay #172)

It’s not so funny any more.

Harry & David: The Saga Concludes (Essay #198)

I think I’m done!

Submitting Camera-Ready Copy to SIGCSE 2017 (Essay #151)

Further evidence that computers hate me, or perhaps that I hate computers.

The strange pricing of meal plans (Essay #161)

Nonsensical numbers and my failure to get explanations.

Date and time formats (Essay #235)

On the perils of ambiguity.

The joy of administrative processes (Essay #251)

Trying to get money for the CS SEPC.

Reply to all (Essay #258)

Learn how to use it correctly!

Fighting with Microsoft Surface (Musing #263);

Why did I try?

How not to ask about a position (Musing #271)

I rant about an email message that I received.

Good things about Grinnell that frustrate me: Too many events (Musing #286)

Doesn’t anyone pay attention to our schedule of events?

Handling student course demand (Musing #290)

Yes, we need extra sessions and the occasional overenrolled course.

A (nonlinear) rant (Musing #293)

Things that bothered me one day.

Summer MAP compensation (Musing #308)

A more reasoned rant about two important issues.

The restrooms in Noyce (Musing #309)

A reason I’m ashamed of our students.

Losing it (Musing #314)

My worries about keeping up with demand.

The Ologie marketing concept survey (Musing #321)

Some good, some bad.

What’s sauce for the goose … (Musing #325)

What goes around, comes around.

Delegate! To whom? (Musing #334)

In which I try to delegate and fail.

Self-catering, revisited (Musing #336)

In which I respond to a question about catering.

Mailing list etiquette (Musing #339),

In which I wonder why people send the messages they do to mailing lists.

Yammering (Musing #372)

Misusing annoying social media systems.

It shouldn’t be my job (Musing #392),

Stupid answers to unnecessary questions.

Best of breed? (Musing #401)

Our strange software choices.

Another unposted rant (Musing #407)

Deciding not to post a rant.

Breakfast in the Marketplace (Musing #411)

A healthy breakfast, not.

Another good rant ruined (Musing #412)

A danger of paying attention to broader issues.

Which role has priority: Department Chair or Tutorial Advisor? (Musing #413)

I thought I was done musing today, then the email arrived.

Browser expectations (Musing #428)

Why do people continue to expect that I use a browser that does not exist for my operating systems?

Get Outlook for iOS (Musing #435)

Why shill for a felon?

Course tags (Musing #443)

A good idea misused (not mused).

Grinnell things I don’t understand: Student meal stipends (Musing #440)

Why do we charge more than we’ll allow them to spend?

Grinnell things I don’t understand: Accounting practices (Musing #451)

Why can’t they itemize?

Words I hate: Relatable (Musing #453)

I don’t relate.

I lied (Musing #454)

How are you doing, Sam?

Show me the data (Musing #468)

Why is that such a hard request?

Caring about (handbook) language (Musing #481)

Am I the only one who cares? Does that mean I should stop caring?

Damn, I’m old (Musing #486)

Modern musical taste.

My annual Thanksgiving Shuttle rant (Musing #487)

Thanks for suggesting my class is unimportant.

A note to Curriculum Committee (Musing #489)

Please make sure that faculty know about their advisees.

Sokal, revisited (Musing #505)

Getting not only the science, but also the citations, wrong.

Some coding reminders to myself (and my students) (Musing #507)

A reaction to the joy of dealing with crappy code.

Unsubscribe (Musing #512)

What should be an easy process.

Norman bins (Musing #515)

Bad design.

Thoughts on proposed changes to Grinnell’s gift policy (Musing #518)

Urging caution.

Potato bars (Musing #522)

Food choices.

A nine-month contract (Musing #530)

If we have nine-month contracts, why can’t we do three months of paid work over the summer?

Bad software (Musing #562)

Something that makes it harder to teach.

I hate computers (Musing #565)

The black screen of death.

Overloads (Musing #567)

Exciting opportunities lead to bad decisions.

Penny wise … (Musing #573)

The joy of bottle deposits.

Annoying paperwork (Musing #576)

Is there any other kind?

Perspectives on writing (Musing #578)

Arguing for multiple approaches.

Textbook orders (Musing #579)

Does it really make sense to make us do them this early?

Course tags and other alternatives (Musing #584)

Can’t we find better ways to understand the curricula our students design?

Two cultures, revisited (Musing #591)

Misunderstanding other disciplines.

Getting requirements wrong (Musing #592)

I am frustrated that we don’t express core requirements correctly.

Mixed messages (Musing #596)

Paying attention.

Recycling (Musing #597)

Why is it so hard?

Bad code (Musing #599)

Among the things that don’t belong in standardized exams.

Criticizing faculty proposals (Musing #601)

Something I do too often.

Better classroom software (or perhaps hardware) (Musing #611)

Following up on a recent rant.

Logos, colors, fonts, and more (Musing #612)

Does getting the right kind of Grinnell Red really matter?

Comments on the summer MAP form (Musing #624)

Minor critiques.

It’s not my Grinnellian story (Musing #626)

The title says it all.

Grinnell’s new typeface choices (Musing #633)

They want me to use Arial?

Embracing the public Web (Musing #634)

Putting information where it belongs.

Cyclic imports in Python (Musing #655)


Loading zones (Musing #656)

These are not your parking spaces.

Grinnell traffic (Summer 2018) (Musing #670)

Worse than it used to be.

Code as language (Musing #695)

Ludicrous ideas.

Badly designed software (Musing #702)

Don’t delete user files.

Reflections on some Grinnell policies (Musing #708)

That is, policies we need to change.

Critiquing a comment without critiquing the speaker (Musing #715)

Trying to be more polite. Probably failing.

More Norman Doors (Musing #716)

The wonder of physical user interfaces.

Business cards (Musing #719)

I give up.

Vegetarian in Iowa (Musing #720)

A challenge.

Getting the recipient right (Musing #721)

Avoiding the appearance of phishing.

Old or vintage? (Musing #722)

Computers become vintage way too quickly.

FedEx signatures (Musing #725)

Inconvenient, at best.

Advertisements for ghostwriters (Musing #726)

If you’re advertising ghostwriting services, you need to write well.

Bad advice (Musing #729)

Don’t worry about the language of the contract, they won’t enforce it.

The term cyberattack (Musing #732)

Has it become too broad?

SAT mistakes (Musing #741)

The College Board should know better.

The Quantitative Reasoning course tag (Musing #749)

Can we revise the description?

Amazon music storage (Musing #752)

Never trust the cloud.

Notes on Web governance (Musing #753)

Five years is too long to wait.

Frustrated with fonts and formatting (Musing #758)

Things aren’t easy as they first seemed.

Grumpy (Musing #769)

A bad day (in spite of some good aspects).

A bug (or perhaps not) (Musing #772)

Learning to check my software version.

Dear Grinnell student (Musing #773)

Life’s too short.

Hurdle rates (Musing #776)

A bad measure.

Correct spelling matters (at least to me) (Musing #784)

Would you buy a writing tool with misspelled menus?

Fiddling with Linux applications on macOS (Musing #789)

Things are never as easy as they should be.

Check your comments (Musing #798)

Make them useful, or don’t make them at all.

Outlook 365 vs. (Musing #801)

I hate computers.

Cheapening the brand (Musing #809)

I hate crappy Web sites.

The MathLAN Web servers (Musing #823)

Why they’re important.

Scientifically illiterate swim parents (Musing #835)

Don’t be selfish!

I want my REPL! (Musing #839)

Working with MySQL databases.

Who gets the credit? (Musing #854)

Arranger or composer?

Landscape photos from my iPhone (Musing #863)

Everything is topsy turvy.

Microsoft nagging (Musing #869)

No, I don’t want to turn on automatic updates.

Opening Convocation 2019-20 (Musing #888)

Where was everyone?

Meal plan pricing (2019 edition) (Musing #891)

More expensive, but also more sensible, than it was three years ago.

Finding my chill pill (Musing #898)

Regaining my composure.

Distributed knowledge (Musing #899)

And other changes to governance.

New computing policies (Musing #902)

More challenges to shared governance.

The joy of upgrades (Musing #907)

Do they ever go smoothly?

Using comments from end-of-course evaluations (Musing #911)

The purview of the faculty member and the review chair.

Dorm departures (Musing #912)

I may be losing my touch.

Visiting the Naismith Basketball Hall of Fame (Musing #915)

Selling the legacy.

Deleted (Musing #918)


Syllabus guidelines (Musing #921)

Some good, some less good.

Where was everybody? (Musing #932)

Sometimes I really hate this place.

Swimming, diving, and parking (Musing #942)

Why are there so many conflicts?

Swimming and … that other thing (Musing #944)

Supporting divers(ity).

One drive, many steps (Musing #950)

What do your workflows look like?

Long-term concerns (Musing #955)

The SamR album keeps skipping back to the same old tune.

User studies in campus navigation (Musing #959)

We should run some.

Annoying link requests (Musing #974)

How should I respond?

mailto links (Musing #1010)

Why do designers get them wrong?

Workload, learning, and such (Musing #1074)

Am I winning or losing?

Computer troubles (Musing #1075)

Why are these things never easy?

Biting my tongue (Musing #1083)

Or should I be biting my fingers?

SM Word (Musing #1084)

Getting things backwards (or backwords).

Misbehaving email clients (Musing #1092)

A joy of moderation.

Technological minimalism (Musing #1096)

Different interpretations.

An open letter to my president (Musing #1103)

You got it wrong.

Endnotes for my open letter (Musing #1104)

It’s a compulsion.

Correlation is not causation (Musing #1124)

You knew that, didn’t you?

The joys of Cisco (Musing #1125)

Tech support is an awful experience. You knew that, didn’t you?

I (still) hate Ellucian Self-Service Academic Planning (Musing #1135)

A comparatively calm rant.

Minor irritants (Musing #1139)

Fun with the little things that get to me.

Still a curmudgeon (Musing #1149)

I try to change, but it’s hard.

What does HP stand for? (Musing #1165)

I hate computers (and printers).

(Being required to) Get Outlook for [Fill in device/OS] (Musing #1177)

Mediocre technology, at best.

Be more kind (Musing #1180)


Uploading student work to Gradescope and other bad decisions (Musing #1189)

For each and every action …

Textbooks and Syllabi (Musing #1206)

I was good. I didn’t write WTF. Well, I didn’t write it too many times.

Bad UI design (Musing #1212)


Fun with Dell service (Musing #1213)

Why do they make easy things so hard?

Misgivings about Microsoft Email Encryption (Musing #1223)

Two M’s, two E’s

CrashPlan and dotfiles (Musing #1229)

The first in a series

CrashPlan and relative soft links (Musing #1230)

The second in a series.

Planning to crash (Musing #1231)

The third in a series. Perhaps the last in the series.

Ah, the joy of Microsoft (Musing #1237)

More technology failures.

Another inappropriate B-word (Musing #1256)

Let’s consider each other’s feelings.

The (Dis-)Honor G (Musing #1260)

Harm is not marketing.

Creating Submit buttons in Qualtrics (Musing #1279)

UI basics.

Assorted talks and speeches

A speech to Duke TIP scholars (Essay #13)

For some reason, Grinnell invited me to give a speech to Duke TIP scholars on Tuesday, 3 May 2016. Here’s the intended text of my speech.

Speech to 2016 Graduating CS Seniors (Essay #29)

Text of a speech that I should have given.

Recruiting faculty who care about diversity (Essay #34)

Notes for a panel on best practices.

Another speech to Duke TIP award winners (Musing #310)

I did something right in 2016, since they asked me to come back in 2017. Or maybe it’s just that I’m the only one who says yes. Given Friday, 5 May 2017.

Baccalaureate (non-)address 2017 (Musing #328)

A speech I did not give.

A speech to graduating CS majors (and a few near-majors) in the class of 2018 (Musing #630)

A revised version of the 2016 speech.

Yet another speech to Duke TIP award recipients (Musing #640)

Third time’s a charm.

Comments from a panel at reunion 2018 (Musing #649)

Why did they ask me to participate?

Preparing slides for a presentation on the new digital-humanities CSC 151 (Musing #713)

Making a decent slide deck is hard.

An approximation of my talk for the Digital Bridges conference (Musing #714)

Writing the talk to go with the slide deck is also hard.

Some words for graduating CS majors (and their families) in the class of 2020 (Musing #1073)

Words I wanted to share, although not the place.

Some words for graduating CS majors (and their families) in the class of 2021 (Musing #1154)

Words to share.

Our Tapia 2022 Prep Session (Musing #1203)

It’s good to keep a record.

On life in academia

The latest Ellucian breach (Musing #870)

Sofware is hard.

Advertising the department (Musing #873)

The joy of writing blurbs.

Disappearing articles (Musing #875)

Betsy DeVos and the Dream Center.

Income distributions, college choices, and such (Musing #877)

Exploring data.

The state of higher education (Musing #878)

Hutchins, Bush, Dewey, and such.

Compassion and the anti-academic press (Musing #893)

Different definitions of wacky.

Faculty contracts (Musing #919)

Is the Handbook our contract?

Licensing athletes’ images (Musing #933)

A step forward for the NCAA, I think.

Double-blind grading (Musing #934)

What is it?

Honors in Computer Science (Musing #985)

What should we measure?

Undergraduate student unions [1] and Berkeley CS (Musing #988)

Thinking through complications.

Governance, tenure, and such (Musing #991)

Reflecting on more inclusive practices.

Preparing workshop proposals (Musing #1007)

Not as much work as I expected

Office hour sign-up sheets and other FERPA issues (Musing #1009)

The wonder of rules

Preparing for teaching online (Musing #1028)

Being proactive.

Levers and dashboards and other monstrous mechanistic metaphors (Musing #1029)

Bashing bean counters.

Preparing to fill out my annual Faculty Activity Report (Musing #1091)

I wonder what other institutions do.

Incredibly irresponsible (Musing #1109)

Pandemic planning that’s beyond irritating.

Advance planning (Musing #1137)

It’s part of the job.

Worse than Sedona? Initial encounters with Interfolio (Musing #1169)

Definitely worse.

A short simulation of normalcy (Musing #1184)

Missing the rest of my job.

The 2022 SIGCSE Technical Symposium (Musing #1185)

Two years later.

Fifty Years of Title IX (Musing #1195)

Sam explores a bit.

A Hidden Curriculum (Musing #1196)

One of many.

Graduate Student Strikes (Musing #1217)

The issues seem more complex than I’d originally thought.

Preliminary reflections on whether reviews of professional work should include comments on grammar and style (Musing #1219)

Wow, that’s a long title.

Faculty nightmares (Musing #1233)

Not the same as normal nightmares.

Do not Cease and Desist! (Musing #1236)

Such a great response!

Thank-You Notes

Thank You (Essay #50)

The first in a series of thank you notes. This one is to someone who works at the JRC welcome desk.

Feeling Fortunate (Essay #56)

Not so much a thank you note to an individual as a reflection on all of the parts of my profession for which I am thankful.

I am fortunate to have worked with my summer research team because … (Musing #395)

Okay, this one isn’t a thank-you note either. But it does reflect thanks toward my aweseome summer research students.

Thank You (Musing #418)

A note to my Dean and President.

Thankful for President Kington (Musing #441)

Another note to my (college) president.

The magic commons fairies (Musing #527)

I have no idea who you are, but I appreciate you.

Making connections (Musing #542)

Not quite a real thank you, but still an appreciation of the wonderful people I know.

Feeling fortunate (Musing #551)

A few of the many things for which I am thankful.

Proud and Thankful (Musing #1034)

So many wonderful people!

Good intentions gone awry (Musing #1070)

Another SamR screwup, of sorts

Appreciating the Registrar’s Office (Musing #1101)

So much work in so little time!

Appreciating the ITS staff (Musing #1102)

An appreciation you may not have expected.


Overcommitment, Finals Week, Spring 2016 (Essay #27)

The first in a series of short essays on the too many things I commit to.

Overcommittment, Summer 2016 (Essay #39)

The second in that series.

Misunderstanding metaphors (Essay #68)

The first in a short series of essays about my workload. In this one, I examine metaphors relating to work.

Sometimes tasks take too much time (Essay #70)

The second in that series.

Nibbled to death by ducks, episode 1 (Essay #85)

The first in a new series about my workload (originally intended as the third in the previous series).

Taskcading (or tasks cascading) (Musing #358)

A return to reflections on my workload.

Overcommitment, late summer 2017 (Musing #387)

What I have left to do this summer.

Nibbled to death by ducks, episode 2 (Essay #388)

In which I continue to reflect on my workload.

Nibbled to death by ducks, Episode 3: Revenge of the ducks (Musing #389)

And then I start to lose.

Saturday with SamR (Musing #396)

One day in my life.

Sunday with SamR (Musing #397)

And another.

It seemed like a good idea at the time (Musing #406)

One of the reasons I don’t always get things done.

Missing a musing (Musing #409)

One of the things I didn’t get done.

Dreading September 1 (Musing #427)

Too many projects, too little time.

Recovering from 1 September 2017 (Musing #434)

Which of those projects got done.

Making bad choices, small and large (Musing #436)

Helping students rather than writing stuff. Is that really such a bad choice?

Making bad choices, or perhaps good choices (Musing #437)

Getting sleep rather than doing work. Is that really such a bad choice?

Planning ahead (Musing #440)

Avoiding my current situation.

Where have you been? (Musing #446)


Recovering from Tapia 2017 (Musing #452)

Putting myself more behind.

Fall break (Musing #456)

Break is a time to overcommit, or to clean up from overcommitment, or both, or something like that.

Fall broken (Musing #467)

The results of break.

What are you doing during winter break? (Musing #498)

Too many plans.

Another taskcade (Musing #502)

One in a series.

Prioritizing what’s left of winter break (Musing #508)

An update on musing #498.

One hour (Musing #521)

Work I might do if I had an extra one.

Logging my time (Musing #531)

Where does the time go?

Friday nights (Musing #535)

They provide less time for work than I need.

On being a workaholic (Musing #536)

Work the AP reading or take a cruise? The answer should be obvious.

When work and family conflict (Musing #537)

What happens when work obligations and family obligations conflict? The answer should be obvious.

Logging my time (Week three of Spring Semester 2018) (Musing #539)

Learning too much about my (bad) work habits.

Logging my time (Week four of Spring Semester 2018) (Musing #546)

Getting better, I think.

Grading (Musing #557)

More on being a workaholic.

Logging my time (Week six of Spring Semester 2018) (Musing #559)

Getting sick.

Logging my time (Week seven of Spring Semester 2018) (Musing #566)

Getting better again.

Planning for spring break 2018 (Musing #569)

Sixteen days of spring break. Nearly thirty days of work. The numbers don’t work.

Logging my time (Week eight of Spring Semester 2018) (Musing #574)

A reasonable week, for the first time all semester!

Making more work for myself (Musing #580)

Or maybe not.

My advisory board (Musing #582)

Getting help with my tendency toward overcommitment.

Reflections on spring break 2018 (Musing #588)

What got done during the sixteen days of spring break and what I learned from paying attention.

Facebook reminders (Musing #590)

Remembering bad decisions.

Unproductive (Musing #615)

An apt description for this weekend.

Just another summer weekend (Musing #685)

Perhaps not quite as busy as my academic-year weekends.

Reflections on just another summer weekend (Musing #690)

How it really turned out.

A draft of my 2019-2020 sabbatical proposal (Musing #727)

Planning too many activities for the next year.

Meta-reviewing (Musing #760)

Yet another professional activity that doesn’t relate to my fellowship.

Looking ahead to summer 2019 (Musing #774)

After eight consecutive summers with students, it’s time for a different model.

Preregistration appointments (Musing #810)

Talking to students.

SIGCSE mailing-list workflows (Musing #812)

Some of my many activities.

Preparing camera-ready copy for SIGCSE 2019 (Musing #826)

About three days of work.

Plans for SIGCSE 2019 (Musing #832)

More precisely, too many plans.

This year’s sabbatical (Musing #886)

Projects big and small.

Too many opportunities (Musing #920)

I’m glad I don’t have to choose.

Conducting a salary review (Musing #954)

More work than I anticipated.

Preparing for the onslaught of the semester (Musing #986)

I’m on sabbatical; things are supposed to be easier than this.

Ways to say No (Musing #994)

The problem is all inside my head, I said to me.

Too much to do (Musing #997)

What else is new?

Summer MAP/MIP proposals (Musing #1011)

So much yet so little.

A draft sabbatical report (Musing #1100)

A bit late.

Surviving Fall Term Two (Musing #1113)

Among the many reasons I wasn’t musing.

Plans for Winter Break (Musing #1115)

A lot to do; hopefully not too much.

Some of SamR’s stuff to do (Musing #1156)

Not too much!

Back of the (virtual) envelope calculations (Musing #1170)

Running the numbers.

So many research papers to assess! (Musing #1258)

Doing the math

Experiments in portfolio mastery grading (Musing #1261)

A good idea that needs some work.

Distractable (Musing #1269)

One of the causes of overcommitment. Perhaps a symptom.

Overcommitted again, naturally (Musing #1272)

I’m hopeless.

Writing a lab (Musing #1274)

One of the many places my time goes.

Writing assignments (Musing #1277)

Another place my time goes.

On teaching

Notes on teaching. These were orginally just my notes on teaching online, but they will soon expand to more general issues about teaching.

Making talking-head videos (Essay #46)

Short reflections on having to make talking head videos.

Academic honesty (Musing #311)

Or lack thereof.

Measurable course learning outcomes (Musing #495)

A recommendation from the Dean’s office.

Academic (dis)honesty (Musing #496)

And those it affects.

Excused and unexcused class absences (Musing #504)

Dealing with students who miss class.

Coarse-grained grading (Musing #506)

Looking at the big picture, rather than individual details.

Setting up a rhythm for CSC 322 (Musing #509)

Helping students by making weeks (or two-week blocks) follow the same pattern.

The evolution of CSC 151 (Musing #510)

How the course came to its current state.

Forgetting what I’ve written (Musing #513)

Did I already muse about using graders? I forget. In any case, this musing ends up serving as another explanation of why I use graders and an excuse to whine about my workload.

Updating course schedules for a new semester (Musing #516)

Unexpected complexity.

Updating course schedules for a new semester, continued (Musing #517)

Expected complexity.

Updating course schedules for a new semester, complicated (Musing #519)

Increasing the complexity.

Working in pairs on assignments (Musing #549)

A note to my students.

Pausing for breath (Musing #550)

A strategy for designing syllabi.

An ethics assignment for CSC 322 (Musing #568)

Designing a different kind of writing assignment.

The CSC 151 photo quiz (Musing #572)

One of my favorite quizzes.

Back-to-back classes (Musing #583)

Even more challenging for faculty than they are for students.

A draft of a potential ACM case study on the accessibility of online course materials (Musing #607)

A teaching resource, in progress.

Developing an alternate end-of-course evaluation (Musing #632)

Asking directly about College-wide learning outcomes.

Graduation 2018 (Musing #638)

Reflections on watching students graduate.

Checking in (a quick teaching tip) (Musing #652)

Reacting to absences.

Algorithms, data structures, abstract data types, formal languages, and the rest (Musing #666)

Considering the distribution of topics between courses.

Rate you professors’ … Hotness? (Musing #674)

Inappropriate but useful.

Extra-credit policies and wellness (Musing #709)

Making the implicit explicit.

Course SMURFS (Musing #742)

An alternative to course goals and course outcomes.

SamR’s sarcasm (Musing #745).

It’s time for a change.

Making a video lecture (Musing #762)

Outside my comfort zone.

Adding a basic needs statement to the course syllabus (Musing #843)

Communicating concern.

A draft schedule for CSC 207 2019S (Musing #846)

What goes where?

Updating my course webs (Musing #848)

Fun with technology.

Captioning animated GIFs (Musing #858)

Working on accessible assignments.

Pronouns (Musing #901)

Attempting to be inclusive.

Equity (Musing #913)

Different approaches and different models.

Further reflections on syllabus guidelines (Musing #925)

Learning from my friends and colleagues.

Synchronous or asynchronous? (Musing #1037)

Some initial thoughts.

Web-based software for making appointments (Musing #1045)

Software transitions.

Mock advising (Musing #1053)

Not as good as the real thing.

Getting sucked into the Microsoft ecosystem (Musing #1077)

Unintuitive, but integrated.

Constructionism (Musing #1079)

Grounding my scholarship.

Semisemesters or Septisepta or whatever we’re calling them (Musing #1081)

Lots of work, but how much?

Software for synchronous online face-to-face teaching (Musing #1090)

Revising our priorities.

A letter to my Tutorial students (Musing #1095)

Getting acquainted

A chicken and egg problem and other situations in software selection (Musing #1098)

Increasing complications.

Selecting courses (Musing #1099)

Would I be a difficult advisee?

Mastery grading (Musing #1112)

Trying to master a new kind of grading.

Reflections on remote teaching in Term Two of Fall 2020 (Musing #1121)

Looking back, looking ahead.

Teaching with Technology: Managing Multiple Meetings on Microsoft Teams (Musing #1123)

Ah, the joys of technology.

Cutting curbs and other thoughts on universal design (Musing #1126)

Not all universal design is really universal

An Awkward class design (Musing #1138)

Maybe I shouldn’t use my HCI class as a usability test.

Learning objectives for CSC-207 (2023Fa) (Musing #1244)

The task continues.

Scholars’ Seminar, Abbreviated (Musing #1245)

Things all faculty should know

Metacognitive wrappers, revised (Musing #1257)

Inspiration from Scholar’s Seminar.

Experiments in portfolio mastery grading (Musing #1261)

A good idea that needs some work.

Writing a lab (Musing #1274)

One of the many places my time goes.

Writing assignments (Musing #1277)

Another place my time goes.

Setting up class (Musing #1278)

So much to do.

Code camps

Notes related to the code camps we offer.

A draft article on our data science code camp (Musing #386)

A short description of one of the summer code camps that our students design and run.

Surviving week one of code camp (Musing #667)

A report from the first week of code camp in summer 2018.

Designing a new code camp on language and code (Musing #680)

Thinking ahead to the third of three summer 2018 code camps.

A tangled web of Racket Web programs (Musing #688)

Writing libraries for the new code camp.

Transforming Web pages (Musing #693)

More procedures for the new code camp.

Configuring code-camper accounts (Musing #697)

That much configuration benefits from a shell script.

Programs for simple language generation (Musing #698)

Mediocre but fun.

Planning for SIGCSE 2019 (Musing #730)

Papers on the code camps and other projects.

Draft abstracts for SIGCSE 2019 (Musing #731)

Shouldn’t I write these last?

On writing letters of recommendation

Writing letters of recommendation (Essay #35)

What it feels like when I have to write a letter of recommendation. Initially intended as a stand-alone essay. Now serving as a bit of an introduction to a series of essays.

Are my recommendation letters gendered? (Essay #36)

Implicit bias creeps into recommendation letters, both in how we read them and how we write them. Does it appear in mine?

Another evening of writing recommendation letters (Essay #214)

Technology (traditionally troublesome)

Warning! This index was not added until musing 1194 or so. It is therefore necessarily incomplete. I will do my best to update links to/from past musings.

DNS woes (Musing #1194)

I hate computers. Or maybe they hate me.

I (still) hate computers (Musing #1197)

What goes around, comes around

Partitioning arrays (Musing #1283)

Questioning approaches.

Don’t embarass me; don’t embarass yourself: Some notes on thinking in C and Unix


Introduction, part 1: On the genesis of this work (Essay #175)

The genesis of this set of writing.

Introduction, part 2: Thinking in C (Essay #176)

What I mean by thinking in C.

Introduction, part 3: Thinking in Unix (Essay #178)

What I mean by thinking in Unix

Introduction, part 4: Thinking like SamR (or Some of SamR’s perspectives on software development) (Essay #216)

Additional perspectives that underlie the rest of the course/book/essays.

Bash Basics

Bash basics: files and directories (Essay #196)

A short introduction to what you should know about the shell, including a bit of information on files and directories. I hope that this is mostly review.

File permissions (Essay #246)

Who can read what you write, or write what you read?

Miscellaneous Unix Topics

grep and regular expressions (Essay #199)

Ways of representing patterns in text and a tool for using it.

Combining programs

Unix systems provide power by allowing you to combine programs in interesting ways. Here are some of them.

Searching files with grep

One way to find things

Searching files with find

Another way to find things.

Command-line history (Essay #232)

Remembering what you did (or letting the computer remember for you).

Adventures in binary search, part the first (Essay #219)

In which we set the stage.

Adventures in binary search, part the second: Designing tests (Essay #220)

In which we explore how to test our procedure.

Adventures in binary search, part the third: Implementing binary search (Essay #221)

In which we consider strategies.

Miscellaneous C Topics

Preconditions for strcpy (Musing #1130)

Attempts to understand memory usage.

Stages of C compilation (Essay #179)

What some of those stages are, and why you should know.

The C Preprocessor (Musing #268)

More information on an early stage.

An introduction to C macros (Musing #280)

More preprocessing!

Simple macros for testing C programs (Musing #283)

An application of macros, along with some further exploration of some macro design issues.

Using macros for generic structures in C (Musing #287)

Another application of macros: Writing generic structures that can hold a variety of values.

Additional compiler flags

C compiler flags you should know.

Using assert in C (Essay #180)

An awesomely useful macro.

Why function signatures matter (Essay #190)

If you don’t tell the compiler what you’re doing, it may give you different results than you expect.

Formatting C Code (Essay #197)

Why style counts and how to achieve it.

Output buffers (Essay #210)

Why printf doesn’t always do what you expect.


static, extern, and many more things you never knew you could (or should) use.

Parsing integers (Essay #185)

How to parse integers sensibly, as well as a variety of other reflections on program design.

Building C libraries (Essay #194)

Programmers know how to build their own libraries.

Designing a C library: Arbitrarily large integers (Essay #249)

An example

Using C Libraries

Good programmers also know how to use libraries (and what libraries might be useful).


A simple C project (Essay #181)

Thinking broadly.

An introduction to Make (Essay #183)

Basics of a build automation tool that we’ll use throughout the course.

Variables in Make (Essay #187)

Why and how to use variables in Make.

Implicit rules in Make (Essay #188)

Making your Makefiles more general and more concise.

Standard Make targets (Essay #245)

Things you should expect to see in a typical Makefile (and to put in your own Makefiles).

The joy of code

Occasional essays on programs I’ve had fun writing or reading.

Generating a Table of Contents (Essay #43)

On writing code to make better course Web sites (or at least better Canvas sites).

When things go wrong (Essay #47)

Computers were not my friends tonight. Here’s the story.

Small scripts for indexing musings (Essay #53)

The joy of writing really small programs in Linux.

Playing with Processing, Example 1 (Essay #89)

A simple, yet interesting, animation.

The joy of code: Linking endnotes (Essay #144)

How I got the endnote links in these essays.

The joy of code: Command-line email (Musing #279)

Why I need nix mail, or at least nix outgoing mail.

The joy of code: Counting repeated words (Musing #282)

Synthesizing a simple shell script

The joy of code: Making acronyms (Musing #296)

Fun with Scheme.

Why Scheme? (Musing #431).

Explaining why Scheme should be joyful.

Class wrappers (Musing #560)

One of my favorite categories of design patterns.

Software for grading (Musing #593)

Writing my own (badly designed) software.

Pair programming with my class mentor (Musing #609)

A fun way to work.

Groking Ruby (Musing #622)

Not so much a joy of code as a joy of not-very-good but enjoyably strange code.

The joy of code: (Re)building my letterhead (Musing #642)

Way too much time on a not-very-necessary task.

The joy of code: A one-of macro (Musing #675)

Delayed evaluaton.

The joy of code: An Igpay Atinlay transformer, revisited (Musing #696)

Utatingmay Agespay.

Exploring code (Musing #701)

The joy of debugging code.

Upgrading unfamiliar software (Musing #707)

The joy of legacy code, particularly when deprecated becomes unavailable.

Scraping course schedule data (Musing #782)

Starting to think about the joy of data.

Quad search (Musing #828)

A strange alternative to binary search.

Computing the missing value (Musing #844)

YA stupid interview question.

Java code style (Musing #850)


Adventures in markup (Musing #852)

Code to translate code.

Proto musings: Coding experiences (Musing #880)

A happy memory of debugging plugins.

Learning new (programming) languages (Musing #896)

And some techniques I employ for doing so.

Closures (Musing #897)

A cool component of functional programming.

The joy of code: Experiments in cellular language generation (Musing #1120)

Maybe I should read the research literature.


CSC-151 is Grinnell’s introductory course in computer science. I’ve taught it for most of my career at Grinnell.

This collection initially started with a musing about the switch away from the Media Computation version of CSC-151 to a data-science lite version. It has since evolved into a collection of all sorts of information about 151. Along the way, I’ve developed two more versions of 151 (one on text-based digital humanities and one on image-making). I’ve also switched to a mastery-grading approach.

A new CSC 151 (Musing #348)

Thinking about the new version of the course.

A new CSC 151, revisited (Musing #405)

More thoughts.

Writing about documentation (Musing #439)

One of the sections I rewrote this semester.

A computer scientist’s perspective on introductory data science (Musing #448)

What should have been the introduction to the course.

Reflections on the new data-science-themed CSC 151 (Musing #724)

Notes as we prepare for a new section and a new version.

An introduction for the new digital humanities CSC 151, take zero (Musing #740)

Getting started on the new version.

A draft schedule for the new digital humanities CSC 151 (Musing #748)

Ordering the topics.

Designing a project for my digital humanities class (draft 0) (Musing #791)

A core part of the course.

An alternate project design for my digital humanities class (Musing #792)

Focusing on a single corpus.

A note to my Obermann colleagues in preparation for our upcoming seminar (Musing #794)

Some context for discussing the two project designs.

A grading rubric for one version of the FunDHum project (Musing #802)


Reflecting on the CSC 151 project at my fourth Obermann seminar (Musing #804)

The joy of feedback.

To compose or to pipe (Musing #808)

Rethinking a core topic.

Should I replace section with partial? (Musing #816)

Retinking another core topic.

How do I get into CSC 151? (Musing #883)

A common student question.

Documenting code with the Six P’s (Musing #892)

Teaching students to write.

Cite the damn source! (Musing #1176)

What am I doing wrong?

Yet another rebuild of the CSC-151 repository (Musing #1179)

Why do I do these things?

Yet another draft set of learning outcomes for CSC-151 (Musing #1182)

Rephrasing the wheel.

A grader’s guide to CSC-151 (Musing #1183)

General guidance for my generous graders.

Learning objectives for CSC-151 (2023Fa) (Musing #1243)

How many? Which ones?

Preliminary notes on revised image models for CSC-151 (Musing #1253)

Just starting to think through the issues.

Starting a guide for new CSC-151 instructors (Musing #1263)

A guide for my colleague(s).

Building the CSC-151 Web site with Jekyll (Musing #1264)

Didn’t we document this already?

CSC-151’s many GitHub repos (Musing #1265)

Somewhat shared resources for the course.

Preparing for CSC-151 (Musing #1266)

Some approximate guidance.

Reflecting on end-of-course evaluations for CSC-151 2023Fa (Musing #1267)

So much to learn!

Redesigning the CSC-151 image model (Musing #1268)

I may have done this before.

Writing a lab (Musing #1274)

One of the many places my time goes.

Writing assignments (Musing #1277)

Another place my time goes.

Grinnellians you should know (or know about)

A month of Grinnellians (Musing #106)

An introduction to a series of essays on these folks.

A group of Grinnell students (Musing #110)

Some students I accompanied to a science symposium.

CS Alums (Musing #126)

Alumni back for the 2016 CS Affinity Reunion

Planning the next CS reunion (Musing #128)

Okay, this doesn’t really belong. But it’s indirectly about Grinnellians, so I’m including it here.

Writing about current students (Musing #130)

Or, more precisely, why I’m not writing about individual students.

Nominations for the Grinnell Lecture (Musing #908)

Too many awesome candidates.

Joe and baseball (Musing #946)

Preserving an anecdote about Joe Rosenfield ’25.

Brandy Agerbeck ’96 (Musing #127)

Graphic facilitator.

Sarah Anderson ’98 and Donna Dralus ’89 (Musing #61)

Campus Web gurus.

Ian Atha ’09 (Musing #58)

CS major, linguistics concentrator, entrepreneur.

Corlis Benefideo (Musing #786)

Mapmaker. Subject of a Barry Lopez story.

Terry Bisson ’64 (Musing #117)

Author, publisher, not-quite graduate.

Narren Brown (Musing #108)

Statistician, diversity consultant, generally great guy.

Doug Caulkins (Musing #122)

Professor Emeritus, Anthropologist, campus innovator.

Andrea Conner (Musing #637)

VP for Student Affairs. Changemaker.

W. Blake Creasey ’16 (Musing #134)

Thoughtful student (and now alum).

Monessa Cummins (Musing #109)

Outstanding teacher and colleague.

Doug Cutchins ’93 (Musing #121)

Mentor, advisor, caring Grinnellian.

Janet Davis (Musing #135)

Highly valued former colleague.

Hallie Flanagan ’11 (Musing #131)

Namesake of the Flanagan Theatre; transformative member of the American Theatre.

Grant Gale (Musing #123)

Physics professor, Noyce mentor, and more.

Megan Goering ’08 (Musing #107)

Former SGA president, innovative thinker, risk taker.

Harry Hopkins ’12 (Musing #119)

Brash reformer.

Jen Jacobsen ’95 (Musing #909)

Wellness czar. Change maker. Student advocate. And more.

Terian Koscik ’12 (Musing #129)

Artist, programmer, cartoonist, supporter of the next generation of computer scientists.

Lea Marolt-Sonnenschein ’15 (Musing #136)

Daughter (well, host daughter). Overachiever.

Elaine Marzluff (Musing #600)

Innovative science teacher, promoter of diversity, faculty leader, and friend.

J. Harley McIlrath (Musing #118)

Bookseller, author, generally great guy.

Jennelle Nystrom ’14 (Musing #76)

Art History and CS major, research assistant, SAC director, first-gen student, PM, and more.

Clair Patterson ’43 (Musing #783)

Chemist and change agent.

Sarah Purcell ’92 (Musing #116)

L. F. Parker Professor of History, Director of the Rosenfield Program, real Grinnellian, and more.

Samuel A. Rebelsky (Musing #137)


William Lloyd Rebelsky ’17 (Musing #398)


Dave Robinson (Musing #114)

CITO, woodworker, Ph.D. in Neuroscience (or something similar).

Joe Rosenfield ’25 (Musing #120)

Benefactor, Scout, and more.

Karen Shuman (Musing #125)

Division chair. Ally in the fight to improve Grinnell. Valued colleague.

Erik Simpson (Musing #111)

Professor of English. Digital humanist. Active faculty member. And more.

Adrienne Hardin (Musing #113)

Social media specialist and all-around great person.

John David Stone (Musing #133)


Henry MacKay Walker (Musing #124)

Mentor, architect of CS at Grinnell, educator, and beyond

Canoes and Cinderblocks and Cases, oh my! (Musing #1214)

People I’m fortunate to know.

Losing Great Grinnellians (Musing #1215)

Too many!

About Grinnell

These are essays about Grinnell that did not naturally fit into other categories.

How has Grinnell changed in the past twenty years? (Essay #79)

My answers to a question I’ve been asked a few times.

10/10 (Essay #78)

Okay, 10/10 isn’t really all that important an issue. But I couldn’t think of another place to list this essay.

Grinnell Football (Essay #90)

Thinking about the team, the sport, and some history.

Mastering Grinnell (Essay #91)

How does one learn and keep track of all that is happening at the College?

Faculty Lines and Zero-Sum Games (Essay #150)

The joy of limiting tenure-line faculty.

Should Grinnell be tuition free? (Essay #158)

Reflections on a question from about a decade ago.

The divide between varsity/club athletes and other students (Essay #160)

An issue we probably need to address.

Helping our students speak persuasively (Essay #167)

One of our primary goals as an institution.

The size of the College (Essay #169)

Something it appears we are being asked to reconsider.

The recent history of Grinnell’s mission statement (Essay #170)

How we got to the mission statement we have.

Grinnell’s Board of Trustees (Essay #171)

Thoughts about the folks who govern the College

Grinnell traditions I miss: National pipe cleaner day (Essay #204)

A day of joy and creativity

Grinnell traditions I miss (but shouldn’t): Bakery run (Essay #205)

What could be better than fresh baked goods?

Grinnell traditions I never witnessed, but miss anyway: The Cross-country team’s naked run (Essay #207)

It brings new meaning to fun run.

Grinnell traditions I miss (and mostly missed): Graduation pranks (Essay #217)

Ferguson, fish, and failure.

New Grinnell traditions I appreciate: The Grinnell lecture (Essay #234)

Celebrating scholarship.

Grinnell traditions I despise: The Noyce/Cooper cookout (Musing #276)


Branding the College (Essay #218)

Can we find another term?

The department’s restricted fund (Essay #228)

Or unrestricted fund, as I like to think of it.

Designing a handbook for our Student Educational Policy Committee (Essay #230)

Helping our SEPC help themselves.

A draft handbook for the Computer Science SEPC (Essay #255)

Further help.

Grinnell’s 2017 Kinetic Sculpture Competition (Musing #291)

Yet another thing I enjoy about Grinnell.

Student wages (Musing #299)

An extended reflection with no real point.

The Staff Handbook (Musing #304)

They asked for suggestions.

Campus rumors (Musing #324)

Students come up with the strangest rumors. But some might be true.

Advising at Grinnell (Musing #457)

My response to a request from the Dean to reflect on advising at Grinnell.

Endowed chairs (Musing #461)

Wow, they’re expensive.

The role of the humanities in a Grinnell education (Musing #485)

Oh, that’s right. I need to explain this to some of my students. Core is probably a good summary.

Double majors (Musing #492)

Why students might choose more than one.

A prologue to some notes for external reviewers about Grinnell (Musing #543)

I think the title says it all.

About Grinnell (some draft notes for external reviewers) (Musing #544)

Why do I end up drafting institutional documents?

Expanding the faculty (Musing #603)

How I’d allocate new positions, if we had them.

Conflicting values (Musing #604)

What do you do when two core values come into conflict?

Just another Saturday at Grinnel (Musing #608)

Too much to do!

Unpacking quantitative reasoning (Musing #623)

Reflections on a core element of a Grinnell liberal-arts education.

Marketing Grinnell (Musing #625)

How do you convince folks to consider this gem of an institution?

Grinnell’s location (Musing #628)

Drawbacks and benefits.

Changing Grinnell, take one: Alumni mentors (Musing #629)

A suggestion on how to distinguish the College.

Our better Grinnellian story (Musing #631)

Positive comments on (and a few small criticisms of) our new admissions site.

Our new banners (Musing #639)

Trying to find some meaning in a confusing campaign.

Noyce third (Musing #659)

My favorite place on campus.

The cost of attending Grinnell (aka exponential growth) (Musing #746)

Outpacing inflation.

Grinnell’s 2019 U.S. News ranking (Musing #747)

Why the jump?

Go Forth Grinnellian (Musing #788)

Our new tagline.

Grinnell ephemera (Musing #790)

Discovering new things about the College.

Increasing class sizes (Musing #831)

Why it’s hard.

Meaningful, flexibile, and educational work (Musing #834)

An excellent goal.

Centering the humanities (Musing #849)

It’s complex.

Our new dean (Musing #884)

We’re lucky to have found her.

Writers at Grinnell (and other events at Grinnell) (Musing #890)

A highlight of the Grinnell calendar.

A last-minute innovation-fund proposal (Musing #903)

Beyond bean counting: A more humanistic approach to assessing Grinnell students’ individual curricula.

Another last-minute innovation-fund proposal (Musing #904)

Recentering Scholars’ Convocation.

Last week’s Scholars’ Convocation (Musing #906)

A good reason to recenter Scholars’ Convocation.

Volleyball (Musing #922)

Another successful season.

R.I.P. GrinCam (Musing #924)

Something I”ll miss.

Choosing courses (Musing #929)

Too many great options!

Grinnell’s persistence rate (Musing #931)

We need to improve it.

Persistence rates, continued (Musing #935)

More thoughts on the issues.

Cuts, closes, and balances in CS for Spring 2020, revisited(Musing #936)

Unexpected challenges.

What would Joe say? (Musing #940)

Seeking the opinion of a respected leader.

Grinnell’s student workload (Musing #941)

How do we make it more reasonable?

Grinnell’s next president (Musing #943)

Some charactistics that I’d like to see.

Grinnell gossip: The (potential) new residence hall (Musing #951)

Is this news?

SEPC funding (Musing #956)

Am I permitted opinions?

The honor of giving to Grinnell (Musing #975)

Fun with donations.

Dear Concerned Alumni (Musing #976)

Please donate.

Honoraria and Memorials in the Honor Roll (Musing #977)

Fun things to read

A draft memo regarding the celebration of fifty years of Grinnell’s Tutorial and the Open Curriculum (Musing #982)

There’s only one fiftieth anniversary; let’s not waste it.

MLK Day 2020 (Musing #989)

How should we celebrate?

Credit where credit is due (Musing #990)

I am humbled and inspired by your work.

Elections for the chair of the faculty (Musing #996)

So many potential candidates!

The joy of cool friends (Musing #1003)

Can I count alums as friends?

Trustees and the Grinnell student union (or vice versa) (Musing #1012)

A good rationale and some hope for positive directions.

A response to an angry alum (Musing #1013)

I am not a College spokesmodel.

Trend lines (Musing #1014)

Two billion is less than you think.

Growth in the number of staff (Musing #1020)

It’s not a simple matter.

Updates on the chair of the faculty (Musing #1021)

Yet another pointless musing.

Advising (Musing #1023)

What is my approach?

Revising the Faculty Handbook (Musing #1026)

Contemplating changes.

Classes of students (Musing #1027)

Or something like that.

A short tribute to the Grinnell College class of 2020 (Musing #1031)

Not a good alternative.

Summer 2020 MAPs (Musing #1038)

Let’s go virtual!

A list of Grinnell’s Summer 2020 classes (Musing #1061)


Questioning the fall (Musing #1064)

Advice, of sorts.

Questioning credit hours (Musing #1068)

Feeling like a broken record.

Summer courses, post-preliminary-registration (Musing #1069)

What next?

Notes for a letter that I will not send to the BoT (Musing #1071)

Can’t we just call of the search?

ShutDownGCCS (Musing #1082)

How I spent my day.

Fall planning (Musing #1088)


Scheduling fall terms (Musing #1089)

Starting chair duties early.

Circles: Restorative justice, community building, and more (Musing #1114)

Give ’em a try!

What’s the largest major at Grinnell? (Musing #1133)

Approximate data, at best.

Summer workshops (Musing #1145)

Trying to cut back.

Breathe in, let go (setting aside institutional issues, take one) (Musing #1155)

Good advice.

First-Year Registration, Fall 2021 (Musing #1163)

Not a derecho, but perhaps some other kind of storm.

New faculty lines (Musing #1166)

Why do I always see the negative?

Dinner with trustees (Musing #1186)

Feeling conflicted.

Young alumni weekend (Musing #1192)

YAW! Who?

Title IX, Men’s Soccer, Women Coaches, Grinnell, and Such (Musing #1207)

The newspaper of record needs to get its records right.

On group advising (Musing #1220)

I don’t get it.

Another dinner with Grinnell’s Board of Trustees (Musing #1227)

Always fun (these days)

Salaries (Musing #1228)

Why do I care?

Student wages (Musing #1235)

Some back-of-the-envelope calculations.

Mixed messages (Musing #1238)

Are different sections of the same course equivalent?

A curmudgeon attends Grinnell’s 2023 graduation (Musing #1239)

Why can’t I just be happy?

Scholars’ Seminar, Abbreviated (Musing #1245)

Things all faculty should know

A bit of joy (Musing #1246)

Such wonderful colleagues.

Updating Grinnell’s Academic Honesty Handbook (Musing #1247)

A bit of bragging.

Major counts, more or less (Musing #1249)

Terrifying data.

Sam attends student supervisor training (Musing #1250)

More enjoyable than I’d expected.

Placement in CS (Musing #1255)

It’s complicated.

The (Dis-)Honor G (Musing #1260)

Harm is not marketing.

My latest advising statement (Musing #1273)

It’s complicated.

Declaring a CS major (Spring 2024) (Musing #1276)

A sensible process.

Registration priorities (Musing #1280)

Amazingly, not a rant.

In these musings (and the occasional rant), I reflect on issues surrounding the registration process at Grinnell.

Preregistration (Essay #147)

Thoughts on preregistration at Grinnell, written soon after preregistration period for spring 2017.

Preregistration (for Fall 2017) (Musing #302)

What courses over-enroll?

Cuts, closes, and balances for Fall 2017 (Musing #312)

The aftermath of preregistration.

Open slots in Fall 2017 introductory courses (Musing #315)

More on the aftermath of preregistration.

Midway through preregistration for spring 2018 (Musing #484)

Where do I stand?

Preregistration for Fall 2018 (Musing #613)

Sam reflects on the preregistration numbers.

Updates on preregistration for fall 2018 (Musing #620)

Sam reflects on the updated preregistration numbers.

Registration for first-year students (Musing #736)

Our fascinating process.

The JRSR and SNRS course designations (Musing #806)

Why don’t we offer more sections of Intro Linguistics?

Reflections on preregistration data for spring 2019 (Musing #811)

What classes did students select?

Cut, close, balance (Musing #813)

What happens after preregistration.

Preregistration for Spring 2020 (Musing #927)

Over-enrolled classes, popular times, and other reflections.

Cuts, Closes, and Balances in CS for Spring 2020 (Musing #928)

Some notes on how I think about the challenges of CCB.

Post-preregistration for spring 2020 (Musing #978)

There must be some point to doing all this analysis.

Post-preregistration for fall 2020 (Musing #1054)

Reflections on some over-enrolled courses.

After the cuts, the closes, the balancing acts (for Fall 2020) (Musing #1066)

Pointless or not?

Preregistration for Spring 2021 (Musing #1110)

A musing both expected and unexpected.

Preregistration for Fall 2021 (Musing #1136)

A return to normalcy?

Post-Preregistration for Fall 2021: The Effects of CCB (Musing #1141)

The pain! The pain!

Cuts, Closes, and Balances, Continued (Musing #1144)

Some direct effects.

Preregistration for Spring 2022 (Musing #1171)

Preparing for the end

A Selection of Open Spring 2022 Courses (Musing #1174)

What can I take?

Reflections on registration (Musing #1188)

Institutional values in conflict.

Grinnell’s new registration process (Musing #1208)

An exercise in game theory.

A report on round one of registration for Spring 2023 (Musing #1209)

What happened? What did we learn?

Round 2a of Grinnell’s new registration process (Musing #1210)

What will happen?

The end of Round 2 of Registration for Spring 2023 (Musing #1211)

More complaints, different data.

Round one of registration for Fall 2023 (Musing #1221)

The experiment continues!

Reflections on round two of registration for Fall 2023 (Musing #1222)

Data, of some sort or other

Recent random reflections on revised registration rules and regulations (Musing #1225)


Reflections on round three of registration for Fall 2023 (Musing #1226)

So interesting!

Reflections on yet another registration process (Musing #1262)

It’s complicated.

A letter to the incoming chair

A draft introduction to a letter to the incoming chair (Musing #326)

Getting started.

Common chair responsibilities (part of a draft letter to the incoming chair) (Musing #330)

Although all chairs have these responsibilities, different chairs do them with different frequencies and levels of depth.

CS-specific chair responsibilities (part of a letter to the incoming chair) (Musing #332)

We also have some tasks that are specific to the CS department.

Current CS initiatives (part of a draft letter to the incoming chair) (Musing #333)

As well as soem larger initiatives.

Useful data (part of a draft letter to the incoming chair) (Musing #335)

Data that help us predict, reflect, and argue.

Allies (part of a draft letter to the incoming chair) (Musing #337)

People who help with the work.

Department roles and responsibilities (part of a draft letter to the incoming chair) (Musing #338)

It’s not just me that has boundary issues.

A manifest of the department folder (part of a draft letter to the incoming chair) (Musing #340)

Files to peruse

Dates and deadlines (part of a draft letter to the incoming chair) (Musing #341)

More things to do!

Executive summary (part of a draft letter to the incoming chair) (Musing #343)

Almost done!

Additional issues (part of a letter to the incoming chair) (Musing #345)

Some things I forgot while writing the previous sections.

A letter to the incoming chair (Musing #347)


Reviews and notes about things I enjoy

Eventually, I’ll find that I’m out of serious topics and will instead start writing about some of the things that are meaningful to me, or at least provide joy. (Other than my family.) I’m starting a list. I’m also including some reviews here, since I generally only review things I enjoy.

Cyro Baptista and Banquet of Spirits (Essay #51)

Reflections on an awesome concert.

The Straight Dope (Musing #669)

Farewell to a favorite.

The Last Days of Jack Sparks (Musing #682)

Why did I decide to read a horror novel?

The Shakespeare Requirement (Musing #757)

Not as good as its predecessor.

The Association in concert (Musing #765)

Everyone’s favorite Big Chill cover band.

Michael Perry (Musing #777)

Humorist. Philosopher. Occasional downer.

Reading The Starless Sea (Musing #1048)

The Rebelsky Book Club continues.

Unexpected cover bands (Musing #1199)


Visiting the National Building Museum (Musing #1205)


A joyful afternoon with Dan and Claudia Zanes (Musing #1218)

So much fun!


Musings on mix tapes (Musing #377)

An explanation of the series.

A mix tape - Music for Michelle, vol. 1 (Musing #378)

The first mix tape, a series of songs for my wonderful wife.

Preparing to make the mix tapes (Musing #380)

What I did to get ready to make that tape.

Van Morrison, Live in Boston 1968 (Musing #814)

Thinking ahead to a future mixtape.

Choosing cover tunes (Musing #1275)

So many options!

Board, card, and other games

Encounters with computer scientists and tabletop games, or something like that (Musing #963)

Fun at SIGCSE.

The Great Dalmuti (Musing #964)

An appendix to the prior musing, more or less.

Those wacky Rebelskys

Stories about my family. Since I created this index long after I wrote some of these stories, you’ll see that phrase in the descriptions and titles of some musings.

Family book club: Mindset (Musing #664)

Reading as a family.

Those wacky Rebelskys (Musing #900)

Language quizzes and more.

Route optimization (Musing #945)

Those wacky Rebelskys.

Choosing a reading for the Rebelsky Family Book Club (Musing #968)

Decisions, decisions.

Fixing things (Musing #971)

Proud of my sons.

Autobiographical essays, more or less

On being a curmudgeon (Essay #64)

What I’m like as a person, or at least a person on campus.

My laptop (Essay #65)

What my laptop aays about me.

Foods of my families (Essay #66)

Some food memories.

Embarrassing teaching moments (Essay #81)

A break in that series.

Sleep (Essay #16)

On getting enough.

Making good choices (Essay #73)

Something that might be termed a bait and switch or perhaps even a ripoff. (Read the essay for why.)

If you ask a prof a question (Essay #62)

Reflections on my not-so-legendary primer.

Vast swaths of American Popular Culture have passed me by. (Essay #12)

One of my favorite mom quotes; one that I now feel that I have to say way too much of the time.

Addressing people (Essay #38)

On my difficulties figuring out what to call people.

Dad jokes (Essay #83)

What my students say about my jokes.

Is anal retentive hyphenated? (Essay #94)

It was late, and I had to write something. Blame my muse.

Fall break, 2016 (Essay #96)

Reflections on how I spent my break.

The Tigger suit (Essay #105)

A family heirloom.

A response to the request Please write an essay about this year’s election.

Thanksgiving 2016 (Essay #132)

Reflections on one of my favorite holidays.

Pebble Watches (Essay #148)

Some of my favorite timepieces.

Sleep Cycles (Essay #152)

My sleep cycles, throughout my life.

End-of-semester reflections (Fall 2016) (Essay #153)

My every-semester exercise with Karla Erickson.

The 2016 Grinnell Holiday Party (Essay #154)

A wonderful followup event to that exercise.

On being a pack rat (Essay #155)

Why I have so much stuff.

A day in the life of SamR (20 December 2016) (Essay #159)

A not-so-typical day.

Christmas eve, 2016 (Essay #165)

Reflections on Christmas eves, past and present.

Mid-semester planning (Musing #260)

A planning session with Karla Erickson.

End-of-semester/start-of-summer reflections (Spring 2017) (Musing #323)

Another planning session.

Implications (Musing #354)

Things people say that make me worry.

What do you listen to? part one (Musing #360)

My students asked. I promised to try to answer.

I’m free! (Musing #362)

Reflections on finishing a three-year term as chair.

What do you listen to? part two (Musing #369)

Continuing my answer to my students.

Introversion (Musing #370)

Embracing a core characteristic.

Meanderings (Musing #384)

Whatever happened to M Mark and related musical questions

Among the reasons SamR is not a SysAdmin (Musing #391),

Screwing things up, once again.

Shadow (Musing #415)

My mother-in-law’s dog.

Ridding myself of random stuff (Musing #420)

A step towards a less disorganized SamR.

Getting rid of stuff (Musing #423)

A follow up to the prior musing.

Being nicer (Musing #424)

On changing my initial inclinations.

Begin nice (Musing #425)

A follow up on the prior musing, more or less.

A biography, of sorts (Musing #429)

A few paragraphs for a poster.

Thirty years (Musing #430)

Happy thirtieth anniversary, Michelle!

How are you, Sam? (Musing #442)

A new/old answer.

Feeling fortunate (Musing #459)

A better answer.

Understanding a bit more about my father (Musing #475)

A complex and moral man.

A coat and tie (Musing #525)

What I seem to be wearing this semester.

My coding habits (Musing #541)

Ways I think about updating code. (At least that’s what I planned to write about.)

Dumb cooking mistakes (Musing #547)

An adventure from my college days.

Maybe I’m not a curmudgeon (Musing #553)

Questioning my identity.

Paul Nossiter (Musing #558)

Mom’s first and last boyfriend.

My favorite mug (Musing #561)

A quick musing for a late night.

Red-green color blindness (Musing #564)

I see red. I see green. But I’m still red-green color blind.

Forgetting the Joe stories (Musing #571)

Is it more important to remember the context or the content?

Giving up processed sugar (Musing #581)

Can I really do it?

Annotating the Web (Musing #586)

Early research projects.

Excavating the office (Musing #589)

Things that gather in boxes.

Rural high-school sports (Musing #610)

An advantage and disadvantage of living in Grinnell.

Sleep(less) cycles (Musing #614)

Some effects of insufficient sleep.

A short biography (Musing #619)

Or at least shorter than the last one.

A semester of a coat and a tie (Musing #627)

What I wore to work this semester.

My hair (Musing #641)

As tangled as this musing.

Traveling light (Musing #654)

One backpack to hold my laptop, CPAP, and three days’ worth of clothes.

Why me? (Musing #658)

Getting interviewed for a promotional video.

Nuts to allergies (Musing #660)

I hate mine.

The other Rebelskys (Musing #681)

There are other Rebelskys!

Bad beard decisions (Musing #686)

I shouldn’t have shaved.

Planning some fun summer activities (Musing #692)

Sometimes organizing can be fun.

Sometimes it’s best to rely on professionals (Musing #710)

Dealing with a broken ceiling fan.

Doing it yourself (Musing #711)

Dealing with a broken side-view mirror.

Fair rides (Musing #723)

Different choices Michelle and I make.

The first day of my Obermann fellowship (Musing #728)

Starting a different aspect of my career.

I thought you might like this (Musing #733)

Becoming my mother.

Thirty-one years (Musing #735)

Looking forward to at least thirty-one more.

Staycation 2018 (Musing #739)

My second vacation of the summer!

My first Obermann seminar (Musing #743)

Encountering great minds.

Calming down (Musing #755)

It happens, once in a while.

An evening at a conference (Musing #756)

In my hotel room.

Traveling to the Obermann Center (Musing #761)

Reminding myself about how fortunate I am to live near work.

Promoting Grinnell (Musing #767)

Why me?

My second Obermann seminar (Musing #768)

Receiving feedback.

How (not) to adapt to the end of daylight saving time (Musing #799)

Things we do for our children.

Driving (Musing #805)

Recalling long trips.

Thanksgiving 2018 (Musing #817)

Being thankful.

The fantasy and the reality of my Obermann Fellowship (Musing #838)

When expectations are too high.

Starting fresh (Musing #847)

Starting a new year, more or less.

AFK (Musing #855)

A good day.

I’m an idiot (Musing #856)

At least some of the time.

Forty years (Musing #860)

I miss you dad.

A sign of the apocalypse (Musing #862)

Cleaning my office.

Naming my space (Musing #867)

No, not CS Faculty in Exile.

One decade (Musing #871)

I miss you mom.

Red, green, black (Musing #872)

Is there a difference?

Things we lose (or at least things I lose) (Musing #876)

A pitfall of accumlation.

Changes in my teaching (Musing #879)

Is the more things change, the more they stay the same a cliché?

Driving Midwest to Northeast, or vice versa (Musing #881)

What’s wrong with sixteen hours in a car?

U.S. Route 6 (Musing #882)

The longest continuous highway in the U.S.

Our 2^5 anniversary (Musing #885)

Here’s to at least another 2^5 years.

A day on sabbatical (Musing #889)

Some thoughts on assessment.

DadR’s weekly report, week 1 (Musing #895)

Notes for my family.

The Beatles (Musing #910)

My muse made me do it.

Dishwashers (Musing #916)

And their proper use.

Gratitude (Musing #938)

It’s that time of year.

Eggnog (and other holiday memories) (Musing #948)

Memories of holidays past.

Letters to colleagues (Musing #952)

Goals for next semester.

Teaching plans for next year (Musing #953)


Mood swings (Musing #957)

Learning to deal with frustration.

Sympathy for my sons (Musing #958)

Feeling like a bad Internet meme.

Cooking (Musing #960)

Returning to old habits.

It’s getting better all the time (Musing #961)

Recovering from an earlier musing.

Visiting the University of Chicago (Musing #967)

It’s changed.

SamR’s undergraduate workload (Musing #969)

Perfectly reasonable.

Looking ahead to my next Tutorial (Musing #973)

Fingers crossed!

Sadness and Joy (repeat) (Musing #981)

Reflections from the end of the winter holiday.

Feeling surprisingly thankful (Musing #983)

Or maybe it’s not that surprising.

Volunteering for NESFA (Musing #987)

Triggering assorted memories left in my head.

SamR’s week in review (Musing #992)

What does SamR do with his time?

The Pyramid (Musing #995)

Adventures on a strange machine.

Shoveling (Musing #998)

A joy of Iowa Winters.

SamR’s week in review (Musing #1006)

What did I do this past week?

Workshop prep (Musing #1015)

My first assignment for ENG-207.

My first manuscript for ENG-207 (Musing #1017)

Can you find a thesis?

Annotating myself (Musing #1018)

Or my manuscript, or something like that.

The end of an era (Musing #1019)

So much time in the sauna.

Acting April Foolish (Musing #1036)

Just call me Sam(son).

A personality quiz (Musing #1039)

It appears that I am like characters I don’t know.

My newer office (Musing #1042)

Small and mobile.

After the head shave (Musing #1043)

The new adventures of an Uncle Fester look-a-like during the pandemic.

Comfort food (Musing #1047)

Come for t’ food, stay for t’ puns.

Interview prep (Musing #1050)

Bits of autobiography.

Innumeracy (my latest manuscript for The Craft of Creative Nonfiction) (Musing #1058)

A pathography of sorts

Difficulty focusing (Musing #1065)

What was I writing about?

A comedy of errors, of sorts (Musing #1085)

Visiting my lab.

Email signatures (Musing #1086)

Fun with the things no one reads.

Another MIT press sale (Musing #1087)


Recalling my past (Musing #1093)

Perhaps failing.

Back to the office (and lab) (Musing #1094)

It feels so good.

Answers to fourteen questions (Musing #1097)

More or less. It dependds on how you count.

Thankful (Musing #1111)

Another Thanksgiving

Resolutions for the New Year (Musing #1118)

Going with the flow, or with the crowd, or something like that.

The latest installment(s) of the Rebelsky Family Reading Group (Musing #1119)

Ever-changing family bonding.

Happy 90th Birthday Mom! (Musing #1127)

And related imaginings.

It’s time for a change (Musing #1128)

The title says it all.

Getting my gig at Grinnell (Musing #1129)

Ending up in the middle of ….

Two weeks! (Musing #1131)

Starting my new life.

Four weeks! (Musing #1134)

Plugging along.

Six weeks! (Musing #1140)

I’m alive. I’m great.

Three-fourths of a lifetime (Musing #1142)

More or less.

Words fail me (Musing #1143)

It’s hard to know what to say.

Eight weeks! (Musing #1147)

Am I settling into a rhythm? Perhaps.

Moving offices (Musing #1148)

It’s utterly terrifying.

The last day of classes (Spring Term Two, 2021) (Musing #1150)

A peek inside Sam’s tangled brain.

Fragmentary Beatles-related memories (Musing #1152)

Fragmentary, like most of my memories.

Discarding stuff (Musing #1157)

Or at least offering to discard stuff.

How are you, Sam? (Musing #1162)

Pretty good. Often great.

Thankful (Musing #1172)

Not just on Thanksgiving.

Alone again, naturally (Musing #1173)

Why does Sam think in song titles?

Disconnected (Musing #1178)

It’s just a job.

Loss (Musing #1187)

It’s hard to find the words.

Questions from Young Alumni Weekend (Musing #1193)

Also answers.

Thirty-five years! (Musing #1201)

Happy anniversary!

One of my sets of three sisters (Musing #1202)

What else might I have called this?

Road trip! (Musing #1224)

Exclamation point!

Forty-four years (Musing #1232)

It gets easier!

Half-remembered childhood tales of infinite recursion (Musing #1242)

It was a dark and stormy night …

Two weeks to go (Musing #1248)

Panic! Panic!

Happy birthday, Love! (Musing #1259)

My gift is my ’blog, and this one’s for you.

Giving myself more time and more space (Musing #1271)

A resolution of sorts.

Forty-five years (Musing #1282)

Three-fourths of my life. All of his.

Salary reviews

I win! (I think) (Musing #464)

Counting courses for my salary review.

Triennial salary reviews (Musing #465)

Some background.

I was wrong (Musing #466)

A correction to I win!

Whine, whine, whine (or An introduction to my triennial review) (Musing #470)

Context for the other review statements.

A teaching statement for my triennial review (Musing #471)

The core of what I do, summarized in a few paragraphs.

A statement on scholarship for my triennial review (Musing #473)

Some other stuff I do, also summarized in a few paragraphs.

A statement on other significant activities for my triennial review (Musing #474)

Musing and complaining. (It’s their fault; they asked.)

Assorted sections from my salary review (Musing #476)

A few remaining materials.

Rating myself (Musing #477)

Trying to figure out what score I think I deserve.

Another (not-quite) triennial salary review (Musing #1168)

This one is quadrennial!

ROF musings

The meaning of ROF (Musing #419)

An explanation of the category.

The Big Sick (Musing #417)

Notes on a great movie. Also contains a narrative about Main hall.

Electronic mail

Musings about my experiences with electronic mail (and related issues). The majority are about my attempt to achieve and maintain the legendary status of inbox zero.

Inbox zero, stage one (Essay #189)

Initial notes on my attempt to reach inbox zero.

Inbox zero, stage two (Essay #191)

A day in which Sam archives most of his email, and watches his mail reader screw everything up.

Inbox zero, stage three (Essay #192)

Sam tries to recover, and manages to get most of his email archive moved out of the inbox.

Inbox zero, stage four (Essay #193)

Sam achieves zerosity.

Inbox zero, stage five (Essay #201)

Sam maintains zerosity (or fewosity).

Inbox zero, stage six (Essay #229)

Sam loses to the computer juggernaut

Inbox zero, stage seven (the story resumes) (Musing #267)

Sam resumes his quest.

Inbox zero, stage 8 (email bankruptcy) (Musing #298)

Although the prior resumption was a failure, Sam tries again.

Sam, you are on too many mailing lists (Essay #254)

Some of the reasons Inbox zero is difficult.

Inbox zero, revisited, phase one (Musing #671)

Starting again, a bit more than a year later.

Inbox zero, revisited, phase two (Musing #673)

Learning to unsubscribe.

Getting confused by email notifications (Musing #683)

Learning to check dates.

Inbox zero, revisited, stage 3 (Musing #689)

Email builds up way too quickly.

Inbox zero, revisited, stage 4 (Musing #694)

I’d be overwhelmed with that many unread messages in my inbox. Yeah, me too.

Inbox zero, revisited, stage five (Musing #703)

Things continue to spiral out of control.

Some of SamR’s obsessions

Odd obsessions: The Danika and the Jeb Daylist (Musing #1122)

There are times that I don’t understand myself.

Tales of Tchotchkes

Preface to Tales of Tchotchkes (Musing #1160)

What is all that stuff?

Tales of Tchotchkes: An Odd Bodkins Printing Plate (Musing #1161)

You gotta begin somewhere

Adventures with ChatGPT

Fun with ChatGPT: Finding angles between points (Musing #1270)

Getting things wrong.

Almost everything else

Mom (Essay #19)

An essay on my mother, for mother’s day.

Replying to messages on the SIGCSE mailing list (Essay #37)

A note to a mailing list that I manage.

The end of the world is nigh (Essay #98)

Reflections on the Cubbies’ presence in the World Series.

Cultivating the gross mindset (Essay #103)

An attempt at humor.

Assessing candidates (Essay #112)

Notes for some early-career faculty

The election (Essay #115)

Um, yeah.

The Bruce Voyles Rule and the Samuel A. Rebelsky Rule (Essay #149)

Policies on supervising MAPs, and how they came about.

Mondegreens (Essay #143)

A great term, further explored.

On teaching online (Essay #168)

Preliminary notes for a memo in which I reflect on my experiences teaching online.

Thoughts on student graders (Essay #202)

Why we use them, or at least why I use them.

Giving in to Bootstrap (Essay #203)

Adopting a technology I hate.

Dumb things Sam does: Changing my site builder right before classes start (Essay #206)


Dumb things Sam does: Write too-long essays on work-life balance (Essay #213)

Agh! Agh!

A gift to myself (Essay #208)

A night with less essay writing, to allow time for class prep.

Some days I’m clearly not meant to write (Essay #209)

I hate networks.

Dumb Amazon recommendations, episode 1 (Essay #224)

Sam writes too much about too little.

Exam prologues and epilogues (Essay #225)

A teaching approach I appreciate having learned.

Scheduling classes (Essay #231)

One of my responsibilities.

Priorities (Essay #233)

Reflecting on them

Asking questions (Essay #236)

An answer to one.

Office hours (Essay #239)

More thoughts on my professional life.

A few quick reasons I love Grinnell students (Essay #240)

Students in leadership roles.

Some classes that influenced me (Essay #241)

Appreciating learning.

Some things I write (other than these essays) (Essay #242)

Okay, a selection of such things.

A week in the life of a chair (Essay #243)

Joyous and interesting.

Campus speakers (Essay #247)

And today’s climate.

How are you, Sam? (Essay #250)

How I answer that question.

Tipping hotel housekeeping (Essay #252)

Why to do so.

Enjoying listserve chaos (Essay #253)

Watching computer professionals be unprofessional

Textbook prices (Essay #257)

How students deal with them.

The legendary CSC 151 picture quiz (Essay #259)

One of my strange teaching techniques.

Spring break 2017 (Musing #261)

Likely to break me.

Spring break 2017, revisited (Musing #262)

A more positive perspective.

Rhetorical gestures I don’t understand (Musing #272)

Strange ways to use links.

Scholarly opportunities for all, revisited (Musing #274)

My latest in a series of responses to an initiative.

What is the ACM? (Musing #277)

An acronym that continues to mystify.

Other kinds of writing (Musing #284)

Why musing #284 is so short.

Determining whether or not a string starts with an upper-case letter (or why Sam may fail programming interviews) (Musing #285)

I think the subtitle says it all.

Making good choices (Musing #295)

In which I do so.

The state of the CS department (Musing #297)


Finding room in my schedule (Musing #301)

Searching for the imaginary.

Planning a department meeting (Musing #303)

What do we talk about each week, or at least this week?

Hotel Grinnell (Musing #306)

It may actually succeed.

Whoops (Musing #307)

’nuff said.

(Lack of) sleep cycles (Musing #317)

Getting rest.

Great (?) conversations (Musing #318)

No, not really.

How do you do it? (Musing #319)

I’m fortunate.

Apologies (Musing #320)

Some that are necessary.

Scenes from Graduation Weekend 2017 (Musing #327)

Things to remember (or not).

More scenes from graduation weekend 2017 (Musing #329)

More things to remember.

Self-catering the senior breakfast (graduation 2017) (Musing #331)

Lists for next year.

Questions of the day (Musing #344)

What Sam does when he doesn’t have a lot of time to muse.

Deanly stressors (Musing #346)

Feeling sorry for my dean.

A new CSC 151 (Musing #348)

Thinking about the new version of the course.

A workshop on Universal Design for Learning (Musing #350)

A report.

Reading CS Principles, Take 1 (Musing #351)

Starting a series?

Reading CS Principles, Take 2 (Musing #352)

Continuing the series.

Bananas (Musing #353)

A slight detour.

Conversations (Musing #355)

Yet another conversation that I don’t expect.

Reading AP CS Principles, Take 3 (Musing #356)

Returning to the series.

I’m back! (Musing #357)

Returning from a break.

Reading AP CS Principles, Take 4 (Musing #359)

Now that I’m back from the break, I’m adding to the series.

Surface problems (Musing #363)

The joy of Microsoft.

Today’s question (Musing #364)

Are we selling the Chrystal center?

Assembling advising folders (Musing #366)

A requested musing

A message to SIGCSE-members (Musing #367)

One of my responsibilities.

Poor Jerod (Musing #368)

Passing on responsibilities.

Bootstrapping my musings (Musing #371)

More fun with Bootstrap.

Some notes on open educational resources for CS (Musing #373)

Yet another report from a workshop.

Budgeting screwups (Musing #374)

Why do they let me be chair? (Alternately: Sorry Jerod!)

A possible OER project: A more open CSC 151 (Musing #375)

Adding work to my plate.

A chair problem (Musing #376)

A problem for the new chair about chairs.

Fun(d)raising (Musing #379)

Ideas for putting some fun in fundraising.

Keys (Musing #381)

The joy of building keys.

Good will, trust, relationships, and rules (Musing #382)

One of these things is not like the others.

An easy question (or maybe not) (Musing #383)

Definitely not.

Why some email messages need context (Musing #390)

Otherwise, comments may have an unclear subject.

A short musing (Musing #394)

Too much to do, too little time.

Game night (Musing #402)

A weekly summer activity, more or less.

A report from the Grinnell summer 2017 letterpress workshop (Musing #403)

A break from my other work, more or less.

A report from the Summer 2017 CS Department Workshop (Musing #404)

The other work that I was breaking from.

Musing too much (or too little) (Musing #408)

Yet another reason my musings don’t always appear when they should.

Placing incoming students in Mathematics, Statistics, and Computer Science (Musing #410)

How I’ve spent way too much time of late.

Local, national, and global (Musing #414)

Why I focus on the local, and sometimes the hyper-local.

The eclipse (Musing #422)

My experience trying to see a total eclipse in 2017.

Too many (lists of) learning goals (Musing #444)

What do we try to teach, anyway?

Embracing three-by-eighty (Musing #445)

My new favorite class block.

We are all shipwrecks (Musing #447)

Traveling to hear a book reading.

Watching terms lose their meaning: Algorithm (Musing #449)

Frustrated at seeing a term coopted.

Experiencing SamR (Musing #460)

The different ways that people on campus seem to react to me.

Weeknight concerts (Musing #462)

Making choices.

CSC 321/22 - The evolution of Grinnell’s software design curriculum (Musing #463).

A (potentially) great course that’s still evolving.

A week of advising activities (Musing #472)

Some of the other things I do.

Ten miles backwards (Musing #478)

From Missouri to Iowa.

Finding time to grade (Musing #479)

More precisely, not finding time to grade.

Preparing to perform (Musing #480)

I need a green room.

An exam question on loop invariants (Musing #482)

Not a lot of time to muse.

The class before (Thanksgiving) break (Musing #488)

How to handle that class.

Vignettes and followups (Musing #490)

Lots of little things.

Getting my weekends back (Musing #491)

One of the reasons I’m looking forward to the fall.

Achieving sympathy (Musing #493)

It’s not quite nirvana, but it’s still important.

I’m back (I think) (Musing #494)

Starting to muse again.

Setting up an RSS feed (Musing #497)

Trying to make the musings more readily available.

Transferring my digital workspace (Musing #499)

Getting ready to send my workstation in for repairs.

The spectre of Spectre (Musing #501)

Some things I learned by reading about security flaws.

A question about tuition from an ACT survey (Musing #503)

Where do they get their numbers?

Benny Goodman at Carnegie Hall (Musing #511)

Eighty years ago today.

My first big programming project (Musing #514)

My zero knowledge port.

The 2018 Grinnell Posse Plus Retreat (Musing #523)

Reflections on a weekend discussing complex topics with students and colleagues.

JAVA (Musing #524)

What does that acronym stand for?

Minnesota nice (Musing #533)

What does the term mean?

Making a slide deck (Musing #534)

What’s the point of Powerpoint?

Today’s question (Musing #540)

The things my children ask.

It’s not just me! (Musing #545)

I’m not the only curmudgeon!

Should it go to waste or to waist? (Musing #552)

What to do with leftover sweets.

Thanking people (Musing #555)

A good habit.

A committee of old white guys (Musing #556)

Should I be another owg?

Vignettes from a Guthrie Family Concert (Musing #563)

Gee, I’m old.

Checking my MacBook (Musing #575)

Is it dead?

Publicizing Research Opportunities for All (Musing #577)

It’s a great initiative. Why don’t we say more about it?

Scarlet and give back day 2018 (Musing #587)

Please give.

Breaking things (Musing #594)

Careless programming decisions can have long term impact.

Free-book tables (Musing #595)

A danger to the addict.

Friday the 13th (Musing #598)

Advice from Churchy La Femme. (I suppose that’s advice, too.)

Recycling, revisited (Musing #602)

Better news on recycling.

Language (Musing #618)

Words matter.

Faculty parties (Musing #621)

Feeling fortunate to work with awesome people, a few more of whom now have tenure.

Guns (Musing #635)

Feeling sad and hopeless.

Depressed and obsessed (or Putting the marketing campaign behind me) (Musing #644)

It’s time to move on to other matters.

An exclamation to avoid (Musing #645)

Please don’t swear in my classroom.

Admitting defeat (Musing #646)

Perhaps I’m too persnickety.

Textbooks and the bookstore (Musing #650)

Reflecting on some sales choices.

I’m so confused! (Musing #651)

Unexpected PL influences.

Getting the preposition right (Musing #653)

Although to and on share a vowel, they are different prepositions.

Aggressive spam filters (Musing #662)

Your email has been rejected as it contains a shortened URL

Strange calculations (Musing #663)

Two plus four is seven?

Sentient and malicious (Musing #665)

One of my aphorisms.

Linking in (Musing #677)

What links do you accept?

A great quotation (Musing #678)

Explaining the VU.

Saying goodbye (Musing #684)

It happens too often.

Software over-privileges (Musing #691)

One of the minor benefits of being a faculty or staff member at Grinnell.

Even worse collegiate marketing slogans (Musing #699)

And I thought no limits was bad.

Code triage (Musing #700)

It could be an awesome game.

Learning to appreciate Peter Max (Musing #704)

Now I think I understand.

A fun conversation (Musing #706)

It was fun to muse about, too.

Fair fare (Musing #717)

Too much fat and sugar.

Watching a livestock competition (Musing #718)

Learning to understand non-verbal communcation.

The Avital Ronell case (Musing #744)

Something I’ve read too much about.

Repairing my vintage MacBook (Musing #759)

Decisions, decisions.

Cleaning up my hard drive (Musing #763)

Too much cruft.

Dilly Dilly? (Musing #766)

Strange signs.

In line at a grocery store (Musing #770)

Responding to the wait.

Iowa weather (Musing #775)

Not a good fall.

CS department initials, acronyms, and abbreviations (Musing #778)

What do those two letters mean?

Marching band (Musing #779)

Musicians, color guards, and the occasional theremin. Oh my!

Unintended consequences (Musing #781)

Small changes can have larger impacts.

An abbreviated history of Grinnell’s end-of-course evaluations (Musing #787)

What would an extended history look like?

New Facebook friends (Musing #795)

It’s nice to have friends.

Discussing film and music at my fourth Obermann seminar (Musing #803)

An intellectual luxury.

11/11 (Musing #807)

Armistice Day and Walt Kelly.

The moat (Musing #818)

Why does it surround admissions?

Word order matters (Musing #819)

Ordering word matters.

Giving to Grinnell on Tuesday (Musing #821)

You’re giving to the College, not the Administration.

Comics that matter: Master race (Musing #822)

An important piece of history.

MAT-218 (Musing #827)

It’s a dessert topic and a floor wax!

Pricing strategies that confuse me (Musing #829)

The cost of splitting a plate.

Robotics engineer Barbie (Musing #830)

More precisely, robotics engineer Barbies.

Rocket Scientist Barbie (Musing #836)

Celebrating real mathematicians.

git flame (Musing #837)

Better than git blame.

My bookshelves at the Obermann center (Musing #841)

I can’t bear to see empty bookshelves.

Live music (Musing #842)

Some recent shows of note.

Direction matters (Musing #851)

Fun with Google Maps.

ykcowrebbaJ (Musing #853)

Through the looking glass.

Confusion about Jabberwocky (Musing #857)

d backwards is b, and vice versa.

Searching for academic honesty (Musing #859)

A question from a colleague.

Evaluating candidates (Musing #864)

Reflections on a workshop.

Dream suggestions (Musing #866)

Finding other people’s iPhones.

The creator and the creation (Musing #868)

Does the former affect your appreciation of the latter?

The CS Web server (Musing #894)

I need a life, or at least my own Web server.

Reading the AP CS Principles exam (Musing #914)

A week of grading sounds horrible. But it can actually be a lot of fun.

Visiting Mass MoCA (Musing #917)

I needed a week (or more).

Mid-year graduates (Musing #923)

Lots of CS majors and other students who I will miss.

Car radio (Musing #926)

Getting lucky.

Whoops! (Musing #930)

Sometimes I’m too persnickety.

Misnaming (Musing #947)

Sam needed a break from even more serious topics.

Raygun (Musing #949)

Favorite store of Midwest liberal snowflakes.

From rabbit holes to dance bands (Musing #961)

You see the connection, don’t you?

Dad jokes for computer scientists (Musing #965)

Humor of some sort or other.

Fresh pineapple (Musing #966)


Misnaming, revisited (Musing #970)

Possibly a more serious topic than I had thought.

Nina Paley (Musing #979)

Sometimes I still feel like a fanboy.

Farewell MathLAN Web Server (Musing #984)

You shall be missed.

Wednesday is Prince Spaghetti Day (Musing #1002)

The things that occupy valuable memory.

The 2020 Iowa Democratic Caucus (Poweshiek County Grinnell Precinct 7 Ward 2) (Musing #1008)

Responding to reader requests.

To create or consume? (Musing #1030)

To produce, practice, ponder, perfect, or play?

Joy in a time of (something) (Musing #1032)

The power of song.

Unexpected joys (Musing #1044)

Perhaps I should expect more of them.

Claviash (Musing #1059)

However you spell it.

(Too much) Virtual live music (Musing #1063)

Choices, choices.

Suggestions for summer (Musing #1067)

Take care of yourself!

Attempting grace (Musing #1072)

Not always succeeding.

Lost in the Interweb, episode 803.6: Good morning, somewhere, how are you? (Musing #1076)

A new interpreation of cover version.

SLAC education this fall (Musing #1078)

What will it look like?

Perspectives on personal projects (Musing #1080)

Reflections for/from a conversation.

Adventures in Web server transitions (Musing #1108)

So many complexities!

(Mostly) Avoiding social media (Musing #1116)

Mostly succeeding.

Shoveling snow (Musing #1117)

A joy of Iowa Winters.

How should a student learn compilers and interpreters? (Musing #1132)

And related questions.

I hate computers (Musing #1146)

Particularly today.

Normally kind (Musing #1152)

Let’s make kindness the new norm.

Random thoughts from a road trip (Musing #1158)

Nineteen hours and this is all I could come up with?

What are your favorite pieces? (Visiting the Des Moines Art Center) (Musing #1159)

There are so many!

A quick and dirty intro to command-line JUnit testing (Musing #1164)

Perhaps not so quick. Definitely way too dirty.

The speed of radix sort (Musing #1167)

More joy with C

A day that should live in infamy (Musing #1181)

January 6, in case you weren’t sure.

Guns (Musing #1190)

Feeling hopeless.

Cycles of technology (Musing #1191)

Can neural networks muse?

Corn Mazes (Musing #1204)

I think I understand.

One two three four! (Musing #1234)


The fix ain’t in (Musing #1240)


The Frida Kahlo Mexican Restaurant (Musing #1241)


High-level skills, low-level tasks (Musing #1252)

Not the best combination.

Musings with multiple entries

Most frequently, when I revisit a topic, I make a new document. However, in a few cases, such as the CS FAQ, it makes more sense to extend an existing document, rather than to create a new one. I keep the old entries for those musings in this file.

Some shorter questions and answers about Grinnell’s CS program (Musing #162)

Additional information about the department.


Essay #3 was about Grinnell’s relationship with Posse.
I have now learned that the situation is even more complex than I thought, and my knowledge is clearly incomplete. I remain frustrated by many issues in the situation, but I don’t think it’s appropriate to keep my essay up.

Essay #102 was about a ’blog post by Doug Cutchins. Doug has taken down his post. I think it is appropriate that I also take down my response.

Essay #142 was about Web accessibility, focusing on a particular Web site. My critiques, while accurate, were not appropriate, particularly given that the people building the site were doing so with the best intentions. I will likely address some of the details of that essay in a future essay.