Stuff for Web Professionals

The Challenge of Easy Integration

Steve Slayer - Wed, 2010-03-10 23:58

The first in a series, I give you SocialThing for Websites, the Challenge of Easy Integration, a short article about how we kept the SocialThing's client integration to one line of code for the partner to paste in.

Granted, this is the baseline implementation. If you want the client to use your authentication, or post stuff into feeds, there is a bit more work to do, though not much.

Enjoy!

aimapi-core and SocialThing

Steve Slayer - Wed, 2010-03-10 23:58

Oh hi, long time no speak. How's every little thing?

I've spent the past few months working on the SocialThing for Websites client, which you can see in action on AOL's country music blog The Boot. Techcrunch didn't tear it apart, and the comments aren't as rabid as one might expect on an article about an AOL product, so I suppose it came out next-to-all-right.

The client itself was a lot of fun to work on, and there were a lot of interesting technical hurdles that we had to hitch our pants way up and leap over which kept things awfully interesting. More on those later, though.

For now, I wanted to point you towards the backbone of the SocialThing client, aimapi-core.js, now hosted on Google Code. This is a pared down, bare bones, just-what-you-need-and-nothing-else version of the original Web AIM Javascript API that AOL released back in November of 2006.

So, you ask - besides dropping all the UI stuff that you weren't particularly interested in the first release, what's so great about aimapi-core? Well...

  • Its only 44k (with white space and comments). The original is 80k and does less.
  • More transactions (some of which didn't exist in 2006):
    • addBuddy and removeBuddy
    • getStatus and setStatus
    • getBuddyFeed (AIM's lifestream - see buddyupdates.aim.com)
    • pushFeed - a means of pushing content into a user's buddyfeed/lifestream
    • reportSpim
    • and more!
  • Alternate means of listening for events. The original codebase used long polling via script nodes. Unfortunately this meant rapid polling in Firefox because of a bug in that browser that prevents more than one script from downloading at once. This rapid polling was both memory intensive and had the status bar constantly letting you know that it was "Waiting for 12.345.79.80..." which kinda sucked.

    So how was this resolved?

    • If AIM.params.useSWFListener is true, the API uses swfobject to pull in swfsocket.swf which uses AS3's socket API to listen for host events (IMs, presence updates, etc). Many thanks to my pal Rick Gardner for writing this piece.
    • If swfsocket fails to initialize, the API falls back to scriptiframe.js, a clever work around that James Burke came up with that uses an iframe to long poll for events.

    And if all that fails, it goes back to using dynamic script nodes to listen for host events.

  • And more! (...that I still need to write documentation for!)

So give it a look, and let me know what you think. Oh, and for those wondering - no, the SocialThing client is not a frame a' la the diggbar. Come on, give me a little credit.

Does it .match?

Steve Slayer - Wed, 2010-03-10 23:58

I've been doing some work in AS3 of late and stumbled onto a bit of a gotcha last week that I thought I'd share since it caused me about 15 minutes of frustration.

The gotcha pertains to a significant difference in how Javascript and AS3 handle the match method of the String object when the global flag is passed. Consider the following Javascript snippet:

var r = /[a-z]/g
var s = "abc";
var x = s.match(r);

This will return an Array with values "a,b,c" in both Javascript and in its AS3 equivalent.

Now, consider this code, replacing the value of s with something that will not match:

var r = /[a-z]/g
var s = "123";
var x = s.match(r);

In Javascript, this will return null, but AS3 will return a zero length Array. Which means that this...

if(s.match(r)) {
// do stuff...
}

..would always be true in AS3, but false in Javascript. I spent about 10 minutes thinking there was something wrong with my regular expression, and another five thinking there was something wrong with AS3's regexp engine before I realized what was happening.

So who has it right? According to the ECMA 262 spec, AS3 does (see page 101-102). Of course, Mozilla's documentation claims that it will return an Array as well with no mention of null on that page, while Microsoft's JScript documentation admits it will return null if no match is found.

Good times.

Emre Grayson Chipman

Steve Slayer - Wed, 2010-03-10 23:58

My son, born this evening weighing in at 9.33 pounds, measuring 20 inches.

(And that's why I wasn't in Austin this year!)

SXSW Time!

Steve Slayer - Wed, 2010-03-10 23:58

And I'm not gonna be there this year. I know, I know - I should have told you sooner. You're probably already in Austin or in flight, now wishing you had advance notice of this turn of events so you could have just stayed home. I'm sorry, I really am. This really was terribly inconsiderate of me.

Soldier on, brave geeks, and know that with enough Shiner Bock, anything can be fun even if I'm not there. Be strong. And take lots of pictures. And twitter a lot. Let me experience Austin through your internets.

(Any day now I'll have an announcement of why I'm not there this year...)

Three Drawings and a PSA

Steve Slayer - Wed, 2010-03-10 23:58

These three drawings I did leading up to Christmas - I've kept them private on Flickr and not published them here as they were gifts for family and I didn't want to spoil the suprise.

Colored Pencil Drawing entitled Clara at 17 Months

  • Clara at 17 Months
  • 8 x 10"
  • Colored Pencil on Eggshell Mi-Tients Paper
  • November 20, 2007

Colored Pencil drawing entitled Big Smile

  • Big Smile
  • 8 x 10"
  • Colored Pencil on Cream Mi-Tientes Paper
  • December 11, 2007

Colored Pencil drawing entitled Clara at 18 Months

  • Clara at 18 Months
  • 10 x 8"
  • Colored Pencil on Eggshell Mi-Tientes Paper
  • December 21, 2007

And with those, I'll no longer be posting drawings on slayeroffice. 2008 seems a good a time as any to get the site back on the web development talk track. If you're interested in following my portraiture work, you can find it on my new drawing blog. Or, just grab the feed.

Page 222

Steve Slayer - Wed, 2010-03-10 23:58

My good pal Mr. Lawver has included a reference to my Page Info Favelet on page 222 of his new book.

Congratulations to Kevin, Kimberly, Christopher, Rob, Meryl and Mark on the book. I'm not sure when it comes out, but with that caliber of authorship (and obvious good taste) its a must-own.

Maya

Steve Slayer - Wed, 2010-03-10 23:58

Graphite portrait of a friend's new baby entitled Maya

  • Maya
  • Graphite on Cold Press Illustration Board
  • 11 x 8.5"

A portrait of a friend's new baby.

Self Portrait III

Steve Slayer - Wed, 2010-03-10 23:58

Graphite drawing entitled Self Portrait III

My first go at graphite in about 12 years. It didn't take nearly as long as a colored pencil drawing, and it was awfully nice to be able to use an eraser. I may stick with it for a little while.

The Angry Cow

Steve Slayer - Wed, 2010-03-10 23:58

Colored pencil portrait entitled Clara the Angry Cow

Clara in her Halloween costume impersonating her Daddy's scowl.

As well, Happy 5th Birthday, slayeroffice!

Gianmarco Magnani

Coudal Partners - Wed, 2010-03-10 22:55
Silence Television, illustrations and prints by Gianmarco Magnani. Sweet lines and machines. Love the "Forgotten Monarchy" series. Via Netdiver.

Reader Play: Google Reader's New Fast Flip Style Interface

Read/Write Web - Wed, 2010-03-10 22:18

google_reader_logo_mar09.pngGoogle just launched a new Google Labs product for Google Reader: Google Reader Play. Reader Play is a new, highly visual way to browse your Google Reader subscriptions that is somewhat reminiscent of Google's Fast Flip. It replaces the busy Google Reader interface with an interface that focuses on a single story. Whenever a post includes videos or images, Play with highlight these and give you the option to read more of the text as well. This new interface allows you to browse through the feeds you already subscribe to, but Google Reader Play also emphasizes Google Reader's ability to recommend items from around the web for you based on your preferences.

Sponsor

Big on Recommendations

google_reader_play_small.jpgAs Google notes, Play will learn from your preferences, based on the articles you read and "like." You can also choose from a set of categories (tech, entertainment, arts, business, etc.) and Google Reader will create a personalized stream of items just for you. According to Google, Play uses the same algorithm as the Recommended Items feed in Google Reader.

Play will even work if you don't have a Google account. While you can't star, like or share items, you can still browse interesting posts based on the categories you choose. This should make it a good tool for those users who don't want to go through the effort of setting up a feed reader and subscribing to hundreds of different feeds.

Get Started

To use Google Reader Play, just head over here or look for "View in Reader Play" in the folder settings in Google Reader. You can switch stories by using your arrow keys or choose the slideshow mode that will automatically forward to the next story after a few second.

google_reader_play_large_2.jpg

Discuss


In Perspective

Coudal Partners - Wed, 2010-03-10 21:44
Two photographers in two cities shooting and posting a photographic dialogue live while a musician creates a sound track. That was Week #3's Exhibition Match #3 of live Layer Tennis. Man, that was some fun. Here's the back story from the shooters. Match #2 was amazing, two expert typographers created and modified a new typeface in real time. Check Mark Simonson's recap, Beneath the Volley of the Fonts. The Season Opener was Khoi Vinh and Nicholas Felton with comments by John Nack and the guys have posted a terrific recap of what they did during the game, and why. It should be required reading for future players.

Peeling Back the Layers

Coudal Partners - Wed, 2010-03-10 21:20
Naz and Sam Peeling Back the Layers on last Friday's amazing photographic and musical live Layer Tennis Match. No Tennis this week by the way, we'll be back live on the 19th.

Chained Up in the Dungeon of Emperor Xing

Daring Fireball - Wed, 2010-03-10 21:02

If you’re not hooked by the end of the second paragraph you might as well stop there.

 ★ 

An Entrepreneur's View On The Benefits of Coworking

Read/Write Web - Wed, 2010-03-10 21:00

Lottay LogoWe've all heard of the big company that started as two guys in their garage, but these days, with startup organizations and incubators, more and more success stories seem to feature companies that built their success from group collaboration. One excellent example of how startups can take advantage of collaboration is to work in a coworking environment with other companies and entrepreneurs.

Sponsor

Tuesday I had the opportunity to chat with Harry Lin, CEO of Lottay, an online gifting service that has spent a large portion of its short history coworking with outside developers and entrepreneurs. Starting in October of last year, the company spent six weeks working in the offices of San Francisco-based Ruby on Rails development house Pivotal Labs. In December they moved into a space at the Ventura Ventures Technology Center where they work alongside other consumer Internet startups, sharing ideas and resources.

Harry_Lin"The thing about a startup is that you're always under resourced; you never have enough people," Lin told ReadWriteWeb Tuesday. "So the more you can make out of less, the better off your are, the faster you can go, and a startup is all about speed."

Lin, formerly the Vice President of ABC.com and General Manager of Evite, was brought on board at Lottay after the company received Series A funding in the summer of 2009. Below are some highlights from my discussion with Lin on the benefits of coworking environments for startups.

How did Lottay benefit from the Pivotal Labs experience?
We camped out at the Pivotal Labs office for the entire six weeks. We were in San Francisco and sitting in their office everyday with the two developers that were on our contract. The reason this worked better is that it was very intense and very concentrated; you had no other distractions. The other reason it was fantastic is that its a room full of 25 top notch Ruby on Rails developers. We were only paying for two of them in our engagement, but there were the other 23 sitting in that room working on various things.

Pivotal Labs LogoWe would come up with a problem or a hurdle we couldn't get over and we would just shout out, "Hey has anyone ever done this with a library?" and some guy would jump up and say, "Yeah, I've done that!" Voila! Problem solved. And that would happen all the time. So we were getting the benefit of this very open, huge brain trust that Pivotal had even though, technically speaking, we were just paying for the two guys. The third other thing I'd say was great about the environment is that they had other clients in there. So we got to meet, talk to, and get to know some other Internet companies, and that was really cool."

What is the experience like now in Ventura?
VVTC LogoThere are 12 of us in this incubator here in the city of Ventura; it's a very deliberate ecosystem the city is trying to push, and we're part of that ecosystem. We all speak the same language, the same jargon, the same shorthand. If one of us comes up with a brilliant idea or an interesting strategic question, we'll grab each other, white board it, sit in a room, chat in the hall way - the kind of random things that happen when you're all physically located in the same place. The other thing that we benefit from is that because this is run by the city, we get a lot of support in the form of a fantastic rate on rent, free wifi, marketing and public relations, and they've helped us find recruits when we have openings to hire people. The city is more than just a landlord, they're trying to jump-start this ecosystem.

So you would suggest that early stage startups try to find coworking space?
If possible, I would not do the "in your basement" or "in your garage by yourself". Those are the legendary stories we like to hear about, but I think the majority of successful startups has had some kind of coworking environment. I worked for nine years in the Bay area and I know that while there are official incubators, there are also these offices where nine out of the ten companies there are high-tech companies. Being with other people who are doing the same thing is hugely beneficial.

In the consumer Internet space, especially with how the Web has evolved over the last decade, everything is getting more social and more open, both in terms of the consumer behavior and in terms of the development and how things are produced. So it just stands to reason that in launching and trying to grow these types of businesses, you should be more social as well.

Is there anything startups should avoid when in a coworking environment?
It is tempting to do a lot of partnerships with other startups because you're there, you know each other, you understand each other's pains and trials and tribulations. Resist the temptation unless is makes a lot of sense. Usually what a startup needs by way of partnership is a large established company.

What is your advice to the young startups out there looking to launch or grow their business?
There will be 100 problems to solve every week. I can guarantee you that at least 75 of those problems have already been experienced and solved by someone else. That's the problem with being in a garage or a bedroom by yourself; you'll probably end up trying to solve those 75 problems yourself. When you're colocated and coworking with other entrepreneurs, you can share. "Oh, you've got that problem? I've got that problem, and here's the solution." You can benefit from their learnings and not have to reinvent the wheel, which saves you a lot of time.

Discuss


Windows and TopView Origins

Coudal Partners - Wed, 2010-03-10 20:35
Gruber just posted this great piece of historical nerdery by Tandy Trower, "The Secret Origin of Windows," which lead me to hunt for the tale of IBM's TopView and the complete OS/2 timeline. I'm going to stop now before the rest of my afternoon is consumed with something like AmigaOS.

Brizzly for iPhone (Née Birdfeed)

Daring Fireball - Wed, 2010-03-10 20:29

Birdfeed, Buzz Andersen’s outstanding iPhone Twitter client, has been purchased by Brizzly, updated, and rebranded as Brizzly for iPhone — and is now available from the App Store as a free download. There are some nice additions (such as the addictive pull-down-to-refresh gesture introduced by Tweetie), but a few steps back as well, including the loss of Birdfeed’s visual charm.

My main gripe is that it’s not a direct Twitter client any longer. Rather than sign in to Twitter, you sign in with an account at Brizzly. If you have multiple Twitter accounts, you must hook them up to your Brizzly account. I don’t see any benefit to this, but I do see an extra potential point of failure. The deal breaker for me, alas, is that they seem to have eliminated Birdfeed’s Instapaper support.

On the upside: our long national nightmare of conflating Birdfeed and Birdhouse is now over.

 ★ 

The Location-Based Wars Rage On: Gowalla Adds Comments, Photos & More

Read/Write Web - Wed, 2010-03-10 20:03

gowalla logoAs many in the Twitterverse have dubbed this week, the battle of location based apps continues, as both Gowalla and Foursquare release yet another update to their iPhone apps today. And these are some big guns coming out to accompany the various real-life incentives, contests and whatever else these the two companies can do to take the focus at this year's SXSW.

Both apps are showcasing new design features the companies are calling "fresh" and other such things, and while they surely are, some of these other features are what really stand out.

Sponsor

Foursquare is surely the less notable in this release, in our opinion, as it's list of new features is shorter and less impressive. It's boasting a faster, more efficient check-in and shout flow, a "Places" view that supports categories, a history view of places you've been and a "pull-to-refresh" feature. These are nothing to sneeze at, but we think Gowalla is releasing some functions that blow these away.

First of all, Gowalla is bringing photos to the location based game, allowing users to upload a photo after checking in. Users can also browse their friends' photos and look at any that have been taken at that specific location.

Next, it's bringing some interactivity to the game, with check-in commenting. When a friend checks in at a place down the street, you don't need to change over to your Twitter client and send them a DM, you can just comment on their check-in. And if you forgot to type a check-in message when you checked in to a spot, you can go back and add it.

In addition to these, Gowalla is bringing out new friend browsing features, enabling you to look through friends, friends of friends, and even their bookmarked spots and trips. With "spot details", including address, phone, Twitter name, Facebook page and website, Gowalla is adding that Yelp (or should I say Foursquare) aspect that was really missing - real world connection information.

And one more feature that may be overloaded next week or may be the talk of the town, "Hot Spots", tells you what the most popular spots near your location are. We haven't had time to really play with it yet, but it sure sounds interesting.

The updates just popped up in the App Store right now so go get updated and let us know what you think - who is going to win the location based battle of SXSW 2010? As far as this round goes, we're calling it for Gowalla.

Discuss


Sony Brings More Newspaper and Magazine Content to its E-Readers

Read/Write Web - Wed, 2010-03-10 20:00

sony_reader_store_logo_mar09.jpgSony just announced that it is expanding its selection of newspapers and magazines in its e-book store. Starting today, users of Sony's e-readers will be able to subscribe to 20 new newspapers and magazines, including the New York Times, Boston Globe, San Jose Mercury News, PC Magazine and Foreign Affairs. With the newspaper business in turmoil, it only makes sense for these papers to try to get a better foothold on more devices.

Sponsor

eInk vs. LCDs

For users who don't own an e-reader yet but are looking into getting one, the question right now is to either wait for the iPad and go with a regular LCD screen for reading books, or to choose a more traditional (and cheaper) e-reader like the Kindle or Sony Reader that feature electronic ink. While some users don't mind the blacklit LCD screens of their phones to read, others can't fathom reading any long-form content on these screens.

Fighting Off the iPad

For Sony, Amazon, B&N and others who are currently betting on electronic ink for their devices, one of the best ways to distinguish themselves from Apple is to offer more content over their free wireless connections and to play up the advantages of eInk. In this context, adding a newspaper like the New York Times (which is also a favorite of Steve Jobs and features heavily in Apple's iPad ads and other promotional material) makes a lot of sense. For the newspapers, getting on more devices and selling more subscriptions is simply good business. Sony charges up to $14.99 per month for these subscriptions.

Given that all of these papers could sell their own apps and subscriptions on the iPad as well - and that some of them will be available for free - the availability of newspapers may not be a deciding factor for a lot of potential iPad and e-reader buyers. Hopefully, however, we will also see a lot of innovative newspaper and magazine apps on the iPad. Chances are that these new apps will make today's traditional e-readers seem rather quaint in comparison. The availability of these apps could easily sway a lot of potential e-reader buyers to get an iPad instead.

What is your experience? Do you think e-books and newspapers just look better on eInk? Or are you waiting for the innovative newspaper apps on the iPad that will include video and other interactive content?

Discuss