Friday, 21 August 2009

URL Shortening

I’ve been watching the success of Twitter for a number of years now, it’s amazing viral success in communication and great fun if you follow good citizens of the Twittersphere.

However we’ve all watch the problem emerge when sharing a URL. Twitter’s SMS support designed into the conversation means the message can be transmitted over the SMS network but it limited to the 160 characters we come to know and ‘love’. Twitter keeps 20 characters back for the Twitter username.

And, as all Twitters know this limit means sharing a link to a page can result in the link being parsed through a shortening service.

Many people have blogged about the longer term effect this has on the intrinsic hypertext linkage between pages. I posted a few comments on FriendFeed on this, I read a post from Dave Winer, “Enough with shortened URL’s”, Jeff Atwood also discussed this on “URL Shorteners: Destroying the web since 2002”. Dave and Jeff’s posts are good.

Each of these concludes with these broad problem summary:

  • What happens when the URL shortening service dies?
  • How do we know we trust the URL shortening service? What if it’s hacked and we are taken to lovely virus ridden pages (wait for this to reach the news, it’s coming someday soon)?
  • How does short linking affect Google Pagerank longer term?

And come to a similar conclusion; Twitter should have brought this feature into Twitter to solve the problem the platform introduced.

I’d agree here, Twitter introduced this problem, Twitter should solve it. But the problem here is the trend is actually expanding, Facebook is available via the SMS gateway too.

In Jeff’s post, he suggests that the big search engines provide this service:

Personally, I'd prefer to see the big, objective search engines who naturally sit at the centre of the web offer their own URL shortening services. Who better to generate short hashes of every possible URL than the companies who already have cached copies of every URL on the internet, anyway?

I think this is an entirely plausible approach and one which would seem to sit well within their domain.

We should likely all agree there is a trend toward more mobile users with more powerful mobile devices. Typically mobile phones, they have the SMS gateway service built in right there to receive the shortened URL. And with the browser experience improving on mobile phones through the iPhone Safari experience and the Opera mobile browser, we are likely to see this trend continue, more and more usage of SMS.

I see several proposals to solve some of the problem:

Each of the approaches needs a change both on the host pages and a service to resolve the address. I don’t think we can get away from this.

Personally I think the problem can be solve in another slightly more universal way without bias toward company profit or profile. And I think it can be done while maintaining a way to pull in all the legacy shortened URL’s and preserve the historical page linkage over time.

I use OpenDNS’s service to resolve DNS in place of my own ISP’s. It is because OpenDNS is faster, more customisable and slightly more robust in protecting me and my family from bad URL’s.

In OpenDNS exists a feature where a user can enter their own shortened URL and tell OpenDNS what to resolve this to.


Now this strikes me as a great little feature. Using this service, I can setup my own little shortcuts, point my desktops and servers at home to resolve using the OpenDNS service (in fact just via my single router at home), and bingo all the users at home can type ‘mail’ into the browser address bar and have OpenDNS resolve this to


Now my proposal is simply an extension on this.

Why can’t we have a similar service to OpenDNS where the shortened URL comes from OpenDNS storing the resolution and providing the shortcut. OpenDNS can replicate this shortened URL if you decided to ‘share’ the URL, public voting on the safety of the URL can help to ensure the public URL’s are valid and safe. Enough bad reports and the link can be blacklisted on the service.

DNS supports replication of such resolution data, so why can’t the service be extended to support this feature?

The problems I see with this, which I am fairly sure are solvable are:

  • Can DNS cope with the increase in traffic? (hint, I think yes, because DNS is cacheable and distributed)
  • Can blacklisting work? (again, yes. Look how successful public voting is on against articles, or Can we have public voting on URL’s safety. Enough upvotes and the URL is set in stone)
  • Will the URL’s decay over time? I think we should be able to look at DNS removing these short URL’s when the domain disappears, so yes they should decay over time
  • How do we solve incorrectly entered URL’s? I don’t think we have to bother, just generate the correct one again.

