2024.10.10
将来は卵1パックの価格が2倍に? 多くの日本人が知らない世界の新潮流、「動物福祉」とは
開発チーム管理で役立ったVSCode拡張機能(全1記事)
リンクをコピー
記事をブックマーク
鈴木正樹氏:よろしくお願いします。私はみなさんと毛色がちょっと違う感じで「開発チーム管理で役立ったVS Code拡張機能」ということで、チーム管理で自分がいろいろ使った拡張機能について紹介したいと思います。よろしくお願いします。
簡単に自己紹介します。私は本名、鈴木正樹と言いまして、愛知県の知多半島にあります半田市というところでサーバーレスアプリケーションについての何でも屋さんと言うか、アーキテクチャ構築から設計、開発まで何でもするフリーランスのエンジニアです。主にAWSと今はServerless Frameworkというオープンソースのフレームワークを使ったサーバーレスアプリケーションについていろいろ行っています。
先日Serverless関連の登壇をしたので、もしかしたらご存知の方もいらっしゃるかもしれません。
今回の発表ですが、先ほど私が少し申し上げた通りサーバレスSPA開発のリードエンジニアとしてチーム管理もやったんですが、その際にいろいろ利用した拡張機能やその使い方について紹介させていただきます。これは管理ということなんですが、あくまでもチームリーダーみたいな感じで、いわゆるプロジェクトマネジメントではないので、ご了承いただければと思います。
今回紹介する拡張機能は、ここにリストアップした通りになります。普通にVS Codeでこの名前を検索したら出てくるので、もしご興味があれば一度インストールしてもらえればと思います。
最初に紹介するのはSetting Syncですね。これは複数端末でVS Codeの設定を同期する拡張機能で、例えば新しく買ったPCに今使っているVS Codeの環境をそのまま移したいというときなどに役に立ちます。設定とあるんですが、拡張機能なんかもそのまま移せますので本当に非常に簡単に環境のコピーができる便利なものになります。
本日せとあずさんの発表でもありましたが、設定の同期そのものはVS Codeの標準機能として実装されるということで、まだプレビュー版ということでVS Code Insidersでのみ利用可能な機能ですね。なのでまだちょっとしばらくはこのSetting Syncは便利になるのではないかと思います。
私は管理にどう使ったかと言うと、開発環境や拡張機能をチーム内で統一すると。これを行なうことで、いわゆるバグではなく環境設定とか個人の環境に依存するエラーが発生したり、ソフトが動かないというときに、それに使う調査の時間がもったいないので、個人の環境の設定によるエラーや調査時間による工数をなくしたかったということ。
あとは実際に環境構築というのは、最初は非常に時間が掛かるところなので、この工数をとにかく削減したかった。なのでVS CodeだったらSetting Syncを使って設定のダウンロードさえすれば新しく来た人にも開発可能という体制を作りました。
これが非常に役立ったと言いたかったんですけど、結局新メンバーが来なかったので実際の効果はなんとも言えませんが、新しいプロジェクトでこういうことをやっておくともしかしたら新メンバーの方が来る予定の場合、非常に便利かもしれません。
次にESLintとPrettierですね。ESLintは静的検証ツールで、Prettierは整形ツールですね。どちらかと言えば構文チェックをしたり、あとはソースコードの可読性についてある程度の品質を保証できるツールになりまして、PrettierはESLintとの併用が可能です。例えばPrettierでコード整形をしてESLintで構文チェックするみたいなことをやるとなかなか使いやすいのではないかと思っています。
これは私が導入した理由としては、まずは可読性の高いコードにする。これが本来の使い方になりまして、もちろん可読性の高いコードにするというのも目的の1つなんですが、けっこう若手エンジニアと言いますか、まだ経験が浅いエンジニアが何人かいたのでそういったエンジニア向けにいわゆる可読性とかリーダブルコードというのを知ってもらいたかったという目的で導入しましたね。
「とりあえず動いたからヨシ!」ではなくて、こういった可読性とかリーダブルコードの、いわゆる保守性が高いコードにするためにやらなきゃいけないんだよというものを意識付けするために使いました。実際に若手エンジニアからそういった「もっと深く知りたい」とか、「何か勉強できる本ないですか?」という質問を受けたので、これは一定の効果があったのではないかと思っています。
あとはチーム内のルールの統一ですね。こういったルールを統一してある程度テンプレ的に用意しておくことで新しく来た人……来なかったんですけど、新しく来た人にもソースのコーディングもある程度やりやすくすることと、いわゆるエンジニア宗教的なタブ、スペースとかそういったことがあったときに、そういったしょうもないことでのトラブルを防いで事前にチームとして統一することで事前に手を打っていくということになりますね。
ただ、押さえつけるのが目的ではないので、とにかくそこの空気、意見を言える空気を作るというのは非常に大切だし、自分も苦労した部分で、かつ認識しておかないといけない部分だと思っています。
ごめんなさい、本日私がTwitterで公開した資料と順番が逆転して申し訳ないんですけど、先にGitLensとGitGraphを紹介したいと思います。
これはもうGitと書いてある通りGitに関する機能をサポートしてくれるんですが、GitLensは例えば履歴表示ですね。コミット履歴なんかを本当にブランチだったりファイルだったり、あとはファイルの行単位について、例えばもちろんファイル単位だったり、ソースの中にも記載してくれたりそこら辺が非常にわかりやすいツールになっています。
あとはとくにファイルの差分比較ですね。これが非常に便利で、同じブランチの同じファイルの過去コミットだけでなくて、例えば別ブランチだったりその特定のタグの特定のファイルとの比較もできたりして、これは本当に非常に便利なツールです。個人的にはこれはGitで管理するんだったらとりあえず入れておいて損はないと、本当にそれぐらい便利だと思っています。
GitGraphは先ほどのその変更履歴についてツリーで表示してくれるツールになりまして、非常にそのリポジトリの中のブランチだったりファイルの変更の遷移、変更履歴がわかりやすくなるツールになります。これなんですが、これはリポジトリやブランチの管理で使いました。
特に使ったものとしては、例えば本来上がっているべきでないコミットがあったりとか、最新じゃないファイルが上がってたりしたときなどに、それを調査したりするときにGitLensの履歴が役立ったり、あるいはブランチが立て込んだりしたときにブランチが乱立した際にチェックアウト元のブランチどれにするかとか、あとちゃんとそういった不要なブランチを調べてそこら辺の削除をしたり、あとはメンバーに削除を指示したりとか、そういったことを確認するのに非常に役立ちました。
あとはコードレビューなんかでやっぱり比較するときにファイル全体が表示されたり細かい履歴が表示できるので、ここら辺が非常に便利だと思います。
最後なんですが、Live Shareですね。これは簡単に言うと複数人で同時にソースコードの編集が行えるツールですね。Excel Onlineみたいな、あんな感じでソースコードの編集が行えるんですが、これ自体は1月23日にMicrosoft Ignite The Tour Osakaの夜にあったやつで実際にLive Shareで1回オンラインの勉強会などはありました。オンラインじゃないですね、普通に勉強会がありました。
これは今日参加されている戸倉彩さんとMicrosoftの井上章さんが、実際にセッションの中でデモをしていますので、そちらの動画を見ていただけると非常にわかりやすいと思います。
これはどう使ったか。これは正確には管理とは違うんですが、画面を共有できない状況でコードレビューするときですね。例えばプロジェクターがないとか会議室が取れなかったとか、そういった場合に、もちろんレビューアとレビューイが普通に同じソースを見てもいいんですけど、VS Code上で同時に画面を共有することで具体的に、例えば該当箇所を選択するとかそういったことをすることで視覚的に非常にわかりやすい。
どうしても口頭だと、例えば「〇行目のif文の3つ目」とか、そことかあそことか、どうしても抽象的になっちゃったりするので、Live Shareを使うと具体的に視覚的にわかりやすいので、とくにこういった離れているときや画面が共有できないときに便利でしたね。
あとは実はこれは僕らのプロジェクトではやってないんですけど、Live Shareで同時に編集ができるので、一番効果が発揮できるのがペアプロですね。離れた場所でのペアプロだったりモブプロだったりが非常に便利だと思います。今のこのリモートワーク推奨のご時世なので、とくにそういったところでどうやるかと悩んでいる方がいたらこれをとりあえず導入してみると非常にいいと思います。
まだ僕らはリモートワークになっていないので、でもリモートワークになっていなくても非常に便利なので、ぜひ一度、とくにリモートワークになっている方は入れてみてもらえるといいと思います。
まとめです。もちろんVS Codeの拡張機能はメインは開発なんですが、そうじゃなくてこういったやり方次第でそういった開発以外の用途でも非常に便利になります。とくに今日どれだけいるかわからないんですが、非IT系の方にも非常におすすめできますので、ぜひVS Codeと拡張機能を機会があったら試してもらえるといいと思います。
管理の面で言うと、こういう拡張機能を有効活用することで、Setting Syncで少し説明したような調査があったりといった非生産的な作業に割く工数を少しでも減らして、その分本来費やすべき作業にリソースを投入してプロダクトの品質を上げたり、あとは機能をたくさん付けたりして収入だったり利益を増やして、それで最終的に何をやるかというとメンバーが幸福だったり快適さを感じる、いわゆる心理的安全ですね。
そういったものを感じられるプロジェクトにするために、こういった管理をする側としては拡張機能なんかをどんどん使っていこうということになりますね。やっぱりいいプロダクトは高いエンゲージメントからということなので、やっぱりメンバーをまず幸せにするためにどうすればよいかという、そういったことでどんどんこういった機能も導入していってほしいと思っています。
ちょっと急ぎ足になって申し訳ないんですが、私のセッションは以上になります。ご清聴ありがとうございました。
2024.11.13
週3日働いて年収2,000万稼ぐ元印刷屋のおじさん 好きなことだけして楽に稼ぐ3つのパターン
2024.11.11
自分の「本質的な才能」が見つかる一番簡単な質問 他者から「すごい」と思われても意外と気づかないのが才能
2024.11.13
“退職者が出た時の会社の対応”を従業員は見ている 離職防止策の前に見つめ直したい、部下との向き合い方
2024.11.12
自分の人生にプラスに働く「イライラ」は才能 自分の強みや才能につながる“良いイライラ”を見分けるポイント
2023.03.21
民間宇宙開発で高まる「飛行機とロケットの衝突」の危機...どうやって回避する?
2024.11.11
気づいたら借金、倒産して身ぐるみを剥がされる経営者 起業に「立派な動機」を求められる恐ろしさ
2024.11.11
「退職代行」を使われた管理職の本音と葛藤 メディアで話題、利用者が右肩上がり…企業が置かれている現状とは
2024.11.18
20名の会社でGoogleの採用を真似するのはもったいない 人手不足の時代における「脱能力主義」のヒント
2024.11.12
先週まで元気だったのに、突然辞める「びっくり退職」 退職代行サービスの影響も?上司と部下の“すれ違い”が起きる原因
2024.11.14
よってたかってハイリスクのビジネスモデルに仕立て上げるステークホルダー 「社会的理由」が求められる時代の起業戦略