Wednesday, December 26, 2012

Top 10 Albums of 2012

For the last few years I've written top ten lists of my favorite music. While I usually keep this blog focused on the web and librarianship, I'm going to detour for this post and relate my 2012 favorites. Back to your regularly scheduled programming in the new year.
cover of the Kindred EP
  1. Kindred / Burial - Anthemic electronica from the best dubstep producer ever. After Kindred came out, I listened to nothing else for a week. Burial shifts focus a bit, selecting sub-bass & texture over the usual manipulated vocal samples & rimshot snares. It's such a gray album. Music for long drives, rainy days, loneliness. At three songs, it's technically an EP, but together they stretch over a half-hour.
  2. Kings and Them / Evian Christ - I stumbled across "Fuck it none of y'all don't rap" on a blog & was instantly blown away. Evian Christ made the most sophisticated album of the year out of a single rap song's worth of vocals, tinny snares, & haunted minor intervals. The hyper-repetitive raps (let's repeat the word "back" for a minute, shall we?), vocal pitch-shifts, & eery background dissonance of wind chimes somehow come close to a mixture of Salem & Dälek, but with a better sonic sensibility. Christ's beats are simple but deeply enmeshed with the vocal samples & mood. The album feels idiot savant in its execution, putting together repetition & atmosphere in a way that the idiots somehow missed.
  3. Quakers / Quakers - I admit it, other than Guilty Simpson, I haven't heard of any of these rappers. This is always already the best album of rappers you've never heard. This album is like twenty Busdrivers on top of twenty MadLibs just fucking killing it. The brevity of the tracks actually makes it easier to digest such incredible variance in beats & voices. I cannot understand how good Quakers is.
    cover of the Shrines album
  4. Shrines / Purity Ring - Electro-pop without too many frills. The music is synth-heavy, its only distinguishing element the occasional staccato vocal samples. But the lyrics & singing are spot on: a mousey female voice sweetly reciting disturbing lines like "cut open my sternum & pull my little ribs around you." The bodily lyrics & voice-in-the-machine production combine to make a stunningly consistent album where every other song is perfect.
  5. The Seer / Swans - When I discovered Swans last year, I promptly listened to their entire back catalog. Their impressive trajectory (from brutal industrial to something resembling art rock) is complete with The Seer, which is epic noise rock on an almost unparalleled scale. Despite a two-hour runtime, the music never drones on too long. The scraping metal of 93 Ave. B Blues becomes atmospheric ballad The Daughter Brings the Water. The title track could stand to be its own album.
  6. Sorrow and Extinction / Pallbearer - metal is at its best when it is unapologetically bleak. Pallbearer's debut album lives up to its title, as huge, molten sludge buries some faint, rare vocals. The album accomplishes a rare combination of consistent atmosphere & heavy riffs. Good black metal typically relies on atmosphere, rarely displaying interesting guitar riffs such that their music begins to drone on repetitively. More riff-based metal, such as Torche, often has captivating guitars but without the gravity of black metal's atmosphere. Pallbearer combine both effortlessly, making almost the entire album (with the exception of the first few minutes of acoustic guitar, unfortunately) compelling.
  7. WIXIW / Liars - An album that grew on me quickly. I think the idea of an electronica Liars album turned me off, but the truth is this album is little more synthetic than the unsurpassable Drum's Not Dead. The better songs (Flood to Flood, Brats) are near the end. Liars took their strong but scattered album about Los Angeles depravity (Sisterworld, which reminds me of Hail to the Thief in that the songs are excellent individually but fail to amount to much in sum) & remade it. The wreckless songs & the redemptive ones both shine brighter now.
  8. G is for Deep / Doseone - This album also disappointed me on first listen, not because it was bad but because Doseone has entirely eschewed rapping. I became obsessed with Dose because of his raps; he's one of those rare rappers who not only has unparalleled skill but also a unique artistic vision. His lyrics are closer to poetry than braggadocio. G is for Deep has its occasional bits of rap—mostly quick refrains, rarely full verses–but for the most part Doseone sings. However, the music is solid (much of it reminds me of bright synths of Radiohead's "Worrywort" b-side), the lyrics surprisingly catchy (the "Last Life" chorus gets stuck in my head easily), & Doseone frequently uses mini-song outros to great effect. These outros aren't completely new fare for him–Subtle's "The Mercury Craze" single features a commercial jingle parody as it fades out. But on G they're more essential, in fact they're often the highlight of the songs.
    cover of the Visions album
  9. Visions / Grimes - Grimes is weird. Her songs almost ring as normal electropop & she tends to (convincingly) imitate R&B diva melismas. But there's all this inexplicable zaniness: why is the album cover heavy metal artwork? what the hell is going on in the Genesis music video? what are the lyrics to any of these songs? Visions strides the line between pop catchiness & alienating oddity in a way few others can match.
  10. Held / Holy Other - the "With U" EP blew me away with its lonely trances. It felt like Burial but from another angle: slower, breathy, codeine-dependent. Held didn't quite live up to the EP's promise but it's still very good & remarkably consistent; each song maintains the same emotive thrill without wearing the listener out.

