Mittwoch, 9. September 2020

October Talk: Markus Klemm "The reality of C++ combined JavaScript for modern GUI development"

Hello to all C++ followers,

Fortunately Markus jumped in to give a talk in October.


While native nodejs modules are nothing new and web based GUIs are getting used in domains that were considered reserved to native non garbage collected languages, as the recent SpaceX spacecraft control UIs for example, little knowledge seems to be shared about the pitfalls and required learnings for actual scaled down application development in this mixed environment.

This talk focuses on the learnings and code based on a small real productive project which uses C++ for USB device control and core application logic combined with react and electron for responsive, default good looking GUIs as presentation layer. From general project setup and build structure, encountered challenges, to needed and recommended C++ patterns, C++20 outlook, up to JavaScript i.e. web ideas that might be a worthy consideration for future library and language development. Unpleasant but solved surprises included.

We will use Goto Meeting again. You will have the chance to ask your questions directly through chat or voice.

Date: Thursday, 8. October 2020
Start: 19:00
End: 21:00
Place: Goto Meeting

Please consider submitting your talk.


Sonntag, 12. Juli 2020

August Talk: Adam Tornhill "Behavioral Code Analysis in Practice: C++ edition"

Hello to all C++ followers,

For August we will have our meetup together with C++ Usergroup Karlsruhe.

Adam Thornwill will tackle understading legacy code bases with behavioral analysis methods. 


Many codebases contain code that is overly complicated, hard to understand and hence expensive to change and evolve. Prioritizing technical debt is a hard problem as modern systems might have millions of lines of code and multiple development teams — no-one has a holistic overview. In addition, there's always a trade-off between improving existing code versus adding new features so we need to use our time wisely. So what if we could mine the collective intelligence of all contributing programmers and start to make decisions based on information from how the organization actually works with the code?

In this presentation you get an introduction to behavioral code analysis which builds on version-control data to uncover the behavior and patterns of the development organization. A behavioral code analysis helps you prioritize the parts of your system that benefit the most from improvements, so that you can balance short- and long-term goals guided by data. The specific examples are from real-world C++ codebases like the .NET Core runtime, Protobuf, TensorFlow, and more. All analyses are completely automated and demonstrated using the CodeScene tool. This new perspective on software development will change how you view code.

We will try to use Goto Meeting again. You will get the chance to ask your questions directly through chat or voice.

Date: Wednesday, 12. August 2020
Start: 19:00
End: 22:00
Place: Goto Meeting (The URL will be here just before the meeting!)

We are looking for your talk submissions!


Dienstag, 16. Juni 2020

July Talk: Rainer Grimm "Concepts in C++20: An Evolution or a Revolution"

Hello to all C++ followers,

For July we will have online meetup together with C++ Usergroup Karlsruhe.
Rainer Grimm will give us his introduction to C++20 Concepts.
Photo of Rainer Grimm
The key idea of generic programming with templates is it to define functions and classes which can be used with various types. Often it happens that you instantiate a template with the wrong type. The result is typically a few pages of cryptic error messages. This sad story ends with concepts. Concepts empower you to write requirements for your templates which can be checked by the compiler. Concepts revolutionize the way we think about and write generic code. 
Here is why:
  • Requirements for templates are part of the interface.
  • The overloading of functions or specialization of class templates can be based on concepts.
  • We get improved error messages because the compiler compares the requirements of the template parameter with the actual template arguments.
However, this is not the end of the story:
  • You can use predefined concepts or define your own.
  • The usage of auto and concepts is unified. Instead of auto, you can use a concept.
  • If a function declaration uses a concept, it automatically becomes a function template. 
Writing function templates is, therefore, as easy as writing a function.
We will use Goto Meeting for our remote meetup. You will get the chance to ask your questions directly through chat or voice.

Date: Thursday, 9. July 2020
Start: 19:30
End: 22:00

We are looking for more talk submissions!


Montag, 18. Mai 2020

June Talk: Hendrik Niemeyer "Intro to C++20's Concepts"

Hello to all C++ enthusiasts,

Hendrik will use the opportunity to join our usergroup virtually and give us his introduction to concepts in C++20.
One of the biggest new features of C++20 are concepts. Concepts define requirements on template arguments which are enforced by the compiler. This leads to more readable code which clearly expresses intent. Error messages are improved since violations of the constraints defined by concepts can be detected in the early stages of the template instantiation.
This talked is aimed at people with little or no experience with concepts and will introduce generic programming with concepts (constraining templates, writing your own concepts and overloading functions which are constrained by concepts)
We will use Goto Meeting for our remote meetup. You will get the chance to ask your questions directly through chat or voice.

