Jeff Jacobs

PhD Candidate · Political Science · Columbia University · · He/Him/His

I am a PhD student in the Political Science Department at Columbia University, an Adjunct Instructor at NYU's Center for Data Science, and a member of Columbia TextLab within Columbia's Economics Department. I am primarily interested in studying the history of political thought, "computational political theory" (Natural Language Processing + Network Analysis + Political Theory), and the history of left-wing movements in the Middle East.

I am currently finishing my dissertation, a collection of three essays applying computational text analysis tools to historical text collections in order to quantitatively study the role played by ideology in instances of mass political mobilization throughout history. The first looks at the nationwide grievance books (cahiers de doléances) proffered on the eve of the French Revolution, the second links the global dissemination of Marxist texts during the 19th and 20th centuries with subsequent Cold War-era ideological struggles throughout the Third World, and the third compares the underground communiqués (Bayanat) of different political factions vying for influence over the collective actions of the First Palestinian Intifada.

Before coming to Columbia, I worked as a Research Economist in UC Berkeley's Department of Economics and Haas School of Business. Prior to UC Berkeley, I completed my MS in Computer Science at Stanford University, where I worked as a Research Assistant in the Stanford Network Analysis Project as well as the Department of Economics. As an undergraduate student at University of Maryland, I studied Mathematics, Computer Science, and Economics.

In my free time I enjoy making music, reading, and clumsily trying to learn Arabic. Feel free to email me with any questions or comments!

Download CV

You can download my CV here (Last updated July 27, 2020)


Monopsony in Online Labor Markets

Arindrajit Dube, Jeff Jacobs, Suresh Naidu, and Siddharth Suri

American Economic Review: Insights (2)1: 33--46. 2020.

Information Cartography: Creating Zoomable, Large-Scale Maps of Information

Dafna Shahaf, Jaewon Yang, Caroline Suen, Jeff Jacobs, Heidi Wang, and Jure Leskovec

Proceedings of the ACM International Conference on Knowledge Discovery and Data Mining (KDD), 1097-1105. 2013.


Metaheuristic Approaches to Resource Scheduling in Heterogeneous Wireless Networks

Cristy Duan, Honghao Gao, Jeff Jacobs, and Weixiang Wu

Joint Mathematics Meetings (JMM). 2012.

Evolving Musical Counterpoint: The Chronopoint Genetic Algorithm

Jeff Jacobs and James Reggia

Proceedings of the IEEE Congress on Evolutionary Computation, 11-16. 2011.

Working Papers

How to Do Things with Translations: Cross-Lingual Phrase Embeddings for Translation Analysis

Last Updated September 1, 2018

"Simultaneous and Systematic Abolition": Automated Content Analysis of the 1789 Cahiers de Doleances

Last Updated June 1, 2018


scipot: Topic Modeling in Reverse

Trains an Author-Topic Model on a collection of \(N\) documents with \(M\) authors, then runs the model "in reverse" to generate synthetic documents via a user-specified Dirichlet mixture \((\alpha_1, \ldots, \alpha_M)\), where \(\alpha_i\) represents the probability of sampling from author \(i\)'s topic distribution when generating a new word. Updated June 3, 2020.

ngramdl: R functions for downloading and plotting ngram frequency from Google Books

Mainly a fix of the ngramr library to work with the latest version of Google's Ngram Viewer. Run github_install("jpowerj/ngramdl") to install the package directly from within R/R Studio (requires devtools package), then use ngram2csv(phrase_list, csv_filepath) to download, or ggram(phrase_list) to plot within R. Updated June 3, 2020.


Fi Hadal Habs: Text-Analyzing the Underground Communiques of the Palestinian Intifadas

Critical Media and Digital Studies Workshop

Columbia University, New York, NY, USA

October 2018

The Point is to Change It: Theoretical Innovation and Political Practice in the History of Marxism

2018 Graduate Workshop in Computational Social Science

Santa Fe Institute, Santa Fe, NM, USA

June 2018

Automated Content Analysis and the 1789 Cahiers de Doléances

5th Annual Politics and History Conference

University of Barcelona, Barcelona, Spain

June 2018

Word Embeddings: Can Vectors Encode Meaning?

with Katy Gero

NYC Digital Humanities Week

Columbia University, New York, NY, USA

February 2018



DSUA-111: Data Science for Everyone

Spring 2020, Summer-I 2020, Summer-II 2020

At Columbia

POLS4700: Mathematical Methods for Political Science

Fall 2018

POLS4710: Principles of Quantitative Political Research

Fall 2017

POLS1201: Introduction to American Politics

Fall 2016

At Stanford

CS109: Probability Theory for Computer Scientists

Winter 2014, Spring 2014

CS103: Mathematical Foundations of Computing

Autumn 2012, Winter 2013, Autumn 2013

CS221: Artificial Intelligence Principles and Techniques

Summer 2013

CS90SI: Learn Web Development Through Non-Profit Projects

(Developed curriculum for new one-credit Computer Science course)

Autumn 2013

At University of Maryland

CMSC420: Data Structures

Spring 2012

CMSC250: Discrete Mathematics

Fall 2011

MATH003: Developmental Mathematics

Fall 2010, Spring 2011

CMSC132: Object-Oriented Programming II

Spring 2010

Short Courses/Workshops

Web Development with Flask

Code for Palestine Summer Course

Ramallah, West Bank, Occupied Palestinian Territories

Summer 2018

Mobile App Development with Android Studio

Code for Palestine Summer Course

Ariha, West Bank, Occupied Palestinian Territories

Summer 2017

Game Theory and Mechanism Design

Stanford Splash! Program

Palo Alto, CA, USA

Autumn 2013, Autumn 2014

Pledge No Allegiance: America Through A Hip Hop Lens

Stanford Splash! Program

Palo Alto, CA, USA

Autumn 2014