ディーバ Blog

大阪発 C#の会社、株式会社ディーバの Blog です。

SharePointのテナント名(URL)を変更してみた

青柳 @ShinichiAoyagi です。

SharePoint(Microsoft Office 365に付いてるやつのこと。SharePoint Onlineと言ったほうがいいのかな?)って https://tenant.sharepoint.com といったURLになりますよね?sharepooint.comの部分は固定で、tenantの部分で区別されます。
このtenantの部分(テナント名)を変えてみた、という話です。

f:id:ShinichiAoyagi:20210726143033p:plain:w60

Office 365を契約したのはずいぶん前のことなので今は変わってるかもしれませんが、テナント名はOffice 365を契約したときに決まるようで、気づいたときにはメールアドレスから作られたっぽいテナント名が勝手についてました。(どこかで指定できたのかもしれませんがまったく気づかず、気づいたら勝手に名前がついてました)
自動生成されたものなので正直イマイチな名前です。なので変更しようとしたんですが。。。

Change your SharePoint domain name
要約: 「残念ながらドメイン名(テナント名のこと)は変更できない。新しくMicrosoft 365を購入してメールとかも含めて全部そっちに移行してね」

あらら。。。

というわけで、仕方ないから自動生成されたテナント名のままで運用してたんですが、同時に以下のようなUserVoiceもあるのは知ってました。

Enable renaming the SPO tenant domain

このUserVoiceはまさに「SharePointのURLのテナント名部分を変更できるようにして欲しい」という内容で、書き込まれたのは2016/3/30です。
私が見たときにはMicrosoftの人から「それが重要なことはわかってる。できるようにしようとは思ってるのでもうちょい待って」みたいな返答はあったものの具体的な動きは特にないというころでした。 気にはなっていたので、たま~に見には行ってたんですが特に進展はなく、、、と思ったら先月2021/6/17に「Private Previewを始めたよ。まだ制限はあるからそれらを承知できる人は申し込んでね」との書き込みが。

制限については以下のページにまとめられています。
SharePoint ドメインの名前を変更する

一通り読んだあとさっそくPrivate Previewに申し込みました。

ちょっとしたらmicrosoft.comのSPO Tenant Rename Private Preview Teamの人(個人名)から「受け付けたよ」という英文メールが届きました。 「反映されるまで数時間かかるかもしれないけど、そのあとにここの手順のとおりにやってね」とのこと。

基本的に手順通りに進めるだけでしたがいくつか注意点があったのでそれについて。

  1. AzureADにドメイン名追加。
    書かれてるとおりに新テナント名でnewtenant.onmicrosoft.comでカスタムドメイン名を追加します(onmicrosoft.com部分は固定。sharepoint.comじゃないので注意)。newtenantが使用済みだと「使用済みです」と表示されて追加できません。未使用のドメインだと追加後すぐに状態が「確認済み」になります。追加できたのに「確認済み」にならない場合もありました。で、確認済みにするにはDNSにTXTかMXを登録して「確認」しろと表示されてるんですが今回はonmicrosoft.comなのでDNSを操作するってことはできません。何か他の方法で「確認」できるのかもと悩んだんですがどうやらそういうわけではないようで、何らかの原因で使用できないときは追加はできても「確認済み」にならないということのようです。諦めて別の名前にしました。Private Previewなのでとりあえず既存の仕組みを使ってホスト名を予約できるようにしたせいでこんなことになっちゃってるのかなという感じでした。

  2. PowerShellを使ってドメイン名を変更。
    書かれてるとおりにスクリプトをダウンロードしてセットアップ。あとは管理者としてログイン。自分のSharePointがhttps://tenant.sharepoint.comだとしたらPSでConnect-SPOService -Url https://tenant-admin.sharepoint.comとしてログインすればOKです(tenantの後ろに「-admin」をつける。最初これに気づかなくてログインできなくて悩みました)。

  3. PowerShellでStart-SPOTenantRenameコマンド実行
    書かれてる通りStart-SPOTenantRename -DomainName "newtenant" -ScheduledDateTime "2021-07-28T00:00:00"とすればいいんですが、このScheduledDateTimeは「今から24時間後以降」にする必要があるようです。かつ、どうもローカル時間(JST)でいいようです。未指定だったり24時間以内だったりするとエラーになるようです。

  4. 終わるまで待つ
    PSでGet-SPOTenantRenameStatusを実行すれば状況が表示されます。
    最初は「キューに入ってるよ」でしたがScheduledDateTimeに指定した時間になると処理中になってしばらくしたら完了しました。あまり良く見てませんでしたが1時間もかからず終わっていたように思います。ただこれはサイトの規模によっても違うのかもしれません。また変更作業中は一時的にSharePointサイトにアクセスできなくなったりしていたようです。

■ 変更してみて
ちょっとわかりにくいところはありましたが変更自体は簡単でした。
いろいろ制限はあると書かれていますが、今回のSharePointサイトはほぼドキュメントを共有する置き場として使ってるくらいなので何も問題なく変更できました。
変更作業中は一時的にSharePointサイトにアクセスできなくなったりしたようですが、一応休日に実行されるようにしたことと、もともと頻繁にアクセスはしていなかったのでこれも何も問題ありませんでした。

というわけで、ようやくテナント名が変更できました。あぁ、よかった。
なお、どこにも言及されてないようですが、今のところ旧URLでSharePointにアクセスするときちんと新URLにリダイレクトしてくれています。

正社員募集中

現在(2021年6月)、積極的に採用活動中です。

  • 仕事内容: C# による開発が主業務
  • 応募資格: 学歴不問、経験者のみ(実務経験は問わない。プログラミング経験は必要)
  • 給与: 月給 300,000円~(賞与を含む想定年収は440万円/年~)※ 応相談
  • 勤務地: 完全テレワーク可(コロナ禍後、大阪市内事業所に勤務も可)
  • 勤務時間: コアタイムなしのフレックスタイム制(ただし残業および深夜業禁止)
  • 休日休暇: 年間休日120日以上、夏季休暇、年末年始休暇

詳しくはこちら。システムエンジニア/Web・スマートフォンアプリ開発 株式会社ディーバ(1406220)-engage

Azure App Service上のPHPでmb_send_mailを使う方法

青柳 @ShinichiAoyagi です。
ブログを書くのも技術系の記事を書くのもすごく久しぶりな感じですが、なぜかPHPネタ。
(単にめったに使わないPHP関連のことだとさっさとどっかに書いとかないと忘れちゃうからという理由です)

ディーバが作ったわけではいなのですが、Webサイト(いわゆるホームページ)でPHPの以下の構文でメールを送信しているそうです。

mb_send_mail($to,$subject,$msg,$header)

これをAzure App Serviceに配置したところメールが送信されないとのこと。
mb_send_mail関数って始めて知りましたがパラメーターにSMTPサーバーの指定もないので「いったいどこに向かって送信しているんだ?」と思って調べてみたらlocalhostの25番ポートに送っているとのこと。App ServiceのlocalhostにSMTPサーバーなんて動いてないですからそりゃ送信できないですよね。
だいたいこういうのはphp.iniで設定できるんだろうと調べてみたらありました。

https://www.php.net/manual/ja/mail.configuration.php

しかし、残念ながらTLS/SSLで接続したり認証付きで接続したりはできないとのこと。どうやらそういうのはPHPMailerなりを入れてやれということなようです。
しかし今回はできれば修正なしでなんとかしたいとのことで。
php.iniのsendmail_pathはWindowsでも使えるとあるのでこれでなんとかしてみました。

まずはphp.iniの設定。
あれ?php.iniってどこに置けばいいんだ?となりましたがググったら出てきました。

PHP アプリの構成 - Azure App Service | Microsoft Docs

今回設定したいsendmail_pathはPHP_INI_SYSTEMなのでどっかにphp.iniを入れてそのパスをPHP_INI_SCAN_DIRに書いておけばいいそうです。
上記だとAzure CLIで設定していますがAzureポータルの[構成]で設定することもできます。その場合は以下。

f:id:ShinichiAoyagi:20201220112410p:plain:w300
AzureポータルでPHP_INI_SCAN_DIRを設定

php.ini自体はFTPでアップロードするなりkuduで作るなりします。
私はこれくらいのファイルならKuduの[Debug console]-[CMD]でディレクトリー作ったりファイル作ったりしちゃいます。今回は上記と同じようにd:\home\site\iniにphp.iniを作りました。

次はsendmailです。
今回は以下のsendmailを使わせてもらいました。Unixのsendmailと同じように動くWindows版sendmailならば何でもいいです。

GitHub - sendmail-tls1-2/main: Sendmail.exe is a windows program that's emulates unix sendmail behavior

このsendmail.exeなどをd:\home\site\sendmailディレクトリーを作りそこに入れました。
もちろんphp.iniのsendmail_pathにはこのsendmai.exeのパスを書いておきます。

あとはsendmail.iniを書くだけです。
今回はSMTPサーバーはSendGridだったので以下を参考に設定しました。

SendGrid - SMTPの接続情報を教えてください。 – サポート

これで無事mb_send_mailでメールを送信できるようになりました。

--

上記を調べている過程で↓の記事をみつけてこれも試してみようとなったんですが「あれ?App Service上のPHPでComposerってどうやるんだ?」となったのでここからはその記録です。

PHPからSendGridを使ってトランザクションメールを送信する方法 | SendGridブログ

Composerは拡張機能として用意されています。
AzureポータルのApp Serviceの[拡張機能]-[追加]-[拡張機能の選択]を開いてComposerを探します。これをインストールしてやればOKです。
このComposerはたぶん↓これです。Cory Fowler氏ってMicrosoftの人っぽいです。

GitHub - SyntaxC4-MSFT/ComposerExtension: Brings Composer Support to Azure Websites via a Site Extension

インストール後にApp Serviceを再起動してやるとkuduの[Debug console]-[CMD]でcomposerコマンドが使えるようになっていました。
なのであとは上記記事にあるようにcomposer.jsonを作ってやって以下のようにcomposerコマンドを使ってやればPHPで new \SendGrid\Mail\Mail() としてSendGridにメールできました(記事にあるソースで Dotenv\Dotenv::create(__DIR__) のところは Dotenv\Dotenv::createImmutable(__DIR__) としてやらないとダメでしたが他はそのまま)。

> composer require vlucas/phpdotenv && touch .env
> composer require sendgrid/sendgrid

--

Azure App ServiceでPHPを動かそうという人がどれくらいいるのかわかりませんし、私自身も始めてだったんですが、このようにphp.iniも使えるしComposerも使えるしで結構ちゃんと使えました。

VRの現状と未来(2020年8月27日(木)20時開催)

青柳 @ShinichiAoyagi です。

直前の告知になってしまいましたが、ウエビナーでVRについての話をします。

