</caring about steemit> Honestly! No more!steemCreated with Sketch.

in #steem7 years ago

After

 

giving way too much energy and time towards trying to incite some discussion and maybe even movement towards doing what needs to be done to fix the many serious problems with Steem, I'm done.


I swears! Pinkie Promise!

It takes some time to shift habits around, and I've been gradually psyching myself up to jump into the Golang Coding Dungeon and actually do something... I am now learning my way around Git a bit better, as well as learning how to deal with dependencies.

Unfortunately, Go doesn't really have a dependency management system, per se. Not a proper one. Apparently Google just has one giant repository, and they don't depend on anyone else's code. For real!

So, I have to use this generally regarded as the best management program, called Glide.

As well as this, for some reason, a lot of Go devs don't seem to have any concept of a uniform build system either. I know! what the actual? Am I starting to wonder whether I should be working with Go, at all?

No, really I am not wondering. Virtually every off-the-shelf component I want to use, is in Golang. Go forces very good exception handling, and it's got good thread management primitives. Otherwise, it is as dumb, low level and procedural as C. Oh, though, it does have a more neat namespace system, simplified memory management, and a whole bunch of other things. The only thing it doesn't do for you is make sure you don't write code that can be exploited by timing and synchronisation, so called 'race conditions'. These are of course nondeterministic and completely anathema to Distributed Systems applications.

I understand pretty easily what 'nondeterministic' means. I've seen far too many programs that produce constantly different results even with almost exactly the same starting conditions. This is not the kind of code I want to write, at all! Sure, I used RNG's to create unpredictable delays in a single threaded script in my docker for steemd, but that was done for a reason - so that nobody could DDoS my server to interfere with it by watching when it does things, and besides, it was pulling random data, namely, price feeds.

Anyway, I also am promising myself to not graze on feedly and publishing commentary about geopolitics and economics fuckery by TPTB. Putting on the blinkers, so this horse doesn't get flighty because of the silliness going on around it.

Sort:  

Me thinks this is not elven speak, are you sure you're not dwelling in Tinkertown, my dear fellow?

Elves as in self transforming machine type ;)

wait so soundsliek ur quitting steemit? ir just u quit arguing about steemit upgrades???

steemit is NOT broken man iw ish peopel woud stop acting like theres some huge problem with steemit

Yeah, and all is well in the USA today too.

No, not quitting steemit. Gonna milk it like the rest of you, so long as it lasts. Until it gets abandoned and/or forked/replaced. I'll be aiming to do the last option if I can manage it.

You don't think it's broken because you know nothing about it. I've been working as a witness, trying to develop apps for it, and it's a frickin nightmare, and a constant moving target. Not to mention that the code is spaghetti that I knew was bad code before I even progressed beyond a very nice Radio Shack microsoft basic manual that came with my first computer, a TRS-80 Color Computer. I mean, the language used goto, but it even said 'be careful with goto's or you will make spaghetti code and not be able to fix it'. It had subroutines! I used them extensively. I was only 11 years old!

So, ok, steemd, the server that runs steem, doesn't at least use goto's. But the switch statement that checks for valid usernames, oh my lord. Apparently nobody at Steemit who codes c++ knows about regular expressions. I was gobsmacked. I learned about them when I was like 14 years old, reading a 'how to write a compiler' manual and trying to implement it on my amiga, back in the day. I bet Steemit coders don't know the first thing about Yacc or Bison either.

All is well in America ? have you visited lately?

That was sarcasm :) sorry if that was not obvious.

If I was stuck on the continent of the americas I'd be already anywhere but the USA. Pretty sure that mexico has got an illegal immigration problem these days, for this very reason.

You shouldn't be surprised considering the type of writing you do. It was going to happen sooner or later.

Yeah I was enjoying your rants. Change can only happen with persistence!

Well, to put things in proper perspective, building a blockchain system was on my mind back in 2013 when I was a dirty blackmarket reloaded dealer... So persistence and continuity would suggest that steemit is the branch and my own project was always the trunk. Time to submit a merge request.

I'll rant now and then, I just won't be trying to make the smug and complacent feel a slap in the face. Not that they have any nerves in that part, otherwise how could they be so ridiculously... embarrassing to themselves.

no more rants?! maybe i should unfollow :P jk

This is all Greek to me, but it's entertainingly Greek, like a Bridge column.

[...] I'm done.

I swears! Pinkie Promise!

Say it ain't so!

It is. You can all rot on this sinking ship.

I'm for realz building SS Divtanic now, and we shall sail through the seas of cheese, and live happily ever after, as we code our way to Oblivion.

I'll keep following your work, good luck with it. 🙂

Since you are interested in improving steemit, but feel your efforts are wasted, have you thought about launching a steemit clone (fork) with needed improvements as you see them? If there are enough steemians who agree with you they may come over to the new "better steemit" fork.

That's basically what DIV is, and I am starting from the base of SporeDB. The author of Sporedb has weighed in on an issue I made on my fork, and said that he may contribute to DIV, and obviously, where relevant, changes will be merged back the other way too.

It's ambitious, which is why I start from SporeDB, which is late alpha grade, now in development for 2 years. There is so many elements to it but this is the tagline for the project:

Monetising Governance, Infrastructure and Content for Decentralised Distributed Social Networks


