仕事の備忘録

IT系技術とか、カスタマーサービスとか

de:code 2018 参加記録

2018/5/29追記  Women in Technology での登壇者名が誤っておりました。松本さん→大森彩子さんです!大変失礼いたしました! そして指摘していただいたhayashih さんありがとうございました!

 

de:code2018の参加記録を書く。昨年は申し込み記入中に満員になるという悲劇が起きたが今年は無事参観。このブログでは詳細に記載したいもののみ書いておく。

★基調講演

すでにWeb記事が多数出ているが、先月の米国MSで開催されたbuild 2018の内容を基にした3時間にわたるものだった。出来れば配信されているので見てほしい。

microsoft-japan-events.azurewebsites.net

以下が全体まとめとして詳しかったので紹介する。

sy0690.hateblo.jp

基調講演終わった最初の感想は「マイクロソフトの当たり前はレベルが高い」であった。単純にかっこよかった。女性をずらっと並べても別に特別でもない。例年通りの最高レベルのスムースな基調講演を見ることができた。つまりマイクロソフトにとって女性が仕事することは普通だということで、その普通がどれだけ多くの女性にとって難しいことかわかっているからこそ、非常に多くの人に思いが伝わったと思っている。このブログはその伝わっている一例だと思う。

hayashih.hateblo.jp

毎年マイクロソフト社のダイバーシティセッションであるWomen In Technology はランチ時間の開催を行っているが、今年は加えてオープン会場でのトーク形式でも開催された。2日目参加した際には千代田まどかさん大森彩子さんが登壇されていた。そこで聞いたところによると基調講演は1週間前にしか指名が来ないとのこと。さらに台本は数日前で当日深夜0:30からのリハーサルが普通に招集されたとのこと。皆さんタフでかっこいいのであった。

★セッション

今回はあまりセッションに参加できなかった。特にCognitive ServisesとかBot系は満室が多かった。皆業務適用を狙っている時期か?そこで個人的興味に切り替えて以下参加したセッションの感想を記載。

Windows Mixed Reality ヘッドセットを使ったビジネスアプリ開発

自宅でちょこちょこ自習しているので参加。ビジネス適用を積極的に行っている人たちが一定数いて数年後を見据えて手がけていることが分かった。

開発者におくる Power BI を使う時に考えるべきアーキテクチャ ~ データを溜めるのは誰だ? ~

Power BI の画面にアンケートから回答するとリアルタイムで表示されるデモで、会場全体が参加者となった。機能の使い分けについて表で解説などがあり、実利用しやすい資料だった。早く公開されたものが読みたい。できれば週末のこちらに参加がいいと思う。

 SQL Server 管理者におくる SQL Server on Linux Tips

最初に資料のQRコードを写真撮影するように案内があった。これで写真を途中でとる人はいなかったはず。Linux版 SQL Server は基本Windows 版と同じということを言われているが、それが本当であることの解説が最初にあり、そのうえで差分がどこかを説明してくれた。毎回この方のセッションはよくできてるなあと感動する。ただ思った以上に参加者が少なく驚いた。SQL Server に興味がある会社が減っている?弊社も新しいバージョンを使うパターンは少ないが。こんなに面白いDBなのになあと思ったが積極的に宣伝はしてもらいたい所存。

Mixed Reality フリートーク&QA ~なんでも聞いて、答えます~ [AC18 と同一内容]

http://hololab.co.jp/

実は今月UnityのイベントUniteにも少しだけ参加、トヨタ自動車さんのHoloLens事例セッションを聴講した(セッション内容非公開で資料なし)その際プレゼンターの室長さんが「自分からいろいろ試して部下にやらせたのです」というお話をされていた。

「VRやMRでカイゼン」、トヨタが活用事例を紹介 | 日経 xTECH(クロステック)

当日のデモも面白かった。でもプレゼンされてた室長自身でHoloLens使って企画して開発させているとの話が一番印象的でした。上が技術を理解して現場が必要なものを皆でつくる。ビジョン共有が完璧。

2018/05/17 12:27

ただこの記事にもそのセリフはなく資料もないため、私の勘違いかもと思いブログを書くのをやめていた。今回、セッションはフリートークで、かつ前日にかなりの「ガチ勢」と呼ばれる熱心な開発者が参加した反動らしく非常に人数が少なかった。回答者が6名で受講者もそれくらいだったおかげで、自分が数か月WinMR利用&開発での疑問などを質問することができて幸運だった。ちなみに上記トヨタの事例はやはり室長さんが自前でHoloLens買って、実際に部下や上層部に体験させて開発を進めたのだそうだ。業務で利用されている方は数年後を見越して、本格活用前に適用できるところから実施しているとのこと。そして日本は世界に負けないくらい事例も多く、かつ現場が必要として利用しているとの話がホロラボ中村さんから説明があった。皆さん導入には「実際に試してもらって納得させるしかない。そのためには自分で作るか依頼するか」と言われていたので、ここは、自分で開発して認めさせるしかいないとケツイした。

EXPO会場とHoloLens体験

HoloLens体験コーナーでは2つのアプリを体験できた。一つは

f:id:testedquality:20180522141559j:plain

船舶の自動航行システムでニュースになっていたJRCSさん。水産高校を応援している関係で船員さんのツイートを集めているのだが、特に内航船については人手不足&平均年齢60歳といわれる人手不足な業界である。それを陸から航行サポートすることで人手不足解消の一端を担うことを目標とされていた。もともと船内部の自動航行システムを提供している会社さんだ。その高い目標は、自動車の自動運転が見えてきている今、夢ではないと私も思った。本社は山口県は下関で開発の方々の目的がはっきりしており問題解決のためのHoloLens という点が明確だった。

もう一つは体験後に見学していたら親切だったハニカムラボさん。昨年秋にTech Summit でバーチャル洋服体験システムを提供されたが、今回はハニカAIちゃんの出展。こちら結構話題になっていた。

f:id:testedquality:20180523173146j:plain

なんといってもかわいい。このハニカAIちゃんはAIによるサポートを目的としているが、今回はお話をする設定だった。非常に動作が柔らかいのがよかった。あとストーリーがあるのだが、途中のギミックがとても大好きだったのでまた体験したいと思う。こちらはアミューズメント要素もある形であったがHoloLens であることを十二分に生かしてたと思う。

あと会場でPower BI画面が素敵だったのがEBILABさん。業務でかなりPowerBI 作りこんでますがデザインと見せ方が、タブレットで使いやすく作りこまれていて、かつ触って楽しいギミック。ちょっと衝撃だった。業務たくさんやってますが、データだけじゃだめだと本当に反省した。

全体感想

今回運営が例年より良かった。が、会場が多すぎ&参加希望時間が重複しすぎて泣きそうになってたし、人気セッションのあふれ具合が想定以上であきらめる場合も多かった。もう少しセッション数減らしてもらえるとありがたい。じゃないと部屋がこれ以上広げられないと思われる。でも休憩所&電源については満点。

f:id:testedquality:20180522155713j:plain

例年つらかったが今年は最高に良かった。こんな水の眺めを見ながらのぞき見を避けることが可能な机が多数。1Fのわかりづらい場所であったが良かった。それからアプリが毎年着実にバージョンアップされていて、今年初めてアプリだけで丸一日過ごせた。トラブルもなかったし満足している。

 ということで、本当に2日間勉強しっぱなしだったので、早くアウトプットせねば。実は今回参加企業からのデモを使ったサンプルソースコード提供も別途実施されており、それを動かすとボットが作れるものが出ていたりする。早速週末のボットづくりに生かそうと考えている。

QnA Maker で全国の水産高校情報を返すBotを作成 その2改善とSkype連携

 Bot Framework による bot 作成の続き。先日QnA Maker との接続テストで使い勝手の悪い点があったので外部システムとの接続をする前に対応する。

機能改善

testedquality-tech.hatenadiary.jp

  1. 水産高校がない県を入力したときには、存在しない文言と地区の一覧を表示する。
  2. マッチしないときのメッセージを変更する。

まず1.から。QnA Maker にログイン

f:id:testedquality:20180513212013p:plain

昨日作ったKnowleged base が存在する。SuisanKokoのリンクをクリックするとEdit画面になるのでそこでデータ追加を行う。 

f:id:testedquality:20180513212128p:plain

現在水産高校が存在しない県は11存在する。この県を指定した場合には、ユーザーに近隣の県を知らせるようにした。ついでに瀬戸内と入れた場合も想定。海に面した県で水産高校がないのは、広島、岡山、和歌山、大阪と瀬戸内に面したところだけなのだ。

データ追加をしたらテストして問題なければ再度Publish をする。上部メニューをPUBLISHに切り替えて「Publish」ボタンをクリックする。

f:id:testedquality:20180513212919p:plain

f:id:testedquality:20180513212344p:plain

Publish していないとAzure Portal 側の「Webチャットでのテスト」メニューで利用できない。これに気づかず数回再起動してしまった。実施したらAzure Portal側で再テストしたほうがよい。瀬戸内が表示されたからOK。

f:id:testedquality:20180513213029p:plain

2.のメッセージはApp Service側で修正となる。昨日作成した際にQnA Maker 利用を選択するとApp ServiceにQnA Maker用の基本ソースコードが設定されるらしい。

そしてWeb アプリ ボットにはソースコードが存在していて修正できる。Visual Studio でソース修正かと思っていたが、Azure上には「オンラインエディターを開く」にて操作ができるとあるんで押してみた。

f:id:testedquality:20180513213748p:plain

 クリックすると以下のようにエディタが開く。「Aure App service editor」でソースの修正とビルドができるらしい。ステップは2つしかない。ソースの修正とコンソールでのビルドコマンド実施。f:id:testedquality:20180513221358p:plain

まずソースコードの修正、とあるがどこを修正すればよいのか?構成がよく分かってないので一つづつソースコードを開いて内容確認をした。wwwroot/Dialogs/以下にBasicQnAMakerDialog.cs がありそこに見慣れた文字を見つけた。すでにGAしているが互換性を考慮しているのかpreview用のコードもある。とりあえず内容からclass BasicQnAMakerDialog 内を修正してみる。

f:id:testedquality:20180513222101p:plain

f:id:testedquality:20180513222454p:plain

自動セーブらしい。左上でSAVEDと出ているので安心する。手順からこれをビルドするためにコンソールに移動するのだと思うが、どこにコンソールがあるかわからない。

色々探した末、Azure Portal からQnA Maker のドキュメントページに記載があった。ここのドキュメントはわかりやすいので、もうこちらを見ることにしようと思った。

Build a bot with the Azure online code editor - Bot Service | Microsoft Docs

f:id:testedquality:20180513223152p:plain

 画面左側の〇の中にコンソールボタンがある。これをクリックすると右側がコンソールに切り替わる。ここに画面のように「build.com 」と入力、Enterキーにてビルドが実行される。

f:id:testedquality:20180513223354p:plain

 ビルドが成功したら再度テスト。

f:id:testedquality:20180513223430p:plain

メッセージが変更できたことを確認したので、App Serviceを再起動する。これでbotサービスとしては準備完了である。

システム連携

これでシステム連携できるようになったので、slackやLINEのシステム連携を調べはじめたが、手続きおよびセキュリティ設定、およびプライバシーポリシーの提示などが必要。プライバシーポリシーの作成はきちんとすべきなので、今は無理。ということで、少人数ならOKなSkypeでの連携を実施した。

beachside.hatenablog.com

設定画面が実はコピーできなかったのだが上記ブログを参考にして対応できた。ただ、自分の環境の問題でSkypeのストア版がインストールできず、サポートに確認する羽目になったが治らず昔のSkypeでの動作確認となった。接続確認で時間がかかったのはまさかのSkypeをインストールする部分だった・・・

インストールが完了したらボットがすでに一覧に表示されている。メッセージのやり取りをしてみる。

f:id:testedquality:20180513225132p:plain

想定の動作をしていることを確認。これでほしいボットが利用可能になった。

 

ここまでの作成は実はすべて無料で実現可能。ただし、Azure Portal にてbotサービスを新規作成するとき、一緒にApp Service が作成されるが、初期設定は有料プランである。無料に切り替え忘れると見事に課金されるので注意が必要。初日の操作で150円くらい。

QnA Maker で全国の水産高校情報を返すBotを作成 その1サービス作成まで

はてなブログの片付けをしているとき、自分の昔の記事をみて「QnA Maker がGA(一般提供開始)したのを忘れていた」ことを思い出した。前回はまだまだというブログを残している。

testedquality-tech.hatenadiary.jp

実は別ブログにて全国各地の水産高校サイトを巡回し記録するということをしている。URL一覧があってもなかなか面倒だし、高校名など固有名詞がもう年で覚えられない。ということで、こういう時は自分以外の外部記憶を増やすしかない、すなわちクラウドを利用することにした。GAしているQnA Maker を使いさらにBot に答えてもらうように作成することにした。

Bot の作成方法を検討する

QnA Maker を利用する場合、通常はFAQ サイトなどから自動作成を行うのが多いと思う。今回のBot作成には以下を参考にしたが、ここでも仙台市のFAQ サイトを利用していた。

qiita.com

最初はFAQを作ることを検討し、「福岡県の水産高校は?」というような質問を複数考えた。がしかし、今回答えてほしいのは水産高校の名称とURLなので、事実上県名や名称だけ部分一致すればよい。「福岡」とか「福岡県」だけで水産高校は絞り込めるし、水産高校は県に最大4つなので回答可能であるはず。実際にテストしていると日本語表記が短いと単語とみなされるのかマッチしないことが多いことも判明した。

ここで選択肢としては

  1. Azure Bot Framework にてコードを書いてよしなに分岐する
  2. LUISを利用して定型質問を作ってみる

    LUIS: Language Understanding Intelligent Service

  3. QnA Maker 向けの単語を並べて、単一回答に結び付くようにする

1.は都道府県別で47個それぞれ対応するのかという面倒くさいことになるので最終手段。2.が常套手段かと思いながらLUIS画面を使いだしたが

「XXX県の水産高校は?」「◇◇水産高校のURLは?」

くらいしか思いつかず。これなら、県名や高校名だけ入力するほうが質問する自分が楽なのでは?ということで、3.のQnA Maker での登録に決定した。

QnA Maker 作成

各高校ごとに表示させたい回答を高校単位に1つにした。高校名、住所とURLを一つに。追加で地区別の項目も作った。これらをExcelにまとめた。

f:id:testedquality:20180512011903p:plain

QnA Maker への登録は以下のように高校名、県名、高校の略称がHPにある場合にはそれも追加した。f:id:testedquality:20180512011537p:plain

県名や略称をいれると情報が戻るようになる。力業であるが目的は達成できている。

f:id:testedquality:20180512011716p:plain

これをPublishして外部呼出し可能にしたら、Bot Frameworkに移動して連携処理を作成する。最初の記事では、Bot Framework がまだプレビューのころで今は新規作成方法が異なる。以下の記事が最新に近いので、参考にしながらテンプレートで【Question and Answer】 を選択して作成してみた。

チャットボット 作成ツール Web App Bot とは?

Bot Frameworkを使うときWeb App Bot についての記事は少ないのでありがたい。

2018/05/12 01:26

 

f:id:testedquality:20180512015535p:plain

 作成したbot サービスを開いてアプリケーション設定 というメニューをクリック、開いた画面下 QnAKnowledgebaseId 、QnAAuthKey などが空である。ここに QnA Maker から値を設定。

設定方法はQnA Maker マニュアル に記載あり。以下のように対応しているらしいがなんで一覧表ではないのか?マニュアルないとわからないよ。

Create a QnA bot with Azure Bot Service - Azure Cognitive Services | Microsoft Docs

f:id:testedquality:20180512022012p:plain

これを保存したら、ブレードの上にある「Webチャットでテスト」画面で接続を確認する。正しければQnA Maker での回答が得られる。よかった!

f:id:testedquality:20180512022623p:plain

 

これでbotサービスとしては完成。次回外部連携で使えるようにする。SkypeとLINEを予定している。一番時間がかかったのはImport Formatで前回ひっかかったからと、手動で1つづつ登録した点。あとQnA Maker はタグが利用可能なのでGoogle Map向けURLで所在地確認をできるようにしておきたい。でも1日で作成できたのでよしとする。 

VR酔いの原因を自分で追及した結果VRカノジョをクリアした話

注意:今回のブログにはVRカノジョというソフトについて話を書いてます。元が18禁の男性向けソフトウェアであり、エロの話も踏まえて書きますので苦手な方は読まないでいただければと思います。また自分自身のセクシャリティについても書いてます。真面目に考えたのですが不快に感じられるかたも多いと思いますので、そんなの気にならないという方のみお読みください。

 

 

 

 

 

 

 

年末にWindows Mixed Reality (WinMR)対応HedSetを購入した。

testedquality-tech.hatenadiary.jp

あれから数か月、プライベートでは極力使ってみた。色々考えたところがあるが今回は「VR酔い」について書きたい。「VR酔い」をどうにかしたくて結果「VRカノジョ」をクリアした話である。

HoloLensに代表されるMRマシンの場合、現実世界の中で過ごすため日常と地続きだ。しかしWinMR、Vive、OculusなどVRの場合、仮想現実と日常のすり合わせがうまくいかず三半規管が現実に対して補正し続けるのが酔いとなって表れる。

正直最初の2か月ほどは毎回10分もしないうちに酔っていた。最初に購入したウルトラマンですら見るためにログインするまでに酔っていた。もともと遠足のたびにバスは一番前の席で紙袋持ってたタイプだ。年を取っても三半規管は弱いまま。それでもあきらめられず毎日やる日々は、修行のようだった。遅く帰宅すると酔いやすいので週末にやったりしたがなかなか改善しなかった。この当時はVRChatを5分やるのが限界だった。

そんな中ずっとツイートで見ていた「VR日本列島」というソフトがWinMR版で提供され、体験したら初めて15分を超えて遊べるようになった。

www.microsoft.com

こちらのソフトでは日本列島上を自分で飛ぶことができる。美しい朝焼けがすばらしいのであるが、何度か試すうちに前を向いて視線の範囲が定まっていると自分が酔いづらいことに気づいた。自分がなにをやるのか、いまどのような状態かが把握できてないと視線は周囲を見渡し続ける。無意識の把握動作が酔う原因らしかった。そこでの体験より「何か目的があって、その対象を見続けるような場合であればあまり酔わない」という仮説を自分に立てた。

この仮説からすれば、室内などある程度自分が経験がある場所に近いなら、かつ想定内の探索なら酔いずらいのでは?と考えたが、では実際どうしたらよいものかと悩んでいた時、VRカノジョという話題のアダルトVRゲームがあることをツイート経由で知った。(下記は通常サイトだが選択で18禁になります。ご注意ください)

www.illusion.jp

複数のゲームソフトを体験した際には自分で探索する際、首を振り続けているうちに酔っていた。VRChatのデフォルトでも3分で酔うのだ。しかし、このソフトを見る限り最初部分は室内であるし個室一部屋での探索。普段から離れない空間なら酔わないのではないか?と。18禁は関係なく映像の評判もよかったのと、ちょうどSteam版が発売WinMR対応も行われたので購入して予測を試すことにした。

Steam版は全年齢対象で標準ではおさわり&キスシーンまでである。一応クリアするまで何度かツイートしているのでそれを並べる。

[https://twitter.com/testedquality/status/984450528515047425:embed#で、やってるうちに「自分が年を取った時この子が孫設定でやってきたら私ずっとしゃべってるのかもしれん」と思いました。ということでぜひ「VR孫」を作ってください。絶対喜ばれるし私は喜ぶ。スカート下はスパッツかタイツでよいのです。ポッキーはおやつで私が渡して喜んで食べるのを見る。

f:id:testedquality:20180423222911p:plain

このスクリーンショットは自分の子供を思い出したときに撮った画像。実際にはおさわり可能なのだが全くそこに考えが到達しておらず、ツイートのように子供のことを思い出していた。自分は女性で背も高くはない。そのため人のつむじをじっとみるのは子育て中の子供たちの頭で、その頭は寄りかかってきたか、耳かきか、膝上に座っている時だ。このタイミングでキャラクターさくらちゃんの頭を触っているとき、そんなことを思い出させた。

そしてとりあえず普段の生活通りに歩き、見ることで仮説通り酔いがほとんど出なかった。最終的にVR内で1時間以上対応可能となったことはありがたかったし、その後VRChatでもある程度酔いを軽減できたのは対応能力が三半規管についてきたってことかもしれない。

実際VRカノジョはキャラクターのリアルさとそれに伴うエロティックな表現が非常に評価されているソフトである。が、体験すると操作性全般や体験への細かい気配りにより没入感を高めている点が、今までのソフトウェア体験の中でも非常に評価できる点だと感じた。彼女にキスシーンで近づいても眼球や肌の描き方が気になって毎回ガン見することになる。

またSteam版にて多言語化対応も行われており、アナウンスも基本英語で実施。サポートやアナウンスも活発に行われており、世界対応販売を実施している点も特筆すべきだと思う。他の大作ソフト群と並んで4/23現在VRソフトでベスト10内に入っているのも納得できる。

f:id:testedquality:20180423224410p:plain

個人的にはエアコンとか家具のスケーリングが素晴らしく現実的なのが大好き。上記スクリーンショットは髪の毛を触っている最中、操作して190cmくらいの人の目線にしてみたが、ふと横をみたとき、椅子とかで高いところに上った際、普段見ないエアコンの上部が見えて「我が家も夏に向けて掃除しないといけないなあ」と思うくらい自然なリアルさ。

f:id:testedquality:20180423222306p:plain

VRカノジョによってVR酔いをある程度克服できたため、最近は他のソフトも安心して試せるようになった。まさかVRカノジョでVR酔いを克服するようになるとは思ってなかった。とりあえずなんでもやってみるものだと、本当に心からVRカノジョには感謝している。問題点はまだエクスタシーパッチを当ててない点である。全部やらないとクリアではないと思いつつ、うーん・・・・でもこのいいね!がある以上私は全力でやらざるを得ない。頑張ります。Fate/Stay Nigth以来のクリアを目指します。

技術的負債の返却は「変わりたい」意思がすべてだと思う

今月末で長年携わったシステムがサービス停止する。10年以上社内システムの一角として動いていたが3月末でサービス終了となった。思い出話と技術的負債を返却した話として書いておく。

かかわってきたシステムは最近でいう「技術的負債」という言葉が流行る前から、何度も繰り返し負債返却を行って来た。日本の企業では珍しいのかもしれないが、会社が返却を肯定的な風土であるのだ。

しかし業務継続性と両立させるためコアを変えずに返却するという作業の連続だった。おかげでサービス停止まで10年前の利用データがコンバートして最新環境で自動で動くようになる仕組みが動いてたくらいだ。業務継続性を担保することで、代わりに積もってきたコアシステムへのメンテナンス工数が重荷となったため、全面刷新を検討することとなった。当然今までの業務同様受注ため提案を上層部が行っていたことは知っている。が、最終的に全面刷新ではなく、すでに実績があった他社システムの改修で対応することとなった。負けた点はいくつかあるのだとは理解している。

正直弊社的には痛手だった。数十人いる部署の主力となる売り上げが数年後0になるのだ。であるはずだが、その話を上司から聞いたとき私はつい

「私たちラッキーじゃないの。」と返事した。

なぜなら、当時を振りかえれば技術的負債に追われ、開発工程の改善にも限度があったからだ。それによる運用コストがメンバー全体の疲弊を誘っていた。非常に優秀で業務改善へ積極的なメンバーたちだったが、テストファーストやJenkins利用もコア部分への適用は難しく新規追加する機能に限定しての対応となっており、一番コアとなる部分はどうしても職人技的な部分が残ってしまっていた。

それが停止するサービスとなったことで、追加投資が0になった。必然的に新規開発で売り上げを立てる必要がでた。上層部は大変だったはずだが、幸い取れた仕事に対してメンバーは全く異なる新しい開発言語、手法をもって開発できることを実証した。

決定から数年。ついに停止する前日になった。このシステム開発は最初社内からスピンオフしたベンチャー合弁会社内で担当していた。私は産休明けから配属されたものの、システム開発が忙しくてたびたび子供を連れて休日出社していた(会社がベンチャーっぽく緩かったこともある)。ワークライフバランスとか一切ない、24時間体制での業務なので、止まればすぐ電話呼び出し。属人化していたシステム。設計書もほぼなかった。当時から一緒に仕事をしていた方に、

「あの当時連れてきてた子供、もう中学生になったよ。早いもんだねえ。」

と告げたら、絶句した後

「それは、僕も年を取るはずです・・・」

とため息つかれた。

ねえ、と思いつつ私の手は全く別のシステムリリースを行っていた。すでに別業務が主担当である。この数年徹底的な属人化解消と情報共有、そしてモダンな開発手法での新規システム構築など様々な部署内での試みが有機的に働いて非常に効率的となり、いつの間にか今年の新人は「所属してから残業したことないんですけど」とこの日告白を受けるまでになっていた(本人が優秀なせいもあると思う。結構仕事振っていたので)

とりあえず部署の皆が「変わりたい」という思いがすべてを変えたのだと思う。だから寂しいがすがすがしい。そしてそれを当たり前と若者が思うこと。それでいいのだ。皆新しいところでも十分やっていける。それは証明されているんだから。

Developers Summit 2018 に参加した

今週久しぶりに技術カンファレンス Developers Summit 2018 に参加してきた。書くまでがカンファレンスなので忘備録として書く。

event.shoeisha.jp

もともと2日目しか参加できない日程だったが、いままで無料でさんざん参加させてもらっているので昨年から「個人スポンサー」で参加している。さらに本日は午後からの参加であったが、レポートを書く。

1 to 100:子どものためのオープンソースコミュニティ「CoderDojo」が全国100ヶ所を超えるまで

http://event.shoeisha.jp/devsumi/20180215/session/1663/

全国115ヶ所以上に点在する子どものためのプログラミング道場「CoderDojo Japan」の代表 安川 要平 さんによるセッション。

coderdojo.jp

コミュニティとして急速に広がっているのをここ数年のMaker's Fair にて見ていたので、その在り方について聞きたかった。実際に今までの成り立ち、および運営方法の解説が半分以上占めたが、これがよかった。一つの成功例が今後の組織の在り方に十分役立つ内容だった。

Kubernetesを用いた最強のマイクロサービス環境をGKEで実現しよう

http://event.shoeisha.jp/devsumi/20180215/session/1688/

グーグル・クラウド・ジャパン合同会社 福田 繁さんによるセッション。単純にコンテナ技術である「Kubernetes」の読み方すらわからずきちんと概要を知りたかった。全く業務では使ってないがデファクトスタンダードになってきていると聞いていたので。内容まとめはすでに書かれていた講演メモが素晴らしいのでこちらで確認してほしい。唯一残念だったのは紙でアンケートが配られたこと。書くもの持ってない人多いので今度からぜひアンケート作ってURL配布してください。ちなみに読み方は「クーバネティス」です。

 

デブサミ2018「Kubernetesを用いた最強のマイクロサービス環境をGKEで実現しよう」講演メモ #devsumi - 元RX-7乗りの適当な日々

資料なくてもこのまとめでわかるってすごい。理解できる力・・・頑張ろう。

2018/02/16 21:27

 クリエイター仲間3人で商用レベルのVRゲームを個人開発した話(仮) 

http://event.shoeisha.jp/devsumi/20180215/session/1689/

今日一番見たかったセッション。現在自分が一番興味を持っているVR開発において、VRソフトに珍しい「女子がかわいいと思う」ソフトが非常に評判なのを知っていた。それが「ハッピーおじゃれタイム」どんなソフトかは動画みてもらったほうがソフトの内容がわかりやすい。誰でもかわいいアイドルになれるのだ。

www.youtube.com

hashilus.com

開発者の chiepomme(ちえぽむ)さんがどのように開発をしたのかを知りたかった。一番前で写真撮るぞとおもってましたが撮影禁止でしたのでたくさんツイートすることに。以下自分のツイートを並べる。

同人的なつくりから始まったのは今回初めて知った。趣味で始めた開発を4か月で商用に乗せたのは驚嘆なのだが、そのあと chiepommeさんの行ったことが非常に理にかなっていて納得できた。きちんとターゲットが明確で、有効なことを認識して、勝ち目があると判断した上で「自分が楽しいから」開発していた。そして開発もリーンスタートアップを適用して最少開発項目に絞り込んでいた。正直、プロジェクトの進め方として有用なセッションだった。

 その他運営、ブースなど

 2日目の会場入れ替えは非常にスムースだった。個人スポンサーと並びを分けていたので楽だったのもあるが、休憩所をどちらにも準備していて廊下が人であふれてなかったのがいい点だったと思う。また個人スポンサー会場には飲み物にお茶が増えているだけではなく、今年は御菓子とサンドウィッチまで常備されていてびっくりした。1万でここまでするの!?最近でかけた有料セミナーでもここまでやってない。また席も椅子がひじ掛けあるタイプになって楽だった。

あと書籍!毎年これだけは忘れず購入している。翔泳社さんは主催者でもあるし個人スポンサーは30%割引あって大変優遇されているのだ。また、オライリーさんは購入金額でグッズをつけてくれるのだがこれが豪華。今回本を1万近くかったがこれだけグッズがついたら儲けないのでは?くらいの勢いだった。

さあ買ったし頑張ってUnityやるべ。仕事は仕事でPythonなんで頑張ります。

meltdownのパッチでAWSのPostgreSQLがやられた

今年は仕事はじめから今日までずっと「meltdown」と呼ばれるCPUの脆弱性対応で休みがほぼない状況だった。忘れないうちに記録する。会社に怒られたら消すけど数値は出さずとりあえず書く。

www.publickey1.jp

この脆弱性によって担当していたシステムがハッキングされたわけではない。この脆弱性が緊急度が高く、Azure、AWSなど一部クラウド環境には事前にパッチが適用されたのだが、そのパッチが担当システムにて影響がでてサーバ自体がダメになってしまったのだ。やっと今日すべて事業が通常に戻ったので久方ぶりにビール飲みつつこれを書いている。

原因と結果を端的に書くとこれだけ。ただ仕事とセキュリティと事業継続性などから色々な勉強にもなった。

まずクラウドを使う場合、クラウド環境自体は常にベンダーによって脆弱性は解消され最新に保たれるため、オンプレではありがちなパッチ適用を見送るという方法はできない。今回のパッチも、年末のうちにアナウンスが出ていたので事前に受け入れ準備して対応していた。(メンテナンス時間の通告があってそれまでに自分で再起動的なことをしないと通告時間に強制再起動となる。)

クラウドを使っている限り最新が適用されることは前提なのだが、私の担当システムは2013年から稼働しており、AWSでも古いタイプのPVを利用していた。他にHVMというものがあるが違いはこちらがわかりやすかった。

kanny.hateblo.jp

そして今回1月3日に適用されたAWSのパッチは、PVの場合のみ大幅なCPUの稼働ダウンを引き起こした。

実はシステムは今年終了が決定しているため延長サポートモードで1年近くPG変更をしてない。変更点はパッチのみである。この場合変更点は明らかである。あからさまにAWSのパッチしか変更がなかった。

しかし、当初全く何が起きているのか理解できなかった。利用開始の朝、システムが問題ない稼働状況で、特定のDBサーバのみCPU100%とシステムダウンを繰り返した。これを利用者による問題として調査を開始したが問題が出てこない。担当者間で悩んでいるうち夕方となった。そしてシステム利用率がさらに上がるとき、同一機能の全サーバが一斉にCPU100%からのダウンを記録した。これでAWSの問題の可能性に初めて気づきググって問題に気づいた。

qiita.com

今回の問題点はAWSのパッチの不具合とパッチ自体の内容が利用してたDBであるPostgreSQLと相性最悪だったことが大きい。他にもパッチが適用されたサーバ群があったが、DBまでの機能低下はなかったのだ。実測値でその日自社DBは負荷テストや実績の25%程度しか稼働できなかった。システム利用率が年初で高いこともあり、事業影響は大きかった。

対応として最初スケールアップは最大まで引き上げた。が、CPUが100%になると反応しなくなるという状況で必要な性能に到達しない。通常はCPU100%でも処理は継続できたのに(実績ではL/AがCPU1つにつき2.5くらいまでOKだった)。これより対応策をシステムオーナーと打ち合わせ、AWS以外でサーバを準備し切り替える策をとった。ハイブリッドクラウドと呼んでいいと思う。サーバ作成とかネットワーク設定とかテストに追われた。

準備中の1月13日にAWSは再度パッチ提供を行いブログが更新された。 

プロセッサの投機的実行に関する公開調査について | Amazon Web Services ブログ

1/13にさらにアップデートされたパッチがリリースされた模様

2018/01/11 20:15

ずっとブログで報告してくださっていた方の検証結果も確認し、ツイッターでも解消の報告が多数みられることをメンバーに共有した。しかし公式で再度パッチを適用すると記載があり、再発が0ではない状況でAWSのままにする選択はなかった。

「AWS、またパッチ当てたってよ」と聞いたので3度目のAurora(MySQL互換)R4テスト(mysqlslap) - Qiita

結果を公表してくれてありがたいです。今から自分のシステム確認します。

2018/01/13 20:14

AWS発表では「性能低下はなかった」という文書がでており、上記ブログの追記で「それはどうなの?」とメンバーでも話題となった。が、私以外のメンバーは優秀なので 皆業務遂行し、検証リリースを実施。効果測定も終わり今日やっと元の性能が出る状態になった。

正直PVインタンスを利用して問題が発生した方々は大変だったはずだ。チューニングしたシステムが勝手に悪くなるのだから。しかしそれも考慮して対応できるようにするのがクラウドを使うためのルールなのだと強く感じた。

そして昔自分も実装担当したサーバ切り替え機能が、今回大いに役立ち「よく考えられてるシステムだなあ」と終わりが近いシステムの大騒ぎでちょっとだけ自分たちを褒めた瞬間もあったことを書いておく。