Why learn & understand when you can search?

A recently and widely (in my nerd circles) shared XKCD comic featured ineffective sorting techniques. The alt text (what you get when you hover over the comic) proposed an additional sort:

StackSort connects to StackOverflow, searches for 'sort a list', and downloads and runs code snippets until the list is sorted.

Internet nerdom being fairly OCD, someone (Gregory Koberger) of course went and implemented this, and it works!

As Gregory says, this is potentially a security nightmare waiting to happen, so it’s not clear that you should actually run his code. Being a brave and foolish (and somewhat careful) soul, however, I’ve fallen on this sword so that you don’t have to, and I can confirm that it works. After trying several dozen StackOverflow pages (most of which yielded either “Could not extract a function to run” or “Contained potentially bad code”), it stumbled across a working version of Quicksort in JavaScript.

Ta Da!

The success of this approach, however, does suggest interesting things about how people approach certain kinds of problem solving these days. Where “old people” like me would have bought a book to learn something new, my students are much more prone to assemble a patchwork understanding from tons of Googling. While I think this often leads to a quite fragile and incomplete understanding of the topic at hand, it is often sufficient to get them through what is assigned. In other words, they’re very skilled at answering the question that was posed, which was itself often somewhat shallow because that’s what we all have time for. So while faculty would like to think that we’re creating experts (whatever that means) in certain topics, we rarely have the time to give them assignments and tasks that require a deep level of expertise.

In the land and time of books, we might have believed that everyone read and understood the 8 assigned chapters, but the assignments almost certainly didn’t strictly require that. In fact I’m willing to bet a whole lot skimming actually went on that was not so different from the Googling that happens now. The difference is that when I skimmed a book, there was a reasonably coherent thread connecting the dots that were touched on. “Skimming” the Internet, however, is a much less coherent experience. The authors, examples, and assumptions aren’t the same from search result to search result. Worse (in computing) the versions aren’t necessarily the same, so we often end up with inconsistent and downright contradictory results! A few years ago I taught a class that used Python 3, and it turned out that almost all Googling pointed us at Python 2 examples and answers, which lead to all manner of confusion amongst my students.

So call me old-fashioned, but I still like a book, even if it’s an e-book, when I’m learning something conceptually new, as I do really appreciate a coherent voice and structure. If I need to remind myself of a library function or piece of syntax, it’s to the Googles. If I’m learning something that’s very similar to something I already know, then I’m happy with on-line docs if they’re well written. If, however, I’m expanding my horizons in more significant ways, a book is still the thing.

Related posts

Huzzah for the mighty intarweb once again!

A simple web search saved a lot of headache in installing unnecessary software to allow Mac OS X to monitor our new APC battery backup system.

Over the holidays we bought a APC home battery backup system for our “server” iMac. This came with their PowerChute software, which allows the backup to notify the computer when the power goes out, so the computer can shut down semi-gracefully when the battery gets low during an outage.

I was debating whether to install this software (which in theory supports Mac OS X), so I did some Googling first. There wasn’t anything very concrete, but there were some suggestions that Apple had included this kind of software in OS X at some point, and that Apple’s was much better than APC’s.

So I plugged in the provided cable that ran from the battery backup to a USB port, and Lo! and Behold! it immediately recognized the battery backup and nifty new options appeared in the Energy Saver panel of System Preferences! I set it to shutdown when the battery was down to 95% of capacity, and unplugged the battery backup from the wall, and it shut down beautifully. Without APC’s software.

Problem solved!

Thanks to all those that contributed to the many technologies great and small that allowed me to figure this out quickly and without having to call people, or post questions, or any of those annoying things.

Related posts