(image by alansheaven)
Slow down. You wrote a what to do what to who now?
Genius, formerly known as Rap Genius, is a web site that allows users to annotate blocks of text that appear on other sites. It’s very cool technology; you can just visit any page on the internet using a Genius redirect link, and it will show up with all sorts of additional information which has already been appended by other people. I wrote some code which lets site owners break the Genius annotations for their site, as well as a WordPress plugin which makes that code much easier to use.
If it’s cool, why do you want to break it?
There are two sides to that coin. The existence of the technology they’ve developed should be concerning to anybody who wants to put something on the internet. Not everything needs or deserves freeform annotation by users, and some things – some people – may be actively or disproportionately harmed by it. Genius has made special arrangements with some sites, such as the New York Times (which is also my employer), but hasn’t provided a way for smaller users to either opt in or opt out. This means they’re effectively forcing it on everyone.
I’m also firmly of the opinion that we’ll all be better off if functionality like this is handled by a standards body like the W3C, or a non-profit like the WikiMedia Foundation, or at least an open-source software project. Annotations are a pretty fundamental expression of the nonlinear ways we talk, write, and think, so I’m nervous about the possibility that the content and mechanisms could end up owned by a single for-profit tech startup.
Why did you do this now?
A few days ago Ella Dawson wrote a very upsetting blog post about how Genius was functionally equivalent to forcing crude, violent, or hateful user comments onto a web site she created as a safe space to write about the sensitive work she does. When she reached out to Genius for help, the solution they suggested was “don’t look at the annotations.” This bothered me, so I stayed up all night tinkering and figured out how to make a defensive tool.
For VICE/Motherboard, here’s an obsessive deep dive into the minute details of music metadata, and how information about the songs we love is being co-opted for questionable ends by streaming services like Spotify and Google Play.
Format shifts have already altered the mechanics of music simultaneously several times over the past few decades, and the recent rush toward streaming services like Spotify and Google Play now positions a technology company between the listener and the material. Surely remote cloud storage is a new audio format at least as much as the Walkman?
This is a new kind of consumer relationship, and the play button has a different meaning for each side; to the business, it does more than just switch on entertainment. As a result, there’s now a sort of subtle power play occurring over control of the metadata which surrounds the music and connects it to search fields, filters, and playlists. This is unfortunate, because our ability to meaningfully engage with something depends first and foremost on whether we can find it at all.
(Discuss on Hacker News, if you want.)
I made a new gizmo! d3-xray is a bookmarklet which lets you debug data binding in D3.js by mousing over the graphical elements instead of editing the project code.
For New York magazine, an attempt to explain how Apple’s institutional priorities can be understood by looking at its source code, and what that might mean for the big pending legal battle with the FBI over encryption in the iPhone:
One reliable peril of advanced technologies is that the details of implementation usually aren’t yet common knowledge among most people — often including judges and lawyers, regrettably — but the compulsion of speech, or software-as-speech, isn’t made any more acceptable simply because fewer people know how to interpret it. The FBI’s demands in this case rely on that confusion: Its application for the order to compel Apple to provide them with the custom software states that “writing software code is not an unreasonable burden for a company that writes software code as part of its regular business.” This phrasing contains a subtle gamble: that both the courts and the public will conceive of the software as a tangible artifact produced by an incomprehensible factory in the clouds, rather than fully considering its design and development a coordinated act driven by human motivations, politics, and principles.
On the occasion of its inventor’s passing, I wrote up a theory for New York about why it has been so hard for a more modern email replacement to take off.
That is, it will remain impossible to build a better communication system until the primary goal is actually communication itself. But by and large, we don’t invest much in creating new open standards, specifications, and protocols around which entirely new classes of tools can be built — we’re too busy trying to sell apps! The funding structure of the technology world is largely set up to fight interoperability.
As polls spread highly structured tweet content, algorithmic presentation meanwhile creates a testable structure around the more chaotic tweets. Since the implicit contract with users would no longer be based on publicly verifiable values like timestamps, a fully algorithmic Twitter would actually just be an experimental Twitter, a service in which the content can be constantly tweaked and manipulated in order to see how users will react.
Over at the Message, I have a meandering analysis of the new Star Wars film which tries to connect it to the narrative schism that was created in between Aliens and Alien³ when handing off that franchise between directors.
Successful serials and franchises are small miracles given the complicated competing interests introduced by the business scale of modern blockbusters like the Star Wars saga. Empires are built around their marketing and production, but even writing a sensible core narrative is already hard enough. Weaving stories out of smaller pieces can be incredibly difficult, because in isolation, each piece tends to pull in its own direction, and it’s only through careful and deliberate oversight that they might eventually coalesce into something rational. With that in mind, please sit tight for a moment and pardon this immediate tangent. We’ll get to Star Wars in due course, but in order to contextualize where it’s going, it may actually help to start with Alien.
You’re sort of explaining striking a balance between hierarchical values and non-hierarchical values. How do you manage the relationship between those two types of concerns, and when there’s a new concern that appears, how do you determine whether it’s a hierarchical concern or a non-hierarchical concern?
Let’s say you go to a restaurant and you order fish. You don’t care which truck brought the fish to the restaurant, do you? Sometimes it’s as obvious as that. You have to do what’s right for the operator, the fish is fresh and what have you, but we don’t care what truck gets the fish to the restaurant. Everybody understands that, even the truck driver. Maybe it’s not a great analogy.
For the Message, a theory about the influence of Netflix on television scripts:
Nearly forty percent of American homes pay for access to a streaming video service like Netflix, Hulu, or Amazon Prime Video. A theory: even excluding forays into original programming, their prevalence has now started to shape the material they present. As we’ve seen from a decade of arms races in SEO and social media, content evolves to jockey for position with its audience.
A strange piece for the Message which attempts to illuminate the absurdity of our current approach to naming software.
If you can’t Google your way to something, it’s almost as though it doesn’t even exist, but luckily the filename suffixes used for coding scripts, such as .js and .py, are linguistic (linguistic.js) anomalies which all but create their own SEO (seo.js). Businesses strategize based on their Google rankings relative to competitors for the same reason that tweets are usually weighed in favorites and retweets — on an impersonal internet, visibility (visibility.js) is almost synonymous with value. Publishing any code at (at.js) all creates an instant presence which would be hard to build in other ways. The tech industry is our modern gold rush, drawing swarms of opportunists westward (westward.js), and memorable terminology is one of its new land grabs.
Just in time for Halloween, a list of things that should scare you about modern technology:
Tech has always generally moved faster than government in most senses, but increasingly it now outpaces the agencies we’ve been conditioned to trust, not just the municipal parks struggling to put pool schedules online. Very real threats form in dark corners of the internet precisely because the people who hang out there can buy drugs and weapons, and trying to limit the transactions quickly led to untraceable online currency. These are functions we theoretically employ vast literal armies of government agents to manage.
Lately I’ve been doing a lot of coding in CoffeeScript, which is a very elegant language, but my favorite feature is actually just a workflow. Instead of first coding and then later annotating the code, with “literate mode” you first write out descriptions of your logical structures, and then inside that framework you start to embed the executable code. It’s a very interesting way of working, so a few days ago I put together a small shell script which allows me to apply a “literate” workflow to any other kind of code.
I’m so excited to have started as a contributor to The Message, the chaotic in-house tech and culture vertical at Medium – thrilled to be working alongside all these geniuses. First up, here’s a look back at the circumstances that have occasionally driven me to write scripts to solve personal issues:
I’d often react to a case of information overload by trying to find a way to pare it down, little data processors which attempted to solve the problems I’ve had in my life over the past decade. I realize these are very strange artifacts to feel nostalgic about, but we don’t get to choose these things.
I hope you had a great summer! I wrote about one last round of potential Song of the Summer candidates for the Awl, again excluding anything in English.
I can’t remember the last time I saw a teen pop group this large in the U.S.—there are eight members, including one drummer who doesn’t participate in the choreography. Here they swap out leads so quickly and stitch together the vocals so tightly that the singers are still all but indistinguishable by the end; it’s a five-minute song, so that’s 37.5 seconds allotted to each member, if we allow no time for breathing. To keep things under control, they’re sometimes split into two color-coded sub-groups, just like the blue and gold teams from the early-nineties X-Men.
It’s been more than a year since I posted it on GitHub, so I suppose I should finally acknowledge the existence of my text wrapping plugin for D3.js. It has already been discovered by some folks (including Mike Bostock, who enthusiastically described it as “generalized somewhat.”) But I probably waited too long, because it’s been outmoded, sort of! You should probably use Gregor Aisch’s d3-jetpack instead, unless a) you want the performance boost of wrapping using native HTML text handling in foreignObjects instead of infuriating SVG positioning math or b) you need scrollable text content in divs using CSS overflow:auto or similar.
Wrote about a disaster from my youth that revolved around pixelated graphics.
The newest installment of Facepalm Pilot, my technology-driven column for McSweeney’s, focuses on grammatical structures and the way they influence our understanding of the world.
As a thought experiment, let’s examine in extremely close detail a set of iterative changes that can be made to a single simple grammatical structure.
Wrote about some great pop songs from Botswana, Macau, and French Polynesia for the Awl:
Some of the samples harken back to the nineties heyday of white R&B/pop. They’re spliced in here with a heavy-handed aggression, though, a refreshing change from the usual misty-eyed nostalgia, so it sounds like nothing else so much as bludgeoning the New Radicals to death with Paula Abdul.