My job, told with Up-Goer Five text editor

Today I had fun reading xkcd’s Up Goer Five cartoon and then playing with the Up Goer Five text editor.

peoplebox.png

I tried describing my new job:

Many people at my job work together to make free things that go on computers to make it so everyone can see the words and pictures on other computers in the world. Everyone can see the words that make these free things. The biggest thing we make is named after an an animal and fire. Fire Animal Computer thing can go on a a computer, or a phone. It can even start a phone and make it go. That is new!

There are other computer things too, like Rain Noise Flying Animal and Water Tree Animal. They have new parts all the time. When the Fire Animal Computer Thing or the other computer things have a problem, people tell us about the problem. That problem goes in a very big computer box place together with all the other problems. That very big computer box place is named Big Pretend Long Ago Problem Animal.

My new job is to watch all the almost hundred hundred hundred problems in Big Pretend Long Ago Problem Animal. I will remind everyone in the world to work together on a big big team to fix the problems. I have to know many things to help them do it. On this team we will all tell the people to talk to each other. I look at the words and put other words on the computer to tell about the problems. I work with many other people that help put more words on the problems to help fix them.

Some day I will know many more things and many more people who fix the problems, especially with Fire Animal Computer Thing. I will help make ways to make the work easier. There will be more computer things that work almost by themselves to do the work. Then, all the Big Pretend Problem Animal work people like me will tell the computer thing making people some more things to help them fix the problems. We do it in a way that everyone can see!

We will work together so all the people in the world can talk with each other and see pictures with no problems, free, on a computer and on a phone. They can make many more things. We think everyone can help the world this way. Some day, everyone can know all the things. That will be very good.

A few words on Aaron's death, and sadness

I am very sad about Aaron Swartz’s death. We spent last weekend just devastated and in shock, then went to his funeral in Chicago. The shared sadness united us all. I feel for his family and his partner Taren. Aaron’s father spoke at his funeral, and his defense lawyer, one of his brothers, and many friends and colleagues. Larry Lessig’s words about feeling protective especially brought me to tears. I wish I could remember everything he said as it resonated with many things I felt but didn’t have coherently expressed even to myself.

I did not know Aaron well on the level of having the intense intellectual conversations that many people had with him, though I enjoyed reading his blog and supported his projects. I mostly knew him as my partner Danny’s daughter Ada’s kind and loving friend, as he was close to her mom for years and they lived with him or stayed with him often. She talked about him often and their games and how he would take her swimming. He was the grownup who would play with her the most instead of doing grownup things like making you do your homework. I would see Aaron at family events like Ada’s nursery school graduation, holidays and birthdays, or, ubiquitously on Skype while Ada talked with her mom and Aaron would pop up clowning around to make her laugh with all their running jokes. They made movies together and had a great relationship. Of course, I love anyone who loves Ada so dearly, appreciates and cares for her. As Aaron did.

And I felt towards him how I feel as a 43 year old intellectual feels toward brilliant creative people in their 20s or younger. Fond and and a little protective from a distance, admiring of their daring, their bright energetic path, and looking forward so much to what they will do and will become. Respectful of their maturity while waiting to see how it deepens. I don’t mean to make too much of generational differences, but as I hit middle age I am aware of those differences in a complex way.

I did not plan to do anything at his grave but then was gripped with the feeling that if I participated in putting earth on the grave I would be acknowledging everything and that it would be right. His death wasn’t right. Despite being there I can’t grasp that it really happened and he is not going to be around.

So many vivid moments from the funeral and afterwards. I will never forget Seth at lunch as we ate grilled cheese sandwiches, kindly turning to me in his deliberate and quiet way saying, as if remembering each word from a foreign language or trying to eliminate all the letter E from a sentence, “I always try to remember, when I cry a lot, it’s important to drink water.” I obediently drank my glass of water. A funny little detail. I would wish for no one to cry so much as we did. But when we do, it’s good that we take care of ourselves and others. Thank you Seth.

We are all reeling from Aaron’s loss. There will be a memorial for him at the Internet Archive next week and I believe also a hackathon in his memory at some point. While I feel the sadness many people do, supporting Danny’s daughter is one of my top priorities right now just keeping things going in a normal way and food on the table, appreciating her funny dances and fantastic stories, writing in runes, just listening to her, bringing over her friends to play. It is beautiful, and heartening, to have children livening things up like an overflowing fountain, and we all watch them and press each others’ hands in desperate appreciation of their beauty. Life goes on, and we are happy. In the middle of the happiness we are crying a lot and will be for quite some time.

