New Page: Links

I haven't updated this website for a while. I added a new page "links" to this website. It shows some websites and tools that are useful in research and coding. I will regularly update it.


The Template Location of django-tables2

The django-tables2 is a excellent package to create dynamic HTML tables in Django apps. When I used it the first time, I spent hours to solve a TemplateDoesNotExist error.

I usually store the html templates of an app in [app name]/templates/[app name]/. The Django official documentation suggests this practice to avoid potential template conflicts among different apps. When I used the django-tables2, I put templates for rendering tables under the same path. Then, TemplateDoesNotExist. I searched Github and Stack Overflow, and no one shared the same problem.

I went back to the documentation and read it word by word. I finally found out that the path in the example is tutorial/templates/people.html. That means I should put my django-tables2 template under

[app name]/templates/


[app name]/templates/[app name]/

A lesson learnt.


A Short Video Introducing My Dissertation

Last year, I made a video for the Penn State Graduate Exhibition 2016. I finished it within one day. Most of the time spent on adding the subtitle. Although the structure of my dissertation has some changes, the topic and direction remain the same. This video seems to be shoddy. I should make a better one this summer.


eduroam at Penn State

Penn State finally joined eduroam. “eduroam (education roaming) is the secure, world-wide roaming access service developed for the international research and education community.” In other words, Penn Staters can use their Penn State WiFi credentials (PSU ID) to access WiFi services when visiting other eduroam participating institutions. I have used eduroam in Hong Kong, Taiwan, and different cities in US. Find out the participating institutions here.

Visit, and follow the instruction to download your eduroam profile.


“Note” and “Related” in Zotero

Today, I met Ellysa. We exchanged a lot of great ideas about Zotero. When I showed her how I use “Note” and “Related” functions in Zotero, she was a little bit surprised. I thought everybody uses them the same way I do, but I was wrong. I hope the following cases can bring you some innovations.

Books and Their Reviews

During the pre-ABD period, I needed to write a lot of book reviews as assignments. In order to know how scholars reviewing books, I used Zotero to collect a lot of book reviews. Since one book may have several reviews, building relationships between them can be very handy. When I search for the same book next time, I can easily jump back and forth between the book and its review.

I also built relationship between books or articles that respond to each other. I made a “child note” under the parent item called “those agree with X’s argument in (article or book title)”. Then I added all “related” items to this child note.

A Workaround for the Multi-language Publications

A lot of authors in my Zotero database write in multi-language. For example, Professor Ronnie Hsia’s publications are in English and Chinese. In his Chinese publications, he uses his Chinese name 夏伯嘉. If I want to find out all Professor Hsia’s publications in my Zotero databases, I need to search at least two times, once in Ronnie Hsia and once in 夏伯嘉. Here is my solution. I made a document item titled “Ronnie Hsia 夏伯嘉”.

I added a child note under this document called “Book”. Then I related Prof. Hsia’s English publications to it.

I added another child note called “書” (the Chinese character of book). This time I related his Chinese publications.

As a result, I can find out all his publications at one spot. I also use this method to map the academic networks. For example, I made a document item called “Professor B”. Prof. B has a lot of students. I added a child note called “Professor B’s student” and related all his/her students to this child note.
I hope these two cases can give you some ideas on using the “Note” and “Related” functions in Zotero. I believe making good use of them can turn your Zotero database into an excellent knowledge management system.