Core development proposal year 2

in #hive3 months ago (edited)

image.png

Hello !

My first proposal to work on core development will soon expire, I spent a bit of time to think if I wanted to continue working on core hive or if I wanted to pursue other things, Overall the past year has been a blast and I still feel like there are so many exciting things to build on hive and I want to be part of it.

The past year in recap:

If you haven't been following my account you probably wonder what I've been doing for the past year, here's a throwback of most of the things in (more or less) chronological order:

The beginnings:

I was very involved the birth of the chain, helping with parts of the soft fork and later the hard fork that led to the birth of hive. Then once we got that out of the park, it was a great start but most of the hard work was still to be done.

We decided to build things in an decentralized way, so I thought It was important that we met now and then to sync on everything, because unlike other projects we wouldn't have a central foundation with "official devs" like steemit inc. So set to organize core dev meetings more or less every two weeks (we don't waste time meeting if there is nothing to discuss). I wanted to bring awareness to what was currently happening and make them public to break with the old "steemit inc is working on stuff behind closed doors".
We are still going to this day. I've organized 19 of them and you can find all the recap on my account, and recordings on hive's youtube channel (ps the next one is this monday 29th at 5 UTC, tune in !)

We wanted to make hf24 quickly after the birth of the chain to secure it (so that hive didn't suffer the same fate as steem) as well as bring a lot of crucial optimizations to reduce the cost to operate a node. So I set to work on things that I could ship in that timeline.

Throughought the year I focused on the proposal system because it's funding a lot of the blockchain development so I felt that the better the system, the more "brang for your HBD" we would get.

One of the first problems I saw was that figuring out a price was hard for people, they would set an amount and then realize they asked for too much and their proposal was just doomed, they had to make a new one which ment losing all of the existing votes, additionally some steem-era proposals had "steem" in the title and it just looked bad. So I added the update proposal operation to change the title, linked post, and daily pay for a proposal: https://gitlab.syncad.com/hive/hive/-/merge_requests/48

Then there was the problem of being able to create proposals that ran for ever (even today there are two proposals set to expire in 2037), which bears a cost to the chain so I put a limit that every day above 60 days, it would cost 1 extra HBD per extra day. It doesn't bear any cost on proposals that can just add this to the payout they ask for (get funded for 100 days, costs 50 HBD, just add 50 HBD to your proposal). https://gitlab.syncad.com/hive/hive/-/merge_requests/48

Finally suggested by @smooth it doesn't make sense to count the HBD in the DHF in the debt ratio as it's "locked", the HBD should only count when it's paid out. https://gitlab.syncad.com/hive/hive/-/merge_requests/97

Additionally, donations in hive to the DHF should be possible, just convert the hive to HBD instantly. This mechanism is what allows us to earn a lot of money with the HBD stabilizer proposals. (as he can just get HBD from the DHF, sell it for hive and send the hive back to the DHF) https://gitlab.syncad.com/hive/hive/-/merge_requests/97

Then there was the whole discussion about what to do with the ninja mine, the DHF account was sitting on millions of HIVE that cannot be used for anything, ultimately we decided on slowly converting the HIVE to HBD (0.05% per day), as of the time of this writing the code has converted 6 million HIVE to HBD since and has drastically increased the DHF budget allowing us to fund many more projects. https://gitlab.syncad.com/hive/hive/-/merge_requests/97

post hf24 to now

After hard fork 24 it was time to look forward to bigger features.

I had started working on RC delegations even before hf24 but then stopped working on it because I knew it wouldn't be included in hf24. So when I went back on it post hf24. My initial code was on a branch that didn't take into account lots of rebranding (steem -> hive) work from blocktrade's team. SSo it took a while for me to get it back to a state where it worked,
It's a long work in progress as I worked on it, dropped it to work on other things, then picked it back up etc. Now I'm working on it again I didn't really know when to put it in the chronology so here https://gitlab.syncad.com/hive/hive/-/merge_requests/97

In terms of big features for hf25 I wanted to make recurrent transfers a thing, I really think it's a key thing to enable paid communities and a lot of subscription models like patreon. There are a lot of things to say about the feature, how it came to be and how much value it will bring to hive but I don't think it's really the point of this post. Just know that it's now almost ready and just needs to get peer reviewed by the other core devs. https://gitlab.syncad.com/hive/hive/-/merge_requests/150

In parallel to the "big two" I worked on a bunch of "low hanging fruits":

On top of the original update proposal operation, I added the option to update the end date of a proposal, in the original design I thought this wasn't necessary as you could just delete the proposal, but trustlessness is key and it's much better to see the proposal end at an earlier date than having to trust someone that tells you "I will delete it don't worry", turned out to be harder than expected but it's now merged and ready for hf25: https://gitlab.syncad.com/hive/hive/-/merge_requests/165

@smooth found out the proposal payments were not accurate, so I poured some time into it and found out there was a calculation error, and then added a fix for it: https://gitlab.syncad.com/hive/hive/-/merge_requests/168 this made every proposal get slightly underpaid, so all good there, no money was wasted, while working on this I found another bug but decided against fixing it for hf25

I went through the developer documentation and highlighted a list of things to fix, which @inertia is now working on https://gitlab.syncad.com/hive/devportal/-/issues?scope=all&utf8=%E2%9C%93&state=all&author_username=howo

@arcange mentioned that a virtual operation was missing when a recovery account operation got executed https://gitlab.syncad.com/hive/hive/-/merge_requests/162

on top of this there are a lot of small bugfixes that I did throughout the year not really worth mentioning there.

Communities

Finally I started to work on communities. I know they haven't seen a lot of love from the core team in terms of new features. So I have decided to spend a significant amount of time on it next year, things like mandatory beneficiaries communities, paid only communities (you have to have a recurrent transfer enabled to participate), statistics, new "hot" algorithms, topics, maybe even content locks etc. A lot of it is outlined in this post https://peakd.com/hive-102930/@jarvie/history-of-blockchain-communities-and-what-is-next by @jarvie but also in this issue with feedback from the community on the features by @guiltyparties https://gitlab.syncad.com/hive/tasks_without_projects_yet/-/issues/26

Looking back it's incredible how much I learned and how much more effective I am, there are so many gotchas when working with the core blockchain code that can make you rip your hair for hours that are now I'm like "oh it's that thing, done". I'm taking all that experience with me to year two to tackle on more and more ambitious features for hive in all of it's aspects.

The future

I won't make the same mistake as last year saying what I will be working on in details as I'm not the only one deciding things/priorities shift/ some things just don't make sense. But in the near future it's going to be a lot of work on communities and for the code hived well, come listen to our dev meetings to see day to day how things evolve ;)

