Three Things in Steem You Might Not Know About

As I’ve been working with developing on top of the Steem platform recently I’ve discovered some “advanced” features, you might say, which I didn’t know existed before. To anyone experienced with Steem development these things are probably commonplace and obvious, but I thought I would make a post about them for those newer developers (like myself) or anyone else who’s just interested in knowing more about how the magic happens!

JSON Metadata

Both posts and accounts on the Steem blockchain have a “json_metadata” property associated with them. If you do not know what JSON is, essentially it’s just a format for specifying data using key/value pairs (more information can be found through Google and is outside the scope of this post).

The “json_metadata” property typically has some standard information that most front end sites use, however it’s completely open-ended and anything at all can be put in there!

You can see the JSON Metadata for a post or an account on steemd.com or any other blockchain viewing site. You can see it for my account here: https://steemd.com/@yabapmatt or in the screenshot below:

Typically for a user account it’s just the standard profile information stored there. This is where sites like SteemIt, Busy, Utopian, etc get the profile information for each account.

While profile information is what’s typically stored there, as I mentioned above you can store anything at all that you want! Some front end sites in the future might want to show more profile information if it’s available. People could add information about their birthday, their hobbies, their pets names, whatever!

Currently some bots and services that run on Steem store some configuration info there. For example @randowhale stores information about the fee to use its voting service, the vote value, and whether or not it is currently “sleeping”:

Posts also have “json_metadata” and you can see it the same way by viewing a post on steemd.com or another similar site. For a post on steemd.com you will need to click on “advanced mode” to see the json_metadata (I did say these were “advanced” features!)

You can see it for one of my recent posts here: https://steemd.com/utopian-io/@yabapmatt/updated-documentation-for-steemconnect-v2-js-sdk and in the following image (steemd shows it in a small box with scrolling so you have to use the link above if you want to see the whole thing):

This was a post made through Utopian and as you can see they add a lot of json_metadata! Utopian, and any other front end sites or services, are then able to access that and use it however they choose.

As the Steem ecosystem grows it will be interesting (to me at least!) to see new ways that json_metadata is used to add more information to user accounts and posts, and implement new features, without requiring any updates to the Steem blockchain code.

Custom JSON

In addition to the JSON Metadata that can be associated with a post or user account on the blockchain, it’s also possible to post custom JSON data to the blockchain by itself - not associated with a post or account or anything else.

The fact that it’s not associated with any other object on the blockchain means it won’t show on SteemIt.com or any other standard front end sites, but it’s possible to create a specific front end site that looks for and uses specific custom JSON operations on the blockchain. It also is not possible to vote on or earn rewards on content posted as a custom JSON operation. That is only possible with posts or comments.

One example of such a site is http://www.steemliberator.com/ which uses custom JSON operations to store files directly on the Steem blockchain. One such file it has stored on the blockchain, appropriately, is the Steem whitepaper. You can see an example of one of the custom JSON operations used for that here: https://steemd.com/tx/472c35c17cffbd93b17237732f5867936268b239

I’m not sure how much use this gets right now, or even how useful it will really be in the future, but it’s there, so you should know about it! So if you ever want to store data on the Steem blockchain that’s not a typical post/comment/account etc, this is how you can do it.

Beneficiaries

Last, but not least, I recently learned that it’s possible to split the author reward payouts for posts among multiple accounts, rather than having it all going to the author of the post, as is the default. This is done by adding “beneficiaries” to a post. You might be wondering why on earth you would want to give some of the rewards to others, but there are many good reasons for wanting to do so.

For example, say someone helped you write the post, provided information, or other services. Then you could pay them by giving them a percentage of whatever the author rewards are on your post. This way they would be motivated to help promote the post as much as possible so it would earn more rewards.

Additionally, many third party sites and services built on top of the Steem blockchain automatically add beneficiaries to any posts made through them as a way of supporting their development, moderation, or other services. This is how a site like Utopian supports its sponsors and moderators, for instance.

You can see the beneficiaries on any post by viewing the post on steemd.com or any other blockchain viewing site. You can see my last post made through Utopian here: https://steemd.com/utopian-io/@yabapmatt/updated-documentation-for-steemconnect-v2-js-sdk If you click on “advanced mode” and scroll down a bit you can see the beneficiaries. I’ve also included a screenshot below:

You can see that all of the large sponsors and moderators of Utopian are listed as beneficiaries of my post, with their share being based on how much they have delegated or moderated. The “weight” is the percentage of the author rewards for that post that will be paid out to that beneficiary. For example @cryptoctopus will get 1.22% of the total author rewards of the post once it pays out.

Some of you who didn’t know about this might be thinking “omg I don’t want some of my post rewards going to other people!” But remember that without that, many of these sites and services would not be able to run, and they often help your posts to get a lot more visibility, and earn a lot more rewards than if you just posted it to SteemIt.com. In the case of Utopian, that’s through the big vote from the Utopian bot - which will typically far outweigh the portion that goes to the sponsors and moderators.

Overall I think that the beneficiaries feature will be very important in conjunction with the upcoming community features and SMTs as it will allow communities to fund development, pay moderators, and more. Without that, many would probably not be able to operate or would have to resort to clunky workarounds that would make things more difficult for everyone.

That’s All Folks!

That’s it for now. I’m sure there a lot more interesting things on the Steem blockchain that I still don’t know about. Feel free to educate me about them in the comments - I’m always eager to learn more! Also please let me know if any of the information I wrote above is incorrect. As I said I am still new and learning so it’s possible that i’ve misunderstood something. I will update the post to fix any incorrect information right away.

Thanks for reading!


H2
H3
H4
3 columns
2 columns
1 column
Join the conversation now
Logo
Center