Fog Creek Software
Discussion Board




Open source complexity issue

I've snipped this from another post on a different topic here.  It stood out like a sore thumb.

"Since this is turning into a discussion of how open source will affect us, let me recommend that everyone read a great article by Marc Fleury.  Basically he explains why he CAN and IS making money by providing an open source project such as jboss.  No small time ISV is going to be able to come up with a complex Application server (or database program, or operating system, or ...) and make money doing it.  BUT, many ISV's can and will make money writing custom software FOR those big, complex applications.  Hence the reason OPEN SOURCE WILL MAKE US ALL MONEY.http://www.jboss.org/modules/html/white3.pdf "

So are we to believe that this is an incentive for OSS to write complex code so they can have hope one in hell of selling documentation and services and so ISV's can help you wade through the muck.  If OSS goes this route to make money, that is a bad thing. Although thinking about it, IBM global services springs to mind.  I wonder why?

Mike
Sunday, December 28, 2003

I don't see how that's a lot different than an ISV making money off of solutions built on closed-source commercial software like IIS or Oracle.

Just because a company can plunk down $___ for Oracle doesn't mean they understand it, just because it comes with manuals and support. 

They still need to pay skilled people (whether employees/contractors/ISV's/etc) to make sense of it and built on top of it. 

In terms of "how can an ISV make money?" I don't think the closed/open source debate is really applicable, except for the costs of the software itself, which is usually a relatively small cost of the overall development effort anyway.

John Rose
Sunday, December 28, 2003

The fact that Tim Berners-Lee made the world wide web an open standard certainly made us developers a lot of money.

Matthew Lock
Sunday, December 28, 2003

Please look at income and profits of software companies based on commercial software, and at income and profits of software companies based on open source.

This information is easily accessible for public companies - you can find it using a search engine.

You will see that:

- lots of commercial software companies are profitable (even if we take giants like MS and Oracle out of the equation)

- very, very few OSS companies are profitable

- the OSS companies that are profitable have very low profit and very low income compared to commercial software companies, and thus, can hire fewer programmers

For example, fans cheered when Red Hat became profitable in the last quarter or so.

But the Red Hat profit was very low, and it's doing much worse than commercial software companies of comparable size.


Very few companies can succeed if they sell open source software.


I belive that in the long term, open source creates a "rock star-like" business environment.

In the music world, a handful of people are rock stars, and make decent money, while the rest (that is, 98%) barely make a living and have to struggle very hard.

In the brave new OSS world, a handful of programmers and 2-3 companies will be rich, while the rest of us will barely scrape by because every piece of software will be free as in beer and free as in freedom.


You many not know this, but some open source software companies have simply resorted to begging in order not to tank. Mandrake is a recent example - they cried for help, and asked people to donate.

Excuse me, but is this the future we want?

Do you want to work for a software company that is in constant danger of tanking, and has to beg people to donate, or do you want to work for a software company which sells it's products, and has a healthy profit?

Where do you think you would be happier? Which company do you think will hire more programmers?

John
Sunday, December 28, 2003

There is a big difference between a company whose core products are open source, and companies that use open source to build commercial products or custom solutions or enhance their other products (like IBM selling mainframes that run Linux, or Joel using PHP for FogBugz on *nix).

I wouldn't want to work for the first type, but there is plenty of money being made in the other type.

T. Norman
Sunday, December 28, 2003

I agree with T Norman.

If you want to be profitable you've got
to add value  to OSS products

>> TD <<
Sunday, December 28, 2003

The part that sticks out like a sore thumb to me is that to make money off of open source you need to be a service provider.

i.e. you need to provide computer consulting or contract programming. 

I'd much rather be selling a product than providing consulting.  Good luck trying to compete with JBoss though.


Sunday, December 28, 2003

Although some people use OSS tools simply because they're as in beer, others (or the same) use them because they're free as in speech, ie. as much as possible, they'd rather use tools that do not lock them into a proprietary solution, raising the cost of switching to another solution in case the company goes under or raises, lowers the quality of its products or service, or raises its price to an unreasonable level. Business 101: Always have a plan B :-)

We are then, however, faced with the issue of how to allow developers to make money off a tool that is freely available.

As explained in this thread, OSS tools that require full-time employees for developing it (salaries, rent, etc.) and/or do not require consulting to make it work because it's so basic... are not company-friendly.

It's not an easy problem balancing the need for individuals to make $, and those same individuals to share knowledge to improve society (where would scientific knowledge be today if each scientist kept his discoveries to himself, or patented them and forced others to shell out $ to use them?).

Frederic Faure
Sunday, December 28, 2003

"where would scientific knowledge be today if each scientist kept his discoveries to himself, or patented them and forced others to shell out $ to use them"

Isn't that how it works right now? 

Kerry Heffermen
Sunday, December 28, 2003

Well, I personally always felt that ASP (=Active Server Pages) was a scheme by Microsoft to provide a living for a great deal of people. I mean, I once had to write a simple form handler for IIS, and I scanned the ASP documentation for something that will enable me to send E-mail, and found absolutely nothing. I ended up writing it in Perl, where it worked perfectly.

It turns out you need to buy a specialized ActiveX object that can send E-mail. Ditto for using regular expressions, doing encryption, or for opening files (!). And Microsoft does not provide all these things - other vendors do.

In Perl you can find almost anything on CPAN, and the core language itself has any system mechanism that someone bothered to write a binding for (files, sockets, users, processes, the works). Ditto for PHP (albeit getting an extension is less straightforward than with CPAN) and I think for Java as well.

So they gave people a braindead solution, so there will be an entire culture of vendors springing to complement it.

I'm not saying this phenomenon is limited to what Microsoft does. It exists anywhere, even in open source places. However, no software can ever be fully complete to satisfy all needs, or so it can be used out of the box. You just have to make sure it is extensible solution, so other people can build upon your efforts.

This is the case for JBoss. From what I know of it JBoss is far from being braindead or incomplete. But many firms who would wish to deploy it (or Perl for that matter) would need to customize it or otherwise implement things above it that don't come by default. It makes no difference whether it is open source or not - that will always be the case.

Shlomi Fish
Sunday, December 28, 2003

John: for your information, most of the commercial software startups fail miserably as well. As for the profitability margins: you may be correct. If you hit the jackpot providing a (usually very costy) commercial solution, you can become very profitable, at least until an equivalent open source solution or a better commercial ones comes along and eat your market.

BTW, profits do not finance programmers, they just finance new programmers and expansion. In fact, the salaries and other costs involved in hiring programmers is deducted from the total earnings, and after more deductions eventually yield the cost.

Of course, in my opinion, at least, open source is more fun and more rewarding. A Freecell solving program I developed would not have had half the features it has now, had I did not make it Public Domain from the beginning. In a way I felt that I did not cheat the community by hiding the source from them or demanding money.

Note that I would not mind getting any job, whether in commercial, open source or simply in-house, embedded or whatever software. I just love to program.

Shlomi Fish
Sunday, December 28, 2003

>> "Well, I personally always felt that ASP (=Active Server Pages) was a scheme by Microsoft to provide a living for a great deal of people. I mean, I once had to write a simple form handler for IIS, and I scanned the ASP documentation for something that will enable me to send E-mail, and found absolutely nothing. I ended up writing it in Perl, where it worked perfectly."

You're pretty much a god damn mother fucking stupid piece of shit bastard.  Ever hear of CDO.  I think you need to shut the fuck up or get the fuck out of the business.  Oh yea, I almost forgot mother fucker, learn how to fucking read.  You fucking nit wit, you just wanted to find some way to bash Microsoft.  You're a complete mother fucking moron.  Hence you're retarded name.  From now on I'll call you Stupid Fuck.


Sunday, December 28, 2003

Good day Shlomi

"It turns out you need to buy a specialized ActiveX object that can send E-mail. Ditto for using regular expressions, doing encryption, or for opening files (!). And Microsoft does not provide all these things - other vendors do."

Regular expressions have been a part of the script interpreter engine for many years now. Opening files (fso) and sending email (CDO, MAPI) have been available pretty much from day one. Encryption is functionality exposed through the CryptoAPI available from "Win32", but as ASP can't call Win32 functions you do need to fire up Visual Studio, create a basic COM wrapper, and there you go--encryption from ASP. Indeed, COM (via dispatch interfaces) was the ultimate interoperation mechanism in ASP and if you could expose some functionality to COM, you could use it from ASP.

So in other words I entirely disagree with you -- Microsoft stated "here's ASP, and it can talk to anything that knows how to talk via a dispatch interface", and anyone, either closed or open source, could freely release functional "plug-ins" to be used from your code (and there are tens of thousand of free and commercial products), or alternately you could easily expose your own functionality. Your misunderstanding is quite common, however, and it derives from people looking in the VBScript documentation and looking for the library calls, when instead it isn't a reinvention of the wheel in the VBScript world, but rather is the entire universe of COM components.

Dennis Forbes
Sunday, December 28, 2003

As a sidenote, and to demonstrate this point, a friend, whose site is based in ASP (they haven't made the .NET migration), needed a component to pull a thumbnail out of an uploaded video file. Knowing that the .NET Framework has fantastic graphical capabilities, and knowing some DirectX library calls to open a video file, I quickly threw together a .NET component that would pull the image file, resize it to the desired size, and save it in the desired format. Sticking a Com Callable Wrapper on the component and voila, from ASP some pretty advanced image capabilities (I even included multiple layers with various transparency, titling, etc), available via the magic of COM.

Dennis Forbes
Sunday, December 28, 2003

Anonymous: what is the meaning of all this swearing? We are civilized people here and I expressed an opinion. Perhaps such that is based on dis-information I mistanekly had but nonetheless it was perfectly innocent me.

I wouldn't blame Joel or any other moderator of the forum if he reomved it.

Shlomi Fish
Sunday, December 28, 2003

Dennis: I stand corrected. I suppose the cost of having Visual Studio is negligible compared to the entire cost of having IIS+ASP etc., and anyhow a Windows webmaster is not as spoiled as his Linux peer and expects to pay for software.

In any case, from what I heard the case was that you indeed needed such stuff to effectively worked with ASP, or at least people used them. Maybe those "out-of-the-course" ASP winnies, cannot be expected to write a COM object by a long shot, and so would rather convince their deployer to buy something commercial. That may be a case for a great deal of PHP programmers out there as well, only with PHP you can usually get the components for free.

If the documentation of ASP did not make it clear how to write a form handler that sends an E-mail message, then it's a bug in the MSDN documentation. After I converted to using Perl, I was able to find several good ways to send an E-mail, and eventually even implemented my own ad-hoc SMTP client stack there, using sockets. (that's because none of them worked on my Apache for Windows Alpha version which I installed there, due to a bug that I eventually reported and was eventually corrected - ;-))

