Continuous Integration

Release Schedule

May 2020
S M T W T F S
« Nov    
 12
3456789
10111213141516
17181920212223
24252627282930
31  

Branches

Twitter

Simply ship. Every time.

“We got buyers and we got sellers…”

06/21/2007

The The Nomadic Build Engineer ’07 Tour continues in the Big Apple, the always open land of real pizza, subway churro stands, and a Mass Transit System That Is Actually Usable ™.
My NYLUG presentation went… ok, I think.
Everyone I talked to said it went great, but I’m not as sure. When I mentioned that I enjoy questions during the presentation, it seemed like we got lost on a half-hour tangent about Webkit on Windows, why Firefox doesn’t work on a decade’s old install of Slackware, why the “update problem” really is hard, and why we do some of the things we do (that may not always make sense to super technically-minded users). Then I had to sorta rush through the last third of the presentation to catch up.
But all-in-all, I think it was useful and informative.
(In fact, one of the NYLUG leaders randomly just told me: “I have a definitive answer about your presentation. You used the word fuck, which according to our founder, all the best presentations contain the word at least once.” Well… f’ing awesome!)
The drivel presentation is available online, and there’s supposedly a Podcast of it floating around (cheers to whomever recorded it, despite the fact that I’d rather ignore it exists, because hearing the sound of your own voice… … yah).
For those in a rush, my hour-long talk can be summarized with the following slide:



The Firefox release process in six easy steps.

Obviously, this process relies heavily on the Internets’ Tubes.
(Which aren’t big trucks.)
Anyway, I had a lot fun, and I hope NYLUG did too. Thanks for the invite!
***

Today, and for the rest of the weekend, I’ll be taking a couple of days off, chilling in the City.
We stopped by Atlantic City (and got to see a major thunderstorm-induced traffic jam at KEWR!) last night, and I won $7! Which is more than I can say for Vegas.
Then, more yummy East Coast food and city-explorin’.

The Nomadic Build Engineer ’07 Tour

06/18/2007

If you’ve been wandering around the Mountain View office, wondering where I am, I’ve just finished wek one of the Nomadic Build Engineer ’07 Tour.
First stop for the tour bus: Toronto!
While soaking up that world-renowned Canadian hospitality, highlights included:



I only took like three pictures in Toronto, and this was one of them. It’s a statue of Winston Churchill in [[Nathan Philips Square]]; as you may be able to tell, the pigeons have a particular fondness for Churchill['s head], but frankly, haven’t we all felt a little like that about Churchill['s head] at at least one point in our lives?
  • A few conversations with mconnor about build-related needs for Firefox 3, so there are little-to-no surprises.
  • Learning what it’s like to be remote to a bunch of meetings.1
  • A meetup with Ben Hearsum, Buildbot-er extraordinaire. Chatting with him was a double-header of release automation fun-ness3 and a review of someTinderbox code. Once we got the bad taste out of our mouths, we started brainstorming requirements for a build harness that might eventually replace Tinderbox Client. Ben then filed bug 384943 today, which rhelmer, cf, and I all noticed pretty much in unison.4
  • My first encounter with [[poutine]]; I don’t think I’ll ever be the same again, but my arteries thank you, Gavin and Johnath!
  • My first encounter with Beer Bistro; I don’t think I’ll ever be the same again, but my liver thanks you, Gavin and Johnath!
  • A trip to the ballet, courtesy of Lucy; they were performing Don Quixote5; it was a dress rehearsal, so every once in awhile the director would stop everything, give a bunch of notes, and then they’d re-do it. It was great! Like Tivo-for-ballet!
  • Riding the Toronto subway.
  • Walking up and down Church St. with Lucy at 2 in the morning.
  • Cursing Beltzner for listening to his wiki-suggestion to stay in the downtown Days Inn, who has seemingly confused “beds” and “layers of cardboard with sheets.”6
  • A stop at Active Surplus, which is kinda like a Canadian version of Weird Stuff. Johnath has promised to build me a control panel with those old switches from the Cold War movies that have the protection cover over them to launch the missiles. “Firefox 2.0.0.5 released… now!”7
  • While walking down the street, I asked Johnath: “Does Canada have any assholes? You’re all so nice here,” and of course, on cue, someone guy started laying on his horn constantly as we walked by. So I learned that, despite my earlier perceptions, Canada does indeed, have at least one asshole. But for a country of thirty million people, that’s pretty good.
  • Even though they are Canadian, Air Canada is still like every other airline. They just say “We’re going to screw you, eh?” and thank you for the opportunity to do so when they’re done.

