Culture / Development / Security

This Week in Programming: What’s Not on GitHub’s Roadmap

1 Aug 2020 6:00am, by

In a move that perhaps follows in the footsteps of its (relatively new) owner Microsoft, GitHub offered up a public roadmap this past week, which the company says is “designed to give your team more information about what features and functionality you can expect from GitHub over the coming quarters.”

The GitHub public roadmap is made available as a public repository, with a project board showing upcoming releases and where they are in their current incarnation, as well as product SKU and deployment model. All features will also be tagged with a particular “feature area,” such as collaboration or security, so you can more easily filter and search.

Given the sneak peek into where one of their most often used products was headed, many set out to pore over the roadmap and see what exciting new features were planned but yet to arrive. While there are 54 future features or releases currently on the roadmap, with things like GitHub Discussions, the general availability of GitHub Codespaces, or auto-merging of pull requests, for some out there it was what wasn’t on the roadmap that was more interesting than what was.

It has been almost a year now since the company first faced a backlash from its users over a $200,000 contract with the U.S. Immigration and Customs Enforcement (ICE) department, and a brief perusal of the response to GitHub’s roadmap on Twitter shows that many are still focused on the issue. Of course, this sort of thing wouldn’t be something to include on a product roadmap and it simply offers an excuse to needle the company over what many see as an obvious ethical violation.

Meanwhile, others point out the lack of support for IPv6 as a key technical feature that is sorely missing from the current roadmap. The caveat, of course, is that the roadmap is still in its early stages and that GitHub even acknowledges that “the public roadmap isn’t exhaustive” and that the company will continue to share news of new features via “forward-looking product announcements at major events or in the occasional blog post.”

On the issue of IPv6, there has been no immediate response from the company. Another feature that is missing from the roadmap, however, is that of the always-cited and long-awaited holy grail of any developer offering, dark mode. On this point, GitHub CEO Nat Friedman took the time to comment on its absence, writing that “Dark mode is coming. The foundational work we are doing first is to replace all our custom HTML and CSS with components that are more readily themeable. This will also help us improve accessibility, and help us replace our mobile web site with a fully responsive UI.”

This Week in Programming

  • GitHub Moves to Tokens for Authentication: While we’re talking on the topic of GitHub, there are just a  couple more tidbits to mention before moving on. First, the company will be requiring token-based authentication for API and Git operations starting Nov. 13, 2020, when authenticating with the REST API and for all authenticated API operations on GitHub.com. GitHub Enterprise Server and GitHub Apps will not be affected by the change, but the company will also require the use of a personal access token, OAuth token, or SSH key for all authenticated Git operations “at a future date” — likely some time in mid-2021, they write.
  • GitHub’s OpenAPI Description: Next, GitHub has introduced an OpenAPI description of its GitHub REST API, which it notes has been revised just three times in the 12 years “since it was first released, only a month after the site was launched.” The description essentially opens up access to the API without the need to first read documentation or understand the implementation, and the company writes that this description contains more than 600 operations, can be explored visually via a Postman Collection, and “can be used to generate mock servers, test suites, and bindings for languages not supported by Octokit.” Buyer beware, the description is currently in beta.
  • Git Takes a Step to Move Beyond “Master”: Lastly, GitHub offers some highlights from the release of Git 2.28, which offers a new functionality that takes a step toward getting rid of that old naming convention of “slave” and “master.” Now, when you initialize a new Git repository with git init, you can set an alternative name to replace “master.” For context, the Software Freedom Conservancy provided a statement last month on the decision, writing that this change is being taken “as a first step,” with the change becoming the default currently undergoing discussion. Naming conventions aside, Git2.28 also brings with it a few more changes, which are detailed in the announcement email.
  • Python Leapfrogs Java to #2: The twice-yearly release of the RedMonk programming language rankings is upon us and although to no surprise, JavaScript still holds the number one spot, the big news this time around is that Python has sped past Java to take the number two position. In actuality, they write that Python didn’t move at all, but rather that Java fell a spot, with Python becoming “the first non-Java or JavaScript language ever to place in the top two of these rankings by itself.” Overall, they say that the rankings saw very little change, but one other notable movement did occur, with Rust moving up to break into the top 20.

Feature image by david latorre romero on Unsplash.

A newsletter digest of the week’s most important stories & analyses.