It is a joy to build command-line tools that are not only easy to learn, but that other developers are willing to maintain. Often a team's engineering efforts are spent on the backend, while the cli doesn't receive the same level of attention. This can result in hard-to-test tools, and dumping maintenance of them to whoever most recently joined the team.
Learn how to take full advantage of popular Go libraries, structure your Go code to improve reuse and testability, publish binaries, and of course design your commands to be user friendly.
Go’s reputation for having a great community often precedes it. At the same time figuring out how to contribute and influence upstream Go is intimidating. A band of plucky gophers are working together to change that, clearing the way for more community involvement, and I want you to join us!
Everyone says how welcoming the Go Open Source Community is, but it can still be a bit intimidating and overwhelming when you first join. Led by Carolyn Van Slyck, during this full-day workshop you’ll learn how to become a valued contributor and member of any open source community.
Carolyn shares how Write/Speak/Code kicked her career into high-gear and inspired her to double-down on paying it forward. Follow her journey from an underpaid, unknown developer to a well-respected international speaker and community leader, working 100% on open source at Microsoft.
Learn how to add custom commands to kubectl and write your first plugin. If you have written a bash script that extracts data from kubectl output, then you are already halfway there! Plugins can add powerful new commands to interact with Kubernetes, saving you time and keystrokes. This session will showcase lessons learned from our development of a kubectl plugin for the Kubernetes Service Catalog.
Whether you are a Kubernetes user looking to script common commands, a developer building custom Kubernetes resources, or a provider looking to encapsulate specific functionality for your users, come learn how to write your own custom commands using kubectl plugins.
Have you been thinking of getting into Open Source but aren’t quite sure where to start or what to expect? Together we will discuss the ins and outs of getting into, and sticking with, Open Source Software:
- Why would you contribute?
- Who should you contribute to?
- Where can you help?
- How do you start?
- What should you do next?
We will be tackling some of the great philosophical questions of our time:
- What is Docker?
- Why would I use it?
- Can I still do it if no one at my company is doing the Dockers?
- What are some fun things I can do with Docker and Go?
The GoTimeFM crew and I chat about welcoming our Windows Gopher brethren into the Go Community, how I became a maintainer for dep (the Go Dependency Manager), and my adventures running a my little pony themed bare metal Kubernetes cluster.
The upcoming Go dependency manager, dep, is ready for you to try out! Learn how to get started with dep, whether you are used to go get or another dependency manager.
You may not realize it but there are a lot of Windows developers moving into your neighborhood. They are using and contributing to open source projects, even those that aren’t just for Windows. But here’s the rub: Often tools are written Unix first”, shoehorning Windows support in later. This approach can shut out potential users.
Lucky for us, Go has strong support for cross-platform development. So let’s start writing cross-platform first and welcome our Windows neighbors. Learn some of the Windows quirks that you should take into account, and the Go goodies to help you conquer them.
There is much more to Docker than just deploying your flagship application. Carolyn VanSlyck, Ash Wilson, and Nick Silkey look at three use cases for Docker that go beyond the typical software development pipeline:
- The Rackspace Cloud DNS product team is running a Hubot-based ChatOps bot on Carina to automate routine operational tasks in the open via a team-based chat. The team successfully migrated this service from another provider into Carina in under an hour from start to finish, including a datastore migration. (Nick Silkey @ 2:55)
- Rackspace’s developer documentation is open to external contributors and has streamlined the editing process with a staging environment that previews the full site on-demand for pull requests. All of its infrastructure is hosted within Docker containers, managed by Ansible, on a CoreOS cluster. (Ash Wilson @ 13:57)
- How to Whale is teaching Docker with zero setup from the comfort of your web browser. Every user has an interactive sandbox, courtesy of JupyterHub, which spins up a Jupyter server on the user’s own Docker Swarm cluster. (Carolyn Van Slyck @ 24:32)
You’ll leave knowing how you can use Docker on the side, even if you haven’t tackled Dockerizing your application.
Jupyter is an exciting tool, empowering you to quickly dive into the fun parts of whatever problem you are solving. With it, you can do so much more than just your research. By combining JupyterHub with Carina, you have a learning platform, perfect for leading a workshop, trying a new language or just playing around with code. It provides push button user notebooks, where each user is not only isolated from others, but they are running on their own compute resources and can hit the “reset” button at any time to start fresh.
Learn how howtowhale.com uses JupyterHub and Carina to teach Docker, with zero setup and immediate results. With these essential building blocks, you too can create the ultimate learning environment.
A lightning fast introduction to Carina by Rackspace, which provides Docker Containers as a Service. Learn how to “think above the whale” and start doing the Dockers in just a few easy commands.