The proposal

I think the previous parameters were fair so I'm not changing anything, 275 HBD a day for a year.

The proposal will start after my current one expires.

Voting

Here is a few easy links to vote on the proposal :

https://peakd.com/proposals/167
hivesigner

You can view all the proposals on: (make sure to vote on the upcoming one and not the old one though :p)

https://hivedscan.com/proposals
https://wallet.hive.blog/proposals
https://peakd.com/proposals

Closing words

I'd like to thank everyone that I've had the luck of working with last year and especially blocktrades and team (bartek, abw etc) who have been very cooperative and friendly which helped a lot throughout the year.

If you have any questions, please feel free to ask them in the comments !

@howo

Sort:  

Dev meetings have been awesome - You have been a driving factor to push for them and organize as well

I'm looking forward to the payment system eventually PeakD will be wanting to take suggestions from you and others of how you see a good UI going down

Thanks for picking up the ball on community backend development, that's huge and I'm looking forward to what you can roll out so we can present to communities.

Really crossing my fingers on the RC pools I think that will be a big part when we move to expand and bring in some big players later this year with our planned marketing project.

For a moment i was worried when you said you were thinking about if you wanted to continue... that would have been horrible to not have you around.

Also if anyone is reading this we could really do for some more hivemind development specially with communities. Get familiar and do a few helpful things and earn the trust of Hive users then also put up a Proposal. No reason we couldn't have multiple more developers working on core things like hivemind development.