Honorable Mentions

Advaitic Songs / Om
Years Past Matter / Krallice
My Story / Volor Flex
Empyrean / Mutilation Rites
R.I.P. / Actress

Wednesday, December 5, 2012

In Defense of Anonymous Proposals

Recently, the Code4Lib community has been working to write an anti-harassment policy and combat gender discrimination. One proposal (full credit: coming from JSConf EU's excellent strategy for increasing diversity, which I in turn learned of from the ever-vigilant Andromeda Yelton) was to have anonymous conference proposals but it was quickly shot down on the C4L listserv. I don't mean to pick on C4L but I wanted to discuss briefly why I think that's a mistake.

Anonymous proposals aren't just one measure among others to increase diversity, they're vital. JSConf EU notes "This is crucial. Even if you don’t think you are biasing against anything or anyone, unless you anonymise CFP submissions, you will apply your personal bias." (emphasis in original) Why? Anonymous proposals circumvent most of the latent biases we all have: gender, race, culture, etc. are difficult to determine from an abstract. What's more, underrepresented parties are more likely to submit without fear of judgement or judgement's liberal sibling, tokenization. Anonymization shields selectors from their biases and proposals from discrimination.

The Counter Arguments

Few people disagree that anonymous proposals have benefits. But do their benefits outweigh their disadvantages? Anonymity's detractors tend to argue that knowing someone aids in evaluating speaker quality. I find that more of an excuse to reify bias than a legitimate contention. To run down the list:

A) Obviously implicit bias is still at play,
B) The subset of people you know or have seen speak echoes previous biases–if a disproportionate number of men tend to speak at Code4Lib, then the people you've seen speak is going to be disproportionately male and thus your supposedly informed selections make for a poor representation of the full community,
C) If you know someone but haven't seen them speak, you may be inclined to vote for your friends and not necessarily on quality.

It was also mentioned that anonymous proposals go against the "openness" of Code4Lib. But the end result of openness is more important than some deontological essence attached to our actions; if openness in this instance supports bias, then we should be closed. In some ways, one can be more "open" when anonymous than when afraid of discrimination. Also, my identity as a voter is not revealed; how come that is not considered a threat to the openness of the community? Anonymous proposals do not damage openness if they allow a more representative population of a community to present.

All this said, are anonymous proposals always the right choice? Maybe not. I'm part of a conference planning committee that isn't evaluating talks anonymously. I'm not entirely clear why but we did at least discuss it. You wouldn't want to select keynotes anonymously. But for most sessions, anonymous proposals have proven to yield more diverse speakers. I have yet to see reports from conferences indicating that anonymous proposals lower speaker quality. That contention appears to be more hypothetical than real. In the end, what is more important? Making a real commitment to diversity or ensuring we can vote for people we know over strangers? I'd argue that allowing anonymous conference proposals is beneficial even if it decreases the quality of speakers a little.

Saturday, November 17, 2012

Browser Keyword Searches

I wrote a post for the Social Web Q & A blog on setting up keyword searches in your browser: what they are, why they're awesome, how to do it. Check it out.
Librarians especially should love this stuff. Having hundreds of your favorite reference sources just a couple letters away is very powerful.

Monday, November 12, 2012

Well-Intentioned Schemes

tl;dr - there's a lot going on at that beginning of an HTML href which you can take advantage of, particularly by pointing links to communication services such as SMS or Skype.
A Uniform Resource Identifier (URI) begins with a scheme such as "http" or "https." Right away, there's an important difference between these two common schemes that many may not be aware of. HTTP is HyperText Transfer Protocol, the transfer protocol that undergirds the web. HTTPS is similar but the S stands for "secure." What does that mean? Basically, when you request a resource, which could be anything from a fully fledged website to an individual text or image file, using HTTPS your request is first encrypted in your browser & the response you receive from the server is also encrypted. This means that any party in between, including your Internet Service Provider such as Comcast or your employer if you're on your work computer, cannot monitor precisely what you access on the web. HTTPS also prevents "man in the middle" attacks by trying to ensure that you're communicating with the right web server; if you've ever seen one of those terrifying "This is not the web page you're looking for" warning messages (an every day occurrence for users of our campus WiFi, sadly) then it's because of that feature of HTTPS.