Aaron’s loss is a loss to the entire world. I feel the surge of determination and fierceness surge through my friends who are geeks and activists. This helps me deal with the sadness on an abstract level, but not on the personal level. Of course Danny and I have read pretty much everything everyone wrote about Aaron and his work and his death over the last week. I don’t feel like I have to say something clever or do a giant link round up of it. I think we are all trying to transmute grief into hope, belief, and action. Where that will lead, I don’t know.

Bugzilla quicksearch, or else!

Here is a fabulous tip if you are messing around in bugzilla.mozilla.org and are searching for bugs. As, by now, as a reader of my blog, you should be.

You can search Bugzilla right from the location bar. I cannot quite bring myself to say “Awesome bar” as people do at Mozilla because I’ve said “location bar” for many years, and it feels silly.

First you will need to be logged in to a Bugzilla account!

Right(command)-click in the Search box. Choose “Add a keyword for this Search”.

Pick something short that you will remember, like “b” or “bug”. I added both since they both seem intuitive enough to me that I’ll probably forget choosing one or the other.

Command-L is the keystroke on a Mac to move to the location bar.

So, type Command-L, type bug 831552 and you will be whooshed directly to that bug.

Command-L, bug retina will result in a fairly quick list of around 18 bugs (as of right now.)

Here are a bunch of quicksearch tips for bugzilla.mozilla.org!

Take a look at the tips and see what quicksearch looks at by default. There is lots of useful info there and it is worth going through and trying some of the options and noting which field names might be specially useful.

The Advanced Shortcuts are the best thing about quicksearch for me so far. For example, Command-L, bug UNCO retina returns all the unconfirmed bugs with the keyword “retina”. (About 4, currently). Though keywords aren’t case-sensitive, the Advanced shortcut “Status” search terms are. So you have to type bug UNCO retina, not bug unco retina.

At the moment, quicksearch look in comments and various other bug metadata. After January 24th that will change — comments will be excluded by default from quicksearch. That should make it actually quicksearch instead of kinda_slow_search. Or at least quickersearch. Until then, you can type bug --comments retina and your search about retina-related bugs will be a bit faster.

Here is the “or else” part from the title of this post: If you have been calling yourself “The Bugmaster for Mozilla” for several weeks, and you slowly mouse over to a search box to type something, and you do this in front of some kick ass developer, instead of using quicksearch in the location bar, you will be embarrassed. So take it from me and don’t do that.

cats in hats

Thrills, chills, filters, and bugmail

Any bugmail at all is probably way too much bugmail. That means you will need to set up some structures to filter it!

This explanation may be useful for anyone interested in contributing to Mozilla — especially bugmasters, triagers, and developers. Even if you don’t use the same email setup, there’s some good tips.

Byron (aka glob) explained how I could set up my Bugzilla email, or bugmail. Within Bugzilla, in the Email preferences tab, there are a complicated set of checkboxes to control what conditions in Bugzilla trigger your bugmail. Right now, my email notifications are set to fire off email to me whenever anything happens to a bug I may be interested in.

Bugzilla email prefs

I then set up some users to watch, at the bottom of the Email preferences screen. Whenever Matti, Tyler, or Benjamin do anything with a bug, Bugzilla emails me about it. I can also see that Josh is watching my Bugzilla activity. People often refer to this as “stalking” in Bugzilla, without any creepy connotation intended. It is basically TMI about someone else’s bugs (or what bugs they poke at.)

Bugzilla user watching

“If you watch a user, it is as if you are standing in their shoes for the purposes of getting email. Email is sent or not according to your preferences for their relationship to the bug (e.g. Assignee).” The meaning of that takes a while to work out, much like Bilbo Baggins’ famous statement at his eleventy-first birthday party… “I don’t know half of you half as well as I should like; and I like less than half of you half as well as you deserve.”

