Posted by Matt at 14 August 2010

Category: GreaseMonkey, Programming, google, javascript, web

Google recently updated GMail, and in the process they removed the "Select" line just under the buttons at the top. Unfortunately for most people (myself included), this was something that they used often! After reading the messages that weren’t spam, my natural motion was to select "Unread", then move up a bit and click Delete. I used it many times a day.

But after the update, the selector was hidden in a dropdown under a checkbox on the left. Very inconvenient!

So, Greasemonkey to the rescue again!  I wrote this Greasemonkey script: Gmail – Restore "Select" line including "Unread" link

This will add the "Select" line in and bring back one-click access to message selection, like this:

gmail_Select

Enjoy :)

Posted by Matt at 29 July 2010

Category: Programming, browser extensions, facebook, javascript, utils, web

Background

On July 28 2010, Apple officially released a new version of Safari, and along with it the Extension Gallery. A few weeks before the release, I received an email from Apple requesting that developers submit their extensions for consideration to be included in the gallery when it was released. I was happy that Better Facebook, my browser/script extension that I have been working on for almost a year, worked great in Safari and that I had previously figured out how to package an official Safari Extension. So I filled out the form and submitted Better Facebook to the gallery.

On the morning of July 28, I got an Google Alert email with a new match for the term "Better Facebook" (I am a self-stalker!). It pointed me to the Safari Extension Gallery, and I knew that I could expect a bump in traffic for the day.

Thankfully, Better Facebook is prominently featured in the gallery, near the top of the listings, and the first extension to be listed in the "Social Networking" category:

bfb_gallery

Impact On Site Traffic

Previously, my site got around 1,000 hits a day – sometimes more, which I was always pretty happy with. But you can see the history compared to July 28!

bfb_stats_long

Looking closer at just the one day of traffic, I found that I got over 16,000 hits to the site itself!

bfb_stats_day

Looking at the referers, I found that over 10,000 of those hits came directly from the Safari Extension Gallery:

bfb_stats_referers

I was happy to see that Better Facebook was mentioned in other stories about the Extension Gallery also, including ZDNet and Lifehacker.

I haven’t totaled up the number of actual downloads yet, but I did exceed my bandwidth limitations yesterday. I might need to increase my hosting capabilities if this continues.

Impact On Facebook Page

Better Facebook also has an official Page on Facebook, and the impact on the number of people who "Like" it was dramatic!

The history of "Likes" of the page looks like this:

bfb_stats_fan_history

A slow, steady growth pattern to what I considered to be a pretty impressive number – 8,500 fans before July 28th. But on the day itself, I saw an impressive growth of almost 2,000 new fans! That put the page over 10,000 fans, which is a number that many companies and pages would envy. As I write this, the page stands at 10,691 fans and it just keeps going up. It will be interesting to see the historical graph once it is updated in Facebook Insights.

Conclusion

I have put many hours of work into Better Facebook, and I’ve been happy to see it grow and its popularity slowly increase. I find it incredibly useful for myself, and most users seem enthusiastic about what it does also. The problem has always been how to get it to "explode" and really take off and find a wider userbase. Being listed in the Extension Gallery has finally been the spark that made this happen, and I’m very happy about it! It’s a fun, interesting experience and I get to learn a lot from it. It helps me create better software and learn new ways to share information and interact with users in the social space. I’m grateful for the exposure, and humbled by the positive reactions of thousands of users.

Now… can I somehow profit a little from this? Heh. We’ll see…

Posted by Matt at 26 March 2010

Category: GreaseMonkey, Programming, browser extensions, facebook, javascript

I had a number of users report problems with my Better Facebook! Firefox Add-on. The error was always with JSON.parse(), and it only happened with the Add-on, not the Greasemonkey version of the script. I was stumped for over a month. Couldn’t figure it out.

Finally, I found the root cause and solution.

The problem was unicode strings being passed into JSON.stringify(). This sometimes resulted in an invalid JSON structure, which then failed when passed to JSON.parse(). The root cause was not within my code, but within the Greasemonkey User Script Compiler that I used to create the Add-on.

The problem was that the script was not being read in using UTF-8, so when executed it didn’t properly handle UTF-8. In the script-compiler.js file, line 22 (for me) I found this:

var channel=ioService.newChannel(aUrl, null, null);

I simply had to change the line to this instead:

var channel=ioService.newChannel(aUrl, "UTF-8", null);

I re-packaged the add-on and the problem disappeared! Hopefully it anyone else runs into this, a quick Google search will find this page. In all my searching, I hadn’t come across anyone else talking about this specific issue. But solving a very needle-in-a-haystack problem is very rewarding, and I’ll be glad to stop getting error reports!

Posted by Matt at 10 February 2010

Category: GreaseMonkey, Programming, browser extensions, facebook, javascript, web

better_facebook_large I have officially released BetterFacebook.net to house my "Better Facebook" greasemonkey script and Firefox add-on.

The script has been updated to work with the new Facebook layout, and also now supports Chrome!

Check out the site and the script. I hope you find it useful!

BetterFacebook.net

Posted by Matt at 19 January 2010

Category: browser extensions, web

better_facebook_large Today my Better Facebook Firefox Add-On was approved to go public. It took a while (feels like the Apple App Store!) but after a few revisions it was finally put through the process.

This is just a re-packaging of my Better Facebook Greasemonkey Script that does the same thing.

The functionality includes:

  • Mark your Live Feed as "read" so old posts are hidden by default. Quickly and easily only see new posts
  • If new comments are found on old posts, they will be shown and highlighted for you
  • Hide or minimize by story type. For example, stop seeing all notifications about who your friends became friends with!
  • Pin the notifications panel to the upper right, so it is always easily visible
  • Track your friends, and if someone unfriends you it will automatically tell you who it was!

This script and add-on will continue to improve as I add more features. Enjoy!

Better Facebook Firefox Add-On

Posted by Matt at 5 January 2010

Category: fun

This is Sandy, a relative of mine. She is trying to win a local Ugly Sweater contest, and needs your vote! She would appreciate it if you would take a few moments to register and vote for her.

Click here to Vote!

Here is her sob story:

My husband and I are are wearing matching vests that I embellished with tulle, pom-poms, metallic ric-rak, and holiday buttons. The flashing pins and my light-up necklace aren’t visible in the picture. Look closely to see my Santa earrings and matching headband. I drug my husband to the packed photography studio to have these pictures taken. He wasn’t very excited to put on his vest with everyone watching. We handed out the pictures at our family Christmas party, hoping to garner some votes for the ugly Christmas sweater contest. It must have worked, we won!

Thanks!

Posted by Matt at 29 December 2009

Category: google, html, javascript, web

With the upcoming release of Google Caffeine and the importance it will place on page load time when it ranks results, now is as good a time as any to learn about optimizing your site. This recent blog post by kangax is a great primer for getting rid of common, unnecessary bloat.

Perfection kills » Optimizing HTML

Posted by Matt at 25 December 2009

Category: fun

A special message from our dog Pancho…

feliznavidadbitches

Posted by Matt at 31 October 2009

Category: fun, jquery

For Halloween this year I decided to go full nerd and create a jQuery pumpkin. I’m sure no one else understood what it was, but it was unique!

PA318807

PA318762

Posted by Matt at 13 October 2009

Category: fun

On Google Maps…

tina_feys_house