August 28, 2012
On Monday, 27 August 2012 at 23:28:31 UTC, SomeDude wrote:
> I wish Walter went on kickstarter to get public funds allowing him to hire a couple of full time developers.

I would pitch in $150 for that.
August 28, 2012
On Tuesday, 28 August 2012 at 00:14:34 UTC, Chris Cain wrote:
> On Monday, 27 August 2012 at 23:28:31 UTC, SomeDude wrote:
>> I wish Walter went on kickstarter to get public funds allowing him to hire a couple of full time developers.
>
> I would pitch in $150 for that.

 I'd throw in $50, or $10-$15 each month for as long as it was needed. Perhaps putting up a option to give donations via paypal or something. Then when he accumulates a thousand or something that would hire for a while, Maybe get some help from FSF as well.
August 28, 2012
On Mon, 27 Aug 2012 22:39:55 -0500, Era Scarecrow <rtcvb32@yahoo.com> wrote:

> On Tuesday, 28 August 2012 at 00:14:34 UTC, Chris Cain wrote:
>> On Monday, 27 August 2012 at 23:28:31 UTC, SomeDude wrote:
>>> I wish Walter went on kickstarter to get public funds allowing him to hire a couple of full time developers.
>>
>> I would pitch in $150 for that.
>
>   I'd throw in $50, or $10-$15 each month for as long as it was needed. Perhaps putting up a option to give donations via paypal or something. Then when he accumulates a thousand or something that would hire for a while, Maybe get some help from FSF as well.

I would throw in for that.

-- 
Using Opera's revolutionary email client: http://www.opera.com/mail/
August 28, 2012
On Monday, 27 August 2012 at 23:28:31 UTC, SomeDude wrote:
> On Saturday, 25 August 2012 at 19:48:33 UTC, Jeff Nowakowski wrote:
>
>> As for the IDE, he mentioned Scala, and there the developers made an effort to support the IDE in the compiler so that work wouldn't be duplicated and the IDE would support the latest language release. They also had funding and hired somebody to work on the Eclipse plugin full time.
>
> I wish Walter went on kickstarter to get public funds allowing him to hire a couple of full time developers.

vote++
August 30, 2012
On 28/08/12 00:28, SomeDude wrote:
> I wish Walter went on kickstarter to get public funds allowing him to hire a
> couple of full time developers.

Yes, but you have to be cautious about things like that.  Having people paid by the project to work on things can demotivate the efforts of other contributors.

There is another project I have some connection to where one of the major contributors, a freelance developer, started soliciting donations to enable him to dedicate work time to the project, with in particular a promise that if more than a certain threshold could be raised, he'd be full-time on it.

The effect of this was decidedly ambivalent, with several project members feeling they didn't contribute to the project so that other people could make money off it.  It's not clear that the extra time he dedicated was worth the loss of those other contributions.

It's a different thing if some 3rd party comes in and says, "OK, we're going to pay some of our staff to work on this project."  But having the project itself select certain people to be paid, or having project members solicit donations in this way, can be problematic.

At the very least you'd need to define the parameters and expectations quite precisely, so that people can see where it does or doesn't overlap with work they might have contributed as volunteers.
August 30, 2012
On Thu, 30 Aug 2012 08:54:33 -0400, Joseph Rushton Wakeling <joseph.wakeling@webdrake.net> wrote:

> On 28/08/12 00:28, SomeDude wrote:
>> I wish Walter went on kickstarter to get public funds allowing him to hire a
>> couple of full time developers.
>
> Yes, but you have to be cautious about things like that.  Having people paid by the project to work on things can demotivate the efforts of other contributors.
>
> There is another project I have some connection to where one of the major contributors, a freelance developer, started soliciting donations to enable him to dedicate work time to the project, with in particular a promise that if more than a certain threshold could be raised, he'd be full-time on it.
>
> The effect of this was decidedly ambivalent, with several project members feeling they didn't contribute to the project so that other people could make money off it.  It's not clear that the extra time he dedicated was worth the loss of those other contributions.
>
> It's a different thing if some 3rd party comes in and says, "OK, we're going to pay some of our staff to work on this project."  But having the project itself select certain people to be paid, or having project members solicit donations in this way, can be problematic.
>
> At the very least you'd need to define the parameters and expectations quite precisely, so that people can see where it does or doesn't overlap with work they might have contributed as volunteers.