I don’t have the network of contacts to make this happen, or the technical background in the guts of DNS, but I certainly think this requires less work and is more Internet friendly than relying on a search provider to maintain this type of service.

If Google takes up this task, we end up in a place where Google holds all the keys to the web. And that’s not good for the long term Internet survival.

The entirely Internet is essentially one click away from a Google search result. The effects of Google failing at this stage are very, very bad.

Imagine how much worse it would be if Google failed and took with it all of the links on all of the pages on the Internet…

At least with this approach we are left with a distributed open network of linkage which we can work with and should outlast any single commercial company.

So, over to the smart folk who can make this stuff work.

What do we need to do to make this happen?

(you should follow me here on Twitter)

Wednesday, 7 January 2009

Internet Connection Woes

We've been with the same ISP for a good 8 years because the service has been great, it's an award winning service.

But my award winning service is broken, sort of limps along slowly. I have the IT disease meaning I cannot call another person in IT without trying things myself first, some call it passion, I think it's a disease...

So like a mechanic listening to a finely tuned engine, I set to work playing with the thing, trying to uncover a problem. But to no avail. Tried the whole box of tricks I could think of...

I reluctantly accept defect (only took me 3 months to admit defeat) and call technical support.

If you've ever worked in a helpdesk or support scenario you will know the routine; we all replay this joke over and over:

Caller: Hi there, I have a problem with X. Can you help me?

Support: Sure sir, let me run through a few basic checks.

Caller: OK

Support: Switch it all off, wait 5 mins, then turn it on again.

(5 mins pass)

Caller: OK. The problem is still there

Support: OK, are you connected directly to the modem?

Caller: No, via wireless

Support: OK, can you connect directly to the modem?

Caller: OK, but this is gonna take me 10 minutes to move stuff. Is there something else I can try?

Support: (pauses). Yep, we can try restarting your PC.

Caller: Sure, but I just turned it on before this call.

Support: I understand, but can we try this to make sure?

Caller: OK

(5 mins pass).

You get the idea.

My call went pretty much the same with my Internet Provider, the usual ritual dance of the helpdesk call.

Even although I know more than enough to get by with networks, it's hard to convince anyone with a script in front of you to set the script aside and listen to the customer. 1 hour into this call, I wanted to reach for the fast forward button!

This is where I reach the point that I wish proper customer relationship management software could actually build a profile of what the customer seems to know - i.e. this one actually works in IT, and actually shows he knows what he's doing. But alas no, I'm in with the herd...

Or what about a proper professional body and calling card we could all share declaring "this person isn't too much of a numpty, they know what they are doing so let's cut to the chase and help them!"

Anyway, light at last! A further 30 minutes later I finally reach the real engineers, the ones who actually wrote the helpdesk scripts to protect themselves from the great unwashed. They are the guys in jeans and t-shirt who work outside the call centre and don't have such scripts and are protected from annoying calls, these are my sort of engineers that can actually solve the issue.

They listen first and try to understand what's happening.

You can guess what happened. I provided my MAC address, he took a look and BAM took 3 minutes to pin point the problem. It's at this point I learn there is a poor signal to noise ratio on the line - "dud router mate, we'll get a new one sent to you to solve it".

"Brilliant, thanks!" says me.

So the long point of this is this: shouldn't IT membership carry some sort of benefits in these scenarios? Or at the very least, IT folk agree some secret handshake to help us identify each other in today's society?

Perhaps I'm being naive. They do after all make money from my call...

And to top this off, guess what? Another 3 months on and the Internet connection is back to a crawl... Grr!

(follow me on Twitter)

7 Things

Thanks Lorna for tagging me! Honestly, I really like it!

