ナカザンドットネット

それって私の感想ですよね

covid19の自宅療養中にあって嬉しかったもの

7月下旬からcovid19にかかってました。妻の助け、そして新潟市・新潟県の支援体制に支えられながら、今週後半に自宅療養を終える予定です。

まだ終わってはいませんが、これがあったのは嬉しかったよ、というログを残しておこうと思います。軽症者の一例としてご覧ください。

タオルたくさん

初日の時点で、妻が隔離部屋に清潔なタオルをいくつか差し入れてくれました。

汗をかく機会が多かったので、これは助かりました。

すぐ食べられるもの

食欲は比較的早い段階で戻りましたが、家族の生活空間は可能な限り行かないようにしないといけないので、妻が差し入れてくれた食料にかなり助けられました。

主にスティックパンとゼリー飲料でした。

www.pasconet.co.jp

水分

エアコンがない部屋で自宅療養していたこともあり、水分の摂取には特に気を使いました。

最初は妻に差し入れてもらっていたのですが、負担がバカにならないので、2日目に通販で麦茶を箱買いしました。

今も無限に麦茶を飲んでます。

ブリーズライト

快眠のお供に。鼻詰まりで眠れなくなる可能性が高かったので、ブリーズライトを毎日付けて寝ています。元々鼻のトラブルが多いので、常備していたのが功を奏しました。

今回使ったのは↑のクールタイプでしたが、万全を期すのであれば、強力に鼻孔を広げてくれるエクストラタイプを使ったほうが良いでしょう。

パルスオキシメーター

新潟県では、県医療調整本部からパルスオキシメーターが貸与されて、毎朝SpO2値を含む健康状態を報告することになっています。

息苦しいな、と思ったときに測ってみて、98%になって「なんだ気のせいか……」となることが多かったです。

余談ですが、大学の卒業研究が「Android + パルスオキシメーター」をテーマにしたものだったんですよね。

blog.nkzn.net

あれから12年ほど経って、パルスオキシメーターのお世話になるとは思いませんでした。ご縁ですねえ。

布団の部屋干し設備&スゴイッス

隔離部屋からはなかなか出られないわけですが、寝ている間にはなかなかの量の汗をかくので、布団を敷きっぱなしというわけにもいきません。

というわけで、日中は布団を部屋干ししています。

布団を干すやつ&スゴイッス

こんな感じのやつを使ってます。

また、布団を退けて空いたスペースでパソコンが触れるように、キャンプ用の椅子(スゴイッス)とフットレストを設置しました。

この環境でなんとかパソコン作業を再開できるようになりました。この記事もスゴイッスに座って書いています。

県からの支援物資

新潟県では、パックごはん等の食料品や除菌ウェットティッシュのような日用品などを、自宅療養者向けの支援物資として希望者に配布しています。

www.pref.niigata.lg.jp

私はもちろん外出できませんし、濃厚接触者になっている家族もあまり頻繁には買い出しに行けない状況になったので、お願いすることにしました。

これが大人1人分の物資です。二箱届きました。

支援物資1

支援物資2

食料品としては、ドライフルーツやドリンク、野菜ジュース、ゼリー飲料などのそのまま食べられるものだったり、乾燥海藻などの少し調理すれば食べられるものが入っていました。

地味に嬉しかったもの

我が家は手を洗えるような水盤が共用のキッチンと洗面所にしかなく、家族との接触をできるだけ避けたい私は手を洗う機会が少なくなっていました。

そのため、手指の清潔を担保できるウェットティッシュが地味に嬉しかったです。

アルコール除菌ウェットティッシュ

ワンピース無料公開キャンペーン

初めの数日間はパソコンを開く元気もなくて、iPadくらいしか使えなかったのですが、ちょうど時期が被ったのがワンピースの無料公開でした。

game.watch.impress.co.jp

魚人島からワノ国まではちょうど読んでなかったところだったので、読めてよかったです。

いやほんと、これがなかったら2〜3日目は暇で死んでたと思う……

妻の手料理

