phiffer.org

Dan Phiffer Dan Phiffer is an Internet enthusiast based in Troy, NY

Escape from distractionland

I recently added some scripts to my work laptop designed to help me break out of my reflexive “cmd-T, T, enter” keyboard habit. That keyboard sequence loads up my Twitter timeline in a new tab before I’ve even realized what’s happening. I’m untraining myself out of habitual social media grazing by enforcing a rigid schedule.

Based on Mike Rugnetta’s excellent write-up, I basically hijack my Mac laptop’s /etc/hosts file on a daily interval from 10am to 6pm, with a one hour lunch break at noon. I’ve modified his approach slightly, since I tend to edit my /etc/hosts file regularly for web development, and can’t be bothered to maintain two separate copies of it. Instead of swapping between two different hosts files, I use sed to modify the file in place.

In my hosts file I have a couple lines that look like this at the beginning of the day:

# distractionland
# 127.0.0.1 twitter.com mobile.twitter.com api.twitter.com instagram.com mltshp.com

The rule starts the day commented out, so up until 10am it’s still open season on my wandering attention. Notice that you can stack up a bunch of hostnames after the IP address, there’s no need to make a separate line for each one. I recently deactivated my Facebook, so I don’t need that one in the mix any more.

My first script /usr/local/bin/disable-distractions blocks access to Twitter, et al by uncommenting the line:

#!/bin/sh
sudo sed -i .bak -E 's/^# (127.0.0.1 twitter.com.+)$/\1/' /etc/hosts

The script creates a backup file hosts.bak and then removes the comment like this:

# distractionland
127.0.0.1 twitter.com mobile.twitter.com api.twitter.com instagram.com mltshp.com    

The second script /usr/local/bin/enable-distractions comments the line back out, unblocking the websites:

#!/bin/sh
sudo sed -i .bak -E 's/^\s*(127.0.0.1 twitter.com.+)$/# \1/' /etc/hosts

The -i flag for sed is for “inline” editing, and the -E activates extended regular expression syntax. The edit command uses the form 's/.../.../', which basically reads as “search for … and replace it with …” The first … is a regular expression matching the line, and the second … either prefixes the line with # or removes the #.

I use the launchd daemon to call these scripts using four .plist files according to a daily schedule:

  • 10am: disable-distractions
  • 12pm: enable-distractions
  • 1pm: disable-distractions
  • 6pm: enable-distractions

Note that the computer must be running at each transition time, or the scripts won’t fire. But I can always just invoke one or the other from the command line if needed.

The launchd configuration is handled by four .plist files saved in my /Library/LaunchDaemons folder. Once everything was set up I activated them like this:

sudo launchctl load /Library/LaunchDaemons/org.phiffer.workday-start.plist
sudo launchctl load /Library/LaunchDaemons/org.phiffer.workday-end.plist
sudo launchctl load /Library/LaunchDaemons/org.phiffer.lunchbreak-start.plist
sudo launchctl load /Library/LaunchDaemons/org.phiffer.lunchbreak-end.plist

I’ve found this “one simple trick” has been effective at managing my novelty-seeking brain. Each time I absent-mindedly load up a blocked page I take a deep breath and close the tab. For now I’ve chosen not to block my feed reader, so I’m keeping up with the weblogs I subscribe to much more regularly than I did before. Keep on posting, friends!

I’m as mad as hell, and I’m not going to take this anymore!

On September 5, 2016 I won the Listserve lottery. In case you haven’t heard of it, the Listserve is a one-message-per-day email newsletter. Each day a single person from the 21,000+ subscriber list gets to send a message out to the entire list. Here’s what that invitation looks like:

Hey there, you’ve been chosen to write to the rest of The Listserve. You have 48 hours to respond with the following:

Name:
Email*:
Current Location:
Subject Line:
Email body:

*this can be blank, but you will not receive responses

We’re excited to read what you have to say!

—Your friends at The Listserve

GUIDELINES:

What can I send?
– Text — letters, numbers, symbols
– No links, images, HTML, Javascript, etc.
– 600 words max

What can I write?
– Anything! Well, almost anything… We reserve the right not to send your message if it threatens the spirit of the list — hate speech, etc.
– If you send something overtly controversial, or (self-) promotional, you must provide your name and email information and why you believe in what you are endorsing — you cannot be anonymous. Spam is unappreciated.

The following are random suggestions for you from the Listserve community:

  1. Motivational/life tips should be kept to a minimum. Those are a dime a dozen. Instead, tell me a story, give me a reason to want to know more about you.

  2. Your subject line is everything. I choose which listserve emails to ready solely based on the subject line. No pressure, though :)

  3. Tell me a story. Write a poem. Did you meet somebody interesting? Do something outrageous? Experience something spooky?

By submitting an email to The Listserve, you are agreeing to license it under the Creative Commons Attribution 3.0 Unported License, and you agree that you have sufficient rights to be able to grant such a license.

Oh, by the way, sometimes there is a queue of emails, so don’t worry if you don’t see your email go out right after you submit it. We’ve got it, and unless we contact you, it’ll be going out soon! Thanks!

