銀の光と碧い空

クラウドなインフラとC#なアプリ開発の狭間にいるエンジニアの日々

Visual Studio Live Shareを使ってオンラインハンズオンをやってみた

本記事はMicrosoft MVPブログ企画の記事として投稿しています。その他の記事はこちらからご覧ください。

昨日、オンラインでTeamsとVisual Studio Live Shareを使ったオンラインハンズオンを開催しました。

csharp-tokyo.connpass.com

Visual Studio Live Shareを使ってコードを見せながらオンラインハンズオンをやるのは割と便利だったのですが、少し注意しないといけない点もあったのでまとめてみます。Live Shareの概要についてはこちらを。

docs.microsoft.com

Live Shareはペアプロみたいな用途を想定されていると思われるかもしれませんが、読み取り専用アクセスでも共有できるのでハンズオンのような講義用途も想定されています。

docs.microsoft.com

よかった点

Windows, Mac, Linuxで見ることができる

Visual StudioおよびVisual Studio Codeでお互いに共有できるのでいずれの環境でも見ることができます。またプレビュー版ですがブラウザからアクセスすることができます。

docs.microsoft.com

.NET Coreというクロスプラットフォームな開発ツールのハンズオンだと、参加する人は自分の普段使っているデバイスを使いたいわけですが、それを実現することができます。

いま見てほしいコードを見せられる

TeamsなどWeb会議ツールを併用すれば、今説明しているコードそのものを見せることは可能です。IDEで共有することによって、さらに見ているコード近辺の気になる部分であったり、参照関係にあるコードなどを自分の好きなタイミングで見ることができます。この時説明している人のコードを見失っても、参加者一覧の中の説明している人をダブルクリックすることでそのコードに戻ることができます。

f:id:tanaka733:20200523004257p:plain

docs.microsoft.com

準備が簡単

今までも、クラウド環境などを使って同一環境を複数準備して、それぞれにログインしてもらってハンズオンを行うという方法はありました。ただ、クラウドのコストがかかったり、環境を作るのが手間だったりしました。Live Shareであれば、基本的には自分がハンズオンの手順通りにコードを書いていくだけで、それをそのまま共有することができます。今回用意したのは、このリポジトリだけです。

github.com

自分が動かしているWebアプリに参加者からアクセスしてもらえる

共有ローカルサーバーという機能があって、自分がプロジェクトをデバッグ起動したとき、そのポートに参加者の方がアクセスするようにできます。

f:id:tanaka733:20200523004717p:plain

docs.microsoft.com

また今回あまり活用できませんでしたが、シェルを共有する方法もあります。

docs.microsoft.com

注意しないといけない点

デフォルト5名、最大30名まで

デフォルトだと5名までしか参加できません。設定変更で最大30名になります。

docs.microsoft.com

今回は、テスト接続時に5名までの上限にぶつかって、設定確認したところ30名への引き上げがすでに有効になっていたので、動かないのではと不安になりました。結局Visual Studioを再起動したら5名以上参加できました。

音声は別途共有が必要

まもなく音声やチャット共有がサポートされるらしいのですが、またリリースされていなかったので今回はTeams会議を併用しました。

docs.microsoft.com

参加者の方が困ったときのヘルプ方法を用意しておく

オフラインだと会場をスタッフが見て回ってうまくいっているか確認できますが、オンラインだとこちらから確認する方法がありません。ですので、参加している方が困ったときにすぐヘルプを求める方法を用意しておくのがよいです。Live Shareを逆向きに(参加者の方が自分の画面をスタッフに共有する)するのもありですし、zoomのブレイクアウトセッションが使えるのであればデスクトップを共有することも可能です。(Live Shareだとコードを直接編集できる、デスクトップ共有だとLive Shareに行く前のトラブルシューティングも対応できる、と異なったメリットがあります) なお、参加者の方がLive Shareする場合、MicrosoftアカウントもしくはGitHubアカウントでログインしておく必要があります。

まとめ

今回は初回ということもありうまくいかなかった点もありますが、改善していけばかなりオンラインハンズオンも十分に運用できる見込みが立ちました。参加していただいた方、ありがとうございました。