Nxt Forum

Nxt Discussion => Nxt General Discussion => Topic started by: coinomat on November 08, 2015, 10:48:11 am

Title: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 08, 2015, 10:48:11 am
I'm with NXT community since more than a year and a half and I can see some recurring pattern which I'm really tired of.
There's always drama where there should not be any, and it can be easily avoided.

The problem is miscommunication between the developers and the community. Developers must lead the way, but they can't implement features which hurt end-users and other devs building on the platform, at least without asking them first.  New releases broke payments, broke dividends,  are breaking backward compatibility which is sacrosanct for many people. I can't see a single reason why it should be like that.

I propose to create a protocol for all significant changes to NXT core.

- Developers announce new release features.
- Based on the initial feedback a poll is set up
- Users vote.
- Features are realized in the NXT release.

At the current stage of NXT development the devs can't be solely responsible for the implementation of the new features. This has to be a community endorsed process.

To that end I propose a creation of separate developer's fund, using which all NXT businesses and users can support the developers' work.
Community has to give back to developers, and developers should work in concert with community. There's no other way.
Current situation  leads to degradation of the current ecosystem. Please share your thoughts on this proposal.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Damelon on November 08, 2015, 11:02:15 am
Just to clarify the vote:

Would the vote be for the features or the implementation?

I'd be wary of myself voting for implementations, because frankly, I don't know the first thing about the technical side.
I'd be like a member of the public correcting a skilled carpenter or smith.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: testdruif on November 08, 2015, 11:11:39 am
A very interesting idea...

I can see how this could work in an environment such as an enterprise where voting would be done in a meeting and there is a limited number of participants.

What are your thoughts on the validity or weight of the outcome of such a vote?

Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 08, 2015, 11:16:01 am
Just to clarify the vote:

Would the vote be for the features or the implementation?

I'd be wary of myself voting for implementations, because frankly, I don't know the first thing about the technical side.
I'd be like a member of the public correcting a skilled carpenter or smith.
For the features of course.
if there are some technical issues involved interested parties would have time to plead their case to the community, and that also can be included in voting questions.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 08, 2015, 11:17:19 am
A very interesting idea...

I can see how this could work in an environment such as an enterprise where voting would be done in a meeting and there is a limited number of participants.