Communication Schemes

HTTP is well-known even to those who don't write HTML, but there are a few rarely used schemes that provide new functionality, especially now that more & more people access the web on phones. Most web content authors are familiar with mailto, a neat scheme that opens up links in an email client. Mailto even comes with an enhancement; you can add subject & body content by appending "?subject=[subject text here]&body=[body text here]" to the URI. So one can email David Weinberger with the subject "Cluetrain" & the body text "You wrote it." by writing the following HTML:
<a href="mailto:self@evident.com?subject=Cluetrain&body=You+wrote+it.">Hey David</a>
URIs can't have spaces, so I encoded them into + signs, but other than that it's pretty obvious how each piece of the link works. Here's the thing: mailto is just one scheme amongst others. There are also schemes for SMS & telephony which, up until people starting browsing the web with their phones, weren't very useful. A link can open in a texting app like Messages by using href="sms:555-555-5555?body=hello+friend" or in a phone with href="tel:555-555-5555". There is little reason not to write all your phone numbers in tel: links starting today. You never know who may be accessing your site on a phone, so give them a chance to call you without the friction of flipping between their phone app & your site.
Besides the mailto, sms, & tel schemes which are all hardwired by the operating system to the user's default applications, one can also launch specific apps if they have registered schemes. Perhaps the most obvious usage is Skype, yet another communication service. We use this on our tutoring website, where our tutors host online sessions using Skype. One can call the Skype user Trueclain by clicking the following HTML:
<a href="skype:Trueclain">Skype Me!</a>
Yes, that link opens Skype. Minds blown. Skull fragments scattered all around.
Schemes are not limited exclusively to communication services either: the Coda Protocol app for Mac opens coda:/// URIs in the Coda text editor. I was unable to find any examples, but I think at one point CSS Tricks was using Coda URIs to directly import code samples into people's text editors. Pretty cool. A more commonly used application scheme is the Twitter scheme. A link with a href of "twitter:@phette23" would, if clicked in an iOS device or recent Mac OS X, open the Twitter app to my user page.
I'm unsure of the utility of twitter: URIs. Is it better to open Twitter.app or the Twitter website? I'd prefer to direct users to the open web if functionality is all the same, which it is with Twitter. Web links always work regardless of operating system or installed software. But it's very valuable for websites to be able to tie into OS applications like phone & Skype that are not available online.

No Life Without Suffering

Of course, as soon as you start opening URIs in applications all sorts of headaches arise. We live in an era where the diversity of devices, operating systems, & software setups accessing the web has never been greater. There are no guarantees.
There is no standardized way for web browsers to handle some of these rarer schemes. Clicking tel & sms links on my laptop, I see a few different behaviors:
  • Google Chrome does nothing. That's actually the best behavior I've seen; above all don't further confuse the user with error messages.
  • Safari fails with a message noting "OS X doesn't recognize Internet addresses starting with 'sms:'". Particularly dumb coming from Apple, who just shipped an SMS app (Messages) with their latest OS.
  • Firefox fails with a cogent message of "Firefox doesn't know how to open this address, because the protocol (sms) isn't associated with any program."
  • Internet Explorer 8 404s when trying to follow sms: links & times out when trying to follow tel: ones.
Unfortunately, these dead-ends will always occur when websites try to use non-standard schemes. There is no way to detect what software is installed on a user's computer using JavaScript (with good reason since that risks both security & privacy mishaps). It would be nice to perhaps expose an error API when an unsupported scheme is followed, something that would allow scripted fallbacks. Until browser vendors, probably in collaboration with operating system developers, find an elegant way to handle breakdowns it will probably always be a risky move in terms of user experience. An ideal solution would involve Web Intents, wherein links point towards particular services (much as mailto & http links do currently; users can configure their default mail & web browser apps) & not specific programs like Skype. In the event that no app is registered to handle a particular intent, a prompt such as "You do not have a program equipped to handle this link, would you like to view a list of candidates in a software directory?" would be nice.

Protocol-Relative URIs