I thought about what I would do, how I would spend my 600 words. I emailed friends and collaborators to bounce ideas off them. I thought about what it meant to get so many people thinking the same thing at approximately the same time.

Around this time I was also working hard on a side project, an SMS-based group chat server that resembles what the very first Twitter service looked like. This software was still very much a work in progress (it still is!). I decided I would announce my new social software and effectively launch it via the Listserve.

Here is my Listserve message, sent September 15, 2016:

(TL;DR—this one is kind of an experiment, scroll to the bottom for the punchline.) There’s a scene from the movie Network (1976), where TV news anchor Howard Beale has a series of epic on-air rants about the uncertain state of the world. He urges his viewers: “I want you to get up now. I want all of you to get up out of your chairs. I want you to get up right now and go to the window, open it, and stick your head out and yell…”

Then he says the line maybe you’ve heard—“I’m as mad as hell, and I’m not going to take this anymore!” He stands up, repeating the line with increasing intensity. The movie cuts to a shot of an apartment complex, and people start opening up their windows. It’s hard not to feel a sense of excitement when they start hollering out their windows, it almost feels like it’s really happening.

But I’m not so interested in Howard Beale, or the “mad as hell” speech itself—some of which is uncomfortably similar to the populism of a certain American political candidate. What’s really striking to me is how our use of broadcast technology has changed since the ’70s. All those people hearing the same message from their TVs, all at once. And with the ethical weight of Watergate-era news journalism. It kinda feels like we’ve lost that capability with DVRs, social media, and Internet streaming.

I mean, we also have all this new stuff—so many new (relatively) inexpensive capabilities that let more of us reach many more people. Today’s Internet mega-viewerships surely outnumber 1970s TV, but it’s also interesting how many smaller in-between scales we have now. The Listserve is on that spectrum, somewhere between a receiving a postcard and browsing through trending hashtags.

I’m curious: what’s the present-day equivalent of sharing a common acoustic space, like those apartment-dwellers in Network? Who are we all? Where do we live? What could we achieve if we acted in concert somehow?

Instead of yelling a slogan out of our windows (basically a 1970s retweet), I have a couple other ideas.

  • Let’s meet up IRL! We could select a handful of central locations and convene at a common time to build stuff/get weird/stare at each other awkwardly/make art/plan to overthrow the government/etc.
  • What about a backchannel? I’ve been working on a new project that I’m eager to try out. It’s a group chat, kind of a pared-down, SMS-based Twitter.

(Insert here: the part where I pitch my project, Small Data. It’s a data cooperative I’m starting up with some friends, a collectively run alternative to cloud-based-advertising-ware.)

Just reply to this email and I’ll let you know when I figure out how this meetup(s) thing will go. If you’re feeling adventurous and want to try out the backchannel—that part is already working! Send an SMS message to (646) 846-4777 and you’ll be able to pseudonymously chat with other people who sign up.

And for my money, Ned Beatty’s boardroom speech in Network deserves to be every bit as famous as the “mad as hell” rant. Look it up if you haven’t seen it!

Dan Phiffer
dan@phiffer.org
California

If you were reading closely, you may have noticed the span of time between when I won (September 5) and when my email actually got sent out (September 15). This was a very stressful time for me. Each day I hoped against hope that they would delay my message a little longer, so I could work more on my SMS software, and get it ready for an influx of new users.

The email went out. I thought well, here we go!. People started replying, and they were into the idea. I got messages from old friends I hadn’t been in touch with. I got a very kind message from Josh Begley, one of the co-creators of the Listserve.

This one was amazing to receive:

Hello Dan
I’m Asare from the republic of Ghana.
I’m really inspired by you listserv today. Thank you ver much.

Hope to establish a friendship between.

I loved getting all these replies, but I realized with a sinking feeling that the SMS messages weren’t getting delivered. The server had recorded outgoing messages as sent, but they were not actually getting sent. But I could see the incoming SMS messages, and the list of phone numbers started stacking up in my MySQL table.

Oh shit.

That’s when I panicked. What if it really shits the bed? What if I start SPAMMING all of these people with SMS messages? I disabled the SMS service and hunkered down with the code. Meanwhile, I replied to each incoming email reply as best I could.

And then, life just kind of bumped my weird project down the list of priorities. I can’t even remember what specifically happened, but I know I was traveling and focused on other work responsibilities. The end result is that I just kind of … didn’t follow up.

And so here we are. It’s just before 10:30pm PDT on Email Debt Forgiveness Day (a useful holiday invented by the Reply All podcast).

I am posting this here to explain what happened to the many adventurous Listserve subscribers who took the time to reply, or send an SMS message.

To all of you, I want to say: I’m so sorry!

But I also think this idea still has legs! Maybe it just needed some more time and motivation to actually be workable. I have ran some more test runs with the SMS software since then, and it’s still not perfect, but it is starting to feel stable enough for actual use.

So much has happened since last September to warrant being mad as hell. I don’t know what it means to connect with a distributed group of mostly-strangers. But I think it could still be an interesting cross-section to mobilize to … do something.

