There's been some discussion about the special license introduced in the preview PR.
As a self-appointed mediator (lol) I'd like to chime in, in hope that we can remove friction here and to the mutual benefit of fireice-uk and the Monero project.
I understand that there's a serious lack of trust between fireice-uk and some core members and this special license doesn't help it. I also understand that some people's patience is being stretched in dealing with fireice-uk's special way of going about certain things. I'd like to see this job successfully completed as I think that a x4 speed-up would be rather nice to have, and I've started to like the guy. More importantly, my heart is with the project and I believe that doing this helps the cause.
The situation is like this:
- we can't have PRs with a special license as it goes against principles of the project.
- since fireice-uk doesn't trust that upon completing the job he will get paid and wants to protect himself somehow, he doesn't want to release the work with the open license until he receives the funds. While unfortunate, I think we can still make it work without too much drama and wasting any more time.
I'd like to highlight this quote by smooth:
> Closing the PR does not mean that the work doesn't get completed, nor that fireice doesn't get paid, nor that the code doesn't get merged into the repo (under the appropriate license).
> This is more a question of process and maintaining a highly productive culture than anything else. There isn't even anything wrong with being absolutely focused on being paid, but there are different ways to do that, as I commented earlier, and gave the example of the GUI work, where there was a formal contract. Though it is a bit late to start bringing that up since no such special requirements/structure were mentioned in the FFS proposal.
I would hope that it isn't a blocker on any of them items in the first paragraph, and there is no reason it should be.
So how about this. Fireice-uk can have the preview code hosted in his personal repository, and invite people to give it a brief check just to see that there won't be major objections to merging the final code (with the Monero project license, of course). I figure that was the main motive behind the current "preview" PR, so that people can look at it now and someone can't later, when the job is done and his time already spent, say something like "ok it works but you didn't do it like x or y -
denied, k thx bye and thanx for the free code". I think that fireice-uk's fears are unwarranted since the project adheres to C4, which means merging it as long as it doesn't break stuff and is not malicious. Even if he did annoy some people, the code itself - if as good as advertised (I can't really judge this myself) - doesn't have such burdens.
Anyway, how about this "process":
fireice-uk continues the job under his personal repo with his special license. He can invite people to take a look at the code just to be sure it won't be rejected at the end on technical grounds.
Once completed and ready-to-merge, the deliverables* tarball signed by fireice-uk should be uploaded here (does the forum support attachments?) or somewhere else from where it can't be removed later. Why? Since he doesn't trust the project, the project shouldn't trust him not to escape with the code after the funds are released =) The code must be buildable and the built binaries should work as advertised so that it can be evaluated whether it satisfied the milestone. *the signed tarball should contain the complete working repo with the wallet scan improvement and still under the special license. The license must also specify an address + private view key so that it can be "transformed" to Monero project license by the sole action of releasing the milestone funds to the address.
Funds are released to the address specified in the license. The TX ID is posted here, and anyone can check that the funds were indeed released to the address fireice-uk specified in the signed license. It will also be a nice example on how monero TX-es can be independently audited =)
Since 3. means that the condition in the special license (in the tarball from 2.) is satisfied, now anyone is free to take that tarball, remove the special license text, and merge it to the Monero project under Monero project license.
Phew. Really, I hope that in future dealings with fireice-uk there can be some trust and this cumbersome process avoided. If he proves himself, maybe the project can use him for other tasks? Maybe earning some monero and having a stake in its success will give him some incentive to occasionally participate in similar fashion as other contributors. That's my future expectation and another reason why I'm involving myself like this.
Finally, @Fireice_uk, if you'd like to have a casual chat with the guys but don't like communicating over IRC for whatever reason, you can PM your e-mail to https://www.reddit.com/user/needmoney90 to get a Slack invitation, or join #monero-dev via the Matrix network (https://riot.im/). Getting to know people does help to build a healthy relationship and build some trust.