Hacker News new | past | comments | ask | show | jobs | submit login
How to Compete Against Open Source Competition (softwarebyrob.com)
52 points by gthank on Aug 11, 2009 | hide | past | favorite | 57 comments



I really hate when people use that line:

"Open source software is free if your time is worth nothing."

It sadly misses the point, often on purpose, that "free" in "free speech" is not the same "free" that goes in "free beer".

By using free software you take control of your technology. Maybe that's not a priority for you - and you can live with all your company communications living, say, inside a Notes or Exchange server - but it is important to so many companies it becomes a relevant economic pressure.

So, when you decide to go proprietary, stay aware you are letting another company decide the fate of your data. That decision will have a deep impact on how you conduct business for a long time.

BTW, the 90's called. They want their "complete lack of drivers" argument back.


If anything has a complete lack of drivers, it's OS X or default rolled Windows. Linux supports more drivers in terms of legacy and current hardware out of the box, unlike Vista and XP which culled legacy hardware support, and don't have as many drivers as linux in terms of out of the box support.

So I must agree it's a horrible argument.

>"Open source software is free if your time is worth nothing."

While I agree with your original point, that it's the freedom in terms of control. This argument is completely invalid because it's like saying "Windows sucks because 4 year olds can't administer it effectively thus it takes longer". If you're going into OSS you need OSS specialized and trained staff, someone who has only worked with Windows Server isn't going to be able to effectively manage OSS, OSes because it's obviously logically different. (Difference is if they've used a commercial UNIX which is quite close to Linux you just have to modify some habits and learn package management for your distro).

In short the problem is the lack of preparation that goes into going Open Source in a company, such as getting the IT staff familiar enough with the tech.

Example of Windows vs. Linux -- Setting up FTP, allowing user logins disabling anon. (Using CentOS as distro)

CentOS:

  yum groupinstall "FTP Server"
  vi /etc/vsftp/vsftpd.conf
  
  anonymous_enable = no
  local_enable = yes

  chkconfig vsftpd 345
  service vsftpd on
Windows:

  Open Server Role Manager
  Go Through Server Role Wizard to Select FTP server role
  Go into IIS options.
  Go through multiple prompts, properties screens and wizards to finally enable local login and disable anonymous.
In short:

I can remember every step of the install on Linux, on Windows I have to be looking at the damn screen. Yet I've spent as many years on Windows Server as on Linux. However because I know exactly what commands on the commandline do and it's an easier interface to remember off the top of my head than a GUI, I can do it faster IF (very big if) I have all the knowledge I need.

Not only that but the "vendor lock in" is so inherent to Windows, people don't realize their core data (how their server is set up) is almost impossible to get at and export without the use of third-party full backup tools. Unlike Linux in Windows I can't clone /etc/ or some parts of /etc and stick it on a different server running the same version of the OS and expect it to be a drop in replacement.


You said it. I use open source software because my time is valuable. I've spent much, much more time wrestling with Windows than I have with Linux.


I’ve used mainstream image editors like Photoshop, Paint.NET and Gimp; some of my best friends are mainstream image editors. And when I saw Gimp I almost went blind. Children were weeping; fruit was bruising. The UI could kill small animals.

Really? Did you really have to say it that way? I use the Gimp every day, and it's quite good in my opinion. It does what I tell it to, and not what I "mean". Photoshop does what you "mean", as defined by Adobe. As an example why that's wrong, something like "I'll interpolate this scaled bitmap linearly, thanks" is frequently the wrong solution, but happens anyway when you scale a section of an image.

Now I know this article isn't about the Gimp, but when someone wants to spark a flamewar by claiming the user interface to the Gimp causes him "to go blind", it really discredits his other claims nearly instantly.


Why would an irrelevant over-statement discredit the other points? It's a literary device. I'm sure you could mentally replace comments about going blind with "I do not like the user interface of Gimp".

I mean is it really necessary to take it quite so literally? Jumping up and down about deliberate hyperbole and then arguing that it invalidates anything else written in close proximity makes it seem like you probably just stopped reading at that point and didn't evaluate the actual claims made.


> Why would an irrelevant over-statement discredit the other points? It's a literary device.

