What is meta? ×
Meta Stack Exchange is where users like you discuss bugs, features, and support issues that affect the software powering all 128 Stack Exchange communities.

Warning.

This discussion took place during the Stack Exchange 1.0 days, when FogCreek sold Stack Exchange licenses for a fee.

It is worth noting that Stack Exchange licenses are still being sold for intranet use.

Important Caveattm: this is something we are merely discussing that may happen more than one year from now, if it happens at all. Bearing that IMPORTANT CAVEAT in mind, please read on.

Joel is convinced that open-sourcing Stack Overflow, in any way, shape, or form, will destroy the business model of StackExchange (pushing prices down to hosting commodity levels) and possibly the Stack Overflow family of sites as well (fragmentation & dissipation of audience via army of clone sites).

  1. Does open sourcing Stack Overflow even make sense at all? What do we (stackoverflow.com llc) get out of it? What does the community get out of it? Is it "win-win"? Or does someone lose?

  2. Are there "hybrid" models of open sourcing that could work? Rather than treating this as an "all or nothing" scenario, is there a way to open source parts of what we're doing, or restrict licensing so that we don't compete with ourselves in the hosted StackExchange part of the business?

  3. Aren't there other companies pursuing open source and hosting businesses at the same time? Such as Six Apart and Movable Type? I'm not sure how applicable this is to hosting business models, but certainly Slashdot and Reddit have gone open source. DotNetNuke also runs a similar business model, apparently.

  4. Won't we be competing with open source versions of ourselves anyway in the long term? There are certainly already open source Stack Overflow clones, and lots of open source FogBugz competition and clones. Over time, won't the competitive pressure increase from the continual improvement of open source copies of what we do? Would it make sense to do it ourselves so we control it?

  5. Could there be "enterprisey" closed source and "public" open source parts of the business? I've always said that StackExchange is going to have to fork because their private small, medium, and large business audience will want very different things than the public internet audience we serve. Wouldn't this be one way to segment the "free as in whatever the heck it is we're calling free these days" open-source dev work from the value-add closed source product?

Thoughts? Feelings? ... ponies?

share|improve this question
4  
Sort of reminds me of KnowledgeTree (knowledgetree.com), which they open sourced the code but kept all the enterprise-y stuff under closed sourced and only available in their commercial editions. Having used their OSS version for close to 3 years and seeing them thriving, probably it's worth looking to see how they had packaged their deals. –  Seh Hui Leong Jul 7 '09 at 10:57
7  
Just keep in mind that cloning SO is so easy. Probably a month of work. As we all know, cloning is much easier than building the thing in the first place. –  LeakyCode Jul 7 '09 at 11:38
38  
i'd say 6-8 weeks... –  geocoin Jul 7 '09 at 14:45
2  
@Merdad: There is a clone of the engine underway, as I recall. I believe they've been working on it for over a month (at least) and they are still quite always behind. Fact is, Jeff and Joel have set a standard with these sites. –  Frank V Jul 7 '09 at 18:13
13  
I don't have any thoughts or feelings to add to this, but here is a pony (BONUS: it is being ridden by a dog!): simplymarvelous.files.wordpress.com/2007/07/… –  Hilarious Comedy Pesto Jul 8 '09 at 12:10
6  
Like you mentioned in a blog post, tons developers on this site could clone it in a weekend if they wanted. Like you mentioned the level of polish SO has would be hard to achieve in a weekend, but making it open source will lead to blatant copies and bad implementations that would deface the reputation for excellence SO has. Maybe what you could do to give back to the community is have a weekly/monthly blog post that details techniques you use and goes over code. Blog posts like this would in a nerdy way be really exciting. I know I would be looking foreward to it each week. –  teh_noob Jul 11 '09 at 23:51
6  
@teh_noob: "Maybe what you could do to give back to the community..." IMO, StackOverflow (and friends) is already a valuable gift to the community. –  P Daddy Sep 4 '09 at 1:19

64 Answers 64

The key question is #1; until that is adquately resolved, all of the others are irrelevant.

So, does open-sourcing StackOverflow make sense at all? Absolutely not.

There is absolutely nothing that you, as a business, will gain.

StackOverflow (the codebase) is an application, not a framework. You want this to be a cathedral, not a bazaar. You don't want random strangers, even if they are fans of the product, to submit to the codebase. If users have ideas for product improvements, great. Let them submit the ideas. And then the SO management team can weigh them against other ideas, against the business model, and against the various costs, and decide whether or not to implement the idea. And if the idea is implemented, the SO management team can guarantee that it is coded in a way that fits in with the overall design.

Simply put: would you house your business in an office building that was "open-sourced" during the construction process?

So, if open-sourcing StackOverflow won't help the business, who would it help? "The community"? If the goal is charity, there are many more effective ways to give back to the community (of users, developers, what-have-you). The community doesn't "win" anything by having access to the source code--so it's not a "win-win" situation, it's a "lose-meh".

I think the idea is a non-starter, and I'm surprised to even see it coming up. Forget it, and move on.

