Fog Creek Software
Discussion Board




Joel on Sun's strategy - OSS "TCO"


Sun perhaps wanted to use java to commodotize the client, driving up demand for [its] server hardware and preventing the microsoft monopoly on the client.  Ironically, java has had seemingly more success on the server (or as a development environment/programming language).

Seperately, I haven't seen anyone that talks about (or just mentions) Total Cost of Ownership "TCO" that hasn't pointed out the benefits of not having to worry about proprietary license management (for a 100% OSS shop).  How valuable would it be for a CIO or IT Manager not to have worry about a raid by the BSA?  In many large companies it's more than a full time job just keeping track of proprietary software licenses.  IT staff in a OSS company can install from the same OSS CD on every computer.  OSS companies have no need to pay tens of thousands of dollars for MSDN licenses for the QA/development groups.  Also, this TCO benefit of OSS is dramatic when applied towards the ability to grow and meet increased demand.  As a company hires more employees (this company has already paid transition costs to move to OSS) the additional cost per employee is closer and closer to 0 software wise.  MSFT shops pay a "tax" for each new employee that isn't transferable unless the company is under the site license contract limits .  Also, an OSS company can quickly expand server and application farms while paying (almost) nothing, other than for hardware.  An OSS software shop can react to increased demand with less cost, and can make better reuse of repurposed hardware (can a MSFT shop use Windows Professional desktop machines or MSDN software in production should the need arise suddenly,  either effeciently or without charge in each case?).  Also, the OSS "TCO" advantage is dramatic for small and mid-sized companies that don't receive the discounts MSFT gives to larger companies (TCO comparisons should be made among differently sized companies so as to show the even larger advantage of OSS for smaller to mid-sized companies).

OSS dude
Sunday, November 02, 2003

OSS doesn't necessarily mean free. I think some IT managers are worried about the vagaries of various OSS licenses (e.g. there was a discussion here about the MySQL license last year - the pricing is somewhat vague, as I recall in some situations you pay, in others you don't) and are more comfortable sticking with what they know.

OSS has been very widely adopted in the Java community, perhaps to the detriment of Sun, it'll be interesting to see if .Net fosters as many open source projects.

Walter Rumsby
Sunday, November 02, 2003

Large companies will rarely use OSS without a support contract (the typical CYA behavior), and many of those support contracts have per-seat payment structures, so they still have to deal with license management.

For them the benefit comes more from avoidance of lock-in to proprietary file formats, and the avoidance of forced upgrades that stem from that lock-in.

T. Norman
Sunday, November 02, 2003

> it'll be interesting to see if .Net fosters as many open source projects.

There are some; nAnt and nUnit come to mind.

The real question in my mind is whether you can deliver an enterprise application built in .Net on Linux, with NO Microsoft technology; that is, whether the framework itself can be cloned, as Java has been.

I think the answer is a resounding "NO". :)

If I were IBM, I would try to do to C#/.NET what they've done so well with Java: offer a free, industrial strength alternative implementation. So if Java does well, they win; if C# does well, they win; and if it remains a 2 horse race, they win again.

Portabella
Sunday, November 02, 2003

Just for the record, mySQL is free, as in beer.

It is only where you sell a product based on mySQL that they ask you to pay a licence.

A bit like the way the GPL compels you to release derivative works

Tapiwa
Sunday, November 02, 2003

That's not free as in beer.

Dennis Atkins
Sunday, November 02, 2003

Dennis: It's not free-as-in-BSD-beer, It's as close as it gets while still being GPL.

If you write something that cannot function without MySQL, and you don't GPL your own code, you have to negotiate a license with MySQL AB (The company).

Assuming I understood right, if you write something in which MySQL is just one of many backends (e.g., it can use Postgres, SQL Server, Oracle, MySQL or any other interchangably), then you _can_ package MySQL with your product, and need not negotiate a license. Obviously, it's still GPLd, so you must offer the MySQL source to any recipient of the binaries. But unless your program can't do without MySQL, it's free as in beer as far as you're concerned.

