Discussion on adopting an open source license

If Nu is based on Peershares then the common part of Nu is already open source. Is it difficult to put most part of Nu to Peershares and only leave some key functions close source?

Having to maintain two code bases in parallel, while evolving them, is a major burden.

Context shifting will slow down development and mistakes will inevitably be made.

I thought Peershares is upstream of Nu so that if properly refactored usually the devs only need to change either in Peershares or in Nu ?

It is, but it still requires back porting of the refactored code. I’m not saying it isn’t possible, just that it is an extra effort if the requirement is to sanitize portions of the code before pushing it upstream.

@CoinGame Thank you for taking the time to write out your thoughts. You’ve raised some excellent points that I agree with.

What is the prevailing opinion among Nu core developers and the QA team about open-sourcing? I am inclined to support the majority consensus of that group, as they will have the best idea of challenges and opportunities that are in front of us.

However, I did want to touch on your statement

Do you not agree with the two risks I identified in my post above? I’m certain that other major projects have noticed the trading volume we’ve managed in our first two months and made a mental note that the Nu design would be worth replicating, rather than contributing to.

I think imitation is flattering and competition is good. Peercoin still imports lots of code from the Bitcoin repo. If others fork our code and build something better we can merge it into our system. If they choose to remain closed source they’ll have the same problems as us right now. I see it as an ongoing challenge. There is far greater risk in shutting out developers from our project. Stable crypo-assets will become the new standard eventually, and we want those developers to help us in building Nu related projects. Open sourcing the code invites them to the table.

If others fail trying to use our design while we succeed it speaks volumes to the implementation of our solution, the team, the brand, and our community. Over 500 altcoins exist and more than half of which bring nothing innovative to the table. They have not hurt Bitcoin very much. There are plenty of failures and clones to list out. In fact I would say their failures have strengthened Bitcoin’s brand.

2 Likes

Had to think about this for a while and good discussion here BTW. I’m still on the fence on the short term, but may jump in shortly especially because of the reasons @coingame quoted in his post above.

The reason which stops me from voting now is the risk of a copycat with a lot of money. Therefore I’m still a proponent of publishing deliberately changed code, so it can’t be compiled and turned to live by each kid with a bit of time. This can be just a copy frozen in time taken at a certain date (fork) while further development continues closed source, which mitigates maintaining two libraries ongoing for the devs but opens it up for development. Full open sourcing can be postponed a bit longer e.g. 2-3 months till the community and product have further matured.

TL ; DR not yet. I believe we should include in the motion a checklist of things that must be completed before release the source, or we risk harming the project.

Here is why :

Personally, I will vote for scheduled open source. IMHO it should be properly planned together with the marketing road map.

I believe we now have some momentum, but we need some extra time to build other things : merchant adoption, bot stability, more custodians, more tools.

At the moment, with 5 custodians, 0 merchant adoption, no mobile app, no Web stats, little to no tools and one block Explorer, we risk to be overtaken quickly by any well funded organization with a community.

I don’t need to quote but there are probably literally hundreds of people waiting for this, since it’s a huge opportunity. It’s not another altcoin, is a possible Nobel prize solution for many of digital currency problems.

99% of crypto community didn’t had the chance to try NuBits yet. We haven’t been covered by any major newspaper or magazine. six months after releasing the code there will be several 1usd coins. Which one was NuBits? Ah, the first one, but who cares. I wasn’t there to try that. People will be confused and will go with the one that paid a review on coin desk.

We have only one product and we are not quite ready for a second. I am still dreaming of inflation adjusted NuBits. I don’t want someone else doing it from day one using 8 months of our work.

Last but not least, I want to hear Jordan. Remember we are a public company sort of, and that we received an initial investment. Without that we will not be here discussing this, so I want to make sure our investor are happy with it.

This is my opinion and people can or cannot share my view.
I would personally write a open source motion where we draw a checklist that must be respected before opening it, and some of the points of the list you can already find above.

Edit : also, being closed source did not created visible trust problems so far. Mobile wallet is one and we handled it probably better than just leave repository open and tell people ‘read the code’. We guided the dev through it.
We did not have many people waiting for the code either, or they have been very silent. Are there many tweets about us being not trusted because of that? I am not following social media lately.

And, as a side note, do not think that open source will bring a lot of free volunteers. (nubot is open source did not received a single comment on it, not to mention PR , and it features API wrappers that normally are paid in the order of thousands $) .
How do we plan to manage paid developer together with free contributors? We don’t have a bounty platform yet.

Moreover, which open source government model do we want to adopt? If we get to the point where we have developers, we need to define processes (NIP?) . Those will probably take time and resources.

3 Likes

