* The Business of Software

A former community discussing the business of software, from the smallest shareware operation to Microsoft. A part of Joel on Software.

We're closed, folks!

Links:

» Business of Software FAQ
» The Business of Software Conference (held every fall, usually in Boston)
» Forum guidelines (Please read before posting!)

Moderators:

Andy Brice
Successful Software

Doug Nebeker ("Doug")

Jonathan Matthews
Creator of DeepTrawl, CloudTrawl, and LeapDoc

Nicholas Hebb
BreezeTree Software

Bob Walsh
host, Startup Success Podcast author of The Web Startup Success Guide and Micro-ISV: From Vision To Reality

Patrick McKenzie
Bingo Card Creator

Web Apps vs. Desktop Apps (Not That Thread Again!)

I'm abandoning desktop app development, for reasons which I suspect might be of interest to many people here.  I have a blog post detailing the reasons why:

http://www.kalzumeus.com/2009/09/05/desktop-aps-versus-web-apps/

Long story short: web apps have vastly better conversion rates than desktop apps.  There is some other gravy about support burdens and whatnot, but that is the biggie.
Patrick McKenzie (Bingo Card Creator) Send private email
Sunday, September 06, 2009
 
 
Thanks for the insightful post Patrick, this confirms the suspicions I've had for a while. I was excited when I saw you were moving towards the SaaS model because I knew you'd post results which would be very useful to the rest of us.
Jonathan Matthews Send private email
Sunday, September 06, 2009
 
 
i have faith in desktop apps.

some small problems take the control away from the user but, one day, they will be fixed.

problem 1. installation on microsoft windows is a pain for the user. it comes in many shapes instead of a uniform process. microsoft is be blamed here.  i haven't installed anything since i found universal extractor[1].

if people are using things like registry cleaners, uninstallers, and even microsoft has released something dubbed "windows install clean up", something is seriously wrong.

problem 2. windows again. most automated installers pollute your registry. they don't have to. i have made portable versions of many applications with universal extractor mentioned above. but what about the average user?

problem 3. runtime libraries. a real turn-downer. nobody wants to download another java runtime environment just because some application needs it. same thing for .net. i say, .net should be part of windows and its update process.

java runtime environment and my beloved python libraries make the size of applications a turn-downers for the average user. a simple database application in delphi is just a little bit over 1mb. the same application in java or python if the runtime is included is well over 20mb. these languages should find a solution for this.

for the sake of completeness, i don't think that web versions exclude downloading or installing plugins that web applications require. silverlight comes to mind. javafx too. flex also. the user is still installing things. at the very least, the web browser they will use.

moving to the web is not contributing to the solution set in that way, it's just a diversion. the desktop is very capable of easing the user of these problems.

operating systems, and i mean windows here, should uniformize application installation. languages developers should uniformize runtime environment installation. they should give us back the control of the operating system, and not give it application developers who do what they want with our folders and our registry—the registry cleaners industry shows what's going on here.

[1]: http://www.legroom.net/software/uniextract
victor a.k.a. python for ever Send private email
Sunday, September 06, 2009
 
 
I love desktop apps too. And there is one of my apps that cannot be done online version. But yeah I'm thinking of migrating a particular app of mine to the web.

The web apps may still suck (plugins/activeX requirements...) but the desktop app sucks even more (big install, malware threat...)

Thanks Patrick for the great post.

1. How smooth the migration took place?
2. Did your webhost comply with the deployment of the web app?

The daunting obstacle is now to learn another prog language to make it real.
MCoder Send private email
Sunday, September 06, 2009
 
 
Comparing your conclusion with how most readers appear to be interpreting it:

You never say "web apps rock; the desktop sucks", more like "the numbers are telling me *that for this app* the web is more lucrative". So (to me) the lesson is that you cannot blindly say "web" or "desktop"; each project needs to be assessed, measured and adjusted . 