Definitely ! working on hived is pretty hard for many reasons, but hivemind has a much lower barrier of entry, so if you got a solid grasp of postgresql and python you can definitely contribute !

Thank you for the kind words !

I'm looking forward to the payment system eventually PeakD will be wanting to take suggestions from you and others of how you see a good UI going down

Yes definitely, I think we will be building a lot of the apis endpoints in hivemind to ease development (and easily link them to communities) so it will be great to chat then.

Voted 👍

Thank you !

I hope the proposal goes through, I think the community update of the dev meetings is a huge benefit for the users on Hive, even if we do not fully understand what is being discussed, it is still possible to understand some of it, so I very much look forward to those when they come out, unlike what ever happened on steem, even having a communications director, you have done hands down a much better job with keeping us informed.

Thank you ! I'm glad you're enjoying it I always wonder how interesting it is to hear us rambling for someone who's not actively working on hive. Funnily I don't picture myself as a "communication director" or anything like this, but people tend to put that tag on me, so I guess it's good haha

Great work so far, appreciate everything you doing.
Looking forward for recurring payments and rc delegations feature that will hopefully help us onboard more users easily.

I think, work on communities should be done by front-ends, shouldn't be part of core development work. We have 3 or 4 dapps really need those but vast majority of other dapps doesn't need them. Why not work on hived and help blocktrades team where possible or explore core functionalities that will help to create dozen more dapps? For example, there was request like potentially adding hbd stabilizer as core feature and making foundation for 2nd layer smart contracts easier, explore private transfers, internal market/exchange improvements, light accounts, etc. etc. Just my opinion but having some of the neat core features will help us open doors for more diverse dapp development, not just social.

What do you think?

Supported proposal! https://ecency.com/proposals/167

Well I agree, but in the end work on hivemind still falls upon the "core dev" umbrella as it's closely tied to hived, I mean front ends (as I'm sure you're aware :p) are already very busy working on things like improving user experience etc. In the end I think hivemind/communities should be treated as a backend, where the front end teams ask for features and the back end team (core dev) work on them to expose the apis.

Ultimately I think it's a worthy tradeoff in terms of "time spent vs new features" for me as I can quickly churn out a lot of new things for the front ends who can then focus on implementing them in their respective front ends instead of spending time implementing them in hivemind.
There's also the fact that nobody is really stepping up to work on communities so someone has to do it as one point.

The way I see it, things moved out to hivemind for that exact same reason, because that's not core of Hive, it could be much more and now under hivemind it is in python which many developers are familiar with, anyone could contribute. I just wish we could focus on core code so more use cases could be explored like the one with recurring transfers. Economic experiments, light tokens perhaps (not smt but lighter with just token creation parts), etc.. I completely agree with frontend workload 😅 and many frontend already have backend, there is always enough things to do.

It is just my opinion, but going back to experimenting new things on core is much more beneficial in long term, we have good and growing userbase on social side. Slowly expanding into other areas what makes blockchains best is key to bring Hive into next levels.

There's also the fact that nobody is really stepping up to work on communities so someone has to do it as one point.

That's correct, beside blocktrades team not much contributors but also because it has been in refactor/active mode for past few months, now looks like we will have stable release cycle so more devs could join. Our team has a lot of work right now with all rewrites, but once we have some bandwidth, we will allocate some time to hivemind. There will always be some work on hivemind side though, regardless, how you decide I am all for it. 😉

Well to be fair things moved out of hived for many reasons, one of them being that one.

I just feel like experiments are great but it can often lead to having a solution in search of a problem whereas communities is something that we know will have tangible benefits.

I'm not saying I will stop working on hived altogether, I'm saying I may put in a month or two of work to add a ton of features to communities before I resume my usual hived work.

That's correct, beside blocktrades team not much contributors but also because it has been in refactor/active mode for past few months, now looks like we will have stable release cycle so more devs could join. Our team has a lot of work right now with all rewrites, but once we have some bandwidth, we will allocate some time to hivemind. There will always be some work on hivemind side though, regardless, how you decide I am all for it.