胃に負担がかからないように、麺類を中心に食事を用意してくれた妻に感謝です。どれも美味しかった……

まとめ

というわけで、自宅療養に入って嬉しかったものを並べてみました。

雑多に書いてしまったので参考になるかは怪しいですが、皆様が発症したときの参考になれば幸いです。

times_nkznが上手いことフルリモートの雑談を創出した結果、zp-nkznが生まれた話

社内の雑談用チャンネルとして #times_[人名] という命名規則があったのですが、このたび #zp-[人名] に変わりました。というお話。

目次

フルリモートと雑談

COVID19の影響により、リモートワーク(テレワーク)が常態化する会社が増えてきました。ソフトウェアエンジニアの採用市場でも、フルリモートの働き方を常設している会社だけしか選べない、という方が増えてきているそうです*1

私が現在働いているモニクルは、ソフトウェアエンジニアやデザイナーの組織をフルリモート前提で構築しています。CTOの @gabu は札幌にいますし、私のチームメンバーは台湾と沖縄にいて、オンサイトでのコミュニケーションはそもそも選択肢に上りません*2

メンバーが全国にいる(今は↑に加えて沖縄もいる)

さて、フルリモートが可能になると、働く場所の制約がなくなったり柔軟に家事と仕事をスイッチしながら日常を過ごせたりと、メリットも多くなりますが、もちろんデメリットもあります。その中でも特に話題に上るのが「雑談の機会損失」です。

モニクルではAroundによる常時接続のビデオチャットを常用しており、ソフトウェアエンジニアやデザイナーは勤務中の多くの時間でお互いの顔を画面の片隅に置きながら過ごしています。

around.co

ログインは強制ではないのですが、単純に寂しさが薄れるのと、話しかけやすい、話しかけてもらいやすいというメリットがあるため、常駐している人が多いです。常時接続だと他人の環境音が気になったり、Webカメラ・マイクのスペックでストレスを抱えやすいところですが、次のようなツールを会社から全社に支給しているので、ストレスは最小限になっています。

  • ノイズキャンセリングツールのKrispのライセンス
  • それなりにいいWebカメラ
  • それなりにいいマイク

詳しくはCTOが記事にしていたので、こちらをご覧ください。

note.com

そんな感じで、フルリモート勤務をストレスレスに過ごすためのツールはどんどん整備していく会社になっています。

とはいえ、これだけ設備が揃っていても、実際に雑談が活発に行われるかどうかは別の話です。散発的に雑談は行われていますが、他の仕事をしている人の邪魔にならないかな、と気を使うので、Around上で雑談が発生するのは人数が少ない時が多くなりがちです。

今思えば、ビデオチャット以外の雑談の機会が潜在的に求められていたように思います。

times_nkznという無法地帯

2010年代後半に「分報」という文化が盛り上がりました。私の観測範囲では↓の記事が火付け役だったように思います。

craftsman-software.com

日報の代わりとして、リアルタイムで個人的な業務メモを書いておくと、同僚・上司から状況を把握してもらいやすくなり、アドバイスをもらえる速度も上がる、といった業務効率化の文脈で流行り始めた文化だったように思います。

私もそういった文脈は知らなかったわけではありませんが、根がツイ廃なので、社内Twitterが欲しいな、という邪な気持ちで、入社時にお世話をしてもらう場所だった #onboarding_nkzn チャンネルを #times_nkzn チャンネルにリネームしました。

おかげ様で、timesの合間に仕事仕事の合間に楽しくtimesを投稿させてもらっています。

my new gearな話題

新潟自慢の話題(角上魚類は新潟の会社です!!!)

だんだんと反応してくれる人が出てきて、雑談のハブとして機能するようになっていきました。

Twitterとの使い分けとしては、若干の個人情報が混ざっても気にしなくてもいい場所、として重宝しています。

フォロワーが現れ始めた

そんな具合に、雑談のエントリーポイントの一つとして私のtimesがうまく回り始めたのですが、これを見た同僚が、新しくtimesを初めてくれました。

