InfoFez: Information-based Navigation in Second Life

The new version of the InfoFez launches on April 7th… be there!

The Essential Elements of Geek Culture (March, 2008)

Office Space Movie Poster

I was talking to my web programming seminar about regular expressions and made an allusion to the xkcd comic on that topic. Unfortunately, none of them had seen it, probably because none of them were familiar with xkcd.

Students should become familiar with the concepts and practice of the discipline, but also with the culture and in-jokes that will help them fit in when they get into industry or graduate school. I also like to get people to laugh in ways that are relevant to the subject material (yes, I use a lot of cheesy geek jokes — ask me to tell you my LISP joke sometime).

I asked the Twitter community what other geek cultural elements I should introduce the students to, and here are the answers:

This list is thanks to (in order of appearance) @mediacrisis, @rubaiyat, @techpickles, @mattgillooly, @hempstyle, and @inkedmn.

What’s wrong with this hat?


The vendor containing this hat was recently deleted from Virtual Morocco by an employee of Linden Lab without any notification to me. Why? Because an anonymous person complained that it is “broadly offensive”.

Virtual Morocco was created to be both a tourism promotion platform and a space for cultural exchange. It was built entirely by undergraduate students as an educational service-learning project.

We give space in the Marrakesh Marketplace to several Moroccan artisans with virtual goods for sale. Our only requirements are that they keep everything appropriate to the sim’s theme and to the educational context of the space. The vendor selling the hat was owned by a college student (not from our institution) who specializes in items appropriate for the Morocco of the 1940s.

This hat does appear to be in the Nazi style. Even if it is, it is historically and thematically appropriate for Virtual Morocco.

Managing a space for cultural communication is not always an easy task. We have dealt with anti-Muslim intolerance, anti-American intolerance, and other forms of inappropriate behavior. When an incident occurs, I try to use it as a learning opportunity and prompt for discussion for my students and the members the our Virtual Moroccan community.

This incident has implications far beyond one college student and an ambiguously offensive hat. How can we create an academic space – a space for the free exchange of ideas – if our content can be deleted arbitrarily, by a third party?

I’m posting this now because my support request has gone unanswered for several weeks. I will post updates as the situation develops.

Teen Second Life College Fair

teen SL college fair

I was immensely privileged to participate in the first ever Teen Second Life College Fair. The event was on the Eye4You Alliance TSL island. At least 18 institutions were represented (see some of the booths in the image to the left), and approximately 200 teens attended.

I gave a short presentation on my own educational experiences and the incredible possibilities for careers in technology, but my favorite part of the college fair was the casual conversations that took place outside of the sessions and in the booth area. We talked about everything from education in Europe vs the US to tagging to SL building and scripting to politics… you get the idea!

For educators and recruiters, this was a fantastic event for connecting with young people who are excited, passionate, and resourceful. The students were able to talk directly with representatives of various institutions, and were not shy about asking difficult questions and getting the answers that they were interested in. I’m looking forward to the next one!

The event has been written up:

An Experience with Using a Wiki for a Collaborative Classroom Documentation Project

webmonkey thumbnail

I’m teaching a basic web design course this term that covers design concepts, XHTML, and CSS. The students are from a variety of backgrounds – some have knowledge of HTML, some are non-majors or non-credit students looking to pick up a useful skill, and many are complete beginners who are required to take the course as part of their degree programs.

Only a few students knew what a wiki (distinct from Wikipedia) was before beginning this project. The students were given a month to make their contributions to the wiki. They were each assigned primary responsibility for one page at random, but were graded both on the success of their page and their contributions to other pages.

43 students across two sections of the class participated in the project. Of those, five (or 11.6%) didn’t participate by the due date, which is a higher than normal percentage for a homework project. Eleven (or 25.6%) contributed only to their own pages. Another thirteen (30.2%) maintained their own pages and made meaningful contributions to other pages, while fourteen students (32.6%) made numerous contributions well in excess of the requirements.

I will be continuing the project for the second phase of the class – CSS – and I’ll see if participation increases as the usefulness of the wiki as a resource increases. I also plan a project postmortem survey at the end of the course to see what the students thought about it.

Second Life Community Convention

I just returned from the Second Life Community Convention in Chicago. I really appreciate all of the wonderful people that I had the chance to meet (or smeet) or just spend time with. There wasn’t nearly enough time for all of the conversations that I wanted to have!

There were a wide variety of presentations. We’ve come a long way since last year! The diversity of disciplines was astounding. I think the strongest work presented was in the sciences and medicine, and I was particularly impressed with the Second Health machinima.

Here are the slides from my presentation on Experiential Learning:

I’m hoping it inspires people to think about how we now have this capacity to create learning experiences that were simply never possible before. What do we do with it? How do we measure it?

Curriculum Design as Software Engineering

This summer, I’ve been involved in the process of creating a new undergraduate curriculum essentially from scratch. I was reflecting back on this process, and I realized the development of a robust and relevant curriculum shares many attributes with the process of developing robust and functional software.

Modern software development is a largely modular process. Each component of a system interacts with every other component through a defined interface. I see this same behavior in a degree program – each course has certain incoming requires and defined outcomes. Students navigate through a narrative of courses that must fit together to equal a bachelor’s degree.

Unit testing is the practice of separating out each module in a software system and insuring that it functions correctly. The final system is will contain many modules interacting together in potentially unforeseen ways; by testing each piece repeatedly throughout the development process, we can reduce the number of problems that creep in when everything is integrated.

If we continue the metaphor of courses as modules and curriculum as software system, we find that students will create an arrangement of these sets of courses, based on simple rules given in the course prerequisites and degree requirements. The arrangement must function to make certain that a student doesn’t end up in a course that they aren’t prepared for, while also making certain that any given legal arrangement of courses provides a degree program that meets the program outcomes.

Just as we must assess students’ mastery of material, we must also evaluate the effectiveness of each course to make sure that it is actually supporting the written course outcomes. This process is required for a University to remain accredited, but can also yield useful “debugging” information to help refine course sequences.

The need for evaluation brings us to security. As odd as it may be to think of an educational program being “hacked”, we need to make certain that the rules are arranged such that any legal sequence of courses meets the degree program outcomes. It’s also important to make sure that a course taught by one faculty member has largely similar learning outcomes as the same course taught by another faculty member.

Finally, software and curriculum share the odd trait of generally being created by people who are not the typical audience. Creating usable software generally involves gathering data from the community and directing development and testing accordingly; we see the same thing in educational programs. The community of “users” can be roughly divided into three major constituencies: University administration, students (and parents), and employers or graduate schools, each of which have different priorities and different priorities than the faculty or administrators creating the course. It is impossible to satisfy them all without doing some usability research.

Thinking of curriculum design as software engineering is more than just a cute metaphor. Software engineering is the discipline of delivering complicated systems that function as designed. We can take some of the well-understood tools and processes of software engineering and apply them in curriculum design. For example, unit testing teaches us to define both incoming requirements and outgoing interfaces for each module in a system. If we define both outcomes and “incomes” for all courses, we can create a map of all legal sequences involving that course and, by matching the various sets of outcomes to incomes, make certain that students will be best prepared to perform in the course at the time that they take it.

By adapting the tools of software engineering to curriculum development, we can make the entire process easier and more likely to succeed, while providing more reliable objective data on the success of the degree program!