Which I think concisely sums it up.

It will be written primarily in Golang for server side and Dart for client-side.

Good luck. Let us know of your progress.

Seems you are not planning a fork of steemit, but a full rewrite..
Do you plan on reusing any of steem blockchain code?

Hell no. And I am working through building SporeDB, and it originally depended on Faceberk's RocksDB, written in C++. The author of SporeDB is in the process of deprecating it in favour of BoltDB, which is basically like RocksDB, but written in Go. I think that Louik Bonniot (hm, maybe he is from Luxembourg ^_^) has been working at other things most of the time but he probably will appreciate me cutting that cancer out of the build process. C++ I mean. I am very chauvinistic against C++. Bad programmers love C++. Some C++ code is good, but it is in the minority.

No, there is absolutely nothing about steemd that makes me want to even wade through its stinky boggy muck for any reason whatsoever. I will be entirely changing almost every element's function and design, most especially things like self voting, and mutual witness voting, and the witness schedule, is entirely contrary to the tiered georegional validation system I have in mind (to accelerate confirmations).

Very ambitious. Hope you are up to the task.
Any plans on share-dropping on steemians when your blockchain is up? This may gain you a significant user base at that start.
ICO in your plans?

Well, someone mentioned the idea that free accounts could be rate limited by making them under-privileged until they earn some minimum amount, like a freemium style account (for example, not allowed to have SP delegated), and I like this idea, but also, I would think if I suck up all the Steem user registrations, but require a (somewhat labor intensive) captcha to activate them initially, and give these steem accounts full privileges from the start, this could be an good migration incentive, without letting all those stupid bots on.

It makes me think of another possible earning method for users too, turing testing other users. Nothing could be more accurate than humans assessing whether other users are humans. It raises the bar enormously. This could be another reason behind why there has to be chat integrated from the get go. Instead of a captcha, you have to respond to specially formed private messages from on-duty turing testers, who get paid a small amount for each time they assess the response. These can be cross-examined by randomising who tests who, even the turing testers have to submit to turing tests before they get activated, etc. Just a random thought.

No, absolutely no ICO. People have to engage with the platform to earn rewards, and because issuance in DIV is completely activity driven, the rewards for early users will be bigger (issues more when there is less posting and voting), and same also when there is a slump in activity. Conversely, when activity is excessive, the issuance rate drops. In other words, the rewards are aimed to rapidly adapt to the current market value. Users will slow down their activity, or be punished by a drop in rewards, immediately, or, vice versa, if they slow down, then activity will be incentivised to increase immediately, instead of waiting for the differential flux of liquidation of assets on the market, which lags.

The objective of this incentive structure is to keep the rate target, and to bind, with minimal lag, the activity level to the userbase's appetite for income. Remember that most of the rewards also will go, in order of a halving sequence, to development, hosting and general user posting. Development posts include bug reports that are voted on by developers, also, so bugfixing by regular users is a means to get a piece of this bigger pie. Likewise, users are incentivised to run nodes, and because the nodes will be designed to be easy to install and use, though it sounds 'unfair' to non-technical folks, in fact, it is not, and this ensures the network infrastructure is as strong as possible, and that the code is developed quickly, and to a very high standard, and paid, very well. Just consider how much programmers get paid in the open market. Naturally the reward base must account for this in order to draw developers away from other software projects, especially distributed systems social and financial network applications.

DIV never issues liquid tokens, always in the form of the Deposit contract but the power down contract will be open-ended and always pay out 1% of the remaining stake into liquid form once a day at the time the powerdown is enabled. The idea here is that you eliminate week-long drawdown patterning and it gives users a better opportunity to seize trading opportunities. The 1% power down cannot in fact completely drain an account's deposit pool, even after 365 days, it still has only fallen to 2.5%. But each conversion happens daily and starts big and shrinks by 1% each subsequent day.

Interesting, sounds like you already given all this much thought.
On another note, when your blockchain is up you can offer steemians to export and migrate all of their content and activity on to new blockchain, along with their following/followers since its all available in steem db. This may help encourage steemians to migrate if they do not lose all the work they did so far.

DIV is a good name for a coin, it will attract web developers and other techies. Do you have a website name in mind yet? Needs something catchy.

Also, It would be useful to teach the new blockchain to interact with the old one, so people who choose to stay on steemit can interact with those who leave for DIV blockchain. The two blockchains can serve merged content to users.

migrating... I think I'll leave that up to interested folks once the base system is there. It should be possible to use this to suck up content from any forum, in fact.

By the way, DIV is not a blockchain. Makes me think I should change the name, actually, to follow the GNU tradition:

DANBC ain't no block chain!

DNCB Does Not Chain Blocks!

KiBC ist keine Block Chain!

NIKAKUV BLOK VERIGA (Not any type of block chain)

I'm in the beginning phases of learning how to code by starting with Python. Can't wait for the day that I can read a post like this and actually understand what I read! hahah

Nice post. Upvoted and following you. Please check my blog @bikash-tutor and upvote me. Thank you.

Go fuck yourself. Downvoted and muted.

Coin Marketplace

STEEM 0.19
TRX 0.15
JST 0.029
BTC 63657.90
ETH 2656.15
USDT 1.00
SBD 2.84