If any of this resonates with you, please get in touch! The SMS service (fingers crossed) should actually work this time. I will try to do better with all the emailing and such.

And happy EDFD!

Email to a former student

Last night I got an email from a former student, and figured I’d publish my reply. Maybe it could be helpful to you!

Hey Professor Phiffer,

I hope all is well with you. Its A— from CCNY. I took a JS course with you a few years ago. I hope that this is not a bad time to reach out to you. I’m reaching out to you in regards to programming and becoming a fully fledged software engineer. I see that now JS is one of the most important languages that are being used today, and I would love to master it and programming concepts in general.

However, I’m realizing that there are a lot of flaws to the way that I approach programming, such as how to solve a simple problem. I realized it during a technical interview that I’ve had a few months back.

I know that this is out of the blue, but I’m wondering if there is any way to accurately learn how to properly program? I believe that all of these years I’ve been doing something wrong despite building out lots of websites. I was heavy on declarative languages such as HTML and CSS but never fully understood imperative programming languages such as JS and other real programming languages. Would you have any advice as to how to properly go about this?

I also truly don’t know what I’m missing as a programmer because I would love to get a frontend engineering job. Thank you for listening, and I look forward to your response Professor.

Sincerely,
A—

Hey A—,

I can totally relate to this! I think landing your first junior developer gig is among the hardest things to pull off working in tech. I crashed and burned in 3 or 4 of my first interviews, just completely red-faced and speechless, unable answer some “basic” tech question (especially the trivia kind).

The thing to realize is that you probably don’t want those jobs anyway! I bet they’re awful places to be a junior dev, they’d work you raw and not give you professional development or space to grow. So don’t get too discouraged if it doesn’t work out at first.

If you want it to happen, it will happen with time, the job market is in your favor here. It’s just a matter of finding your way to the right people. This is a largely a networking thing, and that’s probably one of the reasons grad school is still a good investment despite the crushing debt that’s often involved.

And by all means learn JavaScript, it is a super relevant tool, but it is just one tool in the toolbox. HTML and CSS are 100% real programming languages, don’t let anyone tell you otherwise. I find that mastery of CSS and the DOM is way more valuable than being a hotshot with a flavor-of-the-month JS framework.

Taking programming seriously is helpful for improving your software, but it’s also a great way to gain the confidence to interview well. Some of that just comes from doing it repeatedly, and learning from other people’s code (read the jQuery source, read the annotated underscore.js). There are also a lot of soft skills that have helped me along the way: send emails to people (you are already doing this!), buy the O’Reilly books, subscribe to blogs, listen to podcasts, get familiar with the “lore” (see: The Rise of Worse Is Better, The Jargon File, Macintosh Folklore).

Realize that some of all that (and my advice) will be somewhat outdated. You are going to have to invent a lot of the shit yourself that doesn’t exist yet, because our profession is still in the dark ages. Architecture and urban planning are decades more advanced than where we are, you are by no means arriving too late to the party.

Write your own blog posts, embrace the beginner’s mind, start going to BrooklynJS (or ManhattanJS, JerseyScript etc.) meetups—apply to be a speaker, don’t be intimidated that your talk ideas might be too basic.

And hopefully all of that doesn’t sound too overwhelming!

Dan

We will fight you and you will lose

Here are my responses to Donald Trump’s media accountability survey, which I’ve taken at face value. Yes, the questions are extremely one-sided, but they do allow for “other” responses.