I have picked two components to watch. Bugs in BMO (bugzilla.mozilla.org) are organized first by Product, such as Firefox, Firefox for Android, Thunderbird, and so on; then by Component, which seems to be a division by who is working on a particular area or project. You can’t pick a Component, or even see it, till you figure out what Product your bug belongs to. Here is a helpful guide from the Mozilla Developer Network with a list of Mozilla Products and their Components, handily all on one page, so it is easily searchable. I have also been using the list of Modules and their owners from the Mozilla.org wiki.

Bugzilla component watching

We don’t even have any bugmail yet, and see how much we have learned about the structure of a giant complicated FLOSS ecosystem! Hurray!!!! *waves pom poms*

Cheerleader cat

At this point, I made some folders in Zimbra inside a general Bugmail folder. While I’m still not sure how I’ll settle on bugmail organization, right now I have separate folders for my watched components and people. Then, in Zimbra preferences,there is a sidebar option for “Filters”.

Bugzilla filters

Create a new filter, then for users you’re watching, filter on header, and set the header name to X-Bugzilla-Watch-Reason. (For other filters, check the full headers and see what X-Bugzilla header info will work best.)

Bugzilla x headers

Since the X-Bugzilla-Watch-Reason filter contains the person’s email, if they change their own bugzilla email address, my filter will break.

Bugzilla user watching

Onward to Thunderbird, which I have set up with IMAP to check my Zimbra account.

Right-click (or command-click for a mac) on your account name in the Thunderbird sidebar, and choose “Subscribe”. This shows you the folders on your IMAP-connected account. Expand the folders and check the tickybox next to the new folders you just created in Zimbra (or whatever else you use). This will create a copy of that folder in Thunderbird.

Bugzilla thunderbird subscribe

One more step. In the Thunderbird sidebar, right-click one of the new folders that was just copied over from your IMAP account. Choose “Properties”. Then check the tickybox labelled “When getting new messages for this account, always check this folder.”

Now your bugmail will nicely filter itself — in both email clients.

That was non-obvious enough that I really wanted to document all the steps. Maybe some other new hire at Mozilla will be helped!

If anyone has bugmail tips for me, I would appreciate that!

Bonus points to anyone reading this who notices my PretendOffice filter and has a good laugh.

Twiddling my email, calendar, irc, and phone notification settings

Calendar and email notifications may sound very boring but they has engrossed me for at least an hour.

For the first time in life I have a work laptop and a personal laptop. For the last 10+ years I’ve come into a job with an existing laptop which I use seamlessly for work and personal stuff. So far, I like having less “personal” things on my work laptop. It is especially nice not to have the distraction of personal email and non-work related mailing lists. It also feels amazingly luxurious to set aside the work laptop at the end of the day.

I have Zimbra for work email, but prefer to read my email in Thunderbird on my work laptop. Zimbra calendar has my work meetings and Google Calendar has the general schedule for my life. This morning I realized Zimbra was nagging me about missing a meeting. I need to know beforehand in some way that isn’t inside a browser tab!

Instead, I’d like my phone to make a special alert noise for meetings 10 minutes beforehand so I know to open up Skype or Vidyo (what Mozilla generally uses for meetings).

BEEP cover

The last bit of information in this scenario: I didn’t want to install some special Zimbra app on my phone.

Here’s what I did:

1. Set up Zimbra to SMS me at (my 10-digit phone number@tmomail.net) before meetings.

In Zimbra, go to Settings, calendar, set up phone number for notifications.
In each meeting there is a checkbox for email notification. This works for recurring meetings as well.

2. Set up my phone so that gmail notifications only make a noise for priority inbox mail. (I realized that my phone makes a noise every time it syncs email. I normally ignore that noise. )

Open Gmail on the phone, Menu>More>Settings>click the email account>Labels to Notify>Inbox ***>Ringtones (set to silent)

*** Tweak the settings for the Priority Inbox too.

4. Go to gmail.com and set up whatever should go into “priority inbox” i.e. filtered to “important”

google calendar already has its own notifications on android phone if you have its app installed. If not you can set up a forwarding address and make the calendar email to SMS you.

5. make sure incoming SMS messages have a different noise than priority emails
Go to messages, menu, then settings, Select ringtone.

It took a little thought to figure out what to use to get the simple result I wanted. And while most of it happens in web services and phone settings, some of it was in my training myself in a different behavior (paying attention to a particular noise on my phone.)

