Day: 13 April 2017

Andy Baio:

Next month, two seminal image-sharing communities, FFFFOUND! and MLKSHK, will close their doors within a week of each other.

[…]

These two communities shared a lot in common. Both were very creative, focused on curating imagery, but how they’re shutting down are very, very different — how it was communicated, the tools for saving your contributions, and the future of the community.

FFFFOUND provides no export or backup tools. A handful of user-created scraping scripts exist for those tech-savvy enough to use them, but in general, most users will be unable to preserve their contributions.

More upsetting is the fact that FFFFOUND only allows Google, Bing, and Yahoo to crawl their archives in their robots.txt file, which outlines which crawlers can access their site and how frequently.

I frequently used FFFFOUND between 2008 and 2013, bookmarking nearly two thousand images in that time. I somehow accumulated 703 followers on the site, and I loved its close-knit communal feeling. It was a really cool little service — like Pinterest without the commercial focus. I know a lot of photographers, designers, and other creative types who used it for collecting inspiration wherever they found it on the web. So you can imagine how much it stings not to have an export feature.

I was determined to create a backup of my collection tonight. I tried fiddling with wget first, but the site is built in such a way that scraping it is beyond my expertise — though, much to my amazement, it doesn’t appear to be against the site’s terms of service. I really didn’t want to manually create a webarchive file of every page in my profile.

Thankfully, Baio sent me links to a few scripts for saving FFFFOUND profiles. Because I’m a complete idiot when it comes to command-line software that requires a bunch of dependencies, I’ve been struggling with this all evening.

But, at last, I think I found a relatively straightforward way to archive the images in your FFFFOUND profile on MacOS:

  1. Open Safari and copy Aaron Hildebrandt’s excellent ffffind.py script.

  2. Open your favourite plain text editor and paste it into a new file. Save it as ffffind.py in the directory of your choice. I went with a new “ffffound” directory in my Pictures folder.

  3. Open a Terminal window. You’re going to download and install a copy of the Python virtualenv package by running the command sudo pip install virtualenv. You’ll need to type your administrator-level password to do this.

    I’ve found installing it at the system level is more reliable than it is at the user level, likely because of SIP in recent versions of MacOS. You can try installing it at the user level by omitting sudo, however.

  4. Once that’s installed, navigate to the folder you created earlier for this project. That’s cd ~/Pictures/ffffound for me.

  5. We’re going to set up a virtual environment. First, run virtualenv ffffind to get the basics set up. Next, type source ./ffffind/bin/activate and press return to enter the virtual environment. The command line should now begin with (ffffind) instead of $.

  6. Next, within this virtual environment, we’ll need to install the latest release of Beautiful Soup, an HTML scraper. To install it, just run pip install BeautifulSoup and wait until it confirms that it has been installed.

  7. Now, just run python ffffind.py USERNAME with your FFFFOUND user name. Sit back, because this is going to take a while.

There are, of course a few caveats with this script. First, while I don’t believe it violates FFFFOUND’s terms of service, please don’t get annoyed at me if that changes. Besides, they’re the ones who didn’t provide an export function.

Second, while this will give you a copy of every image you saved to FFFFOUND, it won’t preserve page numbers or creation dates. If the order in which you saved the images is important to you, you’ll have to try to get ffffexport to work for you. It only downloaded my most recent 32 images, and I’m not sure why.

Third, ffffind doesn’t work perfectly. I saved a few images from a museum’s search engine. Their URLs included a .exe in the string, and that made ffffind very confused, so it stopped working. The easiest way to resolve this is to open the FFFFOUND page it stalled on and save that image manually, then delete it from your FFFFOUND. Unfortunately, the ffffind script doesn’t have the provision to restart on a specific page, so you’ll have to run it again from the start.

I hope this guide is helpful if you’re a FFFFOUND member hoping to save your bookmarks from annihilation. Many, many thanks to Andy Baio and Aaron Hildebrandt.

Update: I tried to make a Workflow for this but couldn’t. Dean Young made one quickly, though, and it seems to work really well. It only scrapes the FFFFOUND-cached versions of the images, and you may wish to adjust the /post/ part of the URL to /found/ for a more complete archive, but if you don’t want to mess around with the Python nonsense above, it’s a terrific option.

Jason Snell, Six Colors:

On its own this is a minor change, and one that makes sense: In its most popular context, Apple’s podcast directory is accessed from the Podcasts app on iOS. iTunes is not a brand that needs to be associated with that product at all—it was only there because more than a decade ago, Apple extended the iTunes Store infrastructure and added podcast support to iTunes on the desktop. It was a long time ago. (Podcasters can get new badges to reflect the change.)

Looking at the larger picture, though, I have to assume that this is one part of a long, inexorable de-branding of iTunes. It proved to be a brand that was capable of having all sorts of non-tune-related things stuffed inside of it, but it was always an awkward fit and at some point it needed to be addressed.