share|improve this answer
40  
Michael seems incredibly anti-open-source in this post, but in this case - in broad terms - I agree with him (despite being pro-open-source). The product already exists and development time is not a massive bottleneck. I can't see a slew of new and amazing features that need lots of developers to implement. It will always move forward, but it is an excellent knowledge exchange tool right now, with sufficient developer talent behind it. And as usual, all Joel's points are reasoned and correct whilst Jeff's are... "but i want", "i don't think so" –  Sam Brightman Jul 7 '09 at 12:45
18  
Most open source projects only a select few have write access to the repository and everyone else summits patches to the project (and the majority of them don't get committed). A good example of this is Django. –  Myles Braithwaite Jul 7 '09 at 15:41
56  
"Simply put: would you house your business in an office building that was "open-sourced" during the construction process?" You don't seem to understand what "open source" means. It means they make the code public and license it in a certain way. It does not mean they have to accept any patch from any bozo on the Internet. In fact, they don't have to accept any patches at all if they don't feel like it. –  smoofra Jul 7 '09 at 17:10
12  
reddit gained a lot of attention from open source developers when it became open source. There are a lot of people who would never consider paying for StackOverflow, but would be great proponents of an open source version. –  Andrey Fedorov Jul 7 '09 at 18:12
4  
@Sam Brightman: I'm not anti-open-source at all. I think that open source is wonderful, in the contexts for which it is advantageous. StackOverflow doesn't qualify. @smoofra-- If they don't accept any patches, what was the point of open-sourcing it? If they want to distribute the code under a "view-only" license as a learning tool that's one thing, but that's not what's under discussion here. @Andrey-- You say "attention from open source developers" as if that were a goal in itself. "Proponents" who don't pay doesn't (by itself) help the business model. –  Michael Dorfman Jul 8 '09 at 8:55
6  
"Forget it, and move on".... Exactly : don't try to fix something that isn't broken. –  Steve Schnepp Jul 8 '09 at 15:34
3  
Open source can sometimes be good business, but admittedly in this case it probably isn't. This answer makes good sense - but only when considered through a purely utilitarian lens. However, there are other, philosophical reasons behind open source and free software as well, where this sort of utilitarianism is simply ignored. If SO management doesn't care about them, sure, forget making it open. But if they do, there are other than utilitarian points to be addressed as well. –  Ilari Kajaste Jul 10 '09 at 7:03
3  
I know you can put all of the "parts" together by learning about OpenID, MVC, basic account mgmt, etc, through the blogs and books. But I do think there would be some nice value given to the community if you could extract some sort of SO.Core that contained the base functionality of getting a high quality MVC site up and running. Perhaps I'm thinking something along the lines of an SO template? Everything else - the db, the models, the repository interface, the voting system - I'd consider that proprietary knowledge. You worked hard for that. Why share it? –  Jarrett Meyer Jul 13 '09 at 10:33
9  
I don't think you got the idea of Open-Source right. Open-Source soesn't necessarily have to use a bazar-model of development, Linux is the best example in the other direction. That doesn't mean, that your conclusion about StackExchange is wrong, but your arguments are. –  Mnementh Sep 1 '09 at 8:38
3  
Look what Wikipedia and Wordpress got out of it by being OpenSource. A LOT –  Arlen Beiler May 6 '10 at 12:02
1  
Wikipedia sprang to my mind immediately. Plus I remember nearly everyone I know "downvoting" that when it was created. Michael is Mr Negative, Yuch. –  Michael Durrant Sep 22 '11 at 14:40
1  
@MichaelDorfman Note that in the cases of Wikipedia and Wordpress, the software itself is open source. –  Andres F. Feb 25 '12 at 2:29
1  
"Simply put: would you house your business in an office building that was "open-sourced" during the construction process?" Yes. If I had a team of architects and builders and a building for free, while still being able to choose from many shapes and materials for everything in that building from floors and windows to bricks and nails, as wisely as I'm able to, then why not? –  Alois Mahdal Mar 12 '12 at 23:43
  1. Does open sourcing Stack Overflow even make sense at all?

    Yes, it makes sense. You get a horde of extremely competent and enthusiastic users as potential contributors to the SO code base. These users (me included) will contribute with new functionality, better unit tests, new designs, etc.

  2. Are there "hybrid" models of open sourcing that could work?

    It depends. Open sourcing the SO code base, but licensing such that it can't be hosted by anyone but you contradicts the FOSS spirit, but I guess it's possible. I can't think of a suitable existing license or a project sporting such a license at the moment.

  3. Aren't there other companies pursuing open source and hosting businesses at the same time?

    Indeed. WordPress.org is in direct competition with WordPress.com, TypePad is in competition with MovableType, etc. Both Automattic and SixApart seems to be doing just fine. Especially in the case of Automattic, I'd say they're doing a hell of a lot better after open sourcing WordPress than they did before.

  4. Won't we be competing with open source versions of ourselves anyway in the long term?

    Yep. I think the NRKbeta Doctrine applies just as much to source code and services as it does to copyrighted content. The only way to control your content is to be the best provider of it. If SO doesn't provide the community with the source code for SO-like services, someone else sooner or later will. Can and will SO risk losing the head-start to another service provider?

  5. Could there be "enterprisey" closed source and "public" open source parts of the business?

    Absolutely. See my answer to point 3. There's lots of other examples of service providers doing the same, but I think those examples weigh heavy enough (for now, at least).

share|improve this answer
15  
Good answer(s). I'd suggest maybe editing your post -- put each of the 5 questions directly above your replies, as not many people will scroll up & down to correlate your replies with the questions. –  Dan Jul 7 '09 at 12:48
5  
"If SO doesn't provide the community with the source code for SO-like services, someone else sooner or later will." - I think this comment is the key point to evaluate. If it's true, and I believe it is, then there is a significant reason to consider open-sourcing SO. –  Feckmore Jul 7 '09 at 14:57
3  
“Especially in the case of Automattic, I'd say they're doing a hell of a lot better after open sourcing WordPress than they did before.” Actually, Wordpress was open-source long before Automattic exaisted. –  Matthew Bischoff Jul 7 '09 at 15:10
4  
Reddit opensourced its code, and that doesn't mean thousand of reddit-alike websites drive users away. And to stifle competition there's a nice license option : Affero GPL. –  wazoox Jul 10 '09 at 10:08

Frankly, I'd be amazed if anyone could accurately predict this. I'll be surprised if our guesses as to how companies will use StackExchange come true in the first place... and a year is a very long time.

I do see Joel's point: FogCreek has to add value somewhere. Maybe that will be things like AD integration - but I'd be surprised if an Open Source version didn't gain that ability fairly quickly anyway.

Now, I think a lot of companies would want to use a hosted version (or at least an "installed and supported by someone else" version) to avoid wasting their employees time setting it up etc. The risk comes from other hosting companies. How much will they want this? It depends how profitable it is for FogCreek, I expect. I don't actually expect every cheap hosting company on the planet to snap this up, even when it runs on Mono and against Postgres - but I dare say there will be competition.

It will be a challenge for FogCreek to work out how it can add enough value to make money, but I suspect it will come up with something. Managing internally-hosted implementations would be one starting point, I expect - and that speaks to their area of expertise anyway, with things like CoPilot. I can see companies really wanting a private, internally-hosted StackExchange for internal knowledge sharing. Will the cheap hosting companies want to do that? I doubt it.

One thing which distinguishes SO from the phpBB style forums in my view is that it works well when there's a broad subject matter where a single question can touch multiple areas. For very focused groups, I don't think there'd be as much benefit. That may well make it less attractive for tiny web sites which just want a simple discussion board - which may mean it's not worth cheap hosts getting involved.


As for what the community gets out of opening it anyway - that's tricky. I expect (and hope) you'd treat significant patches with a great deal of timidity; applying someone else's patch to the main SO is a big undertaking. However, I'm sure there will be some groovy new features added by the community (possibly including those Joel would rather have exclusively to FogCreek, admittedly).

A bigger benefit will be to individuals who do want to run their own server but on a small-time basis which wouldn't merit paying for StackExchange. Heck, there's also plain curiosity :)