What are your thoughts on the validity or weight of the outcome of such a vote?

  • If there are 2000 users and 20 of them vote (for argument sake lets say "yes) on wether or not to implement a feature.
  • What weight could be given to those 20 people that responded vs 1980 that did not know there was a poll or did not wish to vote because of various reasons (they don't card for example).
  • Would you give weight to votes based on the amount of nxt the accounts hold? (would give the few big accounts 2 much control?)
Yes I propose voting weighted by balance.
Bigger players have to have a bigger vote this is a must.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: testdruif on November 08, 2015, 11:25:44 am
A very interesting idea...

I can see how this could work in an environment such as an enterprise where voting would be done in a meeting and there is a limited number of participants.

What are your thoughts on the validity or weight of the outcome of such a vote?

  • If there are 2000 users and 20 of them vote (for argument sake lets say "yes) on wether or not to implement a feature.
  • What weight could be given to those 20 people that responded vs 1980 that did not know there was a poll or did not wish to vote because of various reasons (they don't card for example).
  • Would you give weight to votes based on the amount of nxt the accounts hold? (would give the few big accounts 2 much control?)
Yes I propose voting weighted by balance.
Bigger players have to have a bigger vote this is a must.

Any thoughts on how you would address the situation where one or a few people with a huge balance would be able to swing the vote in either direction they want?
it would just shift the "power" (for lack of a better word) from the handful of developers to a handful of people with a lot of nxt
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: lopalcar on November 08, 2015, 11:29:03 am
I like the votes idea
Why not set up a new asset for voting this issues? The assets is managed by tennesse for example and is given to main nxt projects in order to decide about technical matters. The distribution of the asset could be according to the market cap of each project, so we ensure that the most important projects have more weight in the decisions "If a noticiable change in project market cap, project managers also should give back some assets to asset manager, collaboration is always needed from both parties". Nxt worth the same as projects on top of it, so I think this could be a good approach

Then each project can subdivide the poll among their investors but vote only one thing in the iportant poll
Vote only by account balance doesn't make much sense, like in everything, I'm sure there are people with a tone of nxt which have no idea about what is going on and don't care about either
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: yassin54 on November 08, 2015, 11:31:56 am
Just to clarify the vote:

Would the vote be for the features or the implementation?

I'd be wary of myself voting for implementations, because frankly, I don't know the first thing about the technical side.
I'd be like a member of the public correcting a skilled carpenter or smith.
me too not expert
but implementation it is very difficult for me, i am noob i can not to vot
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 08, 2015, 11:33:27 am
A very interesting idea...

I can see how this could work in an environment such as an enterprise where voting would be done in a meeting and there is a limited number of participants.

What are your thoughts on the validity or weight of the outcome of such a vote?

  • If there are 2000 users and 20 of them vote (for argument sake lets say "yes) on wether or not to implement a feature.
  • What weight could be given to those 20 people that responded vs 1980 that did not know there was a poll or did not wish to vote because of various reasons (they don't card for example).
  • Would you give weight to votes based on the amount of nxt the accounts hold? (would give the few big accounts 2 much control?)
Yes I propose voting weighted by balance.
Bigger players have to have a bigger vote this is a must.

Any thoughts on how you would address the situation where one or a few people with a huge balance would be able to swing the vote in either direction they want?
it would just shift the "power" (for lack of a better word) from the handful of developers to a handful of people with a lot of nxt
Currently we have a rather even distribution.  The major holders are EXCHANGES. this is what would worry me more. You have to communicate to exchanges in the first place.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 08, 2015, 11:35:28 am
asset could be the way to go to.
that would imply a different scenario of course
and there might be some issues, who would determine the distribution shares?
balances seem more fair in this respect.
I like the votes idea
Why not set up a new asset for voting this issues? The assets is managed by tennesse for example and is given to main nxt projects in order to decide about technical matters. The distribution of the asset could be according to the market cap of each project, so we ensure that the most important projects have more weight in the decisions "If a noticiable change in project market cap, project managers also should give back some assets to asset manager, collaboration is always needed from both parties". Nxt worth the same as projects on top of it, so I think this could be a good approach

Then each project can subdivide the poll among their investors but vote only one thing in the iportant poll
Vote only by account balance doesn't make much sense, like in everything, I'm sure there are people with a tone of nxt which have no idea about what is going on and don't care about either
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: testdruif on November 08, 2015, 11:38:14 am
If mayor projects get a big stake in voting.

Might I (or anyone else) suggest "user unions" to represent the vote of the common folks :)
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Sebastien256 on November 08, 2015, 11:41:53 am
As a suggestion, maybe people should buy-in their voting power thru an asset. The amount raise coukd serve to fund nxt devs.

That way people interest in the devloppment of nxt would simply buy the asset, and the devs would get fund to build new features. Next major Features would be approved by vote by asset.

Asset would have to be issue by the nxt devs.
This also give more power to the first busiess that build on top of next.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: lopalcar on November 08, 2015, 11:52:32 am
asset could be the way to go to.
that would imply a different scenario of course
and there might be some issues, who would determine the distribution shares?
balances seem more fair in this respect.
I like the votes idea
Why not set up a new asset for voting this issues? The assets is managed by tennesse for example and is given to main nxt projects in order to decide about technical matters. The distribution of the asset could be according to the market cap of each project, so we ensure that the most important projects have more weight in the decisions "If a noticiable change in project market cap, project managers also should give back some assets to asset manager, collaboration is always needed from both parties". Nxt worth the same as projects on top of it, so I think this could be a good approach

Then each project can subdivide the poll among their investors but vote only one thing in the iportant poll
Vote only by account balance doesn't make much sense, like in everything, I'm sure there are people with a tone of nxt which have no idea about what is going on and don't care about either

The distribution is decided by tennesse guys "for example" they are a trusted party which want the best for nxt, I think they can do it fairly and adjusting balances before important votes. Is the best way I see, other way would be an automated transaction which moves shares according to market cap, but that isn't possible yet hehe, so we can trust in tennesse :)
It's also needed that main project heads, compromise to send shares back if they lose market cap, for mantain things fair. This is an extra commpromise, but doesn't requires many effort I think, and could solve this problems in a much open way and giving everyone involved the chance to participate in taking decisions

add: what sebastien says also is a good idea, will give funds to devs, but could lead in people which isn't as involved in nxt as major project managers having a very important vote. Maybe not all bussiness want to spend money in nxt for the right to vote, the vote should be granted also by the userbase this projects brings to nxt, not only if they pay to nxt devs. So I think is better not to buy the votes but give voting power according to importance of the project
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Sebastien256 on November 08, 2015, 11:56:54 am
asset could be the way to go to.
that would imply a different scenario of course
and there might be some issues, who would determine the distribution shares?
balances seem more fair in this respect.
I like the votes idea
Why not set up a new asset for voting this issues? The assets is managed by tennesse for example and is given to main nxt projects in order to decide about technical matters. The distribution of the asset could be according to the market cap of each project, so we ensure that the most important projects have more weight in the decisions "If a noticiable change in project market cap, project managers also should give back some assets to asset manager, collaboration is always needed from both parties". Nxt worth the same as projects on top of it, so I think this could be a good approach

Then each project can subdivide the poll among their investors but vote only one thing in the iportant poll
Vote only by account balance doesn't make much sense, like in everything, I'm sure there are people with a tone of nxt which have no idea about what is going on and don't care about either

The distribution is decided by tennesse guys "for example" they are a trusted party which want the best for nxt, I think they can do it fairly and adjusting balances before important votes. Is the best way I see, other way would be an automated transaction which moves shares according to market cap, but that isn't possible yet hehe, so we can trust in tennesse :)
It's also needed that main project heads, compromise to send shares back if they lose market cap, for mantain things fair. This is an extra commpromise, but doesn't requires many effort I think, and could solve this problems in a much open way and giving everyone involved the chance to participate in taking decisions

add: what sebastien says also is a good idea, will give funds to devs, but could lead in people which isn't as involved in nxt as major project managers having a very important vote. Maybe not all bussiness want to spend money in nxt for the right to vote, the vote should be granted also by the userbase this projects brings to nxt, not only if they pay to nxt devs. So I think is better not to buy the votes but give voting power according to importance of the project

It could be a combination of both, freely distribute to userbase and buy-in to get extra vote.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 08, 2015, 12:51:53 pm
The key question here is - do devs agree to this?
It would be nice to hear what they think.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Bitinvestor on November 08, 2015, 01:10:10 pm
The key question here is - do devs agree to this?
It would be nice to hear what they think.

I propose to vote on significant new features
Yes, but how the votes should be weighted to accurately reflect the need for, and the benefits/cost ratio for the new feature is the tricky question.
Quote
and API changes
No. Design by voting doesn't work.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Arkh on November 08, 2015, 01:27:53 pm
About API changes :

Here is how it SHOULD work (that's almost a convention between devs... )

If it is needed to change an API call ( except for a security breach ) you DEPRECATE the old call, which means that it can still be used but will display a warning that it is gonna be deleted soon. Then you ADD the new call so both can co-exist for a while.

The purpose of that is to satisfy everybody : 1. the API devs can go forward and improve the API as they will 2. The API won't break for 3rd party devs and will provide them with warnings on soon to be deleted calls.

For the timeframe of that proposition, I would propose that for example for an API call change, introduced in 1.6.X the call will be deprecated until 1.7 hard fork then it will be deleted.  Letting 3rd party enough time to adapt.

I am available to explain this further if anyone of the dev team, or the mediation team want to hear it. I am also volunteer to help fixing this operational issue.

I also kinda agree with coinomat's idea about voting on the features before they are realized but I am worried about that it will slow down the dev processes and that a very few people have a sufficient technical knowledge to be able to vote.

Regards,

Arkh


Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: chanc3r on November 08, 2015, 02:00:40 pm
Arkh you make a lot of sense, I agree and similar improvements to how change impact can be mitigated have been discussed not just around API calls but some of the 1.7 changes which won't change the API but because of the new blockchain constraints some uses of the blockchain may break.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: farl4bit on November 08, 2015, 02:13:45 pm
Thanks for this topic coinomat. The past months/years the community is not really being involved in the decisionmaking of the features for Nxt (except the coinshuffling). Most of the time this isn't a problem. Jean-Luc knows what people want en because he's doing such a great job we give him the freedom to think what is best for Nxt.

Involving the community in the development of new features makes Nxt a true decentralized platform. Users should even get more active in Nxt and on the forum, because they have a feeling to be a real part of Nxt. And the votings are good for PR and marketing, because we can spread that news everytime and get exposure.

I think that voting needs to be done on Proof of Stake, because that's the basic of Nxt. People with more Nxt have more concerns about the roadmap of Nxt and the effects of the features will affect them more.

But I do thing that the voting is only an advice to the devs and the foundation. Imagine that account with 50m decides something stupid, there must me a possibility to cancel that request. It's like a referendum. People vote for something and this is a strong advice/message to the devs and foundation to implement that feature or make changes to the core of Nxt.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: saladin89 on November 08, 2015, 02:21:27 pm
I am against this. First of all the majority of the users here have no technical knowledge, so how can they be qualified at all to vote? You say they will vote on the feature, but the feature is extricably tied to the technical stuff. Secondly this will slow down the development.

I like how it works now an enlightened elite(platos philosopher kings) choosing the path forward for nxt, democracy is overrated.

Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 08, 2015, 02:23:39 pm
I am against this. First of all the majority of the users here have no technical knowledge, so how can they be qualified at all to vote? Secondly this will slow down the development.

I like how it works now an enlightened elite(platos philosopher kings) choosing the path forward for nxt, democracy is overrated.
it's not how it works now.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: chanc3r on November 08, 2015, 02:30:51 pm
I am against this. First of all the majority of the users here have no technical knowledge, so how can they be qualified at all to vote? Secondly this will slow down the development.

I like how it works now an enlightened elite(platos philosopher kings) choosing the path forward for nxt, democracy is overrated.

Voting for WHAT should be added and HOW it should behave is useful and lots of product development uses this...

What you don't get to vote for is HOW it is implemented...

Implementation does need to be guided by consultation within a technical community and its a process of dialog, debate and sometimes compromise between the product team and the users of the product... This is what I believe TNSSE is looking to implement.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: saladin89 on November 08, 2015, 02:40:56 pm
I am against this. First of all the majority of the users here have no technical knowledge, so how can they be qualified at all to vote? Secondly this will slow down the development.

I like how it works now an enlightened elite(platos philosopher kings) choosing the path forward for nxt, democracy is overrated.

Voting for WHAT should be added and HOW it should behave is useful and lots of product development uses this...

What you don't get to vote for is HOW it is implemented...

Implementation does need to be guided by consultation within a technical community and its a process of dialog, debate and sometimes compromise between the product team and the users of the product... This is what I believe TNSSE is looking to implement.

Ok, I am wary of the wisdom of the masses. Cryptos are a very complicated thing and depending on the features nxt implement means that nxt can go many different places. It might be ok to have it just to check the pulse of the community, but to let the devs have the ultimate say.

If voting had to be implemented I like the idea of those who donated a substantial sum to fund the development are the only ones allowed to vote. This will mean that the people who vote probably have a better understanding of the platform plus there is more money for development.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: pianist on November 08, 2015, 02:42:28 pm
The assets is managed by tennesse for example

WHY TENNESSE?

At the moment tennesse looks to be engaged with NRS devs. Tennesse does not look to be independent.

Moreover, they are greedy: first thing after their campaign they did — gave salaries for themselves.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Audo Kryptowitz on November 08, 2015, 02:46:45 pm
Disclaimer: I'm by no means an expert nor a dev. After following the discussion I have learned a thing or two, and through Coinomat's idea got the inspiration to write this post.

As I have understood this issue, there are two general interests that are clashing:

1) The Development side [development is the priority]
"We want to continue to develop this platform further in order to gain competitive adventage. Thus we must be able to push the development forward by breaking the backward compatability from time to time. We are still a small scale project, and we must agressively innovate. Mass adoption will come later once we have a truly superior product."

2) The Business side [adoption is the priority]
"Adoption is key for the success of the platform, thus we need to maintain backward compatability and accept slower development cycle. We already have the most developed platform, it's time to get organic growth from external businesses migrating into NXT. If we don't move now, we might be left to dust by less developed, but more business friendly platform. We need to create a network effect."

At the end of the day, we need adoption. We won't be seen as a leading crypto platform unless there are people using it. There has to be a plan about how we transfrom from early stage experimental technology into a stable business platform.

(https://i.imgur.com/hxfiinW.jpg)

We all want NXT to become a stable and established platform. We want NXT to be seen as the leading 2.0 crypto. At this point we need both, 1) to continue NXT core development, 2) to maintain a stable business adaptation.

For businesses to come and stay in NXT, they need a stable environment and clear expectations. In order to provide that we need to estamblish written guidelines and protocols. We must communicate to the businesses, that this platform is still being developed, and there will be possibler API changes. However, the NXT development team also aknowledges that we are moving towards more stable development phase, and the business interest need to be taken into account. We need to reach a consensus how those major updates are published.

The more time passes, the slower the development will get. The more carefull the NXT core develoment must be. Making assumptions is seen as unprofessinal.
  - BTS assumed that exchanges were aware about the 2.0 transofrmation – UNPROFESSIONAL
  - NXT assumed that businesses knew that API might break in new version and that they will carefully go through change logs – UNPROFESSIONAL

For NXT to be seen as professional, we must aknowledge some things.

We are going through a crisis and this crisis is an opportunity for NXT to be seen as a professional platform. There will always be crisis, the question is, can we solve them? If we cannot solve this problem, then how could we solve any future problems? If we fail now, the conclusion will be that NXT is unable to survive any future crisis either. We would be seen as a immature amateurs. However, if we go through this, aknowledge the problems, and fix them, we will be born again from the ashes like the Fenix bird!

We need a long term roadmap to become a estamblished and stable financial platform. In that roadmap, the NXT core devs need to aknowledge, that the development is going to slow down in the coming years. The old days of rapid development are over, and we are moving forwards. It doesn't mean that there will be no development, but rather that it will be bound by new guidelines and protocols.

We must take adoption as our number one goal. Adoption has always been the end goal, but today we must aknowledge that it has become our primary goal. That goal goes hand in hand with the Tennessee project as well. NXT devs have to include major businesses to the decision making.

We must rethink how the devs get paid. We are a decentralized platform, but our developers get paid from one source. The money streams must be decentralized! Thus we should set up a Business Fund Committee (BFC) like Coinomat has proposed.

(https://i.imgur.com/fwtHywb.jpg)

CFC – Protects the interests of community
BFC – Protects the interests of businesses

DEV Fund should have
 - Open communication channel to businesses (CFC)
 - Open communication channel to community (BFC)
 - Email list for updates
 - Detailed API documentation, etc.
 - Written guildelines / protocol for development, that is accepted by both CFC and BFC.

The NXT developers are building a product, the NXT platform… Businesses are the clients who are using that product. It's natural that the money flows from clients to the business development, in this case from BFC to DEV Fund. The money stream is a feedback mechanism itself. If a business is unhappy that their needs are not being met they can make a cut to the donations.

CFC looks to the interest of ordinary individuals, who are using the platform. As as end user, they don't want businesses to be able to dictate what is being developed. Privacy and security  is the primary concern for them. Community has the option to use voting in order to come to consensus.

As we are a decentralized platform, the funding should be more decentralized as well. There should be absolute transparancy in funding, development roadmap, and development guidelines.

I think no party should be able to dictate another. Perhaps its the best to keep the development independend. CFC, BFC and DEV Fund would have equal say, consensus is archieved through discussion among the parties. Discussions and resolutions should be always documented. However, the NXT devs can never go against something that has already been agreed on! If there is a written contract, that no new API for 6 months, then they cannot do it. By not breaking their own rules, they will generate trust.

I'm sure this thing can be developed further. Hopefully this long essay gives some inspiration to find a solution. I ask everyone to really take a step back and think about the long term plan.

This crisis is an opportunity and maybe the best thing that has happened. In the future this could be seen as a major break through and a turning point.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Seccour on November 08, 2015, 02:49:48 pm
The assets is managed by tennesse for example

WHY TENNESSE?

At the moment tennesse looks to be engaged with NRS devs. Tennesse does not look to be independent.

Moreover, they are greedy: first thing after their campaign they did — gave salaries for themselves.

It was planned that they have a salary so they can provide a professional work quality ! And professionals should be pay.

They are not greedy so stop saying bullshit.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: yassin54 on November 08, 2015, 02:55:05 pm
@Audo
I love your sérénity and vision you have  :-*
Thanks for yur Post!  :)
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: abctc on November 08, 2015, 02:55:23 pm
They are not greedy so stop saying bullshit.
+ 1440 !
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Brangdon on November 08, 2015, 03:01:25 pm
I'm not sure this would be practical. Partly because the devs are the ones who know what Nxt needs and in what order it needs to be done. Partly because the devs aren't paid enough (in some cases, not anything) to be treated as lackeys. There are occasions where voting could be useful, but not for every feature. There are other ways that communication could be improved.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 08, 2015, 03:04:02 pm
I'm not sure this would be practical. Partly because the devs are the ones who know what Nxt needs and in what order it needs to be done. Partly because the devs aren't paid enough (in some cases, not anything) to be treated as lackeys. There are occasions where voting could be useful, but not for every feature. There are other ways that communication could be improved.
Please read my proposal carefully
especially regarding payments
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: _mr_e on November 08, 2015, 03:40:53 pm
Also I believe has 10% of supernet funds set aside for Nxt developers so this would be a great first example of some decentralized funding and a reason why developers should care very much about supernets success.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 08, 2015, 03:48:08 pm
Once again,
I propose very basic things:
1. Developers say what they're doing before they have it done
2. They get paid for what they're doing

Am I asking too much?

If devs don't agree to this - well, they have their own agenda which does not correlate with the community needs.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Sebastien256 on November 08, 2015, 04:05:13 pm
1. Developers say what they're doing before they have it done

I think this is what gonna happen in the future, they learn from their present mistake (being clear in advance on what gonna happen, it is riker that will manage this i think from now on).
I agree that voting might not be the way to go tho, from reading others opinions here.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 08, 2015, 04:09:05 pm
1. Developers say what they're doing before they have it done

I think this is what gonna happen in the future, they learn from their present mistake (being clear in advance on what gonna happen, it is riker that will manage this i think from now on).
I agree that voting might not be the way to go tho, from reading others opinions here.
- They say: in 1.7.xx release we plan so-and-so
- there are objections
- a poll is set up
- people vote

what could be wrong about that?
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Sebastien256 on November 08, 2015, 04:11:00 pm
1. Developers say what they're doing before they have it done

I think this is what gonna happen in the future, they learn from their present mistake (being clear in advance on what gonna happen, it is riker that will manage this i think from now on).
I agree that voting might not be the way to go tho, from reading others opinions here.
- They say: in 1.7.xx release we plan so-and-so
- there are objections
- a poll is set up
- people vote

what could be wrong about that?

Imo, vote would be good to get community feeling, but no way that the voting result should be enforce because voteers might not undeerstand what it is really about.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 08, 2015, 04:21:06 pm
1. Developers say what they're doing before they have it done

I think this is what gonna happen in the future, they learn from their present mistake (being clear in advance on what gonna happen, it is riker that will manage this i think from now on).
I agree that voting might not be the way to go tho, from reading others opinions here.
- They say: in 1.7.xx release we plan so-and-so
- there are objections
- a poll is set up
- people vote

what could be wrong about that?

Imo, vote would be good to get community feeling, but no way that the voting result should be enforce because voteers might not undeerstand what it is really about.
That's why I propose voting weighted by balance
whales do know what it's about.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Sebastien256 on November 08, 2015, 04:28:52 pm
1. Developers say what they're doing before they have it done

I think this is what gonna happen in the future, they learn from their present mistake (being clear in advance on what gonna happen, it is riker that will manage this i think from now on).
I agree that voting might not be the way to go tho, from reading others opinions here.
- They say: in 1.7.xx release we plan so-and-so
- there are objections
- a poll is set up
- people vote

what could be wrong about that?

Imo, vote would be good to get community feeling, but no way that the voting result should be enforce because voteers might not undeerstand what it is really about.
That's why I propose voting weighted by balance
whales do know what it's about.

In that case it only shift the power to few of them, roles are inverse, somehow. I do not like that.

I think the best way to do is to find a released procedure that suited the community.

All in all Riker new role will open discussion on this kind of matter well in advance of a release afaik, it is up to the business involve with nxt to participate in the process.
Riker will post well in advance what is planned and if there are objections, that will be the time to resolve things imo.

That is what I understood.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Seccour on November 08, 2015, 04:37:01 pm
1. Developers say what they're doing before they have it done

I think this is what gonna happen in the future, they learn from their present mistake (being clear in advance on what gonna happen, it is riker that will manage this i think from now on).
I agree that voting might not be the way to go tho, from reading others opinions here.
- They say: in 1.7.xx release we plan so-and-so
- there are objections
- a poll is set up
- people vote

what could be wrong about that?

Imo, vote would be good to get community feeling, but no way that the voting result should be enforce because voteers might not undeerstand what it is really about.
That's why I propose voting weighted by balance
whales do know what it's about.

In that case it only shift the power to few of them, roles are inverse, somehow. I do not like that.

I think the best way to do is to find a released procedure that suited the community.

All in all Riker new role will open discussion on this kind of matter well in advance of a release afaik, it is up to the business involve with nxt to participate in the process.
Riker will post well in advance what is planned and if there are objections, that will be the time to resolve things imo.

That is what I understood.

I don't like the fact that whales get a lot of power but... Every features added or removed from NXT touched more people with a lot of NXT than the others... So vote by balance might be the best vote option.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 08, 2015, 04:38:37 pm
1. Developers say what they're doing before they have it done

I think this is what gonna happen in the future, they learn from their present mistake (being clear in advance on what gonna happen, it is riker that will manage this i think from now on).
I agree that voting might not be the way to go tho, from reading others opinions here.
- They say: in 1.7.xx release we plan so-and-so
- there are objections
- a poll is set up
- people vote

what could be wrong about that?

Imo, vote would be good to get community feeling, but no way that the voting result should be enforce because voteers might not undeerstand what it is really about.
That's why I propose voting weighted by balance
whales do know what it's about.

In that case it only shift the power to few of them, roles are inverse, somehow. I do not like that.

I think the best way to do is to find a released procedure that suited the community.

All in all Riker new role will open discussion on this kind of matter well in advance of a release afaik, it is up to the business involve with nxt to participate in the process.
Riker will post well in advance what is planned and if there are objections, that will be the time to resolve things imo.

That is what I understood.
They don't seem to listen to objections, this is the problem
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Sebastien256 on November 08, 2015, 04:41:31 pm
@coinomat,
Do you see another manner to resolve possible conflict except by enforce voting result onto the roadmap?

Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Sebastien256 on November 08, 2015, 04:43:19 pm
They don't seem to listen to objections, this is the problem

Maybe they should appoint someone to listen to objection. Someone designate to manage objections.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Brangdon on November 08, 2015, 04:57:33 pm
Please read my proposal carefully
especially regarding payments
You think the devs should be paid, but you aren't going to provide all the cash needed yourself. Did you not see how hard it was for the Tennessee project to raise some funds? And at least 30% of what they did raise came from the devs themselves. They obviously love Nxt. Replacing that love with money won't work. More money would be good, of course, but you need to be careful how you adjust the internal and external motivations.

- They say: in 1.7.xx release we plan so-and-so
- there are objections
- a poll is set up
- people vote

what could be wrong about that?
The features are going to be a combination of (a) technical needs; and (b) what they feel like working on next. Neither is subject to a popular vote. Voting should be a last resort, for when even after extensive discussion there is no technical consensus. If you've been reading the threads, you'll appreciate how resistant the devs are to voting on the current issue. Jean-Luc clearly feels that the 1.6 changes were the right changes to make, even taking backwards compatibility needs into account. The mistakes were in how those changes were communicated. I'm pretty sure that by "communication" he means from the devs to us, not us telling him what changes we want.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 08, 2015, 05:08:30 pm
Please read my proposal carefully
especially regarding payments
You think the devs should be paid, but you aren't going to provide all the cash needed yourself. Did you not see how hard it was for the Tennessee project to raise some funds? And at least 30% of what they did raise came from the devs themselves. They obviously love Nxt. Replacing that love with money won't work. More money would be good, of course, but you need to be careful how you adjust the internal and external motivations.

- They say: in 1.7.xx release we plan so-and-so
- there are objections
- a poll is set up
- people vote

what could be wrong about that?
The features are going to be a combination of (a) technical needs; and (b) what they feel like working on next. Neither is subject to a popular vote. Voting should be a last resort, for when even after extensive discussion there is no technical consensus. If you've been reading the threads, you'll appreciate how resistant the devs are to voting on the current issue. Jean-Luc clearly feels that the 1.6 changes were the right changes to make, even taking backwards compatibility needs into account. The mistakes were in how those changes were communicated. I'm pretty sure that by "communication" he means from the devs to us, not us telling him what changes we want.
I will pledge a significant amount.
do you think there won't be any other businesses to help out?
Current changes in 1.6 would obviously break Supernet.
Is it really needed? are you sure ? :)
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Seccour on November 08, 2015, 05:23:14 pm
Please read my proposal carefully
especially regarding payments
You think the devs should be paid, but you aren't going to provide all the cash needed yourself. Did you not see how hard it was for the Tennessee project to raise some funds? And at least 30% of what they did raise came from the devs themselves. They obviously love Nxt. Replacing that love with money won't work. More money would be good, of course, but you need to be careful how you adjust the internal and external motivations.

- They say: in 1.7.xx release we plan so-and-so
- there are objections
- a poll is set up
- people vote

what could be wrong about that?
The features are going to be a combination of (a) technical needs; and (b) what they feel like working on next. Neither is subject to a popular vote. Voting should be a last resort, for when even after extensive discussion there is no technical consensus. If you've been reading the threads, you'll appreciate how resistant the devs are to voting on the current issue. Jean-Luc clearly feels that the 1.6 changes were the right changes to make, even taking backwards compatibility needs into account. The mistakes were in how those changes were communicated. I'm pretty sure that by "communication" he means from the devs to us, not us telling him what changes we want.
I will pledge a significant amount.
do you think there won't be any other businesses to help out?
Current changes in 1.6 would obviously break Supernet.
Is it really needed? are you sure ? :)

Supernet can ignore 1.6.2 nodes. And they have time to deal with the changes until the 1.7 hard fork
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Damelon on November 08, 2015, 05:27:57 pm
Guys, can you try to subscribe here: http://nxt.org/cgi-bin/mailman/listinfo/nrs-development

We think an oldskool mailing list might work, because it allows people not just from the forums, but also other places to have a look and connect, like exchanges etc.

The software is rather ugly, but a mailing list is mainly for the content, so we think it might be a good idea.

If there are better ideas on how to implement such, please let us know. The forums are not totally perfect for this, so we are looking for a solution that will enable us to have as broad a palette of stakeholders involved in the dev process. :)
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: wesley on November 08, 2015, 06:11:36 pm
I'd like to know how supernet can ignore fake data fed by fake nodes? How is data verified/trusted?
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: saladin89 on November 08, 2015, 06:16:03 pm
It seems like the major issue here is changes to the core that effect businesses here: https://nxtforum.org/nrs-releases/nrs-v1-6-2/msg199227/#msg199227