Every comment on your blog then follows this with "Thanks Patrick, I always suspected the web was better than the desktop because of reasons A,B and C - now I know!" completely missing the point.
Mark Dochstader Send private email
Sunday, September 06, 2009
 
 
So now you'll make $40k/yr? That's pretty awesome!
Anonymoose Send private email
Sunday, September 06, 2009
 
 
problem 4. developer underestimate aesthetics. Joel mentioned that in his talk. if it looks fuggly, the user won't bother.

"the age of the pirates is coming an end, jack". lol. sure, web applications _might_ be immune to hacking, but i have used the web long enough to know that it is the favorite domain of pirates.

i, personally, would learn from mobile development. they do what desktop is doing, at small scale, and they are a success. so we can identify our mistakes.

anyways, good luck on your quest, Patrick.
victor a.k.a. python for ever Send private email
Sunday, September 06, 2009
 
 
I think you were a tad unfair in the "The Shareware Funnel Is Lethal" section. Here's an equally unfair assessment for the web (it's really just a rant on bad web processes):

1. Start your web session on Google, like everyone does these days.
2. Google your pain point.
3. Click on the search result to the shareware site.
4. Read a little, realize they have software that solves your problem.
5. Mentally evaluate whether the software works on your system.
6. Click on the register button.
7. Fill in far more fields than necessary.
8. Scream in agony as you are asked for completely irrelevant non-sense. Like, who cares what your name or address is? Just "gimme access already."
9. Click the register button.
10. Watch server error force you to repeat steps 6 to 9 again. Rinse and repeat as necessary.
11. Wait for an email confirmation of your registration.
12. Realize after several hours that the email is either in your junk mail folder because your free email provider hates everyone.
13. Repeat steps 6 to 12 as required.
14. Click link in email.
15. Get dumped at welcome screen.
16. Navigate around until you find the actual application on the web site.
17. Discover that you're missing some plugin.
18. Download plugin.
19. Restart browser. Realize things don't work. Progress to step 20.
20. Restart computer.
21. Get forced to download plugin again. Repeat steps 17 to 20 as required.
22. Repeat step 16.
23. Finally get to try web application. Breath sigh of relief.
24. Love the application as it solves your problem.
25. Begin payment process.
26. Realize that nothing you have is compatible with payment process.
27. Search for friend or relative to help you purchase.
28. Repeat step 25.
29. Fill in payment form and click "Pay Now".
30. Wait for payment processor and email verification.
31. Login to web application to actually use it.

Ok, that was probably a bit more unfair to the web process. Steps 25 onwards were about payment. etc. etc.

But the web is not without problems. Very serious problems.

I think that the biggest problem on the web right now is web developers. I mean that to include the PMs and business guys that stick their noses in and screw up what otherwise could have been good.

How many times have you gone to purchase something simple then found that you need to register? (This really ticks me off. I usually buy somewhere else.)

For 99.9% of all purchases, there is never a need to register. Even with most web applications, it's certainly possible to let people try the application without registering.

So why put people through that pain?

"Because we want their email address."

That's not an excuse. Is the business model about email addresses or about selling product?

What I really detest about the web is the whoredom that goes along with it and the utter disrespect for the customer in so many cases.


But that was all just a rant...


And really directed at the way that a lot of companies implement their web businesses. It's by no means necessary for anyone to create the nightmare that is typical of what so many out there are creating now. I wouldn't expect that sort of insanity from the crowd around here at BoS as everyone seems to have a decent respect for the customer.


What I really liked in your blog post, Patrick, was the conversion rates. That makes sense. $$$'s are good. :)

I am curious as to how you take that position on piracy though. Web-based piracy? Hey... Use my login... Seems like the same problem to me. You were very brief there. I can see how it would limit things though. It seems to me that web-based piracy should be easier on a small scale, but more difficult on a large scale.

You made some good points in your section on analyzing user behavior. Could you give another couple examples sometime when you find out more or have time? I'd be especially interested to hear of an instance where you had a question that it solved.