Personally I would like to see it Open Sourced, but I can certainly see why Joel is nervous.

share|improve this answer
19  
"I'd be amazed if anyone could accurately predict this" There are only 2 predictions and both will be made. So I am pretty sure, ~50% of the predictions will be accurate. –  Lakshman Prasad Jul 7 '09 at 11:09
14  
@becomingGuru: I see at least 4 - (open-source, don't-open-source) x (FAIL, profit!) –  Andrey Fedorov Jul 7 '09 at 18:16
2  
@Jon: I also would like it to be open-sourced, but that's only mere curiosity, not a real need. –  Steve Schnepp Jul 8 '09 at 15:25

It might help thinking about this to listen to Tim O'Reilly's comments about where online value is: http://twit.tv/floss73

StackOverflow seems like a canonical example of something where the value is in what's contributed to the site, not in the software running the site. Even if many someone else's take the software and set up their own *Overflow-type sites, they have the problem of displacing StackOverflow's momentum and brand recognition.

Just having StackOverflow's software doesn't give anyone SO's infrastructure, or data, or knowledge about how to deploy the software effectively.

As O'Reilly says, even if you have the software for Google's search engine, that doesn't let you run another Google; there's a lot more to it than just the code. (Although, of course, Google still haven't opened their code, which I'm sure isn't for want of people asking them to.)

I think, from a business perspective, there probably comes a point where the code itself is such a small part of the overall value of StackOverflow, that giving the code away will do you more good than harm. Joel is right to be cautious just now, in that you're not clearly at that stage yet, but surely you will reach it at some point (probably shortly after Google does :-) ).

share|improve this answer
3  
The point of contention is not SO itself but the StackExchange business, which would not have the SO community behind it. And deployment & infrastructure is no big deal for an established hosting company. –  Adam Lassek Jul 7 '09 at 16:02

There are a lot of interesting posts in this thread. I want to call out a few of the different arguments:

  • If you open source it, you get free labor and at least you get to manage commits and vet new patches and features yourself.

This is false. First of all, most of the patches you get will need to be rejected. In the end, you likely either spend as much time reviewing patches as it would take to implement the feature, or you're just not getting the patches. Secondly, open sourcing doesn't guarantee that you get to be the maintainers of the project. It won't stop people from also forking it to do what they want. For a product like this, where the maintainer has a very high standard for polish and integration (a good thing) and the audience includes many competent, connected developers, the likelihood of a serious fork is very high. So the idea that going open source somehow lets you pre-empt the clones is just wrong.

  • Company X seems to do pretty well with open source

Irrelevant. It's a different business in a different situation. Even if the situation seems similar, there will be little differences that can have a big impact. This applies to WordPress and Reddit as well. And many of these companies are still in the stage where they're burning through VC money, so appearances can be deceiving.

  • The on-site version is too expensive.

This is very much true. For that kind of money, I could take one of the (bad) clones as a starting point and tell a developer to spend a couple months turning it into something usable. It'll take a bit and won't be quite as nice, but pretty soon we'll have something that our users like almost as much, is tailored to fit our company, integrates with our existing systems, and is much cheaper to operate. If after a year I'm still not happy, we can work on it more and I'm still not out anything vs using SE. If I had that kind of money to burn and needed something right away, I might buy SE, but I probably can also have another developer hack a replacement at the same time and so you wouldn't keep the business for long.

Then again, I'm a programmer and not a business manager, so perhaps this would never even occur them. Instead, all they'll see is a big price tag on something that's basically a toy for their internal users. Either way: it's too much. Basically the problem is that it assumes the reason you'd want the onsite version is to go bigger, when it's more likely customers will want it because they're smaller; they only want to use it for internal staff and don't want it's contents public.

You also need to look at it from a forum site standpoint. Right now there are thousands of little sites running vBulletin or phpBB. What do those users pay? How can you capture some of that money? Currently you are completely priced out of this. The only way to get into that market at all is to have some form of installable package. Will it hurt you if a bunch of other little sites start using the same code base as stackoverflow? Probably not, especially if they're paying for the privilege. Will releasing the code as open source allow you sell to more of these users or fewer? Depending on how you do it, it could be many many more, or it could completely cut off any sales of the for-pay edition at all.

  • Competition from other other providers will drive the price down to your costs or below.

Perhaps. I think probably not quite that far: as the originators of the code base, you will always be able to command a premium over the competition. If you go this route, what you would need to do is make sure you're in the business of selling hosting to the richest customers (the banana republicans) rather than poorest. Let others worry about making money from the low end. Yes, you're giving up a lot of revenue to them, but most of that doesn't count because it's revenue from customers that could not have afforded your offering anyway. All you get to think about is the portion that you lose due to pricing pressure from the competition. This will be significant at first, but the story isn't over yet.

What this does for you long-term is allow you to use the competition to grow your market. Some of the smaller customers that start out going through a competitor and could never have afforded to even get started under your current plan will now grow enough to need your services. Think of it like giving CoPilot away for free on the weekends. Some of those weekend users will eventually want it during the week. And some other big users might hear of it because they know someone who knows someone who uses it for free. Over the long haul, the economics say this should be the better option for the business. A bigger market usually means more revenue - eventually.

  • You can split the code base into distinct parts and open source just some of the site

Separating the engine from the interface is a good idea anyway, and probably required for StackExchange to be a success. Additionally, setting up the engine to use a provider or plugin model for certain parts would be a very good idea. One big is the authentication mechanism. Another is treating your main input editor as a pluggable component (so users can swap out your markdown for freetextbox, for example). Others include adding badges and moderator tools as plugins. I could come up with more like this. Again, this makes sense to do anyway, and will make managing the StackExchange product easier. It would also allow you to hold some key code in reserve in a meaningful way if you ever do go open source.

What I really like about it is that it gives you the option to sell the components. You could forget StackExchange (at least as the main money-maker - I really doubt it will take off anyway because you can't just install a community on a server), and sell your markdown editor implementation as a component that can plug into any web site.

Finally, my own new point:

  • Speed is a feature

You keep saying this, and we know it is very much true. You have the ability to show potential customers the graphs published by google and bing of how clicks and attention drop off as a page takes longer to load, look them in the eye, and guarantee your pages will load in the fastest block. Even if you open source the code, your competition would have a hard time doing that, because they don't have your intimate knowledge of how it works and what it takes to keep it fast. You can do a better job monitoring and profiling your customers performance, and tuning the servers than anyone else could ever hope to. And this is another big reason the banana republicans with money to burn would go to you for hosting vs cheaper competition, even after you open source the product.

share|improve this answer
2  
"For a product like this, where the maintainer has a very high standard for polish and integration (a good thing) and the audience includes many competent, connected developers, the likelihood of a serious fork is very high." on the contrary, it looks very low to me –  UncleZeiv Jul 16 '09 at 13:46
1  
What - you don't think that when enough interested developers have good patches declined, they won't be motived to take the code and add the patches anyway? –  Joel Coehoorn Jul 16 '09 at 14:00

Let me be honest: When I saw the pricing of Stack Exchange, I went "WTF?". But then again: I am not a business, I am an individual. So if you Open Source SO, then that would allow people on the low end who would not be customers otherwise to become customers.

I am perfectly willing to setup my own SO on my own Server, well knowing that the whole thing is not going to be as good as your hosting, but for my free site it would be good enough. So no harm to the business plan there. Even as you may lose some people who would be interested in the small plan, I think that overall I don't see much of a problem.

BUT I see a problem at the other end of the spectrum: Self-Hosting is $2500 per month per server, or 30000$ a year per server. As we would need our own admins anyway to set it up, the "real" and "open source" versions would not make much difference - apart from the 30k$. This might hurt you.

And then there is the thing you mentioned on the podcast: What prevents hosters from adding SO to their portfolio? SO is a big brand in IT now, but you're also aiming outside of IT. I'm not sure if that works.

I don't think that an Open Source SO and the StackExchange pricing can co-exist, but then again I am not a business-man, so maybe I'm missing something.

Wordpress is a bit of a different example: They have free hosting, but they charge for stuff like changing your themes or making certain changes. So they are making tiny amounts of money from people who want care-free hosting, but they have a LOT of people to make tiny amounts from.

share|improve this answer
21  
I agree, I nearly crapped my pants when I saw the pricing. It basically eliminates any possibility of a hobbyist getting involved and seems only geared towards serious professional sites. –  TheTXI Jul 7 '09 at 11:15
4  
While I didn't quite crap my pants when I saw the pricing, I did realize that I'd have to already have an existing community or a vigorous, full time commitment to market the heck out of just one site... not to mention the half dozen or so sites I'd love to setup just for grins. One of the sites I was contemplating would benefit from a 3-4 way split, similar to SO, SF & SU. Just not an option for me right now. –  Feckmore Jul 7 '09 at 15:03
1  
That barrier to entry is almost a good thing, though. I can't imagine dilution is really a good thing for anyone. For example, stackoverflow.com certainly wouldn't benefit if there was an open source version of StackExchange powering sites about each and every language that people use. –  user141115 Jan 11 '10 at 15:48

If you decide to open source at all, don't go hybrid on the license or the edition (free/enterprise).

Use something like the Affero GPL to make sure people hosting the code contribute back all changes, but don't use a confusing license, or you'll keep away the guys you'd like to have contributing to your code, and only attract those that won't respect your license.

If you have an enterprise edition (with AD support, for instance), what will you do when one of your users comes up with a patch to implement it in the free license? If you want to maintain the comunitity leadership, refusing features will make that difficult.

share|improve this answer
3  
Amen to the Affero GPL, it's both something that's going to please even the hardest-corest RMS types (including yours truly) AND protect your bottom line. –  niXar Jul 7 '09 at 15:15

I think it is better to wait for StackExchange launch and see what additions and modifications corporate users need.

It's very unclear right now how open sourcing can affect your business.

share|improve this answer

I believe I am right in saying that the key thing with some (but not all) of these combined open source and hosted setups is that they don't open source all of their code.

They open source the core code so that you can install an individual instance of the product, say for a single Wordpress blog. But they don't open source the extra bits from their hosted solution that makes it easy to scale the solution to tens of thousands of blogs.

Doing that counters Joel's claim that a hosting company could get a competing StackExchange up and running in minutes. Though it only adds a little speed bump for them.

share|improve this answer
3  
From Wordpress Mu: "Ever dream of running hundreds of thousands of blogs with a single install of WordPress? WordPress MU, or multi-user, is designed to do exactly that. It is most famously used for WordPress.com where it serves tens of millions of hits on millions of blogs each day." And it's GPL. mu.wordpress.org –  obvio171 Aug 16 '09 at 17:41

I agree with Joel that releasing the source of stackoverflow as-is would destroy the business model of StackExchange. All the points he made in last weeks podcast are valid, whereas all the points Jeff made (and makes again above) are merely equivocation. Saying that other business like Sixapart survive in spite of open-source competition doesn't prove anything unless you have their books to examine.

The only way it wouldn't hurt StackExchange is if StackExchange customers demand (and get) some special features that aren't open-sourced, but until StackExchange is up and running it's impossible to predict that.

And of course people could make open-source clones of the StackOverflow software, but that applies to any software - there is still caché to running on the real StackOverflow software if that's what the customer wants. Also, I think sometimes people over-estimate the competition from open-source software that doesn't exist yet. There's a big difference between releasing a complete project as open-source and having some people track all your improvements to the main codebase (or forking it and adding 'enterprisey' features themselves), and starting a clone project from scratch. We observe the former much more often than the latter.

share|improve this answer
1  
"There will be". You're making the same mistake as Jeff, which is to overestimate the risk from competition that doesn't yet exist. He then also underestimates the risk from competition that will exist if he releases hist source. –  U62 Jul 7 '09 at 23:05

It will without a doubt change the business model that Joel has planned for S-ex.com. you cannot charge $129 / month hosting when the exact same software is available for me to install on my own server, let alone the $2500 / month required for me to do so.

I don't want to downplay the functionality within the SO engine, but there feels like there is a big difference between SO and a blog engine in terms of setup complexity and options, complexity that perhaps would explain why sixapart gets away with charging for 'professional' versions and for support of it.

I work for a large bank, which for reasons of data protection (yes, even for developer chat) does not want any conversations occurring outside our network. As such we would only consider an onsite install - the choice between $30000 that Joel wants for an onsite install and the cost of a shared server in our data center - ~$1500 - makes taking an open source solution a no-brainer.

We've replaced a good number of proprietary solutions with open source alternatives, (operating systems, source control, bug tracking, wiki etc.,), being able to address scale issues without considering the license cost is a huge factor in our decision making.

So the real question for me is whether you should change the pricing of the hosted version and to move to opensource sooner rather than later.

share|improve this answer

Joel has a point that if you open source something and try to create a business from just hosting the same identical thing you don’t have much of a business model.

Making money from open source is all about added value. You can open source stack overflow, and people will use it, some may host it, but you have to show that StackExchange adds value, great uptime, staff to help you personalise and set up your site, experience of large knowledge exchange sites, and custom coding. The business that doesn’t want to pay for these things and goes for the lowest price is not going to make you much money anyway. The business that wants to have the “enterprisey” features is the one that you make money from.

As for what benefits your will get form open sourcing the SO code, this is difficult to tell. ASP.net is not a mainstream open source language, but you have enough profile so you will get some popularity. For what it is worth, I think the best open source systems are those which are highly extendable (Firefox, Movable Type, Drupal for example) , I don’t think the SO code base was designed to work in this way, so it’s evolution may not be that fast and the benefit that you get from the community may be minimal.

So in summary, you probably won’t loose money but you probably won’t gain much either.

footnote:

A potentially good example of point 5 is mysql, it has a large opensource community which feeds the paid for enterprisy community.

share|improve this answer

Even if you do opensource it, I don't think it will hit the traffic on SO in a major way, since it is the community that matters a lot. Just because there is another site to do the same thing, doesn't mean people will shift to it (and even if they do, the shift will be very very slow) since SO has built up a very nice community.

Cases in point are reddit -- I don't see any site using reddit's opensource code that has even a fraction of the traffic that reddit does. Same thing applies to wordpress -- even though there is a separate opensource self-host version of wordpress, the hosted version of wordpress has quite a lot of traffic. The kind of sites using it that will mushroom will be those for niche topics and specific subsets, and might eventually end up replacing forums in many places where it makes sense, especially for tech support for products like ubuntu, various linuxes etc. And many companies may even use the paid hosted version for their tech support, replacing their forums.

If you do opensource it, there are two ways you could make money off it, as I see it

  • keep certain enterprisey features of SO premium. Provide a free opensource version of SO for smaller companies and hobbyists.
  • provide hosting, and support to companies (big companies would definitely make use of this, since they can't be bothered to manage their own site). This would also help very small companies use this software for free (if they can't afford it) and probably would shift to the supported and hosted version when they grow bigger.

A very important thing to note here, is that if you opensource it, and people start using it in a big way, the brand recognition of SO will increase by a huge amount. On the other hand, keeping it closed source will mean only a few people will be using the non-public version of StackExchange. ActiveCollab is a case in point here.

One major advantage of opensourcing is that the community will be able to add a lot of new features to the OS version, and you could still make money off it by providing hosting and support.

Just my 0.02¢

share|improve this answer

I think you're asking the wrong question. You should be asking Can our business model survive being copied? Because if you're successful, you will be copied, and it won't make a difference if they're running your engine, or one they made themselves.

share|improve this answer

I'll suggest you are not asking the right questions...similar to a developer trying to justify some implementation without having a clear idea of the requirements. Instead, you may ask:

What value does open source bring your paying customers? i.e., your advertisers in one biz model and your corporate subscribers in the other.

What value does open source bring your crowdsourcing partners? i.e., your content providers that work for those "at a boys" and reputation.

What value does open source bring to your future revenue? Do you need feature providers that work for "at a boys" and reputation? Do you need open source to undermine the value proposition of your competitors?

share|improve this answer
2  
One more: does open source enable any new business models I might be overlooking? –  Joel Coehoorn Jul 7 '09 at 14:36

I'm astonished that nobody seems to mention an IMHO very important point:

Releasing the source would allow others to build websites for other topics/sub-cultures.

Think about all those people who are e.g. into mathematics, aquaristics (fish tanks), whatever. I'm sure there are many groups out there who would love to build a question+answer based site like stackoverflow/serverfault/superuser.

share|improve this answer
1  
this has already happened, with OSQA and the machine learning community, and might very well happen with mathoverflow and SE 1.0 –  Suresh Jul 10 '10 at 17:24

This is perhaps repeating some of what others have said, but since I was asked to bring my comments here, I'd rather keep them whole than splice them up as comments to other responses. Sorry, I'm lazy.

(Background: I am a rabid free software fanatic since the 1980s I pretend to be pragmatic on the 'Net, though.)

I agree with Joel: releasing the SO source code would mean his hosting business would have to compete with a number of competitors who drive the price down (nearly) to cost. It is almost inevitable. Joel would have to provide something extra to justify higher prices.

Some companies manage to do that. There are significant differences in the prices for, say, web hosting and DNS registries, even though the software and service are essentially the same. However, it is a very difficult market to be in.

On the other hand, if these kinds of Q&A sites do become a lucrative business, I predict someone will clone the SO code, perhaps making it free software from the start. Then Joel is in a difficult situation again, although he'll have a couple of years of head start.

I suggest it may be worthwhile to consider avoiding that by pre-emptively open sourcing the SO code base at the opportune moment.

There's at least few ways in which Joel can help keep his competitive edge despite the code being free:

  • Use the Affero GPL license, which means all his competitors would have to release any changes they make, even if they don't distribute the code. At least they won't be able to compete by having a better product: everyone has access to the same code.

  • Release the code in a delayed fashion. The Free Software Foundation did this with the Ghostscript implementation of Postscript (or rather, accepted it when done by its developer). GS was released in a non-free fashion first, then a year later under a free license. This made it easier for the developer to be paid by printer manufacturers who needed bug fixes and improvements sooner rather than later.

  • Embrace the competition: sell support for setting up and maintaining a SO instance.

Now, I'm not saying any of the above will make Joel's life easier as a hosting provider, but I would like to suggest these for consideration in your discussions.

share|improve this answer

Jeff, if you don't release the source, somebody will build it themselves. I don't think you need to worry about what open-sourcing the project will do. Whatever is going to happen is going to happen.

SO's only option is to offer the users something different. If we could plugin to SO via a thorough API, that would make SO different than any spin off. It's not the technology that makes SO neat, it's the content and the community.

share|improve this answer
  • Does open sourcing Stack Overflow even make sense at all? What do we (stackoverflow.com llc) get out of it? What does the community get out of it? Is it "win-win"? Or does someone lose?

Open sourcing Stack Overflow makes sense. The LLC gets a few benefits. First of all, it gets free labor. Programmers aren't cheap. Secondly, it decreases the likeliness of other open-source implementations. Third, it gives you inroads and mindshare into an entire audience who wouldn't use StackExchange. By using OpenStack (I'm naming it now, whatever), they might end up using StackExchange or contributing patches in the future, which is of value to you.

The community gets similar benefits. People who would never buy StackExchange could use OpenStack instead. We'd get a whole ton of good looking, well designed, ASP MVC code. People who really love StackOverflow could express their thanks by contributing.

  • Are there "hybrid" models of open sourcing that could work? Rather than treating this as an "all or nothing" scenario, is there a way to open source parts of what we're doing, or restrict licensing so that we don't compete with ourselves in the hosted StackExchange part of the business?

There is always the dual license option. For those that aren't familliar with dual licensing, the idea is that you license the software under the GPL for no cost, but you also license the software under the BSD (or MIT) license for a fee. You could easily add this to your current pricing scheme. Essentially, there is an additional "Free" tier at the bottom with no hosting, and you also add a "purchase" option where you get a BSD'd copy for $x. This would probably be pretty expensive.

There are a few benefits to doing this, but basically, the reason that you would open the source of SO is to garner updates to the code from the community. The price of updating the code without contributing back is the the cost of the BSD'd code. A company can essentially "buy off" the need to share their own proprietary stuff.

Now, your "compete with ourselves" point is well taken. However, you forget about your prime advantage: you know the code base. Yes, someone could just set up shop and install OpenStack on a ton of servers, put up a front a la WordPress.com, and start charging. But are they able to compete with you on developing new features? If they fork it after your first release, will they be able to make it better than you will be able to, given your knowledge of the codebase? You're also discounting the social element involved. Basically everyone would know that that's what they're doing, and I honestly doubt that many people would do business with someone who would do something like that. At the very least, I know that I'd want to use an originating service, as I wouldn't trust someone else to have a thorough knowledge of the code.

  • Aren't there other companies pursuing open source and hosting businesses at the same time? Such as Six Apart and Movable Type? I'm not sure how applicable this is to hosting business models, but certainly Slashdot and Reddit have gone open source. Dot Net Nuke also runs a similar business model, apparently.

There are. What you have to remember is what these companies' value propositions are: convenience. They're in the business of selling bottled water, basically. No need to worry about filtering it for yourself; just pop the top and drink. Lots of people make lots of money selling bottled water.

  • Won't we be competing with open source versions of ourselves anyway in the long term? There are certainly already open source Stack Overflow clones, and lots of open source FogBugz competition and clones. Over time, won't the competitive pressure increase from the continual improvement of open source copies of what we do? Would it make sense to do it ourselves so we control it?

This is true. As you've said, there are already lots of clones. If you were to release SO as open source, there would be less of a tendancy to re-implement SO itself, and more of a tendacy to just contribute.

  • Could there be "enterprisey" closed source and "public" open source parts of the business? I've always said that StackExchange is going to have to fork because their private small, medium, and large business audience will want very different things than the public internet audience we serve. Wouldn't this be one way to segment the "free as in whatever the heck it is we're calling free these days" open-source dev work from the value-add closed source product?

See my above comment about dual licensing.

share|improve this answer
1  
The problem, in this case, with the "free labor" argument, is that this is community software. As Jeff and others (who have done anything more than just use a phpBB out of the box) know, social software is organic and highly unpredictable. Something that "looks" like a reasonable "enhancement" to the functionality of the software can (and likely will) have dramatic and unforeseen effects when it's dropped into a live community. A "robust community" of contributing developers can actually do more harm than good if not highly constrained. –  Jay Stevens Jul 8 '09 at 1:02

There are three revenue sources for software:

  1. Sell the software
  2. Sell consulting/maintenance around the software
  3. Host the software

In your case you will also have ad revenue from your three web properties that use the codebase.

Open sourcing the software definitely eliminates #1 above and may also eliminate #3 (as Joel mentioned in Podcast #60). I could certainly see FogCreek being able to make a ton of money using the #2 approach - sell the server, installation, configuration, and training for $50,000 plus an annual maintenance fee. Enterprises want the software on their own network - a reason I think the StackExchange idea will not be as successful as it could be.

There will be many advantages of open sourcing the software from a business sense: getting the FogCreek brand out (for Joel), developer good will (you buy products from companies you like), and contributions from open source developers.

share|improve this answer

Point 4 has been answered convincingly by Benjamin Pollack, in my opinion.

Yes, there are Open Source clones and there will be many more (simply because the SO mechanism/UI is so convincing) but for a long time to come, they will be far inferior. I agree with Jon in the other regards.

share|improve this answer

The source code is only a part of what makes this site valuable.

I'd say the bulk of the value comes from us, the users, contributing our knowledge and expertise free of charge, in exchange for the warm fuzzies that come from helping someone, and also the recognition of our peers.

At what point did the number of man-hours spent on answering questions exceed that spent on writing the code?

share|improve this answer

Just thought I'd add to it that SVN and GIT are both open source, and people seem willing to pay for them to be hosted.

Also the network effect should protect you from competitors to your existing sites.

share|improve this answer
3  
They don't pay their authors to host it, that's what is Joel is afraid about. –  vava Jul 7 '09 at 11:22

Lots of companies make money off of opensource software. In the case of StackExchange, you're paying for a service, not just a piece of software. After all, even if you open-source SO, people will still need a place to host it. And who better to handle the hosting than the people who help make SO?

Besides, consider the advantages:

  1. It discourages "security by obscurity." Since your code is accessible by anyone, you're forced to implement real security measures rather than trying to hide exploits.
  2. I think you'd be surprised at how it can improve a platform. Simply put, the 5 (?) of you may be good at what you do, but there's no way you can be any better than the armies of programmers who post on StackOverflow/ServerFault and are just as concerned (if not more concerned) with making them a better place.
  3. It would be most satisfying to my (and I'm sure everyone else's) geekdom to learn a bit more about the software I've been using for the past few months.
share|improve this answer

One thing missing from the question is what constitues the SO/SE source code. If it is just an HTTP renderer with database interface and user authentication, then I don't see the problem with open sourcing that. The hosted version can get it's added value from the tools that are used to create the look and feel, administer users perhaps, do automatic backups and any other housekeeping chores. If SE is being aimed at non-IT based companies, they aren't going to know the ins and outs of CSS to set it up properly for the SO engine. I'm sure there are a few other tools that can add to the value of a hosted solution that need not be put into the open source version. This allows the small groups to benefit as well. Who knows, it may prompt someone to suggest to their employer to use the system. Also, open sourcing the SO engine would give you added benefits - localisation for one, especially those non left-to-right-top-to-bottom formatted languages.

Skizz

share|improve this answer

semi-Open Source: Code available, but not licensed for "Resale"

So, individuals and organizations can use it, contribute patches and features, but ISPs and Web Hosting companies can't undercut StackExchange.

This can be accomplished by Dual Licensing... free for personal/intranet use, royalties required for reselling or providing StackExchange-like services.

share|improve this answer

I was hoping you might ask, the podcast on this was interesting.

1). Yes. I suspect a very large number of us (me! me! me!) would like to get involved, and motivated developers make for the best technology. The customer is always right and in this case you have a chance to give direct influential access to a very savvy group of customers.

2). I'm not really au faitOSS guy, but surely you can choose any licence you like such that you could prohibit the commercial use of SO codebase in such a way that it competes with your hosting, e.g. disallow commercial hosting. Hell, couldn't you sit down with a lawyer and work out a bespoke StackOverflow Licence if you have to?

3). Definitely out there, god knows what their diverse business models are like.

4). Almost certainly. Historically, at some point every closed system becomes unsatisfactory to those who "own" it's usage. Be it Internet Explorer or the American colonies.

5). Can't see that kind of schizophrenia working. You're dooming yourself to conflicts of interest.

