On Tuesday, 6 January 2015 at 22:32:22 UTC, uri wrote:
On Tuesday, 6 January 2015 at 13:34:59 UTC, Joakim wrote:

Before you make such claims, you should probably think about them a little bit first. Please tell me one company that does not buy outside commercial software which they then use to build their own products. Some companies will want to cherry pick features, others will just buy an accumulated patchset against the point release from many devs. The suggestion that all companies will have to spend a great deal of time picking what patches they want is just silly.

To me it doesn't make sense for a company to cherry pick compiler patches. The model you propose may work for applications where there is a clean distinction between user needs and wants but in a compiler you generally need all the features to work effectively and produce reasonable code. The optimizer may be a different story so perhaps that aspect of compilation could be split.

Besides splitting the compiler will result in a maintenance headache. Missing features in the compiler will not result in subset-D and complete-D but half-baked-nearly-working-D and working-D, if you're lucky.

It really doesn't matter what makes sense to you: a few companies will prefer the lower cost of a custom build and go that route. The compiler is already missing features, shared still has not been implemented to Andrei's spec in his book five years ago and all the bugs mean several features do not work as intended. D is already half-baked: you always have to pick and choose what features you use with a new tech like this, whether employing the current OSS project or with paid patches.

This means A and B can't make any money off their patches, so they have to get some other job. That means they only have time to work on M and X on the occasional weekend and each of those patches takes six months to finish. You are obviously okay with that glacial pace as long as you get their work for free, but others are willing to pay to get the pace of D development sped up.

This is only true if all patches are equally priced. Otherwise it breaks down and has been proven mathematically.

You are referencing my paragraph detailing the current OSS route that _you_ preferred, where there are _no_ prices. If you're referring to the last sentence about paying for D development, I have no idea why you think all patches should be equally priced. If you think anything about business "has been proven mathematically," I can only laugh. :)

Glad you brought this up, there are several possibilities. Many users would probably just buy all the closed patches against a point release, so there is no question of splitting features. But a handful of paying customers may be more adventurous, or cheap, ;) and choose to only buy a custom build with their needed features X,Y,Z. This probably wouldn't happen right away, as it will take more time to setup a build process to support it, but supporting custom builds like that is definitely worthwhile.

OK, but the D devs still need to split the release between paid patches and non-paid patches. This is non-trivial in a compiler and adds additional work for the volunteers. Companies won't pay for the split because it isn't value adding for them so it will fall on the volunteers.

The OSS project and its devs would not have access to the paid patches, as they are _closed-source_, so the only ones doing such maintenance would be the paid devs who wrote them. Once the patches are open-sourced and submitted back upstream, they would need to be maintained by the OSS project, but that is no different from any other OSS patches.

As stated earlier, the patches would need to be funded up to some monetary and time limits before they would be released back to the OSS project. So party A might contract with their paying customers that they'll release patches X,Y,Z once they accumulate $5k in payments from all the customers who buy those patches, plus a six month delay after that. If they don't make $5k for a long time, the patches won't be released for a long time.

Then I think most OSS users would move on to another language. There is no point working with a compiler that is half-baked unless you pay for it. This is an issue because it's the OSS community that provides ongoing maintenance to the paid for patches. If OSS isn't there anymore then Digital Mars needs to start charging maintenance costs to upkeep the codebase. I don't think that will work, but it's only my opinion.

It's _already_ half-baked unless you pay for it, :) ie current companies employing D, like Sociomantic, employ in-house devs to add proprietary features that they pay their employees to develop. Providing paid patches from independent external devs changes nothing in that regard. I have no idea how you think an OSS community would provide maintenance for closed-source patches: that would not happen, as they wouldn't have access to them. Why would Digital Mars pay for anything? AFAIK, it's just one guy who makes almost no money off it.

Perhaps paid patches from independent devs won't work, but you haven't been able to articulate a single reason why it won't.

Why does anyone pay for software now? It doesn't much matter to a paying customer that the feature will probably be free in a year or two if they need to use it to make money _now_.

But that's assuming an entity needs D to make money now. They don't because we have C++, Java, C# already. Why not just use one of those more mature languages?

Because D provides features and benefits those languages don't provide? Don from Sociomantic, a company built on D1, has said, "Our infrastructure costs are 4X lower than the rest of our industry." Now imagine how much better it'd be if a D compiler had the same commercial polish and quality of implementation as the best paid C++ compilers.

As for people leaving because somebody else has developed a proprietary feature for D and not given it to them for free, companies like Sociomantic have already developed such features and they haven't been integrated upstream, why haven't "most" left already?

The features from Sociomantic features are all D1 and also there are devs from Sociomantic are trying to get features released upstream. Sociomantic isn't the blocker it's integrating the features into D2.

I doubt that Sociomantic has released all their proprietary additions to D1. But the key question is related to this: the objection to paid patches seems to be that someone somewhere is keeping a proprietary feature to themselves.

If so, then what about any person or company that is currently adding and using proprietary features with their D compiler? Why isn't that already a deal-breaker for those FOSS purists you're talking about and why haven't they left? Is there something magical about when a paid dev sells a bugfix patch to a company, but not when the company employs an in-house paid dev to write that bugfix patch for them?

The disconnect I see with your stated viewpoint is that there are already people using D and adding proprietary additions to it themselves. All I'm proposing is a marketplace in such proprietary additions, so they can buy them from outside. If you believe proprietary additions are so bad that "most" would leave, even when always given when a core OSS option for free, why haven't they left already?

Reply via email to