I can think of a few things in some of my own software where I wonder sometimes about how much it is used. I took some things out in the past and I NEVER heard one complaint about it. But I was just running blind with educated guesses.

Cheers!
Ryan Smyth Send private email
Sunday, September 06, 2009
 
 
Patrick, I sell web apps and so far even in this recession Ive seen quadruple sales growth with minimal effort. Thats a gross generalization, but your decision will pay off over time. I know a lot of people on here are hard core desktop-till-the-end-of-time people, but you have to realize we are moving into a new computing world now. To succeed, you really have to rethink old ideas and reformat them into the Web Model. So, you will do well with that decision. The iPhone is a great desktop app solution, but even there, I dont think that will last either as we will slowly see that selling things that sit on one computer somewhere doesnt make much sense when you can have an application seen and used by millions online for a fraction of the cost.

I also want to say something about SaaS. Companies like SalesForce, as far as SaaS, is a powerful model, and you can move that direction. But you have to be prepared to understand that there are other Web software models. I don't sell the SaaS model. I donm't believe in it actually. I think long term it contributes to a fractured "user data" model online, and forces people to store their valuable data over hundreds of websites, rather than under their own. So, I decided to build my business around the other types. Yes, its the "in" thing but not the only way to sell Web solutions.

So, I actually have gone back to the older Web model, and thats selling web scripts or complete websites people can host on THEIR websites, no hosted under say my own SaaS site. The reason is simply that Web 2.0 to me  and the SaaS model works for some things, but isnt making the "Web" itself a better model for your average business owner. It forces even people like you and me to store our data across other sites, where those sites make money off my content, leaving me with my content splintered all over the Web. Bad! Very Bad! Instead, I decided to build web sites that allow trhe opposite....people to create their own SaaS or better, contain their business and personal data on their servers. You should consider that with your product.

The other erason not to use the SaaS model is purely business-related. I also felt some time ago, that there would be a flood of individuals world-wide wanting to abandon the idea of managing their data on 10,000 SaaS sites, and centralizing all that data on their own personal domain. So, far thats starting to prove the case. More small businesses are now online trying to manage data, images and video on their own domains for SEO purposes as well as competitive advantage, so looking for complete solutions that work on their websites and servers. People (including everyone on this blog, almost) want their own sites and want to find ways to make money from those sites. Think of the thousands of people coming online with their own domains? All these people need better ways to manage data on those servers and sites. You will find, there is a growing market there. Yes, there are millions of free solutions and open source ones. But so too, open source doesnt have the support, time-savings, and hand-holding a solid and simplified Web product can have. So, just my 2 cents on the Web solution model. Its a good decision.....just think about the variables involved.
Website Photo Gallery Guy Send private email
Sunday, September 06, 2009
 
 
+1 for Website Photo Gallery Guy

I am paranoid about having my data under other people's control. If I can buy it and host it myself, then that's what I'll do. I've been burned before. I do not plan to let it happen again.
Ryan Smyth Send private email
Sunday, September 06, 2009
 
 
>>
1. How smooth the migration took place?
2. Did your webhost comply with the deployment of the web app?
>>

My product site has been a Rails application hosted on Slicehost for two years now.  This gave me a bit of experience with the platform, and meant that a lot of the infrastructure I needed (database, e-junkie integration code hooked up to payment system, etc etc etc) was already in place. 

