James Somers

James Somers is a writer and programmer based in New York, NY. Contact me at

Powered by Buttondown.

On this page I have collected:

Writing

The articles with asterisks (*) have gotten the most attention. I've highlighted a few of my favorites.

The New Yorker

The Atlantic

The New York Times Magazine

The Village Voice

Outside:

The MIT Technology Review

Nautilus

Backchannel:

Blog (jsomers.net/blog):

Books

This is a list of the books I've read since my first day at college, arranged basically in the order I read them. I have the list both to jog my memory and because I've read a lot of stuff I've loved, and want other people to find it.

Projects

  1. My friend Ben and I wrote a New York Times crossword puzzle, which appeared in print on Saturday, October 20th 2018. You can download it here if you're an NYT subscriber.
  2. I reverse-engineered Google Docs to create Draftback, a tool which allows you to play back any Google Doc's history as though it were a movie. (See an example here, from a FiveThirtyEight article about the tool.) It has more than 300,000 users, most of them teachers and students. Here's a note about how it's being used in the classroom, from the Journal of Interactive Technology and Pedagogy.
  3. My friend Ben and I made a typewriter that sends its keystrokes in real time to a Google Doc. We call it the DocWriter.
  4. I created a tool for reporters that syncs notes to a recording, and generates a timecoded transcript.
  5. I've made a very simple typewriter simulator (a text editor where you can't hit Delete) at jsomers.net/typerwriter.
  6. 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.
  7. 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.
  8. On this page I wrote some Javascript to quickly generate rows of the Rule 110 cellular automaton.