Stuff for Web Professionals

The Challenge of Easy Integration

Steve Slayer - 6 hours 32 min ago

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 - 6 hours 32 min ago

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 - 6 hours 32 min ago

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 - 6 hours 32 min ago

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 - 6 hours 32 min ago

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 - 6 hours 32 min ago

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 - 6 hours 32 min ago

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 - 6 hours 32 min ago

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 - 6 hours 32 min ago

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 - 6 hours 32 min ago

Colored pencil portrait entitled Clara the Angry Cow

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

As well, Happy 5th Birthday, slayeroffice!

Managing Rapid, Unexpected Business Growth

Read/Write Web - 10 hours 2 min ago

blank-label-063010.jpg

It should be any entrepreneur's dream come true. But for some startups, a sudden, overnight explosion in growth can nearly bring the operation to its knees.

Such was the recent experience of Blank Label, a Web-based company that sells custom-made, user-designed dress shirts for men. After launching in October 2009, Blank Label enjoyed some modest initial success, selling a few hundred shirts in the first few months of business.

Sponsor

The online buzz generated by the startup's unique service was enough to capture the attention of The New York Times and other prominent media outlets, whose positive coverage in mid-May quickly sent a flood of new customers to their site. Immediately following the press coverage, Blank Label's Web traffic increased by about 4,000% overnight, and conversion rates nearly tripled.

For a brick-and-mortar store, a sudden influx of customers can result in long lines. Online, it can cause servers to go down.

The team knew there was a problem when they started receiving emails from would-be customers asking when their website was going to go back up, according to Tommy Wong, co-founder and lead evangelist for Blank Label.

"There were massive problems with the site," says Wong. "First images wouldn't load, then pages stopped loading."

They tried rebooting their web server, but found that the problems only accelerated. A few hours later, they moved their website to bigger, more capable server space.

The technical issues were only the beginning of the headaches.

Before long, it became apparent that the supplier they had hired to produce the shirts was unable to keep up with the sudden demand, despite assurances to the contrary. Orders started shipping late, sometimes with defects. Within a week of the initial influx, Blank Label switched suppliers.

A new payment processor was in order as well, because the one they had been working with was alarmed at the sudden and dramatic increase of orders and decided to end their relationship.

In addition to website stability and production issues, the company's owners found that customer service was becoming too much to handle. To keep up with the requests, the company had no choice but to hire three customer support staff members, as well as outsource some technical work via oDesk.

Another co-creation startup that experienced growing pains is a company specializing in custom-made chocolate bars called Chocri. For them, the scalability issues have been seasonal, as demand for co-created chocolate has typically peaked during the winter holiday season, causing Chocri to sell out of inventory two Christmases in a row. The overwhelming demand has required CEO Carmen Magar to make a number of changes, including expansion of staff, moving into a larger space and reassessing the company's production practices.

When they first started out, Chocri would produce the milk chocolate, dark chocolate and white chocolate candy bars separately and then recombine orders. "That's crazy when you make 50,000 bars a month," says Magar. "So now we make all types at the same time."

Today, things are mostly back on track at Blank Label and Chocri, although there is still a two-week delay on new orders at Blank Label.

"I always feel like there's more work to be done," says Wong, adding that his company is working on further streamlining the ordering process and hoping to speed up shipping times.

If he could offer any advice to budding entrepreneurs and small businesses, Wong says it would be to ensure upfront that technical infrastructure and production resources are prepared for potentially rapid growth.

When all was said and done, Wong's company had hired four new people, and switched suppliers, servers and payment processors in order to cope with their sudden success.

These days, all it takes is a mention in a few high-traffic news outlets or some social media buzz to bring tens of thousands of people to your company's door. As some entrepreneurs have learned the hard way, it quite literally pays to be prepared.


Disclosure: Tommy Wong of Blank Label has written guest posts for ReadWriteWeb in the past.

Discuss


