We met for the first time the other day and worked together on a concept map of “race”. Pretty much everyone at Brown has thought about race somewhat, so our map is probably not typical. It is also clearly imperfect. But simply the process of trying to articulate in this way what we might mean by “race” was both challenging and enlightening. Below is what we came up with (we drew on Whiteboard and I redid it in Miro). (Note that you may need to zoom in with your browser to see some of the connecting words – a disadvantage of using the free version.) Comments welcome!
Teaching
Great Jewish Books, Yet Again
This will be the fourth time that I’ve taught “Great Jewish Books” (see here, here, and here for the other times). I’ve tweaked the assignments and tried to better represent women in the readings. I had abandoned teaching Gluckl of Hameln (not such a great book!), but after reading Natalie Zemon Davis’s brilliant treatment of it in her book Women on the Margins, I decided to restore it. I also tweaked the assignments again and intend (although it is not reflected explicitly in the syllabus) to more closely tie the weekly journal prompts to parts of Elements of Style (e.g., write this assignment using only the active voice) and provide more scaffolding for their peer reviews.
Now, on to figuring out whether we can meet outside on a regular basis so that we can take our masks off….
The syllabus, in pdf form, is here.
Wrapping Up: Introduction to Digital Humanities
We met once a week, and each class was divided between discussion of readings; reviews of existing web projects; and a lab (the syllabus is here). When teaching it again, I would think about making a few modifications:
- The readings were a bit heavy. Most weeks, we had to squeeze in time to discuss the readings, as we ended up spending most of our time on project presentations and labs. At the same time, the readings each week were more organically drawn into the conversations, especially about web projects – the web sites that we examined were, in any case, almost always mentioned in the readings so there was a connection. For example, we might read an article that deals with argumentation in digital history that mentions Scalar and Black Quotidian; examine Black Quotidian; and then do a lab in Scalar. In the future, I might try to scale back the readings to make these connections even more tightly, and perhaps explicitly categorize other readings as recommended rather than required.
- We experimented early with students taking responsibility for and presenting the assigned web sites in class. They really enjoyed this (as did I) and so we continued. Each class we aimed for three 20 minute presentations/discussions about the web sites. I will more explicitly build this into the course. At the same time, I will be more explicit about the nature of these presentations. Something along the lines of:
- Before class, everyone will look closely at all of the assigned web sites, and annotate them using hypothes.is. [I originally wanted to use hypothes.is for student annotations on readings, but as the semester progressed I thought that it worked better for annotating web sites. We used a private group that I created just for this purpose (although there was occasional confusion about groups when people actually posted)].
- If you are assigned a project to present, plan on taking about ten minutes to present it, with the goal of about ten minutes of discussion to follow. Your presentation should focus on the topic with which we are dealing with that class. In the class on “Data Modeling,” for example, focus on how the project models their data. You should also touch on: (1) the goal of the project; (2) to what extent the project accomplishes, or has promise to accomplish, its goal; (3) the data used by the project; (4) what tools or methodology are applied to the data; (5) what you liked most about the project; (6) your most significant suggestion for improvement.
- The labs, usually conducted by the staff of the Center for Digital Scholarship at Brown, were great but ended up being a bit lecture-heavy. Moving forward, I would want to give more explicit directions to students about which tool(s) they should look at in advance; which tutorials they should complete (there are many excellent ones online, especially at The Programming Historian). Then labs would be more hands-on, with exercises to complete.
- Project presentation. In this course, I had left the final project requirement a bit vague. I now have a clearer sense of what would work, which I can make more explicit from the beginning of the course. About two-thirds of the way through the course, each student presents their project in a workshop format. The “project” here means the full vision of the project. What do you want to accomplish and why is this format the best way to accomplish it? What data will you use and how will you acquire and model it? What tools will you use for analysis? How will you present and preserve it? What is the workflow? Are there relevant ethical issues? These presentations, which have to be relatively short, will be discussed in class.
- By the last day of class, each student will have developed a working prototype or “proof of concept” digital project that we will share and discuss in the class. We might use hypothes.is to offer feedback. After this discussion, though, I do not expect any more work to be done on the prototype.
- The final, written assignment. It is due during Finals Week. These are the guidelines I used for this class:
Your final project is a written document that takes the rough form of a grant proposal. Think of it as a road map that you use to think through the various sticky issues – theoretical and practical – of your project and to convince a reader that you have. It should be single-spaced in 12 point font, and will probably be 7-10 pages. We’ve been over the components of such a document in class, and as you put yours together largely follow the NEH guidelines. Specifically, and to repeat, it should include:
1. An explanation of your research question and/or public history goals, what you want to create to answer to it, and why a digital project in this form is the best way to meet your goals. This should be no more than a page and refer to relevant scholarship (use in-line references).
2. An “environmental scan”. What digital sites, projects, and tools are most relevant for your work, and why? Any models for what you want to do? Embed the links. This should be about a page.
3. Data. What is your data and where are you getting it from? Are there special features of your data that, for example, make it hard to work with? Is it already in digital form or do you need to digitize it, and if so, what is the plan? This might be up to a page.
4. Data modeling. For your project, what will the data look like? Why did you pick that way to model your data and not another? What are the pros and cons of your choices? This will probably be about two paragraphs.
5. Analysis and Dissemination. What platform, tool, or tools will your final project use? Why that platform? Are there any challenges that you still need to overcome to use it? About a page.
6. Workflow. You already have tested workflows for your prototypes. Outline, with specific target dates and tasks, what needs to be done to accomplish the goal (which may, at this phase, still be short of the final vision). Try to be realistic and highlight tasks that you anticipate being potentially problematic. This should be about 2 pages and is in many ways the heart of the proposal.
7. Data preservation. Each of you is creating new digital data. You never know how it could be useful to others! How will you preserve it and make it accessible? What metadata will you use and how will you use it? This is just a paragraph or two.
8. Legal and ethical issues. Are there any legal or ethical issues that you need to address?
9. Budget with justification. This is optional, but you might want to try your hand at it. Budget also means accounting for time – what do you need, in terms of time, money, and other resources, to realize your vision? How much time will each phase take? Look online to see how you can get the approximate figures you need.
10. Bibliography. All written and online references.
This has been, obviously, a very strange semester. After we were evicted from campus, we had one Zoom meeting for the project presentations and then went asynchronously. For the last class (devoted to presenting the prototypes), students recorded and posted 15 minute presentations (they mainly used Panopto), each into their own discussion forum. The rest of the class was then invited (a soft requirement) to comment on the presentations of their classmates. I also watched all of them, went to the sites they created, and sent feedback. It worked well and gave students experience with remote and recorded presentations, which, unfortunately, looks to be a skill that will be increasingly necessary in times ahead.
Jews, Coronavirus, Digital Humanities, etc.

