I am one dog old.

Lady Bird

Our sweet old beagle passed away today.

It seems like it was just yesterday that we took her in. Back then—in late 2006—she was just another foster. My wife and I decided that, rather than fostering lively animals and finding homes for them, we’d pick out the most pathetic dog we could find at the SPCA, as our very own Pygmalion tale. This elderly, frightened old girl was the clear winner, so we took her with us, determined to find her a forever home. There didn’t turn out to be much of a market for elderly, gassy beagles, and come March, we made things official.

Her life before 2006 was obviously pretty rough, and I’m proud that we could provide her with a great retirement home and a proper family. I hope all of her memories of her prior life were gradually replaced with a fuzzy impression of joy, safety, and freedom from want. She certainly provided us with many happy memories of our own.

I am one dog old.

$500 speech transcription bounty claimed.

It took just 27 hours for the $500 speech transcription bounty to be claimed. Aaron Williamson produced youtube-transcription, a Python-based pair of scripts that upload video to YouTube and download the resulting machine-generated transcripts of speech. It took me longer to find the time to test it out than it did for Aaron to write it. But I finally did test it, and it works quite well.

There are lots of changes and features that I’d like to see, and the beauty of open source software is that those changes don’t need to be Aaron’s problem—I (and anybody else) can make whatever changes that I see fit.

This will be pressed into service on Richmond Sunlight ASAP. Thanks to Matt Cutts for the idea, and to the 95 people who backed this project on Kickstarter, since they’re the ones who funded this effort.

$500 bounty for a speech transcription program.

The world needs an API to automatically generate transcript captions for videos. I am offering a $500 bounty for a program that does this via YouTube’s built-in machine transcription functionality. It should work in approximately this manner:

  1. Accepts a manifest that lists one or more video URLs and other metadata fields. The manifest may be in any common, reasonable format (e.g., JSON, CSV, XML).
  2. Retrieves the video from the URL and stores it on the filesystem.
  3. Uploads the video to YouTube, appending the other metadata fields to the request.
  4. Deletes the video from the filesystem.
  5. Downloads the resulting caption file, storing it with a unique name that can be connected back to a unique field contained within the manifest (e.g., a unique ID metadata field).

Rules

  • Must be written in a common, non-compiled language (e.g., Python, PHP, Perl, Ruby) that requires no special setup or server configuration that will run on any standard, out-of-the-box Linux distribution.
  • Must run at the command line. (It’s fine to provide additional interfaces.)
  • May have additional features and options.
  • May use existing open source components (of course). This is not a clean-room implementation.
  • May be divided into multiple programs (e.g., one to parse the manifest and retrieve the specified videos, one to submit the video to YouTube, and one to poll YouTube for the completed transcripts), or combined as one.
  • Must be licensed under the GPL, MIT, or Apache licenses. Other licenses may be considered.
  • If multiple parties develop the program collaboratively, it’s up to them to determine how to divide the bounty. If they cannot come to agreement within seven days, the bounty will be donated to the 501(c)3 of my choosing.
  • The first person to provide functioning code that meets the specifications will receive the bounty.
  • Anybody who delivers incomplete code, or who delivers complete code after somebody else has already done so, will receive a firm handshake and the thanks of a grateful nation.
  • If nobody delivers a completed product within 30 days then I may, within my discretion, award some or all of the bounty to whomever has gotten closest to completion.

Participants are encouraged to develop in the open, on GitHub, and to comment here with a link to their repository, so that others may observe their work, and perhaps join in.

This bounty is funded entirely by the 95 folks who backed this Kickstarter project, though I suppose especially by those people who kept backing the project even after the goal was met. I deserve zero credit for it.

Why fresh-squeezed orange juice turns bitter.

Several times recently I have squeezed a large number of oranges, enjoyed some of the delicious fresh-squeezed juice, and then been disappointed by the rest the next day. It tastes bitter, and becomes worse rapidly. This turns out to be the result of naturally occurring limonoate A-ring lactone (aka "LARL," a tasteless substance) breaking down into limonin, which is very bitter tasting. The amount of LARL varies between oranges and throughout the growing season. If there’s any way to arrest the conversion of LARL to limonin in the home-squeezing process, I don’t know about it. 

That “fresh squeezed” orange juice is anything but.

I’m more interested in orange juice than is probably healthy for somebody who doesn’t work in the industry and, as such, I’m excited to see Bloomberg Businessweek shining a spotlight on the horseshit that is "fresh squeezed," "not from concentrate," and "all-natural." These are all lies. It was squeezed months ago. It was concentrated to a point a hair’s breadth from the legal definition of "concentrated." It’s not natural, it’s created in a lab in a process more complicated than Coca-Cola. If you drank the stuff as its stored in giant vats, you’d spit it out—it’s flavorless at best, disgusting at worst. It’s only through adding a cocktail of lab-created flavorings that it takes like something that came out of an orange. Because those lab-created flavorings are based on molecules that are found somewhere—anywhere—in nature, they can be labelled "natural flavors," instead of "artificial flavors." 

Senator Henry Marsh’s big day.

Senate Session

Today was a big day for Senator Henry Marsh. The legislator of twenty years took a rare day off during the Virginia Senate’s 46-day session, to attend President Barack Obama’s second-term inauguration in Washington D.C. For the 79-year-old black civil rights lawyer, attending a black president’s inauguration on Martin Luther King Jr’s birthday is perhaps the most auspicious of occasions. Certainly nobody would object to him missing just one day. Looking at today’s legislative calendar, he would have seen that his absence wouldn’t be problematic, with nothing contentious on the agenda. (With the Senate split 50/50 between Democrats and Republicans, and with a Republican lieutenant governor acting as tie-breaker, that’s no small point.)