Like a Robot Struck by Lightning: Gowalla to Launch Write API, Possibly With Pictures

Read/Write Web - 10 hours 48 min ago

Imagine you were a robot who only knew how to describe the world in four ways: self, other, time, and object. Now imagine you were struck by a bolt of lightning and found your robot brain aware of a whole new column in the spreadsheet...Place. You'd feel like a whole new robot and you'd probably sing a very happy robot song.

That's what the social web is going through right now, with the rise of location data and services as a viable pivot point for developers to work their magic with. Next week 2nd place check-in app Gowalla says it will launch at least the beginning of something a small but fascinating group of robot magicians has long waited for: a write-capable API.

Sponsor

What Kind of Apps Might We See?

Imagine a mobile app that let you check-in at all the famous art museums of the world, post photos of yourself outside them and see which museums your friends have been to. Or the best places in the world to eat grilled cheese sandwiches, if that's your thing.

Niche topical apps like that could become easier than ever to create and tie-together with larger more established location based social network providers with the availability of multiple write APIs.

You could have your cheese sandwich check-ins show up in your Gowalla and Foursquare social networks, if you want, or you could view and use an app built on top of those APIs that only published and displayed check-ins at cheese sandwich related places. It's really all about cheese sandwiches.

Leading check-in app Foursquare has an API, or Application Programming Interface, that developers can already build software on top of that reads Foursquare data and can publish check-ins to Foursquare as well. But competitor Gowalla has had a read-only API, meaning 3rd party apps could display user location data but couldn't publish back to Gowalla.

Gowalla developer Adam Keys told the company's developer email list today that unlike previous promises a write-API was coming "next week," this time he means it. "The good news is that I think I've got the foundation in place," he wrote. "I'm hoping to write up the docs and get *something* out next week, even if it's not complete API access."

The Gowalla apps include one thing that Foursquare does not - the ability to upload photos of places along with your check-in. Might that be a part of the new Gowalla API? We certainly hope so.

What Does This Mean?

It means there's more than one game in town. There's a very big difference between one hot check-in app you can publish to and two. As ReadWriteWeb's resident hacker and geofreak Tyler Gillies told me this afternoon, "I think this will really change the game as far as people's ability to create applicatons that allow you to check into a venue on multiple services."

The value of a multi-platform check-in app is that you don't have to choose, you can participate in and see your friends' activity across services you yourself don't spend a lot of time on.

At the same time, it means you get to choose. If everyone in the world was on AT&T and they couldn't call out to Verizon, you'd never leave one service because it would mean you'd lose contact with your friends.

Enter interoperability and you've got customer choice, vendor competition and a new wave of innovation.

At least that could be how it turns out with regard to the addition of interoperable Place streams across multiple vendors.

Foursquare today lets a user opt-in to have news and reviews from favorite organizations like the Huffington Post, the Wall St. Journal and the Independent Film Channel pushed automatically to their phones when they check-in near a place that those organizations have annotated. That's hot and it's just the beginning of the kind of features these kinds of location apps will be able to offer in the future. Like a robot that's been struck by lightning.

A service provider or developer can offer software users a lot if they know what the user likes, who the user is friends with and how recent all that data is. Add knowing where people, places and things are and you've got a big jump in potential recombination of factors. Not just for location apps themselves either, but in all kinds of apps that use the location data such apps make it easy and compelling to publish.

Maybe even with pictures.

Discuss


Twitter Annotations Not Coming Soon, After All

Read/Write Web - 11 hours 23 min ago

This spring at Twitter's first developer conference Chirp the big splash was a forthcoming feature called Annotations. The feature will allow publishing software to annotate Tweets with a wide open variety of metadata, which could then be read and analyzed by other software. Annotations are going to be big, if and when they launch.

