Saying goodbye to someone I never knew

Dr. Randy Pausch gives his last lecture (h/t to Mark Guzdial)

Randy Pausch, a computer science professor at Carnegie-Mellon University and the creator of Alice, is dying of pancreatic cancer. I learned this past weekend that he had given his last lecture recently, while he was still in good health. It’s become kind of commonplace for universities to have dignitaries give “last lectures.” The scenario put to them is, “What would you tell people if you were going to die soon?” Well Randy really did it. As you can see from the video he was not morose about it. He was downright cheery. What he had to say was good and inspirational. He focused mostly on his career and people he’s met along the way, leaving his illness in the background.

I had heard of Alice through Squeak, but I had never heard of Randy Pausch before this. What he has done is amazing. He’s managed to marry performance art with computing via. virtual reality technology. He developed a course bringing together people from all sorts of disciplines to participate in creating immersive environments.

Randy said Alice is a “head fake” to get students to learn programming, “while doing something else.” He says students think they’re creating movies and video games with it, but they’re learning programming. He said with Alice, “The vision is clear: Millions of kids having fun while learning something hard.”

There were two parts of his speech that I loved.

In “Hello. World” the demonstrator creates a world in wireframe to please an endearing rabbit. The demonstrator renders the world, creating a sunny place with dancing, singing characters. She then does a “system reboot” that destroys the world before your eyes in a whimsical and hilarious way. Such creativity!

In another segment, on things other people had taught him, Randy talked about a former student, Dr. Caitlin Keller, who suggested that instead of seeing Alice as an easy-to-use tool to teach programming, he should present programming as a form of storytelling, through Alice. It sounded like he took that advice and used it in his classes. He said she demonstrated by using Alice this way in middle schools that girls could be attracted to learn programming, suggesting that it’s all about the approach, not the subject matter. This was heartening to me. I think it would be beneficial to male students of programming as well. I’ve written previously of the pleasure of “coding like writing,” though what I talked about was different. I wouldn’t call it storytelling, but rather describing a process using concepts, more like technical communication, rather than a narrative.

He gave some useful advice for life, like, “Brick walls are there to show you how badly you really want something.” They’re there to keep out the people who aren’t dedicated to the task. He also said, “If you wait long enough,” with someone you are displeased with, “they will eventually impress you.” I have a new perspective on “brick walls” after listening to him.

Something he implies is it’s important to be in a community that agrees with your work values, and is open to what you’re trying to accomplish. If you’re running into people who don’t value your ideas, much less understand them, it doesn’t necessarily mean your ideas are wrong. You might be hanging around the wrong people.

At the end the president of CMU announced that they’re going to build a bridge between the performing arts building, and the computer science building on campus. The buildings are already situated next to each other. They’re going to name the bridge, appropriately, after Randy.

The end of the lecture was touching. He said he did this lecture, and recorded it, for his kids so that someday they’ll understand some life lessons. It reminded me of a movie that came out years ago called “My Life,” starring Michael Keaton and Nicole Kidman, about a man and his expecting wife who find out he’s dying of cancer, and how they choose to live the remainder of his life. It contained a great idea for terminally ill parents: Take the time to record “sit down talks” with your kids, teaching them life lessons, because you won’t be around when they’re older and ready for them. It also gives them an opportunity to know a bit of you, so you won’t be someone who wasn’t there for them.

That was one message from Randy’s lecture. What it also brought to mind for me is a message that all computer science programs should heed: TRY TO MAKE PROGRAMMING FUN! This doesn’t mean it has to be all fun all the time, just try to incorporate it somewhere.

I’ve been saying this to whoever will listen since industry started complaining that there weren’t enough computer science graduates. A group of companies got together in the 1990s to try to promote getting educated in computing for the benefits (ie. salary, nice job, good lifestyle, etc.). They created some videos to be shown in high schools with this message. The 2000/2001 tech recession clearly showed the fallacy of this line of thinking. Yes there are good times in this industry, but they don’t last. It’s a chaotic place to be.

When I was learning computers as a 12-year-old, the fun aspects were emphasized. Not so much playing games, but there were simple things you could try and get some gratification from what you did. There were resources available (books, magazines with type-in programs) that tried to make the experience of programming enjoyable by having you try things that were fun. There were all sorts of things around in our culture that made science and computing look fun and interesting. That’s why I got into it. It wasn’t imposing and boring. I developed this mentality that computers were “creation machines.” Unlike physical mechanical devices, you could mold the computer to whatever you wanted it to be, and you could take the vision you had in your head and realize it in front of you. That experience has always been a blast for me. There were some fun experiences I had in CS in college, but not too many. It was serious work, and fun was hardly ever emphasized. I think it killed that spirit within me a little. When I got out, for some reason I didn’t look for places to work that would be fun. I just wanted a job, and that’s what I got. Not to say I didn’t have enjoyable experiences in and out of the work world. I certainly did. I’ve worked with some great people. Was the computing part fun? Sometimes. What I’ve worked on remembering in the past year is what it was like to have that spirit of “computing is fun”–not necessarily easy, but fun nonetheless. Randy’s lecture was a part of that experience for me.

Thank you, Randy. I am sad to see you go so soon. I hardly knew you. Best wishes to your family. Your contributions will live on in your software and in your students.

By the way, readers can find Alice for Squeak Version 3.8 (not sure if it works in the current version, 3.9 as of this writing) in the Balloon3D class library on SqueakMap (just bring up “SqueakMap Package Loader” inside Squeak and search for it), or in Monticello using the http://www.squeaksource.com/Balloon3D repository. It’s called “Wonderland”. Once it’s loaded in Squeak, evaluate “Wonderland new” in a Workspace.

Edit 9/24/08: While I’m updating/cleaning up old posts, I figure I should update this one. Dr. Randy Pausch died of his illness on the morning of July 25, 2008. Here is a site Randy Pausch set up to document his “adventure” with cancer, and other events along the way. It also links to a page that’s like a scrapbook of his efforts to bring awareness to cancer research, and the events he was a part of, talking about his philosophy of life.

—Mark Miller, https://tekkie.wordpress.com

Advertisements

One thought on “Saying goodbye to someone I never knew

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s