I really don't think it has to be an "or" as in "either I work on hivemind or you work on hivemind" there is definitely room for more people to work on hivemind, you could be focusing on creating new sorting mechanism / statistics while I work on "pay only communities" etc :)

I agree as well, it is under core dev umbrella but $100 per hour for python development is absurd even in EU based developers.

It's more than python development as there are a lot of complexity added in order to keep performance under control (indexing 500gb of data and querying it is not trivial).

But that's a fair point. And by all means I would love if someone were to work on hivemind instead so I can focus on hived as I mentioned above and to other devs.

It's more than python development as there are a lot of complexity added in order to keep performance under control (indexing 500gb of data and querying it is not trivial).

Might be if you are new python and postgres dev but for python devs like @holger80 if he is familiar with postgres would be super simple.

Yes, I did read other comments... would make sense to spend time on hived since you learned it with DHF funds for testing smts, etc. Now spending extra time to learn python and postgres, just doesn't seem fair and effective use of funds. Anyway, up to you and your motives I guess... good luck with development 😉

I'm not new to python nor postgres lol, I wouldn't dare to ask to get paid for learning a new language on the fly.

Nothing is ever "super simple" at this scale. Your comment probably indicates that you're not a dev yourself, there is a reason blocktrades and team have been hacking at it for a year to optimize hivemind and are still not done.

I didn't say you are new, but new to learning hivemind and postgres stack right?! Because I don't remember seeing your contributions to hivemind before, as you noted it has changed a lot and even for blocktrades team it took close to a year to familiarize themselves and optimize

RC delegations = very nice. I want it :)

Hive---> HBD conversion = also very nice :)

2021 is the year of hive

Hive---> HBD conversion

Is only for the dhf for now though, but @blocktrades is working on a system to convert hive to hbd for hf25, here's the spec: https://gitlab.syncad.com/hive/hive/-/issues/129

I know. I see big pools that work for HDB stabilization that pay out a nice ROI. Will be a cool thing :)

Liquid Hive becomes more useful.

Will definitely vote the proposal.

Usually, I tend to think that witnesses shouldn't make proposals (because what's the point of being paid tons as a witness if you're not going to work anyway). But the price of hive is still too low and volatile to start voting that way.

Also you deserve to be funded for the consistency and commitment you showed to hive. Especially when @netuoso who was running the same proposal completely disappeared.

Thank you !

voted, looking forward to the upcoming development and HF25, and the return of the linear reward curve. Regarding HBD debt I think we still need to be cautious, it's not a problem in a bull market, when all prices are rising, but in a bear market, HBD debt puts a lot of price and inflation pressure on HIVE (because HBD is not backed by fiat but only HIVE). Steem for example had an annual inflation rate of over 20% due to SBD debt during the bear market, although most users thought inflation was below 10%. Idea: what do you think about putting some of the HBD from the DHF (or the HBD stabalizer) into USDT instead of HIVE during the bull market to back the DHF?

Thanks !

The problem with it is that it cannot be done in a trustless way, we'd have to have someone or "something" like a fundation to manage it and it's a whole other ordeal, but that argument could be made, like the monero foundation making investments, some of the dhf could be used to be profitable instead of sitting around. I think the idea was discussed a while ago and stakeholders were against it as but feel free to reopen the discussion :)

Also re-inflation I think it's going to be fine because after hf25 you'll be able to convert hive into hbd, thus "burning" hive.

Done!
You do great work and deserve to continue.

Thank you !

My pleasure and maybe you can have a look at some of our posts some time.
Note that this is NOT seliciting support.

Thank you ! I took a look, nice pictures !

Thank you kindly for the donation.
Maybe as a senior developer you can have a look at our @combination account and advise regarding any improvements that we may have to make?

My name is Stephen, or Zac and I am the founder of The Papillon Foundation NPO in South Africa that is now it's 20th year of existence.

enable paid communities and a lot of subscription models like patreon. There are a lot of things to say about the feature, how it came to be and how much value it will bring to hive

There are plenty of things to be said, and I would really like to hear them. Did I miss a post that focuses on these new features in great detail?

....I thought I made a post about it but I realize I never did 🤦‍♂ I will make one this week :)