As someone who doesn't use Photoshop or Gimp, I can't comment directly on how hyperbolic the comment is. That said, overblown hyperbole sometimes indicates the writer is willing to take liberties when writing about more substantive things. The validity of this here depends on how much blindness you think Gimp actually induces.

(Soccer is so boring! It's like watching a slower version of paint drying! Cricket is the sport of kings! <- Here, the hyperbole may indicate that this is argument from [rationalized] fanboyism, as opposed to argument from a more reasoned opinion.)


Interesting. All I get from that statement is that you enjoy cricket more than soccer. By over-stating the point, you've just shown that you emphatically hold that view. It conveys nothing about why you hold that opinion. Also, the fact that it is so obviously over-stated makes it reasonably clear that your tongue is most likely in your cheek, and you don't actually believe soccer to be more boring than paint drying slowly.

Perhaps I'm just defending the original post because I personally am inclined towards hyperbole as a literary device, just like everybody else in the entire universe is.


I think I view the emphasis as a substitute for reason. I (perhaps unnecessarily) reason that a reasoned opinion would substitute that reason for the emphasis, e.g., "soccer is boring because of [example of slow play], although [concession to artistry], [example of cricket's intriguing batplay in relation to soccer] makes cricket a more interesting game". In the article, hyperbole (and presumed common experience with the presumed bad Gimp UI) was a substitute for reason.

In your final line, your hyperbole supplements your reasoning without supplanting it.

(If I were to call a 'confirm password' dialog an onerous, Herculean task before talking about an otherwise unrelated part of the user experience you might expect I am poorly calibrated with the real world.)


> The validity of this here depends on how much blindness you think Gimp actually induces.

Perhaps you've mistyped, but how much blindness do you actually think it may induce? Perhaps you could specify a range of blindness which you find plausible.


UI friendliness on the scale of perfect vision to blind. The more unfriendly Gimp seems, the more natural the hyperbole.


I see what you're saying, but that's not the point of hyperbole. He's just saying it's terrible, not trying to quantify it.

If I said that some band "sounds worse than a dying giraffe", are you going to ask me how much worse it sounds, or what the giraffe is dying of?


Ah, oops. That's not what I'm saying.

If you disagree with the basis of the hyperbole (i.e., that Gimp's UI is bad), the rest of the conversation derails, as seen with a few comments posted here. If you agree, then it fits and nothing goes wrong.

If you recommended listening to new band A instead of my preferred band B, I might listen to new band A. If you recommend new band A after saying my preferred band B sounds worse than a dying giraffe, I will probably be okay presuming I wouldn't enjoy new band A.

(I would, however, say that band C sounds like two dying giraffes, band D like a sick weasel, and band E like a happy songbird with bronchitis.)


Ah, OK. I do see what you're saying. At the same time, it's not really possible to come with an example that everyone's going to agree with. The author's point should still stand - regardless of how you feel about GIMP specifically, surely you've felt the same about some other app before.


Hyperbole, like exaggeration, is a euphemism for a lie; it is a common and socially accepted lie, but it is still a lie. If you catch someone lying about something, wouldn't you worry about whether he was lying about something else that you were less informed about? I admit neurotypicals don't seem to care much about lying, probably because you can't seem to help yourselves, but some of us do care.


So if I said to you that my laptop "weighs a ton", it will diminish my credibility with you simply because its mass is not literally 2000 pounds? That seems rather cynical, or at least uncharitable.


Deliberate hyperbole is not a "lie" in any sense of the word I understand, because it is not designed to deceive anyone. It's generally done as an expression of hand waving. You are being deliberately imprecise, either because you genuinely don't know the real value (in which case "guessing" would be presenting a deceptive level of precision which you do not actually have), or for humorous effect - to make a point more emphatically.

The laptop example used below is good. Saying "this weighs a ton!" is much less deceptive than if I took a guess and said "this weighs 2 kilograms". It obviously doesn't weigh a ton, because its density would probably exceed that of all known elements. Saying it weighs a ton has two connotations: 1) That I don't know how much it weighs (or it is irrelevant to the conversation) and 2) I am finding it difficulty to carry because its weight is beyond that which I can carry comfortably. Saying "this weighs 2 kilograms" does not convey the same information.

Similarly, making an overstatement like "Gimp's UI makes me go blind" is clearly not designed to deceive anyone. It is physically impossible that Gimp's UI would have made a person go blind. The person saying this is not asking you to believe it, instead, he is saying "I find Gimp's UI very visually unappealing, and the reasons for this are not important right now).