I can now really understand why the business side of nxt wants more say in the process. the coredevs have to respect the userspace.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Riker on November 08, 2015, 08:35:56 pm
I'd like to know how supernet can ignore fake data fed by fake nodes? How is data verified/trusted?

Wesley ? I thought I've seen a ghost ...
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Brangdon on November 08, 2015, 08:36:59 pm
I will pledge a significant amount.
do you think there won't be any other businesses to help out?
I think raising money is hard.

Quote
Current changes in 1.6 would obviously break Supernet.
Is it really needed? are you sure ? :)
It's not what I would have done, but I have read what Jean-Luc has written on the matter and his views seem pretty clear.

What's not clear at the moment is what jl777 now thinks, because I've not seen anything from him for a while.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Riker on November 08, 2015, 08:39:12 pm
Folks, if you like to ask me something I'm here for the next 90 minutes. Must admit I haven't read all this yet, from briefly looking at the messages, there are some interesting ideas.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Arkh on November 08, 2015, 08:56:20 pm
Folks, if you like to ask me something I'm here for the next 90 minutes. Must admit I haven't read all this yet, from briefly looking at the messages, there are some interesting ideas.

Hi,

I posted my opinion on the 1st page of this thread,

what do you think about it ?

Any chances you can convince the core dev team to allow the old calls to coexist with the new ones until 1.7 ?

