Proposed changes, copied from Calibrae Team Project BoardsteemCreated with Sketch.

in #calibrae7 years ago (edited)

In

 

the interests of preventing mission creep, I am making sure that the tasks for the developers is carved in stone before anyone does any significant amount of work that might have to be scrapped and restarted.


So, below is the current state of the plans.

Note that Shimmer is the name of the fork of the Condenser Web Application (steemit.com) - the name refers to how our mascot, Heliodoxa Jacula (green crowned brilliant hummingbird) has irridescent green feathers and like all hummingbirds, can manouver ridiculously fast.
Note that I have not mentioned rebranding, this is implicit, and facile.

Planned Changes


  1. Convert build to static binary and make binary downloadable. Using Appimage, Ubuntu 14.04, and Docker, make runnable on any intel standard 64 bit processor platform.

  2. Remove SBD - this means, from witness plugin, remove market, from rewards calculations, from wallet

  3. Store post data in secondary data store, refer to posts in database by hashes from post store index

  4. Create ledger-only mode that only stores information about received and sent payments for exchange operators

  5. Rewards calculation change - reputation of user score, divided by reputation score of highest user reputation, multiplied by stake and vote percentage to create resultant vote weight. Zero reputation means user can only make one transaction every 24 hours.

  6. Only one witness vote per account

    (The ability to vote multiple witnesses without decaying vote power is in stark contrast to how voting works on the forum, and has been used as a method of blackmail between witnesses)

  7. Direct self voting removed from forum, implied self vote in post itself, curation split to 50/50

  8. Payout only in Stake, Stake draw-down at 1% of remainder per day

  9. Create initial configuration script for calibrd that autofills seed nodes, sets configuration parameters and keys

  10. shimmer: move up/downvote and vote score to left hand side top and bottom like on reddit and stack exchange

  11. Localisation of shimmer:

    english, dutch, german, french, spanish, italian, greek, russian, bulgarian, serbian, chinese, korean and japanese

  12. Create list of users who have declared interest in having accounts copied to new chain. All accounts start with equvalent Steem default stake and reputation.

Sort:  

that's efficient, miles wide in improvements. First of all the space, the chain will be light and easy to update with the hashes and with the scrapping of the SBD, I for one don't quite like it but for efficiency it's maybe 1/5 or 1/3 improvement and simplification.

You are also turning into a wallet, hopefully a lightweight app can be made, one that doesn't have t sync in all the posts and everything, so it would sync for maybe an hour, but you said downloadable image, so you could even torrent it (p2p download)

Number five quickly gets out of my math and logic skills, but seeing reputation have some stronger effect is nice.

Six I also don't get

Seven is logical, an easy way to solve self votes, buuuut I'm not quite sure, sybil attacks are still possible, it would be harder and it sounds like the chain will have stronger "defensive" measures, even if it could be negative, since people can abuse flags to attack accounts. So wars would have a real effect, well a stronger one, than just reputation and lowering of payout, since one transaction per day is well little.

a quick question curation split would mean bigger cuation rewards?

I'm not sure what shimmer refers to, but I think I get the idea, I could help you with the namings I suppose.

And to ask about point 8 could you draw all your stake in 100 days or will it never really be able to draw, meaning if you have 50 you would get .5 per day or just the first one then .495 then ...

Unlike most other blockchains, a steem wallet is always a light wallet, it queries a full node for the current state.

I don't know what can be done to prevent the necessity for RPC nodes to replay, I would think that will take a substantial change, that is, graphene would have to be removed, replaced with a better engine like Dgraph and maybe some kind of large blob specialist data store for the forum, and then, without constant changes in the format of the shared_memory, it could be possible to use a bittorrent protocol to propagate snapshots to quickly sync new nodes.

The reputation calculation will be easy to determine, it just requires tracking the highest reputation score account and then performing a calculation against the account to generate its resultant vote weight.

Number 6 means that when you activate a witness, your normal witness votes are not counted, and instead just a single vote for your own witness replaces it in the calculation. When the witness deactivates, your witness votes are again added to the calculation for the others. Obviously this implies you can't vote on other witnesses when you are running a witness. This is to stop collusion and blackmail between witnesses, when there is witnesses with high reputation and stake. And yes, reputation will also limit the witness vote weight calculation.

Stopping indirect self votes will be possible to do on a community level, where people can investigate links between two suspected sybils, and when these links are substantial, people can then smack down the both accounts and counter their misbehaviour.

The curation split will mean bigger rewards, but remember, every post will be by default self-voted, so, in accordance with your reputation score, you will always have the first share of curation reward that will add to your author reward. They are all going to be only in stake, but stake withdrawal proceeds as a 1% conversion of remaining Stake per day, which makes your account more liquid and eliminates weekly peaks in powerdown cycles (it will become intraday, which is by its nature going to be less volatility).

Shimmer is the name of the fork of the Steemit web interface, that you are probably using right now. Shimmer refers to the way that hummingbirds move so fast you can't see their wings properly, and how fast they can move left and right, like a mirage.

To calculate how quickly you can draw down your account, take the number 0.99, and put it to the power of the number of days, basically, it simply cannot be completely drawn down. After 365 days, there will still be about 2.5% of the account balance of Stake remaining. To illustrate this, here is how much will remain after some number of days:

after 7 days 93.2%
after 28 days 75.47%
after 90 days 40.47%
after half a year (132 days) 26.53%
after 365 days 2.55%

Essentially, this would function to enforce minimum balances, without making them a limit that leads to an account being unable to transact. It's kinda dumb to be able to draw down an account until it can't be used! I think in theory you could have it do that, or, more logically, the consensus could say that if the next payout from drawing down your Stake, that it will disable the power down, if it would take it under the minimum.

