Dienstag, 28. Mai 2019

11. Juni: Game Development with SFML

Game Development with SFML 

von Lukas Dürrenberger

Die Simple and Fast Multimedia Library (SFML) bietet eine cross-platform API für Audiowiedergabe und -aufnahme, 2D Grafik Rendering, OpenGL Context und Window Management, Basic Networking, und mehr.
Nach einer kurzen Einleitung, können alle selber Hand anlegen und mit der Entwicklung eines kleinen Spiels SFML näher kennenlernen. Zusätzlich gibt es einige allgemeine Tipps und Tricks für die Spielentwicklung.
Lukas Dürrenberger ist Projekt Manager und einer der Hauptentwickler der SFML. Er bloggt auf https://dev.my-gate.net/ regelmässig über SFML und C++.

Agenda

  1. Begrüssung und Einführung
  2. Vortrag und Hands-on: "Game Development with SFML" von Lukas Dürrenberger
  3. Apéro

Ort

bbv Software Services AG, Blumenrain 10, Luzern, 1. Stock

Datum

Di. 11.06.2019, 19 - 21 Uhr (Anschliessend Apéro)

Mitbringen

Es sind alle herzlich Willkommen die gerne mit C++ programmieren. Egal ob Anfänger oder Experte.

Anmeldung

Erfolgt über die Veranstaltung unserer Xing Gruppe C++ Usergroup Zentralschweiz, über  den Meetup Event oder über das Kontaktformular auf dieser webseite.

"From SFINAE to Concepts"

Am 20. Mai gab Mario Konrad einem Dutzend interessierten Zuhörern C++ Geschichtsunterricht und erzählte anschaulich die Entwicklung der Sprache von SFINAE zu den Concepts die bald Bestandteil des C++ Standards sein werden. Die Slides und die Beispiele findet ihr in Marios Github Repo: https://github.com/mariokonrad/cppug-sfinae-concepts.


Sonntag, 28. April 2019

20. Mai: From SFINAE to Concepts

From SFINAE to Concepts. From C++98 to C++20 von Mario Konrad

C++ hat sich seit dem ersten offiziellen Standard 1998 stark verändert. Anhand kleiner Beispiele diskutieren wir die Evolution von SFINAE bis zu den Concepts im kommenden Standard. Wir haben dann auch die Möglichkeit selbst Hand anzulegen und Aufgaben zu lösen und diskutieren.

Agenda

  1. Begrüssung und Einführung
  2. Vortrag "From SFINAE to Concepts, From C++98 to C++20" von Mario Konrad
  3. Concepts Hands-On
  4. Apéro

Ort

bbv Software Services AG, Blumenrain 10, Luzern, 1. Stock

Datum

Mo. 20.05.2019, 19 - 21 Uhr (Anschliessend Apéro)

Mitbringen

  • Eigener Laptop mit C++ Compiler und/oder Netzwerkfähig zum Programmieren online (z.B. godbolt.org)
  • Wer mit einen nightly build des GCC mit Unterstützung von concepts spielen möchte: Laptop mit Linux und installiertem docker
Es sind alle herzlich Willkommen die gerne mit C++ programmieren. Egal ob Anfänger oder Experte.

Anmeldung

Erfolgt über die Veranstaltung unserer Xing Gruppe C++ Usergroup Zentralschweiz, über  den Meetup Event oder über das Kontaktformular auf dieser webseite.

Montag, 1. April 2019

9.April: Coverage Guided Fuzzing mit libFuzzer

Coverage Guided Fuzzing mit libFuzzer von Adrian Imboden 