Just to be clear, I certainly don’t advocate for participating in the survey. The research methodology here is dubious, to say the least. I hope I haven’t contributed to legitimizing it as anything but the propaganda that it is.

  1. Do you believe that the mainstream media has reported unfairly on our movement?
    Using the word “movement” here diminishes the Office of the President, implies that you regard your power as extra-constitutional.
  2. Do you trust MSNBC to report fairly on Trump’s presidency?
    It is telling that MSNBC comes first on the list, that you regard the network as the biggest threat to your legitimacy.
  3. Do you trust CNN to report fairly on Trump’s presidency?
    Your outsize reaction to CNN’s reporting on the leaked memo has given it greater weight. You must realize the significance of a Carl Bernstein byline on it.
  4. Do you trust Fox News to report fairly on Trump’s presidency?
    I was surprised with the moral clarity and sharpness of critique in Shepard Smith’s reaction to yesterday’s press conference.
  5. On which issues does the mainstream media do the worst job of representing Republicans? (Select as many that apply.)
    (no “other” option available)
  6. Which television source do you primarily get your news from?
    (no “other” option available)
  7. Do you use a source not listed above?
    It’s so weird that you think TV news is the most relevant arm of the 4th estate. I guess it’s a generational thing.
  8. Which online source do you use the most?
    I financially support the New York Times, Democracy Now, and a handful of podcasts, but your question belies ignorance of the online media ecosystem. Any given “online” source could be your biggest threat (hint: all media are now “online,” it’s a useless category). Today maybe it’s BuzzFeed, tomorrow it will be someone else.
  9. Do you trust the mainstream media to tell the truth about the Republican Party’s positions and actions?
    You have demonstrated a disregard for “the truth,” but I think your question is about whether more sources will go the way of Gerard Baker (editor of the WSJ), and fall into line with regime-approved framing of events. If that happens, I don’t see how the country will survive your Presidency.
  10. Do you believe that the mainstream media does not do their due diligence fact-checking before publishing stories on the Trump administration?
    Many mainstream media sources are plagued by “the view from nowhere” where extreme views become legitimized by impartiality.
  11. Do you believe that the media unfairly reported on President Trump’s executive order temporarily restricting people entering our country from nations compromised by radical Islamic terrorism?
    I liked how Sarah Jeong characterized your EO on Twitter: “the Muslim ban is unconstitutional, illegal, a bad idea, and immoral. And those are different things.”
  12. Were you aware that a poll was released revealing that a majority of Americans actually supported President Trump’s temporary restriction executive order?
    Yes, I read about the poll, and it was disappointing. This is why we don’t put human rights up to a vote, why they are protected in the Constitution.
    Edit: there is a slight majority against the Muslim ban:

    National polls using random telephone samples have found support for the proposal ranging from 42 to 47 percent with slight majorities opposed (51 to 55 percent); Trump has cited Web and automated polls that show support cresting in the mid-50s, though those polls rely on less rigorous samples of the public.

  13. Do you believe that political correctness has created biased news coverage on both illegal immigration and radical Islamic terrorism?
    Any time you hear someone complaining about “political correctness,” it’s really a demand that their bigotry should be tolerated.
  14. Do you believe that contrary to what the media says, raising taxes does not create jobs?
    This is such a tortured question, how did you arrive at this phrasing? Plus it’s meaningless without saying who is being taxed, and under what circumstances. I advocate for more progressive taxation as a means to address wealth and income inequality.
  15. Do you believe that people of faith have been unfairly characterized by the media?
    I do wonder how long it will be until Atheism isn’t a political liability in the USA.
  16. Do you believe that the media wrongly attributes gun violence to Second Amendment rights?
    I don’t think the Second Amendment protects individual gun ownership, but your question is about the media. I wish the media would give more attention to the connection between increased gun ownership and suicide and accidental deaths.
  17. Do you believe that the media has been far too quick to spread false stories about our movement?
    Again with that divisive language: “our movement”? My fear is that “your movement” is about White Supremacy and racial violence. Your overly-defensive response to yesterday’s question about anti-Semitic threats is just the latest in a series of instances that make me extremely wary of your intentions.
  18. Do you believe that the media uses slurs rather than facts to attack conservative stances on issues like border control, religious liberties, and ObamaCare?
    You seem to think that disagreement and fact-checking is an insult. This is an authoritarian argument, that your position is above criticism.
  19. Do you believe that the media purposely tries to divide Republicans against each other in order to help elect Democrats?
    You were the outsider candidate, by definition you were going to be divisive to the GOP. But I do wonder if the media were too careful not to seem partisan in the last election, that they didn’t take you seriously (and literally) enough.
  20. Do you believe that the media creates false feuds within our Party in order to make us seem divided?
    You must feel extremely isolated right now. I think it’s because everyone within your party is considering whether they’re willing to go to jail for a political figure they never fully supported.
  21. Do you believe that the mainstream media has been too eager to jump to conclusions about rumored stories?
    Sure, anonymous sourcing weakens a story, but NINE anonymous sources forces a resignation. The key issue with the Flynn story is that he didn’t seem to realize his calls were being monitored. It’s a story about incompetence and that kind of sloppiness is what will get you impeached.
  22. Do you believe that if Republicans were obstructing Obama like Democrats are doing to President Trump, the mainstream media would attack Republicans?
    The premise of this one is so laughable, Mitch McConnell’s “top priority” was to limit Obama to one term. The strategy worked, but you don’t get to claim it didn’t happen. You cannot argue away the real political cost of obstructionism, and Democrats will have to answer to it as well.
    Edit: obviously Obama wasn’t limited to one term, but his agenda was severely checked by the GOP’s constant stonewalling.
  23. Do you agree with the President’s decision to break with tradition by giving lesser known reporters and bloggers the chance to ask the White House Press Secretary questions?
    You buried the most important question! You must have been embarrassed when “Betanyahu” saw how you conducted the joint press conference. The White House press briefing has become a self-parody of a cowardly dictator unable and unwilling to respond to difficult questions.
  24. Do you agree with President Trump’s media strategy to cut through the media’s noise and deliver our message straight to the people?
    To be fair, Obama set you up for this one. He set a precedent of media evasiveness that enables you to avoid accountability with impunity.
  25. Do you believe that our Party should spend more time and resources holding the mainstream media accountable?
    You are threatening the freedom of the press. We will fight you and you will lose.

Solidarity from NYC

Yesterday’s protests at JFK airport were loud and angry and make me hopeful. Photo by Ellie Irons.

Decided to publish this message I just sent to a friend in Atlanta who emailed asking about how to find out when and where the protests are happening.