Date: Thursday, 11. June 2020
Start: 19:00
End: 22:00
Place: Goto Meeting (The recording on Youtube:

Please join before 19 o'clock. As we will start on time.


Montag, 27. April 2020

May Talk: Andreas Reischuck "Faster ►► C++ Meta-Programming"

Hello C++ Friends,

As we still cannot meet in person, we do another online meetup for May.
I will talk to you about faster meta programming with C++.
Please propose your talk for future possibly online meetups.
When we embraced meta programming in our application code we noticed a hit in compile times.
This started an ongoing journey to mitigate the negative effects, but retain the positives.
During this talk I will introduce the some motivations to run meta programming.
We will look at some compile time benchmark of basic meta programming constructs and discuss ideas to make them faster. With this foundation we take a look at real world use cases, like templated data containers. Hopefully we learn a lot and can make your code compile a bit faster.
We will use Goto Meeting again. You will get the chance to ask your questions directly through chat or voice.

Date: Wednesday, 13. May 2020
Start: 19:00
End: 22:00
Online: Goto Meeting

Please join before 19:00, so we can start on time.


PS.: We are looking for a talk in June!

Photo Credits:
* "fast" by Derren Hodson (modified: added text) - CC-BY

Sonntag, 22. März 2020

April Talk: Hendrik Sollich "Rust for C++ Developers"

Hello Fellow C++ Developers,

In April we will do an online only meetup to keep the physical distance.
Hendrik will give us an introduction to Rust for C++ developers.
Teaser (Deutsch)
Einer der Gründe für C++s Erfolg ist, dass es lange Zeit die einzige Wahl für Hochperformante Software war. Doch das Feld hat Zuwachs bekommen, mittlerweile kann man hochperformante Software auch in Rust schreiben. Doch was ist Rust für eine Sprache? Wie unterscheidet sie sich von C++ und wo liegen Gemeinsamkeiten. Was macht Rust besonders?
Teaser (English)
For a long time C++ was the only choice for high performance software, that was part of the reason for its success. But there are newcomers. Today you can develop high performance software as well in Rust. What what kind of a language is that? Is it that different from C++? What are the commonalities?
This time you will have to use your own food and drinks, sorry!
But you will be able to ask questions in the chat.

Date: Tuesday, 7. April 2020
Start: 19:00
End: 22:00
Place: Goto Meeting

Please join before 19 o'clock. As we will start on time.

Stay healthy and keep coding!

Donnerstag, 20. Februar 2020

März Vortrag Stefan Urlberger "Weiterpflegen oder neu entwickeln?"

Hallo an alle SoftwarepflegerInnen,

der Geschäftsführer Stefan Urlberger hat sich großzügig bereit erklärt unser Meetup im März erstmals zu hosten und nutzt die Gelegenheit gleich uns die ewige Dauerfrage bei langjährig eingesetzter Software zu beantworten: Weiterpflegen oder neu entwickeln?
Das Planungssystem Vi2000 für Ein- und Mehrfamilienhäuser ist seit über 30 Jahren in Entwicklung und bei über 2000 Kunden in Verwendung. Stefan gibt uns einen Überblick über die Entwicklung der letzten 20 Jahre, die er selbst mit begleitet hat und welche Weichenstellungen es aus welchen Gründen für die künftige Neu- und Weiterentwicklung der Plattform gibt. Zum einen beinhaltet das einen Rückblick auch in Hinblick auf Nearshoring-Versuche als auch einen Ausblick auf die Zukunft in Richtung Cloudplattform.
Für unser leibliches Wohl wird gesorgt. Bitte meldet euch an damit es für alle reicht: oder

Der Vortrag wird nicht aufgezeichnet.

Datum: Donnerstag, 12. März 2020
Start: 19:00
Ende: 22:00
Ort: Softwareparadies (SWP), Königsbrücker Straße 124, 01099 Dresden

Beste Grüße!

PS. Bitte ladet alle Softwarebegeisterten in eurer Umgebung ein!

Dienstag, 14. Januar 2020

February Talk: Jupp Mueller "High performance metrics instrumentation using prometheus-cpp"

Happy new year to everybody!

Fortunately, Jupp stepped in with a talk for our February meetup.
He introduce us to performance metrics in production services written with C++.
LogMeIn will host our meetup and provide food and drinks.
Gaining visibility into what happens in programs and collecting metrics is vital for ensuring software behaves as expected in the field. In this talk I'll present the open source prometheus-cpp library, which allows live collection of numeric time series data from inside your program and show how it is used at LogMeIn to gain insights into audio conferencing infrastructure with billions of audio minutes every month
Date: Wednesday, 19. February 2020
Start: 19:00
End: 22:00
Place: LogMeIn Germany GmbH, Ostra-Allee 9, 01067 Dresden


PS. Please talk to me about your talk proposals.