I look forward to hearing your take on it. Maybe encourage a brainstorming session in the comment section as well since I'd really like to be able to pick it apart thoroughly. Tremendous potential is an understatement, in my humble opinion. But that doesn't mean it can't fall flat on its face if we don't get it right.

First time running into you but glad I did as I want to know the people behind a lot of the "construction" and what is to come. Thank you for all the work you have done so far. Hive has come a long way but I believe and I'm sure you do that we are only at the start of it all still and this year and next will be when Hive builds a firm footing and builds one of the most robust eco systems in crypto.

Thank you ! Yes we tend to be a bit behind the scenes apart from that weekly post from blocktrades or my bi-weekly post on the output of the dev meeting so it's easy to miss us, but in the end our job is to build the infrastructure, what is exciting is what is being built on top of it not the actual thing so it's fine :)

You have my full support and have been a huge part of hive as it is now. We need to keep you in the community and keep building for the future.
You are a great asset to have par tof this journey.

Thank you !

This has really been a great progress in general from you.

I'm a growing Software engineer and blockchain developer. I'm hoping to grow at a steady rate in the coming years...

Supported💪

Great job! Count with our support!

@howo Great work, I voted and support you for another year of kicking butt on the HIVE. Keep making great things happen and let's get HIVE to $5! Woot woot!

Haha thank you hive at 5$ is definitely in the crosshair !

Thanks for your overalls contribution to Hive.

You are welcome.

I just joined the HIVE community. I think very good. and thank you for contributing to HIVE.

First thanks to you for writing this post, very useful, and full of learning mr @howo

I want to improve myself here, but I have a problem ...
when I post or write something here, the spaminator always gives me less value, ...
I don't understand ...
even though I think, I didn't do anything wrong, what's wrong ? and what exactly did I do wrong ?

The bloggers may benefit from this proposal

Mantap

!WINE


Congratulations, @zelensky You Successfully Shared 0.100 WINE With @howo.
You Earned 0.100 WINE As Curation Reward.
You Utilized 1/1 Successful Calls.

wine-greeting
Total Purchase : 24816.918 WINE & Last Price : 0.290 HIVE
HURRY UP & GET YOUR SPOT IN WINE INITIAL TOKEN OFFERING -ITO-


WINE Current Market Price : 0.270 HIVE

I just joined the HIVE community. I think very good. and thank you for contributing to HIVE.


Cheers @guruvaj, Thank You For Inviting @howo To A Glass Of WINE.
At The Moment You Don't Have Enough WINE Staked To Order A Glass Of WINE From @wine.bot.
Please Refill Your Barrels By Directly Buying WINE From Marketplace & Make Sure You Have Atleast 25.00 WINE In Staked Wallet.

wine-greeting
Total Purchase : 24816.918 WINE & Last Price : 0.290 HIVE
HURRY UP & GET YOUR SPOT IN WINE INITIAL TOKEN OFFERING -ITO-


WINE Current Market Price : 0.270 HIVE

Sorry, you don't have enough staked BEER in your account. You need 24 BEER in your virtual fridge to give some of your BEER to others. To view or trade BEER go to hive-engine.com

Just thank you and say you have my support! 🤟

Thank you for all that you have accomplished for HIVE in the last year!
Hope to have you in the core dev team for a couple more years, not just 2021/2...

Nice one @howo I just supported your proposal and reblogged this post course what's worth doing is worth doing well. 😉👍

Que todo lo que te propongas sea para bien de usted y para mejorar la plataforma, en fin todo. me gusta este post esta bien explicado

I got your memo and have given your 2nd proposal a vote! Keep up the great work!

Thank you !

.

No

.

Nope, I'm curious, what makes you think that I do ?

.

No, we were in the steem business alliance together (among with like 15 other people) like 2 years ago, but I haven't spoken to him since.

I'm not sure what builteam is up to nowadays, I assume they are on blurt ?

This is a Very nice Think.

