yumulog | 社会人博士の日記

はてなブログに引っ越しました / 石川県に引っ越しました

Unityで使えるC#のRedisライブラリ TeamDev.Redis でRedisの全てのキーと値を取得する

f:id:yumu19:20170515210732j:plain 写真は石川県民のソウルフード8番ラーメンですが、内容とは関係ありません。

UnityのC#スクリプトからredisを触りたいと思い

を参考にして TeamDev.Redis というライブラリ*1を使っていたのですが、元のライブラリのドキュメントに使い方が全然書かれてなくてけっこう困ったので、全てのキーと値を取得するサンプルを書いたので情報共有として置いておきます。Unity 5.6.1f1 で動作しました。keys のように複数の値が返るのを取得する時はReadMultiString()を使うと配列で返ってくるよ、というのが肝ですね。ソースコード読めばわかるんですが。

ちなみに

C#のredisクライアントライブラリとしては、ServiceStack.RedisBookSleeve というのがメジャーっぽいのですが、Unityだと動作しない感じなんですかね?(試してない)

*1:.NET 2.0 Compatibleという方を使います

CHI2017の研究を独断と偏見で紹介

f:id:yumu19:20170505093857p:plain

Human Computer Interaction(HCI)というコンピュータサイエンスの一分野のトップカンファレンスCHIの研究紹介動画が公開されました。HCI分野では、論文だけ読むよりも動くものを見たほうが圧倒的に理解しやすいという分野の特性もあって、論文と一緒に動画を投稿するのが一般的な習慣になってます。

最近は「最先端の技術はアカデミアにはない」といろんな場面で耳にすることも多く、30%くらいは同意するところもあるのですが、リソース(お金、時間、人)を存分に注入することができるアカデミアには、やはり世界トップクラスのすごいもの、面白いものがたくさんあります。当然これも分野によりますが。

CHIの研究動画で面白いと思ったものをいくつか紹介します。1本30秒の短い動画で、内容にもよりますが研究の概要を大体把握できるんじゃないかなと思います。 ただ、270本あるので全部見ると2時間以上かかるので、全部は見きれていなくて、たまたま目についたやつを紹介してます。

Holographic Whisper: Rendering Audible Sound Spots in Three-dimensional Space by Focusing Ultrasonic Waves

http://dl.acm.org/citation.cfm?doid=3025453.3025989

聞こえる位置を点で指定する超指向性スピーカ。落合さん星さん鈴木一平くんの研究。会社立ち上げてプロダクト作った後に論文投稿という流れも面白い。

Inferring Motion Direction using Commodity Wi-Fi for Interactive Exergames

http://dx.doi.org/10.1145/3025453.3025678

Wi-Fiの電波強度変化でダンレボ(のような動きを検出)するやつ

Digital Mechanical Metamaterials

http://dl.acm.org/citation.cfm?doid=3025453.3025624

3DプリンタなどのFabricationでドアノブのような構造体をつくる研究。半年前のUISTというカンファレンスでも発表してましたが、今回は論理回路をつくれるように発展。

MistForm: Adaptive Shape Changing Fog Screens

http://dx.doi.org/10.1145/3025453.3025608

形状変化するフォグスクリーン

IllumiPaper: Illuminated Interactive Paper

http://dx.doi.org/10.1145/3025453.3025525

電気・光による紙の拡張

FDVT: Data Valuation Tool for Facebook Users

http://dx.doi.org/10.1145/3025453.3025903

FacebookのユーザがFacebook社にいくらの利益をもたらしているか等を可視化

情報処理学会誌の特集「博士課程進学のメリット・デメリット」がオススメ

f:id:yumu19:20170422223716j:plain

今月号の情報処理学会誌の特集「博士課程進学のメリット・デメリット」を読んだのですが、この特集すごくよかった。

19名の方が博士課程進学のメリット・デメリットについて自由に書いてるのですが、そのうち7名が社会人博士で働きながら博士号を取得した/している方でした。社会人博士に関する情報をここまでまとめて読んだのは初めてで、社会人博士に在学中や進学を検討している人にはぜひ読んでほしいです。

博士号取得者の生存バイアスと、学会誌ということもあり各執筆者の大人な判断でメリットの方がやや強調されている感じはあるので、デメリットの方を少し盛って読むと良いんじゃないかと思います。

他にも、落合陽一さんや、博士取得後に起業したXiborg遠藤謙さん、mplusplusの藤本実さんなど、ほんとに多種多様なキャリアの人が選ばれてて、読み物としても面白いですし、博士やキャリアについて悩んでいる人全員にオススメしたいです。

情報処理学会誌はAmazonでも買えますが、結構高い(¥1,730)ので、大学の図書館などで読むと良いかもしれません。これを機に入会すると毎月届きます。

情報処理 2017年05月号

情報処理 2017年05月号

Mastodonの連合タイムラインって何?「ローカルユーザ」と「リモートユーザ」の違い

f:id:yumu19:20170410125211j:plain

写真は、内容とは全く関係ありませんが、自宅近くの桜です。キレイですね。

さて、またMastodonネタです。「連合タイムライン」が何なのかわかりにくい、というか理解している人がまだあまりいなさそうなので、その解説です。その前に、「インスタンス」が長いので、この記事では

と呼ぶことにします。

ローカルタイムラインは、自鯖のユーザ全員のトゥートが流れるので、わかりやすいと思います。連合タイムラインはなんなんでしょう?管理者同士が連合を組むと思っている方もいるかもしれませんが、そういう機能はありません。連合タイムラインを理解するために、まずローカルユーザとリモートユーザという概念について説明します。

ローカルユーザとリモートユーザ

鯖管理者しか見ることができないのですが、ユーザ一覧画面があり、そこでは「ローカルユーザ」と「リモートユーザ」に分かれています。

f:id:yumu19:20170416232923p:plain

  • ローカルユーザ:自鯖でユーザ登録したユーザ
  • リモートユーザ:ローカルユーザの誰かがリモートフォローしたユーザ

という違いがありますが、どちらにもidがついています。例えば、 https://mastodon.yumulab.org/@yumu というユーザは、

というユーザID(URLの末尾がID)を持っています。このローカルユーザ、リモートユーザの概念がわかれば

  • ローカルタイムライン = ローカルユーザ全員のタイムライン
  • 連合タイムライン = ローカルユーザ全員 + リモートユーザ全員のタイムライン

という、非常にスッキリした形で理解できるとおもいます。

あとこれは憶測ですが、リモートフォローすると他鯖の人のトゥートが自鯖に飛んで来るようになるため、せっかくなのでこのデータを有効活用しようという思想で生まれた機能な気がします。

国交断絶

Pawooの件で話題になったように、インスタンスが連合を拒否(国交断絶)することがありますが、これはドメインブロック機能として用意されていて管理者が指定することができます。

f:id:yumu19:20170416233043p:plain

この機能の動作まで追いきれてませんが、おそらくそのドメインのユーザに対してリモートフォローできなくなり、すでにリモートユーザとして登録の場合はそのユーザが無効か削除になるのだと思います。