At Chirp it was said that the Annotations feature would launch in the second or third quarter of this year. Now the company's developer advocate, Taylor Singletary, said today on the Twitter developers list that it's not going to work out that way. "We haven't yet announced a release date," he said in response to an inquiry, "and it's still a ways in the future while we tackle some other projects."

Sponsor

We've got an inquiry in with Twitter asking what that means, but it seems clear that the company is slammed with technical challenges, has other priorities and wrongly estimated the roadmap for this very important part of the platform. (Update: see below.)

Here's how Annotations will work. It will allow publishing software to mark-up tweets with any kind of characteristic or namespace (local weather when and where a twit did tweet, for example) and any kind of value - cloudy with a chance of meatballs, for example. Twitter messages are fairly rich with metadata already and incredibly easy to analyze and build on top of, but Annotations would open that up so far the sky's the limit.

It's worth mentioning that Twitter's unveiling of Annotations at Chirp happened around the same time as, and was widely compared with, Facebook's launching of personalized content widgets and tentacles expanding all over the web, among other things. Facebook shipped its announced project, for better or for worse.

Twitter is Busy

In another email on the same list today, Singletary said that the processing of white-listing applications to ping Twitter's servers with a production-level frequency was clogged with backlog, growing more critical in its evaluations and being re-evaluated.

A whole world of independent developers, empowered with the ability to read and write data, will inevitably build cooler things than even the smartest company in the world.

It's one of those laws like a room full of monkeys and typewriters. And it's the core value proposition of Annotations, too.Meanwhile, Twitter launched an official recommendation feature today that's frankly, not nearly as exciting as the kinds of recommendation capabilities that independent developers have built (see Mr.Tweet or Twellow, for example). Hopefully the API for this feature will be turned into more fabulous things. A whole world of independent developers, empowered with the ability to read and write data, will inevitably build cooler things than even the smartest company in the world. It's one of those laws like a room full of monkeys and typewriters. And it's the core value proposition of Annotations, too.

Numerous advertising technologies have been rolled out since Chirp as well. Annotations is a hugely ambitious strategy, and the squabbling over namespaces and standards was one that Twitter said it was going to let the market work out on its own. That made some people quite unhappy.

We've asked Twitter for clarification on the revised Annotations roadmap and will update this post with the company's response.

Update: A Twitter spokesperson responded to our inquiry and said that yes, Annotations will launch. "We'll still launch Annotations. The team that was working on Annotations is currently focused on our number one priority, which is site stability." No doubt Annotations could themselves pose scalability challenges. They could at least blow our minds, if not a series of related servers.

Below is an image of what each Tweet looks like under the hood right now, before annotations. (Click for full size view.) Each of those fields is powerful, but inflexible and defined by the company. Imagine a new one that's open to being defined however a publishing tool sees fit. That's the vision behind Annotations.

Discuss


Survey Finds Gap in Attitudes Between the Cloud "Haves" and "Have-Nots"

Read/Write Web - 12 hours 2 min ago

cloud_rainbow_july10.jpgLondon-based communications SaaS provider Mimecast has announced the results of its second annual Cloud Adoption Survey. The survey, conducted by independent research firm Loudhouse, assessed the attitudes of IT decision-makers in the U.S. and UK about cloud computing.

And the results are unsurprising, echoing the findings from elsewhere: the majority of organizations are now using some sort of cloud service, or considering moving to the cloud. Concerns about security and cost are cited as the major obstacles to adoption.

Sponsor

Some of the research highlights include:

  • The majority of organizations now use some cloud-based services. The report found 51% are now using at least one cloud-based application. Adoption rates for U.S. businesses are slightly ahead of the UK with 56% of respondents using at least one cloud-based application, compared to 50% in the UK. This is a substantial increase from Mimecast's 2009 survey, when only 36% of U.S. businesses said they were using cloud services.
  • Two thirds of businesses are considering adopting cloud computing. 66% of businesses say they are considering adopting cloud-based services in the future, with once again, U.S. businesses leaning more towards adoption than their UK peers (70% of U.S. businesses, and 50% of UK ones).
  • Email, security, and storage are the most popular cloud services. 62% of the organizations that use cloud computing are using a cloud-based email application. Email services are most popular with mid-size businesses (250-1000 employees) with 70% of organizations this size using the cloud for email. Smaller businesses (under 250 employees) are most likely to use the cloud for security services, and larger enterprises (over 1000 employees) most likely to opt for cloud storage services.

