Monday, September 7, 2009

Still alive

I know it's been a few days since my last post. I've been busy with some other minor projects (and I got a puppy, which, if left alone for more than a nanosecond, finds something expensive to maul).

I've been working on the new mockup and have completed a design for the front page.

I've also been working on Google Reader, which I hope to have up soon.

Stay tuned.

Thursday, September 3, 2009

MySpace is working (for now)

I had a minor brain wave while researching another API today. The documentation stated that all requests must include a user agent header, which got me thinking about the MySpace problem.

Because it uses oAuth (and must send an oAuth header) it uses a different cURL function than most other feeds. That cURL function was not applying a user agent field. I corrected it and....no change. So I began debugging and outputting values throughout the authorization process and it all-of-a-sudden began to work.

So, could have been some sort of delay or caching problem keeping the old cURL function file for a few minutes after I uploaded the change. Or it could be that changing the user agent field has temporarily fixed a firewall blocking problem. Maybe it will work for a day then just stop, as it did when I first uploaded it.

But for now, it's working.

Please, try it out and let me know if you encounter any problems.

Wednesday, September 2, 2009

Mockup

Here is the mockup I promised. As I described in my last post, the feed icon appears on the left of the event.

The relative date time tag (which says 'About x minutes ago') now appears inline. I tried it underneath the event description but it was confusing. Having it off to the side means you really only 'see' it if you're looking for it. It also means we can imlement single-line events (such as the Gmail event in the mockup), which I like.

I debated for a while whether to include profile thumbnails (shown here for Twitter and Facebook events) at all, or to simply leave them out. I did mockups of both, but I think the thumbnails help 'suggest' to the user who the post came from, much better than text can. For example, if I were interested in posts from Fake Stephen Conroy (shown in my mockup), it's far easier to locate them given his bright red profile image. That said, it also makes the feed as a whole a little more crowded, so it was a trade off.

You may also notice the comments line under the Facebook post. I'm hoping to add support for comments when I implement this new design. They're not shown here, but clicking on the '6 comments' text in blue will expand down the comments. Each comment will have the profile picture of the author (if applicable). The last line in the comments section will be a text box for you to add a comment.

