Could this be a way to more dev contracts ?

Here you can discuss ReactOS related topics.

Moderator: Moderator Team

wildschwein
Posts: 413
Joined: Tue Sep 16, 2008 1:13 pm

Could this be a way to more dev contracts ?

Post by wildschwein » Sat Sep 08, 2012 7:54 pm

Great to hear, that the money from fundraising is used for contracts

In my opinion the donation O'Meter on the top of the webside was a BIG FIRST step, but this is only the beginning.

How to motivate community to spend more money ?

Present where the money is dedicated to, because t's very motivating to know, where the money goes.


example:
Let's say there will be an open contract about 1000 Euro for a concrete(!) task (e.g. bugfixing, USB, or smth else)
and the dev who wants to do this is already well known.

Let's image in the dedicated "money-pot" is already 780 Euro. It's so motivation to know, that "only 220 Euro" more, and the dev WILL START WORK ! Everything is ready - only this mad money is missing... and if i give e.g. 20 Euros, the "start-point" of contracts just comes one step nearer...

alfanak.net
Posts: 68
Joined: Thu Jan 19, 2012 6:49 pm
Contact:

Re: Could this be a way to more dev contracts ?

Post by alfanak.net » Sat Sep 08, 2012 8:37 pm

wildschwein wrote: Let's say there will be an open contract about 1000 Euro for a concrete(!) task (e.g. bugfixing, USB, or smth else)
and the dev who wants to do this is already well known.

Let's image in the dedicated "money-pot" is already 780 Euro. It's so motivation to know, that "only 220 Euro" more, and the dev WILL START WORK ! Everything is ready - only this mad money is missing... and if i give e.g. 20 Euros, the "start-point" of contracts just comes one step nearer...
i think its a good idea

DOSGuy
Posts: 582
Joined: Wed Sep 14, 2011 5:55 pm
Contact:

Re: Could this be a way to more dev contracts ?

Post by DOSGuy » Sat Sep 08, 2012 10:20 pm

When this campaign began, I had a ton of spare cash sitting around and I had been intending to donate $1000 to ROS for some time. If I got to choose what it used for, even better! It would have to be discussed and negotiated with the devs, but I could see that as a way to encourage a small number of larger donations.

(So why didn't I donate the money? Because the stock that it was sitting in unexpectedly lost 50% of its value -- I'm still not sure why -- and after all this time it's still down 27%. I can't afford to realize that kind of loss, so there won't be any money for ReactOS or anyone else until the stock fully recovers.)
Today entirely the maniac there is no excuse with the article. Get free DOS, Windows and OS/2 games at RGB Classic Games.

alfanak.net
Posts: 68
Joined: Thu Jan 19, 2012 6:49 pm
Contact:

Re: Could this be a way to more dev contracts ?

Post by alfanak.net » Sun Sep 09, 2012 10:46 am

DOSGuy wrote:When this campaign began, I had a ton of spare cash sitting around and I had been intending to donate $1000 to ROS for some time. If I got to choose what it used for, even better! It would have to be discussed and negotiated with the devs, but I could see that as a way to encourage a small number of larger donations.
i like your post too :)
sorry, but i cant write a good post in english thats why i quote your "good posts" and i put +1 for them...

waiting for Z98 opinion

Z98
Release Engineer
Posts: 3379
Joined: Tue May 02, 2006 8:16 pm
Contact:

Re: Could this be a way to more dev contracts ?

Post by Z98 » Mon Sep 10, 2012 6:18 am

Simplistically, the problem lies in making 'x' sound interesting enough that people want to fund it. The easier a proposed project is for someone to understand, the likely bigger in scope it is. People for the most part only see the end result, not the varied components that make something up. For example, people can grasp 'implement USB support' but something like this would likely be a multi-thousand euro contract because to implement USB is to implement half a dozen other things. Another issue is the dispersal of limited funds. If we present all proposed contracts at once and people start stating which ones they want to fund, then we run into the same problem community funded ideas suffered, which was no one idea ever got fully funded. If we select one at a time, then suddenly we risk holding up all the others if people do not feel the currently advertised contract is important enough to them to chip in. Hence the general pool of funds from which we draft contracts for. We could go for the surprise route in which we say 'm more euros before a new contract is funded' and then announce after the amount is reached, though the benefits would have to be weighed against the accusations of lack of transparency. To sum up, it's a decent idea, but I'm not convinced it could be executed in a way to create a net benefit.

DOSGuy
Posts: 582
Joined: Wed Sep 14, 2011 5:55 pm
Contact:

Re: Could this be a way to more dev contracts ?

Post by DOSGuy » Mon Sep 10, 2012 8:56 pm

That's the opposite of the way I would do it. I agree that it wouldn't work to say "we'll do x for x amount of money". Instead, what about a "click here if you plan to donate at least 1000 euros"?

So I contact someone and say, "I'd like to donate $1000 to create a contract to get USB working". Someone like Z98 can respond and say, "USB needs a lot of work. Developer X says that he would be willing to work on X for 120 hours. It won't fix all of our USB woes, but it's an important system that will help us eventually get USB working, and also benefit other parts of ROS that depend on X working correctly."

