書籍「マイクロインタラクション ―UI/UXデザインの神が宿る細部」

良いツールの要素とはなんだろうと考えた時、第一に安定性や機能の豊富さ等が挙げられると思いますが、それと同程度以上に必要な要素とは、ユーザにとっての使い易さやわかり易さなのではないかと思います。

ツールに含まれる動作一つをマイクロインタラクションと呼びます。
マイクロインタラクションは、トリガールールフィードバックループとモードの4ステップに分割して考えることができます。

トリガー : 動作が起こるきっかけ
ルール : 動作内容
フィードバック : ルールにより引き起こされる反応
ループとモード : ルールの長期的な動作

本書では、ツール設計の際、いかに良いマイクロインタラクションを設計し、ユーザーフレンドリーなツールをつくり上げるかに焦点を当てながら、既存のWebサイトやソフトウェアからGUIを抜粋し具体例として挙げ、それらの良い点と悪い点を考察します。

ツールを作るとき、理解しやすく使いやすいツールにしたいと考えるけれど、その方法に明確な指標を持てておらず、結果的にユーザの操作に対して反応がぎこちなく、分かりにくいツールになってしまう悩みを持っているような方には特にお勧めしたい一冊です。

Maya – リソースイメージを抽出

import maya.cmds as cmds
resources = cmds.resourceManager()
for resource in resources:
  saveDirPath  = "D:/MYAM_temp"
  saveFilePath = "%s/%s" % ( saveDirPath , resource )
  cmds.resourceManager( saveAs=(resource , saveFilePath ) )

ツールのGUIを作ってる時、Mayaのリソースイメージをそのまま流用したいことがある。
わざわざキャプチャしたりするのは面倒なので、上記のコマンドでごっそりイメージファイルを抜き取って、必要なアイコンを使ってしまおう。


こんな感じで簡単にアイコンを抽出出来た。

書籍「その数式、プログラムできますか?」

 論文や教科書を参考に、数式をプログラムコードに落とし込みたいと思った時、複雑な数式をコードに落としこむのは、高い数学の素養を必要とすることが多く、なかなか骨の折れる話だったりする。この本は、そんな時の一助となる書籍です。

訂正
以前書いたレビューでは、数式をプログラムコードに落としこむ方法に焦点を当てた本であると取られてしまったかもしれません。
そのため、少し補足をする必要があります。

この本は、ジェネリックプログラミングと呼ばれるプログラミング手法に焦点が当てられています。
※ジェネリックプログラミングとは、データの形式に依存しない高効率なコードを書くスタイルで、ポリモーフィズムの一種。詳しくは以下をご参照ください。
ジェネリックプログラミング-Wikipedia
C++ジェネリックプログラミング入門

数式をコードに落としこむ下りも当然登場するのですが、どちらかと言うと既存の定理の数式(アルゴリズム)をより一般化し、最適化し、結果が正しいことを証明し、コードに落としこんでいくという内容がメインで、例えば、Σはプログラムコードに落としこむとどういったコードになるのかといった、数式をコードに落としこむ方法を一から懇切丁寧に解説する書籍ではありません。

もしこの記事を見た方が誤解して買ってしまい、話がちゃうやんけ!となってしまっては申し訳ないので訂正させていただきます。(すみません)

内容は非常に興味深く、役に立つ書籍だと思いますので変わらずおすすめしたいと思います。