Um what?  If someone wants to solicit donations in order to work on D, there is *nothing* that we can do to stop that.

What do we do, reject that contributor?  I think that's a much worse plan of action.  D needs all the help it can get, and if someone can only contribute full time if he gets paid, and people are willing to pay him, GREAT!

I fail to see how this story has any moral except, "some people hate money".  Which really isn't most of us here.  Myself in particular, I have very little time to work on D because I have a full time job so I can support my family, and a paying side gig.

-Steve
August 30, 2012
On Sat, 25 Aug 2012 15:39:14 -0400, Walter Bright <newshound2@digitalmars.com> wrote:

> On 8/25/2012 6:03 AM, Peter Alexander wrote:
>> Okay, so bitfields are rarely used, but many templates involve some use of CTFE,
>> and templates are very common in D code. It's good that D's parser is fairly
>> simple to implement (compared to C++ anyway), but to do automated refactoring
>> you need simple semantic analysis, and this is something that D does not have.
>
> How many IDEs can handle the C preprocessor, with token pasting and all, when refactoring?

Not any that I have used.  In fact, in one project that I was working from an existing code base, I had to configure Visual Studio 2010 to NOT fade out what it thought was commented code, because it was wrong.  Otherwise, it was too distracting.

Here is what I think:

1. an IDE can be built that refactors non-meta-generated code quite well, D is easily parsed.
2. Said IDE can be provided hooks so when it does encounter mixins, it can be told what things mean.

For example, I use netbeans to write php -- a dynamic language.  There are no real variable type declarations, so when you start typing, auto-complete sucks unless you have told the IDE what a variable is.  You do so like this:

/**
 @var Type
 */
var $varname;

And now the IDE assumes you have stored a Type into $varname, so when you type $this->varname->, it completes with the members of Type.  Without the comment, I get nothing.

A similar approach could be taken with mixins, like bitfields.  You identify what the parameters to the mixin are, and then the IDE can take appropriate actions.

For things like bitfields, which are considered core language constructs in phobos, the IDE may actually be made more intelligent and detect this automatically.

I don't think this is an unsolvable problem...

-Steve
August 30, 2012
On 30/08/12 14:21, Steven Schveighoffer wrote:
> Um what?  If someone wants to solicit donations in order to work on D, there is
> *nothing* that we can do to stop that.

I'm not saying that you can or should stop independent individuals soliciting donations.  It's just something where everyone concerned needs to think a bit about how it can affect the dynamic of the project.

In this case, someone was suggesting that a donation drive be organized by the project, to pay developers to work on something.  That's something a bit different, because it's _the project_ saying who gets paid, and for what.  It can work, but it can mean people are less motivated to volunteer, because gosh, the project can afford to _hire_ people to do this now.

> What do we do, reject that contributor?  I think that's a much worse plan of
> action.  D needs all the help it can get, and if someone can only contribute
> full time if he gets paid, and people are willing to pay him, GREAT!

That's why I said it makes a difference whether payment is organized by 3rd parties, or the project itself.  (In the case of the project I referred to, it was technically one developer soliciting for donations, but he was so core to the project that it felt a bit different to some people.)

> I fail to see how this story has any moral except, "some people hate money".
> Which really isn't most of us here.  Myself in particular, I have very little
> time to work on D because I have a full time job so I can support my family, and
> a paying side gig.

Yes.  Now consider how you might react if the parts of D you were contributing to were also being worked on by people who the D project was paying for.  You might well feel, "Well, that stuff already has sufficient resources dedicated to it, so I'm going to use my limited free time for something else."  That's not hating money, just a rational reaction to the fact that your limited volunteer time should be put where it's needed most.

But if enough volunteer contributors react like that, the project suffers.

Simon Phipps (former Sun Open Source chief, now on the OSI board) has written an interesting article about the dynamics of money in open source projects, worth reading:
http://blogs.computerworlduk.com/simon-says/2011/09/should-you-donate-to-open-source-projects/index.htm

August 30, 2012
On Thu, 30 Aug 2012 10:27:39 -0400, Joseph Rushton Wakeling <joseph.wakeling@webdrake.net> wrote:

> On 30/08/12 14:21, Steven Schveighoffer wrote:
>> I fail to see how this story has any moral except, "some people hate money".
>> Which really isn't most of us here.  Myself in particular, I have very little
>> time to work on D because I have a full time job so I can support my family, and
>> a paying side gig.
>
> Yes.  Now consider how you might react if the parts of D you were contributing to were also being worked on by people who the D project was paying for.  You might well feel, "Well, that stuff already has sufficient resources dedicated to it, so I'm going to use my limited free time for something else."  That's not hating money, just a rational reaction to the fact that your limited volunteer time should be put where it's needed most.
>
> But if enough volunteer contributors react like that, the project suffers.

I cannot relate to that at all.  Nor do I think the project suffers.

When I work on a piece of D, it's because I want it to work the way I want.  I want to have influence over its design so it appeals to me.  It has nothing to do with who paid for what.  In fact, I don't even care about getting credit, I just want a language that I enjoy using!

I throw out suggestions all the time, but they are almost always ignored.  But when I actually contribute, it has a much better chance of success, and I have had several of my contributions included in both Tango and D2 phobos/druntime.

My gut feeling (no research for this, just how I feel) is that people who feel their time is better spent elsewhere, but truly want to contribute, probably would work on some other part of D that *doesn't* have resources dedicated to it, or a library that uses D.  I don't think D suffers for this.

I think some people have a somewhat biased attitude that if a project isn't developed by all volunteers, it's "impure".  I know there are some who won't even touch D because of DMD's license, even though that has nothing to do with produced code :)  I don't know if this applies to your anecdote because I know nothing about the community there.  But there isn't much we can do about that, and if we don't have those people on board, I don't really think we are worse off.  I want to have people that are good at solving problems, good at writing code, and *want* to contribute, not people who have alternate agendas.  We cannot cater to every social viewpoint, so the best thing we can do is produce the best language we can, and if we do, others will want to use it and contribute to it.

Now, if D got to the point where it frequently preferred code that was paid for over code that was donated, solely based on the fact that one was paid for and one wasn't, that would not work out well.  We can't be biased in either direction, and then I think our community will be fine.

> Simon Phipps (former Sun Open Source chief, now on the OSI board) has written an interesting article about the dynamics of money in open source projects, worth reading:
> http://blogs.computerworlduk.com/simon-says/2011/09/should-you-donate-to-open-source-projects/index.htm

I will check it out, thanks.

-Steve
August 30, 2012
On Thu, 30 Aug 2012 11:21:06 -0400, Steven Schveighoffer <schveiguy@yahoo.com> wrote:

> On Thu, 30 Aug 2012 10:27:39 -0400, Joseph Rushton Wakeling <joseph.wakeling@webdrake.net> wrote:
>> Simon Phipps (former Sun Open Source chief, now on the OSI board) has written an interesting article about the dynamics of money in open source projects, worth reading:
>> http://blogs.computerworlduk.com/simon-says/2011/09/should-you-donate-to-open-source-projects/index.htm
>
> I will check it out, thanks.

An interesting point of view, and I can see how paying someone could be misconstrued.  If Walter was given money to hire people, and he hired certain already-active members of the community, it might leave some thinking "why them and not me?"  One thing I think would pose a large dilemma is who do you pay?  Someone who is very active in contributing to D may not be able to contribute more, simply because there are just so many hours in a day.  I'm amazed sometimes as to how some people do so much work on D!  This means we're just handing out bonuses without getting much back.

But then would you pay someone like me, who has contributed very sporadically?  Maybe it makes it so I can contribute more, but it's almost like rewarding me for being less active!

Paying someone in the community is like giving a company more money to develop a project faster, but instead they just pay their existing staff more.

If, however, Walter simply just hired two developers *outside* the community, and added them to the project, it would be a net gain for everyone.  Two previously uninvolved developers who could make the development go faster.  Perhaps that's the only real way to fund a project like this.

I agree with Mr. Phipps that the best way probably to fund an open source project is to purchase from a company who benefits from the language itself, and let them know why.  Then they have an incentive to make contributions ensuring they continue to receive that revenue.

I don't find this much different than paying someone who volunteers via donations, except that you aren't getting any benefit via service, just better language.

Thanks for the interesting read!

-Steve