Author Archives: ayn

Umair Haque of Bubble Generation knows about Superfuture!

I’m a long time reader of Umair’s blogs, it was quite a surprise to see that he mentioned SuperFuture! Hell yeah! I wonder if he posts his fits!

My favorite example is the What Are You Wearing Today thread at Superfuture, a fashion microcommunity (sorry for the unwanted attention, guys). It?s literally thousands of pages of connected consumers posing, checking each other out, and telling each other if cool brands actually make them cool ? or not.

Superfuture is the small tip of a very large iceberg: the massive defection to hundreds of thousands of social networks and microcommunities, where connected consumers endlessly discuss, debate, and validate brands and their promises.

[From The Shrinking Advantage of Brands – Harvard Business Online’s Umair Haque]

the lack of blogging

I don’t blog as often as I did, I think much of it has to do with other services I am using now, they kindda replace having to blog about stuff I find online. And I don’t really have time to publish original content. If you’re interested, you can subscribe to these:

  • Twitter
  • Google Reader shared items
  • del.icio.us, already “burned” with this blog’s RSS feed with Feedburner
  • FriendFeed,I linked my accounts there, but don’t really use it. It also gets redundant, like I included my Tumblr and Flickr there, but I already included my Flickr on my Tumblog, so you get repeated content at times. Also my Twitterrific updates my twitter statuses to Adium, and the Twitter Facebook app updates my status on Facebook, so most of the times my Facebook, GTalk, and Twitter statuses are the same.
  • Too many others to list, so check my FriendFeed

steez changes

If you look at my blog in your browser, you might notice subtle styling changes. I had the default stylesheet since I changed the theme, but some things never looked right, so I messed with it with Firebug and TextMate and now it’s a little bit better. Like now the code blocks get smaller font-size and they won’t overrun the div.

Flip Ultra and easy way to make Mac icons from images

So we got a Flip Ultra, when you plug it into the USB port it shows up with an ugly default USB drive icon in the desktop. I wanted to change it to a picture of the Flip Ultra itself. I googled on how to make Mac icons and found this post. It involves using either a PS plugin or Icongrapher. I tried that and it was a bit too much work to just make an icon.

It then occurred to me that I can just look at the info (?-I) on any image file, clip on the icon in the File Info dialog, ?-C that, go to the File Info dialog of thing I want to change the icon for, and ?-P to paste that in. Real simple!

FLIPVIDEO Info
Uploaded with plasq‘s Skitch!

Now I should really make that image transparent so it looks better. We love the Flip btw, super easy to use, quality is pretty damn good too. If you get one use one of these links…

😉

(your RSS readers might not show embedded iframes so see the post in the browser if you don’t see anything)

MySpace / OpenSocial makeRequest examples

I just refactored some of my MySpace code this afternoon, to contact an outside server from an OpenSocial app you have to use the makeRequest call, here’s how my makeRequest wrapper looks like:

function makeRequestWrapper(target, callback) {
  try {
    var server_base_url = "http://dev-host.yourdomain.com/myspace"
    var params = {
      METHOD : 'GET',
      AUTHORIZATION : gadgets.io.AuthorizationType.SIGNED
    };
    gadgets.io.makeRequest(server_base_url + target, callback, params)
  } catch(er) {
    console.log(er.message);
  }
}

Here’s how you call this from the MySpace canvas surface:

function submitForm() {
  makeRequestWrapper(
    "/form_submit?" + $("#user_info_form").formSerialize(),
    function (data) {
      submitFormCallback(gadgets.json.parse(data.text));
    }
  )
}

In the userFormCallBack method, you can access the JSON object as arg.foo.

Method to perform makeRequest from the home and profile surfaces (I have no idea why they are different, but this works):

function retrieveHistory() {
  makeRequestWrapper("/show_history",
    function (data) { displayHistory(data); }
  )
}

Notice here you don’t need use data.text like you have to in the canvas surface. I found out that MySpace ignores the request type, on canvas it always returns a JSON object and if your server endpoint returns a JSON encoded object (like with render :json => my_hash.to_json in Rails ), it is stored in data.text, so you have to parse that with gadget.json.parse() to get another JSON object. On the home and profile surfaces it always returns HTML, you can parse the data as it (no need to use data.text), or you can just display the html returned with something like $(“div#blah”).html(data), if you use jQuery.