Thanks for the link, I’ll give that a read. It’s interesting how these dynamics of oppression seem to fit so neatly into historical precedent. How is it that us Americans think of ourselves as somehow immune to all of this?

We were out at JFK yesterday and it was a really great experience. Loud and angry, with overwhelming turnout. But honestly the smaller protests in lower-profile places in the world continue to be the ones that give me the most inspiration. It takes a lot more guts to show up for a tiny demonstration where you’re easily picked out of a crowd, or where small town dynamics make anonymous protest impossible.

BTW, I saw that Rep. John Lewis was out at ATL, just hanging out in the terminal until he got some answers. So awesome.

I feel like getting information about a protest is an ongoing challenge, especially at events that aren’t officially permitted by local government. There’s a kind of fine line to walk—organizers want to get the word out, for news of an event to spread. But if it’s technically an illegal gathering, it may be difficult to find “official” or consistent sources of good info. And this is where social media is helpful.

It’s a good time to get into Twitter I think, but the trick is in knowing who to follow and how to avoid feeling overwhelmed. My advice would be to find out people you know who went to protests in Atlanta, and just ask them to ping you next time they hear about something. For my part, I first heard about the JFK demonstration via Facebook Messenger (which I hate, but shit like this keeps me on it) from a friend who lives in LA, and then a couple hours later I got a mass email from an immigrant rights org. So maybe sign up for some email lists for local advocacy groups.

Anyway, good to know you’re thinking about this stuff! I am hopeful that we’ll continue to exercise our right to free assembly before things get even worse and it becomes too dangerous to protest (from police violence or stiffer court penalties). So in the interim, let’s go and put our various privileges to productive use while we can.

Solidarity from NYC,
Dan

Addendum

Good point from Paul, basically Facebook is still where things are happening.

Also, if you want to get out and protest today in New York City, go to Battery Park at 2pm.

Multi-factor authentication for busy people

Multi-factor authentication (aka “two-factor,” or “two-step,” or 2FA) is a really great way to protect yourself (and anyone you’ve ever emailed). There are excellent and detailed guides out there, but the sheer amount of information about how to do things properly can be daunting for someone who has other important things to get done. I’m not saying don’t read all the nuanced details about security, just don’t put off setting it up right now if it seems too complicated.

If you do nothing else to protect your privacy, do this. (If you do two things, start using a password manager.)

You should set up multi-factor authentication on every account that offers it, but because each of those accounts all have a “password reset email” feature, securing your email account is extra important. If you use Gmail, it’s really easy, and you should literally stop and do this right now if you haven’t already. (I use FastMail as my email service provider, and they also support multi-factor authentication.)

Enable it!
Enable it!
  1. Go to myaccount.google.com and click “Sign-in & security”
  2. Scroll to the box that includes the “2-Step Verification” button and click on it
  3. Follow the steps to confirm your phone number (gotcha: it’s easy to confuse the “from” phone number with the code you need to type in)
  4. Click the “Turn on” link to activate the telephone-based confirmation step
  5. Print the backup security codes and stash them somewhere safe (in case future-you loses a phone)
Turn On 2-step verification
Turn On 2-step verification

What happens next? From now on you will need your phone to sign in with your Google account. This can be inconvenient, but it will make your account much harder to hack.

Do you use an email client like Mail.app? Did that email client stop working suddenly? You may need to configure your mail client to use App Passwords. If you changed the mail client to use the App Password and it still doesn’t work, try deleting the account and setting it up from scratch. I know all of this feels like a big hassle right now, but it’s mostly something you can set up and forget about.

Extra-credit (do this later if you don’t have time right now)

There is an known attack on SMS- or phone call-based multi-factor authentication where an adversary can trick your cell phone provider into assigning your phone number to a different phone (this falls into the category of hacking called social engineering). This tactic has been used on high profile activists, so you should consider taking one additional step to improve your security.

Setup an Authenticator app
Setup an Authenticator app
  1. Install the Google Authenticator app or Authy
  2. Go back to that 2-Step Verification page and scroll down to the “Set up alternative second step” section
  3. Click on the “Setup” link for Authenticator App
  4. Open the app you just installed on your phone and take a photo of the QR code
  5. Your phone will show a code and a countdown timer, type that code into the web form

Well done, you did it! Or maybe you got stuck? Please get in touch and let me know what gave you trouble. And then get back to all of your amazing work.

Surveillance and inaction

NYPD skywatch tower
Photo: Life under occupation by Barry Hoggard

I am awash in thoughts and feelings this week. Donald J. Trump will very likely be our next President. This fact has already emboldened hate groups, leaving us to contemplate what the next four years could mean—especially for friends who will likely become targets of bigotry.

Should we go outside and protest? Should we turn inward and lean on our support networks? Do we start thinking about the 2018 midterms? Yes. Yes to all of it. If you need time away from this divisive election, you’ll be welcome to join us when you’re ready. I completely understand, especially if you worked on a 2016 political campaign.

