Meetup #18 took place May 25, 2021 19:00 CEST, and was virtual again. We continued the data and storage supertopic for this year had a lightning talk called Seeking Data.
We looked at a few patterns when working with data, e.g. I/O considerations, what kernel hackers think about the memory hierarchy, working with large scale data at rest, or how to speed up container startup times (via lazy pulling).
- We learned about Concise Encoding and hope to do a deep dive on this topic in a future meetup.
- Technologies, which are widespread, despite some flaws, are hard to replace, e.g. JSON might have issues, yet it is widely used and has lots of tooling around it (might be an instance of Worse is Better).
- Fuzzing is an interesting topic, and many tools are written in Go, e.g. ffuf, a fast web fuzzer written in Go.
- For autoincrement URL snooping, you can use urlbisect.
- Go is not a classic functional programming language, but it supports function types (Walkthrough: First-Class Functions, Function types), which will allow for some higher order programming.
- How to structure Go projects? It will depend. There is not one standard layout. Start small and then extend as needed. Some people enjoy putting old-school Makefiles in their project root as well.
- Testing strategies in Go: classic Table-Driven Tests, Test Containers (example: testing esbulk against a few major versions of elasticsearch).
- ORM seems to have fallen out of favor a bit; switching databases is not that common after all, so why not start with some lighter helpers like sqlx, or specific database libraries.
Upcoming 1-day Go workshop
There will be an online, 1-day workshop on Go at Spartakiade 2021, a developer-centric community conference (not free, but with nice variety of topics plus a bag of conference swag). The Go workshop will be a condensed overview of the language - feel free to join!
Thanks everyone for dropping by - great to see people join from across Europe and the globe!
Join our meetup to get notified of upcoming events!