The only times I’ve personally heard anyone talk ill of Nu being closed source was the Bitshares hate thread and the ranking on CoinGecko. I really like the checklist idea. Mobile wallet, improved custodian tools, multiple dividends paid out, these are all things that will be accomplished in a few months. In that time we could greatly increase interest and followers.

Are there realistically other parties out there with enough muscle and an already established community who can overtake Nu at it’s own game?

I am very new to this community, but it seems that Nu needs to scrap and fight its way to the spotlight in all the coin clutter whatever way it can. Otherwise, it will be overtaken by the crypto community at large. The reasons to wait until Nu has hit development milestones could be negated by the potential for those milestones to be reached faster by going open source. A goal reached sooner is inherently more valuable.

I just don’t believe they will actually be reached faster. Some of the major goals are already in development and will be finished within months without any outside help.

Thank you @Ben for having started this discussion!
…I can remember the discussion from September, but I can’t access the topic as well…

[tl;dr]
The points from @CoinGame, @desrever and @Yurizhai sum up what my position to open sourcing the Nu code is.
While I second @CoinGame’s arguments (for making the source open) here (some more, others less), I share @desrever’s concerns regarding the point of time for doing that.
And the reason why I tend to keep a conservative position was nailed down by @Yurizhai:

So my opinion is:
the reasons for making Nu open source by @CoinGame are valid, (to do or not to do?),
but the arguments for choosing a later point of time for this action (when?) by @desrever are valid as well.
[/tl;dr]

I don’t want to side track this discussion by starting to talk about incentives and altruism, but we should try to think of incentives for using the Nu code (other parties) once it’s open as well as the incentives for open sourcing it (NuShares holders).
There are for sure some incentives for other parties to use the Nu code for the benefit of Nu.
But there are incentives for other parties to use Nu code for the disadvantage of Nu as well.

I haven’t heard many complaints about Nu not being open source. I bet they will arise once Nu’s adoption has grown. And I agree that having open source code helps to create trust.

There are basically 2 user groups for the Nu client:

  1. people who hold NuShares
  • people who want to pay with NBT (or want to park them)

The first group seems to be totally not impressed by Nu not being open source.
And the second group doesn’t seem to complain much.
(it seems that the castigators are mainly the competitors which seem to be neither part of group 1 nor group 2…)

I might be wrong, but in addition to using NBT as a vehicle to hedge and do arbitrage at exchanges, being able to execute payments with the smarthones might turn out as one of the “killer features” of NBT.
I mean, that was one of the main purposes to have a stable crypto coin, right?

We shouldn’t overestimate the “closed source” effect for the average Joe.
For using NBT with a smartphone I expect the vast majority of users not to ask whether Nu is open source or not.
And we shouldn’t overestimate the effect for the Nu development once it’s open source.
just like @desrever said: the Android wallet seems to be on its way - without having open sourced the code!

If NuBits keep their promise (of being stable in value) they will be more regarded like a serious payment method than anything else.
Apples iPay, Paypal, etc. are all closed source but that seems to be no reason for the average Joe not to use them (ok, iPay is still new, but…).

I hope an Apple app follows the Android app. Considering Apple’s overall attitude towards crypto coins and furthermore taking into consideration Apples iPay which would be threatened by a NBT IOS app I don’t see that coming soon…

Even the Android app needs merchant adoption and a more scalable custodian structure to really work well.
Both will not be achieved in a short amount of time. And both are necessary to make NBT attractive for paying stuff - not only for the mobile payment success, but for being able to pay at lots of places with NBT in general.

And here I see one of the greatest dangers for open sourcing it too soon:
the community and the development team of Nu are great and have brought Nu to where it is right now.
I just want to save from underestimating the competitors (already existing ones and those that may arise).
There are other impressive communities as well as good developers. Being able to use the Nu source code to create a copy easily a big part of investment is not needed for creating code and can be used for other purposes.
Merchants can be ensnared by investing money (that has been saved by copying instead of having developed the code…) in “merchant adoption programs” (e.g. discounts for using this new payment method).
This can lead to a quick adoption of a copied version of Nu, it could very well lead to a bad end for Nu as well. This end can be prevented by postponing the opening of the source code.
And I wouldn’t even want to have an outdated source code available. Every Dollar that can be saved by copying code that is already available can be spent for merchandise, paying developers, merchants, giveaways etc.

The discussion is forked into the question whether or not to open source Nu.
And the “pro open source” fork needs to detail the circumstances of doing that (license, timeline, milestones, etc.)

I’m all for open sourcing Nu!
…but I’m completely against open sourcing Nu until some important milestones have been reached.

I try to focus on the milestones from now on (as I have made my point clear, I guess), but that might be something for one of the next posts.

