Using GitHub Codespaces to Improve Volunteer Experience

November 02, 2022

GitHub offers a cloud software development environment called codespaces. After seeing new volunteers at Code for Boston struggle with setting up a new Ruby on Rails web application, I decided to try something to make it easier. I setup codespaces to provide a one click way to create a working development environment.

Why It Matters

Even with developers experienced with backend software engineering, getting their development environment setup was taking a lot of effort.1 Many folks started showing up with Microsoft Windows which I lack the expertise to help get working with Ruby. The pre-work required to get up and running is discouraging and frustrating to new folks that just want to focus on writing code.

What Worked Well

  • With only basic Docker knowledge and experience I was able to setup the Codespace environment in under an hour.
  • The documentation is well written.
  • The VSCode Editor is fully featured and easy to use.

Challenges

  • Setting up and debugging the initial container did not take long but you spend lots of time waiting to rebuild the container with each change. 😴
  • I love Instant Wake on my Mac so waiting for a codespace to boot up feels like a step backwards.
  • VSCode’s built-in git version control tool has an awkward user interface and experience.
  • GitHub unfortunately leaves Ruby on Rails out of their default documentation.

Go Deeper

Want to get posts like this in your email?

This work by Matt Zagaja is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.