« | » Main « | »

Community, conduct, conflict, and communication

Saturday 23 March 2013

The fallout from PyCon this year has been dramatic, involving Adria Richards, Alex Reid, SendGrid, PlayHaven, and the PyCon organizers. I wasn't involved in this event at all, so I have no first-hand knowledge of it, but it saddens me greatly. So many things have happened that I wish had not happened.

Improving community is difficult. Getting 2500 people together without friction is impossible. Friction and offense will happen, the question is, what do we do about it? It seems to me there are two mindsets about how to improve a community.

The first mindset is, "Let's get rid of the assholes, and the people that are left will be a great community." I'll call this the shunning model: identify the Bad People, get rid of them, and you will have only Good People left.

The second mindset is, "We're all different, and we're going to make mistakes, so let's be thoughtful and educate each other." I'll call this the educating model: people are imperfect, but basically good, and if we can keep an eye on things and keep communicating, we can all improve.

When I look back at the aftermath of PyCon, I see a number of events that fit into the shunning model, and few that fit into the education model. This to me seems to be the heart of the problem.

We often talk about building an inclusive community, which usually means that women should be as welcome as men. I want it to also mean that people who make mistakes can be kept as members. Clearly, some people will be difficult enough that they won't be welcome, but most people who offend are good people who've made a mistake, not incorrigible assholes. I don't want a One Strike And You're Out community.

Let me tell you about my experiences at PyCon. I had at least three incidents of "community friction" during my time there:

  • Friday at lunch, I sat across the table from a friend of mine. I made a joke that she found mean, and she told me so. I felt terrible, and apologized to her then, and again later when I saw her next.
  • Saturday night, I was at the rowdy event that engendered a formal response from PyCon: a member was ejected and banned from PyCon. I was more than just an observer: I tried to talk to the member about what he had said. I also helped report it to the PyCon organizers.
  • Monday morning, I was having breakfast with a group of people, both friends and new acquaintances, when someone used the word "retarded" to refer to some suboptimal technical detail. I don't like people using "retarded" as humor. I said nothing, but winked across the table to a friend to say, "yup, I heard it, I wish he wouldn't say that, but I'm not saying anything about it."

In incident #1, I was the offender, and I'm really glad I was educated instead of shunned.

In incident #2, I was the offended. The member in question has been banned. I wasn't part of deciding the sanctions, but am glad to see in his blog post that he is thoughtful about what happened.

In incident #3, I was the offended, but did nothing. If I had known the speaker better, I might have said, "I wish you wouldn't use that word that way," but it didn't seem right at the time.

Friction is inevitable. One of the great things about PyCon is that it is right at the boundary between being comfortable with old friends, and meeting new people. There are bound to be incidents. We have to accept that, and try hard to talk to each other to improve things for everyone.

Education is better than shunning.

PyCon acheivements

Monday 18 March 2013

Here at PyCon, attendees get the usual ribbons dangling from their badges: Speaker, Sponsor, etc. They're always a topic of conversation, especially if you have three or more, or are wearing any of the joke ones like "Workaholic" or "King".

But most attendees have no ribbons, and it occured to me we could have tokens for everyone. I thought of them as merit badges, but the more current terminology would be acheivements.

For example:

  • I wrote a metaclass
  • I avoided writing a metaclass!
  • I introduced a friend to Guido
  • I contributed to CPython
  • I grok PyPy
  • I taught a kid to program

And so on. Could be fun.

Letterpress workshop at MassArt

Sunday 3 March 2013

I have long been interested in the technology of printing, especially typography. Two years ago, when I went to the Boston Printing Office auction, I met Keith Cross, a lecturer at MassArt. He teaches letterpress classes, usually spread over the course of a semester, which I wasn't able to commit to. When he announced a one-day Saturday workshop, I jumped at it. It happened yesterday, and I loved it.

Initial setup for the class

The workshop is hands-on: you start off standing at a type case, and with a few minutes of verbal instruction, you start putting type into a job stick:

Me, setting type the old-fashioned way.