Not handling boundary conditions in a user friendly way is not the way I write code. This is one of many clear examples of not handling boundary conditions you can find in the Steem code. HF19.1 included a fix that was causing witnesses to waste time calculating interest on SBD when it was set to zero! The proper algorithm should first check 'is interest nonzero?' which is a very simple and quick test that saves calculations. This is called 'lazy evaluation'. The code does nothing, if there is no reason to do anything, instead of multiplying things by zero to get the amazing answer of zero.

If you need help with localisation to Dutch (or French) I would offer some assistance if so desired.

I could offer some assistance with German.

It's not gonna need that for a long time with the anti-bot anti-spam anti-troll measures in the reputation coefficient system. For future, it's next iteration is already planned, to be based on SporeDB: https://github.com/SporeDB/sporedb which is not just multithreaded but has multiple parallel backends, already, the initial one being RocksDB, which is used by facebook. I think Facebook knows about scalability...

You certainly know your sh*t @elfspice.
What's your training and experience?
How many other developers do you have signed on now?

oopsie

@elfspice / @l0k1 posted this

Actually, still only pretty much got artists and writers and philosophers... Well, maybe some web designers with a little javascript chops... so far I am the only one with some significant training and experience. I did actually do a certificate course (1 year) in IT focused on multimedia. The VBscript/ASP stuff was my favourite part but we also did a little sysadmin stuff, in the middle of mostly stuff about photoshop, html, macromedia apps, etc.

I got started in the crypto business because I was trying to make money selling psychedelic drugs on the black markets. I knew the tor stuff and the crypto currency stuff came pretty easy since I already knew how to work with PGP.

But we are really just starting this. As someone has said to me in a private chat, at this point we haven't worked out any kind of organisation structure, and there is too many passionate but relatively unskilled people involved. But, I think give it time. I need to back off the pressure on myself as I am really not a manager type, but I sure as fuck don't want to see some pencil neck muscle in and change the spirit of it. I just want someone who can help me structure the work, and field more coders. I think two people who know c++ well and javascript, preferably both as their second preference (I suggested c# or go coders for c++ stuff, and dart coders, maybe python, for the javascript)

Anyway, someone was nice enough to give us the user account @calibrae, so now I can start using it to do announcements and marketing and funds/labor seeking.

Wellll... I have a background in web developement, front end (JavaScript, CSS) and back end (PHP, MySQL), as well as design. I did it for some 20 years. Many years before that, I was hardware register bashing on the C64 and Amiga.

I escaped, that world to focus on my artwork. I would like to help you out. However, I am uncertain of what time I could commit.

Thanks for the disclosure on your past business activities. You wouldn't still be attracting unwanted attention for this would you, as police have a tendency to follow all connections a person has.

That someone was clearly noganoo, but I believe this comment came from elfspice/l0k1 since you're able to use your words.

Do not allow him to keep the posting key for this account, if it ever gets used as part of his botnet I will autoflag everything this account ever does from now on.

By the way, if there is an exploit to get steemit to make you any password account you want, and he's not giving it to you, that sounds like the most plausible reason you are pissed with him. And if that's the case, he's got something that the whole of your camerilla must be pissed about. And if that's the case, why haven't you pigs fixed it?

My apologies, I didn't mean that last one towards you, but steemit. The bit about the camerilla, though, that stands.

I don't mean to be mean about this, really, it is just not going to make any sense to me to talk about things that I have heard nothing about, as though I should know them.

Anyway, I am glad all this negativity is over with. I just don't feel that rage anymore. The peace I started feeling when I forked steemd, has started to fill every corner of my existence. Maybe it's partly this diet change I have made, but the sense of having an answer to problems that are plaguing everyone, and the capability to do something to apply them, it's such a relief.

I know you do lots of good work in this community, I hope you will keep it up, and pull yourself out of the camerilla. It really doesn't suit you.

I was unfamiliar with the type of password that this account had to begin with. It did not look like the usual account.

Has @noganoo got an exploit on the steem password system?

If he does, then what kind of security is it?

I did change the password.

You people are gonna have to start explaining exactly what he is accused of, because I have no idea, and I did already know that the almighty sanders was in a war with him, which says absolutely nothing about his behaviour at all.

So, point me at the evidence. I have no information either way except that he is an enemy of my enemy.

Actually, never mind that. I don't care. I have this account now, and I have now got a complete ruleset that enables the community to judge everyone, and have the verdict visible to everyone, and the guilty end up in a jail of 1 transaction per day.

Also, you, sir, I know who you are, you are the great sanders. As far as I'm concerned, every accusation out of your mouth is vapid and meaningless. You should realise that I'm not that stupid.

Nope, that's me. You'd know that, and exactly what nog did if you had the sense to LOOK .

So you speak through a bot, to tell me about a bot farmer. Seems legit.

It's not my business to keep track of your business. This thing is making me laugh so much.

Also, I can clearly see you changed the keys AFTER I commented.

That may well be the case, but I also didn't realise until I was looking at this, that I had even posted as @calibrae. I just noticed it had a post. I thought, I don't remember posting. Then I realised what had happened.

@calibrae is my account now. @l0k1 already is powering down to @elfspice, and I will handle the power down from both using Vessel wallet, and on steemit, I will now only post as @calibrae.

I like this new name. I am gonna make it my new, post-steem handle. The other accounts can rot. I will be making it so when I build go-calibrae, that rotting actually occurs, too, as in, deleting of data by age, from inactivity (say, 6 months to start.