That put aside, I'm not sure I can ever adapt to the philosophy of ASP or JSP. Their assumption is that the language is crippled, and you need to use it as a number of callbacks to either OLE objects or Java beans. In Perl/Python/PHP/etc. you don't need all that, because the core language is full-featured, and you can implement as complex logic as you want inside the script, or supporting modules.

What does frustrate me is that high schools in Israel teach ASP, which requires Windows to run on. They should instead teach PHP, Perl, etc. which are cross-platform. Once I met two guys in the "Go! Linux" Israeli conference (the first large conference of this kind), who saw that I knew my way around computers, and then asked for help with their ASP homework. I told them I only had a Win98 at home, and could not install IIS and all of the required components very efficiently. If they had a problem with PHP or whatever I would have gladly tried to help. They also were representative of one of the companies there (which sells some Linux software),  and said on Linux that it was used by many computer introduers. (which is true, but that's not its primary use and value to society). And it was a Linux conference!

Shlomi Fish
Sunday, December 28, 2003

"I felt that I did not cheat the community by hiding the source from them or demanding money"

And I feel you are cheating me my not giving me your car.

So give me your keys or I will say you are selfish and unreasonable
Sunday, December 28, 2003

Kerry Heffermen >> Isn't that how it works right now?

In the private sector, yes. Not sure we're better off, though.

BTW, maybe Joel should make people pay to access this knowledge they're currently getting for free on his site ;-)

Frederic Faure
Sunday, December 28, 2003

"You're pretty much a god damn mother fucking stupid piece of shit bastard.  Ever hear of CDO. "

Hey Einstein, please tell us when CDO debutted.

Mike
Sunday, December 28, 2003

> BTW, maybe Joel should make people pay to access this knowledge they're currently getting for free on his site

It takes 60 seconds to read a thread and compose a reply. That's quite different from the effort and time to develop useful software.

me
Sunday, December 28, 2003

Its taken a lifetime for my opinions to be formed, they disappear on the wind when uttered though.

There are lots of different models of corporate entities, not all of them make huge profits, not all of them have large numbers of shareholders whose purpose in shareholding is to reap dividends or make money solely on their share of the company regardless of what it does.

If an OSS company is lucky its R&D is almost free and it may with more luck find an application that it can sell, distribute, make money on the support and all  the other anciliary products.

The successful OSS companies are unlikely to be public corporations, they are more likely to be private companies that exist in order to give a living to those that work there (for my money and experience the best kind of company to be in).  Such companies don't have to make huge profits, in fact its best if they don't.  Profitability is only one measure of the health of a company and not the most important.

Open Source does not mean and never has meant that the source is free, nor that the products produced from such sources have to be free.  You just get to see how they've been made.

The label 'there are no user serviceable parts' has never been attached but that doesn't mean its a good idea for the user to open the box.

Simon Lucy
Monday, December 29, 2003

I didn't say that companies were going to make money sellilng documentation.  I said OSS is great for developers because it commodetizes OUR complement.  I'm a database/j2ee/html/ or whatever kinda programmer...the more companies that can afford web servers and SQL servers and J2EE App servers, the more JOBS there will be.  Why do you think IBM is pushing Open Source so much.  Their consulting division makes a killing every year!  I'm not sure if you mis-interpreted my post, or if you disagree...

vince
Monday, December 29, 2003

So we sacrifice multipliers (stuff that brings you n times the reward for a given effort) to all become "consultants" (selling yourself by the hour carries no multiplier). A Marxists wet dream, a bureaucratic heaven, a middlemen nirvana.
And how come developers are the ones that need to sacrifice their multipliers, while the rest of the economic agents get to keep theirs?

Just me (Sir to you)
Tuesday, December 30, 2003

> Good luck trying to compete with JBoss though.

JBoss will face some fierce competition as the "free J2EE stack" starts to become strategically important. You can already see this with Apache Geronimo. JBoss is not a great poster child for Open Source; it's in a specialized niche where consulting fees are huge.

> So we sacrifice multipliers

To sacrifice multiplers to have a solid middle-class career doesn't sound so bad to me.

And from what I can see, the IT crunch hit *everyone*; plenty of recruiting shops have half the staff they used to, or less.

Portabella
Tuesday, December 30, 2003

Simon Lucy: "Open Source does not mean and never has meant that the source is free, nor that the products produced from such sources have to be free.  You just get to see how they've been made. "

I'm not sure I understand you correctly, but I make a clarification. Open source as defined by the Open Source Definition:

http://www.opensource.org/docs/definition_plain.php

means that the source code for the application is available _and_ that the product or binaries are freely distributable. Which means that if you sell someone an open source application for $50 dollars, he can put it on a web-site or FTP server for all the world to download for free. Or he can sell it for a million dollars if he can find someone who is willing to pay this sum of money.

As such, open source does not give way too much to sale value. Most producers of open source software allow downloading of the software from the Internet, and try to find other ways of making a living out of it, or simply don't try to. (they are doing it "just for fun").

Software that is accompanied with the source and yet does not fullfill the open source definition should be labelled as "viewable source", "revealed source", "public source" or whatever you find appropriate. But "open source" is something else entirely.

Believing open source is essentially the same as revealed source is a very common mistake, however.

Shlomi Fish
Tuesday, December 30, 2003

*  Recent Topics

*  Fog Creek Home