share|improve this answer

1) Open-sourcing Stack Overflow certainly makes sense, as now the community itself can partake in the growth and expansion of the system itself.

2) There could be a commercial-use license.

3) There has to be.

4) I've seen open source versions already, so yes.

5) No real point in doing so.

The SO community is already so well established it would be difficult for anyone to exactly copy SO and steal any significant market-share.

share|improve this answer

You have a large range of options when it comes to open sourcing. Whether you choose, say, a GPL license or a BSD license will have a large impact on what people can do, as I'm sure you're well aware.

I'd say the safest model to choose is a dual-licensed model where code can be used for free under a viral license (eg GPL) but can be licensed commercially too. In some ways this is the best of both worlds but it does have a downside.

The real benefit of open source is that you get developer involvement essentially for free (apart from the time required for someone to organize and lead the project). The negative of the dual-license model is that if people contribute code under say the GPL license, you will have a tough sell convincing them to let you sell it commercially too.

The plus side of any open sourcing of course is that you will get free development done.

Personally I wouldn't worry about the impact of competing with IllegalArgument.com. You were here first and will have a large loyalty base as a result (like Digg and Reddit). Ultimately, it's not hard to duplicate the functionality of StackOverflow once you've seen it. I know theres nothing here I couldn't write and I think we're talking only man-months to produce something with most if not all of the functionality. By open sourcing, you can probably head off such efforts and then control the licensing as people will more likely use yours than duplicate it.