For my part, I am regrouping, considering how I can do more, do better. Some friends have asked me about strategies for resisting surveillance. Digital privacy will become even more important in the coming years, and we should all collectively get better at protecting ourselves.

A very short answer is: switch your texting over to Signal, use a password manager. Start today.

Keep in mind that surveillance is for controlling your behavior. If you’ve ever said “but I have nothing to hide,” now is a good time to consider whether you intend to keep it that way. If you do choose to toe that line—maybe you want to wait and see if a President Trump keeps to his campaign promises—take a moment to consider how pervasive surveillance and the threat of anticipated consequences may be blinding you from a civic responsibility to resist.

I’d like to write more about this in the coming weeks, but for starters here are some links that might be helpful. Stay safe out there.

If you are wondering how precisely to get involved, please don’t hesitate to contact me. I am figuring that out myself and would welcome your ideas.

How to escape the advertising bubble

Maciej Cegłowski has interesting things to say about big data and the online advertising business. He argues—persuasively, I think—that the advertising technology (adtech) sector is overvalued. In a recent essay, he describes what will happen when that adtech bubble finally bursts.

The problem is not that these companies will fail (may they all die in agony), but that the survivors will take desperate measures to stay alive as the failure spiral tightens.

These companies have been collecting and trafficking in our most personal data for many years. It’s going to get ugly.

Remember when, in its death throes, RadioShack sold off the customer data of 67 million people? This will probably be worse than that. And a whole lot of the web is built on top of adtech spaghetti business (think: spaghetti code, but for business).

The prognosis for publishers is grim. Repent! Find a way out of the adtech racket before it collapses around you. Ditch your tracking, show dumb ads that you sell directly (not through a thicket of intermediaries), and beg your readers for mercy. Respect their privacy, bandwidth, and intelligence, flatter their vanity, and maybe they’ll subscribe to something.

One way I could see publishers phasing in this more-respectful business model is through existing web browsers’ do-not-track differentiation. Every modern browser has privacy settings that let an individual user opt out of online tracking. That do-not-track preference gets included with each and every web request, but it’s up to the website operator to act on it. As far as I can tell, all adtech companies seem to ignore this preference completely.

Firefox privacy preferences
Firefox privacy preferences

Okay, so are you ready for my idea for how publishers can escape the adtech bubble? Stay with me here, because this is a crazy suggestion: if I’ve signaled through my preferences that I prefer not to be tracked, then … I dunno, maybe don’t track me.

A typical ad-driven website relies on dozens of companies to show me slow loading, poorly-customized advertising. But there’s nothing stopping the website itself from simply not letting those companies’ code onto the page.

I would say just switch to dumb (non-tracking) ads for everyone, but I know how this would play out: “it’s too extreme, we can’t afford it!” But here’s the thing, if you think this adtech spaghetti business is going to collapse, you’ll have to start switching traffic over to something else eventually. Why not start out with current and future subscribers (aka “users”) who’ve already indicated they prefer not to be tracked by the adtech industry? Just do what we’ve been asking for in the first place.

Here’s how: if a given visitor has checked the do-not-track box, you’ll be able to detect it. Adjust your ad libraries and CDNs to detect the DNT: 1 HTTP header and then show a small message congratulating yourself, and set aside those ad spots for “artisanal” ads. Once things are rolling along you can ditch the old bloated, crappy ads for everybody else.

You can already tell what proportion of visitors have do-not-track enabled, it’s there in the traffic stats if you look for it. You could pitch this to the higher ups with real numbers, and spin it as a Premium Advertising Experience, like organic fair trade traffic without all the slow bandwidth-bloat and creepy surveillance.

The big challenge, of course, is this type of effort involves cooperation between many departments that may not currently get along well. But getting the ad sales people and the ad tech people and the web developers to get along is important.

Nobody likes working on ads, and I know it’s hard to just get buy-in, let alone actually launch a new thing. But an adtech collapse might be an existential threat, better to get in front of this now rather than wait for it to happen.

Also posted on Medium.com

On faves, likes, and hearts

Filed under: Celebration
Filed under: Celebration

This week’s On the Media includes a discussion with the Tow Center’s Emily Bell, talking about a piece she wrote in The Guardian.

Yes, it’s about Twitter faves/likes/hearts. And yes, website design choices do influence user behavior!

I found myself not bookmarking, as I would have done a day earlier, a horrifying image retweeted by journalists depicting men using phones to film a woman being stoned to death for adultery. I did not “like” let alone “love” the image but wanted to note it as important. We must have a system which allows for capturing the significant as well as the appealing.

You may have experienced a version of this when a friend or loved one shares bad news on Facebook. I don’t “like” this, but I want to acknowledge it, and express my empathy. Facebook makes it easy to give that post a thumbs up. The cynical conspiracy theorist in me says this is an effort to make the site more compatible for a sale to Zuckerberg & Co.

The most baffling part is how Twitter is saying the new heart icon is “a universal symbol that resonates across languages, cultures, and time zones.” But then in the following sentence claiming that it is “more expressive, enabling you to convey a range of emotions and easily connect with people.”