Ori Berger
Sunday, November 02, 2003

Err, Dennis,
                Rather like free as in beer actually. You invite me to your party and I can drink as much beer as I like, but I don't think you'd be that pleased if I started passing the bottles out of the window and selling them to the local off-license.

                  Tapiwa; the problem was discussed quite thoroughly. It wasn't too clear as to what was a product that included mySQL. The license was a little vague, though the commercial price was so low that it hardly justified any FUD.

                  OP: you are probably much more likely to get a visit from the BSA, or an extorition demand from MS lawyers, if you use Open Source. Small PC assemblers that sell PC's without an OS, or with Linux installed, are well aware of this.

Stephen Jones
Sunday, November 02, 2003

Most companies that use mySQL or other databases don't distribute the application outside of their own organization.  If you don't distribute it externally, there is no need to GPL whatever code you write on top of or alongside it.  And even if your app runs on top of it, you can always distribute your app separately, and have the recipients obtain their own mySQL.

NoName
Sunday, November 02, 2003

The cost of ownership for OSS depends on what you want.

You can download it and use it, there you go.

You can get in redhat trainers, buy all the desktops, advanced server and get a support contract.

It depends on each different situation.

fw
Sunday, November 02, 2003

Free as in beer means you can do whatever you like with it. You give me a free beer, I can drink it, take it home, sell it, whatever I like. Licenses like the BSD are in this quadrant.

If your license has a lot of restrictions about what I can do with the software (forbidding sales withot GPLing is a big restriction, a humungous one), then it is simply not free.

Let's say I go down to get a 'free lunch' and I am told I have to sweep the sidewalk first if I want to share the lunch with my friend. Well, then that is not free -- it comes with restrictions.

"Free as in freedom" is also a misnomer, when applied to the GPL. The GPL is as far from 'free as in freedom' as any license that is in popular distribution. There is no 'freedom' associated with the GPL, there is only slavery for coders foolish enough to indulge in it.

Dennis Atkins
Sunday, November 02, 2003

No name,

Distribution is distribution. If software is distributed within your department, you'll have to open it.

Dennis Atkins
Sunday, November 02, 2003

From the GPL FAQ at GNU.org:

http://www.gnu.org/licenses/gpl-faq.html#GPLRequireSourcePostedPublic

"You are free to make modifications and use them privately, without ever releasing them. This applies to organizations (including companies), too; an organization can make a modified version and use it internally without ever releasing it outside the organization.

"But if you release the modified version to the public in some way, the GPL requires you to make the modified source code available to the program's users, under the GPL."

NoName
Sunday, November 02, 2003

Also, just to highlight a section in the post that NoName just made:

>>the GPL requires you to make the modified source code available to the program's users

This means that if you distribute a GPL'd program to users outside of your organization, you have to give (or make available) a copy of the source code *to them*. You don't have to put it up on a web site or make it available to everyone - you just have to make it available to the people that you gave/sold the binary of the program.

They can, at their digression, redistribute it. Of couse, if you modified a GPL'd package for a business, they are probably _not_ going to redistribute it to their competitors...

There's lots of FUD against the GPL. I agree it isn't the best Open Source license in the world (I like the BSD license better in ways), but there's nothing deceptive about it. IF you don't like the GPL, simply don't modify or use software licensed with it.

RocketJeff
Sunday, November 02, 2003

I don't think GPL is deceptive, but I also don't think that MySQL is as "free" as people think.

Walter Rumsby
Sunday, November 02, 2003

MySQL AB also bought the JDBC driver that everyone used (mm.mysql) and gave it the same license.

So now, as I understand it, if I distribute Java code and include the jdbc driver (so that the customer can download and install MySQL separately), I STILL have to pay the licensing fee.  This was confirmed to me by a MySQL sales rep.

anon
Sunday, November 02, 2003

Then don't include the JDBC driver, let the customer download it.

NoName
Sunday, November 02, 2003

*  Recent Topics

*  Fog Creek Home