Who cares what’s trending?

Internet, Tech, Web 1 Comment

Trends – or as I would call them, rampant fads populated by people looking to leverage the best buzzwords to get VCs to throw money at them – come and go. The one constant is the claim that <insert trend here> is so awesome that will universally and irreversibly replace <insert existing technology here>, to the extent that if you’re using or producing <insert existing technology here>, you are irretrievably lame, and complete strangers will point at you in the street and laugh at your horribly backward ways.

The fact is though, the best that today’s trends can aspire to is to become the existing proven technology that tomorrow’s trends will point and laugh at. That’s if they do well – most will simply evapourate and leave the world as if they never were. It’s rather beautiful in its own way, a sort of karmic circle where the unjustified elitism associated with being part of the ‘hip’ crowd is eventually cruelly punished by the derision of those who replace them.

The current trending darling is cloud computing, following in the wake of the dot com boom, the social networking explosion, and yes even open source . Let’s face it, there are quite a lot of people and companies who participated in open source not because of the fundamentals, but because for a while including open source on your corporate manifesto was a  damn good way to get funding. Now that open source is no longer a leading trend that you can sell to VCs (it’s graduated to ‘mature’ and has therefore lost its sparkle to a certain breed of person), the piranhas have swum elsewhere. Good riddance, I say.

Trends are like the Borg – they’re not happy to be just a part of a diverse technical melting pot, they have to be front-and-centre in everything, and want everyone else to be defined in   terms of themselves. So predictably, now we’re told that everything will eventually run in the cloud, and that the browser will be our only OS, and every company chasing funding right now is trying to shoehorn some cloud aspect into their corporate plans. What a load of old rubbish – while I fully expect cloud computing to be one of the ’stayers’, just like open source, it’s only going to be a part of the whole. I fully expect us to make far more use of hosted & distributed capabilities in the future, but I know for a fact that dedicated platforms are never going to go away – they’ll simply blend.

I could make all kinds of detailed arguments as to why browser based servicing of all needs is not a panacea, but there is one fundamental  issue that is most important - generalised tools and grand unified visions always fail, even when they make perfect sense to a designer or ‘visionary’.

Unified visions and perfect generalised solutions only exist in the head  of one person, usually a designer who has ’seen the future’ and realises that with some adaptation, he can express all things in terms of the model he has in his head, just with some funky parameterisation. Eureka!

But, regular people don’t want generalisation or unification, only designers do. You’ll generally get a good response from developers, technicians and sometimes ‘extreme power users’  if  you pitch highly adaptable generalised toolsets to them (open source anyone?), because they are adapters and creators, but try to package that approach into an end product for the masses and it just won’t work. At the sharp end, all that matters is that a piece of tech does the one or two main things that it’s designed for, really, really well, and everything else is irrelevant – Apple figured this out years ago, and it’s why the iPod crushed its arguably more fully featured competitors. Generalisation is just not a feature regular people want – quite the opposite, they want specialisation.

The idea that in future all things will be done through a general browser to the cloud is a designer’s vision that will never happen. In the same way that the general public is moving away from using a single PC to do everything, and instead likes to use devices that better reflect the use context and purpose (but to have them all connect together), the vision of a unified application (browser) that can do everything is similarly flawed. The iPhone allegedy was originally conceived to use its browser for everything, but in practice most people preferred to use dedicated apps for each purpose (that could talk to the internet anyway) because they’re more functional.

So, who cares about trends anyway?

Locked into the cloud?

Business, Internet, Open Source 5 Comments

There was an interesting article last week on the Guardian site where Richard Stallman took a pop at the rising use of ‘cloud computing’ – where computing resources and applications are delivered on demand to your devices via the magic of the interweb.

Now, I don’t find myself particularly aligned with Mr Stallman a lot of the time, but he definitely has a very good point in this instance; although I do think the argument was too highly generalised (which probably came from the journalist rather than Stallman).

