February 2012
1 post
2 tags
Feb 2nd
January 2012
1 post
4 tags
What's the Deal With V8Monkey & SpiderNode?
tl;dr Neither are being actively worked on and could use some love. After NodeConf, development of V8Monkey & SpiderNode slowed. We all got a bit burnt out in the weeks preceding NodeConf and took a little break. Shortly after, Shawn left Mozilla to work at Facebook with Rob on [redacted] and the little break became longer. I was in the middle of planning a wedding & helping the...
Jan 24th
1 note
October 2011
2 posts
2 tags
And Just Like That I'm a Firefox Peer
Not-so-long story short, as of a couple weeks ago Firefox review policies changed and now I can review any code going into Firefox (browser/)! In actuality though, if a review request came my way in an area I wasn’t familiar with, I would just give feedback and redirect the review to somebody more familiar with that code. Read up on the new Firefox review policy and see who else can review...
Oct 27th
4 notes
4 tags
WatchWatch
Did you know that I got married 3.5 weeks ago? Now you do! I have more to say about it all, but here’s a short video from our awesome videographers, Seaglass Cinema.
Oct 11th
5 notes
August 2011
3 posts
4 tags
max_concurrent_tabs is Dead; Long Live...
Since last September, you could set browser.sessionstore.max_concurrent_tabs to 0, and you would essentially have a built-in BarTab. I slipped that in later in the Firefox 4 release cycle as a part of cascaded session restore, but it required going into about:config and changing a preference value (or installing something like BarTab Lite). Starting with the latest nightly (and soon to be Aurora...
Aug 18th
3 notes
2 tags
This is Bad Recruiting
An email came in yesterday with the subject Amazing Career Opportunity Unlimited Funds! looking like this: Hi Paul, This is [name] from [recruiting company]. I’m recruiting for a super HOT online company opening a west coast office in San Francisco to build new products. We are looking for top engineers (Ruby Developers and JavaScript Engineers). This company is HOT and I want...
Aug 10th
6 notes
3 tags
hg qedit
Mercurial queues are still far from my ideal workflow, but they mostly just work so I still use them. I haven’t gotten into qqueues because that seems like even more management I don’t need. If I had a 17 part patch then I would probably give those a go, but I don’t. Instead I end up reordering the patches in my queue more often that I want. I run vim .hg/patches/series, press...
Aug 9th
6 notes
July 2011
1 post
5 tags
Building Firefox on OS X Lion
I know there are people here at Mozilla who have been building Firefox on Lion releases for a while now, but I couldn’t find anything that described all the problems. So here I am. TL;DR: Reinstall XCode & apply a couple patches. Mercurial I had originally installed Mercurial via easy_install, so your results may be different. Regardless it was broken. Apparently you can edit the...
Jul 24th
6 notes
June 2011
1 post
5 tags
Simple Tab Stats Script
My Firefox usage has always been a bit excessive. I used to open windows to group my different tasks. Then Panorama came along and I started using groups. Then I had too many groups so I started opening new windows. Luckily I set max_concurrent_tabs to 0 so I avoid loading all of those pages at startup (it’s that BarTab-like thing). My curiosity got the better of me so I wrote a little...
Jun 18th
20 notes
May 2011
1 post
5 tags
SpiderNode at NodeConf 2011
Two weeks ago, I traveled with Shawn and Rob to Portland for the inaugural NodeConf. To summarize: it was a great experience and a well run conference. Other people have done overviews, so I’m not going to go there, but read a few here, here, and here. I’m going to talk about SpiderNode at NodeConf instead. A Quick Aside on the State of Things We got SpiderNode running on the train ride shortly...
May 19th
April 2011
2 posts
7 tags
About That Hybrid "V8Monkey" Engine
I’ve sort of been working on this thing… Several weeks ago I was curious about why there was no implementation of Node.js using the SpiderMonkey JavaScript engine (the one we use in Firefox). So I tweeted about it and several people said they wanted such a thing and would help work on it. After some poking around the source, we realized that Node was tied pretty closely to V8, and...
Apr 15th
8 notes
2 tags
Apr 13th
2 notes
March 2011
1 post
4 tags
ShoeVox: Voice Control for Your PC Multimedia →
Rob and Max are both really smart guys who work really well together (once upon a time, the 3 of us were working on a startup), so I’m excited to see that they’ve made something cool. I don’t fit the target audience with my OS X loving ways, but I hope others can make use of it.
Mar 10th
1 note
February 2011
6 posts
4 tags
Multiple Assignment in JS With Objects
Note: Turns out this only works in Firefox since it is the only browser to include versions of JavaScript beyond 1.5. Perhaps something will show up in ECMAScript N/Harmony/whatever. Alright, JavaScript is pretty cool. There are plenty of “tricks” that still boggle my mind. I just found another cool trick in Mardak code (he would do this…). This is about multiple assignment...
Feb 26th
1 note
3 tags
2 Years at Mozilla
On February 23rd, 2009 I started full-time at Mozilla. So much has happened since then, yet it still feels like it was just a couple months ago. In addition to my time as an intern, I feel like I’ve seen a lot at Mozilla. With Firefox 4 I’ll be seeing my 4th release; 3.0 came out very shortly into my internship, followed by 3.5 soon after I started. 3.6 was my first version where I...
Feb 23rd
2 notes
5 tags
Updated Firefox Extension: Always Ask 2.0pre
Around the endgame for Firefox 3.6, I wrote an extension called Always Ask to make sure I always got a prompt when quitting. I used it for a while and then forgot about it when it was no longer compatible as Firefox 3.7 (now 4) moved forward. Now that we’re at the endgame for Firefox 4, and especially with all the changes surrounding the quit dialog, I figured it should be updated. So...
Feb 23rd
1 note
5 tags
New Firefox Extension: switch-to-tab Blacklist
Switch To Tab is a pretty cool feature that will be a part of Firefox 4. I didn’t work much on it, but I contributed a bit to it last year (see this post for one example). For the most part, I really like this new feature. It’s saved me much tab duplication over the past several month. However there are some sites that it doesn’t play well with, namely some JavaScript...
Feb 19th
1 note
4 tags
About That Quit Dialog...
Remember when we turned it off a couple weeks ago? We did that by just flipping the browser.warnOnQuit preference to false. I mentioned that you could get old behavior back by flipping that preference back to true. That’s not going to work anymore. I just landed bug 629485 to change things again, so pay attention. When we turned off the quit dialog, we took away any way of stopping the...
Feb 8th
1 note
4 tags
Feb 1st
1 note
6 tags
The California DMV has Terrible Browser...
It appears as though the California DMV has not updated their website in the past 10 years… To be able to use this online application, your computer will need to have one of the latest versions of either the Internet Explorer, Netscape Communicator/Navigator, or equivalent web browsers. For Internet Explorer you must have version 4.0 or higher. We suggest you use Netscape...
Feb 1st
32 notes
January 2011
5 posts
5 tags
Just Quit It
For a long time now, if you didn’t have Firefox set to restore your session then Firefox would prompt you before quitting. A dialog with 3 buttons and a checkbox. It looked like this: That mostly just gets in your way though. You’ve already decided you want to quit. You don’t also need to decide if you want to reopen your tabs next time. So starting with the next nightly...
Jan 21st
1 note
3 tags
Radiohead: 01 and 10 →
This might be old news to some, but I found it pretty interesting… Consider that In Rainbows was meant to complement OK Computer, musically, lyrically, and in structure. We found that the two albums can be knit together beautifully. By combining the tracks to form one playlist, 01 and 10, we have a remarkable listening experience. The transitions between the songs are astounding, and it...
Jan 16th
3 tags
Use a Pager with Mercurial →
In the spirit of sharing Mercurial extensions this week, did you know that there’s a pager extension that ships with Mercurial? After using Git for a while and having a nice pager when looking at diffs, I got really annoyed by the fact that I constantly had to scroll my terminal for hg diff. I found the Pager extension and there was much rejoicing. So turn it on and be happy. It’ll...
Jan 15th
2 notes
3 tags
hg-prompt Makes My Eyes Happier →
For a long time I’ve had Git info in my terminal prompt. At Mozilla, we mostly use Mercurial though, so a Git aware terminal wasn’t super helpful. A couple times I tried to hack together something for Mercurial to show me my current branch or applied patch queue. Every time though I either didn’t get everything I wanted or was too lazy to make it work like I wanted (and play...
Jan 11th
December 2010
1 post
2 tags
Pagination: Next, Next, Previous
Nobody has said anything but I haven’t had pagination enabled on this blog since it started. It was initially cut from the theme since I didn’t like what I’d done and I didn’t have to worry about it. This summer I realized I had more than 1 page of content but didn’t care enough. Tonight I just took out the comments that had been hiding the content. Turns out what...
Dec 23rd
1 note
November 2010
2 posts
3 tags
Through the Spam Filter
Hi dear, you are very nice I wish i could get to know you for it is my pleasure to have you as my friend for a friend is all about Respect„,Admiration,contentious and affectionante also friendship is consist of sharing of ideas and showing true affection without cheats„,lies and betray so can you welcome me, lets get to the ocean of love ????????????? I am miss...
Nov 23rd
5 tags
Nov 11th
2 notes
October 2010
3 posts
4 tags
Reset Panorama from the Error Console.
Panorama is this cool new feature coming to Firefox 4. Most of the big issues have been fixed, but there’s still the occasional issue with orphan tabs. Last week I wrote a script that would strip the Panorama data out of Session Restore. That worked but would require a restart. Ian Gilman (one of the Panorama developers) used that script for the basis of a script that worked much better...
Oct 22nd
3 tags
Oct 18th
3 tags
The Clipper Card System is a Fucking Mess
Here’s (only part of) why: Please note that when you add value online, it can take up to 3 days for the value to be available to be loaded onto your card, and you must tag your card to a card reader to load the value. Your card balance will not be updated until you have tagged your card and loaded the value. 3 days? By then I’ll have needed it 3 days ago. Another gem: ...
Oct 12th
September 2010
4 posts
4 tags
Today I accidentally deleted my primary Firefox profile (mostly through user error). I was cleaning testing profiles out via the Profile Manager and managed to delete default. Since that actually deletes the whole profile folder from disk instead of moving to the trash can, I just said “Fuck”. This is a profile I’ve had for a while. It had a lot of history, passwords, bookmarks,...
Sep 25th
5 tags
“I already love it. I had to wait several minutes til my 100+ tabs are loaded....”
– trolly on mozillazine about Cascaded Session Restore
Sep 22nd
1 note
5 tags
Cascaded Session Restore + a Hidden Bonus
In the tradition of announcing major things on Friday nights… I did this thing where we don’t load all of your pages at once when we restore your session. That should keep your Firefox (and computer in general) a bit more usable when you start up Firefox with a large session. See bug 586068 if you’re interested in the juicy details. Other Details Switching tabs should cause...
Sep 18th
1 note
5 tags
Restore Previous Session
I landed bug 588482 today (September 10th), so starting with tomorrow’s nightly version of Firefox (AKA Minefield), you’ll be able to restore your previous session at any point after start up. This means that you no longer have to restore your whole session immediately at start up. This will be available through a menu item in the History menu, as shown below. This feature will be...
Sep 11th
August 2010
1 post
1 tag
“Helo - i’m a noob; pls be kind. i’m using getelementbyID to submit...”
– ragas (on ##javascript on freenode)
Aug 18th
June 2010
8 posts
2 tags
Jetpack SDK 0.5 & the Request API
Jetpack SDK 0.5 hit the streets last week. There’s a bunch of new APIs in there. I worked on the Request API, which enables a simple way to make XML HTTP Requests (XHR, or AJAX if you must). The API is a wrapper around the Gecko HXR object. Like jQuery, MooTools, Prototype (or pretty much any JS library), it makes the ugly stuff go away. You simple provide a URL, some data, and a callback,...
Jun 29th
3 tags
Jun 18th
3 tags
Switch to Tab & Closing Empty Tabs
Firefox 4 will be introducing a new feature called “Switch to Tab” or “Tab Matches in Awesomebar”, a feature that attempts to see if the page you’re looking for is already open. If it is (and you explicitly select that location bar suggestion), you’ll be taken to that open tab instead of opening a new one. This is great step forward & I’ve already...
Jun 16th
1 note
3 tags
I'm Comic Sans, Asshole. →
People love me. Why? Because I’m fun. I’m the life of the party. I bring levity to any situation. Need to soften the blow of a harsh message about restroom etiquette? SLAM. There I am. Need to spice up the directions to your graduation party? WHAM. There again. Need to convey your fun-loving, approachable nature on your business’ website? SMACK. Like daffodils in motherfucking...
Jun 15th
4 tags
Are Cameras the New Guns? →
Almost without exception, police officials have staunchly supported the arresting officers. This argues strongly against the idea that some rogue officers are overreacting or that a few cops have something to hide. “Arrest those who record the police” appears to be official policy, and it’s backed by the courts. I’ve take a few photos of officers in action without...
Jun 11th
4 tags
Now Using JSON.parse in Session Restore
Back in March, I partially dropped support for sessions from Firefox 2.0 & 3.0. For Firefox 4.0, we’ll be dropping backwards compatibility of sessions for Firefox 2.0 & 3.0. That means that sessions created with nightlies starting tomorrow, will no longer be loadable by versions of Firefox prior to 3.5. With bug 387859, Session Restore will now use JSON.parse instead of...
Jun 10th
1 tag
Jun 4th
3 tags
waitForClipboard now available to Mochitests
Testing is a part of life. Sadly, that means we have to write tests for things that involve the clipboard. The clipboard is complicated enough with all of this flavor and transferable stuff we have going on. Throw in the fact that the clipboard can be asynchronous (thanks Linux), and it gets worse. We’ve had a number of tests that fail due to expectations that the clipboard be synchronous....
Jun 3rd
May 2010
3 posts
3 tags
The Secret Diary of Steve Jobs : Guest blogger:... →
Update: Oh right, FSJ is entirely satire. I feel dumb, but I’ll leave the original post intact. I still stand by the first paragraph. I used to like John Gruber a lot. I feel like he’s gotten pretty arrogant and a tad ignorant over the past few years. He’s written some great articles and had many insightful comments. He’s also written some FUD. Nowadays I kind of think...
May 26th
3 tags
The Evolution of Privacy on Facebook →
This is by far the best visualization I’ve seen on how Facebook’s privacy has changed over time. (via @fligtar, @joedrew, @tieguy)
May 8th
4 tags
May 2nd
2 notes
April 2010
7 posts
4 tags
A Followup to Flash on Windows
Last week I went on a little rant about Adobe’s inane method of installing Flash on Windows (in Firefox). I received a few emails from people pointing out the much better way of installing Flash - just download the .exe installer! Sounds simple, but good luck actually finding that on Adobe’s website (while using Firefox anyway - they do UA sniffing to make you use the extension)....
Apr 28th
1 note
6 tags
How to Install Flash on Windows OR A Cleveland...
I got a 2nd computer at work which I’ve installed Windows 7 onto. So I wanted to finally see the Out Of Process Plugins coming in Firefox 3.6.4. It’s a new computer, so I still need to install Flash. No problem, right? Wrong! Pretend for a moment that a helpful Adobe customer service agent is helping your mother install Flash: You need Flash! Go download it. Oh and by the way,...
Apr 21st
1 note
3 tags
The Muni Death Spiral →
… Muni spends more to operate its vehicles than virtually any comparable transit agency. For every mile Muni runs a bus in this city, it spends $19.21; comparable agencies nationwide pay between $10 and $13. For every mile Muni runs a light-rail vehicle, it throws down $24.37; comparable rail services spend between $12 and $22. Those are frightening numbers.
Apr 14th
2 tags
Apr 12th