Regards,

Arkh
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: farl4bit on November 08, 2015, 09:07:27 pm
Guys, can you try to subscribe here: http://nxt.org/cgi-bin/mailman/listinfo/nrs-development

We think an oldskool mailing list might work, because it allows people not just from the forums, but also other places to have a look and connect, like exchanges etc.

The software is rather ugly, but a mailing list is mainly for the content, so we think it might be a good idea.

That software is so ugly, that it is cool again.  :o
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Riker on November 08, 2015, 09:10:55 pm
This crisis is an opportunity and maybe the best thing that has happened. In the future this could be seen as a major break through and a turning point.

@Audo - very nice post.
@coinomat - thanks for kicking off this discussion

Set aside recent events (please don't get back to the 1.6.3 issue please ...)

We are indeed in the process of moving towards a more business friendly platform. We had a lot of discussions about it, out of these discussions came the Tennessee project and following the success of the fund raising, I accepted the role of a project manager.
In my view, we have now a strong dev team (jean-luc, myself and others) and an excellent business team (Damelon, EvilDave and many others) working closely together and consulting frequently.
In a couple of month, touch wood, we will release version 1.7 which would address some of the fundamental problems of the existing platform (block time stability, forgers bias) and will introduce innovative features, which are light years ahead of any other protocol, like coin shuffling which is an extremely important building block for any crypto protocol, account control and properties (see roadmap).
In addition we are constantly working based on your feedback, see: https://nxtforum.org/general/list-of-feature-request-for-nrs/ and we will continue to do so.
Can we do better ? Sure
Are we willing to learn ? Of course
Should we all work together ? Absolutely
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Riker on November 08, 2015, 09:25:05 pm
About API changes :

Here is how it SHOULD work (that's almost a convention between devs... )

If it is needed to change an API call ( except for a security breach ) you DEPRECATE the old call, which means that it can still be used but will display a warning that it is gonna be deleted soon. Then you ADD the new call so both can co-exist for a while.

The purpose of that is to satisfy everybody : 1. the API devs can go forward and improve the API as they will 2. The API won't break for 3rd party devs and will provide them with warnings on soon to be deleted calls.

For the timeframe of that proposition, I would propose that for example for an API call change, introduced in 1.6.X the call will be deprecated until 1.7 hard fork then it will be deleted.  Letting 3rd party enough time to adapt.

In general the process you describe is the appropriate process for API changes and we will do our best to follow it in the future.
However there is no way to turn the wheel now, and these API changes that triggered all the mayhem are minimal.
See posts from jean-luc which explains the issue in the 1.6.2 thread and judge for yourself.
In retrospect, when faced with the same problem of adapting the NXT wallet to these API changes the work took a short time and no regression problems were observed.

Quote
I am also volunteer to help fixing this operational issue.

Great PM me and let's see how we can put your skills to work

Quote
I also kinda agree with coinomat's idea about voting on the features before they are realized but I am worried about that it will slow down the dev processes and that a very few people have a sufficient technical knowledge to be able to vote.

Regards,

Arkh

Going forward we intend to open important design decisions for community feedback, when it makes sense and after we workout an appropriate procedure for this.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Hachoir on November 08, 2015, 09:36:31 pm
Folks, if you like to ask me something I'm here for the next 90 minutes. Must admit I haven't read all this yet, from briefly looking at the messages, there are some interesting ideas.

Hi,

I posted my opinion on the 1st page of this thread,

what do you think about it ?

Any chances you can convince the core dev team to allow the old calls to coexist with the new ones until 1.7 ?

Regards,

Arkh

No, this was answered already. Jean-Luc made a mistake by not making clear enough what would be the consequences of the changes in the latest version, measures have been taken so that it won't happen again. Now why would projects not update ? What do developers do when a major android version is released, don't they update their app to make it compatible ? Too many fuss has been made about it, mainly caused by jl777 whining. Update and move on. That case is closed.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 08, 2015, 10:30:08 pm
oh my god, coin shuffling... are you guys serious?
damn. the situation looks very sad to me at the moment.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Sebastien256 on November 08, 2015, 10:32:40 pm
oh my god, coin shuffling... are you guys serious?
damn. the situation looks very sad to me at the moment.

coinsuffling is optional.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 08, 2015, 10:33:40 pm
TWO QUESTIONS to the devs once again:
1. Would you agree to announce features before the release? Would you let people vote on them and accept the voting result?
2. Do you want a community fund to pay you salaries?

two extremely simple questions. Please reply.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Riker on November 09, 2015, 06:13:46 am
TWO QUESTIONS to the devs once again:
1. Would you agree to announce features before the release? Would you let people vote on them and accept the voting result?
2. Do you want a community fund to pay you salaries?

two extremely simple questions. Please reply.

1. As far as I recall features are already announced well in advance. Are you are suggesting to bring each and every minor feature in the product roadmap for community vote ? can't promise that. We can certainly bring up certain decisions for community voting.
2. A community fund already pays devs salaries. I think this is not the place to discuss devs salaries. Let's take this offline. We can talk on skype or discuss by email. PM me.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Riker on November 09, 2015, 06:20:03 am
oh my god, coin shuffling... are you guys serious?
damn. the situation looks very sad to me at the moment.

Coin Shuffling has been partially implemented on November last year, since we did not consider it critical at this time, it waited almost a year to get into an official release.
Do not underestimate the importance of this feature. 10 years from now, when businesses pay employees and suppliers in Crypto this would be a mandatory tool, working silently under the hoods to annonymize payments. In the short term it can attract security driven users. Being the first to implement this feature on a decentralized network is a huge technical achievement and a proof of the superiority of the NXT technology.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Brangdon on November 09, 2015, 09:05:03 am
oh my god, coin shuffling... are you guys serious?
damn. the situation looks very sad to me at the moment.
Are you against coin shuffling? It's kinda ironic that that is the only feature that did get voted in for NXT.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 09, 2015, 09:58:29 am
If the current API changes would have been announced in advance we wouldn't have Supernet leaving NXT.
Protocol would be:
- changes are announced
- if there are objections - there's voting, no objections - no voting. All interested parties have time to state their position.

I don't know why salaries is such a sensitive topic. TNNSSE has no issues discussing their salaries.
You're working for the community (at least I hope you perceive it this way) and the community has to give back to you.

TWO QUESTIONS to the devs once again:
1. Would you agree to announce features before the release? Would you let people vote on them and accept the voting result?
2. Do you want a community fund to pay you salaries?

two extremely simple questions. Please reply.

1. As far as I recall features are already announced well in advance. Are you are suggesting to bring each and every minor feature in the product roadmap for community vote ? can't promise that. We can certainly bring up certain decisions for community voting.
2. A community fund already pays devs salaries. I think this is not the place to discuss devs salaries. Let's take this offline. We can talk on skype or discuss by email. PM me.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Riker on November 09, 2015, 10:44:44 am
If the current API changes would have been announced in advance we wouldn't have Supernet leaving NXT.

Not sure but we can't do much about it now anyway.

Quote
Protocol would be:
- changes are announced
- if there are objections - there's voting, no objections - no voting. All interested parties have time to state their position.

Sounds good, we can practice this for the 1.8.x release since 1.7.x is now pretty much feature complete.

Quote
I don't know why salaries is such a sensitive topic. TNNSSE has no issues discussing their salaries.
You're working for the community (at least I hope you perceive it this way) and the community has to give back to you.

Compensation is always a sensitive issue. I don't think this is the place to discuss it.
If you like to discuss salaries PM me, damelon or evildave.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Arkh on November 09, 2015, 10:56:10 am
@Riker

( you posted an apology while I was typing this but I'll still post it for clarity )

Any chances that you guys publish an announcement in the name of the core team regarding this situation. With apologies to 3rd party devs to the already acknoledged issues, and an acknowledgement that you're commited to follow new guidelines as stated in this thread.

I know this has been done already with evildave's post but I think it is important that such things comes straight from the dev team and that it's made clear to public. I am sure that you'll do a great job as a project manager for the core dev team and you're not responsible for those issues. But I think such an announcement will be a good start to show to the community that you're driving the core dev team to the right direction and that you will be able to make them follow the new guidelines in the future using your management skills.

Regards,

Arkh
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Damelon on November 09, 2015, 12:10:24 pm
Glad this is moving :)

In times like these it's enormously tempting to want to have solutions NOW.
I am glad we are building towards one.

Let's keep at it and figure out a way out of this mess. :)

If TNSSE can help, let us know.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Cassius on November 09, 2015, 12:46:52 pm
Good to see there is somewhere that constructive discussion is happening! Thanks coinomat for kicking it off. Riker, good to see you here too.

In passing - I think coinshuffling will be important in the future. Imagine if you could trace every payment between a competitor and their customers, clients, suppliers, consultants, employees... Hello Industrial Espionage. Equally, though, transparent payments where appropriate are also hugely important. So I very much like optional coinshuffling.

I don't know where the SuperNET / Nxt relationship will end up as a result of all this, and that is very sad, but I sincerely hope that the situation that blew up in the past few days can be avoided again.

And seriously, are the TNSSE guys supposed to work for nothing? Money was raised for their salaries, amongst other things. It didn't come as a surprise to anyone who read OP that they were going to 'pay themselves'.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 09, 2015, 01:01:14 pm
If the current API changes would have been announced in advance we wouldn't have Supernet leaving NXT.

Not sure but we can't do much about it now anyway.

Quote
Protocol would be:
- changes are announced
- if there are objections - there's voting, no objections - no voting. All interested parties have time to state their position.

Sounds good, we can practice this for the 1.8.x release since 1.7.x is now pretty much feature complete.

Quote
I don't know why salaries is such a sensitive topic. TNNSSE has no issues discussing their salaries.
You're working for the community (at least I hope you perceive it this way) and the community has to give back to you.

Compensation is always a sensitive issue. I don't think this is the place to discuss it.
If you like to discuss salaries PM me, damelon or evildave.
You know the salaries question and question about new releases are somehow connected. But of course let's discuss this privately. Somehow it will have to be made public though, at least the general outline.

If you could solve the current issue with James  it would show your good will and that you care about NXT ecosystem.
The timing of this FUD is very unfortunate.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Damelon on November 09, 2015, 01:02:08 pm
By the way, my thoughts regarding coinshuffling and any features that were decided in the past:

Let's make this about any future decisions.

If we start making this about feature decisions that are already made and have been worked on hard for months now, we are opening a can of worms we don't want to.

Then we get a seperate debate about every feature that is being worked on for 1.7 and we can probably forget about it happening in the first place.

The logical thing to do when making a new procedure is to let the procedure be contingent on things in the future.

Just putting this in because the discussion is forking right now into these seperate issues.  :)
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 09, 2015, 01:39:51 pm
By the way, my thoughts regarding coinshuffling and any features that were decided in the past:

Let's make this about any future decisions.

If we start making this about feature decisions that are already made and have been worked on hard for months now, we are opening a can of worms we don't want to.

Then we get a seperate debate about every feature that is being worked on for 1.7 and we can probably forget about it happening in the first place.

The logical thing to do when making a new procedure is to let the procedure be contingent on things in the future.

Just putting this in because the discussion is forking right now into these seperate issues.  :)
I think coinshuffling will damage NXT a great deal
But let's discuss it in another thread.
let's focus on current developments, shuffling is a matter of a rather distant future.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Jean-Luc on November 09, 2015, 05:25:45 pm
I think coinshuffling will damage NXT a great deal
But let's discuss it in another thread.
let's focus on current developments, shuffling is a matter of a rather distant future.
Coin shuffling is not distant future, it is in 1.7. And it is not even current development, for me it is already past development, I have no work to do on it anymore - the server side implementation of it is fully done, tested, and reviewed. We are only waiting for the UI to be completed.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: yassin54 on November 09, 2015, 05:32:16 pm
Thanks @Jean-Luc take the time to respond to our questions (Community)  ;)
I hope to see you more active  :D
despite your enormous work  ;)
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 09, 2015, 06:49:14 pm
I think coinshuffling will damage NXT a great deal
But let's discuss it in another thread.
let's focus on current developments, shuffling is a matter of a rather distant future.
Coin shuffling is not distant future, it is in 1.7. And it is not even current development, for me it is already past development, I have no work to do on it anymore - the server side implementation of it is fully done, tested, and reviewed. We are only waiting for the UI to be completed.