The death of “classic” iTunes has been in the cards for quite some time, especially after the introductions of Apple Music and iCloud Music Library. Many of the pieces are in place for Apple to pull the trigger on iTunes, create discrete Mac apps for music, podcasts, and video, and rely upon iCloud-based syncing for iOS devices.

I’m still not ready for that future.

Brad Wheeler, Globe and Mail:

It was announced on Thursday by Apple Music that the CBC Radio 2 host will bring House of Strombo, a 10-episode concert series he hosts from his downtown Toronto home, to the U.S.-based subscription service. [George Stroumboulopoulos] will also provide exclusive playlists.

For Apple Music, the recruiting of Stroumboulopoulos gives the service a Canadian beachhead and a presence in Toronto, a musically thriving metropolis. For Stroumboulopoulos, the move provides the former MuchMusic VJ a measure of international exposure.

For the uninitiated, George Stroumboulopoulos was one of the best interviewers ever employed by the CBC. He spent ten years hosting a seemingly-straightfoward chat show on the network, always asking questions that provoked a depth of conversation that was unlike anything else you’d find on similar programs. His three-hour radio show consistently delivers a killer blend of music and talk.

Quite simply, this is one hell of a get for Apple Music.

“House of Strombo” premieres tonight with A Tribe Called Red. Trust me: it’s going to be good.

Caroline O’Donovan wrote for Buzzfeed about how star-based ratings for Uber and Lyft drivers affects their livelihood:

In a San Francisco Lyft car, there’s a chart taped to the back of the front passenger seat: “The Rating System Explained.” It details — in exaggerated terms — what Lyft’s one- to five-star rating scale really means to drivers.

[…]

Though tongue-in-cheek, this rating system explainer touches on an essential truth of the gig economy: When companies like Lyft, Uber, and Postmates penalize workers who have low ratings, anything less than five stars feels like a rebuke.

“The rating system works like this: You start off as a five-star driver,” Don, a San Francisco Lyft driver told BuzzFeed News. “If you drop below a 4.6, then your career becomes a question. Uber or Lyft will reach out to you and let you know that you are on review probation. And if you continue to drop, then you’re going to lose your job. They’ll deactivate you.”

I stand by what I wrote four years ago:

Make no mistake: there is a need to have reviews of the new products, new music, and new whatever that competes for our attention and money. But the idea that they need to be judged on a numerical scale is completely ridiculous. A much simpler and more honest approach would be to either “recommend” a product, or to “not recommend” it.

I maintain that star ratings are a poor way to rate pretty much anything. As a method of grading an opinion or experience, it’s inherently dishonest: its equivalence to a numerical ranking system makes it feel like it should be somehow impartial or objective, when a rating is anything but.

I think that impression has given “gig-economy” companies the false confidence that they can rely upon these ratings, with real consequences for their emplo— I’m sorry, independent contractors. O’Donovan:

This sort of rating anxiety extends well beyond Uber and Lyft. “The rating system is terrible,” said Ken Davis, a former Postmates courier, who noted that under the company’s five-star rating system couriers who fall below 4.7 for more than 30 days are suspended. Said Joshua, another Postmates courier, “I really don’t think customers understand the impact their ratings have on us.”

I get that Postmates might just want their couriers to provide exceptional service every time, but that’s unreasonable due to users’ wildly differing standards.

Furthermore, this shows just how dishonest these rankings are. If you’re aware of the preposterously high standards Postmates, Uber, and Lyft set, you’re much less likely to give a three- or four-star rating if your experience is imperfect — you don’t want to be the user who causes the contractor to lose their job.

In general, it’s far clearer to present a simple thumbs-up or thumbs-down rating. Apple Music’s “love” and “dislike” options are exactly what I need to tell it, and nothing more: it’s either “play more like this” or “play less like this”. Likewise, everyone I’ve ever spoken to has assumed that Netflix’s old star ranking system were the ratings from either users or critics, but that wasn’t the case: it was a guess as to how likely Netflix thought you — the user — might like that TV show or movie.

Some people might argue that reducing quality ratings to binary options — like or dislike — lacks context, but I don’t think star ratings provide greater context in the real world. I can easily understand whether a product or service was acceptable to me, but I’m certain I’m not the only person who freezes when they need to figure out just how acceptable it was.

Besides, there’s an appropriate way to build context around a rating: a simple, optional, and private comment box. It might be filled with unfair criticism or utter nonsense, but at least words aren’t usually interpreted as a constant metric in the same way that numbers are. Even if a comment box is filled with complete lies, there isn’t the impression that it’s a calculated and inarguable score.

Our crime, as users, is not knowing whether we can be honest with our ratings. But tech firms have created this problem by assuming that users will be honest after implying that anything less than five-star service is unworthy, and then tying contractors’ livelihoods to users’ ratings. That’s unfair to everyone.