6 Likes

In the original thread Ben said

The important parts of Nu are the Shareholders, the extended Community, and the multi-disciplinary skills and product vision of the development team. Those cannot easily be recreated.

I don’t fully agree. With our highly visionary and skillful team Nu has been created for all the World to try. Those who didn’t have the vision can see; those who didn’t have the development skill set and resources can copy if it’s open source; those who didn’t have Peercoin/Nu community, well, don’t really need or even want it.

There isn’t a clear road map for Nu yet. I don’t have a clear idea who will pay for running NuNet in, say, 2017. To an outsider, the bottom line of why trusting Nu is that the shareholders’ interest is aligned with maintaining the $1 peg. That alignment can be easily re-created. It’s automatic with Nu, almost out of the box. Someone can assemble a group of shareholders and put famous “I guarantee it” name and mega business on the line to bolster credibility, and the public will believe it.

I support open source but only when we know where we are going and we are confident that we can get there. Also don’t we need the nod from the early investors (they paid for the development, no? ) ?

I’m glad to see the thoughtful debate that is going on here. The comments of desrever, CoinGame, TomJoad and masterofDisaster have been especially enlightening to me.

First, I have no doubt now is the right time to finalize the content of a motion on opening the source code. This way the public knows we are serious about opening it up and everyone can observe the changing level of support for doing so. Thanks Ben for taking the initiative on this.

Whether it is the right time to pass the motion is a different matter. The points that have been made on both sides of the argument are quite insightful and comprehensive, so I don’t need to say much. However, I’d like to expand on this thought from desrever:

We have only one product and we are not quite ready for a second. I am
still dreaming of inflation adjusted NuBits. I don’t want someone else
doing it from day one using 8 months of our work.

While supporting multiple currencies does not require tremendous code changes, practically speaking it does require us to have data feeds working well (currently scheduled for a partial implementation in version 0.5.3), as managing liquidity for multiple currencies is too much to ask shareholders to do on an individual basis.

However, if we open the source code some other group can create an inflation adjusted currency with ZERO code changes, without data feeds implemented. They don’t have to support multiple currencies as we do to implement an inflation adjusted currency. They can omit the dollar pegged currency and start with an inflation adjusted currency. This outcome seems likely if we open the source now and there is a lot of demand for that product.

For this reason, among the other reasons articulated by previous posters above, I am inclined to wait to open the source at least until we have launched our inflation adjusted currency.

7 Likes

We do not need explicit support, because the system was designed to work without it. What we will need is Shareholder consensus, through a formal vote.

The initial investor(s) have only as much say in the direction that Nu takes as the amount of votes that their shares allow them to cast. The same as any other Shareholder.

I suspect that with this motion out there we won’t have low difficulty for a while :slight_smile:

It has just reached an all-time high according to: https://blockexplorer.nu/charts/posdiff

Glad to hear all positive comments. I think we can start drafting the “Checklist” soon.

In the meantime you can entertain yourself by reading what happened to NXT, which apparently also started closed source for reasons similar to ours.

https://bitcointalk.org/index.php?topic=422590.0
https://bitcointalk.org/index.php?topic=394916.0
https://www.cryptocoinsnews.com/nxtcoin-source-code-revealed/

Maybe someone have more background on NXT than I do, so please enlighten us.

I believe NXT was launched closed-source because the code wasn’t ready. Sure enough, when it was made public a couple months later, it received a lot of criticism for sloppy coding.

That said, I could be wrong. There’s a lot I don’t know about NXT.

Although this topic is a bit on pause I want to use the break to underline my concerns regarding open sourcing the code of Nu too soon (just in case the discussion continues and hope it does…):

https://www.cryptocoinsnews.com/counterparty-recreates-ethereum-bitcoin/

It might be not new for most of the readers here, but I think this piece of information is useful for evaluating the pros and cons of this topic for it can show what might happen, if source code for a valuable project is available before the originating project has gained enough momentum.

Concerns of this kind lead me to the position:

1 Like

I don’t think there’s much I can add to the conversation here.
I’m a big proponent of Open Source and what it stands for so, for me, it’s a question of when we open source not if. That sentiment seems to be shared with everyone else so that’s good.
I like the idea of defining some important milestones to achieve before Open sourcing but I’m eager to avoid scope creep.

I agree with @JordanLee in that the major milestone should be an inflation adjusted currency. I also agree with the milestones suggested by @desrever (merchant adoption etc.). I see lots of development going on and there is news of potential integration, innovation and adoption here every day. I like to think that by the time this motion to open source has been made official and voted for, the vast majority of the mentioned milestones will be complete or well within sight.