The key point is that relying on web-based services to perform your critical business or personal tasks is potentially just another source of vendor lock-in; right now as an emerging market these services are very attractively priced, highly competitive and making all the right noises when it comes to interoperability, but markets have a tendency to mature, change and consolidate over time, and if you set yourself up to be entirely reliant on a vendor, it doesn’t matter whether they’re an incumbent 20+ year old operating system vendor, or a more sexy, popularist online service provider, the dynamics are the same when the market consolidates and large, dominant players emerge. If you’re so dependent on a vendor that to switch is painful, they have you by the short and curlies and have a significant amount of scope to overcharge you, put upselling pressure on you, change the rules under your feet, and all the old tricks proprietary vendors have been using for decades.

There is definitely a valid argument here. Over the years I’ve consistently seen that the most important thing when it comes to IT strategy is control. Short-term costs, simplicity, immediacy, training costs etc are all important factors, but over the medium to long term they all pale in comparison to the importance of retaining as much control over your IT investments as possible. You’re going to have to retrain staff regularly anyway, the only constant is change so deluding yourself that you’re buying a ’stable’ platform from a vendor is usually nonsense, opportunity costs related to restricted products are a factor – all these things mean ceding as little control over your own usage of software to your vendors as possible, because if they’re the ones in the driving seat, you’re in trouble. This is central to my attraction to open source; the fact that a lot of it is free (as in beer) is in the round the least important factor (although in the short term, it certainly sweetens the deal) – the most important thing is that you’re in control of the end result; you can innovate & invest on top of it and not be so concerned about a vendor yanking the rug out from under you, because you always have the capability to switch support vendors or go your own way if absolutely necessary. It’s also why even with my commercial products, I provide source code and the ability to create derived versions, because I recognise that giving a customer control over their own destiny is important.

However, saying that cloud computing is universally a new source of lock-in evil is an overgeneralisation. Yes, when you use applications in the cloud (the SaaS model), if those applications are not available from anyone else then you’re setting yourself up for another lock-in scenario, just on the web. Something like GMail isn’t necessarily so bad, because mail is standard enough that it can be pulled out and transferred to something else if you want (assuming Google don’t start making that difficult, which is always an option); but complex applications provisioned via the web can certainly be a problem if that capability cannot be easily replicated elsewhere.

As a counter example though, take Amazon EC2 (Elastic Compute Cloud). This differs in that it simply provides computing capability, not applications. So I can create a server image, running Linux and all my favourite open source server applications (which themselves allow me as much control as I wish), and turn it into a virtual instance which I can then run on Amazon’s cloud, which is convenient and scalable for me. Everything I’m running is still under my control, it’s just standard computing capability that I’m renting from Amazon because I don’t want to maintain a datacentre of my own. This aspect of the cloud is therefore entirely different; I’m not locked in at all – if I wanted I could transfer my server configurations somewhere else and they’d operate in exactly the same way. This is a kind of ‘good’ cloud computing, contrasted to the ‘potentially evil’ cloud computing of relying on cloud hosted but firmly shuttered applications. Sure, it requires more up-front investment by me too, but that’s paid back in spades due over the medium to long term, and as we’ve seen from the credit crunch, short term thinking has a tendency to eventually implode on itself.

Tim O’Reilly talked about this a little last year too, and I think this quote sums it up:

Outsized profits come from lock-in of one kind or another. Yes, there are companies that have no lock-in that gain outsized profits merely by means of scale, but they are few and far between. So the question I’ve been asking from the beginning of my thinking and advocacy about open source is this one: Where are the new sources of lock-in, once we’ve taken away the old ones based on proprietary APIs, binary software, and control over distribution channels? As those who’ve read my What is Web 2.0? piece or have heard my talks on the subject know, I believe that one of the new sources of lock-in is through large databases created via network effects, such that it’s hard for a new entrant to match the services of the incumbent, since the value of those services is proportional to the size of the existing network. This is not an unbreakable source of lock-in, but it is not the second coming of the Summer of Love either.