I gradually built out extra functions I new I would need, released the first cut of the webapp, and then started iterating both within the app and within the site.  (Landing pages, placement of buttons, all that fun stuff.  The last month of my blog has a lot discussion about optimization if you're interested -- I sort of went on a bender.)

>>
So now you'll make $40k/yr?
>>

It looks like I'll sell about $4,000 in September, beating my previous record by about a thousand bucks.  My profit margin is generally in the 60% region, although that *might* go up as sales do, depending on how much of the new sales are do to increased AdWords spending.  I'm plowing a lot of the excess into various marketing projects.

>>
i have used the web long enough to know that it is the favorite domain of pirates.
>>

I know they enjoy *hanging out* on the Internet, but in terms of stealing services, their effectiveness is infintessimal.  There is just no way to do it short of compromising my database, and that is vanishingly unlikely to happen. 

>>
Hey... Use my login... Seems like the same problem to me.
>>

My problem with piracy, historically, is that after pirates get a keygen it scales to the freaking moon.  Casual hey-use-my-login piracy just doesn't worry me.  I can also catch it fairly easily, since I can track who logs in and how much.  ("437 logins last Thursday, Mrs. Perkins?")

Keygens are almost useless now for accessing the web application -- you have to be able to come up with a key which has been assigned to a paying customer but not associated with their account yet.  That's not impossible but it is vanishingly unlikely unless the customer cooperates with you.

>>
You made some good points in your section on analyzing user behavior. Could you give another couple examples sometime when you find out more or have time? I'd be especially interested to hear of an instance where you had a question that it solved.
>>

Sure.  I covered most of my existing tests so far, but I'll be on the lookout for something juicy for you for later.  One question I'd like to answer at the moment is "Should I be as strongly focused on teaching as I am?", since I have lately discovered rather larger pools of non-teacher users than I thought existed.
Patrick McKenzie (Bingo Card Creator) Send private email
Sunday, September 06, 2009
 
 
> One question I'd like to answer at the moment is "Should I be as strongly focused on teaching as I am?", since I have lately discovered rather larger pools of non-teacher users than I thought existed.

THAT sounds like a VERY interesting question!
Ryan Smyth Send private email
Sunday, September 06, 2009
 
 
Well, of course.

But why did you work on desktop software for three years,when Paul Graham published this famous article more than eight years ago:

http://www.paulgraham.com/road.html
Hanzo Send private email
Sunday, September 06, 2009
 
 
I should probably qualify that... I have the same situation. A lot of the people that use my software are outside of the target audience. e.g. They are in broadcasting, recording studios, subtitling, etc.
Ryan Smyth Send private email
Sunday, September 06, 2009
 
 
Hanzo, I don't regret a single moment of the last three years.  Aside from the massive strides I've made in non-technical skills and the assets (blog, satisfied customers, link juice, etc) I built in the 3 years selling only the desktop app, I would have been totally incapable of creating this three years ago.

Back then, I didn't know anything about administering Unix servers, SQL, Javascript, any web languages (aside from core Java -- and core Java is useless on the web without the EE stack), etc etc ad nauseum.  I learned all of those in the interim, mostly because they helped me sell desktop software.  (My day job gets a bit of credit, too, since I cut my teeth on Big Freaking Enterprise Web Applications there -- but honestly, I've taken more lessons from BCC to the day job than the other way around.)
Patrick McKenzie (Bingo Card Creator) Send private email
Sunday, September 06, 2009
 
 
Agree completely. When I was trying to figure out what I wanted to build, I quickly eliminated everything that was not a web app, for the very reasons you mentioned.

One random question though ... you wrote:

"Relocating a button, for example, requires two lines of code, a SVN commit, and a quick server restart. "

You shouldn't need to restart for that. While BCC might not be mission critical and so can probably afford some downtime here and there, it's not hard to set up a zero-downtime migration process.
Still Anon Send private email
Sunday, September 06, 2009
 
 
Why not best from both alternatives? A Java Web Start application has all the advantages of a web application and so responsive as a desktop application, and our stats show that 70%+ browser have Java 6 plugin installed. If not available Java6 can be downloaded in seconds!
Franco Graziosi Send private email
Sunday, September 06, 2009
 
 
Patrick, I could be wrong, but briefly looking at your website it appears you sell the desktop and web app only as a bundle.  I'm not  sure how you can come to the conclusion that your web app > desktop app when really you've added a feature to your desktop app rather than created a separate product...  Unless you are just talking about your preference for developing for the web.

Also, it looks like you are selling the web app for a one time price?  You may live to regret that.
Clusterflock Send private email
Sunday, September 06, 2009
 
 
"Long story short: web apps have vastly better conversion rates than desktop apps."