A special shout-out to the Toronto office for taking me in, and dealing with my [now extra] screwed up sleep schedule. I had a lot of fun!8



The Toronto Subway was fast, clean (of course!), and easy to understand. A+++++!!!!! WOULD TOTALLY RIDE AGAIN!!!

But more than that, it’s been one of the most productive trips I’ve been on in terms of strategic planning (hey, imagine doing that in Build-land, for once!)
***

Week two has me in New York City, meeting up with Ted Mezerk… Ted Mylizkriy… Ted Mcyzkiske… luser to work on Build Things for the next alpha.


Shameless self-promotion. And on my own blog, too!

Also, on Wednesday evening, the New York Linux Users’ Group, one of the largest LUGs in the country is hosting me for a talk about releasing Firefox to millions of users and the unique challenges that presents how I drink scotch all day and the Mozilla community makes me look good.
The talk is Wednesday evening, but you have to RSVP by Tuesday afternoon, so if you’re interested, head on over to the website.
Should be interesting (babbling), if nothing else.

***

14:53 <@preed> cf: so, I'm in NYC right... and I'm right next to little Italy

14:53 <@preed> so I've been enjoying the Italian food

14:54 <cf> nice

14:54 <@preed> but like... they have chianti with EVERYTHING

14:54 <@preed> "Uhm, no... I didn't order any wine with lunch... well... ok."

14:54 <@preed> "(Twist my arm.)"

14:54 <cf> twist it hard

14:55 <cf> makes afternoons kinda fun

14:55 <@preed> it sure as hell makes them go faster! ;-)

______________
1 BRING THE MIC CLOSER! So that I might… join with it. Do it. NOW!2
2 Sorry… sorry… awful Star Trek V reference.
3 That will likely involve some BuildBot subclassing hotness
4 And I don’t mind telling you that it made us all a bit tingly in our special places.
5 Am I the only one who kept pronouncing it “Don Kwix-oat” until I was like 16?
6 I still <3 you, though, Beltzner; especially since you’re still reviewing my presentation? Right?
7 Of course, QA would have the other key, and we’d have to turn them together.
8 So much, in fact, that I’ve started thinking about what it would take to work from the Toronto office for like… a year. I really like the feel of this city, and I’ve never done anything spontaneous like that. Of course, this is one of my [many] harebrained ideas, so it’s unlikely to go anywhere… but you never know. This one may stick!

“Farewall axolotl. And we thank you.”

06/04/2007

During this Thursday’s outage window, IT will be moving one of the final remaining services off of axolotl.1
Because this change will cause Tp numbers to noticeably shift, we will be closing the tree at 6 pm PDT, an hour before the outage window. Assuming the outage window goes well and the new pageload server stands up, we’ll reopen the tree at midnight.
This will allow a few cycles using the new server, giving new base Tp numbers for the new pageload server.
Any questions, feel free to shoot build@m.o an email.






_________________
1 Don’t know what an axolotl is? Yah… I didn’t either.2
2 Why-oh-why wasn’t this machine named WuperRuper?!
3 There is no 3 above, but I stole the picture from wikipedia and munged it; according to the license, I’m supposed to attribute that here; so this is the original copy.

Deja-Effing-Vu

06/04/2007

So, we can’t comment our code the way we see fit anymore?
Didn’t we already go through this once?
I think the most logically inconsistent part of the bug is the whole “You can’t say certain ‘bad words,’ but we’ll still help you spell them”-thing.
This seems like a losing proposition. As censorship of any form typically turns out to be, if you integrate over a large enough time interval.
I might just have to add an $equalAmount++ of “that word” to my next patcher2 patch.

Head in the Clouds, Golf (Now, with 100% more Mozilla Intern ™!)

05/31/2007

