12.30.08/Using Ubiquity to Replace alert()
Bad habits are hard to break, especially when they’re your own, but what about other people’s habits….impossible? Difficult, perhaps, but not insurmountable.
When we first encounter Javascript programming, the quintessential function that enamors us all is alert(). Plunk that baby down into a page and, bam (or more accurately…thwunk!), a magical dialog box appears, grabbing the viewer’s attention and providing useful/useless information:
But is this the best way to convey important information? Probably not. For one, the alert box is modal; a user cannot continue with their task until they’ve clicked OK — their train of thought is broken.
One solution to this problem is to use transparent messaging. Rather than doing a disservice by re-explaining, I’ll refer you to read Aza Raskin’s article on Monolog Boxes and Transparent Messages. Or, if you’d like to see them in the wild, check out Songza: we utilize transparent messages to convey the state of media player (play a song, then press the space bar to Pause.)
Now, that’s all well and good, you might say, but what about sites that I don’t have programmatic control over? As a user, I’m at the mercy of whatever features the site programmer chooses to implement. Not true. Enter Ubiquity.
Ubiquity and pageLoad_
One of the goals of Ubiquity is to extend functionality across websites, regardless of whether or not the original programmer had coded that type of interaction (i.e. language translation, map insertion, word definition, etc). As such, Mozilla Labs has given programmers a bevy of authoring tools, including the pageLoad_ prefix. If, in your command file, you create a function that starts with pageLoad_, Ubiquity will execute this code whenever a new page is loaded into the browser window. It is this functionality that allows users to override native Javascript functions, such as alert().
function pageLoad_overrideNativeFunction() { CmdUtils.getWindowInsecure().nativeFunction = function(args) { // Your code here }; };
By using this pattern, the native function is auto-magically replaced with your customized code each time a new page is loaded. In my case, I’ve chosen to override alert() with a call to create and show a Transparent Message (Note: I’ve used a Singleton with lazy instantiation to converse resources on pages that won’t call the command):
function pageLoad_overrideAlert() { CmdUtils.getWindowInsecure().alert = function(str) { TransparentMessage.getInstance().show(str); }; };
To see a working example, simply install the Ubiquity extension for Firefox and subscribe to the transparent-message command. From there, you can create a test message by issuing the “transparent-message” command, or see how it overrides alert() by revisiting this page and clicking the demo button located at the top of this article.
Note: Many thanks to Micheal Heilemann for authoring the jQuery Humanized Messages plugin. It’s what we use on Songza, and was used as a reference to create the transparent-message command.
Categories
10.08.08/Sparks Cake

It’s no secret to those that are close to me: when it’s drinkin’ time, our drink of choice is often Sparks. For those not it the know, Sparks is a malt liquor energy drink favored by those who are not sophisticated enough to drink Red Bull and vodka, but need that extra little kick to keep them up past the 10pm bedtime from a night of consuming beer.
Last weekend, when it came time to find an appropriate way of ringing in Shawn’s birthday, I could think of no finer way to celebrate this joyous event than by combining two of his greatest loves: cake and malt liquor.
Months prior, I had been reading about another sweet oddity: The Diet Coke Cake. Essentially, it involves purchasing an off-the-shelf box of cake mix and supplanting eggs/oil with a can of Diet Coke. Surely, I thought, if you’re able to make a delicious cake by using a can of soda, then a dessert of equal measure can be created with a can of Sparks. Turns out….you can. I submit to you, dear reader(s), the recipe for Sparks Cake:
- One 24oz Can of Sparks
- 2 Boxes of Cake Mix (I used Duncan Hines White Cake Mix, but any ol’ mix will do)
- 2 Packages of White Frosting
- Food Dye
- Decorative Goo
It’s really no secret: just combine them and cook as the package indicates. In this case, I chose to decorate the cake to resemble a can of Sparks. Note: Expletive and other decor courtesy of Jeff Skinner.

Categories
05.21.08/We May Be In The Midst of a Hand Drying Revolution
Every now and then an industry sees a period of tremendous innovation. I believe we may be at the tail end of a growth spurt in the realm of soda pops, but in the zany world of hand dryers the revolution is just beginning.
Until recently, I was a big fan of the Xlerator. That is, until Dyson entered the picture.
I used this crazy contraption last night at Kristen Nicole’s welcome home party. This thing was, quite possibly, the most incredible thing I’ve ever used to dry my hands (albeit a short list).
Categories
04.08.08/C is for C (programming language), that’s good enough for me
Not nearly as catchy as cookie, but that’s what you get when you Google for the letter “C”: the C programming language.
A list from A to Z on the top results when you Google the letters of the alphabet (as of Tuesday, April 8th, 2008):
A – Links in HTML documents (the A tag)
B – Physical Review B
C – C (programming language) – Wikipedia
D – Intro – D Programming Language
E – E! Online
F – Summary for FORD MOTOR CO – Yahoo! Finance
G – Gmail: Email from Google
H – Hydrogen – Wikipedia
I - I – Wikipedia
J – J – Wikipedia
K – K – Wikipedia
L – L – Wikipedia
M – M (1931) Fritz Lang Movie
N – N : Puzzle-Platformer with Physics and Style
O - Welcome to O, The Oprah Magazine
P – HTML P TAG
Q - Q – Wikipedia
R - The R Project for Statistical Computing
S - craigslist classifieds: jobs, housing, personals, for sale …
T - MBTA.com > Official Website for Greater Boston’s Public …
U – U – Wikipedia
V – V (TV Series) – Wikipedia
W - W Hotels
X - X The Band-Official Website
Y – Yahoo! Mail: The best web-based email!
Z – Z – Wikipedia
It seems pretty obvious that Wikipedia would top the rankings for most of these.
Most surprising: S for Craigslist?!?!
Categories
04.03.08/Subliminal Resource Locators
Earlier in the week, Jacob turned me on to an interesting article about readable URLs. It’s been sitting in the back of my mind ever since.
Today, I was poking around Muxtape, to see how they do what they do. I ran across something interesting in their Amazon S3 URLs, where they house the MP3s:
http://muxtape.s3…?PLEASE=DO_NOT_STEAL_MUSIC&AWS…
Funny. What a great way to communicate a message.
On a related note, I have to say that I love Muxtape. Justin Ouellette has done a great job of giving users what they want while keeping the concept, process and interface very simple. It follows many of the same principles that we try to follow at Songza. I’m really interested to see where it goes from here — hopefully, it stays true to its minimalistic ways.
P.S. My Muxtape is at http://srobbin.muxtape.com
Categories
02.23.08/A Spoonful of Hip-Hop Helps The Guilt Go Down
Seems like it was only yesterday that ad execs were pitching a flurry of educational videos which sought to capture the hearts and minds of America’s youth through hip-hop; one of my personal favorites being the Wendy’s training video, Grill Skills. Now, thanks to the good folks at the Chicagoist, I’m adding this video to the top of that list.
Note to the RIAA: take a page from the gaming industry play book of the 90′s; add a dash of entertainment to your shame…..shamertainment. Why not get Metallica to create a PSA on file sharing, “The Thing That Should Not Be (Copied)?”
P.S. We ARE the posse of the future.
Categories
07.23.07/Rest Assured, The Beatles Did It First
Gather ’round kids, Grandpa’s gonna tell you a story.
Long before the Internet, we used to have to settle arguments the ol’ fashioned way: out-bullshit your opponent. There was no final word. You either gathered enough people to support your argument, or raised your voice until your friend submitted and cried. Either way, the lines between fact and crap were blurred at best.
For instance, I remember when I was in college, a friend of mine was convinced that Alfonso from Silver Spoons was Mario Lopez, aka Slater from Saved by the Bell. Wh-wh-wh-what? They’re not even the same ethnicity! Clearly, my argument against said statement was right, but I couldn’t support it (yes, I went to college before the web was widely accessible). So, it wasn’t until several months later, when I was at home for the summer, that I had a Saturday morning eureka moment, having caught an episode of Saved by the Bell, cross-referencing an old copy of Teen Beat magazine (not my subscription, I assure you). However, trying to rub a victory in one’s face several months later hardly satiates the ego. In the end, I was left with nothing more than my own personal satisfaction. What a bunch of hooey….
Flash ahead — ahem — 10 years, and I was at the Pitchfork Music Festival with my friends, discussing Slint and their final album, Spiderland. Here’s the conversation/argument, as I recollect it:
Friend: Man, Spiderland was such a great album.
Me: Totally (said with a Valley-Girl-esque accent)
Friend: And a great album cover too…so original….
Me: Actually, it’s a tribute/rip-off of an old Beatles photo.
Friend: Which one?
Me: I’m not sure if it was an album cover or not, but it’s pretty well know.
Friend: Whateva. I call bullshit.
Me: No, seriously. I know that they’re in a pool, but that’s all I can remember. Hang on a sec… (pulls out web-enabled phone).
[One minute later]
Me: Here, see….. [shows Beatles photo to friend]

Ignore for a minute, if you will, that I’m an argumentative, OCD a-hole that’s got to settle an dispute like this on the spot. Instead, think about how rapidly our world has changed in the past 10 – 15 years. All of the world’s information, though some non-essential, is at our fingertips, literally.
Perhaps it’s just the old man in me, one that lived back before we had voicemail (before tape-based answering machines even), that’s astounded by how easy it is to reference anything; how easy it is to be a know-it-all; how the sum of these technologies are changing how we interact with friends and strangers.
Let it be said that I, for one, am all for Progress. Let it continue to achieve new heights, and offer us better and faster ways to destroy friendships over petty disagreements.
The Beatles did it first. So there.
Categories
07.18.07/We Are Apple (Leading The Way)
Ever since I saw I’m Gonna Git You Sucka, I’ve always imagine myself struttin’ down the street with a funk band behind me, telling people, “They’re my theme music.”
Thanks to the iPod (and now iPhone), I get to live that memory, or at the very least I can do my best Bee Gees impersonation.
All that aside, given my new business venture, I feel the need for a corporate theme song. Perhaps something like the one that Apple created for its 1984 roll-out of the Macintosh computer. Wow.
It’s worth a read of the YouTube liner notes to get the full context. Thanks, Sandy, for passing the gem along.
Categories
07.06.07/It’s Been a Long Lonely, Lonely Time
Yikes! Has it really been two and a half months since my last post? Even that, to call Weng, Weng a post is a stretch.
So what the hell have I been doing that’s so important to neglect this here blog?
I Quit My Job
Somewhere around May 1st, I left my cushy job as a real estate web developer and plunged head first into the abyss known as freelance work. The first couple of months were spent working out my home and coffee shops with my web pal, Sandy Weisz of Methodtree. Recently Sandy, myself, Andrew Huff of Gapers Block, and four of the most brilliants youngsters I know of (known to the world as Humanized) acquired an office space. Though we are all independent worker bees, we’ve quietly dubbed ourselves ASAJASA, deriving from the first letters of our names and our fondness for acronyms/palindromes. Want to know what it’s like to work with us? Check out the photos and video here.
Projects, projects, projects
In addition to filling my week with billable client work, I’ve attempted to carve out time for my personal, non-billable projects. These have included, but are not limited to: Tappity, Twitter Timer, Retweet, and Just Some, Inc. (my official company name).
Trying My Hand at Design
Lastly, and probably the most daunting of all these items is my attempt to become a better designer. Until now, I have always relied on the creative genius of my friends and colleagues (mostly Jeff Skinner), and have stuck with what I do best: programming. However, as I quickly learned with the start of my freelance work, most clients want the total package, soup-to-nuts, and so on and so forth — something which required me to come out of my design shell.
That said, I’m proud to announce the redesign of this site, srobbin.com. With that announcement also comes a pledge that I shall never let this lapse in content transpire as long as it has in the past few months.
On a lighter, and non-salesy note, should you know of anyone who is in need of a website or complex web application, I’m open for business. Please feel free to contact me at scott [at] justsome dot com.
Until next time….
Categories
04.15.07/Chicago Technology Meetups

(Pictured above: Kristen Nicole of 606tech.com and a Llama)
This past Thursday, I attended my first Tech Cocktail, a quarterly Chicago technology meetup, organized by Frank Gruber and Eric Olson. I have to say, as someone new to these type of events, it was great and incredibly worthwhile. What finer way to spend a Thursday night than to drink free draft beer from a glow-in-the-dark mug, while engaging in uber-dweeb conversations with some of Chicago’s brightest technology minds?
Just last month, Sandy and I attended the Chicago Beta meetup at Goose Island Brewery. Organized monthly, Chicago Beta provides a forum for local startups to present themselves in a 60-second pitch to fellow startup peers. As good luck would have it, Tappity won the pitch award, which included an upcoming interview on BusinessPOV.com and 2 free classes at Digital Bootcamp.
Now, I’ve always been told that "networking" is the key to becoming a successful business person. To some, that means being a social whore, slathering the world with their business cards, and hoping to find a person or organization who will propel them to riches, or in some cases a mouth full of gold-capped teeth. But to me, and what has become apparent over the last few weeks, is that networking has less to do with the success of your business and more joy of connecting to people with like minds. Through TC4, Chicago Beta and SXSW, I’ve met some great friends, who are sharing in the same experiences that I am, trying to create websites from nothing, and learning the ropes of establishing a small business. Chicago provides a wonderful, non-competitive environment for technology, and it’s apparent when you attend one of these meetups.
For those who live in Chicago, I highly recommend attending one of the meetups listed above. For those who live elsewhere, take a moment to learn about meetups in your area — it’ll be well worth your collective whiles.




