Going Nowhere on the Information Superhighway

More than 50% of people die within 30 miles of where they were born. Even though America has a well-maintained highway system that spans the continent, most people don’t randomly pack up from their home town and go on a road trip to the opposite side of the country. And so it is with the virtual world. Before the Internet, information was highly segregated geographically. The farther you were from a source of information, the longer it took to reach you, and the more you had to go out of your way to consume it. This was the result of both the technology and the media networks that existed.

The Internet was supposed to revolutionize the way information moved. The so-called information super-highway would advance digital transit in the same way the Interstate Highway System did in the 1950’s. But just like the real highway system, the Internet hasn’t caused a mass exodus of ordinary bitizens. In this analogy, the reason is painfully obvious. It takes a huge amount of effort to leave your Internet communities and travel to another place where the dialect or even language is different. And to what gain?

These barriers to information cross-pollination result in an Internet that experiences de facto segregation along cultural boundaries. This division is no less real than the geographic segregation experienced by human populations in the real world. A TED talk by Ethan Zuckerman explores the vast sections of Twitter you may not even be aware existed; huge parts of Twitter are occupied by Brazilians and by African Americans, but if you are a caucasian American, you’ve probably never interacted with that side of Twitter. Even in the information age, we still consume the media closest to us. Yet this is even more dangerous, because the ease of information transfer lulls us into thinking that we are getting a cosmopolitan viewpoint, when in fact we are stuck in the middle of an echo chamber.

This is why it is so hard for people to branch out and become informed about subjects they don’t believe they are interested in. Be it international politics, scientific advances, or social justice debates, people often sit back and consume their news from whatever source is most familiar and convenient. The result is that I am woefully uninformed about the geopolitical situation in Africa, and the general public is woefully uninformed about anything related to space exploration. Then again, you don’t see me going out and reading up on African conflicts, so I don’t blame anyone for having a spotty knowledge base.

Introduction to Programming

Taking an introductory programming course this semester has been an interesting experience. Since I grasp the course material well, I’ve spent some time helping others with their work. As anyone who has taught math can attest, teaching even basic concepts requires you to understand the material far better than the student must. When it comes to programming, helping people is even more difficult because you can’t just tell them how to do it. You need to let them to figure it out on their own, otherwise they won’t have learned anything.

But leading someone along without explicitly telling them anything is really, REALLY difficult. Our professor is a master at this, and I respect him deeply because of it. A student will ask a question, and the professor will reply with an oblique statement that doesn’t seem to address the student’s question at all. Yet soon enough the student says “Oh! I get it!” and goes on their merry way. I try as hard as possible to emulate this method when I help those who are struggling, but it is nigh impossible to strike the correct balance. Help them too much, and they don’t learn. Help them too little, and they despair or begin to resent programming. And as much as I don’t like seeing it happen, many of the people in the class have come to resent programming.

This is as sad as a student resenting literature because of a bad English class experience, or resenting math because of a bad math teacher. Yet I don’t fully understand how to prevent it. If there was a good, standardized methodology for teaching difficult concepts without causing students to resent the field, I feel a lot of the problems in society today could be solved. Maybe that is just wishful thinking, though.

The second interesting observation from taking this class has come from observing a peer. The first language she learned was Python, and learning C++ this semester has caused some distress. There were many lamentations along the lines of “why is the computer so dumb?!” Of course, I found this hilarious because it mirrors a situation in the novel A Fire Upon the Deep. As the protagonists head towards the bottom of the Beyond, much of their advanced computer technology stops working, and they are forced to adopt more primitive methods. Needless to say, the characters who grew up with the advanced technology are indignant that they are forced to use such primitive technologies as a keyboard. Meanwhile, the character who grew up using primitive technology merely smiles.

In my mind, this helps clear up the argument of whether new students to the art of programming should be started on a high-level language, or a low-level language. Until such time as low-level programming is never needed except in rare circumstances, students should be started at a medium-to-low level. For example, it is easier to step up to Python from Java than it is to step down. I was originally of the mind that new students should start at a high-level as to learn common computing concepts without getting bogged down in obtuse technicalities and syntax, but getting a first-hand view of the results of such an approach has changed my mind.

%d bloggers like this: