Fog Creek Software
Discussion Board




Should I sell or should I host?

Most web applications (such as those written in ASP.NET) can be either sold or hosted. What is your opinon about hosting web applications? Which one should generate more revenue?

And also, is Application Services Provider same as a Hosted Web Apps Provider?

ASP.NET Developer
Monday, March 22, 2004

Hmm, Fog Creek's opinion should be obvious, since we sell, not host.

There are several reasons for this:

* We don't want to be available 24/7
* We don't want to spend the money to build the kind of server infrastructure that can provide "five-nines" uptime
* We don't want to feel terrible when our disks crash and our backups turn out to be vinegar and our backup backups are encrypted using a key that was written in a file which was lost due to a freak hurricane
* Most of the customers that have requested a hosted version of FogBUGZ are very small customers - one or two users. Larger customers already have a data center with servers. Basically we've assumed it's not worth spending all this money just to get a few small fry customers. Anyway, tiny customers are better served by running the FogBUGZ server on their own developer machine.

As for what you should do, that depends on who you are, who your customers are, what they need and why.

Joel Spolsky
Fog Creek Software
Monday, March 22, 2004

Hmmm... could you host on a maintained server?

I.e., you pay maybe $500 a month for a dedicated server that someone else maintains.

Bottom line, though, is that (as Joel says) it's what your customers need.

As a small business owner, I like the fact that my shopping cart is hosted somwhere else. One less thing for me to maintain. 

MORE EXPENSIVE TO CREATE A "PRODUCT"
Also, there's a lot of overhead to turn something into a shippable product. I.e., it's one thing to create a program that you can run internally. It's quite another to create something that someone else will understand how to configure and install.

ONE EXAMPLE
I used to work for a company that made video kiosks.  We had customer software that would turn an IE browser into a kiosk. Lots of little widgets, like things to lock out access to the system, reboot it if it crasheed, etc.

If we'd tried to sell that as a package we would have spent a couple hundred man hours just writing documentation.  In that case, it was much better to sell the assembled systems with all the software, as a service. We'd maintain them etc.

Now, to counterpoint that: My company was a product company from day one and I've never regretted it. But it's not a black/white choice.

Mr. Analogy
Monday, March 22, 2004

MORE EXPENSIVE TO CREATE A "PRODUCT"

Your mileage may vary (YMMV), but sometimes the cost saving with not having to provide 24/7 will offset the cost of bundling the executables and docs into a professional downloadable install...some example why 24/7 hosting isn't as cheap as it first appears:

* privacy laws in several first world nations encourages (if not out right requires) the use of national isp to keep private client data within national soil. On the balance book this equates to multiple accounts (one for Canada, one for US, one for etc etc etc).

* redundancy, fail over, all requiring extra licensing fees (you'll need Windows Advanced Server 2000 vs Windows Server 2000, you'll need SQL Server 2000 Enterprise vs MSDE)

* pager boy, you need them to answer anything that happens

* if sh*t happens, everyone suffers from 500 status and the application simply 1) either stops working 2) or have to work off line, a downloaded fat client app will usually work in off line mode and anything that happens can usually be solved with an application restart.

* IP protection, you force yourself into obfuscating the software knowing the bytecode is being distributed and make serious accommodation for anti-piracy, where as if you might increase risk of "ip theft" by hosting unprotected bytecodes out of convenience. Most web hosts are protected by a mere login prompt and a half-ass concurrent usage restriction implementation.

There are ofcourse tons of advantages too.

You can also aim for an in between, with advanced users or heavy users you can bundle your solution with hardware, effectively turning it into a reliable appliance that scales well while passing compatibility testing really well. Ironport.com for example sells a 30 grand A30 that's basically a really fast SMTP out-bound server. The magic is in the software, but by providing a dell box with it and supporting both at once they ease the headache users have to deal with.

Li-fan Chen
Tuesday, March 23, 2004

I use a web application call DoubleClick DartMail Client 4.0, and it just slows down to a crawl during busy hours. Why? It's a web application that backs to a web server which backs to a batch job manager. The batch job manager tries to juggle everyone's uploads and downloads and list deployments as best it can, but as long as DoubleClick buys as few servers as they do, the response time will be sh*t. If your application is database intensive and response time intensive, you'll want to get it off the web a pplication model or face the loss of customers.

Li-fan Chen
Tuesday, March 23, 2004

Benefit of hosting itself: control.  You don't have to support a billion configurations, just one.  People aren't using a zillion different releases of your software, they are all using the latest.  If something breaks in the night, you can patch it in the morning.

Ken Klose
Tuesday, March 23, 2004

There's another large benefit to the hosted model: you can amortize costs among customers.

Let's say your application requires MS SQL Server ($5k per CPU) and Analysis Services. Let's say it requires a PDF conversion tool (another $5k per CPU), and a high caliber content indexing system (and another $5k per CPU). Oh, and let's not forget: a machine running Windows Server 2003 Standard Edition (a couple thousand dollars).

This stuff adds up fast. If your app can spread these costs among a bunch of customers, then you're in much better shape price wise.

And of course, let's not forget one other major benefit: when you host, they can't steal the code and steal licenses from you. Depending on who you're targetting, and how much, this can be a significant loss of capital.

Of course, all the warnings about hosting are true. You need high quality up-time, an excellent hosting center, a perfect backup system, and on-staff IT to keep it running, including someone who's willing to be paged in the middle of the night when the server crashes.

Brad Wilson (dotnetguy.techieswithcats.com)
Tuesday, March 23, 2004

I see a real flip side to this. Selling an app leaves the customer with a working version of the system that is independant of the survival of your company. A hosted solution means the company I am leasing the application from determines my ability to survive. If I buy an application and I am able to support my company and grow off of it I will be isolated from the failure of the company I bought that software from. By owning it and hosting it locally I can atleast maintain the current state of business I have until I can replace that system or find someone to maintain it.

Jeff
Tuesday, March 23, 2004

All good points above.

I think it boils down to what's appropriate for the app and customer:


1. I'd never have my CRM software hosted, for all of the reasons Jeff mentioned AND because I want control over my customer database. I don't want anyone stealing that data nor do I want to risk losing it.  I'll do my own backups, thank you very much.

2. BUT... for my shopping cart, I'd never think of hosting it myself. Too much of a headache.  It's a natural fit for a SERVICE. If the company goes away, I just get a new shopping cart. It's mission critical, but easily replaced.

Mr. Analogy
Tuesday, March 23, 2004

One major assumption here is that you clients need five nines.  Two nines during business hours is quite fine for most.  It's also best to say every night (or once a week) you have scheduled maintenance and people quickly adapt to live with it.  I havent' heard anybody switching their bank because web banking was unavalible from 12-1am vs 12-12:45am in another.

tekumse
Tuesday, March 23, 2004

For some reason The Clash started playing in my head. Wonder why. ;-P

Klodd the Insensitive
Wednesday, March 24, 2004

*  Recent Topics

*  Fog Creek Home