The sky is falling.
Thank you for this, indeed
current situation is an eye-opener for me.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: wesley on November 09, 2015, 06:51:10 pm
btw, I do believe coin shuffling has been voted on before. Correct me if I'm wrong. So the sky is not falling. It's what the people want.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Sebastien256 on November 09, 2015, 06:55:15 pm
btw, I do believe coin shuffling has been voted on before. Correct me if I'm wrong. So the sky is not falling. It's what the people want.
It has been vote:
https://nxtportal.org/polls/2751730409036026521

@coinomat
Why you say the sky is falling?
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 09, 2015, 07:47:53 pm
btw, I do believe coin shuffling has been voted on before. Correct me if I'm wrong. So the sky is not falling. It's what the people want.
It has been vote:
https://nxtportal.org/polls/2751730409036026521

@coinomat
Why you say the sky is falling?
Coin shuffling will be the end of NXT as a legitimate (at least potentially) financial platform
have fun with Silkroads guys. If it's what you want.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: dude on November 09, 2015, 08:05:47 pm
Coin shuffling will be the end of NXT as a legitimate (at least potentially) financial platform
have fun with Silkroads guys. If it's what you want.

Care to explain what do you mean by this?

Lack of fungibility is one of the problems Bitcoin has and Nxt is trying to solve it with coin shuffling. Fungibility is also one of the main properties of a proper currency.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Sebastien256 on November 09, 2015, 08:08:30 pm
Coin shuffling will be the end of NXT as a legitimate (at least potentially) financial platform
have fun with Silkroads guys. If it's what you want.