On Memorial Day, The ReedBotTM and I went on a flight down to Oceano Airport for lunch.
Section 8.1.2.b, paragraphs 2, 3, 4, and 5 of the Airmen’s Information Manual say, in part:

Either an upper respiratory infection, such as a cold or sore throat … can produce enough congestion around the eustachian tube to make [pressure] equalization difficult. Consequently, the difference in pressure between the middle ear and aircraft cabin can build up to a level that will hold the eustachian tube closed, making equalization difficult if not impossible. The problem is commonly referred to as an “ear block.” An ear block produces severe ear pain and loss of hearing that can last from several hours to several days. Rupture of the ear drum can occur in flight or after landing. Fluid can accumulate in the middle ear and become infected. An ear block is prevented by not flying with an upper respiratory infection or nasal allergic condition. … If an ear block does not clear shortly after landing, a physician should be consulted.

Having just recovered from a nasty cold the Sunday morning before, that was (what some would call) the first mistake of the flight.
(Some might call spending two hours stuck in an airplane next to Reed the first mistake, but I assure you, he was a model passenger, and I’m proud to report I won’t be invoking the “interference with a flight crew felony” clause—which applies to general aviation aircraft as well, thank god—the airlines always cite.)
Since I’m going on Day Five of not being able to hear out of my right ear, it may have turned out to be the worst mistake of the flight… but arguably, I didn’t know it at the time.

Read More

Just One of Those…

05/26/2007

You ever have one of those weeks where it feels like… like… you did a bunch of… stuff… but you didn’t really get anything actually done?
Yeah, that was me this week.
I got assigned “light and airy” bugs like “Nightly updates broken – all apps, branches, platforms.”
I also spent a lot of the week trying to turn:



Exhibit A

into…


Exhibit B

Now, if you don’t know what those pictures mean, that’s OK… because after having worked for most of a day fixing it, I really don’t understand how it works, what I did to fix it, how I would fix it again… or what the pictures actually mean.
All I know is there’s a bunch of red in the first picture… and there’s a bunch of green in the second picture. And green is… good.
I think.
(Right?)
Anyway, in the end, that thing they say about it not being the destination, but the journey… just might be true.

The Late Night Morning Owl

05/23/2007