It may be true that newer users—from a wider range of backgrounds—may find ❤️ symbols more familiar, but the ⭐️ undoubtedly offers greater flexibility in terms of which “emotions” are being conveyed.

It’s a small change, and I understand that complaining about social media software is tedious, but it does point to how Twitter is first and foremost a profit-seeking company. This change was meant to get their monthly active users numbers up (and by extension, their stock price). And perhaps the strategy is working:

“It’s a change that’s been fantastic for the platform,” said Weil. “We see now 6% more hearts, 6% more likes on Twitter than we saw with favorites.” He also noted that new users tend to engage 9% more with this change.

Back to Emily Bell in The Guardian:

The inherent tension at the centre of all modern communication businesses—including every news organisation—is that only the likable is reliably bankable.

The relaying of trauma, devastation and cruelty is not inherently profitable in the same way that the relaying of how awesome the new Adele track is or how much we adore kittens might be.

What people like on social media has consequences; not just the marginal economic kinds, but also for how the public publics (a verb) on the network. As Zeynep Tufekci has written in The Message:

What if Ferguson had started to bubble, but there was no Twitter to catch on nationally? Would it ever make it through the algorithmic filtering on Facebook? Maybe, but with no transparency to the decisions, I cannot be sure.

Would Ferguson be buried in algorithmic censorship?

Anyway, here’s a small selection of the 19,500+ (!!) tweets I’ve faved so far:

The Whale is dead, long live Linky (updated)

I recently got this email about my project The Whale:

I am not a web developer or anything like that, but I am a person who has struggled with OCD and dyslexia for decades. A work like Moby Dick is normally not accessible to me because of the way I read. Your way of organizing it into small bitesize, all caps chunks has allowed me to enjoy this great literary work.

I know this is probably not what you had in mind when you wrote the code, but I wanted to thank you all the same.

I was floored. This is the most rewarding kind of feedback to get about a project.

And while that’s certainly not what I had in mind when I wrote the code, there is a part of me that enjoys the constant fidgeting with the text. All the clicking (or tapping) eases some part of my brain that might otherwise have me go impulsively check for new social media notifications.

I asked if there were any other texts that he might enjoy in this format, and then decided to generalize my project to show additional novels beyond Moby Dick. And so was born the project I’m now calling Linky. The current selection includes:

Update: Added three more titles to the list.

