Once when I taught Data Structures I asked on the first day of class for a show of hands from people who had heard frightening stories about my classes. Half the class raised their hands. I’m really not such an ogre (something most ogres claim), so where could this be coming from?
The truth is that my courses are a bit unusual (possible translate: hard) because of the extent to which I try to use homeworks and (to a somewhat lesser extent) lectures to help teach clear, creative thinking. I know very well that you’re going to forget almost all of the facts that you learn each term, and so the only way that I can do something of value is to get at something which goes beyond the material. I want you to improve a certain skill. Roughly, it’s the ability to think in the style that, I believe, makes for a good computer scientist. Well, at least for a particular (somewhat theoretical) style of computer science. Some students are quite good at this coming in, and for them my classes are fun and not so hard. Other students never get it; they can finish class quite clueless about what was going on. Most students, I suppose, are somewhere in between.
Don’t misunderstand; you will be expected to learn the material, and I’ll do my best to help you do that. But you’ll be asked to assimilate material, not just recall it. You’ll need to use the material in creative ways. If you try to do a Rogaway class using recall and pattern matching, you won’t get out of the class what I had hoped. And chances are you won’t do well.
I particularly like to talk with top students who are interested in going to graduate school. Such students ought to see a faculty advisor two or three years prior to graduating. Most students have serious misunderstandings about what is important for getting into a top graduate school.
Our staff advisors know a lot more than me about what is required and what is permitted and what is the process to do whatever it is you’re hoping to do. I can help on these matters, but I’m forever looking things up or having to call staff to find out. The rules and processes at UCD are arcane, illogical, circumventable, and forever in flux.
Please come talk to one of the faculty advisors if you have this question. Find someone honest. Frankly, I believe there are lots of students in our two majors who should not be here. If your main reason for being in the major is that you think that a CS/CSE degree is just the ticket for landing a good-paying job—or you’re in the major because your parents think that—then I strongly encourage you to explore other areas. There’s no shortage of great things to study in college.
Who belongs in the major? CS and CSE are good majors for people who enjoy and are good at solving artificial problems. Clever people who like creating stuff and like thinking about problems clearly and abstractly. If you like to work puzzles, that’s a good sign. If you dislike math and physics, that’s a bad sign. If you have a sincere and strong commitment to directly and tangibly helping people or the environment, I regret that that may be a bad sign, too.
The characteristics of a good computer scientist are relatively uncommon, so CS and CSE ought not to be terribly popular majors. But they are.
Good people in industry understand this. I recall once speaking to a VP at a major tech company. I asked him from what undergraduate major he prefers to hire. His answer? English. His least favorite major? Engineering. “English majors can communicate,” he claimed. “Engineering majors cannot.”
What’s the best way to learn to write? By reading well-written books. And caring about how they are written.
There was one professor in CS who would listen to language instructional materials on his daily commute from the Bay Area. He had a knack for learning languages (not everyone does) so, in six months or a year, he would be able to get along with the new language. I’m not sure how many languages Fred eventually acquired in this way.
Travel takes time. Stay in a place long enough to get to know how it works for the people who live there. The if it’s Tuesday, this must be Belgium idea isn’t a joke: it’s how most Americans travel—if they travel at all.
Of course the nature of employment in the US contributes to this; most Americans, even the upper middle class, can’t travel often or for long. Employees get extremely few vacation days per year (e.g., two weeks). When it comes time to negotiate with an employer, vacation days, or whether you may work for stretches from afar, may be a more important variable than salary. Good luck negotiating this: it is barely a thing.
Also: wear a bicycle helmet. But only when you bicycle. Bicycling is probably the most dangerous thing that you do. (Well, maybe not. See the next paragraph.) One of my grad students lost most of his teeth in a bicycle accident. He’d probably have lost his life if he had’t been wearing a helmet. It’s not unusual.
All that said: we must do things that carry some objective risk. Try to figure out where the risks are. Micromorts help quantify risk of death.
Eat plants. Learn to cook. And take an interest in what you put into your body.
When I walk around UCD these days I’m not sure if 1% of the people make eye contact. Few people even see me, so engrossed are they with their phones, or so rapt in whatever music they are blasting into their brains. I understand all of these people to be saying to me: you are shit, you know; you aren’t even worth an upward glance. If that is not the message you intend to send to the people you pass by, then please adjust your behavior to match your intent.