I was familiar with the concepts of cold metal type, job sticks, California cases, and so on, but had never had a chance to try it myself. I was really pleased to be able to work with these little pieces of metal, and set actual lines of type.

You don't need to know the history of type to take the class. Keith explains what you need to know, and walks around gently guiding people to get them over rough spots.

I was having fun, and so went a little overboard. I wanted to use the fancy ligatures, so I included words like, "fluffy waffles," and when I saw that my type case had a "gg" ligature, I had to add "eggs." Then I discovered it had "zy" and "gy" ligatures, so I couldn't stop until I got "syzygy" in there!

My job stick with three complete lines of type

It says,

fluffy waffles taste great with syrup, eggs & sausage
Words escape me, they flutter & flap their wings...
although I managed to keep this one: syzygy

Each student produced a few lines of type, then we all headed over to the press to assemble them together into a page:

Putting lines of type onto the bed of the press

Once we had all contributed our lines, Keith added larger blocks of iron and wood, known as "furniture" around it to hold it all in place, and locked it in with quoins.

A full page of type, ready to print

A little discussion of paper, the mechanics of the press, then Keith rolls the press, and there's a printed sheet!

The first sheet off the press

The first sheet is called a proof, because it's used to check the typesetting. The next step is to read the proof, an activity known as "proofreading"! One of the things I find fascinating about type is how history bleeds through into the present in the terminology and conventions. "Leading" makes much more visceral sense when you are holding a 6-pt thick bar of lead alloy, and place it between your rows of type.

Reading the proof

Mistakes were identified, as were worn pieces of type. The form in the press was unlocked, and corrections made, by pulling out bits of type with a tweezers, inserting new ones, adjusting spacing, and so on. Then we each printed a sheet of our own.

When the printing was done, and the type had been cleaned, we each retrieved our lines of type, and put each tiny piece back into the proper compartment. Thinking about how long it took to find the type, set the type, adjust the type, print the type, and then clean up and put away the type, I am amazed anew that books, newspapers, and even encyclopedias ever got printed. This was very labor-intensive, dirty work. A few hours in a letterpress shop, and it is clearly industry.

After lunch, we each worked on a project of our own. I chose a quote from E.B. White:

Creation is in part merely the business of forgoing the great and small distractions.

I liked it not only for what it says, but because the words "great" and "small" could be used for a little type expression.

Here's where the old ways really seemed difficult! I wasn't sure what layout to use, and ended up changing my mind half-way through. So I had to move rows of metal chunks from one line to the next, and hope not to drop the whole thing.

Each line has to be completely packed tight with metal so that when the type is on the press, it will all be held tightly in place. This means that you need to find just the right thickness to fill the gaps, perhaps even slivers of brass to finish a tiny space.

My chosen quote, set in cold metal type

I wanted an em-dash, but there wasn't one in my type case. We made one with a 36-pt piece of metal, spaced properly with yet more tiny chunks of metal. After dealing digitally with different kinds of spaces and dashes and leading, it was a new perspective to have to actually build it from pieces of metal.

To add to the complexity, the quote is set in 36-pt Centaur, but the word "small" is in 30-pt. I had to make up the 6-pt difference with strips of metal just as long as the word "small", but some above and some below to get the baseline right. I'd like to have used 24-pt for greater differentiation, but the next available size below 30 was 18. Another analog limitation.

When it was my turn for the press, Keith set up the form and locked it in, and I printed off a few dozen on gold paper:

My type, in the press

Even before I printed it, there were things I wished I could improve about the layout, but time (and ability!) were short. The stars are there kind of as a distraction, but also because it's fun to use ornaments. But they are too low for the line: you can see in the photo, they are cast on a 36-pt body like the rest of the type, but they have a much lower baseline. I'm not even sure how I would have adjusted for that even if I had had time.

But I'm still very pleased with the result:

The finished result

Keith made the day fun, he's friendly, passionate, knowledgable, and helpful. I highly recommend his class, it's a great way to see what letterpress is all about. It gives you a whole new perspective on type, and the technology that brought us to our current tools and techniques.

« | » Main « | »