A final note: Long ago I set up voicemail from my phone to Google Voice. I hate listening to voicemail. It takes a long time. Text is so much nicer, and it helps that I read very quickly. All voicemail interfaces suck. The last time I used one, it had a default menu message that took about 15 years to go through that played after every single voicemail. This resulted in my *never* listening to my messages. (Fortunately I have not had a work phone for years; just email.)

People sometimes leave long messages, but the gist of them is just “call me back”. Google Voice is lovely for this as it sends me an email transcript of the voicemail. The transcripts are often hilarious garbled but it’s enough to get the idea of who’s calling, what their number is, and what they want. If I want to hear them, I can press “play”. Their messages are also nicely archived for me in Gmail. Hurrah!

Furminate her!

Had tea with yarnivore and friends yesterday during a weekend of rain, cold, and sick kids. I told her about the awesome, awesome book Home Life in Colonial Days and she talked about spinning. I can’t knit, as it hurts my hands too much, but am something of a knitting/textile/ravelry fangirl.

I suddenly remembered that I’d gotten the book Crafting with Cat Hair for Christmas and so demonstrated cat-combing using this tool called The Furminator, which sounds like something stupid I would invent but which works incredibly well, producing a huge amount of fluffy, sheddy, cat undercoat. It is best to furminate your cat while saying FURMINATE HER like Darth Vader, or FUR-MIN-ATE like a Dalek. Yarnivore astonished us by spinning several feet of cat hair yarn and then demonstrating how to ply it.

cat hair

Milo and I both tried hand spinning without a spindle. You pull your hands gently apart while spinning the fiber in one direction, which pulls the fibers from the undifferentiated wad of woolly stuff into a triangle called the draft, which leads into the twisted bit that is about to become thread or yarn. Fascinating! We talked about dyeing fiber with local plants like fennel and pokeberry. The thing that fixes the dye is called the mordant; alum sounds like an easy and cheap mordant. I spent some time poking around on Wikipedia to see what it has to say about hand spinning and yarn terminology. I love all the special terminology for textile stuff. Heddle, spindle, roving, batting, loft, worsted, woolen; all very beautiful middle-englishy words.

Yarnivore also told me about FiberShed which is a sort of consortium of Northern California fiber people who are trying to encourage local production of textiles from start to finish. Apparently they are trying to start a maker space and are hoping people in other areas will do the same. I thought again of Kevin Carson’s book The Homebrew Industrial Revolution and may take a look at it in the next few days.

So, I’m hoping to learn to spin with a drop spindle! Wool, though, not cat hair. Though I wonder if cat hair yarn would be as nice and warm as New Zealand possum yarn?

In which I explain Yggdrazilla, the World-Tree, and see some fireboats

Yesterday I headed into the Mozilla San Francisco office with my son Milo in tow. It was sunny and beautiful! We had lunch at the High Dive, a little diner right on the waterfront. He tried out my TV-B-Gone delux and we laughed very hard at the feeling of being super-spies with our spy gadget. Or, he might have just been laughing at me. It’s hard to tell!

On the walk back from the diner I pointed out the old SFFD building and that there was a fireboat on the other side of it. We went round to watch the boat pull out of its berth, apparently giving some non-firemen a tour in the sparkly winter sunshine. On its side it was labeled Guardian, boat #2. There was a sign in front of the building explaining the history of San Francisco fireboats. We both avidly read this sort of thing. The more famous of SF’s fireboats is the Phoenix from 1955, which saved the Marina district after the 1989 Loma Prieta quake. “I guess it’s still useful, even though it’s old-fashioned” he commented. The fireboat is also extremely cute; stubby and with a little striped tower, like a tugboat.

guardian fireboat

At the office I picked up a B2G test drivers phone so I can help test FirefoxOS. Sights of the office for my son were: my cube (unexciting), the shelves of free snack food (from which, abstemiously, he snagged a banana and two starburst candies), and the roof with its view of the Bay Bridge. The night before, I had read him the first few chapters of Flatland. He had picked it up to read on the bus and while I worked, since it’s lighter to carry than the Draconomicon. He kept interrupting my concentration on email and Bugzilla to read me bits from Flatland.

I figured I would return the favor. “So, would you like to know what I am actually working on?” Yes he would. Whatever I do for my job On The Computer is something of a mystery. Even to me . . .

