12月3日に開催された、えにしテックカフェに参加しました。
約5ヶ月ぶりの参加です。いつ来ても、えにしテックのお香は良い香りがします。
Design Rule Index – mayucoさん
毎回1-2つDesign Ruleを紐解いていくコーナー。
今回は、本の説明が難解で理解するのに時間がかかりました。
フィッツの法則
“目標にたどり着くまでの時間は、目標の大きさと目標までの距離によって決まる”
ポインティング動作を含むシステムのデザインについての考え方です(素早いポインティング動作のみに適用)
スピードと正確さは二律背反するので、素早く・正確に処理をしてもらいたい場合は、
制御装置を大きく・近くに置く事。
(ex: MacOSのDoc、Windowsメニューボタン、メニューバー)
間違って操作してほしくない場合は、制御装置を小さく・遠くに置く事。
(ex: 電源オフ、管理ツールやレジストリ操作が深いところにある)
操作しやすい画面はこの法則に従っているなあと実感しました。
5つの帽子掛け
“情報情報の用途に関係なく、情報を組織化(まとめる)方法の数には限りがある”
紹介されていた5つ
- カテゴリー:
分類、ジャンル - 時間:
時系列、タイムテーブル - 位置:
案内図、旅行ガイド - アルファベット:
辞書、電話帳 - 連続量:
大きさ、率
カテゴリーでしか分類されていないと、そのカテゴリー分類のコンテキストを共有していないと探すときに非常に難しい、という話が出ました。
(本屋さんの出版社別・ジャンル・筆者、レンタルビデオ店のジャンル etc.)
検索機能を提供する場合はカテゴリのみでなく、アルファベット・テキスト検索もセットにしてあげると使いやすくなりますね。
docker – darashiさん
Linux container engine のdockerの紹介と、デモを見せてもらいました。
サーバーの設定は、長い時間を経て次のように進化しています。
がんばってインストールする、がんばってメンテナンスする
↓
Chef, Puppetなとで設定を自動化
↓
vagrant
同じVMインスタンスを作れる
dockerは仮想化せず、プロセスをあげるだけで特定の状況下のマシンを作れるものです。
同じ条件の使い捨ての環境を沢山立ち上げる事ができます。
特徴として次の事を話していました。
- マシンの一部だけをシミュレート
- 使う人から見たら同じLinuxマシンに見える – どのマシンにアクセスしても同じだから
- ぱっと見一つのマシンに見える – 仮想化されていないから?
実際のデモでは、ubuntuやCentOSマシンを立ち上げて、何らかの処理ができるようにするまでがあっという間でした。
少しずつ設定を変化でき、変化させるごとのスナップショットが残っているというのも安心できるなあと思いました。
大勢でテストをする場合、それぞれのマシンに全く同じ環境でアプリをデプロイしたり、分散処理でメモリをうまく使ったりする事ができそうだと思いました。
デメリットとしては、「使い捨て」の概念なのでデータベースなど永続化したい情報を扱えないこと扱おうとすると現状では便利さとトレードオフになってしまう事、Macだとうまく動作しない部分があるAufs と LXC を使っているので、 Linux上でないと動かない(今回のdemoはさくらのVPS上で行っていました)こと、などがあるとの事です。
面白そうなので、開発オフで遊んでみようと思います。
引っ越してからなかなかえにしテック近辺を歩かなくなったので、新鮮でした。
またお邪魔したいです。ありがとうございました。
えにしテックカフェにご来場いただきありがとうございます!
Mac で動かない部分があるというよりは、 Aufs と LXC を使っているので、 Linux でないとそもそも動かないというお話でした。ただ、 Mac の上で Linux VM を動かしてそこでやってもよくて、公式ドキュメントの Installation http://docs.docker.io/en/latest/installation/vagrant/ にも OSX とか Windows とか FreeBSD とかとかでは Vagrant を使うと動くよ、と記述があります。
永続化したい情報も実行時の snapshot をとったり、Data Volume という機能を使うことで扱うことはできます。ただ、Dockerfile の逐次実行でセットアップできたり、 Immutable であることによって得られる諸々の「べんり〜」は手放さなくてはいけないので悩ましいですね、なんかうまいことやれないんだろうか、というお話でした。
darashiさん、補足ありがとうございます!
“Aufs と LXC を使っているので、 Linux でないとそもそも動かない” のか、理由を聞き飛ばしてしまってました X(
直しておきます。
永続化については悩ましいですね。使い捨てという用途であれば、便利を優先した方が良い場合が多いのかなあ。