Applied Ethereum Workshop: Blockchain & Smart Contracts

 

Blockchain ist ein viel diskutiertes Thema in der Tech-Welt. Als Anwender lassen sich viele große Namen wie Walmart oder Ethereum nennen.

Applied Ethereum: Blockchain & smart contracts

Unter diesem Titel haben sich die Münchner Microsoft Student Partners Blockchain gewidmet. Im Juni luden sie zu einem Vortrag mit integriertem Workshop an der TUM in Garching ein.

Im Folgenden möchte ich mit Dir gerne meine ersten theoretischen und praktischen Erfahrungen teilen. Dabei werde ich zuerst etwas über Blockchain schreiben und dann zum praktischen Teil überleiten. Abschließend werde ich über die Theorie hinter smart contracts mit einem lustigen Beispiel berichten.

 

20180526_135053

 

Die Theorie hinter Blockchain

Blockchain ist einfach gesagt eine transnationale Datenbank, auf deren Einträge jeder lesend zugreifend kann. Verwendet wird hierbei eine append-only Datenstruktur. Dies bedeutet, wie der Name schon sagt, dass man Daten einfügen kann, jedoch nichts löschen oder ändern. In diesem Kontext wurden von Herrn Buchert auch Peer-to-Peer Netzwerke erwähnt. Der Sinn dahinter ist, dass jeder Netzknoten die volle „transactional database“ ( Blockchain) speichert. Man unterscheidet hierbei zwischen einem vollständigen Knoten und einem Teilknoten. Als vollständig werden diejenigen bezeichnet, welche die gesamte Blockchain speichern.

Das Hinzufügen einer neuen Transaktion läuft üblicherweise in 5 Schritten ab:

  1. Der Besitzer erstellt und signiert die Transaktion
  2. Die Transaktion wird zu einem vollständigen Netzknoten gesendet
  3. Die Transaktion wird durch das Netzwerk gestreut
  4. Der Miner baut die Transaktion in den Block
  5. Die anderen Knoten validieren den Block und fügen ihn in die Blockchain ein

 

Bekannte Marken/Dienste die Blockchain einsetzen sind Walmart, Ethereum oder Steemit.

Nach der ersten theoretischen Einführung freuten sich alle Teilnehmer auf die erste Kaffeepause. Nun hatte man die Gelegenheit sich über das MSP-Programm auszutauschen und ins Gespräch zu kommen.

 

20180526_141654.jpg
A coffee a day keeps the doctor away…

 

Praktische Anwendung

Die zu verwendenden Tools wurden von den Veranstaltern festgelegt. Genutzt wurde an diesem Tag Metamask, Remix IDE und Ropster Test Network. Metamask wurde verwendet, um einen Knoten zu haben über den man in die Blockchain schreiben kann. Remix fungiert als Entwicklungsumgebung für den Browser.

Der eigentlich praktische Part wurde von meinen MSP Kollegen per PowerPoint Schritt für Schritt erklärt.

 

PowerPoint
Auszug aus der Schritt für Schritt-Anleitung von Herrn Buchert

 

Ich hatte den Eindruck, dass alle Teilnehmer gut folgen konnten. Zudem sind die Veranstalter durch die Reihen gegangen, was meines Erachtens notwendig und wichtig war. Somit konnte jeder, der gerade nicht weiterkam, seine Fragen stellen.

Ziel war es einen eigenen smart contract zu erstellen. Nach ein paar Anlaufschwierigkeiten mit den Programm-Tools gelang dies den meisten Teams problemlos.

Smart Contracts

Wofür braucht man Bockchain smart contracts? Diese Frage wurde von einem der Teilnehmer zu Beginn der zweiten Hälfte des Workshops gestellt. Beantwortet wurde sie von Herrn Buchert auf folgende Weise: Smart contracts zeichnen sich durch viele positive Attribute aus, wie Geschwindigkeit, Transparenz und Präzision.

Als Sprache wurde Solidity vorgestellt, welche von Python, Javascript sowie C++ beeinflusst ist. Ein Contract lässt sich hier mittels Code in folgende Aspekte unterteilen.

  • State Variables
  • User definied types
  • Events
  • Custom function modifiers
  • Function definitions

Hierbei sei gesagt, dass die MSP’s die Erklärungen zu den einzelnen Punkten wirklich auf Anfänger-Niveau gehalten haben. Bei diesem Workshop stand das Mitkommen aller Teilnehmer und nicht die High-Level-Komponente im Vordergrund.

Um die Stimmung ein bisschen aufzulockern wurde ein lustiges Anwedungsbeispiel von smart contracts vorgestellt, welches ich Dir nicht vorenthalten möchte:

Name: „CryptoKitties“

KatzeSW

Problem, welches gelöst wird: Es gibt nie genügend Katzenvideos

Funktionsweise: Sammle, verkaufe und züchte Unmengen süßer Katzenbabies. Es wird MetaMask verwendet, um die Verbindung zu Blockchain zu generieren.

Smart Contract Verwendung: Generation 0 Kitties sind als smart contracts verteilt.

 

20180526_151213

 

Was sind Microsoft Student Partner?

„Die Microsoft Student Partner sind vor allem eines: technikverrückt. Sie haben Lust, sich über ihr Studium hinaus mit Technologie zu beschäftigen, dabei Qualifikationen für das spätere Berufsleben zu sammeln und sich ein Netzwerk aufzubauen.“ Zitat von der Microsoft-Website

So lautet die offizielle Beschreibung des Programms. Ich selbst würde uns MSP’s als Technik & KI interessierte Informatik-Studenten beschreiben, die gerne Tech-Vorträge und Meetups veranstalten. Diese Events sind so konzipiert, dass auch Nicht-Profis erfolgreich teilnehmen können und ein Kommunikations-Austausch zwischen den Teilnehmern stattfindet.