My sentiment might not be shared by others but paying right now 17 000 USD a month for a single dev is extremely excessive. I havent heard you mention anywhere that fact. Will you return the difference between current HBD price and $1 back to the DHF? Will you calculate the average HBD price you received HBD at?
HBD might not be $1 USD but it was intended to be and the person getting payed should have the personal responsibility to be aware that by staying silent on this theyre basically taking advantage of the stakeholders by pocketing all that money. What if HBD hits $10?

Again, as I said in the past I hate these "continual development" proposals because you dont really have to set any goals for yourself. I mean even in this post youre just saying:

"Ill do stuff. Ill help out with what pops up."

I much prefer a proposal with a goal set and explained. Something like @klye is doing.
And dont tell me that doesnt work for core development. Creating a general roadmap for the coming year is something every serious crypto project does and there you can determine what you can deliver.

I will never support a proposal like this. If youre being price productive is also under question.

I will say that you are much more productive then @netuoso, though. But then again, that isnt a good benchmark since paying him was just slightly more productive than flushing money down the toilet.

I agree with your sentiment about compartmentalizing these proposals more.

I am a bit concerned with the notion that the community is bearing the extra cost of HBD being higher. The HBD speculators are bearing that cost. I don't think it's anyone's responsibility to settle up overpriced HBD with the community, any more than it is their responsibility to send half their HBD value back to the community for post rewards. If you earn a dollar and can sell that dollar to a sucker for two dollars, more power to you. You are taking advantage of that sucker on the exchange, not anyone on here. If the proposals are more compartmentalized, I think that it would be easier for the proposer to ask for less if the HBD price is consistently worth more, and the community could pressure them to do so with their votes. I think that staring at the HBD price and then staring down your nose at people getting paid in HBD is a bit of a trap.

As far as I'm concerned, even with your own proposal, if you got paid the full amount in HBD and were able to arbitrage the HBD value to get some extra money, I say go for it. If you were to pocket it, great, a shrewd business move. If you were to give it back to the community, I'd have a higher opinion of you and want to support you more. But either way, I'm not going to moralize about it if the terms of the proposal are being met.

Id say you absolutely should feel responsibility towards the community. There is a fair wage for work done and that money is coming from the shared fund.

And those that do not feel any kind of responsibility should not be praised for it. These are stakeholder funds and your proposal is voted with the intent of hbd being 1 dollar.
Everything above that or under is not as intended.

When you pocket the difference and remain silent you are showing you do not deserve the stakeholder further trust or respect.

Now, if you want to put aside "morality"of everything and reduce it to the barebones, "well, hes getting payed because people are voting", you can do that.
If you want to pay someone double or triple their labor market wage, you are free to vote that but id rather see that value back in the dhf so we can maybe pay 3 more devs. 😉

The value of a dollar is so arbitrary to peg to, and is steadily decreasing anyhow. HBD should just float on its own, who cares? If I want to hold a stable coin correlated to USD, I hold USDC or similar. Those stable coins ACTUALLY HOLD USD 1:1. Holding HBD is farthest from my mind, and that will probably never change. It was a stupid concept to begin with, and still is. It shouldn't even exist. It does, and yet people are losing their minds because its value far exceeds that of an actual US dollar? Because there's virtue in pegging to something that loses 15% in real terms YoY. Fucking insane. You're in Croatia, WTF do you care about how a crypto coin gets denominated. It's totally subjective horseshit yet we are convinced we need to care about it. Fuck that.

Now youre going into the HBD fundamentals. Its a question of if you care about its intended purpose or not.
HBD has failed to live up to its purpose but when tech fails the social aspect of Hive kicks in to curb the failure of design.. Just like it happened so many times in the past. Take bots as an example where code failed us for years.

Now, if no one cares a single dev is taking 18k usd a month from the dhf and doesnt care about the drama that will cause, i wont either but i will maintain that they should.

I'm arguing if the proposal is too expensive in real terms, don't vote for it.

Holy hell. $17,000 development funding could run me for the better part of half a year, maybe longer if HBD prices moon (which they are going to, can't really beat free markets with the current toolset)

If not for the valiant efforts of our 'tool set', HBD would be valued at one million dollars per! untitled.gif

lol, Thanks for the giggle my sir.