For especially large donations (amounts large enough to pay for an entire contract), it might be worth taking the time to have that discussion with potential donors.
Today entirely the maniac there is no excuse with the article. Get free DOS, Windows and OS/2 games at RGB Classic Games.

wildschwein
Posts: 413
Joined: Tue Sep 16, 2008 1:13 pm

Re: Could this be a way to more dev contracts ?

Post by wildschwein » Tue Sep 11, 2012 11:50 am

Ok, Z98, you are right,

but the last post from DOSGuy sounds very interesting !

If someone wants to spend a big ammount, he can sponsor a whole contract. Normally a person who spends a higher ammount of money, is - in my opion - so wordly-wise, that he doesn't insist on "but you must work on USB with this money".

I am very happy about the fact, that contracts are assigned NOW - and that there is not a long waiting time until the 30 000 Euro are reached, and then project team discusses and then there are finally some contracts, as the end of an endless game.

Another motivation could be: Community knows WHEN the next contract will be assigned, but they doesn't know to whom and not the subject matter !

For example. Every 1000 Euro Steps, there will be another contract.

So you see the Donation O'meter, and you know: If 11 000 is reached there WILL BE a new contract. (Donation O'Meter must be updated, VERY OFTEN, after EVERY new donation, because lots of Ros fans are checking webside every day)

A lot of ROS fans are aware, that they can't descide what is important to do know ! They trust the devs and the project team.

So in conclusion: To augment the donations, i suggest to make a donation environment, where there are "milestones" every 1000 Euro, where contracts are assigned, to motivate community to "donate the project" step by step a little further.

Nothing is more motivating to donate, than transparency, where your money goes, and
the assurance that your donation is fastly having an effect !


Think about it !

tamlin
Developer
Posts: 4
Joined: Wed Nov 23, 2005 12:00 am

Re: Could this be a way to more dev contracts ?

Post by tamlin » Thu Sep 13, 2012 6:45 am

Z98 wrote:Simplistically, the problem lies in making 'x' sound interesting enough that people want to fund it. The easier a proposed project is for someone to understand, the likely bigger in scope it is. People for the most part only see the end result, not the varied components that make something up.
I like what you wrote, and would like to back it up with some solid evidence. (note: I'm the "Mike Nordell" recently awarded a contract).

It started as a simple exception problem. An app raising a strange but still valid exception, and all shite went to hell. :). The complete test result for that run was "CRASHED".

So, I started to dig into it. It turned out that when the test ran as a single process, it worked just fine. When it "spawned" itself as a child process and keeping itself as a debugger, that's when the fun started.

Freely run, the whole test series worked, but under a debugger the "client" reached a condition where it simply crashed with a SEGV.