Now the idea here is to write up 7 things that people didn't know about you.
  1. My full name is Andrew Mark Aitken. I'm known as Mark because my grandfather was known as Andrew and hollering the same name would have caused confusion. I can't tell you the amount of times I'm asked why I'm called Mark instead of Andrew. And it seems to be a family tradition, my Dad is 'Thomas Russell Aitken', known as Thomas. Weird...
  2. I used to work as a delivery van driver for my Dad's company. I think I spent around a year delivering in Glasgow, and through fate landed my first job in IT delivering to a company. I handed my CV in to the company and was awarded my first job on a helpdesk! Was one of the best times in my career - learning about development as the Internet emerged to what it has now become! Without that chance meeting, I wouldn't have gotten into IT at that stage, might have been later. And only after working for 5 years in IT did I go back to get a degree in Computer Science (which I achieved with Distinction!).
  3. I have two sisters. Laura (32) and Hollie (18). Laura lives in Maybole, Hollie just moved to Glasgow recently. Hollie blames me for her interest in IT, she is an avid game player and has an interest in programming to boot.
  4. I'm a frustrated architect. I discovered technical drawing at the age of 13 and loved it. Only when I went on work experience and saw one guy produce 20 drawings which looked identical that the client rejected did I realise that I didn't want to spend my life pushing a pencil over paper like that.
  5. I have a dreadful memory! In fact it might be an attention thing too. I need to keep lists with me at all times and rely on my organiser more than the air I breathe to get things done! As a result, I'm fanatical about keeping to do lists for things. If it's not written down, I simply can't remember to do it.
  6. I'm the worst kind of geek. I can't stand to not understand something. This is my major downfall when it comes to actually delivering stuff - I just love pulling things apart! My worst accident was with my car, tool the cylinder head off to learn more and couldn't get it put together again. Cost me a few quid to get someone to come help me... Means I have a constant battle to stick to my to do lists and try to avoid delving into interesting things as they appear! On the plus side, it's also the thing that drives me to learn new things!
  7. I used to play guitar avidly but let it slip to the side when my time became more occupied with my 3 kids. I have an absolutely stunning acoustic guitar from my Dad from my 30th birthday which I'm ashamed to admit spends too many evenings in the guitar bag.

So now the tricky part. I have to tag seven people, but can only think of 5 who might actually respond. They are:

Simon Davies, Vince Naylor, Chris Reid, Douglas Lindsay, Justin Atkins.

The unlinked guy don't have blogs.

For these people, they need to follow these rules:

  • Link your original tagger(s), and list these rules on your blog.
  • Share seven facts about yourself in the post — some random, some weird.
  • Tag seven people at the end of your post by leaving their names and the links to their blogs.
  • Let them know they’ve been tagged by leaving a comment on their blogs and/or Twitter.

Happy writing!

(follow me on Twitter)

Saturday, 20 December 2008

The New Interview Platform

I've written in the past about interviewing, on how to present yourself well to others in these situations.

What might not be obvious though, and something I entirely bypassed in my discussion, is that you are always being interviewed.

Think for a moment. How many of us take part in social networks in some way be it Flickr, Facebook, Google searching (trust me, this feature is coming someday), IM chats via Google Talk or MSN Messenger. We all project a digital personality which search engines find and present to those who want to find out more information.

I've done a search for a few friends, and the engines turn up more and more detail on older and older material from them. Not all of it is what I'd tend to call 'interview material', some is just plain filler and crap but thankfully so far none of it is damaging to their reputation.

Even the questions they are asking are part of the search result fabric with sites such as Stack Overflow presenting itself to Google for indexing.

But I think this is all great stuff for a few reasons!

  • If you are good and use the tools as you should us them, i.e. the web, then you leave a digital trail showing how you used the web asking questions and hopefully too how you contributed to the web.
  • If you are bad, you either won't have an online presence, or what you do have online will show you haven't really scratched the surface of the thing you are being interviewed to do.

Someone wrote 'try to be an expert in your field'. This makes sense since the footprint you leave will be more impressive and deeper.

I'd say this works for a large percentage of programmers and professionals out there, only a few are awkward like me and refuse to focus on just one field.

However my advice overall is simple - Live by your values - if you believe in something, tell it from the heart, always. This way, you won't even have to write a resume...

(follow me on Twitter)