Except, of course, I’m not anymore. Better: I’m paused. I’ll pick the courses back up, online, in a bit over a week.
The pause has been highly unnerving, but has also given me a little space and time to play around with an idea that came up in the last couple of meetings of my “Antisemitism” class. The idea of Jews as contagious and spreaders of disease is a very old trope (strongly connected to notions of a “pure” corporate body threatened by invisible outside forces). With no empirical evidence whatsoever to blame Jews for the outbreak of the novel coronavirus, is such a theory nevertheless afloat, and if so, what does it look like?
While looking at the usual antisemitic websites can provide some insight, I thought it might be interesting to explore Twitter. My original approach was indirect: If we simply counted the number of times Jews were mentioned in tweets over the course of the last few months, do we see any significant upticks? I posed that question to my class, played around for a couple of hours to see if I could answer the questions, and then – frustrated by my inability to get anything to work – was engulfed in the usual stuff, and then mayhem.
Over the last couple of days, though, I’ve had some time to return to this question and sharpen my digital humanities skills as well. This post is deliberately exploratory, meant to help beginners – like me – think about and apply analytical approaches to Twitter while also exploring the emerging discourse around the novel coronavirus. Does this exploration really yield anything useful? Maybe.
Step-by-step:
- My original plan called for simply counting all tweets that mention Jews over the last few months. Given the limits of Twitter, though, that proves harder than it sounds. One software packages, though, does promise to be able to do this: TWINT (found here). So I just needed to install TWINT and run it.
- That turned out to be easier said than done, and it is what originally frustrated me. I have some facility in using the command line on my Windows machine and with running Python, but it is pretty basic. Installing TWINT required me first to install “pip3” and “git” (I already had an Anaconda build of Python installed, although it took me forever to find where it was in my directory since it installed into “hidden files”), and to mess with the file paths so that everything can communicate with everything else. But I did get it installed and working!
- I then ran TWINT from the command line with the simple instruction to find all tweets that mention “Jews” from January 1, 2020, to today and to output the results to a csv file.
- About 20 minutes later, TWINT crashed with error messages. It had downloaded about a day-and-a-half’s worth of tweets that fit with my criteria (starting with the most recent), some 25,000. Investigating the error messages, it appears that that is about all Twitter allows at a single time. But it did generate the csv file! The file contained a mass of data about each of the tweets, including not just the tweets but all kinds of information about the tweet. There were, in fact, 34 columns of data.
- So my next thought was to keep running TWINT for each day or two and then amalgamating the data into a single file. I may yet do that, but first I thought it might be interesting to explore what a single day of tweets about Jews looks like.
- I found a great tutorial for working with Twitter data here, opened a new Python 3 Jupyter notebook, and worked my way through it, using my csv file. I can’t say that I understood every command (especially when it comes to navigating dataframes) but I knew enough to get it to work and to get a general sense of my data.
And some analyses:
Top ten tweets, by number of times that the tweet occurs (the count is the number on the right):
26 | https://songwhip.com/artist/137-music-tribe … | 43 |
---|---|---|
10211 | Jew | 21 |
10328 | Jews | 12 |
4631 | Conspiracy theory that Jews created virus spre… | 12 |
9377 | Islam permitted the marriage of Muslim men wit… | 9 |
13757 | Portugal declares official commemoration day f… | 8 |
17417 | Trump Declares Sunday ‘National Day of Prayer’… | 8 |
15495 | Thank you x | 7 |
9215 | Inside luxury resort run by Israeli spies to s… | 7 |
23870 | ???????????? | 7 |
Some of these are a bit peculiar, but digging back into the data helps. The first one is a link to a Christian ministerial music group. The fourth is, interestingly enough, about how others are antisemitically linking Jews to the spread of the coronavirus. What we do not have in this list is evidence that people are actually making this connection (but see this article, which is linked to one such tweet and is linked in my data).
Next, I did a hashtag analysis. Top ten hashtags (count on the right) in this group of tweets:
hashtag | ||
---|---|---|
0 | #Jews | 152 |
1 | #Bible | 131 |
2 | #God | 125 |
3 | #coronavirus | 81 |
4 | #Jew | 75 |
5 | #Israel | 61 |
6 | #Love | 56 |
7 | #COVID | 56 |
8 | #COVID19 | 45 |
9 | #Faith | 40 |
This is somewhat more interesting and concerning. Jews seem to be linked most commonly to issues of religion, but hashtags dealing with the coronavirus (numbers 3, 7, and 8) comprise a significant percentage of the total. Note, though, that this is out of a total dataset of about 25,000 tweets, so the relative total is actually quite low.
Next, I did an analysis of mentions, that is, twitter entities marked with an “@” sign. Top ten, with counts on the right:
0 | @realDonaldTrump | 56 |
---|---|---|
1 | @YouTube | 51 |
2 | @BernieSanders | 46 |
3 | @timesofisrael | 33 |
4 | @Rosenbergradio | 24 |
5 | @JayElectronica | 24 |
6 | @POTUS | 22 |
7 | @JoeBiden | 15 |
8 | @UKLabour | 14 |
9 | @CNN | 13 |
Numbers 4 and 5 relate to a spat over a potentially antisemitic song (for more, see this). The large number of mentions of media outlets is probably typical (stories from such sources are often tweeted); the large number of political figures and parties, though, seems curious. Digging a bit deeper into this aspect of the data – which I did not do – might help us to better understand it.
Back to hashtags. Which ones appear together with others? Only hashtags used ten or more times in my datafile are included:
Remember that this is a snap of just one day’s hashtags and so reflects a single, fast news-cycle. Hashtags relating to Jews are associated most frequently with hashtags relating to religion (with something is going on with #Hawaii and #Einstein in this news-cycle). Maybe reassuringly, hashtags about the coronavirus are not co-appearing with hashtags referring to Jews (although all, by definition, are in tweets that somewhere mention the term “Jews”). Of some concern, though, is the more frequent appearance of hashtags relating to the virus with #Muslims in these posts.
Finally, I subjected the data to topic modelling. Topic modelling is an analysis that shows which words most commonly group together. The code in the tutorial works (somewhat imperfectly, as you can see below, but good enough) to tidy the data before applying the LDA algorithm (the same one, I believe, used by MALLET). And, using 10 topics, the results:
(I had a problem with the column headings; the first two columns actually belong to Topic 0 and the last two to Topic 9.)
Some of these topics, reading down, are pretty easy to decipher: Topic 1 (after adjusting, as noted above), is about the Arab-Israeli situation. Topic 2 deals with Jews and race. Topics 7 and 9 come back to Jews and religion, particularly from a Christian perspective. Topics 4 and 6 are darker. The coronavirus is mentioned only in Topic 6, and even there has a low weight.
I originally set out with the hypothesis that Jews would be connected to the coronavirus. There are websites and people that make such a connection, but this preliminary exploration into a bit more than a day of Twitter data suggests that it is less common that we might expect. While it would be interesting to look at equivalent data over a longer period of time, and to track the topics over such a period as well, it looks like my hypothesis is largely incorrect.
That, at least, is a small bright spot in these very strange times.
New Course: Introduction to Digital Humanities
The result is a new course that I’ll be teaching (yes, that makes two new courses this semester, which is its own story), a graduate course (although I’ll take advanced undergraduates as well) called “Introduction to Digital Humanities,” the first time a course like this has been offered at Brown University.
The course has three primary goals. It should:
- Introduce you to DH as a field, with its own sense of theory, methodology, and best-practices;
- Give you hands-on training in the basic tools of DH;
- Facilitate the development of your own project in DH, whether at an early stage (e.g., a concept paper, research paper, or draft of a grant application) or a more developed prototype.
The syllabus is here. Comments welcome!