Chris Bargmann

Talk: A Glimpse into Golang: DevFest Hamburg 2022 Workshop Recap

I recently led a beginner workshop on Go (Golang) at DevFest Hamburg 2022, aiming to introduce the fundamentals of this powerful language to a new audience. It was a thrilling experience to dive into Go’s syntax, advanced features, and practical applications with fellow enthusiasts. Here’s a snapshot of what we covered.


Starting with Go

We kicked off by addressing the basics: how to execute Go code. Whether you have Go installed, prefer using the Go Playground online, or the Go Docker Image, there’s a way for everyone to get their hands dirty with Go code.

Session Breakdown

We delved into Go’s basic syntax covering constants, variables, loops, conditions, types, functions, and package management—all within 45 minutes. The aim was to build a solid foundation that participants could build upon.

In the next 45 minutes, we explored more complex aspects of Go, including zero values, pointers, arrays, slices, maps, and concurrency among others. This session was designed to showcase the depth of Go and its capability to handle modern software development needs effectively.

The final session was all hands-on deck. Participants learned about the Go tool, Go Modules, and crafted their first applications ranging from a simple “Hello World” to a “Simple Http Server”. We also covered testing and error handling, rounding off with a comprehensive view of Go’s development ecosystem.

To support the learning journey, I recommended a few resources:

Engaging with the Basics

We started with constants and variables, learning how to declare and manipulate them. Loops and conditions were next, where we discovered how to control the flow of our programs. Understanding types and functions helped us see how Go organizes and executes code, making package management and imports clearer.

Zero values and type conversions revealed Go’s approach to uninitialized variables and type safety. We navigated through pointers, experiencing direct manipulation of variable addresses. Arrays and slices introduced us to Go’s data structures, leading to maps and structs for more complex data handling. The defer statement and concurrency models rounded off our exploration, highlighting Go’s powerful capabilities for modern development challenges.

By the end of the workshop, participants were equipped to use the Go tool and modules to build and manage their projects. We went through the process of creating basic applications, emphasizing the importance of testing and error handling in Go development.

Reflections and Next Steps

For those who joined us at DevFest Hamburg 2022, and for others who might be on their own Go journey, I hope this recap serves as a reminder of the foundational steps we took together.

The resources and examples from the workshop are available on GitHub.

Thank you to everyone who participated, making the Go workshop at DevFest Hamburg 2022 a great experience.

#Go #Talks