WordPress to Explore Using GitHub Codespaces for Improving Contributor Experience

WordPress lead developer Helen Hou-Sandí has proposed using GitHub Codespaces to improve the contributor experience. GitHub recently announced the availability of GitHub Codespaces, its quick launch cloud-based developer environment, for all users, with 60 hours free per month for Free users and 90 hours for Pro users. Codespaces makes it possible to launch any GitHub repository in a single click.

image source: GitHub.com

“I’m looking to make wordpress/wordpress-develop usable in GitHub Codespaces with an initial target audience of folks getting started with contributing to core on a Contributor Day,” Hou-Sandí. “This seems to mostly be a matter of making decisions about our container setup(s).”

Getting a development environment up and running can be one of the most time-consuming aspects of attending a contributor day, especially with slow wi-fi. Hou-Sandí recently experienced this at the 2022 WordCamp US Contributor Day.

“This experience reminded me that as a project we should take a look at making it ever-easier to contribute to WordPress, and a remote development option is a good thing to have in our toolkit,” she said. “This allows contributors to get started with minimal setup and without the requirement of a desktop/laptop – you could patch and test WordPress from a tablet or your phone.”

Hou-Sandí has been working with Codespaces for nearly two years. In her 2021 WCUS presentation titled “A voice for the new White House administration with the block editor,” she surprised the audience with a live demo of the architecture of a custom block using Codespaces. The recording, which tours some of the work she and her team did on the 2020/2021 Biden/Harris whitehouse.gov website, is a good example of how Codespaces can be a helpful tool for WordPress development.

WordPress developers responded positively in support of using Codespaces to improve contributor experience and many are eager to help on the project and test when it’s ready.

Gutenberg engineer Riad Benguella said having a built-in online development and testing environment would be “a great addition to the WordPress and Gutenberg repositories.”

If using Codespaces can reduce the friction and help people get set up with a development environment in a matter of minutes versus hours, it would significantly improve the productivity at events dedicated to contributing.

“I believe this will help not only new but all contributors,” WordPress developer Tung Du said. “To me, using Codespaces to review PRs is such a great experience.”

“Besides, adding Codespaces support also means adding devcontainer support, which makes it way easier to set up the local development environment for contributors who use VS Code.”

GitHub’s limit of 60 free hours may also be used up by developers in their own projects so there may still be the need for tutorials on using other local development methods. For the occasional Codespaces user, it’s tough to beat the convenience of spinning up a development environment in seconds.

“I love this even for contributors who aren’t new,” Scott Kingsley Clark said. “I personally would find this very handy as it removes another roadblock towards contributing. I’m all for it, I can’t wait to give it a try once it’s ready for testing.”

11

11 responses to “WordPress to Explore Using GitHub Codespaces for Improving Contributor Experience”

  1. Thank your for this great article – its very inspiring!!!

    btw: Every year that goes by as a developer. I’m continually mind blown by the incredible tools that are made just for us tech geeks to use.

    well – in other words: It’s an entire incredible world of genius software implementations that normies might never hear about. Is so awesome. Thank you for sharing the ideas and thoughts.

    @Sally: You don’t have to love the company to love the project.
    And yes: VScode is one of the most widespread used Editor – and its also hosted on github..

  2. Is difficult to me understand why WordPress, a platform that advocates for free software, is using more and more propietary solutions and encouragin others to do the same…

    VSCode and Codespaces are closed products that, IMHO, harms users freedom and polute open source ecosystem. I think Auttomatic must to make an effort to keep itselfs on a open source and GPL basis.

    https://github.com/Microsoft/vscode/issues/60#issuecomment-161792005

    • Actually, as I mentioned in my replies to Helen that are other options that could also be explored, like GitPod, to provide flexibility. In the end I don’t see how making the availability of using these products easily with WordPress harms anyone, as it actually makes it easier for people to get involved, and less frustrating if things will just work out of the box. And to be clear the goal is not to abandon all traditional forms of contributing, it’s about providing choice and reducing the friction of contributing. Many have chimed in and indicated how on contributor days at WordCamps many waste half of their day just trying to get a working environment setup to contribute. Simplifying and reducing that complexity is the right goal.

      • I agree whit the point of keep ways to contribute as simple as possible but I don’t see how Codespaces can simplify this.

        The main concern about VSCode (and I suspect could be the same scenario for Codespaces) is tracking, that is main reason why Microsoft changed MIT license to EULA on his release of VSCode. Also, doing this they close the possibility of choose independent plugin repositories to extend your editor in the way you could decide.

        Not to mention the fact that we can not tweak our editor instace and add anything we need bypassing Microsoft’s verification due that license. Of course they will argue is a security functionality, but Microsoft record makes me suspect is not the only reason.

        I become a WordPress developer because GPL license granted me the freedom of do anything with the code without paying for certifications or closed APIs or SDKs. This kind of licenses (I mean EULA) maybe not harms me directly but are contributing to create more walled fields that keeps me inside wile keeps newcomers outside asking for permission to enter. Sad part is that they do this wile take profit of code contributions from around the world.

        Privacy and freedom of use and modification is the basis of Open Source and Free Software and this kind of products seems try to bypass this. Of course they aren’t the only ones do that.

        • Again, I would point out that supporting Codespaces doesn’t mean that anyone is required to use it. If you do not want to use it because of the items you’ve pointed out that is fair and you are still free to use another development solution. As I’ve mentioned GitPod is also an alternative that uses the open source, non-MS tracking version of VSCode which is also something I’d advocate supporting as well. In the end reducing the barriers to contributing is the goal. Keeping things open and optional are the way to go. Keeping things rigid, inflexible, and a pain to get going for a new contributor doesn’t help anyone.

Newsletter

Subscribe Via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.