Care to explain what do you mean by this?

Lack of fungibility is one of the problems Bitcoin has and Nxt is trying to solve it with coin shuffling. Fungibility is also one of the main properties of a proper currency.

What fungibility has to do with coinsuffling? I don't understand.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 10, 2015, 08:38:03 am
Coin shuffling will be the end of NXT as a legitimate (at least potentially) financial platform
have fun with Silkroads guys. If it's what you want.

Care to explain what do you mean by this?

Lack of fungibility is one of the problems Bitcoin has and Nxt is trying to solve it with coin shuffling. Fungibility is also one of the main properties of a proper currency.

NXT is a smart property platform in the first place
smart property + coin shuffling = money laundering :)

People try to force all possible features onto NXT, instead of focusing on killer features (AE)

I can start another thread about this, let's discuss the NXT development process here
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: lurker10 on November 10, 2015, 09:21:04 am
smart property + coin shuffling = financial privacy.

there, fixed it for ya.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: MrCluster87 on November 10, 2015, 10:19:34 am
Hi Audo,

I like your proposal. Can we use your post to write an article to be published on Nxter.org focused to developers (current or new) which are going to use Nxt as a platform? In order to explain the current issue.

Thanks

Disclaimer: I'm by no means an expert nor a dev. After following the discussion I have learned a thing or two, and through Coinomat's idea got the inspiration to write this post.

As I have understood this issue, there are two general interests that are clashing:

1) The Development side [development is the priority]
"We want to continue to develop this platform further in order to gain competitive adventage. Thus we must be able to push the development forward by breaking the backward compatability from time to time. We are still a small scale project, and we must agressively innovate. Mass adoption will come later once we have a truly superior product."

2) The Business side [adoption is the priority]
"Adoption is key for the success of the platform, thus we need to maintain backward compatability and accept slower development cycle. We already have the most developed platform, it's time to get organic growth from external businesses migrating into NXT. If we don't move now, we might be left to dust by less developed, but more business friendly platform. We need to create a network effect."

At the end of the day, we need adoption. We won't be seen as a leading crypto platform unless there are people using it. There has to be a plan about how we transfrom from early stage experimental technology into a stable business platform.

(https://i.imgur.com/hxfiinW.jpg)

We all want NXT to become a stable and established platform. We want NXT to be seen as the leading 2.0 crypto. At this point we need both, 1) to continue NXT core development, 2) to maintain a stable business adaptation.

For businesses to come and stay in NXT, they need a stable environment and clear expectations. In order to provide that we need to estamblish written guidelines and protocols. We must communicate to the businesses, that this platform is still being developed, and there will be possibler API changes. However, the NXT development team also aknowledges that we are moving towards more stable development phase, and the business interest need to be taken into account. We need to reach a consensus how those major updates are published.

The more time passes, the slower the development will get. The more carefull the NXT core develoment must be. Making assumptions is seen as unprofessinal.
  - BTS assumed that exchanges were aware about the 2.0 transofrmation – UNPROFESSIONAL
  - NXT assumed that businesses knew that API might break in new version and that they will carefully go through change logs – UNPROFESSIONAL

For NXT to be seen as professional, we must aknowledge some things.

