Cover Image

RethinkDB #2 - Count

Wie schon in meinem letzten Beitrag zum Thema RethinkDB RethinkDB #1 — Update, hier Teil #2. Diesmal zähle ich Datensätze, die ein bestimmtes Kriterium erfüllen. Wieder in Go, wieder auf einer RethinkDB, wieder hatte ich keine Ahnung. Die Datenstruktur { "Id": "fe049091-2287-4949-bb22-1a9eca6838b7", "Users": [ { "uuid": "f7740b68-2989-4e77-b551-d44e774ac2bb", "username": "yolo", "voting": 0 }, { "uuid": "a3bb02fb-c340-4615-bd6a-006b7aace39e", "username": "marci", "voting": 0 }, { "uuid": "a03d5fd7-3c8b-460a-a65a-eeed21ce13fb", "username": "QA", "voting": 0 }, { "uuid": "f7740b68-2989-4e77-b551-d44e774ac2bb", "username": "yolo", "voting": 0 } ] } Daran hat sich zum letzten Mal nichts geändert....

August 27, 2020 · 2 min · marcel
Cover Image

RethinkDB #1 - Update

Aktuell entwickle ich eine Webanwendung, die über Websockets mit dem Backend kommuniziert. Auf der Suche nach einer passenden Datenbank dafür, bin ich neben den üblichen Verdächtigen wie MongoDB, CouchDB, … über RethinkDB gestolpert. Die Marketing-Texte laßen sich gut, einen passenden Go-Treiber gabs auch. Ich war überzeugt davon, das die neue Datenbank mal auszuprobieren. Eine nette Web-UI frei Haus und die einfache Möglichkeit, das Ding im Cluster zu betreiben waren schöne Goodies....

August 26, 2020 · 2 min · marcel
Cover Image

Mit GitHub Actions Docker Container bauen

Schon länger bietet GitHub die Möglichkeit eine CI/CD Pipeline aufzusetzen. Ähnlich der Möglichkeiten von GitLab CI. Nur statt der Ausführung auf dedizierten Maschinen a la GitLab Runner, laufen die Actions getauften Jobs direkt in der Cloud. Für ein aktuelles Projekt, habe ich diese Actions mal ausprobieren wollen. Mein Use Case beschränkt sich momentan nur darauf, meine Go API in ein Docker Image zu packen und dann ins Docker Hub zu veröffentlichen....

August 2, 2020 · 2 min · marcel
Cover Image

Zwei-dimensionale Arrays mischen

Heute stand ich vor der Aufgabe ein zwei-dimensionales Array, gefüllt mit Strings, zu mischen. Hintergrund: in dem Array stecken Fragen, die bei jedem Request in anderer Reihenfolge zurückgegeben werden sollten. Nach kurzer Recherche fand ich einen passenden Algorithmus: den Fisher-Yates Shuffle. In erster Ausbaustufe eher für eindimensionale Arrays gedacht, habe ich es aber schnell adaptieren können. Natürlich in Go für meine kleine Go-API. func (a *App) shuffle(bingo *[4][4]string) *[4][4]string { for i := len(bingo) - 1; i > 0; i-- { for j := len(bingo[i]) - 1; j > 0; j-- { m := rand....

July 29, 2020 · 1 min · marcel
Cover Image

AWS CLI einrichten

Irgendwann kommt man an den Punkt, an dem man es Leid ist alle Services über die AWS Console einzurichten. Dann ist der Zeitpunkt gekommen, von der UI auf die Konsole umzusteigen. Und wie man das konfiguriert, zeige ich hier als Beispiel unter MacOS … 1. AWS Zugriffsschlüssel erzeugen Als erstes sollte man einen Access Key und entsprechendes Secret in seinem AWS Konto anlegen. Damit ist es später möglich, sich über das CLI zu authentifizieren und zu autorisieren....

December 29, 2019 · 3 min · marcel