「VRの現状と未来」
2020年8月27日(木)20時~21時
参加費無料、Zoomにて
申し込みや詳細はこちらから (https://trust-support.com/lp/diva/)

f:id:ShinichiAoyagi:20200826111113p:plain:w200

今回は「IT系技術者ではない人」が対象です。
私がこれまで勉強会などで担当してきたセッションは.NETやC#といった技術的なこと、中には「C#のasync/awaitの仕組みを解説」みたいなやたらディープなことだったりがほとんどでしたが今回はそうでは ありません
「VRがどうしたとかいろいろ話題だけど結局のところ何なの?」という方に向けて、しかも時間も30分+質疑+αという短時間なのでVRのさわり程度をお話します。

(私のTwitterをフォローしてくれている人やこのブログを見てくれている人はデベロッパーなどのIT系技術者な方が多いと思いますが「Unity+C#でがっつりVRアプリ開発」みたいなものでは ありません ので。そういうのもやってみたいとは思いますが)

これまでIT系勉強会やセミナーでは講師を何度もしましたし、オンラインミーティングやオンライン飲み会でZoom、Teams、Meetなどは使っていますがウエビナーという形式はやったことがありませんでした。
トラストサポート 長尾さんと話をしていて「ウエビナーとかしてみませんか?」「してみたいです」ということでしてみることになりました。
初めてのことですし、いろいろ手探りではありますがまずはやってみます。

ディーバは今日から全員テレワークとなりました

青柳 @ShinichiAoyagi です。

なにかとバタバタしていてブログを書くのもすっかりご無沙汰になってしまいました。

本日から新型コロナウイルス対策の一環として緊急事態宣言が出されましたが、ディーバも全員テレワーク(在宅勤務)とすることにしました。

ディーバはもともとテレワークOKです。
ディーバはフレックスタイム制になりました」←この記事にもちょっと書いたようにこの頃(2018/5/30)は一部の人がたまに在宅で仕事するという感じで始まって、2019年4月には100%在宅勤務を前提とした人も入社して、今では皆自由にテレワークしてます。
インターネットさえ繋がれば仕事はできるようになってますから、テレワークするもしないも自由です。特に届けでも必要ありません。なので、その日の気分で事務所に来るか、在宅でするか、どこか他の場所に行くか(セキュリティには気をつける必要がありますが)、と各自が自由に決めることができます。コアタイムなしのフレックスタイム制でもあるので誰がいつどこで仕事してるのかよくわからなかったりします(笑) それでどうやって管理するの?という疑問を持つ人もいるでしょうがそれはまた別に書きたいと思っていますのでここでは割愛。

もちろん、会社の方が仕事しやすいという人もいます。と言うか、結構いますね。ディーバでも7人中4人は基本的にテレワーク、残りの3人は基本的に会社、という感じでした。どちらがいいかは本当に人それぞれ。

しかし、やはり今は「テレワークしてもいいんですけど会社の方が落ち着くんですよね」とか言ってる場合ではないと思います。皆言っていることですが、テレワークしたくてもできない業種・職種はたくさんありますから、できるのなら可能な限りそうすべきだと思っています。
というわけで、本日から当面の間原則として全員テレワークとすることにしました。

東京富士大学で特別講師として講義しました

青柳 @ShinichiAoyagi です。

2019/6/13(木)のことになりますが縁あって東京富士大学で特別講師として授業を担当しました。
「新事業創造論」という通年(後期は「ベンチャービジネス論」になるそうです)の講義の1コマとして「ITビジネスの可能性と未来」をテーマとして90分間の講義です(本来の講師の方が前後にお話するので私の持ち時間は70分ほど)。

f:id:ShinichiAoyagi:20190703114458j:plain

もともとこの講義は元柔道選手の松本薫さんが始めたというアイスクリーム屋「 ダシーズ 」をメインテーマとした講義です。

引退した柔道・松本薫さんのアイス屋で実食レポ。“身体にいいアイス”ってどんな味?

柔道を引退してセカンドキャリアとしてアイスクリーム屋を始めるということで、テレビやネットでも紹介されたりしていたので知っている人も多いかもしれません。
このアイスクリーム屋「ダシーズ」ですが、以下の記事にもあるようにもともと東京富士大学と株式会社ジャスビコという会社さんの産学連携プロジェクトで、単に店舗を出すだけではなく「ダシーズ」をテーマにした講義もおこなうことが予定されていたそうです。

松本薫さんが手掛けたアイスクリーム屋の開店日決定!

今回担当させていただいたのがまさにこの講義の1コマということになります。

今までIT系勉強会でスピーカー(講師)をしたことは何度もありますが、大学や学生さんを相手に講師をするというのは初体験です。
講義内容はお任せいただいていたのでVR、IoT、AIといった最近話題になっているようなことを中心に、IT企業がどんなビジネスをしてるのかなんてこともお話しました。

しかし、あれですね。大学の授業は90分ありますが、90分って長いですね。しかも、お昼ご飯後の13時始業のコマなので眠くならないわけがない(笑)
けれども、講義後にアンケートを書いてもらったんですが(毎講義後書かせているそうです)、結構皆さんしっかり感想を書いてくれていました。
うまく話せたかどうかはわかりませんが、私にとってはとてもいい経験になりました。生徒の皆さんにもなにか1つでも得るものがあったら幸いに思います。

講義後は「ダシーズ」を案内していただきました。
残念ながら改装中でお店自体はクローズでしたが改装中の店舗の中を見せていただき、あとアイスクリームはあるとのことでココナッツミルクチョコクッキーと豆乳焦がしキャラメルをいただきました。アイスクリームと言っても乳製品不使用、小麦粉不使用、白砂糖不使用ということでアイスクリームっぽいけどアイスクリームとは違うもの、ちゃんと甘いけど口の中で溶けたあとに乳成分が残らないからかさっぱりしてるし、溶け方も普通のアイスクリームよりもふわっと溶けるような感じがするし、となんか不思議な感じでした。なかなかおいしかったです。

私が行ったときには改装中でしたが6/27(木)にリニューアルオープンしたそうです。店舗自体は東京富士大学の中ですがもちろん一般の人も購入できます。興味のある人は行ってみては?ただ、毎日営業しているわけではないそうなのでWebサイトでご確認を。

ダシーズ

de:code 2019に参加しました

青柳 @ShinichiAoyagi です。

今年も de:code 2019 に参加してきました。
f:id:ShinichiAoyagi:20190610212156p:plain:w400

ディーバ からは私を含めて3名の参加です。もちろん 去年 と同様に参加費・交通費・宿泊費は会社負担です。
ディーバは2月に1名、4月に1名増えて現在6名(私含む)なので半数が参加ということになります。できれば全員参加にしていきたいんですけどね(もちろん、家庭の事情などもあるので強制するわけではありませんが)。

毎年言ってますが、ほんとに会場はなんとかして欲しい。セッションルームのキャパ的にはいいのかもしれませんが廊下は完全にキャパオーバーで大渋滞しちゃってて移動するのが大変。もう少し余裕のある会場にしてもらえるとうれしいんですが、なかなかそう簡単でもないんでしょうね。

今年もフルにセッションを受講しました。以下、それらの簡単なメモです。
(セッションをフルに受講するとEXPO見に行く暇がありません。見に行きたかったんですが。。。見たのはHoloLens 2体験の抽選結果だけです。かすりもしませんでしたけど)

キーノート

なにが印象に残ったってやっぱりHoloLens 2ですよね。3倍よくなったとか。早く実機欲しい。
Office 365のWordやExcelの中に「@名前」書いてヘルプ求めたり修正求めたりできるとかってのはなかなかおもしろいと思った。そういえば、iPhoneのOutlookでは「それでは6/10 13時にお伺いします」のような文章があると日時のところがリンクになってカレンダー開いたり予定を登録したりできるようになってるけど、これがなにげに便利だと思って感動した。この機能っていつ頃からあるんだろ?
Fluid Frameworkもなんなのか気になった。リアルタイムに翻訳しながらチャットしたり、TeamsのチャットにWordの表を(画像ではなく動作するものとして)貼り付けたりとか(後者は『昔、OLEとかActiveX Documentとか呼ばれるものがあってだな。。』とか言いたくなったけど)。Fluid FrameworkはBuild 2019で発表されてたと思うのでそちらを探せばブレイクアウトセッションあるかな?
りんなちゃん、セリフは棒なのに歌は流暢でギャップがかわいい(笑)
伊勢のゑびやさんの記事は以前に読んだことがあったけどAzure使ってるとは知らなかった。

DT02(Room O) 一挙に紹介! Visual Studio 2019 新機能とMicrosoft Build 2019 で発表された開発ツール最新情報【.NET 開発者向け】

タイトルどおり、いろいろなことをざっと紹介するセッション。お弁当付き。
VS2019でソリューションの読み込みがすごく速くなったとか、デバッグ中のローカル変数やウォッチで検索ができるとか(この機能はかなりうれしい。というか、なんで今までなかったんだ)
Live Shareは以前に会社のみんなで試したけどとてもおもしろい(これはVS2017やVS Codeでもできる)。

CM01(Room E) ここまで進化した!HoloLens 2 の全貌を徹底解説

キーノートのHoloLens 2の紹介をもう少し詳しくした感じのセッション。なので、技術的な話というよりももうちょっと概要的なところ。けど、おもしろかった。
やっぱりHoloLens 2って虹彩認証とかアイトラッキングとかが入ったっていうのがすごく未来感あるように思える。
技術的なところではUnrealも対応するとか。あと、ARCoreやARKitも対応していく?(ARCoreやARKitになにをどう対応するという話なのかよくわからなかった)。

DP10(Room K) Build 2019 Azure AI & Data Platform 最新アップデート

タイトルどおり、Build 2019のAzureのAIやData関係のいろいろをざっと紹介するセッション
Azure SQL Database Edgeとか「おぉ、そんなのあったんだ」というものも。Compactの進化系だったりするのかな?
ただ、さすがに盛り込み過ぎでものすごく駆け足。もう少し絞り込んで紹介してくれてもよかったかも。

MW03(Room G) Xamarin.Forms アプリケーション設計パターン

流れるようにMVVMからDIまで説明しててさすが大田さんと思ったり。
大田さんはクリーンアーキテクチャーが好き、かつ、Prismが好き、とのこと。

DT03(Room G) 上級サポート エンジニアの経験お伝えします:Visual Studio 2019 でメモリー リークを追え!

正直めっちゃ楽しかった。
前半は「Working Setとは?」みたいな感じの話だったけど、中盤からprocdumpとかwindbgとか出てきてがぜん楽しくなってきた(笑) いや、私もprocdumpとかwindbgとかなんて普段使ったりしませんが、なんかこういう話ってものすごく楽しいじゃないですか(笑)
けど、ダンプを調べるのにwindbgよりVS2019の方が(ある部分においては)便利だというのを聞いて結構衝撃。procdums+windbgは平成の時代、令和の時代はprocdump+VS2019らしい(笑)

パーティ

恒例のパーティ。あいかわらずものすごく混んでるけど食事や飲み物は十分あった。
抽選会はなにもあたらず。

その後、友人+いっしょに行ったディーバ社員1名と居酒屋で二次会。
さらに、ホテルの私の部屋でディーバメンバー3人で三次会。

DT07(Room A) .NET とクラウド ネイティブ ~ 本格化するクラウド移行とそのアーキテクチャ (前編)

井上章さんの2コマ連続のセッション。
WPF on .NET Coreのシングルファイルのパブリッシュは初回起動時に(たぶん)解凍してるのでちょっと遅い。2回目以降は普通。とか。やっぱりそうなのね。
BlazorもServer Side、Client Sideともに結構しっかり説明してた。Server SideはRazor Component(の一部)として.NET Core 3.0に入ることが決定済みだけど、Client Sideはどうなるかなぁ?
ASP.NET CoreのgRPCも説明あり。.protoファイルを普通にVS2019で編集してた。まだgRPC試してないんだけどgRPCツールを入れなくてもVS2019だけで対応してるのかな?そうや、gRPCはASP.NETのみで使うわけじゃないのでASP.NETに入れなくてもよかったんじゃ?という気もしないでもない。
ML.NETも。知らなかったけど ML.NET Model Builder という拡張機能をVS2019に入れておくとウイザード形式で簡単にMLモデルが作れるとか。なにそれすごい。
「.NET 5にはASP.NET WebFormsとWCFとWFはなくなる」

DT08(Room A) .NET とクラウド ネイティブ ~ 本格化するクラウド移行とそのアーキテクチャ (後編)

懐かしいCMから。なんか見覚えある。
オンプレ、IaaS、CaaS、PaaS、FaaS、SaaSの説明の図がわかりやすかった。
Twitterでもつぶやいたけど「Dockerコンテナーとは」とか「マイクロサービスアーキテクチャーとは」とか「Kubernetesとは」みたいな話もあって「.NETの解説をするためにこういった解説もしないといけない時代かぁ」とか感じたり。
マイクロサービスを野良化させずにAPI Gatewayとかを使ってちゃんと管理すべし、という話はやっぱりそうだよねと思ったり。というわけで、 eShopOnContainers を読むべし。PDF版は英語しかまだないけどWebなら日本語訳もあるとのこと。.NET マイクロサービス:コンテナー化された .NET アプリケーションのアーキテクチャ ←これのはず。

CD42(Room F) Vue.js と Firebase, AKS でのクラウドネイティブなスマホアプリの作り方 + ML Ops による AI モデルの作り方

お弁当付きのランチセッション。関連はあるんだけど、前半のVue.jsでスマホアプリ作ったという話と後半のML Opsしてますって話の2本立てという感じ。
しかし、どちらもあまり知らない分野だったのでおもしろかった。Vue.jsはちょこっとしか触ったことないけどいろいろ充実してるようなのでなかなか便利そう。

IT02(Room L) Azure IoT Hub クラウド側の最新機能:デモも交えてご紹介

エッジ側ではなくAzure IoT Hubなんかのサーバー側の話。
このあたり、あまりよくわかってないところ(Azureにどんなサービスがあってそれらをどう組み合わせるとどううれしいのか、とか)があるので要復習って感じ。

CM10(Room B) ハードコア デバッギング : サポート直伝!Windows カーネルモード デバッグ活用編!!

楽しかった!正直、カーネルモードデバッグなんて今までやったことなんてないけど。
最初のデモが「アプリが起動せず、なぜかwindbgも起動しない。こういうときはカーネルモードデバッグ」といった感じで始まるという変態なセッション(褒めてる)。ほんとに楽しかった。

CM12(Room C) .NET Core マルチ プラットフォームの本質

荒井 省三さんのセッション。
荒井さんのセッションは例年ものすごくディープな話だけど、今年はどうなるかな?と思っていたらCLIの話から始まって、Portable Executable Format(EXEやDLLファイルの構造とかのことですね)なんて話が出てきて、最初のデモがwindbgで、とさすが荒井さん今年も期待どおりでした(笑)
JISのサイトは日本のIPアドレスからしかアクセスできないらしい。へぇ。

CM04(Room L) Azure Kinect DK 徹底解説 ~ 進化したテクノロジーとその実装 ~

de:code 2019最後のセッションはAzure Kinect。
Azure Kinectにどんな機能があってどんなコードを書けばいいかというがっつり技術系なセッション。おもしろかった。
Azure Kinectって以前のKinectに比べるとものすごく小型化軽量化されてるしものすごくいい。とりあえず欲しい。ただ、Body TrackingはNVIDIAのGPUを積んだ(CUDAが動く)Windows 10が必要とあったからPCも必要になりそう。
そういや、コード例はすべてC++だったと思うけどC#からのラッパーって用意されるのかな?ちょっと使うくらいなら自前でP/Invokeすりゃいいだろうけど。

以上、今年も楽しい2日間でした。