From [Mary Shelley’s Frankenstein](https://phiffer.org/linky/frankenstein#14)

If you have any ideas for other titles that might benefit from the Linky treatment, please let me know.

Let’s Encrypt (updated)

Update: since this was written, the letsencrypt-auto script has improved significantly. When I tried it again today (December 8, 2015), the process was basically just cloning the GitHub repo and running ./letsencrypt-auto. I’ll leave the original (outdated) information here for posterity.

As of today phiffer.org is being served using SSL encryption thanks to a free certificate from Let’s Encrypt. It’s a recently launched service, sponsored by Mozilla and the Electronic Frontier Foundation (among others), intended to make HTTPS encryption ubiquitous on the web.

Hooray for [Let's Encrypt!](https://letsencrypt.org/)
Hooray for Let’s Encrypt!

Let’s Encrypt is very new, and there are still some rough edges, but overall I’m impressed by how smoothly the process went. I wanted to document my experience, in case it’s helpful to others (and future-me). This post is a bit more technical than usual and, because the service is new, much of it may not be relevant very long into the future. That said, I hope this might offer some clues for folks trying to get up and running on HTTPS.

(more…)

Sovereignty, holograms, and international sports

I was reading a story today on the Guardian’s Comment Is Free website and fell into an internet rabbit hole. I’ve always understood that Native Americans who live within U.S. borders enjoy a certain sovereign status similar to that of a nation state. Declaring yourself as an independent state is pretty straightforward, the more complex part is proving your legitimacy at actual border crossings.

I got curious about this seemingly basic question: who is allowed to cross U.S. borders, and how does one qualify? (more…)

Metadata+ is dead, long live Ephemeral+ (updated)

In Spring 2014 I was driving through Boston on my way to visit family in New Hampshire. I started researching what some good lunch options might be along the route we were taking and decided to try out a new app I’d just installed called Jelly. It’s kind of like an instant, mobile app version of Quora: you can ask the app a question that gets broadcast out to your friends and friends-of-friends. Then, within a few minutes, answers are beamed back to your phone. Presto, I can get local recommendations for a lunch spot!

I’d recently finished reading Ethan Zuckerman’s Rewire. The book discusses how the scope of information we encounter—what ideas we’re exposed to—is limited by the boundaries of our pre-established social networks, an important aspect of the filter bubble phenomenon. I was thinking about how my lunch scenario fit into what I’d just been reading, me leveraging my social connections to solve the most first world of problems. And then this notification unexpectedly pops up on my phone, instead of the lunch tip I was waiting for.

Oof.

This was a notification from Josh Begley’s Metadata+, another app I’d recently installed. The app has a vague name, but its purpose is very particular. Whenever details emerge about a U.S. drone strike, it broadcasts a notification (also available via the Twitter handle @dronestream). It’s an invited interruption, a gentle reminder about how interconnectedness also includes 67-year-old midwives from North Waziristan.

Begley’s app is a great example of critical design. The first, and most obvious critique, is of the U.S. Government’s reliance on drone strikes abroad. The experience of living with this app shows just how infrequently we’re reminded that we are still at war, going on 14 years as of next Wednesday.

The other critique is about the capricious power Apple wields over digital culture. The name Metadata+ was chosen to obfuscate its purpose from app store reviewers, who rejected it repeatedly saying it was “not useful or entertaining enough.” Both Apple and Google have the last word on what software is deemed legitimate enough to install on a mobile phone. And as mobile phones increasingly become a default computing platform, it’s not hard to see the danger involved with censoring apps on the basis of political sensitivity. We’ve ceded control over the boundaries of permissible thought to corporate entities.

Which brings us to this past Sunday, when Apple decided to remove Metadata+ from the app store because of “excessively crude or objectionable content.”

Apple has a long and storied history of arbitrarily applying its decency policies to reject apps. As Sam Biddle has pointed out in Gawker, there are many, many other apps of questionable value that get approved all the time. It’s both a matter of inconsistency, and that political speech is being confined to those computers that happen to have keyboards and file systems.

But the larger issue, as pointed out by Zuckerman in his book, isn’t necessarily about what information is available to us, but rather that we care enough to seek it out. The removal of Metadata+ is about not being able to imagine why you’d want such a thing. And the extent that companies cater to our desires to be endlessly amused by safe and familiar material. We need these gatekeeper corporations to treat us more like digital cosmopolitans, to use Zuckerman’s phrase.

I was glad to learn from the Gawker piece that Begley is one step ahead of Apple on this one. He’s already released an identical version of the app, just with a different name: Ephemeral+.

Download it before it’s censored. Update: that one got pulled too.

Also, I highly recommend Life Alive for lunch, it’s a lovely vegetarian place in Salem, MA.

Fall updates

It is starting to feel like Fall here in New York, and I am up to some new things since the last time I wrote here in January (!). By the way, those New Years resolutions? They are going terribly! So it goes.

The big news, if you hadn’t heard, is that I’ve left my job at the New Yorker magazine. I am still very proud of how the redesign turned out, and I learned a ton from my many amazing colleagues there, but after two years it just felt like time for me to move on. So I am back to freelancing, and feeling excited to work on some new things. And yes, I am looking for new clients, you should hire me!

In addition to freelancing, I’ve also started a fellowship at Columbia’s Tow Center for Digital Journalism. I’m working with an awesome group of collaborators using telephony and wifi darknets as tools for gathering stories. I’ll be posting more about that here in the coming weeks.

Also, if you look around, you may notice I’ve updated my WordPress theme a bit. The underlying structure is very similar to what I had before, but I focused on a few key improvements:

  1. The page layout is now responsive, so it works better on very small and very large screens.
  2. Whenever possible, I’ve minimized my reliance on third-party tools (for example, I no longer use TypeKit for my header fonts).
  3. So long green and red, hello pink! I’ve also made it easy to change the color scheme in the future through the magic of Sass variables.
  4. Comments are gone! At least for now, maybe I’ll change my mind about that. I do love getting feedback about stuff I post on here, so drop me a line if you might have otherwise left a comment.

Of all the changes in this website update, the one I feel best about is cutting out the third-party tracking. I’ve noticed that YouTube embeds serve up a DoubleClick advertising tracker, just by loading a page with a video, which isn’t cool. Now video embeds only load on demand, after you’ve hit the play button (mobile visitors may need to tap two times). Naturally, you’ll still be tracked by Google if you play an embedded YouTube video, but otherwise the page shouldn’t leak data to any off-site parties.

Third-party trackers, before and after.
Third-party trackers, before and after. Mint is the one thing I kept around, but it’s hosted on my own server.

The bottom line is I am in control of what goes up on phiffer.org, which includes things like hidden advertising trackers. Now there is slightly less ambient surveillance around here. Plus the pages should load marginally faster!

2015 resolutions

I have some resolutions for the new year. By posting them onto a public weblog I believe they become officially binding.

  1. Write more, and read more to improve my writing.
  2. Live more in each moment. To that end, be more aware of how my time is spent.
  3. No new projects. Focus instead on fixing and improving things I’ve already begun.

In 2014 Ellie and I exchanged resolutions. Three times a week we each have our respective tasks: I have a regimen of stretches and exercises, and she is supposed to meditate for 5 minutes. We began last January and have been offering each other reminders when we forget to keep up.

My exercises—along the lines of Pilates or Yoga—feel part of my routine now. It seems that one has stuck, and now the resolution has become unnecessary. That ought to be a meta-resolution each year.

Ellie also does her own stretches and exercises, but doesn’t need the same spousal nudge to keep up with her routine. For the sake of balance, I’ll throw in a bonus fourth 2015 resolution: also make time for meditation.

  Writing  ·  January 1, 2015
  ·