Overall both users and non-users responded positively to the idea of the cloud, believing that the cloud creates better performance (61%), sustainability (62%), and smooth integration into existing systems (56%). But the report also points to some different attitudes between those who have adopted cloud technologies and those who haven't:

  • Existing cloud users are satisfied. Security is not considered to be an issue by existing cloud users: 57% say that moving data to the cloud has resulted in better security, with 58% saying it has given them better control of their data. 73% say it has reduced the cost of their IT infrastructure and 74% believe the cloud has alleviated the internal resource pressures.
  • Security fears are still a barrier. 62% of respondents believe that storing data on servers outside of the business is a significant security risk. Interestingly, this number was higher for users of cloud applications than it was for non-users (only 59% of non-users thought it was risky, while 67% of users did.)
  • Some think the benefits of the cloud may be overstated.54% of respondents said the potential benefits of the cloud are overstated by the IT industry, and 58% indicated they believed that replacing legacy IT solutions will almost always cost more than the benefits of new IT.

cloudbarometer.jpg

"The research shows that there is a clear divide within the IT industry on the issue of cloud computing," says Mimecast CEO and co-founder Peter Bauer. "While those organisations that have embraced cloud services are clearly reaping the rewards, there are still a number who are put off by the 'cloud myths' around data security and the cost of replacing legacy IT. It is now up to cloud vendors to educate businesses and end users to ensure that these concerns do not overshadow the huge potential cost, security and performance benefits that cloud computing can bring."

Discuss


Elegant.ly Finding a Designer for Your Startup

Read/Write Web - 13 hours 17 min ago

start_baddesign.pngThe design and user experience of a site is often a make or break experience. Users, company hires and investors are heavily swayed not only by how neat a site looks, but how well thought out it is. Simply put, if your site is bad on the experience or design front, it makes it look like your team can't execute, which is about the worst thing you can say about a startup.

Finding the right people to do this is incredibly hard. Agencies generally are way out of the startup budget and can have stifling timelines, freelancers are not full time or necessarily committed to your product and hiring full time is a very lengthy process. One of the most core competencies to a startup is an industry-wide bottle neck.

Sponsor

Andrew Hyde is a startup enthusiast out of Boulder, Colorado. He has founded five companies, including a freelancer marketplace and Startup Weekend.

"Finding quality user experience and design is a problem almost every startup I've ever talked to has had," says Natty Zola, founder of travel journal site EverLater.com. "The position is part artist, psychologist, team therapist and designer. Someone that is both creative and analytical. It is a very rare."

The golden case study for excelling design and user experience in a startup is Mint.com. The lead designer of the project was Jason Putorti (who is now at Bessemer) has had quite a bit to say about the importance and process of making these hires. In reaction to this problem, he launched elegant.ly, which aims to match startups and designers.

"Elegant.ly is a network of creatives who believe in designing with empathy, elegance, and emotion to create a better user experience for new products and services."

The site is very light right now but features a beautiful integration of LinkedIn's API. Designers are currently matched to leads on startups by the staff of elegant.ly on a one-by-one basis, although a more robust site is being built out to automate the process. You can look for work in visual design, UX design/wireframes, icon design, identity design/illustration, motion design, Web development, experience/product Strategy or user research.

Discuss


Developer of Android App That Transmits Users' Voice Mail Passwords Denies Malicious Intent

Read/Write Web - Fri, 2010-07-30 23:00