The moral is to always be wary of vendor lock-in, in any form. It may look harmless now, but as we have seen in recent weeks all industries and markets have ebbs and flows, and by being complacent in the good times you leave yourself entirely open to exploitation when things are less rosy. Vigilance and a long-term strategy of retaining as much control as possible will pay off in the end; don’t believe the glossy vendor fliers that say giving up that control is easy, fun, and free from any possible consequences. In most cases, retaining control of your own destiny is not that difficult, it just requires a slightly greater awareness of the business at large, a little extra effort which is easily justified in the medium term, and crucially, not getting sucked into the belief that any vendor is your friend. Keep that in mind and strategic decisions of this nature are much easier to make consistently, regardless of the trends that blow through from time to time.

Streaming media from Amazon S3

Business, Political, Tech, Travel, Web 14 Comments

Thanks John for the reminder to investigate S3 as a business media hosting service, it works like a charm!

Now that I have far fewer bandwidth worries (max $0.17 per GB), the Torus Knot site includes a nifty dynamic selector so you can pick low, medium or high quality – the latter is at a higher resolution too, clocking in at about 100Mb. I may well use S3 for future public commercial downloads in the future too. It’s altogether more convenient than the block bandwidth allocations you get with regular hosting packages, since it scales dynamically at a very fine level of detail depending on demand. And don’t be fooled by ‘unlimited’ bandwidth offers, all hosting companies have to pay for bandwidth and there’s no such thing as ‘unlimited’ resources; you’ll actually find your bandwidth being throttled or cut off via a ‘reasonable use’ clause in the small-print; ‘unlimited’ is simply a marketing lure. If you want truly scalable guaranteed bandwidth, you have to pay for it.

Getting S3 media hosting working wasn’t that hard, but did require a few discrete steps. Firstly, you need to create a bucket in your S3 account which is all in lower case, is globally unique and is DNS-compatible; so for example I created a bucket called ‘media.torusknot.com’.

Then to make it all look nice you need to create a DNS CNAME entry to map a sub-domain of your site to that S3 bucket; in my case I mapped ‘media.torusknot.com’ to ‘media.torusknot.com.s3.amazonaws.com’. That allows me to access any files I upload to that S3 bucket via ‘http://media.torusknot.com/somefile.jpg’. You do just need to set the ACLs on the files & the bucket to make sure public access is allowed.

Finally, if you want to stream video files via a Flash player from S3 to another domain, you also have to tell Flash that it’s ok for the content to be pulled in from a different domain. Create a file called ‘crossdomain.xml’ in the bucket, with these contents:

<cross-domain-policy>
<site-control permitted-cross-domain-policies="all"/>
</cross>

That allows the media to be accessed from anywhere – you can be more specific if you want but this is the simplest approach.

Once again I’m using the excellent FlowPlayer; my only issue with it is that the ‘buffering’ animation seems to not work all the time (so be patient if you’re viewing the high quality version).

Gotta love this cloud computing business :)

Tim O’Reilly agrees with me about Facebook?

Tech, Web 5 Comments

I came across Tim O’Reilly’s post entitled Open Source and Cloud Computing today, and I was pretty happy to see that his thoughts reinforced what I was saying a couple of months ago about how I thought isolated, corporate-owned islands in the ‘cloud’ were not a beneficial model for the Internet long-term, despite the short-term convenience in today’s society.

I was also very interested to see from his links in that article that some in the open source community are already forming plans to address it. It’s early days yet, but I look forward to a day when we can have all the convenience of sites like Facebook provide without having to cede control of our data to a centralised corporate entity searching desperately for a way to dissect that data & our browsing behaviour for revenue opportunities.

It’s funny because when talking about this issue to a friend recently, I made the comparison between sites like Facebook now, and the ‘gated communities’ of AOL / Compuserve in the past, before the Internet took off. They too used their sealed community to generate revenue, but when people finally had the option to become free of that and get the same functionality, users deserted in their droves to the liberated environment of the Internet. Tim used the same analogy in his article, so maybe I’m not crazy after all.