I know what you are thinking: There's something fishy in the debugging handling! Yeah. I've been down that path. From debugger to k-mode and back. 3 times+. With 100+ added trace messages (as debugging debugging API can't really be done from a debugger) I started to get the feeling "this works. Solid.

Having added many traces to debugapi, LPC, and who knows what, it was clear: they are reporting the correct info. It's the *client* crashing.

At first this was as much of a mystery as if Sigfried and Roy makes an elephant disappear. But then I got the idea to *disassemble* the testing exe, and realized "this isn't in this code, this is CRT startup code!".

By now I knew the child process crashed with SEGV (tried to access a memory address it didn't have access to), when what in fact should have been flagged was "Tried to access a stack guard page". Same error really, but on the latter the OS can extend your stack. SEGV is however absolute. C0000005 and you die. Period.

After a few days (!) I woke up at 04:50 in the morning, startled by a dream about this "I think I know what it is and how to check it!". I added code to the very same ece spawning itself again, to hexdump its stack (read memory from the other process, and then try to make sense out of it), and it was due to that, combined with disassembling (!) the exe I found how it reached that location and why.

Reminder: I have been to kernel-mode and back umpteen times here. I have added debug traces that would most grown men cry in their amounts. I have probably digested ethanol also to keep me sane, yet this eluded me.

Exception handling in Win32 is a complicated matter, but one of the obvious things are SetUnhandledExceptionFilter. That function is to:
1. Set the exception handler to what it's give, and:
2. Return the *previous* handler, so that the new handler can stor it and later call it (if needed).

It turns out that during a (well deserved) change in this area, that "return previous" part was missed, and the function returned the same hadnler it was given!

Now guess what happens if an error handler uses the pointer to what should be previous, and calls it (each function call consumest stack space). Bingo! Stack exhaustion!

So from having been deep into kernel mode, suspecting LPC, debug-functionality, and many many other areas, it turned out to be a silly (and silly it is) error in SetUnhandledExceptionFilter.

There wasn't a testcase for this at the time, that's why it slipped by. There is a stest case now, trust me. :-)

So what's the point of this post? The point is to display how much you have to plow through to find even the silliest of bugs. Also please note I didn't explain a tenth of what I did to find this. Suffice it to say, what you and I as users may see as "silly easy, 1 minute fix" may in reality take... somewhat longer.

jimtabor
Developer
Posts: 224
Joined: Thu Sep 29, 2005 3:00 pm

Re: Could this be a way to more dev contracts ?

Post by jimtabor » Thu Sep 13, 2012 7:11 am

Hum? I wonder this might explain what I'm seeing with this bug?

http://jira.reactos.org/browse/CORE-4953

milon
Posts: 969
Joined: Sat Sep 05, 2009 9:26 pm

Re: Could this be a way to more dev contracts ?

Post by milon » Thu Sep 13, 2012 8:22 pm

@tamlin: Wow, what an intense round of bug-squashing! You get some serious kudos for that. I'm glad that we've got a bounty set on some of these bugs. Keep up the tremendous efforts!

Haos
Test Team
Posts: 2954
Joined: Thu Mar 22, 2007 5:42 am
Contact:

Re: Could this be a way to more dev contracts ?

Post by Haos » Thu Sep 13, 2012 10:40 pm

tamlin wrote:So what's the point of this post? The point is to display how much you have to plow through to find even the silliest of bugs. Also please note I didn't explain a tenth of what I did to find this. Suffice it to say, what you and I as users may see as "silly easy, 1 minute fix" may in reality take... somewhat longer.
One should be around on IRC to witness Tamlin gritting his teeth while trying to bite this bug.

DOSGuy
Posts: 582
Joined: Wed Sep 14, 2011 5:55 pm
Contact:

Re: Could this be a way to more dev contracts ?

Post by DOSGuy » Thu Sep 13, 2012 11:09 pm

If I understand his story, someone was making necessary changes and left out something important. The oversight caused something unexpected to break, and it was a nightmare to trace the problem back to this piece of code. That seems to build a strong case for these regression tests that might have caught this oversight as soon as it was committed.
Today entirely the maniac there is no excuse with the article. Get free DOS, Windows and OS/2 games at RGB Classic Games.

Pesho
Posts: 209
Joined: Mon Dec 10, 2007 1:16 pm

Re: Could this be a way to more dev contracts ?

Post by Pesho » Fri Sep 14, 2012 9:46 am

More like it's a shining example of the sort of detective game that is bug fixing. You might spend a whole day actively trying to find the cause of a problem and come out empty handed at the end of the day.

b4dc0d3r
Posts: 148
Joined: Fri Sep 28, 2007 1:17 am

Re: Could this be a way to more dev contracts ?

Post by b4dc0d3r » Fri Sep 21, 2012 4:47 am

As a potential contributor, I would like to know that my contribution would be used for something I find useful, so that I can weigh the cost vs. value in deciding whether, or how much, to contribute.

As a potential contributor, I would like to be able to specify "award a contract", "support infrastructure", "use your own discretion", so that I can support what I feel is important.

As a volunteer developer, I would like to work on the things that are important to me, so that my favorite Windows software runs on an open source OS.

As a volunteer developer, I would like to work on the things that are important to me, so that I can understand Windows architecture (probably because I am a driver-level professional needing to understand how these things work, and it's a lot easier to debug with the code, but I can't afford the shared-source terms Microsoft may demand).

As a volunteer developer, I will work on what I can as i have time.

As a contract developer, I will devote an allotted time for an allotted amount of money towards a specific goal.

As a contract developer, I may find bugs in areas where I lack expertise, and may be unable to do more than document what needs implemented.

As a contract developer, given the many backwards-compatible hacks Windows affords, such as reading deleted memory, and the current state of ReactOS, I have no idea if there is a bug in the program that does not run, the kernel, a subsystem, or third-party code. Therefore I cannot guarantee any results.

As a project/community manager, and because I can't force people to focus on something, I can't get everyone to agree on anything, so I make the best of what I can.

As the committee who decides on contracts, I may not have something concrete in mind that is quantifiable enough to specify in a contract, or I might not have a way to estimate the number of hours or approximate dollar amount to award for something concrete. A large error would create dissatisfaction among many different sub-populations.


I think the conversation strayed and lost momentum. I have only given a few examples, but there is enough here for all parties to consider. And there is no simple way to make everyone happy, but there are ways to make progress. For my part, I saw a large donation and two, or was it 3? small contracts. As a donor, do you approve of the results? As a user do you see value in the contract work so far?

Success will breed success, and failure is more easily remembered. Such things take time, and are best handled slowly at first.

Black_Fox
Posts: 1584
Joined: Fri Feb 15, 2008 9:44 pm
Location: Czechia

Re: Could this be a way to more dev contracts ?

Post by Black_Fox » Fri Sep 21, 2012 10:24 am

b4dc0d3r wrote:As a donor, do you approve of the results? As a user do you see value in the contract work so far?
Yes and yes. I'm curious whether there are any more contracts (almost) prepared that devs have up their sleeve.

Post Reply

Who is online

Users browsing this forum: Ahrefs [Bot], Baidu [Spider], Istella [Bot] and 3 guests