Many news outlets, including ReadWriteWeb reported yesterday that the first piece of Android malware may have been discovered in the wild. It now appears that we were mistaken. In an interview with Android Tapp Jackeey Wu, the developer of the wallpaper app in question, denied malicious intent. He said he was gathering device information to take advantage of favoriting features in Android.

Sponsor

In my applications I collected some device data, not user data. I collected the screen size to return more suitable wallpaper for the phone. More and More users emailed me telling that they love my wallpaper apps so much, because that even "Background" can't well suited the phone's screen.

I also collected device id,phone number and subscriber id, it has no relationship with user data. There are few apps in Android market has the favorites feature. Many users suggest that I should provide the feature so I use the these to identify the device, so they can favorite the wallpapers more conveniently, and resume his favorites after system resetting or changing the phone.

In a follow-up on its blog, Lookout, the security company that originally reported that the wallpaper apps were transmitting data, notes that the app did disclose that it was accessing phone data. However, not every app that accesses data actually transmits it off the device, and Wu's apps did not disclose that phone information would be collected (enterprises most certainly are not going to want employees voice mail passwords transmitted to third parties, regardless of that third party's intentions). Whether Wu himself knew he'd be collecting passwords along with users' phone numbers, we do not know. We have not been able to find a way to contact Wu.

We will update with additional information as it becomes available.

Discuss


Cursing Mommy

Coudal Partners - Fri, 2010-07-30 22:24
"Fortunately, however, tonight is Make Your Own Goddam Dinner Night, a recently instituted family ritual I shared with you in last week's column." Easy Cocktails from the Cursing Mommy, by Ian Frazier.

Data Centers Suited For Dr. Evil and Servers, Too

Read/Write Web - Fri, 2010-07-30 21:58

drevil.jpegThe architectural style of a data center is not what you would think as being unique.

But data centers can have a certain style as illustrated in a recent post on Data Center Knowledge, which put together a collection that shows a level of creativity in how data centers are being designed.

Rob Snevely is the author of Enterprise Data Center Design and Methodology. He says the primary function of building a data center is in the detailed mechanical process of laying out the building for maximum density and equipment loads.

Sponsor

But he also says design philosophies are being applied to data centers that fit with the modern times of the 21st century.

Here are a few that stand out:

"The Spy Who Loved Me" Bunker
The Bahnhof "James Bond Villain" Data Bunker in Stockholm, Sweden

On the city streets, people go about their day, unsuspecting that deep below the asphalt lies a bunker where Dr. Evil would feel right at home. It's the data center for Banhof, one of Sweden's largest ISPs. The features of this subterranean data center are a bit quirky. It includes greenhouses, waterfalls and German submarine engines. Your data is safe here. It is designed to withstand the force of a hydrogen bomb. Unusual? Yes. The architect started with the view that rock has its own symbolic representation of life. Space-themed conference room? Sweet.


Super-Sized Data Center
Microsoft Container Data Center in Chicago

Thumbnail image for msoftdatacenter.jpg In the city of broad shoulders is the big gulp of data centers. And who else but Microsoft would build a data center with such scale. The Microsoft data center is 700,000 square-feet and cost a whopping $500 million. It has its own "container canyon." This is like a garage where 40-foot trucks don't move but the data does. Truly massive.

Which Came First: Chickens or Computers?
Yahoo Computing Coop in Lockport, NY

coop1.jpgNow this is our kind of data center. Chickens need good ventilation and so do servers! So why not build a data center that looks like a chicken coop and is meant to breathe, too?

And here we thought data centers were just big boring buildings.

Discuss


Bar

Coudal Partners - Fri, 2010-07-30 21:48
Just a couple of guys, having a drink at a bar in Italy, 50 years ago. Lovely.

Bewitched Cocktail Hour

Coudal Partners - Fri, 2010-07-30 21:43
An important resource. "The following is a listing of "Bewitched" episodes in which the consumption of alcoholic beverages was shown, and by whom."