How to Compete Against Open Source Competition
softwarebyrob.com
softwarebyrob.com
"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.
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.
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.
Don't forget getting a lot of pageviews...
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.
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.)
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.
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.)
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.
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?
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.)
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!
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".
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.
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.
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.
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.
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.
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.
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.
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?)
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?
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.
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
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.
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.
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.
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.
"...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.
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
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.
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.
But I wish you the best of luck if your users are happy. Perhaps I'm just getting cynical :)