Wie schon im letzten Teil angekündigt, geht es ab heute mit Promoting und promoted Posts weiter. Doch bevor irgendetwas in die App eingebaut werden kann, muss sich mit der Frage auseinandergesetzt werden, was promoted Posts überhaupt sind.
Was sind promoted Posts?
Das wichtigste vorab: Promoted Posts sind KEINE Blockchaineigenschaft! Das bedeuted, dass diese in der App (wie auch bei Steemit) auch NUR in der App als Promoted Posts sichtbar sind. Die Promoted Posts dienen dazu, die Entwickler der Platform/der App/etc. zu Unterstützen und dafür auch auf der betreffenden Plattform etwas vom Entwickler zurückzuerhalten. Das bedeutet aber auch, dass sich jeder Entwickler ein eigenes Konzept für diese Promoted Posts überlegen kann. Man kann aber auch (wie zum Beispiel busy.org) ganz darauf verzichten. Daher möchte ich im Folgenden kurz beschreiben, wie ich mir Promoted Posts in der App vorstelle.
Meine Vorstellung zu Promoted Post
Ich möchte im Folgenden kurz schildern, wie ich die Promoted Posts in meiner App umsetzten möchte. Wenn ihr einen besseren Vorschlag habt, dann teilt ihn mir gerne in Form eines Kommentars mit, vielleicht lässt sich dieser ja umsetzten. Also nun zu meinen Vorstellungen:
Ich möchte es ähnlich Handhaben wie Steemit: Man bezahlt einen Betrag an Steem, bzw. Steem-Dollars und dafür wird der Post in der "Promoted" Ansicht angezeigt. Aber ich möchte auch einige Dinge anders Lösen: Um auch Accounts mit wenigen Rewards die Möglichkeit zu bieten, einen Post zu Promoten, werde ich den Faktor Zeit gewichten. Es soll nämlich von der Höhe des bezahlten Steems abhängig sein, wie lange ein Post promoted wird. Dabei soll dieser Preis für Accounts mit wenig Steem/SBD geringer sein als für Accounts mit viel davon. Auch bei der Reihenfolge der Posts in der Ansicht möchte ich ein mehrgliedriges System haben. Dieses soll die Posts abhängig vom Start der Promotion gliedern, aber innerhalb einer solchen Gruppe nach zum Beispiel der Upvotezahl. Im folgenden eine kleine Skizze von mir zu den Ebenen:
Als Preis für einen Tag Promoting könnte ich mir zum Beispiel die Durchschnittsrewards der letzten 5 Posts vorstellen. Aber ein anderer wichtiger Punkt ist noch, wer einen Post promoten kann. Bei Steemit kann jeder jeden Post promoten. Ich möchte das in der App genauso umsetzten.
Technische Umsetzung
Nachdem die Funktionsweise geklärt ist, gibt es noch die technische Umsetzung abzuklären. Das ganze soll wiefolgt ablaufen:
Ein Benutzer promoted einen Post. Er bezahlt die Promotion in Steem/SBD. Damit aber die Apps jetzt wissen, dass ein neuer Post promoted wird, muss es eine Datenbank geben, die diese Posts verwaltet. Bei Steem ist das die Blockchain, für die Promoted Posts muss eine eigene Datenbank her. Um dafür aber keine Serverressourcen zur Verfügung stellen zu müssen, verwende ich Google Firebase (https://firebase.google.com). Firebase ist eine Sammlung an nützlichen Tools für Android, IOS und Web-Apps und bietet mit dem Modul "Firebase Database" eine Datenbankfunktion. Firebase gibt es wie auch viele andere Google Produkte in einer kostenlosen Version, diese ist zwar eingeschränkt, reicht aber für unsere Zwecke voll und ganz aus.
Damit sind nun meiner Meinung nach alle Fragen geklärt, wenn ihr noch welche habt, stellt sie mir als Kommentar. Im nächsten Teil geht es dann wieder praktischer zu: Ich möchte Firebase einrichten, ins Projekt einbinden und ein paar Datenbankmethoden für später vorbereiten.
Wenn dir der Post gefallen hat und du dieses Projekt unterstützen möchtest, würde ich mich freuen, wenn du dies durch einen Upvote zeigst.