# 01 Jan 2015, 10:53AM: Snapshots of Yesterday:
A small gallery of photos from yesterday.
And once I knew that Dreamwidth was about to donate $7,000 to complete my $15,000 matching challenge:
And then I called Christie and Kirsten and Reid, with hope and joy.
I am so grateful to Dreamwidth, to the 90+ donors who gave in this campaign, to the Stumptown Syndicate, to the advantages I've had that have allowed me the extra income that I could funnel into this cause, and to all of us who are working on these shared goals. Thank you.
# 02 Jan 2015, 05:12PM: Hacking on Mailman using Launchpad and Bazaar:
I am starting to hack on Mailman, per my plan for early 2015 -- and along the way, I'm also learning how to use Launchpad and Bazaar.
Mailman
To quote maintainer Barry Warsaw's architectural overview, "GNU Mailman has been around since the early 1990s, when John Viega wrote the first version to connect fans with the nascent Dave Matthews Band, the members of which he was friends with in college." DAVE MATTHEWS BAND! I think this is amazing.
The developers just released 3.0 beta 5, Warsaw saying the 3.0 release is "really quite close now". As steering committee member Terri Oda explained and as Warsaw detailed when announcing the first beta of Mailman 3 in April 2014 (and in the architectural overview), the new suite has some cool new abstractions and a bunch of great new functionality.
Here are some pages I've found helpful while diving in. (Many are outdated; when the wiki conversion finishes up, I hope to do some gardening and updating.)
I've also enjoyed reading Warsaw's blog, and learning more about the weird ways of ISPs and email providers. As one exchange on the Mailman support list went:
This morning all of my subscribers with aol addresses were automatically unsubscribed from my list.
Why today? I thought all the DMARC issues had been resolved in the latest mailman version, and it's been 8 months now since the changes at AOL.
--Any suggestions?
AOL has been having serious delivery problems. It's not just you.
My suggestion would be to sigh wearily and add the subscribers back in.
Launchpad
Mailman developers host their code, do code review, and track bugs on Launchpad, which Canonical runs.
I'm more familiar with Gerrit, Bugzilla, Trac, FogBugz, and GitHub, but I know Launchpad some. A few years ago, I wrote an overview of how Launchpad developers review each other's code, including the "merge proposal" concept (very roughly like a pull request; example). And I have used the bug tracker in the past -- it's similar to other bug trackers. So I have already been a tourist in Launchpad, which makes it easier to jump in as an expat. I'm still working on understanding the interaction of series, milestones, and releases with branches.
(I am very lucky in that I have a spouse who used to develop Launchpad itself (specifically the API) whom I can ask plaintively for help.)
You can create a test project on staging -- I will be doing this to learn Launchpad and Bazaar better. By the way, the RSA fingerprint (for when you upload or download code via the command line) changes, possibly every week when they wipe test data, and there's no place to verify that fingerprint.
Launchpad works best hand-in-hand with....
Bazaar
Canonical created Bazaar, a distributed version control system, several years back. I hadn't used it before starting to work on Mailman.
Again, I'm lucky -- Leonard worked in Bazaar for years (I am rather better than he is at git, so here's where the tables turn).
Some Bazaar resources (I have not looked at all these yet):
I am overcoming the differences between Bazaar ("bzr") and Git, but slowly. For instance: in Git, when you clone a repository, you're also getting all the branches. In contrast, with Bazaar, you download each branch separately, and they go into separate directories. For instance, if you want the foo
and bar
branches of testproj
, you'd make local directories to house them, like:
$ mkdir testproj
$ mkdir testproj/foo
$ mkdir testproj/bar
Also, to oversimplify, when you do a merge in Bazaar, Bazaar just cares about merging the diffs -- you won't necessarily get all the commits (and commit messages) from the other branch grafted onto your branch. Or at least this is what I've run into -- I'm working on it!
# 03 Jan 2015, 12:15AM: Signs And Language:
I spent the summer of 2001 in Russia, where I saw this movie theater advertising Pearl Harbor with Ben Affleck (the banner, transliterated) and Crouching Tiger, Hidden Dragon (the marquee, translated). If you don't yet know Cyrillic, maybe you can use this to learn the letters "f", "p", "l", and "r"! Also during this period I saw a transliteration of "Erin Brockovich" (which looks very wrong and should be "Erin Brockovna") and a translation of "X-Men" (as "People X").
A few years later, in southern India, I saw that enterprising advertisers were giving away (read: affixing to homeowners' gates) "No Parking" signs ... that is, small metal sheets printed with 90% ad, 10% "No Parking". The ad I photographed particularly confused the issue by proclaiming: "Healthy & Tasty cooking oil: No cholesterol / No trans-fat / No parking".
# 04 Jan 2015, 11:12AM: A Few Technical Talks I've Really Liked:
Someone at Hacker School asked people to list programming/technical talks they'd liked, and to include links, context, description, and what makes it great. I said:
A Dozen Databases in 45 Minutes -- audio (click "Download audio of this session"), liveblog. You are a developer confused about what data storage tool to use. If your understanding of data storage tops out at "Mongo is webscale" or "mysql + memcached = win"; then this talk is for you." So the speaker gives a whirlwind tour of several database management systems, including the first explanation of why you'd give up consistency for performance that has ever made sense to me!
Cache me if you can: memcached, caching patterns and best practices -- slides, video. You are a developer who has heard that you should cache things and has worked on systems that have deployed to production. The speaker explains how memcached works, what it DOES NOT AND CANNOT do (I love that -- the use case is so much clearer to me now), and walks you through using it.
Python Epiphanies -- exercise, video. You are a Python developer who's written a few thousand lines of code, cumulatively, and you aren't clear on what decorators, iterables, partials, generators, and/or namespaces really are, or when/how to use them. This tutorial walks you through those. I had lightbulb moments here around how most things I'm used to doing in Python are syntactic sugar over double-underscore-methods, and I am more comfortable understanding and using the features I mentioned. (Also check out "Loop Like a Native" for more similar enlightenment.)
Freedom, Security, and the Cloud -- slides. You have to deploy code in the cloud and sometimes you pay cloud platform/hosting providers, and you want to understand the current security/privacy/sovereignty threats and solutions. The speaker gives you a clear (if chilling) understanding of the current systems and their vulnerabilities, and what we can do to mitigate risk, while also being super funny. Audio will be available someday soon.
Fundraising: Under the Hood -- video. You are a Wikipedia editor or reader who has seen those fundraising banners; you want to understand the system that displays those banners, interacts with payment gateways so donors can donate in a zillion currencies and countries, prevents fraud, double-checks the accounting with payment processors, and notifies everyone of everything. I like that the speaker demonstrates why and how a big system works by helping you see all the problems that the components solve.
Wikimedia Foundation January 2014 site performance update -- video starts ~37 minutes in?, slides. Context: you are a Wikimedia Foundation worker or Wikimedia volunteer who wants to understand why we should prioritize the speed of site response. I like the way the speaker contextualizes the importance of the work and helps less technical people understand terminology.
Designing Poetic APIs -- video, slides. You are a developer who sometimes has to create APIs or libraries, and you'd like a framework for the decisions you have to make. The speaker gives you useful principles with good and bad concrete examples for each.
An incomplete list for sure! I would love for other people to publish similar lists on their blogs. And I try to do similar things in my speeches, in case that is helpful.
Also, I wish these speeches had transcripts. So I have posted on the Transcripts for Everyone! community to request that!
# 04 Jan 2015, 12:36PM: More Fanvids:
I delved into the Festivids small fandom vid exchange archives (yay tags) and found some cool stuff to share.
Funny: a vid about The Thick of It emphasizing physical comedy and incompetence.
New perspective: "The Ballad of Wesley Crusher" (the vidder's notes point out that young Wesley's fascination with exploration and discovery "gets translated into an adoration for Starfleet, which is exactly the wrong place for him").
Tearjerkers: women's friendship in Community and Parks & Recreation (and check out the discussion of characterization of women in the comments); a vid about an Indian women's sports movie I have never seen and now want to; the triumph of Leslie Knope; the loyalty of Gromit to Wallace; courage in Apollo 13.
# 04 Jan 2015, 06:54PM: Political Fanvids:
Last week I saw a video about short online videos that critique film, or, as the narrator calls them, "video essays". (Content warning: includes Isla Vista killings video.) I was annoyed that the narrator said there weren't many such videos that take a political perspective challenging the original sources, so I sent him a bunch of links via Twitter. (Tweets: 1, 2, 3, 4, 5, 6, 7, 8, 9.)
For specific examples of videos that criticize film(s) politically, I mentioned "Hey Ho", "...on the dance floor.", "How Much Is That Geisha In the Window",
"The Price", "Handlebars", "Hourglass", "Women's Work", "Vogue", "It Depends on What You Pay", and "Thrift Shop" (notes).
I also pointed Lee at some additional sources of recommendations: some "metavid" listings on Fanlore, the Museum of the Moving Image's 2013 "Cut Up" exhibit, the "vids with a message" playlist at a WisCon vid party, and vids-related communities on Dreamwidth. And I mentioned legal advocacy regarding fanwork, the history of vidding since 1975, and more resources for video scholars.
You can probably guess how I feel about a man being surprised that there's a bunch of relevant work, mostly by women, that he's overlooked.
# 11 Jan 2015, 10:30AM: Ruthanna Emrys, A Writer I Like:
Are you reading the fantasy or science fiction of Ruthanna Emrys? I recommend it.
I found out via Ada Palmer's glowing review about "The Litany of Earth". This is your way into Emrys's work if you want stories about secrets, furtive faith, government mistakes, and the silenced Other from a well-known narrative. "The Litany of Earth" hits about two thirds of my "some things I like in fiction" list, especially "recognizing and even celebrating the work of underappreciated people."
Sometime later in 2014 I wandered across "Seven Commentaries on an Imperfect Land", which is a good place to start with Emrys if you like stories about religious communities, hospitality, fighting illness and drought, girls, women, and making friendships across boundaries. People familiar with fables or Judaism will get something extra out of the allusions. Among other things I like in fiction: "point-of-view character outwitting or outworking a terrifying antagonist."
Then yesterday I read "Exposure Therapy" (Part I, Part II). If you like fast-moving prose, Harry Potter/Global Frequency-style "you have been selected for a special secret mission" plots, good-faith cooperation, scientists, and phobia, check it out. It has "closely observed characters going through uncomfortable changes in life and identity," which I like, but the reason I particularly recommend it is that it hits with a whanging great mallet another of my favorite tropes: the (eventually triumphant) struggle to empathize with the Other.
All three of these stories are, in some way, about one of the most important themes in speculative fiction: empathy with the Other, especially if we get to see the struggle it takes to get it. (The power of that trope, by the way, is a big reason why the Star Trek: The Next Generation fable "Darmok" and Deep Space 9's "Duet" make us cry, and why Orson Scott Card's Pastwatch: The Redemption of Christopher Columbus is genuinely readable.) The personal is political here; temperamentally and ideologically I want to treat others as I wish to be treated, respectfully, assuming good faith until counter-evidence arises, reciprocating with mutual aid, and inviting to join in common causes.
If her fiction is any guide, Ruthanna Emrys gets that. (Also, at a recent WisCon, she enjoyed the "Imaginary Book Club" panel that my friend and I originally conceived, so clearly she has good taste.) I look forward to reading more of her work!
# (2) 11 Jan 2015, 09:12PM: My Mailman Adventure Continues:
I have now submitted two merge proposals to Postorius, the administrative web UI that Mailman users will use to manage their list subscriptions and moderate messages. I've also submitted two pull requests to HyperKitty, the "archiver" web UI that Mailman users will use to browse list archives. (Launchpad calls my submissions "merge proposals", GitHub calls them "pull requests", old-school hackers call them "patches", and I call them "yay".)
I'm a lot more comfortable with Launchpad and Bazaar now. "Team branches" section of the Launchpad help, "Bazaar for Web Devs", and the test Launchpad site helped me get into the swing of things. I also got to use git cherry-pick
and git rebase -i
in the course of my work, which put a bit of swagger in my figurative stride.
At Wikimedia I deeply absorbed the lesson of internationalization and localization (i18n/l10n) -- you never hardcode strings in a user interface! Instead you call a messages store so you can present the translation of that string in the user's preferred language. So it came easily to me to make those kinds of improvements to Postorius and HyperKitty: going through the HTML templates, and marking phrases like "Previous email" with special syntax denoting them as messages to be translated.
I started off trying to use a regex to change or at least find all the user-visible strings, but that got super tiresome (edge cases, syntax, etc.), and I also ended up making a few grammar-type improvments along the way. So I got a lot of quality time in with emacs these past few days. I hadn't anticipated that systematically reviewing all the templates would give me such a thorough overview of HyperKitty and Postorius, but that was a nice side benefit as well. As I went, I noted the line numbers of some particularly confusing bits, so I can ask questions in IRC later.
I've done some wiki gardening and am thinking about what to do next. I'd like to be fixing some of HyperKitty's outstanding bugs, since HyperKitty's on the critical path for the 3.0 release, but I'm not sure which of them are still reproducible; many of the bugs were reported years ago. So it would make sense for me to triage those bugs, but to do that I'd need a working HyperKitty installation. There's an incompatibility between the latest HyperKitty code and the latest Mailman core code, so I'd have a bit of trouble setting up a test install. (That's also why the demo site is running an RPM based on the last git tagged version, which is not the most recent commit. I am glad that this helped me learn about tagging in Git!)
Since I haven't yet heard a similar "the master branch of Postorius doesn't install/run/integrate with Mailman master" pronouncement, and Postorius is also a web app whose readiness is a dependency for the Mailman 3 release, I'll try concentrating on that. My current plan is to set up an installation, pick another open bug no one else is working on, and try to fix it.
# 13 Jan 2015, 03:39PM: Unlocking The Funhouse (Mirror):
In technology (as in many communities), capitalism makes it hard for us to understand what we're good at. A few source texts, and then a sketch of some contours.
- The "No true Scotsman" fallacy.
- Shweta Narayan on category structure, cognition, and side effects.
We tend to have this idea that categories, like "bird" or "food" (or like "human" or "white", which is what this is all really about) are like solid boxes. Entities are either in them or out of them, with a clear and unchanging boundary, and everything inside is an unsorted & equal jumble, and everything outside ditto.
This notion gets strongly underscored by our cultures, so it can be hard to ... er... unpack. But the fact is, cognitive categories aren't actually like boxes. They have internal structure, and fuzzy boundaries (which people can draw in different places, and move depending on context), and these things matter hugely in how we think about and deal with oppression....
we need to be aware of category-centrality as well as membership....
- Huckleberry Finn, specifically:
"All right, then, I'll GO to hell"--and tore it up.
The nuance I still ponder is: Huck doesn't say his way is right. He decides he's wrong but he's going to do it anyway. He decides to be a hypocrite. He does not see himself as articulating a new consistent ethical framework under which he is morally right; he is accepting the status and the consequences of his actions in the religious framework everyone's taught him, but he decides not to let that get in the way of what he feels compelled to do. It's a different kind of resistance.
I heard an echo of this moment in "The Rundown Job" (Leverage, S05E09), when a government official tries to get Eliot, who used to do wetwork, to leave the Robin Hood-type vigilante outfit he's with now:
Colonel Vance: The world can always use more good guys.
Eliot: Yeah, well, too bad we're the bad guys.
"Why Job Titles Matter To Me", a piece I wrote last year.
Deb Chachra on discomfort with the identity "maker" and the primacy of "making".
I educate. I analyse. I characterize. I critique. Almost everything I do these days is about communicating with others. To characterize what I do as 'making' is either to mistake the methods -- the editorials, the workshops, the courses, even the materials science zine I made -- for the purpose. Or, worse, to describe what I do as 'making' other people, diminishing their own agency and role in sensemaking, as if their learning is something I impose on them.
"MDN MozFest outcomes: self-teaching", a summary by Jeremie Patonnier that said one of the tools that self-directed learners most want is "Tools to measure/evaluate one's level of knowledge."
You may not be able to tell from this blog that I, like many people in tech, do experience self-assessment vertigo. Software engineering includes a zillion skills (it's clearly not just computer science) and no one knows all of them. We're so bad at assessing who's good at what that we end up pronouncing that the only way to tell whether someone is "good" is to work with them, or we use "culture fit", personal recommendations, and other easier-to-grasp handles as lossy proxies. The bizarre informational distortion of the job market makes it even harder to get a clear picture of one's own skills, "objectively" and relative to others. Even if, like me, you are not currently looking for a job as a programmer!
Outside of academia and Hacker School, the primary way I hear people talk about technical skill assessment is in relation to the job market or job titles. (And even in academia it's early days yet in teaching software engineering.) In open source we sometimes make one-time assessments as to whether individual people are ready to become maintainers, but other than that, the discourse I hear is about matching candidates with paid employment, and so we assess ourselves and each other in terms of potential job titles.
Just as there is no inherent genre to books (the "genre" of a book is a way to market it to the readers who would like it) there is no inherent category "backend engineer" or "business analyst" etc. That's just a convenient name that we have socially constructed to kind of correspond to a set of skills. (And so the goalposts move so easily it's as though they're on casters freshly sprayed with WD-40 by someone shouting "But no true hacker...")
Within individual organizations, there's some consistency in what a particular job title means. But the job descriptions the public sees are often wishlists that don't distinguish between "desired" and "required" qualifications for a particular title. And a "hey you're interesting for position x" email from a recruiter gives us a data point, even if it's super wrong, and maybe even so wrong that it is demoralizing to candidates! ("Shit, the only recruiters who reach out to me are so dumb and desperate that they don't count" or "Crap, I still look like a foo instead of a bar".) We get a lot of noise mixed in with the data.
My particular set of skills does not correspond to any particular well-known bucket, and I should not let that make me feel bad.
Buuut of course socially constructed things are real too! And it is useful to know whether I am correctly performing the role of "fullstack developer" or "devops expert" or "community manager", to know whether I can attract the particular kind of attention I want! And it's useful to know when I should say, "yes, according to the tech industry's dominant hierarchy, the work I enjoy and think is most important marks me as low-status, unintelligent, and ignorable. So what."
Even if I can get away from looking at myself as a good little worker bee, impostor syndrome and Dunning-Kruger both affect self-assessment. While I believe I am fighting both, it may be unavoidable that the only way to get better at self-assessing a skill is to get better at the skill in question, reflecting all along the way. Thus: a code review group. (Check out how I briefly describe my programming skill level in that post, by referring to what I can and can't do.) Thus: my Mailman work. Thus: blogging. Sketching out where I am so I can see where I've been. These points of data make a beautiful line.
Edited on 6 Feb 2018 to add: I said some of this stuff better in my post today, The Ambition Taboo As Dark Matter.
# 19 Jan 2015, 04:28PM: Catching Yourself:
Friday night, on a date with my husband, when it came up in a conversation about class and geography and family, I tried to remember his ex's name and couldn't.
Earlier today, talking with a friend about the layers of MediaWiki's infrastructure, I momentarily forgot the term "Gadgets."
Nothing else quite like that moment, realizing that when you weren't looking, your mental neighborhood changed, and you changed with it.
# 20 Jan 2015, 09:44AM: Programmers Who Then Do Something Really Different:
I recently learned that Courtney Milan, a romance author who's worked as a lawyer and programmer (much like sci-fi author Ken Liu), has also written some ecommerce-related PHP code and released it under the GPL, which makes my day.
I try to keep a mental list of people who have done substantial programming or computer science work and then taken their expertise to a very different field of endeavor, such as music, activism, electoral politics, or fiction writing. We're used to hearing about programmers moving into tech management (including founding startups or managing open source communities) or teaching engineering, but I like to remember that programmers also run for Congress and write TV shows.
The list goes on and on (and I am oversimplifying labels here and leaving a zillion people out -- this is just some people I have heard of):
- Randall Munroe, cartoonist
- Vienna Teng, musician
- Jonathan Coulton, musician
- Ken Liu, fiction author
- Charles Stross, fiction author
- Darcy Burner, Congressional candidate & activist
- Seth Schoen, activist
- Vernor Vinge, fiction author
- Ellen Ullman, fiction author
- Ryan North, cartoonist
- Neal Stephenson, fiction author
- John O'Neill, fiction editor
- Naomi Novik, fiction author
- Kristofer Straub, cartoonist
- Leonard Richardson, fiction author
- probably Jerry McNerney, Congressional Representative
- Jane Espenson, screenwriter
- Courtney Milan, fiction author
- Ken MacLeod, fiction author
- Zoe Keating, musician
- Kathy Sierra, horse trainer & interdisciplinary educator
- Mel Chua, education researcher
- James Vasile, lawyer
- Valerie Aurora, activist
- Mary Gardiner, activist
- Danny O'Brien, activist
- Aaron Swartz, activist
- Diana Gabaldon, fiction author
- Luis Villa, lawyer
- Jamie Zawinski, nightclub owner
- Fureigh, musician
- Danni (friend of mine), bike mechanic
....
This is trivia, and I am temperamentally suited to accumulating trivia. But I also like remembering that everyone I meet may have skills I don't immediately see. This bartender, that full-time parent, the candidate for city council whose junk mail I just got -- this might be the second or third or fourth career for any of them, and if we got to talking, maybe we'd all get super animated as we told stories about hilarious bugs.
# (3) 21 Jan 2015, 05:14PM: "Trade Me" and Courtney Milan:
Today I snarfled up Trade Me, a new contemporary romance novel by Courtney Milan. It stars a Chinese-American woman studying computer science at UC Berkeley. It's about class and classism, deconstructing the Prince Charming/billionaire trope in romantic fiction, Bay Area tech, ally fails, how to deal with cops, authenticity and adaptation, safety and freedom, trust, parents, and work. And one of the main secondary characters is trans, and all the physicality in the relationship is super consensual, and there is a kind-of reference to Cake Wrecks, and (maybe only I see it) to Randall Munroe's "What If?" blog. I link it thematically to Jo Walton's The Just City, Ellen Ullman's The Bug, and the good parts of Amy Tan's The Joy Luck Club. It's pretty great. (ROT13'd trigger warnings that are spoilers: qvfbeqrerq rngvat naq gur arne-qrngu bs n cnerag.)
I'd heard a bit about Milan before via metaphortunate and rachelmanija and enjoyed the Ask A Man blog, but hadn't gotten around to reading a novel by her yet. Then I heard that Trade Me would star someone who sounds far more like me than a lot of protagonists do, and decided it was time to try out this whole ebook-reading thing. Glad I did!
I know more and more romance authors are writing books with protagonists like me these days, not just Milan, and I should check them out. (Milan, like me, likes Zen Cho, and she further recommends another lawyer romance author, Julie James. According to Milan, James "writes ladies who unapologetically have careers and who care about those careers and don't have to sacrifice them in a fit of self-immolating pain at the end of the book." Hurray!) But I'm going to dwell a moment on how fascinating I find Milan in particular.
First off is the software thing. She wrote and wants people to reuse a chunk of GPL'd software to autogenerate links to a particular book at multiple bookstores. Also she used to use Gentoo. Of course she gives her readers permission to strip DRM from their copies of her books. Basically I would not be surprised if there is super flirty pair programming or a double entendre in a bash script in a future Milan book.
Her FAQ goes into more detail on what she does and why. She's neurodiverse, she encourages fanfic, and she has interesting ideas about the romance genre, diversity, and pay.
She brings an analytical approach to all aspects of her work (informed by her past as a chemist, programmer, and lawyer), and is willing to frankly and transparently talk about circumlocutions and the ways powerful systems, organizations and people -- deliberately or inadvertently -- suppress free speech. As a woman of color ("half-Chinese" in her words) she's also especially aware of the importance of writing fictional representations of women of color in STEM, and of fixing broken standards that lead to unequal representation.
If you are into legal minutiae you might enjoy her post on impotence and annulment; even if you aren't, you might like to see her hypothesize a bit about Regency vase cartels. I totally want to attend the workshop she did providing "a very broad overview of how people thought about property throughout history. When she writes historical romance, she writes people who could have existed as outliers; "I import modern morals into my historical romances. In my mind, that's a feature, not a bug."
Since a great "Must Pleasures Be Guilty?" WisCon panel I did in 2010, I've been particularly interested in new perspectives on the stigmatizing of intentionally pleasurable entertainment, and Milan's "The stigma of happy (a rant)" provides! Milan respects pleasure as a good and, in her work, aims to illustrate the work it takes to get to happy. She can snark about the "shame" of reading something pleasurable (and her fake book covers are spot-on), but she can also go deeper and show that another world is possible, one where we can have healthy, respectful conversations about women's sexual desires.
Milan and I are both geeky feminist Asian-American women who went to Cal and are interested in law, writing, and programming. Trade Me cost USD$3.99 (ebook); I can't put a price on what it feels like to read fiction meant for me, by someone who's only a few alternate universes away from me.
# 27 Jan 2015, 12:00PM: Four Reasons To Apply (Soon) To Run The Ada Initiative:
I'm the chair of the Ada Initiative Executive Director search committee, which means it's my name on the announcement we posted about six weeks ago: "The Ada Initiative is growing! Announcing our search for a new Executive Director".
We've received applications and expect to receive more, and it's not too late to apply, although we have already started processing our first "batch" of applicants. I thought it would be nice to dash off a quick note about some reasons to apply that you might not have thought of.
The board of directors is pretty great. I'm on it! Very thoughtful people with tons of experience and different perspectives are on it. We would help you make decisions.
The advisors: also great! Again, the quality and quantity of insight available to advise the ED is impressive. I've been on the Advisory Board for years and we have amazing conversations.
You're coming into something that's already working. Check out what TAI did in 2014, and look at the over-the-top success of the 2014 fundraising drive (over 1100 donors gave over $206,000, passing the original goal of $150,000). This ain't no glass cliff or turnaround job; you would be coming in already set up to succeed.
Sustainability includes making sure the ED doesn't burn out. Scroll down to the details in the job post. The hours: 40 hours per week, and we really mean that. Look at the leave (time off) provisions. Your board and your employees and contractors all know that you need rest and relaxation in order to be at the top of your game, and we've built that into the organization at a structural level.
If you're going to apply, please apply soon so the search committee can see how awesome you are even sooner! Thanks!
# (1) 28 Jan 2015, 11:27PM: It's On My Mind:
So a few years ago, a friend of mine was at a party, and one of the people at that party was a laconic fella, a new boyfriend who hadn't met this group before. Eventually someone got around to asking him what he did for a living. He said something a bit general, about government service, yes, at the federal level, until someone said, "you're a G-man? With the FBI?"
"That's right," he said, briefly, with a small nod.
Someone speculated as to whether he was in New York City because he was concerned with things like the security of the Indian Point nuclear power facility.
"It's on my mind," he replied.
And someone else told a story of a cop or a federal agent, losing their gun while on the job.
"That's frowned upon," he noted.
Ever since then, Leonard and I have found this triad of answers endlessly entertaining. These are polite yet distant ways of giving answers in the affirmative, the negative, and the noncommital.
That said, here are some links that are on my mind (whether I think they're right or frowned upon will be your guess to make!):
Transparency about money: a fiction author, a public speaker, and a publisher are sharing real dollar amounts so you know what you might be getting into. You might also enjoy a similar HOWTO that Leonard and I wrote, about making a one-off anthology.
Disagreeing well: This distinction between task-focused and relationship-focused people (which may be very similar to Rands's organics and mechanics model or my engineer and mother leadership models) will stick with me.
Transformative work and the origins of abuse: In an interview about Jo Walton's new book The Just City, check out Walton's response to the interviewer's question, "Why have Apollo learn about 'equal significance and volition'?"
Catwoman: chaila and beccatoria are telling me to read Genevieve Valentine's run writing Catwoman and I may well listen to them.
"Everything is a bit orange for some reason": I can't decide whether Holly Gramazio's hilarious analysis of games in fiction (e.g., the futuristic sports in dystopia movies) has more insights or jokes, but there are plenty of both.
Impostor syndrome tips: Concrete steps you can take to stop automatically assuming you can't do stuff.
What are you willing to consider?: Danny linked to this piece which I think stands alone (seeing as I haven't read the Chait piece it's responding to (and every time I see Chait's name I think of "TBWA Chiat/Day" and the old Apple ads)). This controversy touches on trust, courage, groupthink, the purposes of different environments and different kinds of environments, how quantity can have a quality all its own, the attention economy, and a zillion other things. Put this in the "on my mind" bucket.
Techish things: Hound is a new competitor to DXR. You should enable automatic updates on your servers. A Python developer is offering code review in exchange for donations to Doctors Without Borders. Learning to sit with discomfort: part of yoga, part of life. Changing history (advanced Git). The Mailman project wants to switch translation platforms. A gentle primer on reverse engineering.
The dream factory, the sausage factory: A television writing room feels a bit like the opening of Anathem (Socratic questioning about scifi/fantasy tropes).
Popular: I'm using Dreamwidth as my RSS reader. Check out the popular feeds, ranked by how many DW users subscribe. The top 10 feeds include the Organization for Transformative Works, Cake Wrecks, & PhD Comics. Also, as a data point, at current writing, the feed for this very blog has more subscribers than Paul Krugman's feed has.
Finally, because I have my immature moments like anyone else: A Project Gutenberg find by Leonard: "Diary of Richard Cocks, Cape-Merchant in the English Factory in Japan, 1615-1622" pub. 1882. (It's legitimately historically interesting .... but that's not what caught my attention at first.)
# (1) 31 Jan 2015, 12:34AM: On Fear vs. Anxiety, Self-Determination, the Command Line, and Interlocutors and DX:
At Hacker School we work on becoming better programmers, help each other become better programmers, and talk about that process. Here are some of the things I've said in that context.
On a Julia Evans post, "Fear Makes You A Worse Programmer":
Back to fear - this piece by Skud includes a bit of a horror story -- bad or missing code review led to a bad deploy which led a volunteer to drop out entirely, partly due to fear of messing up again. And here's a story where paranoia by management led to the firm going out of business.
....So the distinction de Becker makes [in The Gift of Fear] is that fear is your subconscious telling you about a genuine threat, because your intuition has put together the facts faster than your conscious self has -- whereas anxiety comes from the messages on the 10 o'clock news, racism, etc. Fear is a friend and anxiety is an interloper. If I were to use that framing, I would say that one characteristic of a mature programmer would be: she has a healthy sense of fear, and the reflex to mitigate scary risks ("we need to put this into version control NOW"), but she has control over anxiety ("people say C is hard to learn, maybe I'm not smart enough").
On choosing your own learning path:
I think you might like this reflective post by Ben Rosenbaum on "the moment in which I actually started to determine my education." (And a few current thoughts, by Indian students speaking to other Indians, that by implication say a lot about breaking expectations.) I try to be conscious of how others explicitly and implicitly guided me into certain achievement paths and avoid doing that with others, avoid making assumptions (so, for instance, I have retrained myself to avoid asking, "where did you go to college?").
On Philip Guo's post about "command line bullshittery" as a barrier to research:
I agree with Philip Guo so thoroughly, especially about the demoralizing effect of the gulf of execution, and that a leader should reduce the incidental complexity that slows down the people she's serving.
....As a card-carrying fan of Neal Stephenson's "How to Win Friends and Influence People^H^H^H^H^H^H^H In The Beginning Was The Command Line", and of [readings] on the usage and philosophy of Unix concentrating on the command line, I do not consider the command line bullshit. But Philip's right to consider the specifics of *getting research software installed and set up* as incidental complexity in the context of his students' substantive work. And that process takes place on the command line. It's like me calling the process of getting across town in Manhattan "L train bullshit"; it is good that the L train exists but arrrrgh.
On better ways to ask and answer code-related questions online (and the concept of a "yak trace," understanding the series of steps a person has taken to make something or debug a problem):
basically I think a yak trace emerges most easily in conversation with a generous interlocutor, whereas many fora online where people ask for help would prefer that help-requesters' initial speech act be delivered with the concision and throughput of a paramedic running alongside a gurney
....In my experience *building even the faintest of relationships* with the asker/user makes it a million times easier to ask the question. In IRC, for example, I've had tremendous success by *starting off saying* (roughly) "Hi [person's nickname]! I'm Sumana, [thing I do] and I live in NYC. Good to meet you, although sorry for the circumstances :/" [wait for reciprocation; most people will reciprocate by giving their name at least] "That problem sounds frustrating. Do you mind if I ask a couple diagnostic questions?" Now we are people together and not just Supplicant and Expert, and I can ask about the environment, and I can say something like "the approach you're using is sort of unusual so I want to check whether you're accidentally making it harder for yourself and there's an easier way to get the functionality you want :) " (although I can't remember the last time I had to literally explicitly say that; usually by this point they are open to talking about their process, their macro goal, etc.).
IMO the affordances of a lot of online tech-help-seeking spaces discourage this kind of necessary trust-building conversation.
In longer-term dev scenarios, understanding the user's underlying goals is a task that product managers and user experience designers have a lot of tools to do. Qualitative interviews. Ethnography. Market research. Looking at traffic stats and discovering/making funnels. IMO Val's insight about what the application developers really wanted was a user experience insight (some folks call it DX, Developer Experience, for stuff like this).
The API usability chapter in Greg Wilson's and Andy Oram's Making Software influenced my thinking thoroughly on this stuff.
Words, other than proper nouns and HTML, in this post that my in-browser spellchecker dislikes: bullshittery, arrrrgh, gurney, IRC, etc., IMO, affordances, tech-help-seeking, dev, stats, DX, API.
[Main] You can hire me through Changeset Consulting.

This work by Sumana Harihareswara is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Permissions beyond the scope of this license may be available by emailing the author at sh@changeset.nyc.