Neben klassischem Testing wird mittlerweile immer häufiger Fuzzy Testing angewandt, um Fehler in Software aufzudecken. Wir werden zusammen den Coverage Guided Fuzzy Tester vom LLVM, libFuzzer (https://llvm.org/docs/LibFuzzer.html), anschauen und auch selber Hand anlegen.

Agenda

  1. Begrüssung und Einführung
  2.  "Coverage Guided Fuzzing mit libFuzzer" von Adrian Imboden
  3. Apéro

Ort

bbv Software Services AG, Blumenrain 10, Luzern, 1. Stock

Datum

Di. 9.04.2019, 19 - 21 Uhr (Anschliessend Apéro)

Mitbringen

  • Windows Laptop mit:
    - Visual Studio Build Tools (https://visualstudio.microsoft.com/de/thank-you-downloading-visual-studio/?sku=BuildTools&rel=15)
    - Visual C++ Buildtools installieren
    - LLVM 8.0.0 (http://releases.llvm.org/download.html)
  • oder Linux/Mac Laptop mit:
    - LLVM 8.0.0 (http://releases.llvm.org/download.html)
Es sind alle herzlich Willkommen die gerne mit C++ programmieren. Egal ob Anfänger oder Experte.

Anmeldung

Erfolgt über die Veranstaltung unserer Xing Gruppe C++ Usergroup Zentralschweiz, über  den Meetup Event oder über das Kontaktformular auf dieser webseite.

Sonntag, 3. März 2019

18. März: Coding Dojo

Nach einigen Vorträgen und Spezialveranstaltungen, machen wir mal wieder ein ganz normales Coding Dojo um TDD (Test-Driven Development) und Pair-Programming zu üben. Wir verwenden diesmal das Catch2 Testing Framework.

Agenda

  1. Einführung Coding Dojo, TDD, Pair-Programming und Catch2 nach Bedarf
  2. Paarweise TDD mit Catch2 üben
  3. Präsentation und Diskussion der Vorgehen
  4. Apero

Ort

bbv Software Services AG, Blumenrain 10, Luzern, 1. Stock

Datum

Mo. 18.03.2019, 19 - 21 Uhr (Anschliessend Apero)

Mitbringen

  • Eigener netzwerkfähiger Notebook mit installiertem Browser. Es ist keine IDE und C++ Toolchain nötig. Wir programmieren im Browser.
  • Spass, Mut und Enthusiasmus
Es sind alle herzlich Willkommen die gerne mit C++ programmieren. Egal ob Anfänger oder Experte auch wenn ihr TDD, Pair-Programming oder Catch nicht kennt.

Anmeldung

Erfolgt über die Veranstaltung unserer Xing Gruppe C++ Usergroup Zentralschweiz, über  den Meetup Event oder über das Kontaktformular rechts. 

Wir freuen uns auf dich.

Mission Impossible auf tech.io

Den wunderbaren Workshop von Adrian Imboden aus dem letzen Meetup findet ihr unter
https://tech.io/playgrounds/41564/mission-impossible-how-to-create-datatypes-which-cannot-contain-invalid-state/introduction-2

Ein grosses Dankeschön nochmals an Adrian für den tollen Event.

Und hier noch ein Link zu einer Erklärung zum overload Pattern das im Workshop vorkam: https://www.bfilipek.com/2019/02/2lines3featuresoverload.html
 

Mittwoch, 30. Januar 2019

12. Feb.: Mission: Impossible X

Mission: Impossible X or "Make impossible states impossible"

Drehbuch und Regie: Adrian Imboden
Produzent: C++ Usergroup Zentralschweiz 
FSK: 16  

"Viele Datenstrukturen in C++ welche in der freien Wildbahn anzutreffen sind erlauben eine Vielzahl von ungültigen Zuständen, welche der Entwickler dann beim Lesen und Bearbeiten von Code jederzeit im
Hinterkopf haben muss, z.B. mehrere boolsche Variablen, welche in gewissen Kombinationen nicht auftreten dürften.

An einigen Beispielen werden wir sehen und selber ausprobieren, wie assert-Minenfelder und kognitive Zustands-Überlastungen mittels "modernem" C++ vermieden werden können.
C++ hat seit C++14 Einiges von den funktionalen Sprachen abgeschaut, welche diese Konzepte schon länger einsetzen.
Konkret geht es um std::optional, std::variant und co., so wie deren Anwendung."


Agenda

  1. Begrüssung und Einführung
  2.  "Mission: Impossible X" von Adrian Imboden
  3. Apéro

Ort

bbv Software Services AG, Blumenrain 10, Luzern, 1. Stock

Datum

Di. 12.02.2019, 19 - 21 Uhr (Anschliessend Apéro)

Mitbringen

  • Eigener netzwerkfähiger Notebook mit installiertem Browser. Es ist keine IDE und C++ Toolchain nötig. Wir programmieren im Browser.

Es sind alle herzlich Willkommen die gerne mit C++ programmieren. Egal ob Anfänger oder Experte.

Anmeldung

Erfolgt über die Veranstaltung unserer Xing Gruppe C++ Usergroup Zentralschweiz, über  den Meetup Event oder über das Kontaktformular auf dieser webseite.