Friday, 19 December 2008

Google Sites

I've been sort of roped slightly into doing a site for someone and have been looking at several options.

Only recently started playing with Google Sites expecting it would be fairly good, but on reflection I'm quite impressed at what you can do with it.

Immediately, I should mention that I expect to shape the site, deliver it and handover the day to day publishing since I don't much fancy being a glorified typist.

So the Google offering allows me to:

  • Create a site in moments. Really, it is that simple.
  • Create forms to capture input. This works pretty well, data is captured to a Google spreadsheet
  • Create a photo slideshow from a Picasa album
  • Setup page links and hierarchical structures
  • Secure the site
  • Host comments and attachments
  • Other things, go Google for yourself.

I'm no stranger to web development. I recognise that Google have limited the features more advanced users may want. So I can't for example use iFrame's, JavaScript and a bunch of other things. This makes site mashups tricky if not impossible, a shame in the 2.0 world... It's a tradeoff though.

But the elegance of the product really leaves me wondering if it's not just perfect for my needs. It's just so darned quick to throw up posts and alter basic content, and after all content is king right?

What do you think?

Would you use it?

Have you created a site for someone else less technical than you to then take over and publish to?

What did you use?

(follow me on Twitter)

Friday, 24 October 2008

Back It Up

So the home Windows computer now has over a 1TB of storage. How did that happen? Perhaps less important is how, more important how to back up all this data safely!

We have around 8 years of pictures, 10 years of my music collection, 15 years of files I've scanned or documents I've typed up, all my contacts I know, all my emails, licence details for software I own (you get the idea, lots of digital stuff).

Backups are traditionally very painful to do. People either think they are too complicated, think they take too long to run, or think they are too expensive to do.

I wanted the least pain to make sure backups happen, so here's what I use. Hope this helps convince you to do similar.

  1. Buy an external hard drive and install this making sure both it and your PC use USB2.0 for speed.  I picked up some 750Gb for around £50. Just make sure this is big enough for all the things you want to backup.
  2. Download and install a copy of Microsoft's SyncToy 2.0, it's free
  3. Create a folder pair.  There are options when creating the pairs, but essentially you are telling SyncToy "I want you to copy this source folder (left folder in the screenshot) to the destination folder (right folder in the screenshot).
  4. Run the sync.

What's pretty smart here is SyncToy takes care of the delta process.  That is, if a file changes in the left folder, the right is updated by SyncToy.  If a file is deleted on the left folder, the right can (optionally) remove it too.

The initial sync can take ages depending on the size of the left folder and the speed of the drive and connection between your PC and drive.

Within the Help menu is a helpful (odd that) description of how to schedule this process so your folder pairs are automatically synchronised. Means you don't have to concern yourself with remembering to run backups.

You have no excuses now. Don't come crying to me when it all hits the fan...

I'm interested to know, does anyone do anything else from this? Anyone backing up to the Internet, how and at what cost / speed?

(In fact, small lies above. I have a second internal drive and an external drive. I prefer to schedule the backup to the internal drive to happen weekly, and run the backup to the external drive every month storing the drive out of the house for safe keeping).

Wednesday, 13 August 2008

Old Acquaintances

Feeling a tad misty-eyed today.  It would have been the 40th birthday of an ex-colleague and friend, Michael Roser.  Mike was unfortunately in a fatal road accident earlier this year.

Just wanted to mark the event by writing a few short things about him and my memory of him, hope you don't mind reading them.

He was a slightly quiet, slightly grumpy bugger, but certainly a smart one. Very warm natured and close friend to those who stuck around long enough to see past his occasional scowl.

Always pushing himself, always challenging things, always learning, always sharing, always amazing. This shone through in his physical training he took part in, his technical work, his conversation about software and other things, his diverse interests (making wrist watches being one!), in fact nearly everywhere.

I always left with the impression that Mike's life was a huge training exercise to prepare him for something immense. And when it came, boy would he be prepared!

Sorry you left so soon mate. Far too soon for my liking.