Slashdot Mirror


Ask Slashdot: Building an Open Source Community For a Proprietary Software Product?

An anonymous reader writes: I run a company that develops scientific computing software. Our core product is a traditional proprietary application — we develop the software and deliver the "binaries" to our customers. We're considering changing our deployment to include all of the source code and giving our customers some additional rights to explore and extend it. The codebase is HTML/JavaScript/Python/SQL, so a lot of the code is available in some form already, albeit minified or byte compiled.

Because we are in a scientific domain, most of our customers use Open Source software alongside our product. We also maintain Open Source projects and directly support others. We're strong supporters of Open Source and understand the value of having access to the source code.

We also support a free (as in beer) version of the software with a smaller feature set (production and enterprise elements that individual users don't need are removed). We'd like that version to use the same model as well to give users that don't need the full commercial version the ability to extend the software and submit patches back to us for inclusion in future releases.

Overall, we'd really like to find a model that allows our core product to work more like an Open Source product while maintaining control over the distribution rights. We'd like to foster a community around the product but still generate revenue to fund it. In our space, the "give the product away but pay for support" model has never really worked. The market is too small and, importantly, most customers understand our value proposition and have no problem with our annual license model.

We've looked at traditional dual licensing approaches, but don't think they're really right fit, either. A single license that gives users access to the code but limits the ability to redistribute the code and distribute patches to the "core" is what we'd prefer. My questions for the Slashdot community: Does anyone have direct experience with models like this? Are there existing licenses that we should look at? What companies have succeeded doing this? Who has failed?

85 comments

  1. Let me guess, you're Exelis and you're talking IDL by Anonymous Coward · · Score: 0

    Boy I sure can't wait until scipy and numpy eat your lunch.

  2. "The codebase is HTML/..." by Anonymous Coward · · Score: 0

    Shyeah.

    How about you start at the beginning: What do you want that licence to do?

  3. Don't bother by Anonymous Coward · · Score: 0

    Keep it closed. Charge money for it. Keep and open stable API. End users don't care about source access as long as they can get a API and data in and out of the system.

    1. Re:Don't bother by Austerity+Empowers · · Score: 1

      Unless the API is very low level, and a lot of black box between API and end user application needs to be filled in by the community. And perhaps that black box might be more than one black box, for various industries. It sounds like they don't want to write those black boxes (maybe don't even understand them) and what customers to write open source implementations around their API. OpenGL is a nice API that's apparently way too low level for say, many game development companies to directly target, and most of them seem to use Unity/UE etc. and are just fine fitting within those frameworks.

      Of course, if a community sees the need there, they're not going to be entirely pleased with building around a single, low level API that they have minimal control over and which may be used to extort them years later after investing a lot of work. I personally have very little trust about corporate stewardship of anything at all.

    2. Re:Don't bother by shutdown+-p+now · · Score: 2

      For the scientific community, this has actually been more important recently as people want to be able to reproduce other people's experiments. Which is part of the reason why why F/OSS tools like scipy and IPython/Jupyter have been growing very fast.

    3. Re: Don't bother by superswede · · Score: 1

      This!

      From a true scientist's point of view, full open source is critical. I avoid closed source to the very bitter end because I know that there's always another error/mistake to be found and that's less likely to found in closed source.

      (Then there's a bunch of folks who just want to be first and get another manuscript accepted and who care zero about reproducibility and sustainable science.)

  4. Translation by Anonymous Coward · · Score: 5, Informative

    We want employees that work for free!

    1. Re:Translation by anagama · · Score: 2

      Exactly right.

      The incentive for people to contribute to a closed source project isn't all that much. Remember that open source isn't a gift by your company to the public, it is an offer of trade -- you let the public have the source, the public provides you with feedback (bug fixes, enhancements, etc.) and gets its suggestions provided back to it. It's a circle.

      What you are suggesting sounds like you want the benefit of that deal, while negating the benefit for those who are doing work for you. Psychologically, it's a hard sell to say to someone -- "mow my lawn for me and I'll sell you a lemonade afterward at full price --- um yeah, I'd also sell you the lemonade at full price if you don't mow my lawn." You aren't going to get many takers for that deal, and the ones who do take it will have questionable motives (scoping out the property) or will just be naive and gullible (not a great foundation to build upon).

      --
      What changed under Obama? Nothing Good
    2. Re:Translation by i.r.id10t · · Score: 1

      Sounds more like they have a proprietary product with a (good? maybe?) API, and they'd like to get the folks that write to the API to have their own community going. The marketing droids they hired have noticed this, and want to use the "We have tens|hundreds|thousands of community users working on add-ons that you can get to make our product even better!" sales pitch.

      The fact that their product is written in a (mostly) interpreted language and remains human readable means everyone with a copy has (most of) the source code. And our submitter wants to try to edge towards a Free Software model, but realizes it won't happen, but wants to legitimize the access to the source in some way - maybe one day, full Freedom may be possible with it....

      --
      Don't blame me, I voted for Kodos
    3. Re:Translation by Kwyj1b0 · · Score: 3, Interesting

      We want employees that work for free!

      No, what he wants is to allow paying users the ability to have a lot of the benefits of open source, while not reducing the company's downstream cashflow. It might come as a surprise to you, but not every project can be open sourced and still make money. In fact, I always wondered about the pay-for-support model - why should I make my software easy to use and maintain (eve at large-scales) if my main source of income requires users to come and pay me to help with the product?

      Also, this is a scientific computing software - the target market is small as it is. Very likely the core is something that is highly mathematical, and not something the average programmer can work on. I wouldn't be surprised if there were several statisticians and researchers on the payroll. People like these don't necessarily write high quality code - see the R library for example (yes, there are many excellent packages, but a huge number are written sloppily by academics). The customers who use it might need highly specific tweaks for their application - something they can only do with the source. I myself would have loved to "fix" some of Matlab's functions for my specific use case. But if the customers don't have the source, there isn't much they can do.

      This type of license should actually become the norm - but it is unlikely to happen. There is always the risk that a customer who bought software might give a copy of the source to their friend, and before long I lost all control of the product. While binaries are still copied today, companies are trying to crack down on it through registration and DRM. If the source is out, there is even less they can do to stop it.

    4. Re:Translation by Paul+Carver · · Score: 1

      We want employees that work for free!

      Actually they want 100% the opposite. They want revenue so they can continue to pay employees. If they had employees that would work for free they could just open source the product and stop worrying about revenue. The problem is, in most software companies if you allow your revenue to drop to zero your employees will likely leave when the paychecks start bouncing.

      I'm a huge proponent of Open Source, but if you're an existing company contemplating open sourcing your existing code base you'd better have a clear plan on where your revenue will come from or you'll end up a former company with abandoned open source dead project. This is one of the better Ask Slashdot questions recently.

  5. Have you considered APIs or Plug ins ? by Crashmarik · · Score: 5, Informative

    That way you can give your users the ability to extend your product to their needs without risking killing off your revenue stream.

    Which begs the question where is your revenue currently coming from ?
    1. Product Sales
    2. Training
    3. Maintenance/support

    If it isn't 2 or 3 you may be killing yourself off. Especially if your product is user friendly and needs little in the way of support.

    1. Re:Have you considered APIs or Plug ins ? by Anonymous Coward · · Score: 0

      No support needed was basically the death of Novell.

      Check how eZ Publish does it, or Synfony Framework / Sensio Labs.

    2. Re:Have you considered APIs or Plug ins ? by Anonymous Coward · · Score: 0

      This seems like a good idea. The codebase languages sound... strange... but you basically want the direction that MathWorks took with Matlab -- a custom language is created, and users can create scripts in this language which are shared on the main website. The license is paid, both stand-alone and institution-based licenses.

    3. Re:Have you considered APIs or Plug ins ? by TeknoHog · · Score: 1

      4. Misuse of "begging the question"
      5. Profit!

      --
      Escher was the first MC and Giger invented the HR department.
  6. qmail and Microsoft by paskie · · Score: 5, Informative

    Yeah, you seem to want to have your cake and eat it too. Doesn't produce a lot of sympathy. Think again about how to make your software free but still want users to pay. What about keeping value-adding plugins or frontends closed and opening the core? If you open source but limit ability of people to make use of the core, what exactly do you expect to gain from such a "community"?

    Still, take a look at the licence of qmail. This worked not so bad for them, and might be the right equilibrium. If you just want legalese for your scenario, take a look at Microsoft's Shared Source licences.

    --
    It's not the fall that kills you. It's the sudden stop at the end. -Douglas Adams
    1. Re:qmail and Microsoft by Anonymous Coward · · Score: 5, Interesting

      My guess is that this is more like a Matlab style system, where users can create and share content and build a community that way. Having worked for a time at one of Matlab's competitors, I remember more transparency into the engine was something our users wanted and is one of the reason's R/Python have taken off (in addition to the fact that they're free). Every now and then there was something a customer wanted to do and contribute back to the engine, but we didn't have a mechanism for it.

      In this case, I suspect the poster is looking for a way to find that level of transparency, but still do maintain control over core development without the chance of forks. It also gives the users a path if the company goes out of business without having to execute one-off escrow agreements with each customer.

      I see people all the time on /. complaining that proprietary software is bad because they can't see the code. The poster here seems to be trying to find a way to address many of the issues about transparency while still controlling re-distribution. With a free version, it sounds like everyone can use it, but changes to the core can't be propagated without going through the company.

      Full disclosure: I saw this post in the firehose and modded it up since we're wrestling with similar issues right now. I'd love to see more models evolve that take the best of both proprietary and open source methods. Hopefully this discussion will yield some interesting ideas beyond the typical fanboy banter. :)

      -Chris

    2. Re:qmail and Microsoft by loonycyborg · · Score: 1

      I think that disallowing forks is a bad idea. True multiple forks might be confusing for users but only one will win in the end. And chance of fork discourages original authors from doing really stupid and selfish stuff. I think chance of fork should always exist, no exceptions.

    3. Re:qmail and Microsoft by im_thatoneguy · · Score: 2

      That's unfair, I use a lot of software that I pay for but want to make peripheral changes to. For instance I use a compute job scheduler that costs about $180 per compute node + maintenance. It's worth the price for the existing features, but I also want to implement esoteric features that maybe nobody else needs but will help it work better with our workflow so I have forked a number of the built in options. The company even has a github repository of the latest release so that you can get performance and reliability bug fixes from the developer while still keeping your one-off tweaks or even share with other companies who need similar fixes.

      This same company eventually even bought a substantial addition I made to make it a core feature. This model works well for everybody, if you need a custom feature you just need to add that one small feature without starting from scratch and I don't have to worry about maintaining the code and add big core features like moving to a new database or extending the SDK or writing a web interface or creating a native Python library.

      As the author stated, this sort of situation doesn't lend itself well to a support model since most of the users have the same needs so it's only fair that everybody pay a share of the updates and many of the studios that use the software *could* write it themselves if they were just going to develop it indirectly.

    4. Re:qmail and Microsoft by paskie · · Score: 2

      Interesting, some great examples in these followups, thanks! But why not mention the concrete products?

      --
      It's not the fall that kills you. It's the sudden stop at the end. -Douglas Adams
    5. Re:qmail and Microsoft by martin-boundary · · Score: 2
      Yep. Community is exactly the wrong word. These are customers, they will never be a community. In a community, there is shared ownership (hint: community has the same root as communal and communism).

      The reason there are open source communities is because by making the source open, it belongs to everybody in the community. This is not so with "shared" source (aka Microsoft's "look but don't share" approach). Merely publishing source code doesn't make it open. Open means I can change it, and I can republish the full system with my changes included, and it will actually run as expected. If there are any legal impediments, or unreasonable technical gotchas, then it's not open source. And there's no community.

    6. Re:qmail and Microsoft by shutdown+-p+now · · Score: 2

      Thing is, given that Python and R have set the bar to F/OSS effectively (at least for the "core" that's necessary to run things, if not the associated tooling), anything less than that will quite rightly be seen as deficient. Whether they have something else to offer that could compensate is another question, but from my experience talking to people in that community, it's a fairly major point that I doubt they can easily compensate for.

    7. Re:qmail and Microsoft by shutdown+-p+now · · Score: 1

      The reason there are open source communities is because by making the source open, it belongs to everybody in the community. This is not so with "shared" source (aka Microsoft's "look but don't share" approach).

      And note how this has largely failed for Microsoft. Very few people actually bothered to do anything with those "shared source" projects, and there was no community to speak of as a consequence (and as you rightly note, it's a misnomer anyway). I don't think there are still any MS projects shipping under any of these licenses anymore; pretty much everything is either AL 2.0 or MIT now, including things like CLR that used to be "shared source".

    8. Re:qmail and Microsoft by Half-pint+HAL · · Score: 1

      The problem is that the OP wants to have users contribute patches, not plugins. They want customers to write code for them and ascribe the copyright back to them. This is not only inequitous, but also potentially illegal, as it may constitute unpaid labour, something which is prohibited in most jurisdictions.

      --
      Got them moderator blues I blieve I walk out the do', With these mod-points I been gettin', I 'most never post no mo'
    9. Re:qmail and Microsoft by Half-pint+HAL · · Score: 1

      MS killed shared source with an overreaching license agreement -- it effectively said "if you look at this source, you may never write a single similar piece of software from niw until the end of time. Accepting a shared source license was a career-limiting thing to do, so no-one did it.

      --
      Got them moderator blues I blieve I walk out the do', With these mod-points I been gettin', I 'most never post no mo'
  7. Yeah, no. by Anonymous Coward · · Score: 1

    "Ask Slashdot: How Can We Make Our Customers Work For Us For Free?"

    1. Re:Yeah, no. by Anonymous Coward · · Score: 0
      • Self-service grocery checkout
      • Self-service hardware store
      • Self-service gas
      • Self-service automobile cleaning
      • Self-service banking

      Seems like everyone's so poor these days that they'd rather do a minimum-wage employee's job in the hopes of saving a little money over the enjoyment of having someone else do the work for them.

    2. Re:Yeah, no. by Anonymous Coward · · Score: 0

      I think all those examples "passed the savings on to the customers" (hahahaha)

    3. Re: Yeah, no. by Anonymous Coward · · Score: 0

      Its one thing to assign copyright over to a totally free project (like The Gnu project) but singing a CLA for a company that's gonna turn it into a proprietary blob at some point seems self defeating.

  8. Atlassian by Anonymous Coward · · Score: 0

    Atlassian operates near to open source, and purchasing a license grants access to the sourcecode. Bugs are also tracked publicly. You might check them out as an example.

    1. Re:Atlassian by Anonymous Coward · · Score: 0

      Or even some of the recent Apache projects...like Apache Ignite used to be a GridGain product or Project Geode came from a commercial entity too. Both still offer support and service contracts as well as pay-for pre-packaged bundles.

  9. The old MySQL did this by xxxJonBoyxxx · · Score: 1

    MySQL used to have a forkable (thank [diety]) open source code with a special commercial license if you wanted to embed the code in your application. Seemed to work for them pre-Oracle.

  10. Have your cake and eat it too? by sjbe · · Score: 2

    We also support a free (as in beer) version of the software with a smaller feature set (production and enterprise elements that individual users don't need are removed). We'd like that version to use the same model as well to give users that don't need the full commercial version the ability to extend the software and submit patches back to us for inclusion in future releases.

    Explain to me how this isn't a fairly transparent effort to recruit developers to contribute for private gain without having to pay anyone for their work.

    In our space, the "give the product away but pay for support" model has never really worked. The market is too small and, importantly, most customers understand our value proposition and have no problem with our annual license model.

    So why the need for open source? What does the community get out of it? If you want to go open source then do it but it sounds like you don't. It sounds like you want the advantages of open source without having to reciprocate with the community fully.

    We've looked at traditional dual licensing approaches, but don't think they're really right fit, either. A single license that gives users access to the code but limits the ability to redistribute the code and distribute patches to the "core" is what we'd prefer.

    I have trouble imagining why any developer would want get involved with an arrangement like that. Being able to see the code is pointless unless you can distribute it yourself without unreasonable restrictions. Sounds to me like you want to have your cake and eat it too.

  11. I don't think you want an OSI license. by mr_mischief · · Score: 3, Interesting

    This doesn't sound like open source is your real desire. It's totally possible to have a proprietary license with source provided to the customer.

    You could gain some mindshare by using one of the more restrictive Creative Commons licenses, like Attribution-NonCommercial-NoDerivs
    (CC BY-NC-ND) or Attribution-NoDerivs
    (CC BY-ND).

    You could use something very similar to the pre-2007 qmail license. It allows people to download and use it. They can make any changes locally. They can redistribute the pristine sources or binaries made from them to others. They can't distribute their alterations. They can distribute patches against the pristine sources, but they can't call those part of the product.

    The OSI has a whole list of licenses. I'd bet not one of these meets your requirements. You really shouldn't be saying it's "open source" unless you're using an OSI-approved license.

    Software licensing is a legal issue. The people you really want to be talking to about what license language meets your exact needs in light of the laws where you operate are lawyers. More specifically, you want probably want people versed in both copyright and contract law to look into this.

    1. Re:I don't think you want an OSI license. by Anonymous Coward · · Score: 0

      Most open source licenses, by definition, must allow distribution. There are outfits that provide source code for other reasons. Microsoft and Apple are good examples. Microsoft often provides code examples that are intended to illustrate the use of a particular feature. I am not sure if that is the kind of license you want or not.

      Another option is to examine how nVidia handles their Linux driver. They basically provide large chunks of source code for interfacing the driver, but also distribute a core binary object that must be linked into the driver. That binary object implements the proprietary magic while the remaining files are mostly glue. Of course, there is a community out there looking to obsolete the need for that proprietary magic. Note that the NVidia license is not considered "open source" either (by definition).

      Usually one would involve lawyers for an endeavor involving the production of legally binding documents. Your company should consider doing so in this case.

    2. Re:I don't think you want an OSI license. by Anonymous Coward · · Score: 0

      Bingo! I have many years of experience in this sort of world and it works just fine. You do not need to create an open source license in order to have source code access for the customers.

      Typically, you slap your copyright notices all over the product, then share the code with the customer. Any customer modifications are typically local customizations only. Customer code can make it back into the base product so long as they submit it as an enhancement request. Such submissions are usually without credit or compensation (though you might decide to credit the code--depends if the lawyers and suits will let you, and what level of customer goodwill you aspire to).

      FOSS devotees repeatedly and incorrectly equate an open source license with source code access. There is a middle ground that some markets have used for decades. You just have to know where to look.

    3. Re:I don't think you want an OSI license. by gringer · · Score: 1

      Creative commons licenses don't fit their preferred use case, because it allows redistribution:

      A single license that gives users access to the code but limits the ability to redistribute the code and distribute patches to the "core" is what we'd prefer.

      More generally, creative commons licenses aren't an appropriate fit to software. They're designed with creative works in mind and protect the expression of a work, rather than the way in which that expression is created.

      --
      Ask me about repetitive DNA
    4. Re:I don't think you want an OSI license. by BitZtream · · Score: 1

      real desire. It's totally possible to have a proprietary license with source provided to the customer.

      That's still open source. Contrary to what Stallman and the libretards have tried to do and usurp the wording, open source doesn't mean giving it away for free. It means the source is available, maybe even at an additional cost.

      It's only GPL fanboys that think OSS implies free. OSS software predates Stallman and FSF, GNU and GPL, he didn't come up with the idea ... He just tried to usurp it and twist it to his own narrow definition based on his viral agenda.

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
    5. Re:I don't think you want an OSI license. by mr_mischief · · Score: 1

      No. Just no. Providing the source TO THE CUSTOMER does not make it open source. Allowing the customer TO DISTRIBUTE THE CODE AND THEIR CHANGES makes it open source.

  12. Reciprocal Public License by allquixotic · · Score: 1

    As much as I find it distasteful to recommend a license that is Open Source but NOT Free Software, you may want to check out the Reciprocal Public License: http://opensource.org/licenses...

    It basically says that anyone who makes any changes to the software, whether they're "just internal" or distributed to a third party, must share those changes back to the community.

    It would allow your company to release your software under Copyleft terms similar to the GPL, but with an added *restriction* that prevents companies (and individuals) from modifying your code to suit their purposes and then not distributing the code to you.

    Of course, people are free to violate your license and never tell you; enforcement of the license in the case of non-distribution would be difficult to impossible without unauthorized trespassing on their property to obtain evidence (and then you have fruit of the poisonous tree).

    The RPL tries to write into the license what many (most?) developers do anyway: if you're going to make any enhancements, give them back to the "mothership" so they can include them in the main product, thus making the main product better.

    You'd have the following situation, thus:

    (1) Individuals are so unlikely to be caught that, unless they are very careful and deliberately ethical, they will probably not respect the wishes of the RPL.

    (2) Companies are less likely to knowingly violate the license because of the risk of possible damage to their reputation in court, but you may find employees within a company who choose to "risk it" and not inform their management about the risks of not distributing their changes to RPL'ed code. So you'd have a certain group of companies that WOULD contribute back (to comply with the letter of the license), and a certain group that WOULDN'T contribute back (and risk the consequences if it's ever discovered).

    Funnily enough, you wind up with a very similar situation with the GNU General Public License or Affero General Public License 3.0, except that:

    (1) Not distributing their code is *legal*, unless they distribute binary copies to someone who is considered not to be a member of the organization. So an employee can legally hand his coworker a binary-only copy of your product, but if he gives it to his neighbor or posts it on a mailing list, he would be obligated to include the source code, or at least an offer to provide the source code upon request (possibly with a monetary fee attached to the distribution medium; the fee does not have to be reasonable or cheap).

    (2) Some third party who (legally) gets a copy of the binaries from them could go through the process of obtaining the source code, as they'd be entitled to, and they would then be free to hand you a copy for free (or not, as they please). Basically anyone willing to pay the distribution fee / ransom would be able to "liberate" the code by posting it on Github, and that would be 100% legal.

    (3) You'd *still* have companies and individuals in both the "not sharing with you" and "sharing with you" camps, except that those who choose *not* to share with you are not necessarily violating the license of the code (unless they give you binaries only, and then cackle maniacally and refuse to hand over the source).

    Enforcement concerns make the *expected outcome* of licensing under either the GPL3/AGPL3 or the RPL1.5 almost identical, except that you would be technically entitled to sue anyone you happen to witness as having made modifications to the original source without sharing those modifications with the original developers (you). But the likelihood of you actually finding someone foolish enough to violate your license, and then willingly share that fact with you, is pretty low.

  13. It doesn't work. by Anonymous Coward · · Score: 1

    Examples are MySQL. The result is a fully proprietary product nobody wants to use or contribute to.
    QT is another. QT is now GPL and receives a lot of development. During the dual licence era GTK was was created to counter the proprietary QT.

    You are either open source or you aren't. The "inbetween" doesn't promote a long term existence as developers learn their code is being stolen from them, and with little to no recompense.

    The advantage of GPL and LGPL is that no one can make it private. Any development, any distribution, mus also provide the source - thus you benefit from anyone improvements by anyone else.

    1. Re:It doesn't work. by barbariccow · · Score: 1

      The advantage of GPL and LGPL is that no one can make it private. Any development, any distribution, mus also provide the source - thus you benefit from anyone improvements by anyone else.

      The "Any development" part is not true. Only redistributed copies. And even then, under LGPL only direct modifications -- wrappers/extensions don't apply.

    2. Re:It doesn't work. by jbolden · · Score: 1

      Just to correct the above, Qt is not LGPL. GPL was a solution to the KDE problem. GTK was created while Qt had a non-commercial license. The problem was with KDE that the combination of KDE & Qt created a derived product which Debian Legal believed was illegal for anyone other than KDE to distribute i.e. no redistribution. The GPL license for Qt solved the problem with KDE but didn't solve the problem that KDE desktop couldn't support non-GPL software without Trolltech getting a cut.

    3. Re:It doesn't work. by Anonymous Coward · · Score: 0

      QT isn't free as in beer if you intend to sell your software. Separate commercial license for that.

    4. Re:It doesn't work. by jbolden · · Score: 1

      The first sentence should read "Qt is not GPL it is LGPL".

    5. Re:It doesn't work. by jbolden · · Score: 1

      You are many years out of date. Not remotely true anymore.

  14. This isn't Open Source, then by jhantin · · Score: 3, Interesting

    I'll try to buck the trend here by skipping the derision and offering constructive advice. ;-)

    A single license that gives users access to the code but limits the ability to redistribute the code and distribute patches to the "core" is what we'd prefer.

    In this case, the closest match I can come up with off the top of my head is to apply the Microsoft Reference Source License to the source code.

    This is not a Free/Libre or Open source license, because the constraints you are looking for are in direct conflict with the Open Source Definition, clauses 1 and 3; the Copyfree Standard Definition, clauses 1 and 3; and the Free Software Definition, freedoms 2 and 3.

    Do you expect that if you were to permit redistribution of the core and modifications to it that others in the community would completely take over the project and continue its development without your business's involvement (a 'fork', in development jargon)? That would be the primary reason I can think of for such a restriction.

    --
    ...when you're writing a game...tweak the difficulty of "Easy" to something [your mother] can cope with. -- onion2k
    1. Re:This isn't Open Source, then by Anonymous Coward · · Score: 0

      You are confusing open with free. There are many open source licenses not "approved" by the FSF.

    2. Re:This isn't Open Source, then by jhantin · · Score: 1

      You are confusing open with free. There are many open source licenses not "approved" by the FSF.

      I'm highlighting a point on which the FSF, OSI and CFI are in agreement: the significance of the right to fork a project.

      --
      ...when you're writing a game...tweak the difficulty of "Easy" to something [your mother] can cope with. -- onion2k
  15. Re: Stop thinking like a greedy Republican... by BarbaraHudson · · Score: 0
    They can't or they would have already realized that there is no incentive to work for free so they can make money. Looks more like they can't afford to keep paying coders, or don't want to. Hey, why not work for me for free and I'll keep any money? No? Gee, not such a hot idea, is it.

    I don't think anyone is in a rush to welcome our "All your free labor belongs to us" wanna be overlords.

    --
    "Transparent" is a shit show that trades on every stereotype going. A man in drag is NOT a transsexual.
  16. Shared Source License by LightStruk · · Score: 3, Interesting

    What you're describing is what Microsoft calls "Shared Source." You want your customers to have access to your source code for their benefit, but you don't want them distributing either source or binary to anyone else.

    When you think about it, providing the source code to your customers without the right to share it with others is little different from what you're already doing - providing binaries without the right to share them. You're still asserting your copyright - you would just be providing a bit more copyrighted material.

    If you want to create a community around your product's source code, you have to figure out a way for your customers to have the freedom to discuss the code on forums, mailing lists, etc., without your code escaping to the world at large. You could explicitly allow customers to discuss the code on YOUR forum, which they only get access to by being a customer.

    If you agree that forums suck, then give your customers access to a private github or gitlab with your source code in it. They could make issues and merge requests, and thereby communicate with each other and with you about the code. Let them make branches, but don't let them touch your branches.

    I suggest not providing source to your free (as in beer) users. Make access to the source one of the perks of being a paying customer.

    1. Re:Shared Source License by Anonymous Coward · · Score: 0

      This is what the submitter needs.

      Not to the submitter, ignore all of the open source assholes who hate anything they cant do whatever they please with.

    2. Re:Shared Source License by shutdown+-p+now · · Score: 1

      Microsoft "shared source" licenses were actually more restrictive than that, as they had only allowed read-only access to the code, even for private and personal use without redistribution - i.e. fixing a bug and building your own version would already be a violation of the license.

      If that is really what is meant by "accessing the source code" by the article submitter, then this is the way to go. You can just use MS-RSL verbatim for that. Just, please, don't call it "open source". Even Microsoft, back in the day when it was still doing this kind of thing and calling GPL a "virus", had the decency to not appropriate the term and use "shared source" instead.

  17. Contribution Bounties and other thoughts by allquixotic · · Score: 1

    One thing you could do is write up a custom license and have contribution bounties.

    The license would go something like this:

    - Only "Your Company" can sell either the code (any part of it), any derived works based on the code, or the binaries.
    - Any party who pays for a license for the "Ultimate Plan" (or whatever you want to call it) gets a copy of the source code.
    - Any party that does not have an "Ultimate Plan" does NOT get the source code, and MAY NOT distribute any binaries they get, whether purchased from you or given to them by others.
    - Anyone who has a legit copy of the source code may distribute binaries (modified or originals) to any third-party they wish, royalty-free. That third party can only use and distribute the binaries but may not modify or view the code unless they also have an "Ultimate Plan" with Your Company.
    - Anyone who distributes modified binaries to others containing changes that they themselves made using the source code, MUST provide the source code changes they made back to you (for free).
    - Anyone who does NOT distribute modified binaries to others MAY do one of two things: either keep all their code/binary changes a "secret" (don't share them with anyone), OR they may submit them for a Contribution Bounty to Your Company. Your Company will look at the source code (without storing a copy of it or taking any ideas from it) and place a value on it, and offer a "take it or leave it" monetary compensation for the contribution. If accepted, Your Company will receive copyright attribution to the code, so you can do whatever you want with it. If refused, Your Company must destroy all copies of the code/binaries you got from them.

    So we'd have situations like the following:

    Scenario A: The University of Vulcan buys your Ultimate Plan and has the source code. Their researcher comes up with an innovative new algorithm that will make your software better. They use it and your product in a paper, and distribute their compiled binaries so other researchers can test it. As soon as they go to distribute modified binaries to third parties, they realize that they are now required to give you back the source code they changed. They comply with the license and do so. You win because you get code to enhance your product for free. The university wins because they can give away their modified copy of your product to other researchers as a way of demonstrating their work.

    Scenario B: The University of Tassadar buys your Ultimate Plan and has the source code. Their researcher finds a neat security vulnerability in your product. They don't have any incentive to share it with anyone else, but they want to bring in some revenue from it, so they sell the vulnerability details and patch to fix it to you for $5000. The university wins because they got some money (and the guy can probably write a paper on it). You win because your product has one less security vulnerability.

    Scenario C: An independent self-taught researcher wants to use your product. They are not a very advanced user so they don't have a special need to modify the code. For a reasonable price that a person making a living wage (or slightly less) can afford, they go to your site and purchase a "Basic Plan" that gives them access to the binaries and some type of support. The researcher wins because he got a good product at an affordable price. You win because you made money.

    Scenario D: An independent researcher knows a friend who's also a researcher as part of a large institution with an Ultimate Plan. The independent guy wants to use your product, but is very poor. Since he knows the guy from the institution, he gets him to provide a binary, free of charge, so he can work on stuff that needs to use a product like this. The independent researcher benefits by getting access to your product for free without breaking his budget. The institution benefits by increasing its networking with the larger scientific community. You benefit because you alread

    1. Re:Contribution Bounties and other thoughts by jbolden · · Score: 1

      Anyone who has a legit copy of the source code may distribute binaries (modified or originals) to any third-party they wish, royalty-free.

      They don't want this. They might want anyone with the source code to be able to distribute binaries to other license holders who may not redistribute at all.

  18. The way we do it by friedmud · · Score: 4, Interesting

    I led the team that created the MOOSE Framework ( http://www.mooseframework.org/ ) an open source computational science package.

    We decided to open source the framework (MOOSE)... and build proprietary (and many open source... depending on the line of funding) computational science apps on top of it. For that reason MOOSE (and everything that surrounds it) uses an LGPL license.

    This has allowed us to grow a large community of people all working together to solve coupled systems of PDEs... while also allowing us to have a line of funding in the future (licensing some of our applications).

    So... you may want to open source the core components... then use the core components to develop proprietary capabilities that you then sell.

    Just an option...

  19. Talk to your customers ... by MacTO · · Score: 1

    Explain what you are trying to accomplish, and ask your customers for their thoughts since they know what their needs are.

    Asking Slashdot, or anyone from the open source world, for their thoughts won't get you far. Their motivations are different from your company's. At a bare minimum, they are unlikely to agree with your licensing policies because they usually want more freedoms than your company's willing to grant. It is also probable that their thoughts won't reflect those of your customers. There is a huge difference between using a piece of software for which the source code is available and contributing to an open source project. For instance, scientists may only be interested in verifying algorithms or making modifications that are used internally. The open source community has many motivations, but they almost always go beyond having access to the code.

  20. And greenwow... by Anonymous Coward · · Score: 0

    Thinks he can reply to his own posts to make it seem like someone cares.

  21. Scientific? As in a web site? Quit trolling. by Anonymous Coward · · Score: 0

    Really? Your definition of scientific software is a web site? Wow.
    By that definition, I could post whetstone numbers and be a "hardcore scientific computing" provider. Or even do nothing more than repost top500 results.

    If you are not fully fluent in the specifics of IEEE 754, you are NOT doing "scientific computing".
    So tell us about your "product" - I'm pretty sure I could do better by hiring some 10yr old kids.

  22. Source, Just not Open Source by Anonymous Coward · · Score: 0

    You might consider changing your proprietary binary license to a proprietary source + binary license. That would allow your users access to the source and allow them to make changes, etc.

    That would kind of make sense anyway for your core product. Not many people outside of your industry will be interested. And it means that users will continue to pay for annual licenses / support, which you said they are happy to do.

  23. Sounds like Unreal Engine by Kjella · · Score: 1

    The whole source code is available on GitHub once you sign up. You can share improvements with Epic or other licensees of the engine, but nobody else. Though I guess you'll have to replace the "if you make money you owe us royalties" bit, since science doesn't usually make money with something suited to who you want to pay. Just don't pretend it's open source, because it's definitively not.

    --
    Live today, because you never know what tomorrow brings
  24. Actually it is like a model proven to work ... by perpenso · · Score: 4, Insightful

    Yeah, you seem to want to have your cake and eat it too. Doesn't produce a lot of sympathy. Think again about how to make your software free but still want users to pay. What about keeping value-adding plugins or frontends closed and opening the core? If you open source but limit ability of people to make use of the core, what exactly do you expect to gain from such a "community"?

    It seems not so much making the software free but making it open to customers. It seems reminiscent of various source licenses I had for various past projects. The vendor offered binary-only and binary-plus-source licenses, fortunately I was able to get management to go for the later. Having the source meant our future was in our hands. I did fix some bugs that we ran in to. One was extremely technical and took a few days to find and fix, reproducibility was extremely low. It was dependent on random memory containing a value that when loaded into an x86 segment register passed verification but led to later permissions violations. It was not something the developers or other customers were running in to, we just got lucky with that random value. For everyone else the random value was failing verification and the erring code path was never executed.

    My fixes and the fixes of other customers were incorporated into the vendor's source. We all benefited from the community effort. We had the source and the right to rebuild and link binaries into our projects and redistribute. If we cared to we could have customized things. In practice it was very much like open source efforts for us. Such models work, proprietary with rights to source works.

    1. Re:Actually it is like a model proven to work ... by phantomfive · · Score: 1

      The vendor offered binary-only and binary-plus-source licenses, fortunately I was able to get management to go for the later. Having the source meant our future was in our hands. I did fix some bugs that we ran in to. One was extremely technical and took a few days to find and fix, reproducibility was extremely low.

      It's so important to get the source when a company gives you a binary blob. There will be bugs in the code, and even if they aren't, the documentation is unlikely to be really high quality. In my experience, if you get a binary blob without getting the source, you should add several months to your estimate.

      Because it will take longer.

      --
      "First they came for the slanderers and i said nothing."
  25. Its not closed if you have the source ... by perpenso · · Score: 4, Informative

    The incentive for people to contribute to a closed source project isn't all that much. Remember that open source isn't a gift by your company to the public, it is an offer of trade -- you let the public have the source, the public provides you with feedback (bug fixes, enhancements, etc.) and gets its suggestions provided back to it. It's a circle.

    You are confusing proprietary with closed, its not closed if you have the source and sometimes the source is available for proprietary code. Consider libraries with binary-only and binary-plus-source licenses. In the later case I've had the source, complete rights to modify and redistribute my modification just like the vendor supplied binary. There was a community and a circle of benefits. Licensees provided fixes to the vendor, the vendor incorporated fixes in the main source, the main source was available to binary-plus-source licensees. It was very much like an open source community. We had the source, the right to modify and use it, our future was in our hands despite the proprietary nature of the library. Its a model that has worked.

    What this particular vendor is suggesting seems similar to the binary-plus-source model, the main difference being no charge for the source option. History suggests this can work, it worked when the source option cost extra.

  26. No open source by manu0601 · · Score: 1

    As I read the requirements, I have the feeling open source is not the within the goals.

    It is more like an early Unix source license, where the ones that pay have access to the source, can modify it, and exchange with other licensees

  27. Learn from successful people by Anonymous Coward · · Score: 1

    It's been years since I posted to /. and I can't be bothered to figure out how to log in, so possibly you will never see this. However, in the slim chance that you do, I will trot out the same advice I give everybody who asks this question :-) Read:

    http://www.oreilly.com/openbook/opensources/book/tiemans.html

    It is short and will describe a business model based on Free Software that is known to be successful. They started with $6K and what the article doesn't explain (because he wrote it before it happened) is that they sold the company to Red Hat for $600 million.

    "Giving away" your product and charging for "support" doesn't work for any sector, really. The biggest difference between an Open Source business model and a proprietary business model is that with open source you have to get paid before you write the software. After you write the software, anyone can get it for free, so there is no real incentive to pay for it.

    You say that your customers are already used to paying a yearly fee for their software. This is an excellent start. Cygnus also had a subscription fee for GCC and related tool sets at the time. I remember the company I was working for were paying ~$2 million per year. What that got them was a right to negotiate new work each year.

    Instead of immediately switching to an open source model (or, as it seems a "shared source" model that you seem to be going towards), I recommend changing the way you approach your work. If you are like most proprietary shops, you will have a PL/PGM/BL/BA thinking up and prioritising new work. It will be prioritised by how much your management (or that person) thinks that the feature/bug fix will be valued by current and new customers. You then implement the work and ship it to the customers, hoping that it meets their needs.

    If you want to move to an open source model, the first thing you need to do is to engage your customers more. You need to move from a "push" system where you dictate what the next version is going to look like, to a "pull" system where the customer is engaged in what they are going to get. I would start negotiating features with the customer based on how much money they pay you. Go to your highest paying customers first and ask them what they want. Negotiate scope so that if fits within the amount of money they are paying. Then prioritise those features/bug fixes up to the very highest level and ship them ASAP (possibly even having a special release for it). Keep doing this, including more and more customers into the negotiation process. Eventually modify your pricing structure so that instead of paying for "seats" they are paying for the work that you are doing.

    Once you have managed that, *then* you can open source the code with no detriment to you. In fact, it will be of great value to you because it acts as a focal point for new customers.

  28. Ingres by seawall · · Score: 1

    It might be worth looking at INGRES (not INGRESS) and their business history.

    They've managed to stay in business as long as Unix has had commercial databases (albeit with a close call every decade or so) and currently are in a similar position to yours but are still standing and still innovating. Many lessons in tech company survival, some of them of the "don't do that" variety to be learned there.

    Sadly, the people that know the name tend to think of Ingres as what it was way back in the 70's-80's, not what it is, so the company is called "Actian" these days.

  29. Wrong title then by aNonnyMouseCowered · · Score: 2

    The goal as I see it is not to build an OPEN SOURCE community but to build a large end USER community around the project. An open-source community would want, by most implied meanings of the term, the ability to modify the product and to share the changes. Of course, strictly speaking, open source is simply allowing others to view the source code. But that's the peep show definition, useful only to software voyeurs not developers/modders.

  30. Dual license GPL by jbolden · · Score: 1

    If you want to charge then pretty much you want no redistribution. That's the default for copyright. By opening source you are just allowing people to create their own derived works. Of course if a license makes a derived work and wishes to assign you copyright they can and you just create a process for this.

    The comments about your goals being close to the late early 1970s and earlier licenses are correct. That's what you are aiming for. Those licenses worked well from people who were mainly selling hardware. Just giving the source without the ability to do much won't encourage much of a community, you might as well just manage this all yourself.

    There are more recent examples of something like this being used. Many of the early GPL licenses came from dual usage where GPL was unacceptable to most customers but allowed them to go open source. For example Qt's free license (when they were Trolltech) varied overtime but mostly were restrictive enough that anything that linked to Qt free was unsellable so most shops had to buy Qt commercial. But since Qt was part of the Open Source community groups like KDE did submit patches. If you want to do something similar you might assert that any derived work, i.e. the output becomes public domain for the free version but the commercial version allows you to keep your data private. Of course that depends crucially on you being able to tell what came from your application and your questions was so vague...

    Anyway I think you need to be a bit clearer from the customer's perspective what they are getting from the source and from contributing.

  31. So sick of trite sound bite by Anonymous Coward · · Score: 0

    Can we please stop using the phrase "free as in free beer"? It's trite and simplistic and over simplifies the fact that there is no such a thing as free software.

    1. Re:So sick of trite sound bite by shutdown+-p+now · · Score: 0

      If you get software and don't pay for it, guess what- it's free. To you.

  32. You'll most likely die anyway by guruevi · · Score: 1

    The problem with selling closed source to the scientific community is that there are already open source alternatives to your product, regardless of your market, because generally it's easier for a scientist to program something as part of their job (they generally have a lot of time and are highly motivated) than procure something that costs $10k+ (because then you'll need grants or other sources of income etc).

    You may have a customer base for a while until the open source stuff settles out the bugs and user friendliness but at some point your company will stagnate the product and you will die. MATLAB/Mathematica/IDL is slowly going that way and there are a number of other small companies that have already gone the way of the dodo or have been bought out by bigger companies (eg. SPSS) because they can't implement requirements as fast as a community of scientists can unless you can afford a small army of field-specific scientists to work for you as is the case with The Mathworks and Wolfram.

    I personally would throw open the entire codebase and monetize your product as a service. If you can't figure out a way to monetize your product in an open sourced fashion, you've already lost to the inevitable open source alternatives that are springing up left and right.

    --
    Custom electronics and digital signage for your business: www.evcircuits.com
    1. Re:You'll most likely die anyway by shutdown+-p+now · · Score: 1

      I personally would throw open the entire codebase and monetize your product as a service.

      The problem is that it's already a crowded market. And furthermore, Amazon, Google and Microsoft have all discovered it, and now want their slice - and they all already have solid cloud compute platforms to use as a backend; so it's going to get even more crowded in short order.

      (Full disclosure: I'm on the MS team that is working on the Azure IPython/Jupyter notebook service that just went live on PyData, which is one piece of that.)

    2. Re:You'll most likely die anyway by Anonymous Coward · · Score: 0

      I work in an university and I agree. Most people here use Free Software and most people prefer to code their own stuff rather than buy software. For example, Python is not only used but a requirement in any research group.

  33. There is nothing non-propriatory about GPL by Anonymous Coward · · Score: 0

    You can still sell your code and binaries under GPL. The only things not protected by the GPL that are "protected" (by stealth) with a closed source license are things that aren't copyrightable.

    Meanwhile people will see ways to use your product you never thought of.

    By the way, ALL code was open source, and much of it for science purposes, most of the rest for engineering use, to begin with. It's a recent bastardisation to have all code closed by default. There's bugger all reason to have closed source for scientific programs.

  34. Allow redistribution, Charge to run, Reward forks by Mandrel · · Score: 1
    1. Make the source public and allow public forks.
    2. But require purchase of a license file in order for users run it for "production" purposes (no Freedom 0).
    3. Allow forkers to negotiate a revenue split, shared up the fork tree.
  35. We want to wolf-whistle at the pretty girls by Anonymous Coward · · Score: 0

    Hi, we work on a construction site and we want to treat women with respect but when the hot ones walk by we wolf-whistle at them. We want to keep doing that because we like it and it's good for morale. We also want to not whistle at feminists although we won't treat them with any respect... we'll just be pretending.

    Is there any way we can build a community of people who can help us TREAT WOMEN RIGHT except for the times we want to objectify, harrass, and annoy them? It's not that we're bad people, it's just hey, man's gotta do what man's gotta do, and we're like that.

    I've been reading SlashDot for years. This is the stupidest posting from a self-serving delusional a-hole I've ever read [excluding comments]. I hope I've captured the essence of the original poster in this analogy.

    M

  36. SuperMongo by mambru · · Score: 1

    SuperMongo (SM) has been doing something similar for many years, check their website.

  37. Kill it with fire by excelsior_gr · · Score: 1

    You lost me at "HTML/JavaScript/Python/SQL". The only right thing you did there was Python.

  38. Cake! by antdude · · Score: 1

    "The cake is a lie."

    --
    Ant(Dude) @ Quality Foraged Links (AQFL.net) & The Ant Farm (antfarm.ma.cx / antfarm.home.dhs.org).