We read the principles in the Mozilla Manifesto. (“Nice, Mom. That sounds like you. But, no offense, but, well, I’m already reading a book where people explain boring things about politics.”) Okay, moving on. I explained that there is a non-profit Mozilla Foundation as well as Mozilla Corporation, then that there is a greater Mozilla community (Mozillians!), who all work on making various tools better: Firefox in various flavors, which he is familiar with, but also Thunderbird, Bugzilla, and other stuff.

He got that Bugzilla is a product anyone can download, install, and use to track problems, but that Mozilla has its own implementation of Bugzilla, which we call BMO (for bugzilla.mozilla.org). Someone puts a bug into BMO; then a lot of people might look at it and do something with or to it.

My job as the newly-fledged Bugmaster is to help manage the huge volume of bugs in BMO. I pointed out that in a search for bugs filed in the last 24 hours the ID numbers for the bugs are up to 82600. So 800,000 bugs have been reported since Mozilla has been around, over 10 years ago.

(ETA: You need to have a bugzilla.mozilla.org login in order to use the above link. Hmmm.)

I’m taking a look at triaging new bugs, or in this case, adding information to bugs with UNCONFIRMED status and moving them to some new status. Generally, a bug that is UNCONFIRMED has not been triaged. My big question right now is, though there is no natural “end” to triaging a bug, how can we demarcate untriaged and partly triaged, bugs from ones that are… let’s say… good enough for now for a developer to look at? I could encourage people who do something with a bug to move it out of UNCONFIRMED. I could invent a system of whiteboard tags or flags to mark up bugs for the bugmastering throngs who live in #bugmasters.

Anyway, I didn’t go into that for Milo. I gave a very quick, hand-wavy explanation of how FOSS projects tend to have a “trunk” which is basically the code that’s been tested and released, trying to give an impression for him that a lot of people touch that code as it gets committed to branches, tested, and merged in to the trunk, watched over by Sheriffs. I showed him the tinderbox push log page which displays commits and a battery of automated tests that they pass or fail. Milo (who is not into programming at all) commented that there is Mozilla, and Bugzilla, and everythingzilla, so there should be Yggdrazilla, like the world-tree from Norse myth, to describe this cool giant tree of code.

I love the name Yggdrazilla! Though I’m not sure what exactly it would describe!

This morning as I fired up to work from home, Milo came in to show me an amazing coincidence! One of his giant phone book sized DC comics compilations from Christmas has a comic book about Center City and its new fireboat, the Phoenix!

phoenix-fireboat.jpg

We stopped on the way home at a TMobile store to get a SIM card for the B2G test phone, and then excitedly fought over it to play Little Alchemy on the bus and after dinner. I’m going to set aside time to poke at FirefoxOS (aka B2G or Boot2Gecko) every day but am not sure I’m going to use it for my primary phone. I informally reported one UI issue with it, and today would like to double check on that and will probably put it into Bugzilla. It immediately wanted to import all my contacts from Facebook, and all the contact info for my Facebook friends. Wow. Scary but interesting. FirefoxOS is going to released soon and will make smart phones a lot cheaper and therefore more accessible for people. As soon as I can buy one for Milo, I will — it will be his first smart phone. It’s really tempting to try to write an app for it.

milo-liz-roof-mozilla.jpg

5 Minutes of Fame tonight!

Tonight at Noisebridge, our lightning talk event, 5 Minutes of Fame! I’ll be speaking at 5MoF about Bad Inventions, going back over at least 20 years of my own horrible inventions, some of which came to fruition and some which have not (YET).

As if you needed ANY reminder, Five Minutes of Fame is Noisebridge’s ADD
show-and-tell, squashing octets of human awesomeness into an hour like
booleans in a packed byte.

This week’s seasonal supercompression will include, among others, barring ill fortune, but by no means limited to the following:

* The Internet’S IO9.COM’S ANNALEE NEWITZ on how to apocalypse-proof your city
* Roving cartographer and open wireless fiend SCHUYLER ERLE on galactic empire
* The Center for Applied Rationality’s JULIA GALEF
* The Amazing Inventions of LIZ HENRY
* The Battle for OMNIPOTENCE. Who will win? WOOL, MUSHROOMS, or HEMP?

