What we’re about
Hi, we working on next meetup. We need more speakers and topics. If you can speak on meetup contact me on gopher slack #prague-meetup or send email to ladislav@prskavec.net directly. After I get 3 topic and speakers I will announce next meetup.
---
A meetup group to discuss the Go Programming Language.
(from golang.org)
The Go programming language is an open source project to make programmers more productive. Go is expressive, concise, clean, and efficient. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel type system enables flexible and modular program construction. Go compiles quickly to machine code yet has the convenience of garbage collection and the power of run-time reflection. It's a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language.
Upcoming events (1)
See all- Go Meetup #16Livesport s.r.o., Praha-Praha 13
Hosted by Livesport
Talks will start 18:30Talk 1: Felix Geisendörfer (Datadog) - How to Win Frames and Influence Pointers
Go’s execution tracer (aka go tool trace) has suffered from high overhead since its inception in 2014. Historically this has forced potential users to worry about up to 20% of CPU overhead when turning it on. Due to this, it's mostly been used in test environments or tricky situations rather than gaining adoption as a continuous profiling signal in production.
This talk will explain the contributions we made to the Go 1.21 release that reduced this overhead to less than 1% for most applications using frame pointer unwinding. It will discuss the technical challenges we faced, the collaboration with the Go runtime team at Google, and how Go users can benefit from this work and improve the performance of their own applications.
Last but not least we’ll discuss other exciting improvements of the execution tracer in Go 1.22 and beyond.Felix Geisendörfer is a Senior Staff Engineer at Datadog where he works on Continuous Profiling and contributes to the Go runtime. Before that he was working at Apple, co-founded Transloadit, contributed to node.js and inspired a generation of mad scientists to program flying robots with it. He is also a father, open source contributor, beach volleyball player, and giver of questionable advice on the internet.
Talk 2: Jan Wozniak (Kedify) - Refactoring Open Source Project: KEDA Scaler Parser
KEDA, or Kubernetes Event-Driven Autoscaling, is an open-source project written in Go that enhances Kubernetes with flexible autoscaling capabilities. Like every large codebase with many contributors, there are plenty of opportunities for improvement. One area in need of refinement was the processing of scaler configurations.
There are 64 supported scalers in KEDA, with almost each one having its own unique way of parsing configuration. Together with the maintainers, the community, and a couple of enthusiastic contributors, we decided to refactor how the scalers' configuration parser works. This session will provide insights into the process of how KEDA transitioned from imperative spaghetti code to a declarative package leveraging Go reflections.
Jan is a software engineer who enjoys open-source technologies with a focus on networking and storage. He has contributed to and helped maintain various components of the Kubernetes ecosystem.
References:
* https://github.com/kedacore/keda/issues/5037
* https://github.com/kedacore/keda/pull/5676Talk 3: Tomáš Karela Procházka (Dataddo) - Implementing SSH Server in Go
Have you ever needed to implement an SSH server in Go? No? Well, we have. And it was easier than we thought. At the beginning, we were scared to implement an SSH server without prior knowledge. We knew we would use Go because it’s our tech-stack language. PHP was out of the question. Thanks to the `github.com/gliderlabs/ssh` wrapper of the `golang.org/x/crypto/ssh` package, we were able to implement the SSH server easily, just like an HTTP server. Although you may never need to implement an SSH server, it’s a great way to learn how the SSH you use daily works. This talk will walk you through the basics of the SSH.