So, in summary, hyperbole is not the same as lying. Lying is not "anything that is untrue", lying is deception, and the suggestion of deliberate deception where none exists is quite offense to most people!


It seems like there are two conditions that must be met for something to be a lie: there must be a falsehood and that falsehood must be presented with the intent to deceive. Hyperbole, exaggeration and sarcasm may, strictly speaking, be falsehoods, but the intent is clearly not to deceive.


I used to despise the GIMP because of its interface. All those clunky windows... Yes, I'm aware that there are forks which add MDI support, but meh, I want to use the official version..

Then I switched to a tiling window manager and now those horid multi-window layouts are... the greatest thing ever. To me, its as if they have a single window layout, but with a huge amount of flexibility in how I want the layout. Now I like the GIMP and its multi window system and dislike MDI/single layout programs :D

So.. an interface is the best thing ever to one person and it turns another person "blind".


"but when someone wants to spark a flamewar"

Don't forget getting a lot of pageviews...


There's an easier way to compete against Open Source competition:

Licensing and software patents!

Put simply, you can afford to license some proprietary format from a complimentary product that people use (ensuring that it is one of sufficient complexity such that will take months to reverse engineer).

Make your software compatible with any number of other proprietary software packages, using these proprietary formats and protocols that open source developers will never have access to without expending huge amounts of time and energy. Then, to really firm up your market share, be sure to invent some more proprietary formats and protocols that future developers can use to integrate with your product. Be sure to share your technology for free with other complimentary products so that you can claim that it's a "standard". Then, encumber your proprietary "standards" with the sorts of licensing or NDA requirements that put them beyond the reach of open source projects.

I'm not even being totally sarcastic here. If your entire business model is dependent on being able to compete with open source, then I think utilising all the hard work that previous companies have put into achieving vendor lock-in is more worthwhile than a good installation process, a marketing budget, or having more features than the other guy.


Thank you Microsoft.


"you can afford to license"

And Open Source can't? Sure, Free (as in beer) OSS cannot, but there is such a thing as commercial OSS. I, personally, am toying with ideas of basing a startup around OSS (that is, a product business where the product is GPL's). Not sure how well it would work, but I think it could. It certainly works as a service business (support, consulting, etc), so even if a startup fails, the business does not have to be unprofitable.


You can only save people time if they are short of it and can spend money easily.

Hobbyists and big companies have lots of time and are reluctant to spend money.

Sell to small businesses who don't have in house expertise.


Agreed on small companies, though big companies do spend a ton of money on software, including software that compares poorly to open-source equivalents. Think of commercial source control.

In both cases, the author is right on. Focus on installation, documentation, support, and usability. Each of these things can make paid software less expensive than free software, assuming that [paid cost] < ([free setup hours] - [paid setup hours]) * [hourly rate].

And more importantly, maybe, businesses will pay a premium for decreased risk. If they think your paid software with good support/installation/usability/documentation is less risky than another tool, you've got a shot.


I've been involved in the buying end of these types of projects numerous times for both hardware and software in U.K. Universities. For £100k+ projects it typically goes like this:

Companies get a invitation to tender, usually europe wide. Companies submit an overview of what they want to do to solve the problem. Companies that have been in business less than 3 years or don't have a sound financial background are weeded out.

Then it's typically it's narrowed down to 3-6 companies early on. Each submits a 100-150 page tender (on paper or MS word - often with heavy copy+paste from previous bids) with prices (blind - you don't know the competitor's prices), different options etc. Each company gives a talk with a sales person and a technical person at least - are grilled by half a dozen people who all know their stuff from the customer and have different technical requirements and beliefs + management people with their own ideas. This goes on for about 6-12 months where no money changes hands and seller incurs travel/staff etc. costs.

Then it's narrowed down to 2-3 for extra implementation details and more meetings with other key stake holders - many of which have just heard of the project and often don't approve of the direction.

If you win the tender, you start getting paid in a schedule (4 or 5 big payments) depending on implementation of the project, with the final payment often 3-6 months after it's all working and live.

I would suggest if it is your business model to sell expensive products to large companies, that you have someone in sales who has done this all before.