One other thing: I'm going to limit the width of the description field. See Senator Conroy's Twitter post? Under the current design, that stretches across the width of the feed and is difficult to read (that's why newspapers use columns). In the new mockup, it's constrained to about half the total event width.

If anyone has any feedback or suggestions, I'd love to hear it.

BTW, still no news on MySpace. I've posted to their forums, but I guess their API developers don't read it. I may end up just submitting an e-mail to a non-developer address and hoping they'll forward it to the appropriate department.

Tuesday, September 1, 2009

Redesign?

The problem with web development is that you stare at the same screen for hours each day. Consequently, you begin to second-guess your design.

The current look-and-feel of Timelimes is actually about the fifth iteration. Much of the incremental change has centered upon the styling of events in feed. At the moment, each event has a thumbnail to the left (which in the case of Facebook, Twitter and MySpace is the profile pic of the event actor, for Flickr it's the Flickr logo, for eBay it is the item gallery thumbnail and for Digg it is the item image if it has one, else just the Digg logo).

I use Timelimes quite a bit and I'm beginning to find it a bit difficult to mentally organise the information I'm seeing. Information digestion is exactly the problem Timelimes aims to solve, so it isn't good to have an interface which is not conducive to 'glance comprehension' (what I call the ability to quickly glance at a screen, or item on a screen, and intuitively understand what it's about).

I think the thumbnail image is the problem. It's confusing because, glancing at an event in the Timelime, you can't intuitively tell which service it comes from. Sure, there's the small icon under the title and description, but your eye isn't drawn to it. The entire event just appears as one big block of text. You have to actually read it to comprehend it, which violates the goal of glance comprehension.

If you use Timelimes enough, you begin to developer a sense of which service each event belongs to, but it shouldn't be something you need to train yourself into -- it should be intutive.

So, I'm thinking of trialing a new style for events, using the service logo on the left instead of the user's profile image etc. If anyone has any ideas, suggestions or feedback (once it's implemented), I'd love to hear them.

MySpace problems

The MySpace feed has been down for a few days now. At first I thought it was just the MySpace API server. Then I thought it was a performance problem with our server. Turns out our requests are being blocked by MySpace. Not sure why this occurring - we've somehow tripped their firewall. Too many requests maybe?

I've posted to the MySpace Developer forums (they don't have a direct support e-mail) but haven't heard anything back yet.

I'll post back here as soon as it's operational again.

Sunday, August 30, 2009

I have one word for eBay: oAuth

The eBay feed is up. Currently, it supports notifications for BidReceived (seller), FeedbackReceived (buyers and sellers), ItemLost (buyer), ItemMarkedPaid (buyer), ItemMarkedShipped (buyer), ItemSold (sellers), ItemWon (buyers), ItemUnsold (seller), OutBid (buyers) and WatchedItemEndingSoon (buyer).

I may add support for dispute notifications later if people want it.

This has been by far the most convoluted, unnecessarily complex API I have worked with. Sooner or later these large sites will realise that 8 trillion pages of incoherent spaghetti documentation is not valuable to developers. Just give us a few, short, cohesive pages covering the major use cases and a wiki.

They should also give serious consideration to oAuth. Currently their procedure is as follows:
  • Client obtains a session ID
  • Client redirects to the eBay consent page
  • Client retrieves the token using the session ID
  • Client sets notification preferences using the token
  • Client obtains a client alerts API token
  • Client signs into the client alerts API and retrieves session values
  • Client calls the API notification method using the session values

This is just absurd. Why not just use oAuth? It'ss simple, secure and widely supported.

eBay is another of those services that I don't use much, so please report any bugs. So far I've just been bidding small amounts on cheap items I don't want. I almost became the proud owner of a USB keyring shaped like a Nike sneaker.

Saturday, August 29, 2009

MySpace

The MySpace feed is finished and seems to be working (after a lot of unnecessary work -- note to MySpace: providing the markup of event information in your activity stream feeds is not helpful).

I'm really more of a Facebook person so I'm not intimately familiar with the inner workings of MySpace. For those of you who use it on a daily basis, please try this feed out and let me know if you find any bugs.

I've almost finished the eBay feed too, hopefully it will be up by tomorrow.

Wednesday, August 26, 2009

Do you Yahoo?

I don't. Not that I have anything against Yahoo, I just don't really use any of their services. However, Alexa tells me more than a few of you use Yahoo Mail (I refuse to put an exclamation point after their name every time), so I've added it as a feed.

Please try it out. I've signed up for an account for testing, but you -- the users who use Yahoo Mail regularly - will be able to provide some valuable feedback.

Speaking of feedback, I've had a few minor bug reports. The green stream in the background doesn't tessalate for widescreen or very high resolutions (can't believe I didn't think of that).

I've also had some requests for Google Reader via our Get Satisfaction feedback page, but I may have to wait until they've released their API, which rumor has it should be very soon.

I'd also like to get the eBay feed working because I think the outbid and feedback notifications would be valuable, however eBay is another service I don't use much so it may be hard to test thoroughly.

Thanks to everyone who has provided feedback and support over the past few days.

Tuesday, August 25, 2009

Thankyou

I've had some great feedback, including some excellent bug reports, all of which I've now resolved.

  • Mobile version is now working correctly (or at least seems to be: I'm somewhat limited in how I can test this, but it works OK on my iPhone).
  • Blurb on the front-page is no longer disappearing under IE6
  • Made the thumbnail images marginally bigger
  • There should now be a gap between the event title and description under IE6

I have, however, discovered that the Facebook feed doesn't show status updates which come from mobile devices unless you change the settings to allow application updates (the feed script examines the 'AppID' field of the Facebook API response to determine if the event was generated by an application - obviously Facebook Mobile is considered an application, so I'll need to add an exception rule, but not tonight).

I did quite a bit of work on the Yahoo Mail feed tonight, so it should be ready to go tomorrow or the day after.

It's been a whirlwind first day - more than 250 visitors so far, which is quite respectable considering I didn't do any advertising, with the exception of listing the site on KillerApps.

Please keep the bug reports coming.

Monday, August 24, 2009

Be gentle

My name is Cameron and I'm the developer of Timelimes.

I am also very nervous. This must be how engineers feel after constructing a bridge and watching cars drive over it for the first time. Did I remember to tighten those screws? Did I carry the 4 when calculating the load tolerance?

Albeit, if Timelimes crashes, people won't plunge into a river, but still...

I released this site and planned on having a few weeks of private beta to iron out any bugs. One thing led to another and before I knew it I had almost a hundred users in the first twelve hours. I'm heartened by the interest the site has generated, but I'm also slightly embarrassed by some bugs I've discovered in the last 24 hours.

So:
  • If you're using IE6, there is no gap between the title of an event and it's description. I'll fix it tonight.
  • The mobile version is having a few problems and is mostly unusable today.
  • The blurb text on the front page disappears periodically on IE6. Not sure why, other than it's embarrassed to be seen in such a browser.
  • I haven't done any IE8 testing, but (fingers crossed) it shouldn't differ too much from IE7.
I'm mostly relying on the users to report any problems they find (using the contact page) and to have patience.

You may have also noticed there are only five feeds, but the library is clearly set-up to accommodate more (search function, categories etc). These five are just the launch feeds - I'm currently working on an eBay feed (to notify you when you're outbid on items or feedback is left on your account etc), LinkedIn, YouTube and Yahoo Mail. Over time, I plan to add plenty more and eventually set up an API for developers to submit their own feeds.

I've had a few people ask for Hotmail, but to my knowledge, they don't support an open authorization protocol, which means Timelimes would need to store your Hotmail username and password for it to work. We just don't do that - it would be like painting a giant target on our backs for hackers.

At this early stage, I'd really appreciate feedback. We're collecting feedback via Get Satisfaction, but you can also use the contact page or post here.

Many thanks to everyone who has taken the time to join.