Die Web3 Foundation sucht Teams für die Entwicklung einer alternativen Implementierung von Polkadot Runtime Environment (PRE), einer Kernkomponente von Polkadot.
Der erste Schritt beim Schreiben einer vollwertigen Polkadot-Implementierung besteht darin, mit dem Schreiben einer Implementierung des PRE zu beginnen. Die Idee hinter dem PRE ist, dass es zum Erstellen eigenständiger Blockchains verwendet werden kann und gleichzeitig eine Verbindung zum Polkadot-Netzwerk ermöglicht.
Die Web3 Foundation hat Parity Technologies beauftragt, die erste Implementierung von Polkadot zu schreiben. Ihre Implementierung des PRE wird „Substrat“ genannt. Dieses Produkt ist derzeit ein PRE, wird aber in Zukunft über zusätzliche Funktionen verfügen. Für diesen Zuschuss beschäftigen wir uns nur mit dem PRE. Der aktuelle Substrate-Code befindet sich im Polkadot GitHub Repo und ist in Rust implementiert .
Weitere Informationen zur Antragstellung finden Sie in folgendem Dokument:
Polkadot Runtime Environment: Alternative Implementation Grant
(FYI, die folgenden Sprachen werden bevorzugt: Go (vor allem), C++ und Java.)
Gibt es eine bevorzugte Sprache für die Implementierung?
Eine alternative Implementierung in Rust oder Go wäre schon früh sehr nützlich, da ein Großteil des aktuellen Blockchain-Stacks in dem einen oder anderen geschrieben ist.
Später wäre es interessant, eine Implementierung in JavaScript (falls es jemals die Kompilierung zu wasm unterstützt) oder Java/C# zu erhalten.
Ich werde morgen weitere Informationen veröffentlichen (etwas hinter dem erwarteten Zeitrahmen!).
Die Referenzimplementierung ist in Rust (dh Parity Tech), außerdem gibt es die JS-Implementierung von Jaco (ein vollständiger Substrate-Client, aber ohne Block-Authoring).
Die bevorzugten Implementierungen sind: Java, Go, C++.
Mit etwas Glück kann ich also morgen die vollständigen Details veröffentlichen! :-)
@EdwardAThomson Gibt es Fristen für die Förderanträge?
Ich versuche, einem Team bei diesem Unterfangen zu helfen, insbesondere mit Go. Wenn es ein bestehendes Team gibt, das Hilfe sucht, kontaktieren Sie mich bitte. gfrеⅾeriсο auf der aktuellen Zeit oder auf Twitter: ģсsfrеḋ.
@gcsfred2 Die Bewerbungen werden noch eine Weile geöffnet sein. Im Moment besteht die Hoffnung auf ein paar weitere Implementierungen, daher bleibt der Bewerbungsprozess offen, zumindest bis wir einige interessierte Teams haben, die an diesem Thema arbeiten.
Hallo, unser Team war während der Blockchain-Woche in Berlin und hatte eine unglaubliche Zeit, Leute aus dem Parity-Team kennenzulernen. Wir zeigten Interesse daran, eine Implementierung des PRE in Go zu schreiben. Ich werde den Antrag in den nächsten Tagen ausfüllen. Danke!
Hey ChainSafe-Team, das freut uns zu hören! Ich sehe, Sie haben eine E-Mail-Adresse in Ihrem Profil. Ich schicke eine E-Mail, um Hallo zu sagen. Go ist eine unserer bevorzugten Sprachen, daher ist Ihre Anwendung von Interesse. Wir fangen jetzt an, ein ziemliches Interesse daran zu wecken, alternative Implementierungen zu schreiben.
Ich bin sehr daran interessiert, an der Kernentwicklung von Polkadot beteiligt zu sein. Formular gesendet! :)
Hinzufügen einer Liste relevanter Videos und Blogs.
Videos :
Blogs usw .:
Technischer Chat-Kanal :
Wir empfehlen, in den Substrate Technical Channel zu springen und Fragen zu stellen. Einige Entwickler sind vor Ort und beantworten Fragen, außerdem gibt es auch eine Handvoll Community-Mitglieder, die ebenfalls zu Experten werden!
Danke für das bisherige Interesse. Wir haben eine Reihe von Bewerbungsformularen erhalten, aber das Bewerbungsverfahren ist noch offen, falls Teams Fragen haben und daran denken, einen Vorschlag einzureichen. Wir hoffen, 2 oder 3 Teams auswählen zu können, um alternative Implementierungen zu entwickeln, aber wir haben noch niemanden ausgewählt!
Ein weiteres Update zu diesem Thema. Viele von Ihnen haben nach Zeitplänen und Aufwand gefragt.
Ich hatte ein kurzes Gespräch mit Jaco, einem Entwickler bei Parity. Er ist derjenige, der die Implementierung in JavaScript erstellt hat. Hoffentlich gibt Ihnen das eine bessere Vorstellung. Er hat auch ziemlich alleine gearbeitet!
Wie lange würden Sie erwarten, dass ein Entwickler/Team von Entwicklern eine Implementierung von Substrate erstellt?
"Schwer zu sagen - das Problem ist, dass meine Implementierung viele Fehler im libp2p-Code von Rust gefunden hat, also habe ich (was sich wie eine Ewigkeit angefühlt hat) auf Korrekturen gewartet. Zu früh.
Also als erstes, welche Sprache - wenn nicht JS, Go oder Rust, müssen sie ihre eigene libp2p-Implementierung schreiben. (Vielleicht gibt es eine Möglichkeit, die Go/Rust-Versionen als Bibliotheken zu verwenden)"
"Dann sind die kniffligen Teile:
Als absolutes Minimum, wie er es sieht:
"Wenn in der Implementierung Go, Trie ist, können sie tatsächlich die Ethereum-Version nehmen und "nur" blake2 und den Parity-Codec einwerfen."
Für diesen Zuschuss suchen wir auch nach dem Konsensteil .
Hallo, habe gerade das Formular für die C++-Implementierung ausgefüllt.
Hallo, habe gerade das Formular für die C++-Implementierung ausgefüllt.
Empfangen! Danke! @Yuvasee
Das Bewerbungsverfahren ist noch offen. Wir werden noch ein paar Bewerbungen entgegennehmen, bevor wir eine Entscheidung treffen.
Wussten Sie schon von unserer W3S-Konferenz? Ab sofort sind ermäßigte und kostenlose Eintrittskarten erhältlich:
https://medium.com/web3foundation/endowing-an-open-inclusive-community-at-web3-summit-3013456f4f84
Hallo zusammen, wir hatten einige Fragen zum Entwicklungsprozess und dachten, es wäre gut, die Antworten mit allen zu teilen.
Inwieweit ist die vorliegende Implementierung eine Referenz?
Eine eigenständige Umsetzung wird angestrebt? Ist es in diesem Fall in Ordnung, wenn die neue Implementierung auf der Rust-Implementierung von Substrate basiert?
Bessere Leistung wird angestrebt? Wenn ja, was sind die Anforderungen/Symptome, die wir verbessern/heilen möchten?
Bessere Portabilität für mehrere Plattformen?
Gibt es einen Grund für die Bevorzugung von Go?
Können wir eine vorhandene WASM-Implementierung wiederverwenden?
Müssen wir auch die native Ausführung oder nur den WASM-Interpreter implementieren?
Existieren formale Spezifikationen oder Akzeptanztests oder könnten diese in einer ersten Phase des Projekts entwickelt werden?
Gibt es eine formelle Frist?
In welcher Form ist ein Stipendium zu beantragen und an wen ist der Antrag zu richten?
Wer gibt das OK / entscheidet am Ende über den Förderantrag?
In Bearbeitung befindliche Spezifikation: https://github.com/w3f/polkadot-re-spec/blob/master/polkadot_re_spec.pdf
Wir haben ein Interesse daran, diese Bemühungen zu unterstützen, indem wir eine minimale Portierung der Implementierung des Parity-Codecs und aller anderen Rust-Module mit der Idee durchführen, das Schreiben einer Laufzeit in Go zu unterstützen. Also keine vollständige alternative Implementierung.
Diese Aufgabe wird natürlich von dem Team übernommen, das für die vollständige Go-Implementierung ausgewählt wurde. Ich wollte also sehen, ob es eine Möglichkeit der Zusammenarbeit gibt, oder, wenn überhaupt keine Arbeit begonnen hat, vielleicht ein Stipendium für einen engeren Arbeitsbereich beantragen?
Hilfreichster Kommentar
Hallo, unser Team war während der Blockchain-Woche in Berlin und hatte eine unglaubliche Zeit, Leute aus dem Parity-Team kennenzulernen. Wir zeigten Interesse daran, eine Implementierung des PRE in Go zu schreiben. Ich werde den Antrag in den nächsten Tagen ausfüllen. Danke!