私は私のためにサボって雑談していただけなので、誰かの役に立っていたとは思わず、嬉しいやら驚くやらという感じです。

話を聞いてみると、そもそも私の入社より前に分報を運用しようとした歴史があったそうです。そのときは「リアルタイム日報」という業務効率化目的での運用を意識していたそうで、段々と疲れてしまって運用されなくなった、とのことでした。

ここからの流れで、何人かの同僚が業務目的というよりは雑談目的のtimes運用を初めてくれて、雑談を始めるきっかけがかなり増えたように思います。

zp-nkznへの転生

ここでやっとタイトル回収です。

雑談timesチャンネルが増えてきたことによって、CTOの中で「雑談timesがチームにもたらす好影響」への解像度が上がってきた折に、こんな気づきがあったようです。

まあ惰性でtimesと呼んできたものの、元の分報文化とは似ても似つかない運用をしているので、「雑談times」を表す別の呼び方があってもいいよね、timesという名前のままだと分報文化を引きずって業務効率目的の話題しか書いちゃいけないんじゃないかと葛藤する人も出てくるよね、みたいな課題感なら私にもわかります。

ここまで解像度が上がったことにより、これまで名前は知っていたものの概念が微妙にわからなかった、メルカリの #zp- という命名を完全に理解することになりました。

私が #times_gabu に貼ったのはこれ↓

mercan.mercari.com

元々、雑談グループチャンネルとしての #z- プレフィックスは営業メンバーにも認知されているので、その派生としての個人チャンネルに #zp- と名づけるのは全社的にも(timesよりは)受け入れられやすいだろう、ということで、雑談促進の施策として導入を進めることになりました。

判断が早い

まとめ

そんなわけで、 #times_nkzn 改め #zp-nkzn は今後とも適度なサボり場雑談のハブとして好き勝手な話をやっていきます。

宣伝

株式会社モニクルでは、はたらく世代・子育て世代がお金の不安を手放せる手助けをするための金融サービス業をより広めるために、ソフトウェアエンジニアを募集しています。

90秒だけお時間をいただいて、↓の動画を見ていただけると、どんなサービスをやっている会社なのかざっくりわかってもらえると思います。

www.youtube.com

マネイロにお金の相談をしにきてくださるだけでも嬉しいですし、もしこの記事を読んで会社自体にも興味を持っていただけたら、↓のCulture Deck(会社説明資料)を読んでみてください。

speakerdeck.com

さらに興味を持ってもらえた方はMeetyで私と雑談しましょう!

meety.net

よろしくお願いします!

*1:某採用プラットフォームの営業さんから聞いた話

*2:開発合宿くらいはそのうちやりたいね、と言っていますが

2021年を振り返る

ハッピーニューイヤー。2022年もよろしくお願いします。

2021年を振り返ってみましょう。

引き続きやっていること

技術書典Web開発とCodeZine連載は引き続き取り組んでいます。2021年は技術書典11がオフライン・オンライン同時開催という暴挙に出たのがあって、なかなか精神的に追い詰められる初夏を過ごしていました。CodeZineは2020年末に始まったReactライブラリ連載を細々と続けています。

どちらも2022年も続けていきます。

techbookfest.org

codezine.jp

変わったこと

5月末で10年間お世話になったウォーターセルを辞めて、OneMile Partnersに転職しました。ちなみに事業展開の都合で、11月には持ち株会社として新たに作られた株式会社モニクルに転籍しました。日本人のお金のリテラシーを底上げできるように頑張るのでよろしくね。

blog.nkzn.net

新しく始めたこと

ウマ娘プリティーダービーにハマりました。そしてそれをきっかけにして、本物の競馬にもハマりました。

予想はからっきしなので、もともと日本Androidの会で10年ほど前から親交があった予想屋マスターさんの力を借りながら、馬券購入を楽しんでいます。