Based only on your one example?

I don't think users really know or care where the code is running and are more likely to pay for one platform versus the other. Maybe you just got increased revenue because you were no longer using a "use it for free then pay only if you like it" model (30 day free trial, etc) but now require payment up front? Of course that would make you more money! That's why mainstream software companies and any other retailer for that matter make you pay first, and only then do you get the product. It may even be "free for 30 days," but they'll take your payment info at the start and charge you automatically unless you explicitly cancel.

THAT's the problem I see of a lot of "free trial" shareware attempts, that depend on the person coming back to the site to buy it later. I don't know any other industry that lets people use the product for free for 30 days and return to pay for it if they like it.
 
Instead, write good sales copy, show a lot of screenshots, show a video demonstration, offer a no questions money back guarantee if they don't like it, but for God's sake charge for them to buy it. That's what consumers expect, I think!
CC Send private email
Sunday, September 06, 2009
 
 
>>
Maybe you just got increased revenue because you were no longer using a "use it for free then pay only if you like it" model (30 day free trial, etc) but now require payment up front?
>>

I don't require payment upfront.  The model is exactly the same: download a trial or use the website, either way you're limited to 15 cards.  Pay and you get more.
Patrick McKenzie (Bingo Card Creator) Send private email
Sunday, September 06, 2009
 
 
Patrick, perhaps you have started to bump into the wall for finding potential buyers of Desktop BCC, and you are now drawing customers from the big pool of prospects who decided not to buy BCC for whatever reason during the past 3 years.  I'm definitely not suggesting that you continue to work on improving the desktop version, and if you were starting out now and released only the web version, you would probably still get the buyers who prefer desktop applications, simply because your product is better (and easier to find) than its competitors.  As others have already said, this isn't definitive proof one way or the other in the web/desktop debate.

I think you make a very strong case for the argument that the free trial/shareware business model is toast (let's face it, none of the really successful software out there has made this model work).  People make decisions to buy homes and automobiles in less than 30 days.  And I completely agree that keeping pirates away from data is a much better approach than stopping them from running executable files.  Thanks for this!
RGlasel Send private email
Sunday, September 06, 2009
 
 
@CC

>>
 
That's why mainstream software companies and any other retailer for that matter make you pay first, and only then do you get the product.

>>

Free trial is universal in software.

Microsoft gives 120 day free trial for BizTalk Mapper.

They also give an effective 30 day free trial for Windows and Office (by allowing use of it without entering a license key for 30 days).
yow Send private email
Sunday, September 06, 2009
 
 
However, Andrew Chen says that when it comes to retention, desktop is better:

http://andrewchenblog.com/2009/08/24/how-desktop-apps-beat-websites-at-building-large-active-userbases/
Hanzo Send private email
Monday, September 07, 2009
 
 
It's refreshing to see someone back up their decisions with actual relevant and facts (conversion rates) rather than just pontificating endlessly like Paul Graham and most others do.

Having said that... BCC is a lot different from "my app" in that it doesn't have a major "sensitive data storage requirement" and thus has much different security, privacy etc. requirements.

I am curious how the Perfect Table Plan guy - Andy Brice I think - feels about this? Is his app less feasible to Webify due to the complex allocation algorithm that he developed? (I don't see why but maybe he'd need do less processing locally than BCC can).
GregT Send private email
Monday, September 07, 2009
 
 
Andy has previous said that the genetic algorithm he uses to optimize seating positions would be a poor fit with a web application.  My sense is that you could probably still do it if you were creative.  In particular it seems to me that it is disgustingly parallelizable, so if you had a cluster of e.g. Amazon EC2 instances they should be able to just grind out as many seating charts as you want, but programming for that sort of environment is a weeee bit more tricky than you'd think if you've never done it before. 

(Disclaimer: worked on GAs at the last day job.)
Patrick McKenzie (Bingo Card Creator) Send private email
Monday, September 07, 2009
 
 
What is a GA? Grid Application? Having parallelized disgustingly parallel problems before, I think you did it wrong if you think it's hard :-)
Anonymoose Send private email
Monday, September 07, 2009
 
 
>Microsoft gives 120 day free trial for BizTalk Mapper  ...
an effective 30 day free trial for Windows and Office<
Microsoft has a very broad product offering and often the left hand does things that are contrary to what the right hand is doing.  The low-profile developer/enterprise software titles from Microsoft do often come with free trials, presumably that target market is still interested in "try before you buy."  Regarding Windows (non-server editions) and Office, I doubt if any of the people who install them without paying for a license first, end up paying for a license by the time the activation nagging stops.
RGlasel Send private email
Monday, September 07, 2009
 
 
If I am not missing something, in order to make a worthy Web 2.0 version of his software Andy would have to send/receive all data over HTTPS, use servers that are able to process several table plans at once, as fast as the desktop version can, and let the users save the table plans in the cloud using strong encryption.

Even then, his users wouldn't be able to work if their Internet connection failed, would have to download the table plans for backup and some of them would have to worry about what will happen if Andy decides to abandon his product.
Alen Dombaj Send private email
Tuesday, September 08, 2009
 
 
You're thinking like a developer.  Without meaning to step on Andy's toes, I'm going to go out on a limb and say he deals with mostly non-technical B2C customers:

1)  They don't know what HTTPS is and don't care whether their data is transferred over it or not.  (Not that doing this is in any way difficult.  Pay GoDaddy $20 a year, copy/paste into your web server config, you're pretty much done.)

2)  They don't care where their data is stored or what it is encrypted with.  (Encryption for data stored on the cloud is pretty useless if the provider holds the key, incidentally.  They have to compromise your application or database server to get the data.  Your application server needs to be able to decrypt the data to operate on it, accordingly it needs a copy of the key.  Any vulnerability which exposes the cryptotext should be assumed to compromise the key, accordingly, encrypting doesn't actually provide security benefits.)