We are going through a crisis and this crisis is an opportunity for NXT to be seen as a professional platform. There will always be crisis, the question is, can we solve them? If we cannot solve this problem, then how could we solve any future problems? If we fail now, the conclusion will be that NXT is unable to survive any future crisis either. We would be seen as a immature amateurs. However, if we go through this, aknowledge the problems, and fix them, we will be born again from the ashes like the Fenix bird!

We need a long term roadmap to become a estamblished and stable financial platform. In that roadmap, the NXT core devs need to aknowledge, that the development is going to slow down in the coming years. The old days of rapid development are over, and we are moving forwards. It doesn't mean that there will be no development, but rather that it will be bound by new guidelines and protocols.

We must take adoption as our number one goal. Adoption has always been the end goal, but today we must aknowledge that it has become our primary goal. That goal goes hand in hand with the Tennessee project as well. NXT devs have to include major businesses to the decision making.

We must rethink how the devs get paid. We are a decentralized platform, but our developers get paid from one source. The money streams must be decentralized! Thus we should set up a Business Fund Committee (BFC) like Coinomat has proposed.

(https://i.imgur.com/fwtHywb.jpg)

CFC – Protects the interests of community
BFC – Protects the interests of businesses

DEV Fund should have
 - Open communication channel to businesses (CFC)
 - Open communication channel to community (BFC)
 - Email list for updates
 - Detailed API documentation, etc.
 - Written guildelines / protocol for development, that is accepted by both CFC and BFC.

The NXT developers are building a product, the NXT platform… Businesses are the clients who are using that product. It's natural that the money flows from clients to the business development, in this case from BFC to DEV Fund. The money stream is a feedback mechanism itself. If a business is unhappy that their needs are not being met they can make a cut to the donations.

CFC looks to the interest of ordinary individuals, who are using the platform. As as end user, they don't want businesses to be able to dictate what is being developed. Privacy and security  is the primary concern for them. Community has the option to use voting in order to come to consensus.

As we are a decentralized platform, the funding should be more decentralized as well. There should be absolute transparancy in funding, development roadmap, and development guidelines.

I think no party should be able to dictate another. Perhaps its the best to keep the development independend. CFC, BFC and DEV Fund would have equal say, consensus is archieved through discussion among the parties. Discussions and resolutions should be always documented. However, the NXT devs can never go against something that has already been agreed on! If there is a written contract, that no new API for 6 months, then they cannot do it. By not breaking their own rules, they will generate trust.

I'm sure this thing can be developed further. Hopefully this long essay gives some inspiration to find a solution. I ask everyone to really take a step back and think about the long term plan.

This crisis is an opportunity and maybe the best thing that has happened. In the future this could be seen as a major break through and a turning point.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Audo Kryptowitz on November 10, 2015, 10:48:53 am
Hi Audo,

I like your proposal. Can we use your post to write an article to be published on Nxter.org focused to developers (current or new) which are going to use Nxt as a platform? In order to explain the current issue.

Thanks

Hi MrCluster,

Of course! I'm sure many outside of this community have by now heard that "NXT is in a crisis", so communication to the outside world is very important. A Nxter article will help for sure.

In my opinion, there should also be a brief written and official summary statement from NXT (press release):
 - What caused the crisis
 - How it was solved
 - What will be / has been done to prevent it from happening again, what we learned

Now that the crisis is (almost) over, we should take full advantage of it.

I'm looking forward to your article! :)
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: v39453 on November 10, 2015, 12:48:50 pm
- How it was solved
 - What will be / has been done to prevent it from happening again, what we learned

I see it in terms of risk/reward. Changing the API may cause somebody's software to break. Is the reward (new features) worth it?

Here is an old API issue that has not been fully resolved by all users:

https://nxtforum.org/nxt-helpdesk/how-can-i-remove-the-nxt-change-by-bitcoin-in-bittrex/ (https://nxtforum.org/nxt-helpdesk/how-can-i-remove-the-nxt-change-by-bitcoin-in-bittrex/)

Bittrex makes it difficult to fund accounts for new users, but public key announcement was an important feature at the time.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: abctc on November 10, 2015, 12:59:59 pm
... public key announcement was an important feature at the time.
- sorry, you do not understand what are you talking about. Public key announcement was a crucial mistake of Nxt core devs.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 10, 2015, 07:40:59 pm
smart property + coin shuffling = financial privacy.

there, fixed it for ya.
I disagree completely.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 10, 2015, 07:48:01 pm
Drama has subsided, basically things are sort of back to normal.
Jean-Luc and Riker, could you please confirm that all new features will be pre-announced in future?

Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: chanc3r on November 10, 2015, 08:17:03 pm
... public key announcement was an important feature at the time.
- sorry, you do not understand what are you talking about. Public key announcement was a crucial mistake of Nxt core devs.
- the mandatory bit of it was the mistake... pubkey announce is crucial to protect cold wallets with a 256bit key because NXT addresses are only 64bit or something like that
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Jean-Luc on November 10, 2015, 08:31:56 pm
Drama has subsided, basically things are sort of back to normal.
Jean-Luc and Riker, could you please confirm that all new features will be pre-announced in future?
I reserve the right to implement a feature I find useful or necessary without asking for your permission.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Sebastien256 on November 10, 2015, 08:34:01 pm
Drama has subsided, basically things are sort of back to normal.
Jean-Luc and Riker, could you please confirm that all new features will be pre-announced in future?
I reserve the right to implement a feature I find useful or necessary without asking for your permission.
Ok but for the features you already know before starting a new branch? you will pre-announced them?

@JL you should detailed your response as it could be interpret as a contradiction of what damelon and elvil dave have works to fix the last few days. TY
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Brangdon on November 10, 2015, 08:58:03 pm
I can start another thread about this, let's discuss the NXT development process here
Please do. You can post a link to it here.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 11, 2015, 09:40:16 am
Drama has subsided, basically things are sort of back to normal.
Jean-Luc and Riker, could you please confirm that all new features will be pre-announced in future?
I reserve the right to implement a feature I find useful or necessary without asking for your permission.
For MY permission? Are you serious?
I'm a cog in the NXT machine
what's it got to do with MY permission?

we're talking about the community here, I thought it was obvious
Don't you still get it?
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: bcdev on November 11, 2015, 10:04:39 am
You're the only vocal person I know to object to coin shuffling. It's not a controversial feature, almost everyone is content.
If in the future there will be some controversial feature [ex. black lists], I'm pretty sure that JL will take the will of the users to the heart. And if he doesn't, we'll just fork the NXT or reduce his stake's value by selling.

So far except for the few mishaps, he's done an awesome job as the NXT developer. I'm happy that he reserves the right to implement a feature he finds useful of necessary without asking for anyone's permission, as his track record is very good. :)
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 11, 2015, 10:07:02 am
You're the only vocal person I know to object to coin shuffling. It's not a controversial feature, almost everyone is content.
If in the future there will be some controversial feature [ex. black lists], I'm pretty sure that JL will take will of the users to the heart. And if he doesn't, we'll just fork the NXT or reduce his stake's value by selling.

So far except for the few mishaps, he's done an awesome job as the NXT developer. I'm happy that he reserves the right to implement a feature he finds useful of necessary without asking for anyone's permission, as his track record is very good. :)
Let's forget about coin shuffling.
I won't say a word about it in this thread again.
If people want it I want it too.
This thread about a totally different thing.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: blackyblack1 on November 11, 2015, 10:23:48 am
Drama has subsided, basically things are sort of back to normal.
Jean-Luc and Riker, could you please confirm that all new features will be pre-announced in future?
I reserve the right to implement a feature I find useful or necessary without asking for your permission.
You were asked to pre-announce features. What's the problem with it? If it is necessary or interesting feature you have nothing to worry about. If it is a controversial feature (like paying 1 NXT for each 32 bytes of permanent storage) it should be discussed anyway.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: bcdev on November 11, 2015, 10:26:08 am
You have a point with both pubkey announcement [horrible execution] and 100 api calls limit.
Both were terribly executed and affected almost everyone.

However, I see a slight change in the approach coming from Lyaffe:
For 1.7.0e we are considering to open the source code for review immediately instead of waiting for a stable release.
Would this help ?
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Damelon on November 11, 2015, 11:53:45 am
Drama has subsided, basically things are sort of back to normal.
Jean-Luc and Riker, could you please confirm that all new features will be pre-announced in future?
I reserve the right to implement a feature I find useful or necessary without asking for your permission.

Unprofessional bitchyness  :-\

Doing such discussions in TEXT is always tricky.

I think we all know that problem resolution with just text usually is a very precarious process, because we tend to project the 95% of communication we miss onto it, which usually (humans being what they are) are the worst ones.

Read by itself, this message just says: if I think it's to the benefit of NXT, I will add it. It doesn't say there won't be discussion.
It also is probably irritated, but that's an assumption.

Even IF it is, let's not kindle the flame and light the fire all over again.

I see a lot of positive movements going on and I'd like to see it resolved.
We are all still edgy, and the process is fragile. Let's give it a chance and realise either the core devs or James or any of us can still utter words that are born from that edginess.
I think we are making big steps towards reconciliation and a better process right now and personally would love to see them become a reality.  :)
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: chanc3r on November 11, 2015, 12:11:55 pm
Drama has subsided, basically things are sort of back to normal.
Jean-Luc and Riker, could you please confirm that all new features will be pre-announced in future?

