James Somers

New: The paradox of writerly rereading | Watching Birds | Toys | On the elusiveness of Uppercase Things | Six lines | A brief foray into vectorial semantics

I am an alumnus of the University of Michigan who likes to read, write, and write computer code.

On this page I have collected:

Writing

Articles marked by an asterisk (*) have received an unusual amount of attention.

TheAtlantic.com:

Blog (jsomers.net/blog):

Older stuff, pre-blog essays:

Stuff so old that it's only available thanks to the Internet Archive:

In The Bad Version:

On the Ginzametrics blog:

On the Pivotal Labs blog:

Books

This is a list of the books I have read since my first day at college (it's hard to remember anything before then), arranged roughly in the order I read them. I have pruned anything that I didn't read cover to cover. Below some of these I have provided links to relevant notes, commentary, excerpts, reviews, etc.

  1. Neuromancer, William Gibson.
  2. Raise High the Roofbeams, Carpenters and Seymour: An Introduction , J.D. Salinger.
  3. Narcissus and Goldmund, Hermann Hesse.
  4. What is Thought?, Eric Baum.
  5. My Belief: Essays on Life and Art, Hermann Hesse.
  6. Naomi, Junichiro Tanizaki.
  7. The U.S. Constitution.
  8. Demian, Hermann Hesse.
  9. The Mind's I, Douglas Hofstadter and Dan Dennett.
  10. Permutation City, Greg Egan.
  11. Swingers (screenplay), Jon Favreau.
  12. The Autobiography of Yukichi Fukuzawa, Yukichi Fukuzawa.
  13. The Good Soldier: A Tale of Passion, Ford Madox Ford.
  14. The Iliad, Homer.
  15. Freedom and Neurobiology: Reflections on Free Language Will, and Political Power, John Searle.
  16. I Am a Strange Loop, Douglas Hofstadter.
  17. The Waste Land, T.S. Eliot
  18. Perfectly Reasonable Deviations from the Beaten Track, Richard P. Feynman
  19. The God Delusion, Richard Dawkins.
  20. Zhuangzi, Zhuangzi.
  21. The Elements of Style, William Strunk Jr. and White, E.B.
  22. The Selfish Gene, Richard Dawkins.
  23. Lost in the Funhouse, John Barth.
  24. Three Lives, Gertrude Stein.
  25. Siddhartha, Hermann Hesse.
  26. Through the Looking Glass, Lewis Carroll.
  27. The Analects, Confucius.
  28. To the Lighthouse, Virginia Woolf
  29. The Animal Mind, James L. Gould.
  30. Darwin Among the Machines: The Evolution of Global Intelligence, George Dyson.
  31. Cosmopolis: The Hidden Agenda of Modernity, Stephen Toulmin.
  32. Narrative Thought and Narrative Language, Bruce K. Britton and Anthony D. Pelligrini (eds.).
  33. Life: What a Concept!, Freeman Dyson, J. Craig Venter, George Church, Robert Shapiro, Dimitar Sasselov, and Seth Lloyd.
  34. Evariste Galois, Laura Rigatelli Toti.
  35. The Art of War, Sun Tzu.
  36. A Portrait of the Artist as a Young Man, James Joyce.
  37. Everything and More: A Compact History of Infinity, David Foster Wallace.
  38. Thus Spake Zarathustra, Friedrich Nietzsche.
  39. Comeuppance: Costly Altruistic Signaling Punishment, and Other Biological Components of Fiction, William Flesch.
  40. Franny and Zooey, Salinger, J.D.
  41. Human Inference: Strategies and Shortcomings of Social Judgment, Richard E. Nisbett and Lee Ross.
  42. Cat's Cradle, Kurt Vonnegut.
  43. Welcome to the Monkey House, Kurt Vonnegut.
  44. Metamagical Themas, Douglas Hofstadter.
  45. Godel, Escher, Bach: An Eternal Golden Braid, Douglas Hofstadter.
  46. Industrial Society and Its Future, Theodore Kaczynski.
  47. Mathematics: A Very Short Introduction, Timothy Gowers.
  48. Hidden Order: How Adaptation Builds Complexity, John H. Holland
  49. A Mathematician's Apology, G. H. Hardy.
  50. A People's History of the United States, Howard Zinn.
  51. The Big Lebowski: The Making of a Coen Brothers Film, Tricia Cooke and William Preston Robertson.
  52. The Structure of Scientific Revolutions, Thomas S. Kuhn
  53. Ceci N'est Pas Une Pipe, Michel Foucault.
  54. Brief Interviews with Hideous Men, David Foster Wallace.
  55. Breaking The Spell: Religion as a Natural Phenomenon, Daniel Dennett.
  56. Dialogues with Children, Gareth Mathews.
  57. Remarks on Color, Ludwig Wittgenstein.
  58. Tao Te Ching, Laozi.
  59. The Diamond Age, Neal Stephenson.
  60. Hamlet, William Shakespeare.
  61. The Visual Display of Quantitative Information, Edward Tufte.
  62. Complications: A Surgeon's Notes on an Imperfect Science, Atul Gawande.
  63. Phantoms in the Brain: Probing the Mysteries of the Human Mind, V. S. Ramachandran.
  64. Dubliners, James Joyce.
  65. Autobiography of Malcolm X, Malcolm X with Alex Haley.
  66. Nine Stories, Salinger, J.D.
  67. The Pleasure of Finding Things Out, Richard P. Feynman.
  68. 1000 Most Important Words, Norman W. Schur.
  69. The Hedgehog and the Fox, Isaiah Berlin.
  70. Ulysses, James Joyce.
  71. Writing in Unreaderly Times, Kevin Smokler.
  72. Zingerman's Guide to Giving Great Service, Ari Weinzweig.
  73. On Bullshit, Harry G. Frankfurt.
  74. I Want to Be a Mathematician, Paul R. Halmos
  75. The Blank Slate: The Modern Denial of Human Nature, Steven Pinker.
  76. Snow Crash, Neal Stephenson.
  77. Godel's Proof, Ernest Nagel and James R. Newman.
  78. Winesburg, Ohio, Sherwood Anderson.
  79. The Equation that Couldn't Be Solved, Mario Livio.
  80. The Vagina Monologues, Eve Ensler.
  81. Anathem, Neal Stephenson.
  82. A Man Without a Country, Kurt Vonnegut.
  83. Systemantics, John Gall.
  84. The Dip, Seth Godin.
  85. Fear and Trembling, Soren Kierkegaard.
  86. Mythologies, Roland Barthes.
  87. The Stranger, Albert Camus.
  88. Getting to Maybe: How to Excel on Law School Exams, Richard Michael Fischl and Jeremy Paul.
  89. Proof, David Auburn.
  90. Coders at Work, Peter Seibel.
  91. Unaccustomed Earth, Jhumpa Lahiri.
  92. Six Easy Pieces, Richard Feynman.
  93. Harvey Penick's Little Red Book: Lessons and Teachings from a Lifetime in Golf, Harvey Penick.
  94. Lolita, Vladimir Nabokov.
  95. How Fiction Works, James Wood.
  96. This Craft of Verse, Jorge Luis Borges.
  97. Envisioning Information, Edward Tufte.
  98. The Nine, Jeffrey Toobin.
  99. Girl With Curious Hair, David Foster Wallace.
  100. The Best of Isaac Asimov, Isaac Asimov.
  101. The Art and Craft of Judging: the Decisions of Judge Learned Hand, Hershel Shanks.
  102. Junk Mail, Will Self.
  103. Tinkers, Paul Harding.
  104. Surely You're Joking, Mr. Feynman!, Richard Feynman.
  105. The Human Stain, Philip Roth.
  106. Gang Leader for a Day, Sudhir Venkatesh.
  107. Story of My Life, Jay McInerney.
  108. The Road, Cormac McCarthy.
  109. Wise Choices, Apt Feelings: A Theory of Normative Judgement, Allan Gibbard.
  110. Zen Flesh, Zen Bones, Paul Reps and Nyogen Senzaki, eds.
  111. Inside "Jeopardy!": What Really Goes on at TV's Top Quiz Show, Harry Eisenberg.
  112. The Chomsky-Foucault Debate on Human Nature, Noam Chomsky and Michel Foucault, ed. John Rajchman.
  113. A Mathematician's Lament: How School Cheats Us Out of Our Most Fascinating and Imaginative Art Form, Paul Lockhart.
  114. Look at the Birdie, Kurt Vonnegut.
  115. The Catcher in the Rye, J. D. Salinger.
  116. Dune, Frank Herbert.
  117. Wampeters, Foma & Granfalloons (Opinions), Kurt Vonnegut.
  118. The Little Schemer, Daniel P. Friedman and Matthias Felleisen.
  119. Explaining Consciousness: The Hard Problem, ed. Jonathan Shear.
  120. Armageddon in Retrospect, Kurt Vonnegut.
  121. Communication With Extraterrestrial Intelligence (CETI), Proceedings of a conference held at the Byurakan Astrophysical Observatory, Yerevan, USSR, 5-11 September 1971, edited by Carl Sagan.
  122. The Man Who Loved Only Numbers: The Story of Paul Erdős and the Search for Mathematical Truth, Paul Hoffman.
  123. Honeybee Democracy, Thomas D. Seeley.
  124. The Bed of Procrustes: Philosophical and Practical Aphorisms, Nassim Nicholas Taleb.
  125. Cryptonomicon, Neal Stephenson.
  126. For a Breath I Tarry, Roger Zelazny.
  127. How Animals Work, Knut Schmidt-Nielsen.
  128. How the Mind Works, Steven Pinker.
  129. And Then We Came to the End, Joshua Ferris.
  130. Le Ton beau de Marot: In Praise of the Music of Langauge, Douglas Hofstadter
  131. Yours Ever: People and Their Letters, Thomas Mallon.
  132. Protagoras, Plato.
  133. One Two Three... Infinity: Facts and Speculations of Science, George Gamow.
  134. The Screwtape Letters, C. S. Lewis.
  135. The Martian Chronicles, Ray Bradbury.
  136. Star Maker, Olaf Stapledon.
  137. Pathologies of Power: Health, Human Rights, and the New War on the Poor, Paul Farmer.
  138. C. S. Lewis's Lost Aeneid, C. S. Lewis, ed. A. T. Reynes.
  139. The John McPhee Reader, John McPhee, ed. William L. Howarth.
  140. Let the Great World Spin, Colum McCann.
  141. Maximum City, Suketu Mehta.
  142. Field Notes on Science and Nature, ed. Michael R. Canfield.
  143. Zodiac, Neal Stephenson.
  144. The Best American Essays (2010), ed. Christopher Hitchens.
  145. The Quest for Artificial Intelligence: A History of Ideas and Achievements, Nils J. Nilsson.
  146. Beatrice and Virgil, Yann Martel.
  147. Angels and Ages: A Short Book About Darwin, Lincoln, and Modern Life, Adam Gopnik.

Papers Folder

On my computer I keep a folder called "papers," in which I collect PDFs (and rarely .DOCs) of good, print-published academic writing. I have reproduced this folder on the web here. Hopefully the file names are self-explanatory—if not, or if there is some paper you're after but can't find, let me know.

Code

What follows is a small but somewhat representative sample of the code that I've written:

  1. Jimbo Jeopardy! is a playable version of the j-archive. It lets you play more than twenty years worth of real Jeopardy games. Here is a link to the github project page. You can read a blog post about it here. Or click here to play now!
  2. After Adam left, I rewrote BookTour.com in Ruby on Rails.
  3. With two other students, Michael Bommarito and Jon Zelner, I built a small system to help researchers at the University of Michigan's Center for the Study of Complex Systems manage and analyze data from big runs of agent-based model simulations. We were funded by Google as part of their Summer of Code (2008). Here you can download some of our code.
  4. As discussed in this blog post, I tapped into the Google Directions API to answer a few neat questions about driving directions, including "What's the most complicated route in the United States?" The relevant code is here.
  5. I wrote up my solution to Project Euler problem #106 in this blog post. Here is a more recent solution, this time in Ruby, to problem #215. And here's a write-up for problem #191.
  6. On this page I wrote some Javascript to quickly generate rows of the Rule 110 cellular automaton.
  7. I spent a few frantic weeks on a project called "draftback," which was designed to give writers fine-grained feedback on their writing, fast. It worked—in fact I think it worked well, in spite of some minor bugs—but my attention and interest slowly waned. The code is here. I eventually expect to revive this in some form or another.
  8. For a while I went on a kick playing the Facebook game called Scramble, and eventually I wrote a solver for it. Along those same lines, I wrote a program to generate word puzzles like the ones found in this Sporcle game, where you're given a six-letter template, say,
    _ L _ _ _ X
    , and asked to find the word that fits.
  9. I had an idea for an application that would collect analog feedback on web videos. So as someone's watching a Steven Colbert clip, for instance, she might wiggle her mouse whenever she found Steven particularly funny. The funnier she found him, the harder she'd wiggle. That data about her interest and engagement (mapped to particular moments in the video) would be collated with data from other viewers. Here's a simple demo, and here's the Github repository for the demo.
  10. I'm working on a real-time multiplayer version of Sporcle called "Quiz Dash," built on Rails and node.js. Here's a link to the Github repository.
  11. I've always wanted a simple utility for copyediting that would let me make insertions, deletions, and comments with the lowest possible overhead. The idea is in the same neighborhood as (but importantly different from) that "draftback" tool described in #7 above. Anyway, check out what I ended up calling "diffly." Here's the source code.
  12. Some friends in college taught me an Indian trick-taking game called Mindy Coat that feels very much like Spades or Euchre. Since we graduated everyone has spread around the globe—and so in order to play I had to make a real-time multiplayer online version of the Mindy Coat game. You can browse its source at its Github project page.

Feeds

I don't subscribe to many, but I am able to read essentially every post from these fine feeds (and here you can see what I'm sharing and commenting on):

Notes archive

Using the Tumblr API, a few PHP and Ruby scripts, a cron task, and a retrofitted Firefox extension, I have stitched together a system that lets me take notes in any of the following ways:

I realized after many failures with more ambitious systems that if there is any friction in the process at all, I won't stick with it — the operative concept is ease. And this mess of an approach that I've got going now has really worked out. See for yourself:

» To the archives!