“May: That lawn isn’t going to mow itself.”
Author Archives: Christopher Finke
2010 Calendar – February
“February: Valentine’s Day is the perfect time to let your crush know how you feel.”
2010 Calendar – January
As is my way, I made Christina a calendar for Christmas again this year. This year’s theme was one of those little wooden people that artists use to help them sketch poses of the human body. (Christina doesn’t have any special attachment to it; I just thought it would be funny.)
I’ll be sharing the pages of the calendar here over the next 12 days, so by January 13, you can make this calendar yourself if you are so inclined. (Full-size versions of the pages are available by clicking on the thumbnails below.)
“2010: Spend the year with your favorite wooden mannequin. (“Just where is that supposed to go?”)”
“January: Time to take your lights down before they take you down.”
Extending the Web, not just the browser, with Twitter Filter
One of the things that annoys me about Twitter is the constant “check-ins” from location apps like foursquare and Gowalla. Since I don’t use these apps, I don’t especially care that you’re at the Starbucks in Dallas or that you’re the mayor of your bus stop.
To solve this problem, I wrote a browser add-on called Twitter Filter. It adds a little “X” next to the source of each Twitter status update; if you click that X, you will never see updates from that source again (at least not on the Twitter website):
The sources you’ve blocked are listed in Twitter’s right sidebar so that you can easily unblock them:
That’s all there is to Twitter Filter, and it’s a new type of browser add-on for me. It has options, but no options dialogs. There’s no toolbar button, no browser sidebar – everything related to the add-on is controlled via the Twitter Web interface, so it’s not so much an extension of the browser but rather an extension of Twitter itself. Go ahead and install it on a friend’s computer and convince them that Twitter added the feature – it’ll be fun! Be sure to come back and recount your grand prank in the comments below.
TwitterBar is a winner!
Update: TwitterBar was sold to HootSuite and renamed HootBar in March of 2011. TwitterBar for Chrome was discontinued in October of 2012.
(And so are you, for using it!)
It was announced today that TwitterBar is one of the ten winners of the Mozilla Mobile Add-on Challenge:
“After reviewing a multitude of submissions and much debate around many worthy contenders, the judges from the AMO and Mobile teams have chosen ten (10) of the best (innovative, useful, compatible) Firefox mobile add-ons. We’re very pleased to announce our winners (and thrilled to start using their add-ons soon) and award them each with a brand new Nokia N900.”
I was really pleased with how the mobile version of TwitterBar turned out; I slimmed down the interface (which was already pretty slim), and I found a great Twitter bird icon that I modified to allow TwitterBar to have its own branding separate from Twitter:
I’m planning on eventually using this same icon in the Firefox version of TwitterBar too so that there’s consistent branding across the Mobile, Firefox, and Chrome versions of TwitterBar. What do you think?
Lost and FireFound
Update: FireFound was shut down on April 1, 2012.
I’ve written a new extension for Firefox, and it’s called FireFound:
FireFound is an add-on for Firefox and Fennec (mobile Firefox) that helps your find your computer (or mobile phone, in the case of Fennec) if it is lost or stolen. Every time your computer’s location changes, FireFound sends a secure message to a central server with its current location. You can then log into the server and see your computer’s current location.
All of the location data is encrypted, so no one can find out where your computer is without your password.
If you lose your computer, you can tell FireFound to clear your personal data (saved passwords, browsing history, etc.) if anyone starts your browser before you can retrieve it.
You can even run your own FireFound server; all of the code is open-source.
FireFound was chosen as a grand prize winner of the Extend Firefox 3.5 contest; since then, more than 6,000 people have installed FireFound, resulting in over 330,000 location updates.
Add-On-Con 2009
Just a note that I’ll be at the 2nd annual Add-On-Con this week in Mountain View, CA. Add-on Con is a gathering of browser add-on developers and representatives from the browser vendors (Mozilla, Google, and Microsoft).
I’ll be participating in the opening keynote discussion, which will address the question, “Do Add-ons Need a Marketplace?” The other keynote participants will be representatives from Mozilla, Microsoft, XMarks, and FoxyProxy, so I’m obviously there to even out the low end of the curve. Anyone know any good knock-knock jokes I can use?
I’ll also be sitting on a Mozilla panel as a token add-on developer, talking and answering questions about how to develop a successful add-on. (On an unrelated note, if you know how to develop a successful add-on, please contact me ASAP.)
Will you be at the conference? Let me know!
TwitterBar for Google Chrome
Update: TwitterBar was sold to HootSuite and renamed HootBar in March of 2011. TwitterBar for Chrome was discontinued in October of 2012.
If you’re using Google Chrome, and you’re running the developer version that allows extensions to be installed, you can now install TwitterBar for Google Chrome.
After you’ve installed it, just click on the Twitter icon in the toolbar bar, type your message, and press Enter to post your message to Twitter. (You’ll have to authorize TwitterBar the first time you tweet, but it only takes a second.)
If your message gets too long (Twitter only allows 140 characters), the happy blue Twitter bird will turn into an angry red Twitter cardinal.
Let me know what you think; I tried to keep as much of the functionality from the Firefox version as possible.
Food In Real Life
I’ve started a new project that I’m calling Food In Real Life. The idea is that I take pictures of real food that I’m about to eat, compare them to the pictures on the food’s packaging, and then dole out scores for the food’s appearance (compared to the packaging) and taste like I’m some kind of Olympic food judge.
For example, here’s a comparison I did of Antioch Farms Chicken Kiev:
Looks: While the color and texture are almost identical, the chicken kiev pictured on the box
is about 50% longer than the ones found inside. (There is no way that the sliced and unsliced
portions on the box belong to the same kiev.) The butter sauce is portrayed accurately, even
though my picture doesn’t really show it. (It’s boiling-lava hot, so slicing the chicken without
splashing butter magma everywhere was a challenge.) 4 out of 5
I’d love any feedback you have on the idea or the execution of the site.
New Job
Three years ago, I blogged about a new resume-hosting site called Emurse.com that got me an interview (and a job) at AOL-owned Netscape. Well, things have a funny way of working out, and after leaving AOL to work with an incredible development team at Mahalo, I’ve left Mahalo to lead development of now AOL-owned Emurse.
It’s great to be working with Andy Fraley again, who designed the look and feel of the Netscape Navigator 9 browser, and is now in the designer’s seat at Emurse. We’ve got some exciting new features planned for the next generation of online resumes, all of which will, of course, be documented here.
My BFF Selena Gomez
For the past couple of weeks, I’ve been getting occasional IMs and e-mails from what I can only assume are tween-age girls, asking if I work for Facebook. (“I need to talk to Facebook Team about something important, very important.”) I mostly ignored the emails, assuming that some version of a “facebook employee” Google search ended up at my site, prompting these kids to think that I work there.
However, the most recent e-mail I received included this line:
“I see your email on Sezzer Gomez’s photos. Are you Christopher Finke, the facebook team??”
This piqued my curiousity, so I did a search for “Sezzer Gomez,” assuming it was a blogger somewhere that had posted an image that contained my email address. It turns out that “Sezzer” is short for “Selena,” as in Disney tween idol Selena Gomez. My search led me to this Facebook page, for “The Official Sezzer Gomez,” who, in a bid to prove that she/he is actually Selena Gomez, posted a poorly photoshopped letter from Facebook that purported to be written by me (but strangely, was signed by Mark Howitson, one of Facebook’s lawyers). (The letter was photoshopped from the takedown notice I received from Facebook a couple of years ago.)
The contents of the letter are hilarious:
“We’ve received a complain up straight to your phone, that since you’ve joined Facebook, all of your accounts got either hacked or deleted for our system.”
Sounds legit to me; I know that when I joined Facebook, I too had all of my accounts hacked and/or deleted from Facebook’s system. Straight up to my phone!
P.S. “Straight up to my phone” is the new “Word to your mother.”
Gabriel’s Birth Story
Note: This birth story is accompanied by the messages that I posted to Twitter during the course of the day in order to keep my friends and family up-to-date on what was happening.
We had no idea that we’d end up in Labor & Delivery on Thursday, March 26. Gabriel’s due-date was the 20th, so Christina’s doctor had scheduled an induction for Friday, the 27th. We wanted to wait until Monday the 30th, in hopes that labor would begin naturally over the weekend, so we agreed to have Christina and Gabriel undergo a non-stress test on Thursday, the 26th, thinking that if Gabriel failed, we’d agree to a Friday induction. In fact, the biggest thing we thought would happen that day was our mortgage refinance, scheduled for noon:
Today's the big day… we're refinancing our mortgage! Exciting! Full of thrills and chills!
— Christopher Finke (@cfinke) March 26, 2009
Long story short, Gabriel didn’t respond during the non-stress test. Christina chugged some Orange Crush and a few Capri-Suns, hoping to stimulate him with the sugar (or possibly give him brain freeze), but he was less active than the 30% of Americans who don’t get the recommended amount of vigorous exercise every week.
This was around 11am, and the doctor told us that we needed to head to the hospital as soon as possible. Considering that we had expected a Friday induction, not a Thursday one, we hadn’t packed yet, aside from a few towels in the trunk of our car in case Christina’s water broke. Additionally, our mortgage refinance was scheduled for noon, but for some reason, Christina’s doctor didn’t think that waiting an hour at the broker’s office for our refinance was acceptable.
Since we were less than a few miles away from the broker’s office, we called them and they were able to rush us through the refinance ahead of schedule. (The extra $280/month we have after refinancing definitely comes in handy with this little diaper-vortex around.) We drove home to pack up some clothes for the hospital, and then took off for Fairview-Southdale. And no matter what you hear, especially if you are Christina’s doctor, we did not stop for pizza on the way.
IT'S HAPPENING. We're going to the hospital; Christina is going to be induced. I'm going to be a dad TODAY!
— Christopher Finke (@cfinke) March 26, 2009
We got checked into Labor & Delivery, and they started Christina on a pitocin drip. At the same time, they manually broke her water. (At the request of Christina, I am omitting some details here regarding the water-breaking and subsequent flooding of our hospital room.)
I found the fetal monitor interesting, as I could tell Christina when she was about to feel a contraction. She did not appreciate the help.
Clever http://twitpic.com/2gzd0
— Christopher Finke (@cfinke) March 26, 2009
Christina did well for the first few hours, enduring the contractions without any pain medication:
having a baby brb http://twitpic.com/2h1g0
— Christopher Finke (@cfinke) March 26, 2009
Soon enough though, she decided to get an epidural. Intense back pain combined with strong contractions every two minutes made it impossible for a normal human being to endure the pain without any “liquid courage.”
The anesthesiologist arrived and started administering the epidural. Christina had been worried about getting an epidural because of the possibility of getting a spinal headache. She asked the anesthesiologist what the chances were, and he literally said “Zero.” Christina asked him if he’d sign something to that effect, and he seriously agreed. (She didn’t hold him to it.) She never did have any complications from the epidural, so here’s to you, Overly Confident Anesthesiologist.
After she got the epidural, Christina was all smiles. We joked around, and she couldn’t feel her legs, which made for an interesting moment when she almost kicked a nurse in the face.
Later, we watched 30 Rock and The Office, killing time, waiting for something to happen. Christina was dilating about a centimeter every hour. (This sentence makes me realize that pregnancy and childbirth changes how comfortable people are with talking about bodily functions.)
7cm dilated; the nurse says he's got a full head of hair.
— Christopher Finke (@cfinke) March 27, 2009
The contractions never slowed down or sped up – they were about 2 minutes apart from the time her water broke until the birth. Christina was mostly oblivious to them, thanks to the epidural (she recalls feeling “floaty”), but at this point, she requested that they turn down her epidural drip so that she would have some feeling and control when the time came for pushing. The previous face-kicking incident did not inspire confidence for the time when she would have to push a human being out of her body.
Strong contractions every 2 minutes, but Christina's in epidural heaven.
— Christopher Finke (@cfinke) March 27, 2009
We enjoyed a delicious meal, courtesy of Fairview-Southdale. (She was warned not to eat anything else, since it might come back up due to the medication she was on. I, having declined an epidural, had a Big Mac and fries. And I think also some granola bars. Maybe a Mountain Dew too.
Christina's supper http://twitpic.com/2hfuo
— Christopher Finke (@cfinke) March 27, 2009
This being Minnesota, the hospital provides some accoutrement that you might not get down south. (This picture doesn’t show the snow pants or the scarf, but they were darling.)
Baby's first ski cap http://twitpic.com/2hg6c
— Christopher Finke (@cfinke) March 27, 2009
Christina was surprisingly calm throughout the entire delivery. She never panicked, and seemed to know exactly what to do at all times.
9cm, getting close. Christina's so collected you'd swear she has done this before.
— Christopher Finke (@cfinke) March 27, 2009
At 11:30 pm, the nurse told us that it was time for Christina to start “practice pushing.” Apparently, it takes some women a couple of hours before they learn which muscles to use, so they need to start practicing before it’s actually time.
Time to push!
— Christopher Finke (@cfinke) March 27, 2009
Christina was so good at pushing, she apparently didn’t need any practice. An hour later, we had seen the head, and Christina’s doctor was on the way to deliver Gabriel for real.
I have seen the head, and it is awesome!
— Christopher Finke (@cfinke) March 27, 2009
Half an hour later, after a total of two hours of active labor, Gabriel was born. There was a bit of a scare towards the end: Gabriel had turned face-up (not ideal), and Christina had started to bleed from an internal tear, so her doctor recommended the use of a vacuum in order to speed things up. (The vacuum in this case is not to suck up the extra blood, but rather to “suck” the baby out. I use “suck” in quotes because I’m sure there is a technical medical term for what is happening, but hey, when you say “vacuum,” I think “suck.” To be honest though, it was more like the doctor was playing tug-of-war with Gabriel’s head.) We agreed, and maybe 30 seconds after Dr. Princ started using the vacuum, Gabriel popped out, and started doing everything he was supposed to do: crying. (That’s all babies are supposed to do, FYI.) They weighed (7 lb. 13 oz.), measured (22 inches), and tagged him (20 pointer), and by 2am, it was all over.
Introducing Gabriel Finke: 7 lbs 13 oz, 22 inches. He is perfect. http://twitpic.com/2hmxw
— Christopher Finke (@cfinke) March 27, 2009
Gabriel less than a minute after birth http://twitpic.com/2hnb5
— Christopher Finke (@cfinke) March 27, 2009
Feed Sidebar 4.0 Released
Feed Sidebar 4.0 has been released for all users of any previous version of Feed Sidebar, and this version has two great improvements over version 3.1:
- You can now sort your feeds by three different criteria:
- Feeds are now updated constantly, rather than all at once. So if you have 60 feeds, and you have Feed Sidebar set to update once per hour, instead of updating all 60 feeds after an hour, Feed Sidebar will now update one feed every minute. This should fix any issues users have had with Firefox locking up while feeds are being update.
You can read more about these improvements in my previous blog posts: Feed Sidebar 3.2 Beta 3: A Gentler Feed Updater, Feed Sidebar 3.2 Beta Update, and Sort your feeds in Feed Sidebar.
To upgrade to version 4.0, you can install this update from Mozilla Add-ons, or if you already have have Feed Sidebar installed, it will be automatically downloaded for you.
TwitterBar 2.4, Now With 2% Longer Tweets
Update: TwitterBar was sold to HootSuite and renamed HootBar in March of 2011. TwitterBar for Chrome was discontinued in October of 2012.
TwitterBar 2.4 was released this morning, and the main change is that it now integrates the URL shortening service tweak.tk. The URLs that .tk generates are the shortest you can get, weighing in at 15 characters; TwitterBar’s previous URL shortener, is.gd, generated 18-character URLs.
What does this mean? Well, now when you post a URL to Twitter with TwitterBar, you have 125 characters for your message instead of 122. So feel free to toss an extra LOL or BRB in there; you’ve got plenty of room.
Happy National Donut Day!
I’m going to use this occasion to test Mahalo’s new embeddable pages:
Update: They don’t work anymore.
Wolfram Alpha
Wolfram|Alpha, the new computational knowledge engine, seems like it has a lot of potential. But for some reason, I’m not so sure about its mathematical abilities:
Feed Suggester for Feed Sidebar?
I was thinking it would be neat to add a recommendations component to Feed Sidebar. It would work like this:
- You’d opt in to share your list of feeds anonymously.
- Your list of feeds is sent to a central server.
- Other users do the same thing.
- Magic happens.
- The Feed Sidebar would occasionally recommend a new feed based on what other people like you are reading.
Would anyone besides me use this? I know that other Web-based feed readers have similar features, but those of us who control our own data are getting left out in the cold.
Abandoning Yammer Time
I am going to be abandoning development of the Yammer Time extension for Firefox. I no longer have the time or motivation to maintain it.
Is there anyone out there is interested in taking ownership of it? If so, e-mail me at chris@efinke.com, or leave your contact info in the comments. It’s fairly simple as extensions go, so even if you’re just getting started with addon development, you shouldn’t have any problems understanding the code.