Marsh grew up under Jim Crow. He had a ten-mile round-trip walk to his one-room schoolhouse—an awfully long trip for a seven-year-old—while white kids took a bus to a modern school. Marsh didn’t let racism hold him back. He didn’t just graduate from primary school, but went onto college. When he was a senior at Virginia Union University, the Byrd Machine was organizing “massive resistance”—shutting down public schools rather than comply with Brown v. Board of Education—and Marsh got involved, testifying against the policy before the General Assembly. In doing so, he met famed civil rights attorney Oliver Hill; at Hill’s encouragement, he got a degree in law from Howard University, and later went into private practice with Hill, focusing on civil rights law. Marsh and his practice were responsible for huge advances in civil rights over the decades, eliminating “separate but equal,” busing, and racial discrimination in hiring. Along the way he became the first black mayor of Richmond, and was elected to his Senate seat in 1991. Today he chairs the Martin Luther King Jr. Memorial Commission and created the Martin Luther King Jr. Living History and Public Policy Center.

So it bears repeating: today was a very big day for Henry Marsh. He must have taken a great deal of satisfaction in seeing his life’s work culminate in the first black president’s reelection, being sworn in on Martin Luther King Jr’s birthday. It was a very, very good reason to miss a day’s session.

Today was also a big day for Senate Republicans. They knew that Henry Marsh would be at the inauguration today, and that the 20–20 split in the Senate would become a 20–19 split while Marsh was 100 miles north, among the throngs on the National Mall. So today was the day that they decided—without hearings, advertisements, notifications, or warnings—to take a chunk out of Marsh’s district, along with a handful of others, to ghettoize black voters in a majority-minority district and put 45% of voting-age citizens into new districts.

I sat in the Senate gallery, along with no more than perhaps a half-dozen other people, slack-jawed with confusion (tweeting all the while) as Republican Sen. John Watkins filibustered through the allotted 15 minutes to discuss what was advertised as the third reading of a pretty boring bill, making technical adjustments to district boundaries. Unbeknownst to anybody but the 20 Senate Republicans, the bill had been replaced with a radical redistricting, combining two senators into a single district (eliminating the district of 2009 Democratic gubernatorial nominee Creigh Deeds), reshuffling district boundaries throughout the state to absorb those changes (to Republicans’ apparent favor in a half-dozen districts), and creating a “black district.”

Senate Democrats tried repeatedly to get a word in, but they were blocked procedurally. A series of votes were held (votes about voting, votes about reconsidering voting about voting, and so on), all failing 20–19, during which a few people got to make remarks. One Democratic senator moved to simply put the vote off until tomorrow, so that there’d be time to read this brand-new bill. That vote failed 20–19. Another Democratic senator pointed out that this was simply unconstitutional (“[t]he General Assembly shall reapportion the Commonwealth into electoral districts in accordance with this section in the year 2011 and every ten years thereafter”). One Republican senator insisted that this was simply a racially sensitive improvement, since it was establishing a majority-minority district. Another Republican said that there was no need to hold hearings on this new redistricting, because they held hearings a few years ago, last time they redistricted. Yet it remained unclear throughout what, exactly, this bill did, though Democrats were frantically trying to figure that out as they stalled with round after round of procedural vote, a peeved Lt. Gov. Bill Bolling presiding over the whole affair. Finally there was nothing else to be done—the vote was held, and the bill passed, 20–19.

Lt. Gov Bolling says he would have voted against the bill, if it had been a tie. Which is surely why the bill was introduced today.

Senate Republicans’ MLK Day gift to Senator Marsh and to Virginia is to use the re-inauguration of the United States’ first black president as cover to pass a bill that will make it harder for black candidates to get elected.

Now the bill goes to the House of Delegates, who will no doubt pass it, and then to Gov. Bob McDonnell, who said he was as surprised by this bill as everybody else. We’re about to learn if McDonnell has really become the centrist he’s presenting himself as, or if he’s the same old right-wing extremist. I fear we already know the answer.

Muller concludes that humans are behind climate change.

Physicist Richard A. Muller was in the news last year after his Koch-funded study of global climate change concluded that it’s real, surely to the Koch brothers’ dismay. Now he’s penned an op-ed for the New York Times in which he says that his ongoing research has led him to the same conclusion as 99.9% of other experts in the field—that "essentially all of this increase results from the human emission of greenhouse gases." Muller’s research shows that the UN and the IPCC actually understate the problem. He researched the climate change causes claimed by non-scientist skeptics (urban heating biases, cherry-picking data, faking data, solar activity, and global population), and found that none of them explained climate change. What did explain it perfectly was atmospheric carbon dioxide. 

3-D printers are a nightmare for the NRA.

The NRA’s major constituency isn’t their individual members, but gun manufacturers. We are entering the era of 3-D printers (I have several friends who own them), and it’s entirely possible to print a gun. Including counterfeit guns. The stock, the barrel, the receiver—everything. Adam Penenberg explains how this is liable to to have the NRA begging congress for regulation of the indstury, rather the opposite of the present situation. 

Turn-of-phrase inflation.

The etymology of “the whole nine yards” is a total mystery. Anybody who tells you that they know its origin is either lying or unknowingly parroting an urban legend. The number of feet of fabric required to make a suit? Number of cubic yards of soil removed to dig a grave? Number of cubic yards of cement that fits in a mixer? The length of a WWII-era ammunition belt? Nope, none of those are it. The earliest known use of the phrase was in 1962, but now there’s been a trio of new discoveries from 1921 and 1912. Why weren’t they found before? Because the phrase was “the whole six yards.” The number was inflated over the years, much as “cloud seven” became “cloud eight” and is now “cloud nine.” The origin of the phrase is still unknown, but one potentially important clue is found in the pair of 1912 uses—both were in Kentucky.