Too Nerdy to Facebook, Too Obscure to Tweet

Main menu

About Dan

I'm a Ph.D. Candidate in the Department of Sociology at Stanford University, studying economic and organizational sociology, globalization, the sociology of knowledge and innovation, and network analysis. Primarily, I examine how organizations manage, manipulate, and share knowledge within and across boundaries. In particular, my dissertation focuses on the relationship between skilled migration and the global flow of expert knowledge. I'm also a big proponent of computational social science. My other work is on diffusion within networks of social movements organizational collaboration, the spread of group identity in self-organized online communities, scientific collaboration networks, and measurement error in network analysis. You can find links to my CV, publications, working papers, teaching notes, and more at my website (www.danjwang.net).

Following up on the string of posts about software for network analysis, I recently taught a workshop for PhD students in the social sciences here at Stanford on using Python for network analysis. My session was part of a three day series of workshops introducing computational social science to students who are looking to get their feet wet. I’m posting a link (here) to the page on my website where you can download the materials I developed to teach the workshop, including commented scripts, sample datasets, and a few slides.

Some brief impressions: I’ve taught stats/methods for grad students before, but this was a different beast. Computational social science and network analysis are attractive areas for many grad students here, but without a ‘canon’ of some type to fall back on, it’s hard to know what to emphasize for students with little background. I ended up focusing more basic data and control structures in Python, which I thought would be more useful for understanding the way the networkx package handles inputs and outputs. I’m not sure that was the most effective approach, though–at least in terms of conveying why Python is a good choice for network analysis. Next time, I think I’ll try to integrate more substantive examples.

Also, inspired by Ben’s last post–maybe we should put a few network analysis packages to a speed test? I get this question all the time, and I usually just refer to my own anecdotal evidence, but it’s probably worth pitting iGraph, networkx, etc. across platforms against one another in calculating, say, shortest paths in a relatively large network. More on this later…