3〜5歳馬あたりの上位馬たちの名前は段々と見覚えがあるものになってきて、重賞レースを見るのが楽しみになってきました。住んでいる場所が新潟競馬場まで車で30分くらいのところなので、開催期間中は気軽に見に行けるのも嬉しいところです。コロナ前は子供向けのプリキュアショーなども行われていたので、またその頃に戻ってくれると子供たちも連れていきやすくなりますね。

ウマ娘の元ネタの競走馬たちの子や孫が活躍する様子も見られ、オタクとしても満足感が高いです。5月に新潟県胎内市へ家族旅行に行った際、乗馬目的で松原ステーブルズさんにお邪魔したのですが、アグネスデジタルやマンハッタンカフェの子がいて地味に感動しました。夏にはキングヘイローの子も(色々あったようですが)仲間入りしたそうです。また行きたいですね。

matsubarastables.webnode.jp

2022年やりたいこと

せっかくハマったので、2022年は競馬に関するサービスやアプリを何か出せたらいいなあと思っています。

あとは、証券外務員二種を取ってみたいなあ。プロメトリックで毎週試験が受けられるので、適度に勉強したらチャレンジしようと思います。

🍺 こしひかり越後ビール 🍺

Beer Advent Calendar 2021の5日目です。昨日はかんざむさんのバドワイザー メッシ缶でした。そういえばバドワイザーはなんだかんだで飲んだことないな……

adventar.org

今年は新潟らしいエチゴビールを飲むぞ

さて、今年はエチゴビールを飲もうと思います。日本第一号の地ビール醸造所であるエチゴビールについては2015年のアドベントカレンダーでお話ししたので、よろしければこちらもご覧ください。

blog.nkzn.net

新潟といえば米ですよね。エチゴビールにも、新潟らしさを出そうとしたのか、新潟米仕立てのビールがあります。それが、 こしひかり越後ビール です。

f:id:Nkzn:20211204233858j:plain
田植えのイラストに郷土愛を感じるこしひかり越後ビール

見た目には素直なピルスナーですが、原材料にはしっかりと「米」が明記されています。

f:id:Nkzn:20211204233959j:plain
原材料にはしっかりと米が明記されています

ただのスッキリ系かと思いきやどこかフルーティ

実はお米をビールに入れるというのは、喉越しのいいスッキリしたビールに仕上げる際には時々ある手法なようで、そこまで独自性があることではないようです。

となるとスッキリ系かなと思って飲んでみるのですが、これがどこかほっとするフルーティな味わいもあるのです。ある意味淡麗辛口の日本酒と近いかもしれません。

新潟こしひかりから生まれた、ほっとする味わいのこしひかり越後ビール、皆様もいかがでしょうか。

iOS版YouTubeアプリのOSSライセンスページが魔窟

気分転換で下調べも何もせずに雑に書いた記事です。個別のライブラリについては間違ったことを言っている部分が多いと思うので、参考にしないでください。


こんなツイートを見かけました。

Yogaといえば、FacebookMeta社が作ったAndroid / iOS向けのレイアウトエンジンです。

yogalayout.com

React Nativeのレイアウトエンジンでもありますが、まあ今回はReact Nativeの話はしません。YogaはAndroid向けのLithoやiOS向けのComponentKitといった形でも提供されており、ネイティブアプリのUI実装にも活用されている技術なので、YouTubeアプリで使われていることに大きな驚きはないのです。

……が、やはりGoogleで採用されるには珍しいライブラリであることも事実なので、これはもっと怪しいライブラリが隠れているな?という直感が働きました。結論からいうと実際にやばかったので、目についたライブラリを並べて行こうと思います。

Closure Library

まずはGoogle謹製JavaScriptフレームワークとして古株の Closure Library さん。

developers.google.com

……おかしい……初手からおかしい……お前はネイティブアプリではないのか……?

J2ObjC

続きまして、「AndroidとiOSの両方から使えるライブラリを作りたい」という夢を持ったことがある人なら誰もが知っている J2ObjC です。

developers.google.com

Java言語で書かれたコードをObjective-C言語に変換するやつです。いわゆるトランスパイルツールですね。