coinomat - these changes were announced in 1.6.1e on October 3rd, the release 1.6.2 was on 31st
The section labelled 'Incompatible Changes' in October 3rd post defines the changes.

Does this not constitute pre-announcement. What more did you have in mind, more time?

https://nxtforum.org/index.php?topic=10064.msg195549#msg195549
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 11, 2015, 01:51:53 pm
Drama has subsided, basically things are sort of back to normal.
Jean-Luc and Riker, could you please confirm that all new features will be pre-announced in future?

coinomat - these changes were announced in 1.6.1e on October 3rd, the release 1.6.2 was on 31st
The section labelled 'Incompatible Changes' in October 3rd post defines the changes.

Does this not constitute pre-announcement. What more did you have in mind, more time?

https://nxtforum.org/index.php?topic=10064.msg195549#msg195549
There were no details in it. The devil is always in the detail. And that API change broke Supernet.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Jose on November 11, 2015, 02:31:04 pm
Drama has subsided, basically things are sort of back to normal.
Jean-Luc and Riker, could you please confirm that all new features will be pre-announced in future?

Do you mean... this?:
https://nxtforum.org/general-discussion/%28marketing-business-and-development%29-the-tennessee-project-fundraiser/msg197291/#msg197291
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: wesley on November 11, 2015, 02:58:45 pm
Drama has subsided, basically things are sort of back to normal.
Jean-Luc and Riker, could you please confirm that all new features will be pre-announced in future?

coinomat - these changes were announced in 1.6.1e on October 3rd, the release 1.6.2 was on 31st
The section labelled 'Incompatible Changes' in October 3rd post defines the changes.

Does this not constitute pre-announcement. What more did you have in mind, more time?

https://nxtforum.org/index.php?topic=10064.msg195549#msg195549
There were no details in it. The devil is always in the detail. And that API change broke Supernet.

No details? Did you not read the incompatible changes section? It's called "incompatible changes" for a reason ;)
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: abctc on November 11, 2015, 03:37:29 pm
Drama has subsided, basically things are sort of back to normal.
Jean-Luc and Riker, could you please confirm that all new features will be pre-announced in future?

coinomat - these changes were announced in 1.6.1e on October 3rd, the release 1.6.2 was on 31st
The section labelled 'Incompatible Changes' in October 3rd post defines the changes.

Does this not constitute pre-announcement. What more did you have in mind, more time?

https://nxtforum.org/index.php?topic=10064.msg195549#msg195549
There were no details in it. The devil is always in the detail.
- I agree with coinomat.
And all incompatible changes MUST exist in the code since 1.6.0e, not since 1.6.2.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: wesley on November 11, 2015, 03:39:33 pm
They did exist since 1.6.0e I believe. Correct me if I'm wrong. It's just that that was an experimental release not many people updated to.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: abctc on November 11, 2015, 03:43:27 pm
They did exist since 1.6.0e I believe. ...
- they did not:
.. this issue has not been raised on 1.6.0e and following experimental releases because the API has not been depricated. It was still functional as before ..
- if this is true then it is VERY strange and unacceptable.
Jean-Luc, is this true?
The APIs in question have never been deprecated. The change is about the default values only. When the include parameters are supplied, both 1.5 and 1.6 behave the same, and a client of the API updated to be compatible with 1.6 continues to be compatible with 1.5.

The work on changing the default values of include parameters, or adding them where missing, was started in 1.6.1e and there was an "incompatible changes" section in the 1.6.1e changelog. My mistake is that when continuing this work in 1.6.2, there was no "incompatible" warning. Also, the APIs affected by the changes were identified as "all APIs that accept optional "include" parameters to retrieve additional data, e.g. includeCounts, includeAssetInfo, includeCurrencyInfo, and so on", instead of listing all of them specifically, which I agree makes the consequences less obvious.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Tosch110 on November 11, 2015, 03:43:56 pm
Drama has subsided, basically things are sort of back to normal.
Jean-Luc and Riker, could you please confirm that all new features will be pre-announced in future?

coinomat - these changes were announced in 1.6.1e on October 3rd, the release 1.6.2 was on 31st
The section labelled 'Incompatible Changes' in October 3rd post defines the changes.

Does this not constitute pre-announcement. What more did you have in mind, more time?

https://nxtforum.org/index.php?topic=10064.msg195549#msg195549
There were no details in it. The devil is always in the detail. And that API change broke Supernet.

No details? Did you not read the incompatible changes section? It's called "incompatible changes" for a reason ;)

Well it is obvious that it has been either over-read or the consequences underestimated. What would have been more appropriate would have been a post like Jean-Luc provided later: https://nxtforum.org/nrs-releases/nrs-v1-6-2/msg199198/#msg199198

30 days seem like a long timespan but just speaking for me, I went with 1.6.0e and never updated to 1.6.1e. I cannot test every patch, sometimes I am missing the one or other patch. Nxt is not the only software I am working with so an announcement of non-backward compatible API changes is important IMO.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: wesley on November 11, 2015, 03:56:29 pm
Yea that's what I meant 1.6.1e sorry.

Anyway it's already been concluded that communication will be improved.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: Jean-Luc on November 11, 2015, 05:30:25 pm
And all incompatible changes MUST exist in the code since 1.6.0e, not since 1.6.2.
It should have been called 1.6.2e, or the incompatible changes should have been in 1.6.1e, but this cat is out of the bag now. For the future, we commit to not making any incompatible changes between the last "e" release and the subsequent stable release. But while still within the "e" series, there may still be a need for further incompatible changes or tweaks of the already introduced ones, this is why those releases are called experimental after all. Trying to freeze all incompatible changes before even the "0e" release could only unnecessarily delay such releases, and we prefer to push them out for users to try as early as possible.

Should also note that we don't have any plans for incompatible API changes in the near future.

The fee and size changes planned between 1.6.2 and 1.7 (for which I started a few separate threads) are NOT API changes.
Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: coinomat on November 11, 2015, 09:40:24 pm
And all incompatible changes MUST exist in the code since 1.6.0e, not since 1.6.2.
It should have been called 1.6.2e, or the incompatible changes should have been in 1.6.1e, but this cat is out of the bag now. For the future, we commit to not making any incompatible changes between the last "e" release and the subsequent stable release. But while still within the "e" series, there may still be a need for further incompatible changes or tweaks of the already introduced ones, this is why those releases are called experimental after all. Trying to freeze all incompatible changes before even the "0e" release could only unnecessarily delay such releases, and we prefer to push them out for users to try as early as possible.

Should also note that we don't have any plans for incompatible API changes in the near future.

The fee and size changes planned between 1.6.2 and 1.7 (for which I started a few separate threads) are NOT API changes.
Glad to hear that, thank you. That's more or less what I wanted to hear.
No one wants to make you do things you don't want to do.  I'd just like to avoid any unnecessary drama in future, it really hurts NXT.

Title: Re: Protocol for new feature implementation and significant changes in NXT core.
Post by: chanc3r on November 11, 2015, 09:51:38 pm

The fee and size changes planned between 1.6.2 and 1.7 (for which I started a few separate threads) are NOT API changes.

For system users of the blockchain especially if you make extensive use of Permanent AM's I strongly encourage you to read the stuff J-L is posting on this - these changes are MORE fundamental to what NXT will let you do than the frankly cosmetic changes to the APIs that caused so much heat and noise around 1.6.2...

The NXT core dev have promised to be better at telliing us what they are doing, we need to be better at understanding the implications of this.
elective-stereophonic
elective-stereophonic
assembly
assembly