Let's revisit the HTTP/S divide to discuss protocol-relative URIs. If you use the HTML5 Boilerplate, you might've already seen this line down towards the bottom:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
Why is the "http:" missing on that src attribute? Because by leaving the protocol off, the src attribute inherits the scheme of the website it's on, e.g. if it's served over HTTPS then that URI will default to HTTPS. This is important because when resources of a HTTPS site are served over HTTP most browsers pop-up a "warning: insecure content" alert. When you mix HTTP resources in HTTPS you lose the security of those elements: someone snooping can see that I requested http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js though the rest of my requests may remain encrypted.
In sum, there's rarely a reason to put the scheme in any scr or href attribute. The only reason would be if a particular resource is explicitly not available over one scheme or the other. For instance, Google's encrypted (read: HTTPS) search is simply not available over insecure HTTP: requests for http://encrypted.google.com are redirected to https://encrypted.google.com. So while a link to http://encrypted.google.com will redirect & work–albeit after a superfluous HTTP request–an HTTP src attribute pointing at a image available only over HTTPS would not & visitors would miss the image entirely.

Exeunt

Does anyone have examples of innovative uses of non-standard schemes? I'm curious if there are applications that I just haven't thought of yet. Putting phone numbers in tel: links & Skype names in skype: links is a start, but there must be more. There are so many interesting possibilities in the existing schemes: facetime, maps, market (Google Play), ms-help (Windows help files), spotify, & webcal. There must be uses that help glue our websites into the larger system of software that our users employ every day.

Friday, July 20, 2012

The News & Statistical Importance

If you don't live under a rock, you have probably heard about the shooting in Aurora, Colorado last night that resulted in twelve deaths. While this is certainly a tragedy and I do not mean to downplay that, it makes a good test case for an idea that I have had for awhile: the news media repeatedly focuses on spectacles to the detriment of statistically more important stories. Twelve people died; that's awful. But an average of around 1,300 people die every day in the United States from heart disease. Overall, homicide accounts for less than a percent of total deaths in the U.S., while boring disease like diabetes, Alzheimer's, & nephritis consistently rank in the top ten causes of death with several orders of magnitude more cases.

Suicide, by the way, is more common than homicide. You have more cause to be scared of yourself than anyone else.

So why does the media cover events that are, statistically speaking, trivial? The most obvious reason is the spectacle: people want to watch terrible, fascinating news. They do not want to be told to exercise & eat less, even if those acts are more valuable than, say, eliminating homicide & manslaughter. But the nature of the truly important problems is also more ephemeral. Diseases & environmental degradation are problems that slowly insinuate themselves over many years. They do not appear suddenly wearing a Kevlar vest & gas mask, carrying an excessive number of guns, dropping a gas grenade on the floor. Perhaps it would be better if they did; people would care more & would have a obvious enemy to fixate upon. Instead, I'm subjected to hours upon hours of reporting this morning about an event we know so very little about & certainly don't know how to prevent in the future (no one's even been able to posit a motive yet, much less a solution, as opposed to the many diseases that have obvious vectors for improvement).

I have thus far only discussed the media's bias towards the spectacle, but there's also an obvious nationalist bias to our news. While twelve people died in a movie theater in Colorado last night, a quick search for Syria shows that over three hundred people died in clashes between the government and rebel factions there yesterday. In some ways, the local bias in news makes sense: one is naturally more involved in one's local community & can probably affect more change at a local level. But it's evident that American news is extremely biased towards American deaths. On the whole, that's a mistake, because we're all human regardless of where we live. There is only one side & we are all on it, to quote Doseone.

References

My mortality data comes from the Centers for Disease Control's FastStats page on Deaths & Mortality. The best summary of causes of death I found was their overview of 2008 data (published in June of this year) in this PDF but a cursory scan of more recent years also shows that homicide is basically irrelevant relative to common & often preventable diseases.

For the death totals in Syria, nothing is certain but the Huffington Post reports 310 dead, for instance. As a fairly unobjective but still interesting metric of comparison: when I search for "Aurora shooting" in Google News right now while limited my results to the past 24 hours, I get 11,100 results, while simply "Syria" returns 8,790. Considering that Google News includes foreign sources (though my results are likely filtered to English-language news only), we can see that the local bias is not the only force at work.


Post Scriptum &/or Aside

This is my first post in about a month because I have been busy planning my wedding, attending & preparing for conferences, managing my RUSQ column, & wrapping up projects at work. I may retire this blog shortly. I started it at a bad time, given that I was finishing up my personal website which could easily host a blog. I will likely transfer over all my older posts.