I know I have a bit of a… reputation for being up at weird hours. But lately, I’ve been falling into a work pattern that… has some good elements to it, but probably isn’t sustainable.
The main cause of this has been cf.1
Since he’s working across the pond, he tends to be up and responding to email/IRC around 1 or 2 am and falling offline around noon to 1 pm PDT. (Astute readers will notice that this is an 11 hour day… which… now I feel really bad about some of the meetings we ask him to be at.)
He’s been a really good sport about this and we got spoiled because he was here for a few weeks just a couple of weeks ago2, so we typically just expect that he’ll be able to be in meetings (because he was in them while he was here… and now he’s “just a phone call away!”)
I’ve always been a late(r) riser, so I’ve noticed that if I don’t touch bases with Nick until I’m booted up, then he’d be parking his brain’s drive heads for the day. I’ve found that to really be effective in helping him with things and doing reviews, I tend to need to stay up until 2 or 3 in the morning, when it’s his morning, and try to be around earlier in the PDT day, to catch him at the end of his day.
On certain days (that tend to be coincident with the days I set up my coffeemaker’s timer), this turns out to be workable; I’ll go to bed around 4 and get up around 8 to the smell of fresh brewed coffee. It affords me the opportunity to catch up on IRC, email, and the fires that flared up overnight, and deal with them before coming into the office and trying to get something done.
But if I don’t set up the coffeemaker, I find myself getting up at 10 or sometimes even 11, and not getting into the office until noon or sometimes even 1.
I don’t like this for a number of reasons.3 The largest one is that it tends to fragment my work day too much, I think.
Anyway, this is relevant because the weekly build team meetings have traditionally been at 2 pm Pacific… and this turns out to be suboptimal, but workable for East Coast peeps. For Nick, it’s positively hell.5
We’ve been trying to find a new time for it, but we’ve run into conflicts with other “random” meetings. ;-)
It looks like we’ve found a place that may work, but it’s a 10 am meeting… and I’ve always hated any meetings before 11 am (what with getting up, getting into the office, and getting caffeinated, I tend to not be very useful before 11 am anyway).
The upshot is that I think I’m probably going to have to find a way to start shifting my days earlier on principle. I think this is going to be difficult for me because I’ve always been a night owl6, and going to bed at, say 10 or 11 pm, goes against at least fifteen years of going to bed at 2 am. Or later.
I think one of the hardest things, though, about going to bed before midnight is that it would make me feel like… too much of an adult. “Hey, I can still stay up until 3 am, and get up for a 7 am class, and be useful!!”
Except I can’t.
Anyway, in the next couple of months, it’ll be interesting to see how the meeting schedules shift… I’ll also be curious to see if the rest of the build team begins to move “earlier” in the [Pacific Time] Day, since we’ve got Coop and Nick tugging that way for useful collaboration.
It’s not like this is a new problem for the Mozilla Project, but I’ll be curious to see how we, as a team of people who work closely together, end up solving it for ourselves.
And now, a friend from New York just IM’d me… so it’s probably really time to get to bed now, so I can hide for an hour or two from a westward-marching sun.
___________________________
1 I’m sorry Nick! I still love you though!
2 Or so it feels like…
3 Not the least of which being it makes me feel like4 a huge deadbeat loser.
4 [other people are thinking I'm]
5 More than a build meeting already is, since he’s currently working on the 2004/150twelve release.
6 And I’ve recently gotten back into hacking by candlelight… which I used to do all the time in college, but had forgotten how… awesome that is.

AUS2′s a movin’; can you help us lift the sofa?

05/16/2007

AUS2, Mozilla’s Automatic Update S{erver,ystem} is packing its bags!
rhelmer, morgamic, and oremj are furiously helping it stuff the update snippets into the U-Haul, as we prep to move it from OSL to the MPT colo. We’ve been planning to do this for some time now, but there’s always been a release or firedrill or something else that prevented us from doing it.
We’ve got the AUS2′s new diggs ready for it in San Jose, and we’re starting testing now, before we have a housewarming party.
QA is helping us test on the client side1, and with Cesar Oliveira’s help2, we’re working on on the Build side, testing the server directly. If all goes well, we’ll point aus2.m.o at the new installation next week, on Monday, May 21st.
To ease into it, we’ll be removing all of the release updates for a couple of days while we test nightly updates. So on Monday and Tuesday of next week, please let us know if you experience nightly update problems.
If everything goes well, we’ll re-add the release updates to AUS2 on Tuesday the 22nd. At that time, we’ll also push out the 2.0.0.4rc3 release on the beta channels via the new AUS2 installation.
This will give AUS2 a full week of move-in time before we need to push any updates for a full release.
If there are any questions or you experience issues with updates next week, please file a bug, and let us know in #build, so we can take a look at it.
The AUS2 migration team—and millions of Firefox, Thunderbird, and Sunbird users—thank you in advance.
______________________
1 If you’re interested in helping, pop into #qa on IRC and ask about it…
2 Ok, ok… I confess… I had to beg Shaver to let us grab some of Cesar’s awesomeness to help

I think this is how it’s supposed to work… right?

05/15/2007

I swear… the amorphous blob of people, patches, and passion that is Mozilla never stops churning.
I leave for a long-weekend-mini-vacation1, and the world completely changes: some taggable, hour-long YouTube video has everyone talking2, my desk gets moved3, a friend gets engaged, and Mozilla is killing XUL Runner.
Except… we aren’t. Not really.
Looking over Planet, there’s a lot of “platform” discussions going on. I’ve seen Mark Pilgrim’s “silly season” post referenced a number of times. To be sure, it’s a great post (and relevant, too), but one Mark’s other posts, linked from “silly season” really resonated with me: Freedom-0.
In that post, Pilgrim writes:

WordPress is Free Software. Its rules will never change. In the event that the WordPress community disbands and development stops, a new community can form around the orphaned code. It’s happened once already. In the extremely unlikely event that every single contributor (including every contributor to the original b2) agrees to relicense the code under a more restrictive license, I can still fork the current GPL-licensed code and start a new community around it. There is always a path forward. There are no dead ends.

I could go on about how I was confused, because it didn’t seem like I was reading the same post everyone else was reading.
But with shaver and Benjamin’s clarifications today, I don’t think I need to say anymore.4
I will, however, say: that’s what’s wonderful about the freedom of open source: the fact that those interested in a project can build up a community out of interested developers, can build a project out of a CVS repository/IRC server/mailing lists, and can build a product out of a bunch of bits.
I personally have always found XULRunner to be a very interesting project. I always thought it was neat that you could download this little bundle of binary bits, write up some JS and XUL, connect it with some XPCOM components, and get an entirely new app out of it all. And all the stuff we expect out of current (non-browser) applications—HTML rendering, network connectivity, platform independent I/O, an update mechanism—were just there.
I just wanted to add: count me among the members of the Mozilla Community that are interested in XULRunner and seeing it succeed.6 Materially, I’d love to contribute the time to make sure that XULRunner has the build (and eventually release) resources it needs.
As shaver notes, “As XULRunner itself is about 1000 lines of code that differs from Firefox, the bulk of the work is likely to be in build, packaging, update and other “meta” areas, I suspect.” I suspect he’s right, most certainly because Firefox really is built on top of XULRunner, even if that separation isn’t as clear as we like, and it’s not packaged entirely how we’d like. It’s not like we could have Firefox release, but a so-completely-broken XULRunner build, that XR was unusable.
(I was going to run out and start setting up trunk Tinderboxen for XULRunner but then I noticed “Oh right… we already have those.”)
So I guess others interested in XULRunner in the XULRunner Community will have to tell me how, as an individual contributor, I can best and most effectively be of assistance.
______________________
1 I had the best two hour massage…
2 I say this not to sound dismissive; however in the interest of full disclosure, I must admit that I started drinking scotch about fifteen minutes in, and the more I drank, the more it all made sense.
3 Admittedly, to a nicer location
4 Except to point out that we’ve been faced with this [perceived?] specter before, and not only did the “nightmare scenarios” never come to pass, even if they had, it wouldn’t have mattered.5
5 Ok, I’m done. Really.
6 Whatever we decide that means.

Mom’s Day 2.0.0.7

05/12/2007

Joel—yes, that Joel—made a couple of blog posts recently reminding people that today is Mother’s day.
(Tangential aside: Hi Mom! I didn’t turn out to be a famous movie star… or a wünderkind athlete… or a renowned writer… or a Nobel prize-winning scientist… but this blog [seemingly?] [and inexplicably?] gets syndicated all over the place, so if you Google for “preed” and “mother’s day love” in like… a couple of weeks, this post should show up… and since I can’t dedicate anything to you, like those other professions tend to lend themselves to, hopefully seeing those Google search results will remind you of how much I love you, not just today, but everyday!)
What I thought particularly interesting about both of his reminders was

a. He’s offering a free day usage of his company’s Copilot software today1, so us tech-savvy children can help our Mothers update their vulnerability pockmarked Windows PCs.
and b. in both posts, he mentions installing Firefox on her computer, so she can have a cleaner, faster, more customizable, and (most importantly) safer experience on the Web.

I happen to be in Colorado right now, so I can accomplish those things with my Mom at the kitchen table2… but if you don’t have the luxury of being within fifty feet of your Mother today, here’s a chance to tidy up her PC a bit and make sure she stays safe on the Web.
So if you haven’t already, take a few minutes to introduce your Mom to Firefox. She’ll thank you for it, even if she doesn’t entirely understand why.3
(My mom notes every time I see her that every few weeks, she’s pleasantly reminded of me when she gets the “It’s time to update Firefox” popup. For most of our users, it’s an annoying4 distraction to using the web, but for her, it’s like her son5 is giving her a hug from three states away.)
________________________
1 And on Father’s Day, too
2 Actually, since Mom already uses Firefox (of course!), the big task for today is teaching her how to use flickr, since she got a digital camera for Christmas, but all the pictures she tells me about having supposedly taken have seemingly gone into a black hole!
3 Explaining Firefox extensions to my mother took awhile, but at the end of the conversation, she was very appreciative of shaver, morgamic, and everyone else’s work on AMO3!
4 but necessary
5 Even though rhelmer and cf push releases as often as I do…6
6 rhelmer and cf: please promise to be nice while giving my mother AUS2-hugs

Newer Posts
Older Posts