Athens and Go Modules Workshop


---- This class is only for women and other gender minorities. Thanks! ----

Come to hang out with other WWG, eat some food and learn all about modules!

6:00 Networking | Food (vegetarian options)
6:30 Workshop with Aaron Schlesinger:

Go dependency management has come a long way. When the language was first open sourced, there was very little support for versioned dependencies at all. Since then, we've seen several iterations of technologies that brought us to the new Go modules system. With modules, we have a new dependency management system built right into the Go tool, and all of us in the community have a standard way to fetch dependencies! This is great news 🎉

Modules are designed by the Go team and fit right into the Go CLI. Fetching dependencies is a simple "go get" away, and you can check in a file next to your source code, and everyone else will build your code with the exact same dependencies that you did - without using external dependency manager tools. That's a first for Go!

We'll learn all about modules, and then do a hands-on coding session where we integrate modules into a real project.

Then, we'll dive into the next exciting technology called module proxies, which make dependency management even simpler and more reliable. We'll learn about proxies and get familiar with the Athens project - a community-built proxy. Then, we'll do a hands-on coding session where we integrate the Athens proxy into the project we used before.

You'll walk away from this workshop knowing:
- How to do proper dependency management for Go projects
- What to expect with modules
- How to integrate them with your projects
- Why module proxies matter and what they can do for you
- What Athens is and how to integrate it with your project
- How to get involved with Athens

Check out

8:00 Q&A

Technical Requirements
- A fully working Go environment (Go 1.11 all set up)
- Docker

- a laptop
- laptop charger
- your passion for code!

For details, see the Athens Workshop repo:

About Speaker
Aaron is a developer advocate at Microsoft Azure and a core maintainer of the Athens Project ( Before Athens, he was a core maintainer and chair of the Kubernetes SIG-Service-Catalog ( and a contributor to various other projects in the Kubernetes community.

He has almost 15 years of software engineering experience ranging from frontend design to distributed data systems. He discovered Go around 2013 and hasn’t looked back. He lives in San Mateo, CA where he and his wife love to run up and down mountains together.

About our sponsor
Reactors are developer community hubs. The best in technical events & community networking & collaboration can be found here.
Microsoft Reactors are staffed by technical experts and event planning experts. They are also home base for our Cloud Developer Advocates (CDAs).

Microsoft Reactor is covering the cost of:
- Food
- Space

Read more about Microsoft Reactor