SmartHR Tech Blog

SmartHR 開発者ブログ

textlintプロジェクトの現在地

textlintプロジェクトの現在地

こんにちは、今年1年でキーボードを3回買い替えたUXライターのkunyです。今は、NiZのATOM 66を使っています。

SmartHRでは、textlintに独自のルールプリセットを追加して利用しています。textlintは4人で運用していますが、自分もメンバーの1人です。この記事では、textlintの便利さを世の中に伝えたく、textlintの利用シーン利用者の生の声をご紹介します。

※この記事は、2021年SmartHRアドベントカレンダーの13日目の記事です。

textlintの利用シーン

開発現場において、各自のローカル環境・GitHubと連携したCircleCIで文言の正誤を判定しています。

ローカル環境では、エディター上でコマンドを実行すると、「エラー内容」と「正しい表現」がわかります。コマンドで「正しい表現」に置き換えることもできますが、前後の文脈を確認しながら文言を修正しています。 正誤判定の結果

また、CircleCI上にtextlintが組み込まれており、Pushするとlintが実行され、正誤判定の結果が返ってきます。チェック結果を確認し、手元のコードを修正しています。 正誤判定の結果

社内のtextlint利用者の声

この記事を書くにあたって、textlint利用者に役に立ったシーンや改善点を聞きました(※)。回答の一部を抜粋してご紹介します。

※SmartHRの「従業員サーベイ」という機能を使って、アンケートを取りました。

役に立ったシーン

  • 末尾の伸ばし棒をつける・つけない、ひらがなか漢字か、など統一できてなかったところを検知して修正できるので非常に助かってます。
  • “テナント”という社内用語を使っていたら「”企業アカウント”を使え」と怒られて最高でした!もっと怒られたい!
  • プロダクトごとに独自にルールを追加できるので、プロダクトで以前使っていたがその後非推奨となった用語を簡単に検知・根絶できた。
  • SmartHR Design Systemに複数の操作をまとめるボタンを追加するときに役立ちました

表記統一や社内用語がチェックされている点を、評価してもらいました!

便利だなと感じたこと

  • CIに組み込んでいるので、今後誤って非推奨の用語を使った場合にも自動で検知できるので安心感がある。
  • ライティングガイドを頭の中に全部入れておくのは不可能なので、textlintのない生活にはもう戻れません
  • 「伝わりやすい表現」を以前よりは確実に意識するようになったと感じています!

3つ目のコメントのとおり、副次的に「わかりやすい表現」を考えるきっかけにもなっているようです!

困ったこと・改善点

  • ルールが増えたことで処理が遅くなっているのが少し気になりました!
  • 誤検知があって修正PR出すのに多少手間取ったので、マニュアルをもっと簡単にするか、修正リクエストのワークフローが欲しい。
  • 行単位やファイル単位でルールを無効化したい。

処理遅延は複数の方から指摘をもらい、textlintを利用しているエンジニアと回避策を相談し改善を進めています。また、2つ目のコメントのマニュアルについても整備をして、誰でも自律的にアクションできる土台を作りたいです。

運用スタイル

現在は、新たな用字用語ルールが生まれた際、心をこめて正誤判定ルールのPRを出しています。ただしこの方法だと、正誤判定ルールを更新できる人が限られてしまいます。

そこで、新たな運用方法を準備中です。具体的には、用字用語を管理しているAirtableに正誤判定のルールも記述できるようにし、GitHub Actionsからtextlintを更新する仕組みに変えます。図のようなイメージです。

textlintを更新する仕組み

これにより、新たな用字用語がSmartHR Design Systemに追加されてから、textlintに反映されるまでのリードタイムを短縮できます。

さいごに

SmartHRではいくつかの開発チームに分かれて開発をしていますが、8割のチームにtextlintが導入されています。

担当プロダクトにtextlintが導入されていますか?はい82.8%
従業員サーベイで作成したグラフ

多くの開発チームに導入できたのは、「自動化が好き」「ひとまず試してみよう」「自チーム以外の活動にも興味がある」というSmartHRのカルチャーが要因になっている気がします。

積極的に導入しくれた開発チームのみなさん、ありがとうございました!正誤判定ルールの追加など運用をがんばりますので、引き続きよろしくお願いします!

おまけ

このブログ記事をtextlintにかけた結果はこちら。 「毎」を「ごと」に、「することができた」を「できた」に修正しましょう