iTranslated by AI

The content below is an AI-generated translation. This is an experimental feature, and may contain errors. View original article
🐙

Productivity Weekly (2021-01-27 Issue)

に公開

Hello. I'm Hiraki-ba from the Productivity Improvement Team at Cybozu, Inc.

Our Productivity Improvement Team holds a weekly meeting every Wednesday called "Productivity Weekly," where we share tips and news discovered during the week related to improving developer productivity within the company.
This article is a compilation of the topics discussed during that meeting.

This is the 11th edition. You can find past articles here.

news

Access control for GitHub Pages - GitHub Changelog

https://github.blog/changelog/2021-01-21-access-control-for-github-pages/
It is now possible to set access permissions for GitHub Pages in GitHub Enterprise Cloud.

By setting the visibility to Private, viewing permissions are granted only to users who have access to the repository.
For example, in the case of a Private repository, only repository members can view the Pages. For an Internal repository, not only repository members but also members belonging to the Enterprise can view the Pages.
Additionally, organization administrators can apparently force Pages visibility to Private.

This will make it easier to publish static sites restricted to the organization on the internet.
However, as @teppeis mentioned in the tweet below, since it requires distributing GitHub Enterprise accounts to all employees, organizations that do not provide accounts to everyone may face the issue of information being restricted only to development-related members.
https://twitter.com/teppeis/status/1352435459910062081?s=20

https://github.blog/changelog/2021-01-25-npm-displays-links-to-definitelytyped-packages/
You can now check on the npm registry whether type definitions for an npm package exist as a type definition package (DefinitelyTyped package).
Last month, it became possible to see if type definitions are bundled within the package, and now you can also easily check for the existence of type definitions installed via @types/hogehoge.

Until now, checking whether the type definitions for a package you wanted to use existed as an external package was a hassle, so this will make it much easier.

GitHub Actions: Short SHA deprecation - GitHub Changelog

https://github.blog/changelog/2021-01-21-github-actions-short-sha-deprecation/
An announcement has been made that when referencing a GitHub Actions Action by SHA, short SHAs (e.g., actions/checkout@5a4ac90) will no longer be supported starting in mid-February.
Long SHAs (e.g., actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f) can still be used as before.
Since this is a breaking change, those who have repositories referencing Actions by SHA should take note.

Dependency review beta - GitHub Changelog

https://github.blog/changelog/2021-01-25-dependency-review-beta/
In the "Files changed" tab of pull requests, changes to dependencies are now easier for humans to understand. (Note: This is still in Beta.)
In addition to the changes themselves, it appears that the release date of the dependency, the number of projects using it, and vulnerability information will also be displayed.

I actually checked it out. I think it has become very easy to see how dependencies have changed. However, I couldn't find any items showing vulnerability information. (Perhaps an option is required? Since it's still in Beta and I couldn't find the documentation, I'm not sure.)

I believe this will make pull request reviews easier.

know-how

Improving how we deploy GitHub - The GitHub Blog

https://github.blog/2021-01-25-improving-how-we-deploy-github/
It seems that the number of developers for the GitHub.com application doubled in the last year alone[1]. However, as a result, the traditional deployment flow became overwhelmed, leading to a decline in developer experience and productivity.
This article introduces the background of how they decided to improve their deployment methods and the details of those improvements.

Ideas such as splitting canary releases into two stages to verify against more traffic while minimizing risk, and providing a deployment queue to reduce the time developers spend worrying about extra things, were very helpful references.
It makes me want to continue deploying even more safely and quickly.

The best of Changelog • 2020 Edition - The GitHub Blog

https://github.blog/2021-01-21-changelog-2020-edition/
This is a summary of the major changes to GitHub in 2020.
Those who aren't very familiar with GitHub updates might encounter many unknown features that boost productivity by taking a look.
Even for those who know GitHub updates well, it should be enjoyable to look back and realize things like, "Oh, was this feature only introduced this year?"

Personally, I felt like Convert pull requests to drafts was older than just last year.
It's impressive that over 90,000 pull requests were merged into the GitHub codebase in a single year. It's a great example to follow.

Examples of Golang compared to Node.js for learning

https://github.com/miguelmota/golang-for-nodejs-developers
This is a repository comparing Node.js and Go that can be used for language learning. For each item, it aligns the code written in Node.js with the code written in Go.
For example, if you are familiar with Node.js but not with Go and want to study Go (or vice versa), you can learn Go's syntax and other aspects by comparing the respective code.
I think it will be a good reference for people in similar situations.

tool

IntelliJ IDEA で特定行の GitHub PR を開く"Find Pull Request" pluginがまじイノベーティブ

https://gfx.hatenablog.com/entry/2018/01/17/133457

This is a plugin for IntelliJ IDEA. It allows you to quickly check which pull request merged a specific line and jump to that pull request.
In large, long-running repositories, there are times when you want to investigate the intention behind a certain line of code. Being able to find the pull request quickly in such situations will make things much easier.

IaC化されていないリソースをdriftctlで検知する

https://zenn.dev/gosarami/articles/dd938001eac988e44d11

This is an introductory article about driftctl, a tool for finding AWS resources that are not managed by Terraform. For example, it seems useful when you want to eliminate so-called "stray resources" that are not under Terraform management.
By running it periodically and notifying when stray resources are found, it should be possible to continuously enforce IaC.

It seems to compare the tfstate with the actually existing resources. If one AWS account is managed with multiple tfstate files, some ingenuity like deciding on a storage location for the tfstate files would be necessary.
Also, the ability to specify multiple tfstate files is reportedly being added from v0.3.0.
https://twitter.com/sjourdan/status/1354337972213207041?s=20

While it is still in beta and only supports AWS, it is expected to support other public clouds in the future, so I'm looking forward to it.

Afterword

This week's session also ended a bit early, so as a bonus, the article "[Detailed Illustrated Guide] It's Different from Last Year! How to Read the 2020 (Reiwa 2) Tax-Revised Withholding Slip" (Japanese) was shared.
Tax-related laws often change before you know it, so it's helpful that they provide such explanations. It's tough for those filing their final tax returns.

Also, the "Maximizing Developer Effectiveness" article introduced last week has been updated, with sections after Organizational Effectiveness added. If you're interested in the rest, please take a look. (I haven't finished reading it myself...)

This week had many GitHub-related updates and blog posts. It's great that our productivity increases as GitHub becomes more and more convenient.

The Productivity Improvement Team holds these sharing sessions every week. If you're interested in our team, click the link below!
https://blog.cybozu.io/entry/2020/08/31/080000

脚注
  1. This fact alone is surprising. ↩︎

GitHubで編集を提案

Discussion