Agreed. I've never personally sold to big companies, but I have a consulting client who has/does. Ugly process.

What about getting through the back door via consulting? I know some people who have taken this route, and it seems to work at least some of the time. Basically, you sell a license to your software wrapped in consulting time (setup, customization, support). This has potential, at least, to be a leaner sales process.


basically in u.k. universities there are barriers at £12k and about £100k. £100k+ is like I said. £10/12k+ initial cost is easier and something like three quotes, justification and head of finance sign off but that's internal - so is specific to the insitution but it's fairly common and quite straight forword.

If the project starts looking to buy a big product it will go through the process. There is probably a way in with consulting if you start small but that wouldn't really suit product start up.


If a company that sold implementations of and support of open source products were subjected to this kind of sales cycle for its services, then it wouldn't cost any less than closed-source products.

IBM Global Services will happily rip out your "legacy" infrastructure and replace it with nice shiny Linux. But not for free... And when the dust settles, it's not going to be any cheaper than if they did the same job with AIX (why would they leave money on the table?)


This is what MS has been doing for years, no one uses MS products for a stable quickly recoverable environment. Not Google, GE, or any other big company. MS thrives on small to medium businesses because of it's dominance in the market, and it's ability to offer every product a business would need. They make their products so easy a monkey could set them up, but so profitable that only MS employees can manage them efficiently with inhouse tools.


As I recall, a lot of large companies use MS Windows and MS Office for their standard user desktop. They might not use it for the software that runs their enterprise but they are still paying MS lots of license fees... In this sense, I think MS also "thrives" on large companies...


I'd argue that the bulk of data which is valuable is on the enterprise. However you do have a point.


The largest private company in the world, Walmart, uses Microsoft software from their servers down to CE on their Telxons. I suspect you are confusing primarily IT companies with companies more generally.


Wal-Mart is a public corporation.


I'm not saying big companies don't buy software. What am saying is the process is very long and it's better if you are a big established company selling to those big companies. This by definition is not a startup.

As a startup you could spend a whole year with everyone working on a deal with a big company and have it fall through - then what do you do?


Spot on. S3stat pays my rent, even though I link straight from the site to a set of detailed instructions to roll your own version of the service.

If you have a dozen hours to follow those instructions, debug and get it up and running as a scheduled task on one of your servers, you can get it for "free". Or you can pay me $5/month to do it for you.

Assuming you'll use the end result for one year, your break-even point comes when you value your time at about $5/hr. If you think you're worth less than that, you'll do it yourself. If you think you're worth more, you'll buy it.

People with more money than time will happily trade one for the other.


S3Stat looks cool and I myself might be using that in the future. However, usually it is not simply time vs money as you say. Using prepackaged software is a dead end. You can't do anything further with it. You usually don't learn anything that will give you an idea for doing something else. It may be just a time vs money trade-off for non-developers but the equation is different for developers. Fun and learning opportunities come into play.


Whoah, S3stat looks great! The kind of thing I'd love to have but have more important things to work on myself. I'll happily pay you $5 for that.


