Lambda IT - Hackweek 2018

Publiziert am 07 Dezember 2018 unter News von Ilona

Auch dieses Jahr ist das ganze Team der Lambda IT für eine Woche nach Locarno in die «Hackweek» gefahren. Die Ziele der „Hackweek“ sind neue Technologien kennenzulernen, verschiedene Entwicklungskonzepte auszuprobieren oder einen Service oder eine App zu bauen.

Dieses Jahr gab es kein übergeordnetes Thema, deshalb sind die bearbeiteten Projekte auch sehr unterschiedlich. Nachfolgend eine Liste der Themen

Machine Learning

Erarbeitung von Grundlagen zu Machine Learning mit Tensorflow. Viele Übungen zu Datenmodellierung und Datenvorbereitung um gute Ergebnisse bei der Voraussage zu erreichen.

Das Ziel war ein Modell zu entwickeln um Betrugsversuche in einem Webshop früh zu erkennen.

Behavior Driven Development, BDD

Die Implementierung einer Applikation (Angular/Node/Mongo) mittels BDD führte zu einer soliden, testbaren und restrukturierbaren Codebasis.

Codeumstrukturierungen, welche die Funktionalität der Applikation beeinträchtigten, konnten sehr rasch durch gescheiterte Tests nachvollzogen und korrigiert werden.

Der Einsatz von BDD/TDD veränderte unsere Sichtweise auf die Art Code zu schreiben, da sie uns zwang, uns auf das wesentliche zu konzentrieren.

Die Entwicklung mittels Pair Programming machte sehr viel Spass und führte zu einem raschen Wissensaustausch sowie zu einheitlichen und raschen Resultaten.

Durch die intensive Beschäftigung mit der Testbarbeit von Komponenten, steigt das Verständnis für die verwendeten Bibliotheken und Frameworks.

Während der Entwicklung erstellten wir Codetemplates um das Schreiben von Unittests zu vereinfachen und zu beschleunigen.

Animationstchniken für Webseiten

Erstellen der neuen Firmenwebseite anhand einer Designvorgabe und Bulma CSS. Analyse verschiedener Scrollytelling Libraries und implementation einer Beispielanwendung auf der Firmenwebseite.

Uphill Conference App

Als Partner der Uphill Conf haben wir eine Angular PWA für die Konferenz erstellt. Die Applikation soll zum einen eine Agenda für die Teilnehmer generieren, zum anderen immer das aktuelle Slide Set erstellen und anzeigen um die nächsten Talks anzukünden.

Die Daten werden zentral mit Airtable (https://airtable.com/) verwaltet. Änderungen in den Daten führen automatisch zu Änderungen beim Benutzer.

 

Use of Functional Programming Approaches in Nodejs

Having had very good success with `fp-ts` and `io-ts` in our Frontend Applications, we decided to investigate how we can leverage these libraries in our Nodejs backends.

We found that using `fp-ts` `TaskEither` much more ergonomic in comparison to native Promises.

We also tried out using `io-ts` runtime types along with a Repository pattern implementation to validate the entities in a Mongo database.

The code for the Mongo Repository implementation will be open-sourced soon.