The downside of any open source effort as well is that once you've done it you can't take it back.

Other potential models including providing the source code for free but charging for support. I don't know if this would suit SO but it works for MySQL and others. JasperReports does this too and they have a dual license model but don't accept contributions to the official source because of the aforementioned issues.

In doing this you could also provide a basic version for free and have a better commercial version either by way of:

  • Modularized behaviour, although other people can always duplicate this;
  • Indemnity;
  • Putting limits on the free version such as non-commercial use or limit the number of users, posts or some other such limitation. Personally I'm not a fan of the "crippleware" approach however.
share|improve this answer

I find the concept of open sourcing a saas product interesting.

On one hand I can understand the concept that withholding the source code gives a major competitive advantage, and of course it may lead to someone creating his/her own clone (think of identi.ca for twitter).

But there is something that can also be considered: stackexchange concept embraces a lot of generatives that would make it better than free/open source and thus valuable by itself (http://www.kk.org/thetechnium/archives/2008/01/better_than_fre.php)

  • Immediacy, it's going to be the first service of it's kind available and as a saas setup time is (should be) minimal (compared to installing the open source version on your own server).
  • Personalization, well that's the whole goal of stackexchange
  • Interpretation, this essentially boils down that stackexchange would also be the best group to provide commercial support. Essentially saying you can deploy the software on your server for free (and thus provide you the control) but technical support can be bought for your piece of mind (plus other services such as consulting (or certification for onsite support), interpretation/analysis of the data could be considered ie: how to improve/increase interaction amongst the users of a client).
  • Authenticity, only stackexchange by the creators of stackoverflow can give this.
  • Accessibility, a saas is available everywhere (though an API and mobile version would be nice), an internally deployed version might not be.
  • Embodiment and Patronage might not apply to stackexchange as pure saas play
  • Findability, stackexchange is a brand and it can promote itself more than the open sourced version and therefore get more clients. Also stackexchange will profit from the relation to stackoverflow (this also enforces the authenticity)

Regardless if stackexchange will have an open sourced version or not, it does seem to have all the ingredients for success.

Personally I believe that an open sourced version would help stackexchange to be more successful as it reinforces a lot of the points mentioned above and it could open the last two point Embodiment (local stack exchange user groups) and Patronage (users giving back by evangelizing and contributing code / plugins / bug fixes etc)

share|improve this answer

You must log in to answer this question.

protected by Joel Coehoorn Feb 2 '11 at 20:18

Thank you for your interest in this question. Because it has attracted low-quality answers, posting an answer now requires 10 reputation on this site.

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged .