Month: May 2016

My Week in Review May 16 – 20

Tweet of the Week

Blog Writing

– On Wednesday, I put up a post about a Google Spreadsheet that I’ve built called Collector. The basic idea is that you can use the Google sheet to search through the annotations made using the web annotation tool. You can enter various search terms like user name or url or tag or pull all annotations by a group. The system will create a google sheet with up to 200 annotations (working to increase this right now), and create a table that counts the number of annotations by user across various urls. This last piece was the initial reason for the project. I wanted to build a tool that allowed instructors to quickly see the activity of their students in a group. It could similarly be used by a research group or anyone else. Both the sheet and the code are open, so please read the blog post or check out the sheet itself.



– This week has been quiet. I’ve been working with Keegan Long Wheeler on our GOBLIN project, and I’m meeting today with Lauren Horn Griffin to finalize plans for a workshop we’re doing next week on using in the classroom.


– The OU Spring semester ended on Sunday, so I spent all of Monday and Tuesday calculating and entering grades and working with students to find those missing assignments that meant the difference between a C and a B. Hitting submit on Tuesday provided a definite sense of closure on the semester.

– There was supposed to be an 8-week summer version of one of the courses that I facilitate kicking off this week. However, we had to cancel it due to low enrollment. The online course is heavily discussion based and we didn’t think the handful of students enrolled would have a good experience in the course. As late as last week I was reviewing the course contents making sure the materials were all properly titled and tagged in our LMS and fixing several broken image and web links.  Thursday I found out that the course was being cancelled.  Rather than finishing my review of the last couple of units, I talked to the professor and then contacted the students. I then contacted the registrar’s office, our LMS support people, the office that helps concurrent enrollment students, the TAs, etc. Working with a professor to design a class is an extended process, and I had lost track of how many people were involved.  Cancelling the class required that I email or call all of these people in a couple of hours. This week I’ve been finishing the clean up and helping to either get students refunds or move into the June or Fall versions of the class. Next week, I’ll do the QA on the June class and start back into the course management cycle anew.

OU Create Maintenance

– Minor upkeep helping students activate new accounts and helping faculty transition from their old html only sites into their new LAMP domains.

Reading and Viewing and Gaming

– I have watched a ton of basketball lately. As an OKC fan, it’s been an up and down week, and I’m looking forward to Sunday.


– I have been painting (enamel + polycrylic) my kitchen cabinets all week, and it looks like I’ll be working on them for at least another week. Before and after pictures to come. Collector

One of my favorite online tools is It allows you to annotate web pages as you would a book. When you’re using you can highlight text on a webpage or add notes.

The tool can be used to take private notes, but it becomes all the more powerful when you use it for collaborative reading. By making your notes public or sharing them with a chosen group, you can share your take on a reading as you’re reading it. My colleague Lauren Horn Griffin recently wrote on the uses cases for this web annotation within a university setting. She identified five possibilities

  • Reading Accountability & Promoting Active Reading
  • Collaborative Reading & Modeling
  • Public-but-Independent Research
  • Instructor Feedback/Self-Assessment
  • Citations

You can launch the tool by appending “” before a URL. To annotate this post you would visit You can also download an extension for Chrome to be able to launch Hypothesis quickly on any website. Site builders can also install directly into WordPress, Drupal, or Jekyll sites, or pretty much anything else that allows javascript.

Here is how a recent LA Review of Books article on Digital Humanities looks when viewing the public annotations:

A screenshot of an article in LA Review of Books on Digital Humanities with the Hypothesis tool active Collector

In order to make it easier to track activity in, I created a program called Collector. The idea is that you can type in user name, a URL, a tag, or a group ID and click the button to see all of the related annotations. The program will create a new sheet with an archive of up to 200 annotations based on the search terms.  It will then create a third sheet that will count how many of these annotations were made on each URL in the set by each user.


As with itself, I see several use cases for this. The original idea for the program was to allow a course instructor to quickly see the activity of their students. If an instructor asks her students to annotate three different articles, she could use this app to assess whether or not each student made their annotations. The easiest way to do this would be to set up a group in for the class.  The instructor could then enter the group ID and her user authorization token (a unique password that allows you to pull your private and group annotations) into the system. When she clicked the button, she would see an archive of the annotations and a count of activity for the students across the three readings.

Other use cases as I currently see them include:

  • Studying how various tags are being used within
  • Tracking recent public activity for
  • Breaking down activity on a particular reading by user
  • Tracking one of Remi Holden’s  annotation flash mobs

I built the Collector as an attempt to make it easy for people to access annotations in a format that could then be analyzed. I think the counter that gets built on the third sheet is handy, but it’s not going to be useful for everyone. As I continue to refine this project, I am going to add some different visualizations of the annotation archive and I will extend the number of annotations that can be pulled at a single time. I welcome feedback and feature requests and encourage everyone to modify the project to best suit their needs.

Please try out the new Collector. You can follow this link to get a copy of the spreadsheet and collect annotations. You can also view or modify the code by choosing “Script Editor” from the Tools Menu.

A few notes on the Code:

The code for the program (shared below) is written in Google Scripts. This is a modified javascript that features a library of functions to facilitate interaction within and between the Google Docs Apps. While writing this particular code, I learned a few tricks for collecting and passing the parameters for the API search and how to pass the authorization token. You can run Google’s version of a GET request, UrlFetchApp.fetch, woith or without an authorization token and other advanced options. To run it with the advanced options (to pass headers like authorization), I formatted the ‘headers’ as a js object, passed them into a second object called ‘options’, and then passed ‘options’ a parameter into UrlFetchApp.fetch.

This probably isn’t interesting to most people, but it took me a long time to figure out and opens the doors to all sorts of other APIs that require authorization. Google Script is a little particular and APIs vary, but I learned a lot about APIs while figuring out the authorization, search parameters, and how to parse the returned json. After writing an initial version of the code, I found better solutions to many of my questions in some of Jon Udell’s API code – so thank you Jon and be sure to check out his site:

The bit of code at the end that sets up the third spreadsheet for counting annotations by user and URL is also pretty nifty. I had to figure out how to use arrays to populate Sheets ranges and then played with the archaic R1C1 notation to create dynamic formulas for the sheet. Feel free to hack at or extend the code for your own use. Chunks of the code may also be useful for working on other API projects. As with most of my work, feel free to take whatever is useful.

End of code

My Week in Review

Tweet of the Week

Blog Writing

– Just this.


– I have been reviewing the content for the History Channel summer courses and reviewing the logistics for the courses with the registrar’s office. This is much more complicated than normal courses because 1) It’s an online course; 2) We encourage non-OU students to take the course for credit; 3) There are three formats for the class (4-week, 8-week, and 16-week); 4) the class is cross-listed between two colleges; and 5) The TA who has been working on the course for the last three semesters, Matt Caire, just defended his PhD and will be leaving soon.

OU Create Maintenance

– A couple of students who had signed up for blogs back in 2014 wanted to cancel their accounts. Technically this was a new challenge, but more importantly it raised the issue of why students may or may not want to keep their domains as they move out of the University setting. Andrew Rikard addressed the issue of student domain ownership in his blog post “Do I Own My Domain If You Grade It?” A big part of the Domain of One’s Own and OU Create projects is teaching digital literacy and managing online presence, but we need to talk more with students about their interests and concerns with these projects.

Reading and Viewing and Gaming

– I read the LARB critique of Digital Humanities. My colleague, Lauren Horn Griffin and I both annotated the article with on Monday, finishing just before the flashmob annotation started by Jeremy Dean, Susannah Simmons, and Remi Holden. I’ve also read most of the follow up blogs, many of which are listed in this morning’s piece from Inside Higher Ed.

– We cancelled DirectTV this week and shifted over to Sling TV.

Keegan Long Wheeler hosted the #games4ed twitter chat last night and focused the discussion on OER in Educational Games. Keegan and I have been working pretty heavily on the subject, so the discussion was really useful for us.


– We are getting new kitchen countertops today, which is exciting and means my house is a complete wreck:

Powered by WordPress & Theme by Anders Norén