[reposting my comment from the blog it's self]

The problem is, if you want to sell your software to large user base then the per-user costs become prohibitive.

For example, say the Open Source product takes 100 hours to setup (which is generous) which is $5,500 and server costs are $4500/year = $10,000

You have a hosting product that requires no set and no server the subscription is $36/user so…

10 users = $360 (big win)

100 users = $3,600 (small win)

1,000 users = $36,000 (oh dear)

and it’s not unusual to have 10,000 users ($360,000)

You’d think that companies would get the problems with this model, but at least one company doesn’t: https://www.yammer.com/about/pricing


Enterprises with over 1000 employees can contact us for discount pricing.

It's on the page you linked. I would suggest you look at MS for a better pricing model. Their Enterprise software costs more but you can get a huge bulk discount. Want to save money just buy more. The idea is to start working with a large company and then keep up selling them more stuff.


Yeah good point, however selling to a large organisation is difficult when your a small startup because decisions take a long time and often require you to meet them, submit proposals etc. Even then there is a very good chance they will turn around and say no, and not pay anything and go with a competitor.


But for 1000 users or more, you will need someone to support the software. And probably only that person knows the intricacies of the system. It obviously costs the company some money to devote a person to this open source product. Now if that person leaves, it is going to cost [in time and money] to find a replacement.


Often you don't need a whole person and you can split the role with several people even then to spread the risk. Even with SaaS or paid support issues are resolved slowly and require a technical person on the customer end anyway.

Open source software is actually pretty easy to support. Windows servers, Exchange and Oracle are all pretty bad and the support isn't great either + they cost money.


Although I see the point of the assessment, the author fails to understand the change in culture with the newer generations. Especially in software where familiarity is the major driving force in the products which are used. I would much rather use a software package that I have been using all through college and grad school even if a commercial package may be better. It all boils down to familiarity.

Also members of the newer generation respect what open-source stands for. We realize the benefit to society. We want to drive change and innovation especially if it is free and open.

Then comes the question well how do you beat the open-source? Well, I dont think you can. You have to embrace the technology and build upon it. Use it as a platform for further development. Only when companies begin to embrace the open-source will they begin to be successful.


Here, allow me translate this article: "blah, blah, blah"

Anyone with half a brain who has ever had to wade through the "documentation" for certain kinds of proprietary software can probably agree that a lot of it is simply pointless and redundant. Case in point: Great Plains by Microsoft. That is like, ERP hell.

Anyway, the only actual way to compete against open-source competition is to stop thinking your own time is so much more valuable than everybody else's.


[from my comment on the site]

"...there goes two hours of my day searching, configuring and installing dependencies."

This is the sole reason for building Flooha.com. No average person should have to do this kind of thing just to use some website software. We’re in beta and it’s not perfect yet, but we hope to make life a lot easier for thousands of people who don’t want to fight with their software.


I can't say "dependencies" have ever been particularly high on my list of software gripes. At least not since package managers and repositories matured to the point (at least 5 years ago) where 99% of my dependency installation is either done automatically or is available to me mostly-automatically within a few keystrokes.


I extrapolated his statement to include things like software addons. Even an experienced web developer gets annoyed by searching, downloading, uploading, configuring permissions etc... It's very similar to what he's griping about.

Yes, mature apps like WordPress have a built in plugin installer, but have you ever worked with software like MediaWiki or osCommerce? Installing "extensions" or "contributions" (what we just call addons) can make you crazy. Open this file, find this code, replace it with this or past this after it, rinse and repeat dozens of times. uggh


And how many times do you do that in a lifetime?

I've been a commercial programmer for about 10 years now, and in that time I still don't think I've spent even a fraction of the time I've spent dealing with other, considerably more irritating issues in software. My dealings with MediaWiki and osCommerce (and what you seem to be describing) usually involve following half a page of instructions in the order they are written, without a lot of thought or effort being required.

But hey, I could be wrong. Perhaps there are people out there that really hate following step-by-step instructions.


"Perhaps there are people out there that really hate following step-by-step instructions."

Yep, they're called "users". They aren't programmers and don't want to be. They just want something to work. I'm surprised a programmer would rather waste time on trivial tasks than to just click a few buttons.

"And how many times do you do that in a lifetime?"

If you are someone who is trying to build a real website and trying different things, you do it a lot.

"...I still don't think I've spent even a fraction of the time I've spent dealing with other, considerably more irritating issues in software."

It really depends on exactly what you're doing, but since programming is your profession, of course you will deal with a lot of other issues. We're just trying to save people time and money.


I was just suggesting that "users", even those who aren't particularly technically-inclined, are more than capable of following step-by-step instructions, given that the only requirement is generally knowing how to get things onto a web server, how to copy-and-paste, and how to edit a file.

But I wish you the best of luck if your users are happy. Perhaps I'm just getting cynical :)


A must read for open source developers.


Or just open source your software and sell services to those that want to save time :-)


That hasn't worked well for too many people. Most OS businesses that haven't failed tend to dual license, and cripple the installation/documentation(technical or product) in some way for the OS version.


Yesterday's VMware acquisition of SpringSource suggests there is a very lucrative market.


Case in point though: spring source had "community" builds + special builds for customers, and the community builds + documentation were crippled somewhat. I know a lot of commercial open source users (who weren't paying) were disappointed by some of their actions.


I wasn't disagreeing with you that that is what they are doing. My point is that it has been successful.


Yeah, it's one solution. Freemium or paid versions for business is another.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: