May the odds be ever in your favor!

Valerie Strauss of the Washington Post has written a timely article comparing the current college admissions process to The Hunger Games. Many of us realize that the game has become hypercompetive and driven by rankings. What is sometimes lost in this discussion — and which Ms. Strauss is quick to remind us of — is that the exploratory essence of education is often boiled off in this process. High school is a critical formative time for young people, and turning it into a life and death competition robs them of their own experience.

“Only the most confident and secure students — or perhaps hardened — emerge unscathed, those who despite the pressure and hostile odds, can remain true to their interests, values and sense of self. I have found that the young men and women who thrive in college are those for whom the college search was one of introspection, exploration and personal development rather than a contest. The applicants who focus on fit, program and community as they consider higher education are the individuals who truly find happiness. As parents and educators, we must examine ourselves and what we are doing to the childhood of our kids. Is life so grim, so desperate? Is the future that scary or do we trust that there are many paths to fulfillment, happiness and success?”

I believe that education is important, and the right college or university can definitely make a tremendous difference in a person’s life and career. But the best college is not necessarily one that tops the rankings. Students working in an environment that suits them can outperform arguably superior students who are struggling with finances, culture, or any of the countless other factors that weigh so heavily on the young. For some, this might be a giant state university with a winning football team. For others, the right place could be a private liberal arts school in a tiny town.

If college admissions discussions are in your future. I encourage you to read the article and take the pledge.

Alljoyn update

I promised an update on Alljoyn some time ago. I haven’t completely given up on the Allseen Alliance and its flagship product, but my efforts are on hiatus. I was able to compile Alljoyn for the major platforms (eventually), but was unable to establish communications between any of the components. I suspect this has more to do with my setup than the software itself. I plan to set up a proper lab installation for comparative testing in the coming months. I will post more updates then.

This is your brain on VR

A team of UCLA scientists recently published a study in Nature Neuroscience  indicating that the hippocampus (at least in rats) reacts differently to virtual environments than to real ones. (If — like me — you are not a neuroscientist, you may prefer this news article to the paper.) The hippocampus is a region of the brain heavily involved in forming memories, and in creating spacial maps.

In short, the researchers found that a specific type of neural activity that is present when rats explore a physical space is completely absent when the rats are given a purely visual immersive simulation to explore. The behavior is more or less normal in both environments, and memories are created, but some part of the process of creating a physical spatial model seems to be missing.

We are a long way from drawing conclusions about specific advantages or disadvantages related to humans performing learning or other tasks, but this research is a reminder that we still have a lot to learn about how we learn. It will be important for us as computer researchers not to make assumptions about what VR can and cannot do.

Raspberry Pi enclosure

The release of the Raspberry Pi 2 reminded me that I produced a prototype enclosure for the original RPI a few months back. Bored with the laser cut boxes that were available, I set out to do something a little more interesting. While there are a few small adjustments needed, and the design will have to be updated for the new card, I was relatively happy with the results.



The pieces cut cleanly from 2 pieces of 12×12 in acrylic. In addition to updating the design, I plan to include a system for physically linking the boards with other components, as well as a number of options for mounting to different surfaces.  Feedback and ideas are welcome.

Computational thinking

Computational thinking is a concept that I first heard in a talk by Jeannette M. Wing during her time at the National Science Foundation. If our society and economy are built on information, much like the Industrial Revolution was powered by engines, then every child being educated today needs to understand the core concepts of computer science. At least that’s how the thinking goes.

In large part, I agree. Computation began the transformation of science, industry and the military before I was born, but I have been able to watch as business, music, art, entertainment, and countless other areas of endeavor were transformed practically overnight. Now law, politics, and the humanities are undergoing this same change. The ability to abstract and automate problems may be more important to tomorrow’s school children than algebra word problems ever were to us. I suppose time will determine the utility of the concept of computational thinking. As a buzzword, it is gaining quite a bit of traction.

Computer scientists and others learn these skills as a matter of course as a side effect of learning to program. For others, the path is not so straightforward. I collaborate with a number of artists, musicians, humanists, and other academics from non-technical fields, and I have been looking for been looking for materials that could form the basis for a (for example) graduate level course of study in computational thinking aimed at non-scientists. For the most part, I haven’t found much. There are a number of good sources for an overview of the field, such as the IAE-pedia article on the topic. Other sources are aimed more at K-12 students. Information that is geared toward my target domain has been more elusive.

I plan to spend much of this semester collecting links, citations, and other resources, and posting them here. Check back if you are interested. I would appreciate feedback.


Bad Teachers

I spend much of my work day with tenured and tenure track professors at a Research 1 university. These men and women are expected to acquire and manage research grants, recruit and supervise graduate students, maintain a world class research program, organize conferences, and serve on a number of departmental and college committees. Oh, and they teach one or two classes a year.

Unfortunately, for too many of them the teaching is an afterthought — an extra duty with which they are saddled, to be executed as expeditiously as possible. Teaching is not what they are interested in doing, and it has little or nothing to do with their career advancement.

I know how hard these professors work, and I have great sympathy for the pressures on their time. But this is unacceptable. I also spend a lot of time with students, and I know how disillusioned and frustrated they become with instructors who are uncaring or incompetent.

So I’m calling you out, bad teachers. Some percentage of your salary is paid by these students, and they deserve your best effort. Moreover, for people who are supposed to be long view, big picture thinkers, you seem oblivious to the fact that your students are the future of your department. They will establish your reputation in the community. Your future endowments will come from them. Or not. So stop acting as if they don’t matter. Just stop it.

I’ve heard your excuses, and I am not impressed. I took classes from instructors who were socially inept, under-prepared, English-disadvantaged, and that were still better teachers than many of the professors I know. I don’t buy that your students are too poor to be taught effectively. Flipping through the textbook publisher’s Powerpoint slides in class and then testing students on material you may or may not have discussed is not teaching. It’s a waste of everyone’s time. The worst group of students I ever taught still learned the important things. I made sure of it.

In the end, there are a small number of things that will improve your teaching. And they don’t even take much time. First, care. Just care. About your students. About your topic. About the hour and a half you are spending with them twice a week. Engage the people in the room. Look them in the eye. Ask them questions. Encourage them to ask you questions. Play a game with yourself where you notice when someone gets lost or bored. When all else fails, get them out of their chairs for five minutes. Put them in teams and get them to solve a problem together.

Second, don’t tell them what the book says. Tell them what you have learned. Tell them why you love this subject area. (If you don’t like your chosen specialty, you should consider a career change.) Tell stories. Ask them to investigate questions that come up in class. Have them grade each other’s homework. They will want to focus on grades, because we have taught them that is all that is important. Don’t let them. Return time and again to what’s important, and why.

Last, demand students’ best effort and attention. They have demands on their time, as well, and sometimes assignments will be missed. But if they expect you to grade something, they should be prepared to make it gradable. Don’t be afraid to put a big red ‘X’ across homework that is half-assed (technical term). If you are giving them your best effort, then they should at least have the decency to be ashamed when they don’t reciprocate. Those who don’t try are not worth your effort, and can be ignored without a second thought.

Notice I didn’t say anything about being prepared, or flipping the classroom, guest lecturers, or creating innovative assignments and activities. I do all of those things, and I think they make for a superior learning experience. But they are not necessary to make a class worth taking. Or teaching. All that really matters is that you give of yourself, you respect the time and money that students are investing in your class, and that you give them a glimpse of why you became a professor in the first place.

There, I’ve said. Feel free to tell me all the ways I’m mistaken. That’s how we learn, right?

AllJoyn and Linux

For some reason, there are no AllJoyn binary packages for Linux. Of course, most Linux users don’t mind building things from source, or they wouldn’t be Linux users.

I used this document as a guide to set up the development environment. There are a few other places in the documentation that list LInux prerequisites, but they were neither complete nor entirely correct. There are a couple of minor typos, and I had to make a one or two library substitutions for my Ubuntu 14.04 installation, but I was able to build the system. I didn’t bother with Javascript bindings or xulrunner, but I did find it helpful to install mono-gmcs to avoid errors from the Unity build package. In fact, I am installing Mono and the Gecko libraries on all development platforms, just to make it easier to deal with the build system.

Also, given that Sun requires an account to download archived JDKs and I did not feel like finding my password — and the fact that I am a little uncomfortable running really old Java — I went with the Java 7 SDK from Oracle. I had tried with the OpenJDK version 7, and did have some problems. Despite the dire warnings in the documentation, everything built fine. This may cause problems for me down the line, but so far everything has run as expected.

I had to define the LD_LIBRARY_PATH environment variable before the C++ samples would run, but that was my only problem. I had an issue with a thread-based exception in the client, but a little internet searching tells me it’s related to a bug that has already been fixed. I assume it will disappear with the next update to the source.