JavaScriptライブラリが出てきたあとだと、最終的にObjective-Cになる分だけまだ普通のツールに思えてきました。

JavaScriptCore

お次はSafari / WebKitのJavaScriptエンジンである JavaScriptCore です。

developer.apple.com

まあClosure Libraryがあるんだから、JavaScriptを動かせる何かが出てくるのはなんとなくわかってた。

iOS的にはほぼ標準ライブラリみたいなもんなんだから、特筆する必要はなかったと思うんだけど、なんで書いたんだろうなあ……

jquery2

JavaScriptライブラリ第2の刺客。言わずと知れた jQuery さんです。

jquery.com

今の最新はv3系だったと思うんですけど、わざわざ2って書いてあるのでv2なんですかね……

どこで使ってるんだろ……

LLVM

次はコンパイラ基盤の LLVM さん。

llvm.org

まあXcodeでビルドするときに使っているので、特に違和感はないのですが、他の異常さを際立たせるためにあえて置いておきます。

quickjs

さあ、今度は軽量JavaScriptエンジンの QuickJS だ!!!

bellard.org

JavaScriptエンジン2つ目いただきました〜〜〜〜〜〜〜〜〜!!!!!!!!!!!

なんで????????????????????

ES2020の仕様をほぼ網羅しつつも、ファイルサイズが小さく起動も高速という特長があるエンジンということで、そういうのが求められる場所に配置されたものと思われます。

V8

若き王者が帰ってきたッ

どこへ行っていたンだッ チャンピオンッッ

俺達は君を待っていたッッッ V8 の登場だ――――――――ッ

v8.dev

JavaScriptエンジン3つ目で〜〜〜す!!!いえ〜〜〜〜〜〜〜〜〜〜〜〜い!!!!!!!!!

いやあ……どこに使ってるんだろ……まじでわからん……JavaScriptCoreとQuickJSがあったら大体のパターンいけるやろ……ええ……?

まとめ

YouTubeアプリってガチガチのObjC/Swift製ネイティブアプリだと思ってたんですけど、JavaScriptエンジンを3つも積んでてjQueryやClosure Libraryまで登場するとなると、それなりのハイブリッドアプリなのかなあと認識を改めた次第であります。

j2ObjCは5年前にちょっと調べたことがあったので、今でも元気にしているのが見れてちょっと嬉しかったです。

おまけ:妄言

というかアレなんですよね、React Nativeも「Yoga + JavaScriptCore」がレンダリングエンジン+言語エンジンの構成なのを考えると、YouTubeアプリの中に「JavaScriptにビジネスロジックを書いてネイティブUIをレンダリングする」仕組みが作れそうな気がするんですよね。もしかしてどこかの画面はそういうフレームワークになっているのかなあ……

Aroundアップデート:September 2021 Editionまとめ

会社の開発チームで常時接続に使っているAroundの月次?アップデートが来ていたので、リリースノートを流し読みします。

new.around.co

iOSアプリがビデオ通話に対応

June 2021でリリースされたAndroid/iOSアプリでしたが、デスクトップアプリと同じルームへの参加はできるものの、ビデオ機能が開放されていませんでした。

今回のアップデートで、ひとまずiOSアプリでビデオ機能を利用できるようになります。移植が単純ではなさそうなフェイストラッキング機能もちゃんと実装してくれたようで、頭が下がります。

f:id:Nkzn:20210906104400p:plain
iPad版Aroundでカメラを有効にしてみた

Android版はcoming soonです(察し)。

画面共有のパフォーマンス改善

「めっちゃファンが回ってたし重かったのでフルスクラッチで書き直したやで」とのこと。わいわい。

画面共有中に配信者の画面内のAroundを「消さない」オプション

CPUリソース節約のためのもう一つのアプローチとして、画面共有中に配信者の画面内のAroundを 消さない オプションが追加されました。

f:id:Nkzn:20210906105053p:plain
配信者のaroundを消さないオプション

ぱっと見だとなんのことか分からない修正なので、例を挙げます。

実は今まで、配信者が画面共有している画面内にAroundのUIがあっても、視聴者には見えなくなっていました。

配信者 視聴者
f:id:Nkzn:20210906110819p:plain:w320 f:id:Nkzn:20210906110551p:plain:w320

ここで、今回追加されたオプションをオンにします。

f:id:Nkzn:20210906110956p:plain

すると、視聴者側にもAroundのUIが見えるようになります。

配信者 視聴者
f:id:Nkzn:20210906110819p:plain:w320 f:id:Nkzn:20210906110819p:plain:w320

標準の動作では、AroundのUIを配信対象から外すためにCPUリソースを消費していたようで、今回のオプションはその挙動をオフにする(=配信者の画面に見えているままの見た目で配信する)ことで、CPUリソースの節約を図る新機能ということになります。

今後の改善点

1.0以降、リソース節約と安定性、複数プラットフォーム展開にフォーカスして頑張っているそうです。短期的にはパフォーマンスや質の改善を中心に改善していくとのこと。嬉しい。

新規機能としては、ミーティングの録画機能を年内にリリースしたいとのことです。楽しみですね。

AroundのJune 2021 Editionが神アプデっぽい

TL;DR

Aroundチームは顧客の気持ちがわかっていて最高大好き

Aroundのアップデートが来ました

最近、会社のdevチームで、常時接続のコミュニケーションツールとしてAroundを利用しています。

around.co

Aroundはさまざまな工夫により、ZoomやMeetに比べると精神的なストレスが少ない作りになっており、常時接続してもストレスになりづらくなっています。次の記事が詳しいです。

japan.cnet.com

さて、そんなAroundですが、6/12に大きめのアップデートが来ました。

new.around.co

ざっくり眺めただけでも神アプデっぽさが出てたので、簡単に紹介します。

概要

  • モバイルアプリが出ました
  • Linuxアプリ(Beta)が出ました
  • Handoff機能の追加
    • ミーティングを始めたときのデバイスとは別のデバイスでシームレスにミーティングを継続できる
    • ある時間まではPCでミーティングして、その後営業のために離席して車で移動を始めたりしても、スマホでミーティングを継続できるということ
    • モバイルアプリが出てきたタイミングならではという感じの新機能で嬉しいですね
  • Voice Channels(音声のみの部屋)が作れるようになりました
  • Minimal Modeを使うとサムネイルのサイズを最小化して、できるだけ画面を隠さないようにできます
  • メニューがネイティブ実装になりました
  • フィルターをTouch Barで選択できるようになったよ(Macのみ)
  • Face Mask Modeをオンにすると、マスクをつけているときのくぐもった声がクリアに補正されるよ
    • 謎の技術じゃん
  • Add your team to multiple Rooms(まとめて招待)
    • 自分が入っているルーム一覧から任意の複数のルームを選んで、招待リンクを作成できます

動作するプラットフォームにAndroid、iOS、Linuxが追加されるというビッグニュースに加え、ミーティングに参加したままプラットフォーム間の切り替えができるHandoff機能が同時にリリースされたことで、より「常にAroundと繋がっている」が実現しやすくなりました。PCから離席してキッチンにコーヒーを淹れに行く間も、スマホで雑談の続きを聞き続けることができそうです。

今後追加される機能

  • Vertical floating mode(顔が縦に並ぶよ!)
    • ちょっと欲しかったやつ
  • Annotations(共有スクリーンにお絵描きできるよ!)
    • 完全に!!!!!!!!欲しいやつ!!!!!!!!!

Annotationsは早く来て欲しいですね。Slackの画面共有では画面上にマーカーが引けてめちゃくちゃ便利なのですが、おそらくそれに近いものになると思われます。仕事でモブプログラミングをしながら「ここ!ここです!ちくしょう、マーカーが引きたい!!!」みたいになってた*1ので、的確にペインポイントを押さえにきている印象です。

まとめ

Aroundチームは顧客のペインポイントをよく理解してる……しゅき……

*1: https://pop.com/home の利用を検討していました