Updates
-
RT @dougturner: Push Notifications for FFOS landed in m-c. Support for desktop and android later this year. https://t.co/qnOy9PBCuQ
-
RT @hnycombinator: A lot of free programming ebooks http://t.co/BaMLJn2QFO
-
Laser pointers. Not just for teasing your cat. #GDI
-
Staying in a cave, that's a thing now: https://t.co/hv8Q8o6Ao3
-
RT @GrumpyyCat: Always be yourself! Unless you can be Batman. Then be Batman.
-
@ashedryden find something you want to do with said knowledge that will propel you through the learning curves, setbacks, failures, then win
-
RT @bwinton: Someone should really pick up https://t.co/6nVCYDwyGg and get it landed…
-
@SashaLaundy yay! Can't wait to see what you build!!
-
This isn't the time when starting a business is *less* risky for women. It's a luxury only some can afford to risk: http://t.co/u0pt18fhEl
-
^5 @codepo8: "So here’s to an open future of the mobile web. Come, join us." http://t.co/G436lOx7Mq
-
Like the sad fox - I may not agree with all your choices but I support your right to make them http://t.co/iE5lqNAxxA
-
@stenoknight ha! I just pinned some things from it - like magician playing cards and fancy soap :)
-
@stenoknight hm. that one's prettier somehow…more gentlemanly perhaps? :)
-
RT @roguelynn: OH: him: we haven't gotten any resumes from women. her: where are you recruiting from? him: just hacker news. m(
-
RT @jasonlhaas: Something we all do daily shouldn't be a crime for #trans people in #Arizona. Take action w/ me to stop it: https://t.co ...
-
@tieguy: wow, that's a good portion of the reqs laid bare isn't it? The non programming pieces for startup success: http://t.co/jw6PPutdr7
-
RT @AvoidComments: Genius is 1% inspiration, 99% perspiration, and 0% reading internet comments.
-
RT @jessenoller: Three Reasons Raspberry Pi Ruled PyCon 2013 http://t.co/oSzdorzD2X
-
RT @nrrrdcore: I spent last night adding a few of our new (and very badass) speakers to http://t.co/l3GdfrBeuo
-
@stephendonner @craftgawker I had not heard of this - but also FOODGAWKER - yesssss! :-)
Posts
(Written by J Wallace, re-posted with permission)
Periodically, I get asked if there are more gender independent/ gender non-conforming/gender imaginative/ gender creative/gender variant/ transgender/ trans children and youth because there is more awareness of transpeople and trans-identities in society.
The answer is always no.
More awareness may mean more legal protections, and it may mean that there are more caring adults willing to support children and youth, but knowledge of transpeople does not make children up and decide that their own gender or sex needs to be changed. Even if it did (which it does not) I'd like to suggest that there is very little cultural material for children about transpeople. Carly, She's still My Daddy is just not showing up in many kindergarten libraries. And while there are children who read 10,000 Dresses and think "I'm just like the main character" it's not like the image it paints is so alluring that other children are going to think "hey, that's not me but I wish it was". The images of trans people that young children are exposed to are few, hard to find, and seldom positive. I dream of the day that resources like Reflection Press' Gender Now Coloring Book are more widely available, and even when they are, more awareness is not going to create more trans children.
The claim that there are more gender independent/ gender non-conforming/gender imaginative/ gender creative/gender variant/ transgender/ trans children and youth because here is more awareness of transpeople and trans-identities in society, is the polite way of saying "we recruit" and it's a slander that plays into the primal fear that "we are out to get your children". The myth that faeries would steal unbaptized children persists, and I remember being told that if I was bad, the gypsies would come take me away. The culture that I am a part of has a long history of claiming that those it wants to other will 'steal the children'. The antisemitic belief that Jews steal children to make Passover matza is a gross and disturbing example, but the idea that "we are out to get the children" has been proven over and over again as a successful way to villianize whole people. We the othered then have to spend time defending ourselves, and proving that we are not out to get your children. Often we are told that the way to do this is to act as much like the majority culture as possible and to be quiet. Talk about silencing marginalized voices.
The idea that there are more (and younger) trans people because of greater awareness of trans people also serves to distracts us from what is actually going on. Peggy Orenstein in Cinderella Ate My Daughter, documents a huge cultural shift towards an increasingly rigid gendering of childhood and children. She discusses at some length the marketing brilliance of clearly defining "boys toys" and "girls toys" and how doing so means that fewer older siblings are sharing their toys with differently gendered younger siblings and thus more toys are being sold. I frequently remind teachers that childhood now is more gendered than it was when we were children. I was born in the mid seventies and grew-up with Free to Be You and Me. While the message was that "every boy in this land grows to be his own man, every girl in this land grows to be her own women" and not "everyone gets to figure out who they are and then live that way" there was more room in the categories of "girl" and "boy". I could refuse to wear dresses, mostly play with boys, try-out and play on boys sports teams, and my behaviour was seen as "feminist" or that of a "tomboy", and inside the category of girl.
The other thing that has been happening at the same time, has been happening in the DSM. The DSM III first introduced a childhood diagnosis, Gender Identity Disorder in Childhood in 1980, and at the time it required:
Table 1 DSM-III diagnostic criteria for Gender Identity Disorder of Childhood
For females
A. Strongly and persistently stated desire to be a boy, or insistence that she is a boy (not merely a desire for any perceived
cultural advantages from being a boy)
B. Persistent repudiation of female anatomic structures, as manifested by at least one of the following repeated assertions
(1) that she will grow up to become a man (not merely in role)
(2) that she is biologically unable to become pregnant
(3) that she will not develop breasts
(4) that she has no vagina
(5) that she has, or will grow, a penis
C. Onset of the disturbance before puberty ...
For males
A. Strongly and persistently stated desire to be a girl, or insistence that he is a girl.
B. Either (1) or (2)
(1) persistent repudiation of male anatomic structures, as manifested by at least one of the following repeated assertions
(a) that he will grow up to become a woman (not merely in role)
(b) that his penis and testes are disgusting or will disappear
(c) that it would be better not to have a penis or testes
(2) preoccupation with female stereotypical activities as manifested by a preference for either cross-dressing or simulating female
attire, or by a compelling desire to participate in the games and pastimes of girls.
C. Onset of the disturbance before puberty. ...
The DSM IV broadened the diagnostic criteria for Gender Identity Disorder in children, with the result that children no longer had to state a clear interest in or belief that they are the other sex. Instead it said:
- In children, the disturbance is manifested by four (or more) of the following:
- repeatedly stated desire to be, or insistence that he or she is, the other sex
- in boys, preference for cross-dressing or simulating female
attire; in girls, insistence on wearing only stereotypical masculine
clothing - strong and persistent preferences for cross-sex roles in make-believe play or persistent fantasies of being the other sex
- intense desire to participate in the stereotypical games and pastimes of the other sex
- strong preferences for playmates of the other sex
- In children, the disturbance is manifested by any of the following:
- in boys, assertion that his penis or testes are disgusting or will disappear
or assertion that it would be better not to have a penis,
or aversion toward rough-and-tumble play
and rejection of male stereotypical toys, games and activities; - in girls, rejection of urinating in a sitting position,
assertion that she has or will grow a penis,
or assertion that she does not want to grow breasts or menstruate,
or marked aversion toward normative feminine clothing.
- in boys, assertion that his penis or testes are disgusting or will disappear
- The disturbance is not concurrent with a physical intersex condition.
- The disturbance causes clinically significant distress or
impairment in social, occupational, or other important areas of functioning.
So, what "makes" gender independent/ gender non-conforming/gender imaginative/ gender creative/gender variant/ transgender/ trans children and youth? I have several answers, but I believe that key among them is the simultaneous narrowing of the cultural understandings of what it means to be a boy or girl and the broadening of the definition of Gender Identity Disorder for children. Simply put, when there are fewer ways to be a girl or boy, and more ways to be identified as having GID, more children will find that they simply can not fit into what is expected of them, and instead find themselves being pathologized.
The pics have some stories and descriptions but let's see what else I can tell you.
We're adjusting to our tiny apartment which I have been lovingly calling "our bathroom". People laugh and think it's cute that we're so shocked by the tiny apartments but I really don't think anyone grasps how our rental is not an apartment at all - I'd be fine with a tiny apartment and understand the limits of space in Paris and the high price of real estate. We are in a bathroom however with the cheapest curtain in front of the toilet, and everything else furnishing the place is also the cheapest possible stuff from IKEA. The person who rents this 12 sq m room has basically done the bare minimum to make it rentable. I'm not going to spend a whole blog post complaining about the rental though - we're making it work. Also, my co-worker William lent us his place last weekend and will again in another week so we've had a respite and have enjoyed some space and some more comfortable living on occasion.
Let's talk about food, one of my favourite subjects. The food here is generally pretty good if you don't care much about salad. In the past few years I have started to care much more about eating greens and vegetables so it's been a challenge to basically eat bread/meat/cheese/sugar all day, every day, without any salads in there. There are salads but they are often either a) tiny and covered in mayonaise or b) topped with potatoes/meat/cheese (and maybe some mayonaise too!). So I'm definitely missing fresh fruits & vegetables in my diet. However, last night we went to a place William recommended called "Entre les Vignes" (Between the Vines). It's a cute little bistro near Gare de Lyon and it had the most delicious steak tartare ever. We will definitely go back for another round of that before leaving town. I have had a very fresh and tasty crepe on the street, a ham & cheese one so I still need to do the sweet kind at some point. I've had some South-West cooking at a place called Chez Papa which involved the above-mentioned "salad with meat and potatoes on it" as well as escargots in cream sauce with tomatoes and mushrooms and also a lamb cassoulet. I love cassoulet and want to go home and make some of my own. We also cooked at home a few times and just did some simple pasta dinners to accompany wine & reading.
Life in Paris was hard the first week because of technical difficulties. The internet in our room is incredibly slow and unreliable and Jenny relies on my laptop sharing internet so that her iPad (which does not have an ethernet port) can get connected. This means her internet window when not at school (French classes) is about 15 minutes before I go to work in the mornings. This means she has to know ahead of time everything she might want to do so she can map it out. Our cell phones here required some intensive signing up procedures including sending copies of our passports to some email address, and then getting them refilled is a whole other pain in the butt. Also, the Vélib rentable bike system wouldn't accept our credit cards at the stations so we learned the hard way that we need to buy them online ahead of time. We're starting to laugh at how often we'll try to do something only to find (regardless of the level of planning we put in ahead of time) that things are closed, we're too late (or on the wrong night), or things are sold out. Metro stations, restaurants, concerts, canal boat rides. The internet has both made it easier to make this kind trip and also removed the ability for spontaneity in travel.
We have gone to see two movies: Tomboy and X Men First Class. Tomboy was all in French and Jenny was able to follow along pretty well. I loved that movie and highly recommend it. It will probably do the rounds of the queer film festivals this summer. X Men was lots of fun for me, Jenny had a nice nap. I love the X Men mythology so much and spend a lot of time trying to decide which mutation would be the best fit for me. After last night I'm mostly leaning towards the telepathy cause it seems appropriate for a slightly controlling personality who wants to help lots of people.
Tonight we'll go see some art at Georges Pompidou where a modern art gallery lives. Also we just found out about this Claude Cahun retrospective from Onya - yay! This weekend we might go to Versailles and try again to do the canal boat ride that takes you under the city in these cool tunnels.
That's it for now. Gotta get to work! Which reminds me. The Paris office has been great to me and so awesome to work out of. I really do want to see if, over time, I can work out of every Mozilla office at least once so that I can get a feel for all the different customs and office atmospheres in our very dispersed company.
Just found out about this photo on Flickr cause it's gotten a lot of views in the past few days. Such a great shot of the Hopey hound, makes me miss her more than I already do.
It took us two days to drive to Victoria, and we lengthened the travel time a bit by taking hwy 101 for half of it so as to view the amazing redwood trees along the coast. On Jenny's camera there are pictures of us driving through a huge tree - which is what you do when you take hwy 101 through the redwoods.
We spent a nice quiet week in the woods of Victoria, getting Hopey settled in and sleeping a lot. Finally on Friday the time came to start the 16 hour trip to Paris. I'd like to say that I love flying Air Canada. It's been a while, and living in the States means often flying Delta, US Airways, Southwest, or United. Air Canada's planes are so nice and clean and big. Unlike every flight I've taken in the last year, this flight had NO issues with people's carry on baggage fitting into the upper storage areas. Also, the seats are a little wider and I couldn't measure but I think I had more leg room too. Airline promo done, let's arrive in Paris!
Our rental is in an old industrial building with a huge door that opens into an open-air courtyard, and then 4 flights of stairs up is our 'apartment'. It's quite small, but it's quiet and we're in such a great location for the next 3 weeks. Apparently it's going to rain off and on all week, but today was a hot and sunny 28 degrees, so after a nap Jenny and I went out to explore the neighbourhood. Here's what I've observed from our initial, jet-lagged wanderings:
- Getting keys made is something done at the cobbler's, not at hardware stores (we visited 2)
- At 5 or 6 pm, there is nothing slightly resembling dinner available in the local cafés and the restaurants are not open yet. We will need to adjust to this.
- There's some great fashion here and then, in contrast, some people who seem to actively hate fashion :)
- I love having opportunities to speak French! Most importantly, everyone is speaking French back to me which is a pleasant surprise.
- Everything here is REALLY EXPENSIVE! It makes me kind of nervous. Will need to get out of this neighbourhood and see what it's like in less touristy areas. We plan to get Velib bikes to explore the city tomorrow if it's not raining.
- I bought a SIM card at the airport for 19 euros and it gives you 5 euros credit which I've already gone through by using data, however there's nothing in their rate sheet about data costs. SO there's some lack of communication here.
- Also this:
That, my dear readers, is the DISCO TOILET in the Creperie where we ended up eating dinner. The tiny toilet booth is a totally different experience than the rest of the restaurant. So you're eating your crepes and it's all normal (top 40 UK dance hits quietly playing in the background) but if you get up to go to the washroom, watch out! The music is loud, the little green lights are dancing, and then...you just can't help yourself...you're dancing in a toilet :)
Last month I went to see Rufus Wainwright perform with the San Francisco symphony. The performance itself was mediocre due to being a very new piece and, I suspect, affected by the recent loss of his aunt. I still enjoyed the evening and also saw some amazing outfits during intermission. There was a group of gay men in the lobby who were all wearing fabulously fitting plaid dress pants along with other snazzy accessories like vests and suspenders. The group of 5 men stood out to me in the crowd and I couldn't take my eyes off them. I think one of them noticed...
Anyway, since that night I've been planning to find myself a pair of well-made plaid pants and today, thanks to a Techcrunch article about Bonobos, I did. Now the pants were $195 and I'm sure they are amazing pants but I've learned that you can pretty much always find a coupon for online purchases so I did a quick search and found a link that gave me 50% off my first order of over $100 at Bonobos.com. The link worked like a charm and after making my purchase I was given my own link to spread around so that other people can get 50% off too. In turn, I get a $50 store credit which means - MORE PANTS!
If you use the link below you will get to save 50% on your first order over $100 guaranteed. It will take you to a page where you create an account, then you shop, and when you check out the form will populate the discount code field with a unique code just for you. Then you save money and also get a link of your own when you're done. Happy shopping!
Go Get 50% off at Bonobos.com
Today is the anniversary of the December 6th massacre in Montréal. When this happened I was 14 years old, growing up in Ottawa which is only a couple of hours from Montréal. This hate crime had a devastating impact on the feminist community, and on young women considering studying in technical fields.
This morning I was listening to a Spark (CBC Radio) podcast about females in startup culture and it brought up the topic of the decline in women enrolling in STEM and as I got to the office and remembered what today is I thought: "Here are 14 fewer role models, and STEM women".
In the early 90's I lived in Montréal and was part of direct action to commemorate this day. One year we blocked traffic in a very busy intersection near Concordia for 15 minutes, as a woman read out each name, allowed one minute of silence before proceeding to the next. We passed out flyers to passers by and to those stuck waiting in their cars. What impressed me at the time was how so many people were aware of the significance of this date, of this heinous crime, and that any anger quickly dissipated and was replaced by respectful silence.
Today I'm taking 14 minutes to remember Geneviève Bergeron, Hélène Colgan, Nathalie Croteau, Barbara Daigneault, Anne-Marie Edward, Maud Haviernick, Maryse Laganière, Maryse Leclair, Anne-Marie Lemay, Sonia Pelletier, Michèle Richard, Annie St-Arneault, Annie Turcotte, and Barbara Klucznik-Widajewicz. I'm not putting it out there in anyone's face in the same way that we used to but I'm glad to see some people tweeting, blogging, and otherwise continuing to bring it to people's attention so that they do not forget how this was a crime that can never be mistaken for anything but a hate crime against women, and feminists specifically.
In the Geek Feminist post the author points out how today we should also be remembering other groups who are targeted and killed such as Aboriginal women and Trans women. I want to suggest we remember that every day, and then on December 6th we can take an extra 14 minutes to remember that a guy walked into a room and specifically shot women, calling them a "bunch of fucking feminists" while doing so. He didn't know if they were feminists. He equated them being in a non-traditional field with being feminist. Today when a woman shies away from labeling herself a feminist I have to wonder if it's events like this that shaped her idea of why using the F word doesn't seem like a good idea.
Something I am thinking about with regards to this event is that the gunman told the men to leave the room, and they did. They left their cohorts in the room with an armed lunatic instead of protesting, uniting, or otherwise trying to help. Similar to the use the Bechdel test to check for quality content in media - I wonder how this scene would play out today in a CS classroom. Would it pass a Polytechnique test? Would today's male students still walk out and leave the women behind to be murdered?
BP's attempt ($50 million ad campaign: http://bit.ly/9teR0o) to pass the blame.
Reminds me of Eddie Izzard's gun joke:
Consumers standing there shouting "I need OIL!" doesn't cause oil spills, being the oil drilling company with faulty equipment and no safety plan does.
Play this song while you read this - it's what I was listening to this morning while thinking about this post.
One of my favourite things about being part of a queer community is participating in the way we perform for each other as both performer and audience. Camp, drag, drama, dance, and even the occasional spoken word piece move me and make me so proud of our colourful, creative, and freaky selves. Often our main stage celebrities are shameless and will do anything for attention but there is also room for the shy wallflowers to take the stage every so often and get in the spotlight where they will do something completely hilarious and beautiful, imprinting a lasting image of their courage on our minds.
Yesterday I posted the following as a Facebook status update:
It's NOT a coincidence so many cities are making alternatives to the OFFICIAL "family" Pride parties which rely on corporate sponsorship. Pride went from a march to show we existed to a bloated tourist attraction that requires millions of dollars to survive. Let's stop doing the SAME thing EVERY year, it's lazy. Get freaky on your block, love each other up in the streets, throw parties any day you want. Fuck Pride.
This morning I showed someone clips from some performances at GayBiGayGay back in March. Yesterday I saw this clip from QueerBomb. This weekend I was at NoLose watching a variety of performances by very talented queers. My community in Toronto (and a bunch of us who don't live there anymore) just recently lost the amazing community organizer Will Munro who used to bring us a monthly night of queer expression called Vaseline/Vazaleen. That's where I first saw The Hidden Cameras back in 2001. That where I saw homos go-go dancing in briefs with sock masks on their faces, drag queens boxing, Kembra Pfahler in blue body paint walking with bowling balls strapped to her feet with electrical tape and so. much. more. Even I got to be on that stage a few times participating in contests like bob-for-dildos on Halloween (Vasoween) night.
At the music festival I worked at for many years we wove performance into our daily tasks. Dressing up and impromptu dancing were staples but every once in a while we would get to do full-on theatrics for each other and for the larger community. Whether it was a parody of a revival tent, a perpetual new year's eve party where the clock struck midnight every 5 minutes, or a silent film being acted out by monochromatic-outfitted villains and heroines, we acted out for each other intensely and with so much appreciation from the audience.
I love us.We say that often. Right after someone dazzles us with an unexpected serenade or a spontaneous choreographed dance. We say that when as a large group we raise the energy level in the room above that of the day-to-day getting by. Queers do this a lot. Throw parties, freak out, rally, shout, dress up, go out and play. We don't need Pride™and their big budget, booked entertainers, corporate floats, designated parade routes, or "no you can't bring your own water in here" beer gardens.
Just perform for me and I'll do the same for you and we can do that whenever we want.
After moving to the United States just over six months ago I started driving a car again. Spending a lot of time commuting has given me a whole new view of car culture - California car culture to be precise. Highway 280 running from SF to the Silicon Valley has shown me a whole new world where most cars only contain one person (including my own), are often hybrid or at least manufactured by Toyota, and are generally free of decals. That's probably why I started to notice this phenomenon of family car decals.
I first noticed them in December, often in the form of varying sizes of flip flop shoes in a row on the back window of a vehicle. But lately I've seen more stick figure representations along with the occasional skull version (the goth/rocker family?).
A quick google search turns up an incredible amount of pictures so I'll stop taking pictures of them on my phone now. I've been so curious to know why this is such a contagious sticker trend. I can't help but think that esp. in the recent years of debate over marriage and family caused by gay marriage activism that we are going to see an incredible backlash in the form of "family pride" by people with traditional hetero family units. 99% of the stickers i see depict nuclear families. Some add on a dog after the stick people. This could be because a divorced family and thus spread out family might not have one car to put all its stick figures on...or just that only families who fit a two parent/many kid mold think it's cute to get a sticker version of themselves made.
I'd almost put my obsession with the trend aside when I saw this:
The debate over what makes a family is now to be discussed over the $5 vinyl cling on your gas-guzzling minivan, just like your activism now consists of clicking a "Like" button to send your outrage over a news story back to your Facebook feed.
Just a quick post - more to come. I am moving into a studio at Duboce & Church this weekend. I've basically been calling it "the heart of the gay". Already, as I walked home from picking up the keys, I was thrilled to see the gay boys on every corner. This is one of those romantic visions I moved to SF for.
My new place is small but it's really bright and the kitchen has a full-sized gas stove, a bigger fridge than I've had for the last 6 months, and built-in shelves. There's room for my table & chairs, plus room for a nice chopping board island that I've been coveting. Though it's technically a studio and I will have to put my bed and couch in the same room there is a HUGE closet. It's about 19 feet long, walk-in, 3.5 feet wide, and the back wall (all 19 feet of it) is covered in built-in shelves. Plus the ceilings are close to 10 feet high and I can put a second level of storage up at about 7.5 feet.
Pics to come as I work on moving myself in and taking advantage of all that space. I love vertical space.
Now that I'm not on Facebook anymore, I've been noticing when I get the urge to share information. Thoughts that pop into my head, interesting things I find on the internet, blog posts I want to write are starting to pile up and I don't currently have a lot of time to pump those out. So I'll start small. Better to start small than not start at all.
Sidenote: When I first started videoblogging, there were several great clients for subscribing to people's vlogs and I used to start/end my day catching up on a select roster of people's posts. I wonder if I will go back to a model like that eventually or if I will come up with entirely new ways to get daily content. Currently I get links and interesting tidbits of information (like Dio's death) from Twitter and IRC conversations with co-workers.
Back to the first to-do list. I'm sure there will be many but this is the stuff I think I need to start with:
1) Re-do my website in order to host all my blogs in one place and get off of the .blogspot namespace. This will also have the added benefit of cleaning up my web portfolio and having a better showcase of what I've learned and done with Wordpress in the past year or so. I originally set this up in my last semester of school as a requirement for a class because we needed an online presence. Funnily enough I now help lots of people have online content and yet completely ignore my own.
2) Set up a feed reader - either Google reader or some similar option - and subscribe to my favourite blogs and online magazine content
3) Move away from Go Daddy hosting - I need to get my own server up and running and learn how to manage it instead of using the McDonald's of web hosting.
4) Keep a list of blog post topics that I want to cover and make a habit of writing at least one of those posts per week.
5) Vlog more, vlog often.
6) Build a dog house. I'm putting this here because I've read that you never do the last thing on your to-do lists, and I'm okay if this one doesn't happen.
My friend mhoye covered everything I would say about why I'm choosing to leave Facebook (and then some, he gathers all the privacy stuff well!).
I'm really hoping that by leaving Facebook I will be reclaiming some time and creative energy to revitalize this blog, make more vlog posts, re-do my website so that it's up to date, and generally enjoy intentional communication over the deluge of lazy input that Facebook provides in spades.
There was a time when it seemed that in order to learn what was going on around town you had to have a Facebook account but now that feature has been drowned out by so much publicity that I don't even look to the events anymore. I expect my friends to tell me when there's something awesome going on. I will look to the local papers if I'm desperately seeking an interesting night out.
Living without Facebook will be hard at first because I'll probably fear that I'm missing something. I will most miss the casual posting of media that my friends are so good at doing - the links, photos, videos. I'll be encouraging people to blog, to email me, to post on flickr or other content sharing sites. I'm also going to trust that when I see the people I love in person they will whip out the baby/trip/food photos.
I'm doing this in a conscious effort to become a creator again. I've been sitting back and consuming too much.
Having been a part of Facebook since the "early days" when you had to have a university email address to join, I've enjoyed watching it grow. At one point, I applauded Facebook for being a great teaching tool on privacy because I believed that it was teaching average internet users more about granularity and control over access. Now they have gone too far. I was originally planning to stick around to bear witness to whatever the next violation of privacy would be, the one after that, and the one after that. Instead I'm going to lead by example. I will have a full and media-rich life on the internet without Facebook, and I will happily discuss the awesomeness of this with anyone. I will actively encourage people to try it out for themselves, just as I love to encourage people to quit smoking, eat more salad, and learn to run.
See you 'round here more often. Don't be a stranger.
Ran on a treadmill tonight for the 4th time in 5 days. I miss running outside where the air is fresh. Living in a hotel for 9 days in a city I don't know is not the best idea and I have learned my lesson. However, the conference I'm at has been amazing and I'm meeting lots of great people. In the down times I have been thinking a lot and here is one of my observations from today:
I'm a "middler". I need to make my peace with that. I am not exceptional at any one thing, I am not going to be the one who invents some fabulous programming language or does something else super tech-fabulous that geeks will fawn over and I am okay with that. I have to remember that I am ok with that because sometimes when I get around a group of people who care about those things I start to care too - but really I don't. So back to being a "middler". I find myself often in the middle of things. In fact, I put myself in the middle of things on purpose. I'm in the middle of my gender spectrum (being butch -> ftm and I'm not saying that's every butch's or ftm's spectrum, it's just mine). I'm in the middle of art and technology, big corporations and grassroots non-profits, open source and queer communities, feminism and free software activism. I can find lots and lots of middles to be in. I must like being in the middle. So every once in a while when I feel worried that I am "not good enough". I have to remember I am good at this. Being in the middle. On purpose.
Mozilla just announced Mozilla Service Week which will be held September 14 - 21, 2009. This week is a push to connect people who can help make the web work better for someone in the community with people and organization who need that help.
Coming from the non-profit arts sector prior to my job at Mozilla, I will be spreading the word with many arts organizations in Toronto who would be wise to sign up for help from such a talented pool of volunteers. Of course I will also donate my time that week even though it's the kind of work I do all the time already. I can't even count the amount of time I've spent setting up routers and networks for less technical folks in my life, or helping them set up their new computers and teaching them basic skills (all teaching sessions include installing and setting up the latest Firefox of course).
The best part of this week, in my opinion, is that it's an opportunity to get hands-on with local users in the community. The library is a great place to start. It wasn't that long ago (around 2003) when I was using the library computers as my primary access to the internet. I'd love to go in now and make sure that their computers are up to date, and write up how-to manuals and helpful hints for beginners. Even better, get some folks to translate those manuals or tip sheets. At my local library I'm certain that there are many folks who would appreciate localized information sheets.
Two areas that are of particular interest to me with regards to the organizations I know in Toronto:
- Bring their websites over to an open-source CMS like Drupal. Many of the sites are hand-coded php (or god forbid Dreamweaver-created sites) with no administrative back-end and keeping the site's information up to date is a difficult/dangerous task for non-technical staff.
- Take their FileMaker Pro databases over to MySQL or PostgreSQL so that they are no longer locked in to expensive, proprietary database software that requires additional hosting costs. Three organizations I have worked with are on three different versions of FMP and none of them the latest. Upgrading is painful for them and their hosting costs are ridiculous (especially the ones who are on older versions).
If you're technically inclined, go to the site and sign up. If you've got an organization in mind, tell them to sign up. Let's make this event a success so it will inspire more weeks like this in the future.
Momentarily there will be a new spring mix up here:
http://avnerd.tv/sharedFiles/Music/springMix.zip
Download it (110MB) and enjoy. This time I created an .m3u file which if you open that with iTunes instead of importing all the songs, should put them in order of how I set up the playlist. That order, in case you do not for some reason use the m3u file (or if it doesn't work, or you don't use iTunes) is:
aForest.mp3
parentheses.mp3
satanSaidDance.mp3
letMyShoesLeadMeForward.mp3
parisIsBurning.mp3
raiseMeUp.mp3
youCantGetItBack.m4a
fatalistPalmistry.mp3
explode.mp3
goldenCage.mp3
myNightWithTheProstituteFromMarseille.mp3
walkingOnADream.mp3
sixteenthStage.mp3
lucifersJigsaw.mp3
untouched.mp3
sexyBitch.m4a
mindsEye.mp3
Just want to give a shout out and some fresh eyes to this AMAZING letter written by Riese over at automatic straddle. I happened upon this from the L Word Online site and boy am I glad I did! I've been spitting mad about the Max character for years now and finally someone put all my rants into a nice, legible letter.
I hope this gets back to Ilene Chaiken and that she recognizes what a terrible disservice she has done to all the gender outlaws.
Today from 2-5pm in the East end, there was a cupcake bake-off where dozens of bakers brought cupcakes to show off and more than 350 people turned up to chow down.
It was a Mad. House.
Things started to go awry when I realized that I was not going to get to have a nice, polite sampling of every kind of crazy cupcake the bakers had dreamed up (I saw one with HAM on it!). Cupcakes were being served whole, from two tables in the long, open, studio space and it seemed that at most each style was represented by no more than 2 dozen individual pieces, often less.
My suggestion for next time? Put tables around the edges of the space where each cupcake baker can have a spot to set up at and let the people walk through in one direction only. Start at the door, end at the door, and get to try a section of a cupcake from each table along the way as your taste buds are tempted by the offerings. We should go to the cupcakes, we can not be trusted to have them brought to us.
Back to what happened - the organizers would bring a baker to the microphone and we would hear a description of what was about to be set on the table (aka fed to the wolves). Often before the tray could even hit the table, the cupcakes on it were snatched away by the throng.
I watched cupcakes go in milliseconds as I parried for a better position. Finally I got right up to the table's edge and then waited patiently, muscles twitching for my chance.
After I was once again cakeblocked by the hordes when the lemon meringue homage landed, I realized that my plate and napkin were a red herring and that I must have both hands free if I was to score any cupcakery for myself and my partner in crime.
The opportunity came 15 minutes later, this time for cupcake gold - the cafe latte - which was a cupcake perched in a sugar icing creation that resembled a coffee mug. The cupcake icing was the steamy milk top. Pictures are attached. The second set was a Rolo-inspired cupcake with mini Rolos on top of the butter-icing dome and a caramel center in the moist cakey part.
Pleased with my cupcake providing, my partner in crime and I pulled back from the table to let others get their just deserts (sorry, I couldn't help myself) which is something I wish more people had done. I watched several people stay close to the table's edge even though they had already eaten cupcakes, and that just lacks the kind of goodwill you hope to see at an event like this. Our treasure was tasty and well enjoyed, worry not.
Walking back down Pape St. with the sugar starting to rush to my head, I found myself saying "That was like something that would happen in New York City", and "There were lots of artists there obviously, but a totally different crowd than in the West End. Who were those people?".
For me, it was an excellent (food) adventure that took me outside the usual Queen West/Parkdale style events, and for that I applaud the organizers. A final note, I would like to also express my appreciation for the tech-savvyness of the operation. I heard about it through a friend who knew one of the entrants, then found the Facebook event and while at the event learned of the Twitter feed...not many events in Toronto have their sh*t this networked yet that I have seen. So extra applause for using the great tools that exist to your advantage and for making this event so multi-dimensional.
This is the first post to test the new FatPlanet set up that I am now running from my home server. If all goes well, this will be up in about 30 minutes and then I can start making the page look prettier and adding more feeds.
Posts
Head on over to www.lukasblakk.com for all future writing. This blog will stay up as long as Blogger keeps the lights on, but everything here has been transported over to the new site, so don't worry - I have backups!
We're ready for a soft release of the first step in our very experimental autolanding system. Experimental meaning: we reserve the right to pull the plug, take it down for tweaks, and some information may be lost when bugs arise. You can check the if the autoland system is up and running by going to http://bit.ly/autoland_status
This is the Try branch only portion of what will become a system to automate and more easily manage multiple branch landings. Marc Jessome, our returning Release Engineering intern, and myself have this as a Q1 goal. There are several issues to be resolved with this system and the link above will keep you appraised of what the goals and known issues are. We will be working hard over the next two months to make this a secure, reliable system for landing patches with minimal developer time spent pulling, pushing, and watching tbpl. The hope is that it will also become a useful tool for Release Coordinators to track that a fix lands across several branches as needed. Future features will include a bugzilla extension to securely interact with this system and remove the need for whiteboard tag changes and a RESTful API so the whole process could be initiated through the command line. We appreciate constructive feedback but please hold off on scope creep suggestions :)
Here's how it works right now:
- Attach patches to your bug Note: if you (the attacher) do not have permission to push to Try, get an r+ from someone who does
- Use this documentation to determine the appropriate whiteboard tag and enter it in the bug so our autolanding poller will pick up on your request
- The autoland system, which tracks all bugs with autolanding requests, will queue up your patchset and then pull it from the queue, apply the list of patches in your bug (or those in the whiteboard tag) to a clean pull of mozilla-central tip, commit each patch as the patch author, and finally push to try as Autoland User
- A comment will be posted in your bug with the results (hopefully successful) of the push attempt, and the whiteboard tag will read [autoland-in-queue]
- After all builds complete, their results get posted back to your bug (just like with the current '--post-to-bugzilla Bug #' flag in trychooser) and the [autoland-in-queue] whiteboard tag will be removed
Last Wednesday David Eaves presented the results of the multi-tiered contributor lifecycle audit (watch the video). A few points really grabbed my attention and as someone with a background in arts & education non-profits I feel the need to share my experiences alongside my reactions to this talk.
David pointed out that as we are growing, we can hire people to solve problems, so what exactly do we need volunteers for? Survey results showed that contributors often don't feel their contributions had much impact on the project and that as our paid staff pool grows in size, there is less clarity about what exactly a volunteer's importance is to the critical path of Mozilla's mission. I wish we had this data prior to the 1+ year push to releasing Firefox 4. My hand-waving hypothesis would be that as we were cramming to get a product out the door we forgot to be leaders of volunteers and instead unconsciously pushed them aside so that things could get done on a schedule. It was a stressful time, but now that we've moved on to regular, rapid releases perhaps we paid staff can all take a step back and really assess how we incorporate the work of volunteers into our individual areas.
For many Augusts I have worked at a women's music festival in the woods of Michigan and at that festival there is a kitchen that has pumped out 3 vegetarian meals a day for 5 days to 4000-8000 attendees depending on the year. This festival relies on a core group of 'workers' who are in fact volunteers but let's pretend that group of 500-600 people is like the paid staff of Mozilla. The main kitchen work crew gets about 30 workers to run the kitchen. You might think to yourself "but 30 people cannot produce enough food for 4000-8000 women" and you'd be very right. The way it works is that all attendees of the festival are asked to do two 4 hour workshifts during the week they attend the festival. The majority of workshifts center around the main kitchen and creating the meals which range from burrito night to pasta putanesca to nutloaf (a vegetarian version of meatloaf). All these meals involve preparation of pounds upon pounds of vegetables as well as cooking of pasta, beans, sauce. Did I mention this was all in the woods, over a massive firepit? Yup, so 30 women are in charge of making that entire process work and they do so by wrangling hundreds of volunteers per day into shifts around each meal and constantly leading and dividing up the work so it can be done by many hands yet results in one huge meal - 3 times a day!
So let's go back to people who are volunteering not feeling clear about how Mozilla works and whether their time and effort has impact. How can we make sure that the smallest task makes that person feel like they've contributed? Some areas of Mozilla do this very well to name a few; AMO, SUMO, QA, and Personas. These teams manage tons of volunteers and have tasks with measurable outcomes (tests run, filing bugs, approving an add-on, answering a question in the knowledge base, shrinking the queue of pending Persona submissions) and sometimes they can use scoreboards or themed days to get volunteers mildly competitive for the respect of their peers and accomplish larger goals in a short burst. I'd encourage people interested in having volunteers participate in their team's work think about how to make sure their volunteers have tools to measure their impact from the get-go. In Release Engineering I would measure the number of bugs that we have yet to fix, many of them labelled "simple" or "old". If I had volunteers doing RelEng work I could keep track of their progress and post reports (as blog posts) of who fixed what when and how as the number of bugs shrank.
Another interesting result from the survey: older folks (34-55!) aren't on-ramping as much as younger ones. At first I wondered how much of this was about access to the muscle memory of being a student. I think it's fair to assume that many students/youth can have a lot more time to contribute to projects like Mozilla as certain adult responsibilities may not be required of them yet. Over the past week though, I have started to visualize another take on this. In the arts & social justice organizations I have been involved with there have been plenty of adult volunteers but those organizations have a different need for volunteers. The music festival I mentioned would not happen if it wasn't for volunteers. The fact that the volunteers want the community of the festival to exist for them every year becomes the carrot drawing women of all ages to come to the woods of Michigan and build a music festival every year. People quit jobs, take unpaid leave, and make plenty of other sacrifices of their time to participate in creating this community. The thanks for this 2-4 weeks of donated work is an amazing live/work experience camping with 5000 women on private land, having workshops, parties, and dances all in a very natural, safe, and ad-free environment and watching incredible performances all day and night for 5 days.
In a different example, let's look at a the Toronto International Film Festival. Volunteers have to make it through the rigorous screening and application process in order to 'get' to volunteer for the festival. They are rewarded with behind-the-scenes access to the festival, sometimes a quick run in with a movie star, and free tickets to festival screenings. The festival shows entirely world-premiere films so this is a huge deal for a volunteer. Several films will see theatrical releases after the festival but seeing the premiere, often with the star in attendance and with a director Q&A post-screening really sweetens the experience. The volunteers also get thanked before every screening with a cute trailer from the sponsor for the volunteer program and there's always a fantastic party post-festival as the final thank you.
At Mozilla we do thank our volunteers with tshirts and sometimes bringing them to summits, MozCamps, or other parties. For older volunteers though, I wonder if that's enough. What does it take to get someone in the 34-55 range to donate their time? I'm really interested in this one since I fall in that demographic as well. For me, I need the time donated to do at least one of the following things:
- be social, meeting new people in the community I chose to volunteer in is a big part of why I'd do it in the first place
- provide a networking opportunity (similar to above, but might apply to folks on the job market a bit more accurately)
- get me free access to an event I wouldn't attend if it wasn't
- be something my friends are also doing so we are visiting with each other while doing something interesting
- be for a very good cause so I feel good just helping that cause regardless of the tasks I perform
What's going to encourage 34-55 year olds to engage with Mozilla? In my opinion it's going to happen with targeted events where they can do something in a few hours that leaves them feeling connected and fulfilled and even better if it makes something in their life easier. A while back, in Toronto, we did a day of service and set up an info table at the local library so people could come and ask anything about Firefox and even though by some ironic twist the library's internet died we still had an amazing day just conversing with people and answering questions about Firefox, the web, security, and even general computing questions. According to David "having good experiences in the project helps one to want to find others and pull them in" and "age and gender have no impact on the willingness to on-ramp, but the longer you volunteer with Mozilla, the less you on-ramp". My approach with trying to on-ramp then, in light of this, would be to look at getting a lot out of that short interaction. Help someone help themselves on their computer. Teach them a few keyboard shortcuts or how to install an add-on that helps them do what they already do faster and with more confidence. Then encourage them to come back and teach someone else what they learned. This can spread like a pyramid scheme and it's no longer about getting a single volunteer to stick around for a long time, it's just about having a good experience and carrying that forward. Potential volunteers can be motivated by the mission and/or by practical considerations it's important to remember both have tremendous value to the Mozilla project. I think it's important to encourage 34-55 year olds by believing it's OK for a contributor to do a one-off in a few hours as long as they walk away happy.
In conclusion of this very long post, I want to circle back to measuring. If we are going to make community a core part of what we do then we need to measure it we currently do not have an institution-wide measurement of contributions, volunteer performance cannot be evaluated, there is no structure for including volunteer engagement during strategic or operational planning. Until we require Directors to create annual and quarterly goals that include measurable goals around volunteer growth, retention, participation, and effectiveness we will only see people (like myself) trying to do this "off the corner of their desks" which means it's not a part of your paid work and thus less likely to be sustainable and effective. The Toronto International Film Festival is a great example of what we could do here. They have paid staff who organize the volunteers each year. They have a clear path for volunteers to follow to be accepted - training sessions are mandatory. Each year returning volunteers are given roles depending on performance from previous years. The record kept of each volunteer's performance allows paid staff to request certain volunteers for specific tasks based on that information and a volunteer's history with the organization. Teams of volunteers will sometimes have "Captains" who are also volunteers but with more experience and they are thus given more responsibility. Each area of Mozilla that can accommodate volunteers should keep an eye out for their current or potential "Captains". David also suggested that, while we avoid it, we should really look head on at guidelines for when to rely on volunteers and when to not - this seems to fly in the face of open source "free for all" mentality but if we compare ourselves to other non-profits like TIFF there is proof that having some structure for volunteers allows staff and teams to develop stronger relationships and the work gets done smoothly, which was really the point all along.
Don't forget to throw them fabulous parties, share with the world the importance and impact of their contributions, and remember you can never thank a volunteer too much.
Last Thursday night about 8 women arrived at Noisebridge to learn how to contribute to Wikipedia. Several things led to this gathering:
- An article in the New York Times back in October drew attention to the lack of women contributors to the Wikipedia knowledge base and that got me thinking.
- Having organized other spontaneous "women get together and learn stuff" events I figured I could take the same approach to Wikipedia contributing, get some women together to create accounts, generate content, learn how to stop vandalism and see what would stick.
- Recent participation in activism around the Occupy Wall Street movement also inspired me to try and reach out to communities I am in who are not as technical, to encourage people to come first with knowledge and interest in topics Wikipedia could benefit from and let the tech come second.
- A month ago Elsa and I were talking casually about all the the above mentioned things and we decided to just go for it and pick a date, throw it up on the Noisebridge (local SF hackerspace) calendar, and see what we could make happen.
I was happy with the turn out - we had a mix of artists, educators, and tech workers. Also as a bonus one of the attendees, my coworker Boriss, was a seasoned Wikipedia contributor who was able to really detail the ins and outs of the different levels of participation. I can't stress enough how amazing it was to have her and her knowledge there because there are lots of misconceptions about Wikipedia (I definitely had some) and her first-hand knowledge was inspiring to me.
So the beginning of the meetup went well enough, and as you might expect. We introduced ourselves, talked about why we had come to the event and what we were hoping to get out of it. We started in on learning how to set up an account if one didn't already exist and we looked at discussion/history/edit and other basic navigations of Wikipedia space. There were a lot of questions about what belongs in Wikipedia, neutral tone, citations. The conversations were lively and I found them quite enjoyable.
Here's what I didn't expect: Getting folks interested and excited about Wikipedia becomes REALLY HARD in practice. Unlike learning Python where the participants can hammer out some code on their own computers in minutes and feel accomplished, there is a lot more complexity to Wikipedia. There is a lot of confusion about their UI, their purpose, who can do what and when. Very quickly it seemed that the women who had come to the event feared adding anything new to the knowledge base and they were also incredibly intimidated by the UI of the site. It wasn't even clear enough how one would create a new article when none existed.
From this event I learned a lot about organizing and about the intentions of future events like this and I did a little braindumping while we were meeting so I could remember to list them later in this very post.
Things that would help newcomers:
- Having a "new to wikipedia" moniker next to their nickname for the first N activities on the site (we have this on our Mozilla bugzilla) so that hopefully older and wiser participants would be extra nice to them
- Find a way to make some of the simpler tasks that help Wikipedia (typos, reverting vandalism, categorizing articles) into a game that a new arrival could play that would start easy and then move more toward the real-life workflow of working on Wikipedia - as a way to warm them to the UI
- Encourage newcomer to write a straight-up article and have a place for these things to be dumped for inpection/linkage/categorization and otherwise Wikipedia-fying the knowledge dump. My partner is an English professor and can certainly write good content for Wikipedia but everything about the site is intimidating. There should be a page where she could copy/paste or upload a document of her article and then let people who know wiki syntax and the other requirements an article needs come along and finish it up
- Make it way easier to find the "adopt a user" program that I hear exists but no one would know to find that from the Wikipedia home page
I will continue to organize these events, perhaps once a month. More reports as they happen.
Long Version
I love Open Source.
When it first came to my attention, in the first year of my degree in software development at Seneca College, I knew we'd be a good fit. There's something about the spirit of Open Source that instantly clicked with my existing guerilla activist sensibilities. The way that you just take what you want and make it happen. That you create and give away. That you work with other passionate people to make cracks in the surfaces of monopolies that only want you to be able to do things through their (usually financially) gated communities. It reminded me of how I had approached being a filmmaker - taking $50 of Super 8 film and developing it myself in 16L bucket in a dark bathroom then submitting the results to a prestigious film festival and being accepted. Having my work shown alongside films with budgets bigger than the cost of a house was an amazing experience and taught me that not everything has to be polished to be valued.
Open Source is like that to me, the diamond in the rough.
While I was working on my degree I of course noticed (and was not surprised by) the lack of women in my classes. I was surprised when I started to get involved in Open Source to discover that there were less women in FOSS than in proprietary software companies. That seriously BLEW MY MIND. I mean, if Unlocking the Clubhouse is to believed (and it is very thorough research) then technical women want to do work that is meaningful and helps people. Why that sounds a lot like Open Source doesn't it? So why aren't there more women in Open Source? I'll let you Google that question to your hearts content, there's a lot written on the subject and so much more could be. The point though is that the Ada Initiative is a new project that is here to take on that very question through ACTION. They will DO things to get more women in Open Source. Women don't have to be dragged into FOSS kicking and screaming. Trust me, after seeing the overflowing wait list for the Grace Hopper Celebration of Women in Computing's FOSS day, there are a ton of talented and smart women interested and able to do work in Open Source. We (all of us who have already drank the Kool-Aid) need to help them get integrated and feel comfortable staying in FOSS.
When I first met my future team at Mozilla in April of 2008 there was a woman on my team (!) and she self-identified herself to me as a feminist within the first 5 minutes we were together. As someone who was coming in as a student with zero experience in professional tech workplaces I was so thrilled to have an immediate feeling of relief, trusting that if she was respected there I would be too. She also introduced me to wonderful internet properties such as GeekFeminism and Sociological Images both of which helped me start connecting with other feminists in tech fields. Almost three years later I am starting to feel like I've been successful in building the community in FOSS around me that I want to be a part of. It's a wonderful mix of the talented people I work with at Mozilla, the folks I'm working on planning the next Dare 2B Digital with, the programmers I organize PyStar workshops with, the Women Who Code, the Women 2.0, and of course - The Ada Initiative.
I'll leave you with their own words about why you should go straight to the donation page:
We’re proud of what we’ve accomplished already. Since our founding in
early 2011, we helped over 30 conferences and organizations adopt an
anti-harassment policy, organized the first AdaCamp unconference,
provided free consulting on high-profile sexist incidents, wrote and
taught two workshops on supporting women in open tech/culture, and ran
two surveys, among other things.
http://adainitiative.org/what-we-do/
We need your help to achieve our upcoming goals. The Ada Initiative
is funded entirely by donations. Without your financial support, the
Ada Initiative will have to shut down in early 2012.
http://supportada.org/donate
Your donations will fund upcoming projects like: Ada’s Advice, a
comprehensive guide to resources for helping women in open
tech/culture, Ada’s Careers, a career development community, and First
Patch Week, where we help women create and submit their first open
source patch. You can learn more about how the Ada Initiative is
organized and operated on our web site and blog:
http://adainitiative.org
Whether or not you can donate yourself, you can help us by spreading
the word about our fundraising drive. Please tell your friends about
our important work. Email, blog, add our donation button to your web
site, and tweet. Here’s how:
http://adainitiative.org/support-us/spread-the-word/
You don’t have to stand on the sidelines any longer. You can help
women in open technology and culture, starting today.
[tangent]
I love the immersion-as-classroom experience, btw. I made my first Super 8 film in 1999 at G.I.F.T.S under similar conditions where I lived with my other new-to-filmmaking cohort in a couple of trailers-turned-bunkhouses over on the beautiful island of Galiano and for one week we did nothing but eat, sleep, and breathe guerrilla filmmaking. We shot, hand-developed, transferred, and then edited our work, cranking out an entire short film in just one week. I left that experience filled with confidence that I could make a movie a week for the rest of my life!*
I'll re-visit the instructions soon to write about screen & irssi to keep a perpetual connection going in an attempt to make that option more accessible to folks who might feel it's too technical.
Did you know that we don't build a fresh nightly on a branch unless there's fresh code? Well, now you do! In the interest of saving even _more_ resources and network bandwidth so that we can accommodate even _more_ project branches we have added this little bit of logic to our nightly build scheduler. It makes sense, right? I mean, why have a nightly that is just like last night's nightly?
In other news, Ben just added 4 more twigs (aka Disposable Project Branches) for side project work and one of them is still available for booking.
In order to solicit contributions I have been working with David Boswell. We added Release Engineering to the mozilla.org/contribute 'areas of interest' page and I have created the beginnings of a RelEng-specific contribution page. The first two areas that I think would be a great introduction to working with RelEng code & tools are the TryChooser and our upcoming Autoland system. For the latter, our intern Marc Jessome is sticking around this fall as a contributor to carry on the amazing work he put into this system over the summer. He'll be continuing to debug the code and improve the portability of it so that we can get it into a beta testing stage by the end of October. As that work is being done we also need someone to help us write the API functionality that will allow sheriffs and developers to write tools that utilize this new hands-off landing queue. We'd also be happy to have people work on the issues that come up when we take Autoland to the next level - auto-landing on a production branch. To do this we'll want some automated backing out, bisection, and the ability to wait on getting patches reviewed before continuing.
Another great area for someone interested in helping out Firefox developers is working on the TryChooser syntax and features. There is a whole tracking bug dedicated to try_enhancements and most of those bugs are ones that can be worked on in a local staging environment. It's a chance to get your feet wet with buildbot and our custom scheduling setup. Some of these smaller bugs would be short on time commitment and high on developer appreciation if you fix them. That can be a winning combination for a new contributor, I speak from experience on that :)
So, if you're reading this post and you or someone you know is interested in dipping their toes into becoming a Mozilla contributor and these projects make you curious then come find me and we'll get you set up with a staging environment so that you can start fixing real world tools and automation bugs in no time.
Ok, I'm a little biased - full disclosure: I work for Mozilla. But even if I didn't I suspect I'd be impressed with the amount of amazing innovation and hustle that Mozilla's community puts out towards making the open web more accessible to everyone. Recent projects like Popcorn and Butter are changing the way we work with video on the web. Hackasaurus is reaching out to kids, getting them to move beyond consuming the web (read-only mode) to being able to build and design their own web experience (read/write). Addons SDK, Open Web Apps, Browser ID, the list goes on and on and I'd better stop now or I'll lose you before getting to the good stuff.
Mozilla may be a huge brand but we're actually a relatively small group of people doing this work all around the world. Which is why we now have WebFWD, a program to help innovators of the open web get a chance to hook in to the resources of Mozilla (space, mentors, public reach, food and housing, and more) to help bring their products to the world. With this rolling program of projects Mozilla can be a driving force in getting more open web to the people who need them.
Right now we need a visionary and hard working Program Manager to become the leader of this movement. I'm attaching the posting below, get in touch with p at mozilla dot com with your resume for consideration.
/// WebFWD - Program Manager
Mozilla, the organization behind the Firefox Web browser, is looking for
an all-star to join our new accelerator/incubator program WebFWD
(http://webfwd.org) which aims to do for the open Web what organizations
such as Y Combinator, TechStars and Seedcamp have done for startups.
As the Program Manager of WebFWD you are charged with leading the
overall program - from designing and managing the curriculum, supporting
the selected teams locally as well as globally, working with our
ever-growing list of mentors and partners to organizing events.
If you're passionate about the Web, want to help people build amazing
products and are willing to roll-up your sleeves, then this position is
for you.
Primary responsibilities:
* Design and manage the curriculum for both the Fellow program as well
as the Bootcamp
* Work with and support teams in the program (both locally and remote)
* Work with our mentors and partners
* Coordinate community and press outreach on a worldwide basis
* Create and run events (locally and remote)
Requirements:
* Excellent written and verbal communication skills
* Experience with organizing and running events
* Experience working with startups, entrepreneurs, venture capital and
incubators / accelerators a huge plus
* Proven ability to work independently and in cross-functional teams
* Familiarity with Web technologies
* Passionate about helping people and solving problems
* Enjoys learning and teaching others
* Works effectively in a fast-paced, start-up environment
* 3-5 years of relevant job experience
* BA/BS, or equivalent experience
The TrySyntax helper and TryChooser wiki docs have both been updated to reflect the new option when pushing to try where you can now ask to have your complete summary of results (and a link to the tbpl page for your revision) posted as a comment to the bug on completion. Here's a live example to check out:
| Sample comment in a bug when using --post-to-bugzilla in your syntax. |
| Now you have more control over how you get your try results and how noisy a try push is. |
Please send comments and issues to the bug tracking this work. Thanks for trying it out!
This morning I read that Google+ is going to make your name and "gender" required to be public if you want to participate. This bothers me for several reasons:
Web sites and forms notoriously say "gender" when they mean "sex" and only put M/F or Male/Female as options. When this type of choice is required but called "gender" it erases many people who do not feel that those options cover their gender since that is actually something way more mutable than your assigned sex at birth. Solutions: Call it "sex" which is really what those two categories are or don't make something that is not in fact binary into a required choice of two options.
Google are so proud of being all scientific and data driven and I'm frustrated that they would not take the opportunity on their new potentially game-changing social platform to re-vamp data collection. Don't they have the processing power to allow people to put in whatever they like as "gender" and let the power of the search sort things out in the end? If a small number of people want to put "jedi" or "dog" let those people find each other! Who cares if there are some people who don't feel like Male/Female defines them? Why Google? Why do you want to act like two boxes can cover the breadth of human experience as it relates to gender in this world? Why can't you innovate on the small things as well as the big things that affect human interactions?
I'd really like to see a shift in how we collect data where there is more trust that the user knows who and what they are and that they want to share this information at their comfort level and that those on the other side, let's call them advertisers (cause isn't that what it all comes down to?), be the ones to deal with the outliers and uniqueness of human experience instead of trying to bash everyone into a two-party system.
Sidenote: When I have collected data recently for PyStar and allowed the gender field to be a text box I have found that the expected percentage (98%) of people entered "typical" information like woman, girl, female and that those who needed to express a different response appreciated the ability to do so by entering something else. Leaving this field to user input choice did not result in a messy, chaotic list of random words or unidentifiable descriptors. I fear not that most people will suddenly start to be something else when given more autonomy on forms.
1. https://bugzilla.mozilla.org/show_bug.cgi?id=662396 -- Fix time on dm-wwwbuild01
2. https://bugzilla.mozilla.org/show_bug.cgi?id=600980 -- Set journal_mode = WAL for dirty places profiles -- This mean new performance numbers will start on Thursday morning after the downtime
3. https://bugzilla.mozilla.org/show_bug.cgi?id=649123 -- Run ANALYZE on dirty places.sqlite files -- This mean new performance numbers will start on Thursday morning after the downtime
4. https://bugzilla.mozilla.org/show_bug.cgi?id=663568 -- reboot the DNS and DHCP servers in scl1 -- Rebooting these servers has been shown to burn builds in the past, requires a short (~5min) outage to reboot these servers to allow updates to take effect.
5. https://bugzilla.mozilla.org/show_bug.cgi?id=663963 -- change LDAP to see if that speeds up mercurial -- This change should be entirely transparent. Hg processes that are running at the time that the change was made will have already loaded the NSS LDAP module and will continue to use it until they exit. The only issue to be aware of is that changes to hg access (group membership, or the creation of a new account) will not automatically propagate to the hg servers the way they do now. If any hg access changes need to be pushed urgently, we can do that manually.
If anyone has a reason not to proceed with this downtime, please let me know.
As I write this I am working from Paris and our team timezone spread looks like this:
- Rangoria, New Zealand: UTC (+12)
- Bucharest, Romania: UTC (+3)
- Istanbul, Turkey: UTC (+3)
- Paris, France: UTC (+2) <--- ME!
- Ottawa, ON: UTC (-4)
- Toronto, ON: UTC (-4)
- Philadelphia, PN: UTC (-4)
- Clifton Park, NY: UTC (-4)
- Chicago, IL: UTC (-5)
- San Francisco, CA: UTC (-7)
- Mountain View, CA: UTC (-7)
I'm going to go out on a limb here and say this: Release Engineering does a good job of working remotely with each other. We are 15-16 people (with a few more contractors/fte on the way) and it doesn't matter where you live for you to work with us. Here we are in our meeting yesterday:
| Releng Weekly Meeting - June 2011 |
Quite the impressive Brady Bunch layout, right?
Here's what we do that I think works well for working remotely:
* We meet once per week as a whole group on Mondays. This starts the week off with a status update on our major projects and also a chance for individuals to speak up about anything they're working on that they'd like people to be aware of.
* We are always having conversations in IRC amongst ourselves and with others in several channels. We use #mozbuild as a backchannel for our inter-team discussion, #build for access to a larger group of fellow Mozillians (like philor, Kairo, and ted for example, who often need to liaise with us), #developers is also a place we frequent and then there are some IT/mobile/QA/release-specific channels we hang out in as needed. I think this helps us have a presence in many areas of engineering/dev/IT and even with some of the non-technical teams at Mozilla where inter-team communication needs to happen. It keeps us in the loop on what various teams are up to and also provides the IRC equivalent of being able to overhear water-cooler chat and participate as well.
* We keep wiki pages for most everything. From "how-to" pages for our own release process, automation details, and project planning all the way to pages for outside-releng folks like the Try Syntax. While I find wikis frustrating the minute the information is out of date, the fact that I can update them and find them in my awesomebar quickly when I need them is very valuable to me.
* We email our group with important notices and changes to how things are done. There are not often times when someone will say "Oh I didn't know about that" and the response is "It came up in the hallway when I was talking with so-and-so". More often than not, the person driving a particular upgrade or change to current practices will send out an email to the group with details of : a) what the change is b) what it means going forward c) how the message has been disseminated to a wider audience (if needed) and finally d) where the wiki pages (and bugs, if needed for reference) can be found. This allows any of us to find the information N time units later when the change actually comes up in your daily work and you're wondering "What was I supposed to do when trying to use the new X again?"
* We all meet up face to face approximately once per quarter. Twice a year for Releng work weeks and twice a year at Mozilla all-hands/summit gatherings. We take these as opportunities to discuss larger topics with lots of brainstorming, whiteboard scribbling, and animated opinion-sharing. Notes from meetings like this turn into wiki pages (often during the meeting itself) and those can become specs for projects/bugs to carry the work that needs doing to the next level.
I think that gives a good idea of our team practices. Now here are some thoughts I've been having about lately with regards to working remotely in Mozilla as a whole. It helps that I'm currently working in Paris right now and am pretty much completely opposite of the PDT work day but some of this was on my mind even when I was in SF.
I think Mozilla has an amazing opportunity to set trends in how to work with distributed teams. We already have people in every time zone! Even with the incredible advancements we've made with our use of video/audio/irc tools (airmozilla/vidyo), there are some ways in which MV is still the eye of Mordor for the company.
I would like to see us shake that up so I think we should try:
* Not having meetings in large groups in MV (except at all-hands). Instead, put small groups of people in various rooms around the building so that "we are all remote" is a reality for everyone so that the clarity of the communication channels are taken seriously. This means we all become just as invested in the quality of audio/video feeds, using tools like Etherpad for public collaboration, and advocating best practices for the speakers/presenters as those who are not in MV. I bet we'd see an increase in contributions to new tools & meeting practices if we were all experiencing meetings remotely on a regular basis.
* Rotate the hosting of the Monday meeting so that over a series of Mondays it would be run from various remote Mozilla offices and this would mean that it moves in time (which could be scheduled in advance) but it also means that all offices get a chance to feel special and be the center of attention. We'll have an opportunity to get to know our co-workers from other offices better as they present the meeting and I even imagine some friendly competition could develop for who can run the most energetic and engaging meeting.
I'm really interested in trying that second one. The most MV-centric thing we do is have our 11am PDT meeting on Mondays be a locked-down time. What if it rotated around each week and just happened somewhere in the 9-5pm spectrum of your timezone? We could create a schedule for it so folks could have lots of notice for scheduling their other Monday things around it. Also, maybe sometimes you might miss one Monday meeting because it's just not at a good time for you but that's something some of our remote workers might say is just par for the course.
I know the idea needs more work, but there's the nugget of it. Curious to know what others think. I'll be continuing to talk this up - maybe we can have a larger discussion at the all-hands in September. Eventually I'd like to see us get to a point where we all think of ourselves as remote since if you look at Mozilla as a whole there does not really need to be a "hub" where one would be "local" compared to everyone else - there's just planning for timezones/meetings and then all the people we work with doing their amazing stuff.
Two updates to Try are about to go into effect which enforce asking for what you want using the try syntax and configuring how much email you want to get with your results. Read more below.
Bug 661409 - Now that this has landed, a push to try only generates email about a particular try builder's results if it does not succeed. You can adjust this to be more verbose by adding a -e/--all-emails to your try syntax if you miss getting over all those emails, or you can just shut off the emails completely with a -n/--no-emails in your commit syntax. Note that you must be using the "try: " syntax for these email flags to be picked up which leads quite handily to...
Bug 649402 - Try syntax use is about to be mandatory as soon as this bug is fixed and the hg hook is enabled on the try repo. We're doing this to encourage developers who use try to take an extra moment and request only the resources they absolutely need on their push. This should reduce the test/talos load that has been increasing wait times across all branches during busy periods. One additional psychological change is that the "try: -a" syntax has been removed and in order to ask for a mozilla-central matching run you must be more explicit: "try: -b do -p all -u all -t all". I've updated the docs to reflect this change as well as the TryChooser syntax helper webpage. We're really not trying to make your life harder with this change, approximately 50-60% of pushes to try currently use the try syntax and if you push to try without it you will get a helpful message pointing you to docs and syntax builder. Check with #developers for tips and tricks from the folks who've been using this since the beginning, I know they have many including using the newly-minted Mozilla-Inbound repo where a push will get the complete set of tests/talos if you'd like to let your patch bake for a bit after doing a selective try run.
Almost a week since the post introducing the design attempt for auto/assisted branch landings via Bugzilla and Try and guess what? We re-wrote everything!
The details are in the wiki, bugs have been filed, code is being written. We are working on making this system use a message queue and also see if we can work with mozillapulse to get information on bug changes from Bugzilla.
I'd love to tell you more about it but you can read the wiki and I'm excited to get back to my SchedulerDBPoller component.
Ehsan's blog post wishing for assisted landings on mozilla-central started a lot of people talking about this being a very desirable and useful tool for developers, where they could set a flag in Bugzilla and then be free to do other work until the results of their push were posted back to the bug. As part of enhancing the Tryserver I was already working on a way for users to signify in their try-syntax that the results of the push should go to the bug and these two ideas started to fuse into a dreamworld where someone could attach a patch to Bugzilla and have it be tried and pushed to trunk all with some magical bot automation.
After doing a very short survey of developers and their try usage I have observed that there are two very different stakeholders here and both of them need separate-but-related tools:
| Developers | The Bot (automation) |
|---|---|
|
|
After soaking in the survey feedback and a first attempt with a whiteboard yesterday, I woke up this morning with some clearer ideas on how to take a first run at creating this system. It involves creating several new tools, one new database, and enhancing our existing buildapi.
New tools for Developers:
- Adding more Try syntax options:
- include list of the bug(s) that you would like your try results posted to (however many make for a complete run on your push, this can be one linux build or a complete ~186 builder try: -a buildset)
- turn off email notifications
- Adding functionality to the self-serve api view for a revision (eg: https://build.mozilla.org/buildapi/self-serve/try/rev/de8ea75bc48e) that will better show your results for that push and provide a button which will post the patch(es) to a specified bug
- Auto-landing from a bug in Bugzilla using the [autoland-try] whiteboard tag where any attached patches which are not obsolete, and have nothing set for 'r' are applied to the current tip of mozilla-central, pushed to try and those results are returned to a comment in the bug
- Crawl Bugzilla for bugs where [autoland-$branchname] is in the whiteboard and automatically push to tip of named branch, get the results, and return them to a comment in the bug (stripping out the whiteboard tag on completion)
- bot will grab all non-obsolete, r+ patches (if $branchname != 'try')
- interdependent bugs will not be handled in this first swipe at a working system
- pushes will have autoland-$bugnumber as the reason for the build in schedulerdb so that the results can be watched for, aggregated, and reposted to the bug on completion
- Watch results coming back for one or two oranges (we can set a threshold) and re-triggers those, watching for the second set of results - to attempt catching intermittent oranges
- Backout patches where even with a rebuild on an orange, there still remain orange results
- LDAP authentication checking for bugzilla patch author -> hg commit permissions and being able to ensure that only people with the right credentials can trigger automatic landings. This may mean checking the reviewer too before allowing a patch to be applied & pushed.
The first Bay Area PyStar event has come and gone. I'm finally getting a moment to regroup and ponder all the trial and error of being the organizer of this event as well as having time to look at some of the statistics we gathered. Just from an organizing perspective here are a few items I'd like to share about the process.
Things to do differently next time:
* When creating the Eventbrite event, add questions like "What level do you want to learn at?" "Meat or Vegetarian?" "Operating System?" to the registration so there's no need to send out blanket emails to attendees to try and get that information after the sign up.
* Only do one day workshop instead of Friday night installation and Saturday workshop. I think that for many people the setup could have been done in the first hour and the rest of the day been spent learning instead of having a night session that only is needed by a handful of people.
* Have the teachers/assistants already assigned to a particular level of instruction - prepare topics, tutorial materials, and class size ahead of time so that on the day of the workshop there might only be a handful of late arrivals to place and the other attendees will already be set up in the right learning level as requested in the sign up.
Things that really worked this time:
* Eventbrite! They have amazing tools, stats, emailing options, charts, and also a way to see where your sign ups come from which showed us that we got a TON of views from Tweets which apparently was an impressive number (I am told by one of our attendees who is an Eventbrite employee)
* Mozilla! By sponsoring the event - providing the space and food - being able to let people/groups spread out and work in our various conference rooms as well as having lunch on site was very much appreciated by attendees (and of course by me!)
* CodeChix! This peninsula-based group of women coders accounted for 30% of our attendance and also netted some teacher/assistants for the workshop. CodeChix co-sponsored the event and helped get word out as well
Attendance
There was something odd happening with the Eventbrite signups. In a couple of short bursts, a ton of tickets were being snatched up by names that seemed slightly suspicious. Now the event has passed and I've checked in all the attendees as well as accounted for the no-shows (almost all of whom took a moment to send in their regrets so the tickets could be freed up for another person - very sweet!). It looks to me like about 40% of our attendees were fake accounts. Julie (who works at Eventbrite) and I took a look at the numbers and she's kindly offered to look into it further to see if there is indeed something fishy happening. All that aside, we had 47 people! That feels like great attendance to a first workshop, on a Saturday, in Mountain View.
This graph is useful for seeing how my own promotion attempts were successful. The original spike of page views is obviously when I first announce the event link. CodeChix, Baypiggies, and Devchix were the mailing lists I sent emails to with the link. While that got the ball rolling, it was the tweets and emails sent out almost 3 weeks later - a week before the event where the event got lots of attention. It probably helped that PyStar Minneapolis was happening then too so #PyStar got lots of tweets (sorry to the person who's twitter nick is @pystar).
Can I just say that I am so thrilled with the amount of people who volunteered to teach/assist? Seriously. Amazing. I love that there are people out there who really enjoy getting newbies involved, who can share their skills, and who will give their time to events that grow community.
Finally, here's a breakdown of where we got ticket "sales" from via Eventbrite. This is another reason they rock - they help you promote your event! As you can see here the Twitter share link definitely got us the most eyes even though direct invitation resulted in more actual signups. For next time I would send the link to a few more mailing lists like SF Python Meetup, Systers, and also next time we'll be able to invite the folks who came to the first one as well as those who couldn't make it.
In follow-up posts I will post and analyze some of the survey results of both the PyStar Bay Area and the PyStar Minneapolis. I need to go learn how to create charts from Google doc spreadsheets. Also we need to figure out how to set up our site and materials to be easily updated and adjusted by a distributed team without having to break off into separate sites. Finally, the curriculum needs an overhaul. We kept an etherpad during the event to track issues so that I can go through post-workshop and take advantage of all the feedback to improve our offerings.
What's Next?
The next PyStar I plan to organize will be in late July or early August and I'd like to do that one in SF. Following that I'm going to plan one in Toronto for mid-to-late October. What we did this past Saturday is only the beginning. I'll be working with all the folks in the pystar group to get this program shaped up into a much more modular system for learning Python and Django in stages (badges) and also will be setting up sub-groups for things like hack nights, code-masters (think toastmasters but writing code in front of people), and I have this idea of taking the PyStar lessons into women's prisons as a way to get marketable skills into the hands of people who need them badly.
Anyway, first we'll get more material prepared and digest/incorporate all the excellent feedback. Then we can take over the world :)
I hope I'll see you at future events. Thanks to everyone who helped make this a great day!
Alternate title ideas: "It's not all s/Tryserver/Try" or "What I should have done, and didn't"
I bet you get the point by now. Today I caused a fairly lengthy, unnecessary downtime on Try. Now that I'm writing this, things are under control again and there's a few small niggly bits left but nothing that will keep me up at night.
It all started with a bug about graphserver posts from tests not getting through because they were looking for MozillaTry (the tinderbox name for Try) but instead the graphserver only knew about Tryserver (the branch name for Try) and nothing was using Try (except the repo for Try) which is what it ought to have been doing in the first place.
Now that I've been adding a lot of project branches in a short amount of time, certain things have become more streamlined and so I felt that the best option was to go through and rename Tryserver/MozillaTry to Try everywhere so that from the repo going forward, everything was the same. This has been working extremely well for our project branches and helps make setup a snap.
Here's where it gets all broken. I approached this bug with a quick swipe at this problem was superficial and ended up causing some preventable burning. I shall now list for you (and future me) what I did and what I should have done:
Did:
- hg rename on configs for desktop
- branch configs for s/tryserver/try
- updated graphserver branch name to Try
- a quick downtime window from 10am - 12pm in order to prevent builds from getting split into two different upload dirs
- hg rename on configs for mobile
- grep of buildbotcustom for "tryserver" as we have special casing for it in several files
- log uploader and post_upload scripts to make sure everything about the try build was going to the right place
- updated the dir permissions on ftp for the new upload location and ensure that the archive is on nfs mount
- edited cronjobs on staging to catch the new try builds
- updated graphserver machines table for each try platform's builder name
- more notice for downtime, with a 4 hour window that would have allowed a test push to make sure everything was wired up correctly
- updated the treeclosure hook to include the new tinderbox page
Aki told me that he had a manager who said "you don't learn til you break something". Well I broke everything try-related today and here's hoping that I have learned something because the stress of this whole day is not something I want to experience often. It's that feeling you get when you realize you've started something that you can't back out of and there's no way to go but forward, even though everything in front of you now appears hopeless and messy.
So here's some lessons to take away:
- Staging is not to be underestimated even for just renaming things that are already working
- Taking the time to search with grep/mxr and find the terms you are replacing before starting the upgrade in production will help find wiring you might have overlooked in your preparations
- Prepare more thoroughly and have a clear idea of the env. you started in and what it will take to have that env. back when you're done. Leaving dangly bits is not ideal.
Happy Friday.
(and many thanks to Aki)
Dear BBC,
Today on the front page of your technology section you said that downloads for Firefox 4 have been lower than they were for Firefox 3 and that:
The lower figure may be explained by the widespread availability of pre-release versions of Firefox 4 in the months ahead of its launch.
First of all, you forgot that we've had 3.5 and 3.6 between those two and so we now have users spread out a bit across versions. Second, here's an overview of how we're organizing the release of Firefox 4:
- We put out the RC and picked up users from outside of our usual beta testing pool in order to give our final candidate some solid tire kicking
- Firefox 4 went live but our users on 3.5 and 3.6 are not offered the update automatically yet, they must "Check for updates" in order to be asked if they want to upgrade to Firefox 4
- Once we have more coverage of the new release for a couple of weeks and are even more confident that we've got an amazing browser out there we will turn on the Major Update notification which will offer our 400+ million users the chance to come on up and experience the next level of the web
| 2011 | Internet Explorer | Firefox | Chrome | Safari | Opera |
|---|---|---|---|---|---|
| February | 26.5 % | 42.4% | 24.1% | 4.1% | 2.5% |
| January | 26.6 % | 42.8% | 23.8% | 4.0% | 2.5% |
| 2011 | Total | FF 4.0 | FF 3.6 | FF 3.5 | FF 3.0 | Other |
|---|---|---|---|---|---|---|
| February | 42.4 % | 1.9 % | 35.8 % | 2.9 % | 1.5 % | 0.3 % |
| January | 42.8 % | 1.5 % | 36.1 % | 3.1 % | 1.7 % | 0.4 % |
What this says to me is that our more than 8 million downloads since yesterday morning PDT only shows us how many people are paying attention to the fact that Firefox 4 has launched and is available for download. It's not representative of our 400+ million active daily user base (the people who just use the browser but perhaps don't read your blog or mine). These people will soon learn about Firefox 4 through their browser's update notification window. We'll be seeing a spike in downloads in a couple of weeks and I hope you'll report on that.
Last night was the first meeting of The Factory and Mozilla. The partnership if a result of work between Mozilla Drumbeat and Web Made Movies. Ben Moskowitz and Brett Gaylor invited myself and Atul Varma to what is to be the first of three sessions helping teens learn about the budding open web technologies that can be integrated with video.
About 13 kids streamed into a computer lab at 4:30pm and we began with some introductions detailing who we were and why this stuff is interesting. The group were very engaged and eager to dive right in with whatever we had for them. So we started with Atul's Web X-Ray Goggles so the students could see what exactly the web was made of. The idea was to just grab parts of whatever websites you liked and change them right on the page so you could see how easy it is to "hack" the web. Some of the teens went even further and started building their own pages with Etherpad by grabbing snippets of code from sites. About 4 kids said they had done a View Source on a page prior to this class and 30 minutes into this workshop they were all doing it like pros.
Once they had a chance to remix a web page we moved on to the next exercise which was to select 4 popular sites of their choosing (Etherpad democracy!) and those sites were printed out on paper, the teens were split into 3 teams, and each team did paper prototyping of a new site using elements from the originals. I was very impressed with how the students took the idea and ran with it. Each team worked fast (they had 7 minutes) and no one was hanging back keeping their opinions to themselves. The teams produced 3 new site mock-ups that each had a very simple look, with a video as the prominent element on the page but they also took time to add site navigation and social media integration by putting Facebook and Twitter in the sidebar or footer.
In the last 30 minutes of our time Brett and Ben demonstrated Butter also explaining how very "caveman" the technology is right now. With only a glance at the interface and a basic explanation of how it's wired up the teens jumped right in with suggestions and ideas about what they would like to be able to do:
* Hide popcorn elements when nothing is showing in them
* Be able to zoom in or out on Google maps while the video is playing
* Click on something in the video (example: coffee mug) and have it trigger an event
Ben made a really great point about how it's also important to look at something like Butter and think "How can you go beyond the interface?". How do you make your story more interesting from the beginning knowing you can use this tool throughout instead of just tacking on events and additional information to a completed video that is done in a standard format?
We'll be working with them again tonight, with chunks of a film they made last summer called "The List". More updates and more potential bugs and feature requests coming soon.
Also, if anyone is planning to teach a class like this you might want a few things in a "kit":
* Portable printer (and paper)
* Scissors
* Tape or glue
* Handout with links to the tools/sites
Just to save some time :)
I'm hoping if you're reading this that you might be interested in volunteering this coming Saturday to help 12-16 year old girls at the upcoming Dare 2B Digital conference learn about HTML5 and open video. There's more information and background on what's happening on this wiki page.
Two kinds of volunteers needed:
1. Someone who is in the Bay Area and available this coming Saturday from 9-3:30pm to be on-site with us in Mountain View at the Computer History Museum and will work hands-on with the girls to demo Miro Converter, Universal Subtitles, and a little bit of Popcorn.js.
2. Anyone, anywhere, who can do translations to any language and who is available on Saturday anywhere in the 10:15am-3pm PST window to do some 'live' subtitling and show the workshop participants how amazing the universal subtitles project is.
Please get in touch if you are interested/available. Or sign up on the wiki.
Thanks in advance! I will be posting any demos, workshop materials, and an update post-event on how it went.
Lately I've been working on a a script which can check your try syntax for a bug number and a setting asking for --post-to-bugzilla. If you've provided both, your try server results can be posted directly to the bug. This is just part of a larger project to have patches submitted on a bug get automatically tried out, results posted, and at some point down the road they could even be pushed to trunk after a successful try run so "look Ma! No hands".
Today I have a script running in staging, polling for completed try runs and doing dry runs of posting to bugzilla in log format only so I can keep an eye out for unusual output. Already this has shown me a couple of bugs to sort out, and I anticipate having them ironed out very soon. However, before this lands I would like to get some feedback/ideas/suggestions on what the output to the bug should look like and there could be a couple of options even, with a setting in your try syntax.
In my early testing I posted to our landfill bugzilla and here's what a couple of results looked like:
| Lots of success looked like too much info |
| So I took it out, and only printed the warnings and failures |
| Which works on small runs |
From what you see here, I'm sure you can imagine what it would look like if 145 builds all had warnings/failure combos.
So - what do you want to know in the bug? Let's keep it simple, ok? We can add more later and it's important not to create a bug-spammer here that folks will clamor to turn off soon after it goes live.
Off the top of my head, and after talking with Catlee today about it, I think it should look like this:
Try run for $revision with the following comment:This gets you a quick glance at total builds/total requests so you can see that everything is accounted for, and where things might have gone wrong in builds vs. tests but doesn't list the failed/warning builder names so you have to follow the link to get them. Maybe there would be interest in printing what your try syntax request triggered but I'm not sure that's useful in the bug reporting even though it's requested for when a developer is pushing to try. What do you think?
$try_syntax line
S:# W:# F:# (results total) builds complete from N total requests
S:# W:# F:# (results total) tests complete from N total requests
For more information please see http://tbpl.mozilla.org/?tree=MozillaTry&rev=$revision
It would be possible to break down the results further by platform instead of or as well as build/test. Any ideas on how to get that much information across without making a bug comment too verbose? All input appreciated and considered, I'll be trying to land this in the next couple of weeks so comment here, ping me in IRC (lsblakk), or comment in the bug.
The other day this post by Google with slides detailing their Chrome release cycle speed up was going around and it mentioned how try and CI were key to their success. It got me thinking that it's time for another update about the upcoming improvements our try server automation. Most of my Q1 work will be on the try server, with some time on Fennec Beta releases, and a bit of time also working on making it much easier to spin up disposable project branches.
The road map image above shows how there are three areas of focus and here they are now in a more detailed list with bug number attached:
Improving Current Automation
- Bug 617321 tracks adding two new try buildbot master instances to our other buildbot-masters in the Santa Clara colo. This gives us flexibility to have rolling downtimes on try (as we already have on the other masters) where we can update things behind the scenes and it also helps by adding redundancy to the try automation in case of a colo outage.
- Bug 580346 is almost done and it adds xserves to try which gives us some faster macosx building power, that along with about 40 ix builders for win/linux builds will crank out more try builds faster.
- Bug 594236 is key to getting TryChooser syntax turned on as a default. With an interactive hg prompt on push to try, you should be able to select what you want and/or have your syntax validated. Khuey started something to do this and if anyone is up for taking it to the next level before I can get around to it, please please do.
- Bug 430942 is what I am actively working on today and the rest of this week, I'm about to have a second draft ready for review and I expect you can watch for this to land in the next few weeks. With or without try syntax, you will be able to specify the bug number in your push comment and have the results of your try run posted as a comment on that bug. Hopefully this will help out development in letting people know where something is at if you are away when the results come in. It's also part of our old bug (pre-2010) smack down goal so finishing it will be one more step toward that carried-over goal being met.
- Bug 615705 is tracking a few more tweaks to the try syntax that will give users more flexibility in the syntax and choice about what to build.
- Bug 421895 is another old bug and Chris Atlee is close to getting it up for poking at. It provides a way for users to cancel their own try build requests without having to ping RelEng.
- Bug 621681 addresses having better threading/headers since the current headers only help with threading for some clients. When I first wrote it I was testing with Thunderbird, where it works as intended but apparently Gmail and other clients need some help.
Looking to the future right now we have bug 625464 which talks about setting up something to scan bugzilla for a flag on attachments that will trigger an automatic try run with that attachment and either tip of trunk or perhaps a user repo, which would require the other main future bug, 625463. With the ability to poll and run try on hg.m.o user repos we can have project branches (temporary branches that are loaned out to devs or teams to work on a particular project) toggle a setting that would have their pushes to the repo get run through try instead of the main mozilla-central automation. This could be handy when you want to limit the machines you are building/testing on with the TryChooser syntax.
I hope anyone reading this will find the upcoming try work as exciting as I do. Reading the Google slides, I couldn't help but sit up straighter at the mention of try being one of the reasons they were able to speed up their release cycle. I'm hoping we can get there too and that our try server will be more robust and ready to handle our soon-to-be-speedier release process too.
Right now there are over 350 backed up test/talos requests for the tryserver and when I checked our report for trychooser usage it shows that the average number of users pushing with a try syntax has fallen below 50% where it used to be closer to 60%.
I encourage you to please use the trychooser syntax as much as possible. If you do not need every single try result for your patch, do not just push to try and use up all the resources needlessly. Take a moment to insert some try syntax into your commit message.
See https://wiki.mozilla.org/Build:TryChooser for details and http://people.mozilla.org/~lsblakk/trychooser/ for a simple try syntax builder.
Thanks in advance.
Recent tracks
-
Navy Light by {'mbid': '7f81aa90-dd1e-401c-af73-690affb997d6', '#text': 'Labyrinth Ear'}2 days ago
-
avec mes mecs by {'mbid': 'bdc68618-abb0-4ced-9ab5-2d223eb5ad30', '#text': 'Humans'}2 days ago
-
Kelly by {'mbid': '9a8cbe97-30d3-4e84-83f1-c06004b96315', '#text': 'When Saints Go Machine'}2 days ago
-
The Killing Type by {'mbid': '', '#text': 'Amanda Palmer & The Grand Theft Orchestra'}2 days ago
-
Don't Wake the Dead by {'mbid': '98f8e048-f14f-4ef9-a958-5a79f2f6b542', '#text': 'Guards'}2 days ago
-
Something Good by {'mbid': 'fc7bbf00-fbaa-4736-986b-b3ac0266ca9b', '#text': 'Alt-J'}2 days ago
-
A Tattered Line of String by {'mbid': '299278d3-25dd-4f30-bae4-5b571c28034d', '#text': 'The Postal Service'}2 days ago
-
Romance by {'mbid': '4473e47b-81bb-47af-8cb0-1cad6f68d8bc', '#text': 'Wild Flag'}2 days ago
-
Twice by {'mbid': 'c8a9ae11-63bf-409b-8bf3-a96b3712a2ff', '#text': 'Little Dragon'}2 days ago
-
Life's a Beach by {'mbid': '4bfce038-b1a0-4bc4-abe1-b679ab900f03', '#text': 'Django Django'}2 days ago
Top artists
Top tracks
-
57 plays
-
56 plays
-
55 plays
-
55 plays
-
Sonata In a Major, K 331 Andante Grazioso Theme and Variations I, III, IV, V, VI Mozart by Joshua Leeds & Lisa Spector55 plays
-
54 plays
-
54 plays
-
54 plays
-
53 plays
-
Midnight City by M8347 plays
-
47 plays
-
46 plays
-
45 plays
-
45 plays
-
43 plays
-
43 plays
-
42 plays
-
42 plays
-
41 plays
-
41 plays
-
41 plays
-
Ghostwriter by RJD240 plays
-
40 plays
-
40 plays
-
40 plays
-
39 plays
-
39 plays
-
39 plays
-
39 plays
-
39 plays
-
Into Black by Blouse39 plays
-
39 plays
-
38 plays
-
38 plays
-
37 plays
-
37 plays
-
36 plays
-
36 plays
-
In the Dark by Dev36 plays
-
35 plays
-
34 plays
-
34 plays
-
33 plays
-
Go Outside by Cults32 plays
-
30 plays
-
29 plays
-
29 plays
-
29 plays
-
29 plays
-
29 plays
Profile
Summary
I graduated from Toronto's Seneca College with a degree in Software Development in 2009. I love the opportunity to share and teach anything I have learned about systems, automation, programming, media, web development and anything to do with the open web to anyone who want to learn.
On my own time I also create and manage websites for artists & non-profits when time permits, mostly using Wordpress with custom themes but I also worked with Drupal on a couple of pre-existing sites where I would help improve the site's functionality. I like to participate in hack nights to learn new skills and work with other languages as well as meet other developers. At the moment I am very interested in working with Python, Javascript, HTML5 and CSS3, and learning to create and deploy web apps. I'm also trying to teach myself how to admin my own Linode and also how to work with micro-controllers. If it's not obvious yet, I'm very much a tech generalist and am enthusiastic about a lot of areas.
What motivates me is helping solve problems and removing barriers. My goal is to write software, curriculum, and to design systems that make it as easy as possible for people to use and engage the technology around them with a sense of joy rather than fear, confusion, frustration, or dread.
Experience
- Feb 2012 - PresentRelease Manager / MozillaKeeping track of bugs related to regressions, features, stability issues - everything that needs to get into builds before a release - across all our channels (Aurora, Beta, Release, ESR). It involves a lot of coordination over many teams as well as a ton of bug triage and always working towards timely convergence in a rapid release (every 6 weeks) software development cycle. I'm working on automating as much of it as possible and helping our team gather and visualize data about our processes and their impact on what we let out the door.
- Nov 2011 - PresentAdvisory Board Member / The Ada InitiativeA non-profit organization dedicated to increasing participation of women in open technology and culture. adainitiative.org
- May 2009 - PresentRelease Engineer / MozillaThe Mozilla project is a global community of people who have been working together since 1998 to create world-class open source software. Build and Release Automation Engineer * Maintenance of the build automation system, specifically Buildbot. * Working on the reference images for virtual machines. * Improving the unit test infrastructure. * Bug fixing and bug filing on the Mozilla code base. * Creating and improving project branches for feature work * Tryserver enhancements to help developers get results as quickly and accurately as possible * Releasing stable, beta, mobile versions of the software products developed * Project manager of a project aimed at improving tools for developers - creating the ability to do autolanding of patches through bugzilla
- 2004 - PresentFreelance Web Design/Manager/Editor/Programmer / Avnerd.tv - Web solutions for artistsWorked with artists and small businesses to find the simplest, easy-to-maintain on your own solution for a web presence. Primarily using Wordpress but also occasionally working with Drupal or static HTML/CSS files for very simple sites. I also provided hosting on my server and general computer help for new users.
- Feb 2008 - PresentRelease Engineering Contractor / MozillaEditor for addons.mozilla.org. Also I was a Release Engineer Assistant for the summer of 2008 and through the following year on a contract basis.
- 1994 - PresentFestival Work Crew Volunteer / WWTMCCooking in the Worker's Kitchen, preparing and serving food for 50-800 people over the course of the month.
- Jun 2007 - PresentInstructor / Canadian Helen Keller CentreCanadian Helen Keller Centre provides services for Deaf-Blind persons in the Toronto area. I have been instructing clients in Mac Computing Skills, Photoshop Basics and Web Design.
- Jan 2008 - PresentComputer Studies Tutor / Seneca College Learning Centrefree tutoring to students on campus. Programming Tutor * Assisting students with difficulties in C, C++, database, Unix/Linux and Web programming * Lab Assistant for first and second year database classes.
- Apr 2003 - PresentTechnical Support and Membership Coordinator / Canadian Filmmakers Distribution CentreThe CFMDC distributes primarily experimental works made on film. While working at the CFMDC I brought DVD technology into place that allowed for faster and cheaper distribution of preview material, set up a digital database for both films and still images, managed 3 projects re-issuing works on DVD for educational purposes. In addition I maintained and updated the php-based website, did very basic system administration for the office computers and assisted in equipment purchasing.
Education
-
2005 - 2009Seneca College of Applied Arts and TechnologyBSD in Software DevelopmentActivities: Club Moz, Learning Centre Tutor
-
1995 - 1997Concordia UniversityWomen's StudiesActivities: Women's Centre volunteer - creating quarterly newsletter