Join us as we untar the future! Pkunzip the past! Huffman decode your mind!

Thurs, Dec 20, 8PM, Noisebridge, 2169 Mission St, SF, CA, Earth Prime

You can submit talks through the wiki page for future events or MAYBE even for tonight’s talks.

Five Minutes of Antichrist

First week at Mozilla

My first week (and a half) at Mozilla has been about organizing information. The HR orientation stuff was mostly directions to mozilla.org wiki pages, IRC, and mailing lists, echoing the “Get Involved” path into Mozilla that any volunteer contributor can take. A bunch of the meetings that I joined are public meetings that anyone can attend over IRC, dial-in, video, or Air Mozilla broadcast. Transparency and community inclusion seem to be the default for everything.

bugzilla-bug-logo

I made up stuff for myself to do for the first week, with fairly modest goals. I signed up on the Firefox support forum, which gave me a nifty profile and a list of user questions that need answers. I tried answering a few, and looked at other contributor’s profiles. A hard problem led me to Bugzilla, where I had already created an account. There are hundreds of thousands of bugs listed in bugzilla.mozilla.org and it is now my job to understand what’s going on in there. In the next few weeks I’ll be writing about that! My focus will be not on fixing bugs, but on understanding how to triage them — how to figure out whether they are valid or not, how to mark them up or get and add more information to a valid bug, and how to route the bug to where it needs to go. Rather than zapping, squashing, or stomping the bugs we will tame and herd them!

As part of my path into Bugzilla I picked an active product and component to watch through bugmail. Bugs in bugzilla.mozilla.org, or BMO, is categorized by product, such as Firefox, Firefox for Android, or Thunderbird, then, within those products, categorized by component. In my preferences on the site, under component-watching, I picked Firefox as the product and Untriaged as the component, and turned on email notifications. Whenever something in that component is added or changed, I get bugmail. So far this is around 100 emails per day. I set up filters to route that bugmail into a folder and am watching what happens to those bugs, occasionally trying to triage them myself.

As I navigate all this I will be breaking down bug triage into various workflows and processes. I’m hoping to expose places where we can write tools to help people sort and triage this stuff. Yes, the glamorous life of a bugmaster! Join our cult! Or, at least, our #bugmasters IRC channel!

The Bugzilla for Humans video is useful as an introduction. And there is a weekly QA triage day that I will be going to.

The Mozillians doing this bug wrangling have a huge amount of expertise. I feel so humbled as I watch the flow of information coming into these systems and see what they’re doing.

jon snow know nothing

As part of coming into an open source project to contribute to it, I have to accept that I know nothing, things are confusing, and it will all come together as I go along. It’s inspiring, and I want to live up to its awesomeness.

Being a contributor to Mozilla is amazing not just for the individual people I’m meeting, but because I’m seeing a huge, organically created, largely self-directed system at work. It has a strange beauty.

Bad inventions: Dead mouse cat treats

I have two more bad inventions to add to the world, both cat-related!

Think how awesome it would be if we had cat treats that had the varied textures of dead mice! Pampered indoor cats could have the fun of chewing on the leathery outer skin made of meat jerky, crunching the fake bones, savoring the squooshy fake guts, and dragging the horrible fake mouse around by its meat jerky tail to leave it on your pillow as a gift. Dead mouse cat treats would be totally amazing and also the worst invention ever.

Except for … 80s sugar cereal cat litter! I thought of this yesterday while cleaning the litter box. We accidentally have an extra-rancid smelling brand of cat litter right now. Imagine a half assed attempt to make cat litter smell pleasant! It could smell just like Lucky Charms, or Frankenberries or whatever, and look like it too… the little blue odor-crystals would be the marshmallow bits.

Lucky Charms Cereal by laffy4k

The cat litter containing boxes could look excitingly like breakfast cereal boxes perhaps even with fun prizes inside for that ultra-hipster retro enjoyment of life… but the prizes would be FOR YOUR CAT.

As an extra bonus, you can combine both these inventions so that your box of Lucky Charms Cat Litter contains a Dead Mouse Treat prize.

Past cat-related inventions include Cat Eggs and the Catula. Other inventions from today: Feminist Bitcoins, the Social Justice Slot Machine, and the charitable causes first person shooter (“Give a hoot, shoot & loot!).

You’re welcome.