Wednesday 31 October 2012

ColdFusion shared hosting

Sean made an interesting comment on yesterday's article about enhancing logging in ColdFusion.  It's unrelated to that particular topic, but it's worthy of discussion, so I'm going to lift it out and replicate it here, and then put my oar in.

Here's a direct link to the original comment (and my response, and Sean's follow-up) is here.  I'm going to abridge things here, just to focus on what I want to discuss.  I will not abridge it in such a way as to change the context of what either of us were saying.

[...] Macromedia's decision to ignore the Java sandbox and build its own (perhaps out of some misguided idea of backward compatibility with CF5?) has made ColdFusion very awkward for shared hosting.
That's interesting what you say about the Java sandbox, Sean. I'm out of my depth with this sort of thing... is the road Macromedia / Adobe have gone down with their "roll yer own" approach something that you think could reasonably be backed-out of now, or have they made their bed there now? Because it's certainly something that would help CF as a prospect in a shared hosting environment, which I understand is a market it's falling off in a bit.
[...] I don't know whether Adobe can evolve out of this - or indeed whether they even want to? They seem to have nailed their colors very clearly to the "Enterprise" space, especially with the marketing around CF10 pushing into the JEE space. Shared hosting is a low margin business with a lot of providers moving to VPS and cloud servers now.
(Sean - if you're reading - I've snipped the Railo references simply cos they're not relevant here).

At the same time on Twitter there was this exchange:

@daccf (Me):
@cfmldeveloper: hey is there any way I can access logs I've written to with CFLOG? Obviously tricky with no CFAdmin or file system access.
@daccf only railo allows you to do that
@daccf sorry but railo is simply much more shared hosting friendly
@maestrofjp (Peter J. Farrell):
@cfmldeveloper @daccf shared hosting needs to die.
@maestrofjp (cc @cfmldeveloper). Well that's a very self-centric and naive position to take.
Sorry Peter.  It was that comment (of mine) that made me think I had better expand on my position here.  Here's a re-working of the reply to Sean that I started as a comment.

Sean's quite possibly right about Adobe's positioning regarding how much money they make from licencing to shared hosting companies compared to large corporate "Enterprise" clients, but - as I said to Peter - I think it's an incredibly naïve and short-sighted position to take.

Money is not simply made by selling licences: it's made by having people to sell licences to, and the CF community is not exactly growing.  They need to make ColdFusion accessible to people at the bottom of the market food chain too, and this means giving some thought to both pricing and accessibility (in the sense of "availability").

Having to run one's own ColdFusion server is a barrier to entry.  Simple as that.  Personally I come from a networking / server support background (1994-2000, at which point I switched careers and became a ColdFusion developer), so I know how to do all that stuff - or am comfortable doing the investigation to work out how if I don't already know - but I'd rather not have to if I could avoid it.  Apologies to those people who do this sort of thing to earn a crust, but it bores me rigid.  So when I got into a situation where I needed some outward-facing ColdFusion code, I did not even contemplate managing my own server, I simply googled about and landed on the cfmldeveloper hosting page.  Which has the magic word "free" on it.  And Russ has been looking after me ever since.  It works fine.

And this is from me who's actually competent at doing this stuff for myself.  Given Adobe market CFML as the language for non-developers (read, realistically, as non-technical people), imagine someone in their target developer demographic - an HTML monkey who knows mark-up and some CSS - trying to host their own CF server?  Not going to happen.

OK, so there's still non-shared hosting.  But this is expensive.  Expensive for the provider, and expensive for the client.  There's no way I'd consider using my own hosted server. Also... the stuff I have live receives about 100 hits per week (if that), so it would be a gratuitous waste of resources to dedicate a server to that.

And if the likes of me, or the likes of the web monkey wanting to spice up their static mark-up with some CFML, or the student wanting to mess around can't actually get our paltry efforts "to market", then we're not going to use CFML.  So this is a significant blockage to the community entry point.

So for ISPs to be able to provide cheap, easy to manage ColdFusion hosting to people who want it definitely is important to ColdFusion's viability and longevity in the market.

I've heard of a few ISPs recently that have pulled the plug on ColdFusion hosting (or have switched to offering just Railo), and even cfmldeveloper have said they can't offer CF10 hosting at present due to prohibitive licensing costs.  This really doesn't help Adobe.  Well: it's Adobe not helping themselves.

No.  Shared ColdFusion (or Railo / OpenBD / etc) hosting definitely has its place, and Adobe have to help out here.  They should be trying to get ColdFusion into as many hosting (shared or dedicated) providers as possible.  Not waiting for the providers to come to them: they should be going to the providers.

I think Adobe need to do something about making it an easier prospect for all concerned.  ColdFusion is about making hard things easy, right?