3)  They're not data collectors, hoping that their data/application will remain accessible until the end of time.  They are goal oriented: Suzy is getting married in 4 months.  She needs a seating plan.  After Suzy gets married, she will likely never need to see that seating plan again.

4)  They are fast moving past the point where the words "network connection" mean anything to them at all.  Its like saying the software needs electricity to run... true, but vacuous, because computers are always assumed to be plugged in and they are always assumed to have a working connection to the Internet because the user can't do anything without a working connection to the Internet.
Patrick McKenzie (Bingo Card Creator) Send private email
Wednesday, September 09, 2009
 
 
I would like to add that you can easily turn web app into desktop app using things like Stunnix Advanced Web Server for CDROM:
  http://stunnix.com/prod/aws/overviews.shtml

It allows to turn a php/perl/python/java site that uses mysql/sqlite/firebird for storage into portable application, that runs on user's computer locally - on Windows, Mac OS X and Linux!! It won't require any internet connection to run. Almost no modification of serverside scripts is required.

So you can distribute your php/mysql site as a 30Mb installer (.exe for windows, .dmg for OSX, .tar.gz for linux)! Since that web server supports ZendEncoder and IonCube loader, you can ship your serverside .php scripts in encoded form, so you can add a lot of antipiracy (or anti-reuse) checks there.

This is very useful technology, that allows you to reduce the difference between desktop and web apps.
NickCEO Send private email
Wednesday, September 09, 2009
 
 
2) Yes, an encryption key stored by the provider along with the data is insecure.
It should never leave the client computer.
:-)

3) & 4) What about the business users?

Anyway, this doesn't apply to your BCC.
If your sales are up, you are on the right path.
I wish you good luck with your (new) product!
Alen Dombaj Send private email
Thursday, September 10, 2009
 
 
All Programming is Web Programming by Jeff Atwood:
http://www.codinghorror.com/blog/archives/001296.html
MCoder Send private email
Friday, September 11, 2009
 
 

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics
 
Powered by FogBugz