Power Automate Desktop を触ってみて

Windows 10 で RPA ツールである、 Power Automate Desktop が無料で利用できるようなので軽く触ってみました。

もともと、Power Automate というサービスがあり、その中の Desktop 版アプリが Power Automate Desktop という位置づけのようです。

試したこと

Power Automate Desktop のインストールは上記のサイトから簡単にできました。

試しに以下のページにあるサンプルフローを作成してみました。

ところどころドキュメントが古いのか、記述どおりに行かないところがありましたが*1、そこら辺はうまく読み替えて動かすことができました。

フォルダーの作成など、様々な操作が「アクション」として定義されており、それを組み合わせる形で「フロー」を構築していくイメージです。

ここらへんは「ワークフローサービス」だな、という感想。変数や条件分岐などの概念もあるので、少し難しいところがあるかもしれませんが、それも慣れればどうにかなるかな、という印象です。たぶん。

これを Microsoft が作って提供し、Windows 10 向けに無償で出しているところがいいところかな。未来を少し感じました。

*1:Power Automate のサイトで「Power Automate Desktop」を検索しても見つからなかったり、日本語訳が違うようなところがあったり

tsdx で作成したプロジェクトで test の内容がキャッシュされる件

tsdx の basic template で作成したプロジェクトで何故か以下のようにテストが落ちた際に、テストの内容がキャッシュされているような現象に遭遇しました。

以下のように test/sample.test.ts のテストが落ちているのに、内容が test/blah.test.ts という古いものになっていました。

$ yarn test
yarn run v1.21.1
$ tsdx test
 FAIL  test/sample.test.ts
  ● Test suite failed to run

    test/blah.test.ts:1:10 - error TS2305: Module '"../src"' has no exported member 'sum'.

    1 import { sum } from '../src';
               ~~~

Test Suites: 1 failed, 1 total
Tests:       0 total
Snapshots:   0 total
Time:        1.749s
Ran all test suites.
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
$

調べたところ tsdx の issue にも報告されていました。

どうやら ts-jest のキャッシュが効いてしまってい様子。たぶん。 ということで、上記の issue に書いてあるとおり、 tsdx test--no-cache オプションを指定したら、うまくテストが通りました。

これ、みんな嵌りそうだから、デフォルトで --no-cache をつけていい気もするけど。。。キャッシュがなくなるペナルティもありそうだから微妙かな

「カスタマーサクセスとは何か」を読んで

普段、SaaS のサービス開発をしている身として、「カスタマーサクセス」という言葉は聞いていましたが、「カスタマーの成功を中心とした考え方」ぐらいのぼんやりした理解しかなかったため、気になって本書を読んでみました。

カスタマーサクセスとは何か――日本企業にこそ必要な「これからの顧客との付き合い方」

カスタマーサクセスとは何か――日本企業にこそ必要な「これからの顧客との付き合い方」

モノ売り切りモデルからリテンションモデルへのシフト、リテンションモデルの中でのカスタマーサクセスの重要性、日本におけるカスタマーサクセスの事例などが紹介されていてとても勉強になりました。

印象に残っているのは、

  • カスタマーサクセスはハンター(狩猟)ではなくファーミング(農耕)という喩え
  • 「カスタマー」とは顔が見えて(サービスやプロダクトを)どう使っているかわかっている人のことで、まだそれがわかっていない新規顧客や見込み客はカスタマーとは別の言葉で棲み分けていること
  • ハイタッチなどの色々な手段があること

などでした。

また、米国などの企業ではカスタマーサクセスマネージャ(CSM)というポジションがあり、カスタマーサクセスに組織的に(または全社的に)取り組んでいる、ということや CSM は人気のあるポジションになってきている、という事例も印象的でした。

タイトルの通り、「カスタマーサクセスとはなにか?」と普段考えている人や気になっている人にはぜひおすすめの本だと思います。

Android Q のジェスチャーナビゲーションの「戻る」操作

先日 Android Q がリリースされました。早速、普段利用している Pixel 3 を Android Q にアップデートしました。

Android Q ではジェスチャーナビゲーションが導入され、有効にしてみましたが、「戻る」の操作がどうにも慣れない。。

「戻る」操作は画面の左端から右へスワイプすることで出来るのですが、Pixel 3 の画面が大きすぎるのか、もしくは自分の手が小さすぎるのか、右利きの自分としては片手でスマホを持っている状態では右の親指が画面左端に届かない。。 頑張って伸ばせば届きますが、どうしても窮屈でした。「これは無いな、、」と思い、アップデート前と同じ挙動に戻しました。

しかし、しばらく経ってみて、「本当にこれで皆、満足なのかな。流石にこのアップデートはまずいのでは」と思い、改めて調べてみると、なんと画面の右端から左にスワイプしても「戻る」操作になることがわかりました。

なんだか「戻る」のか「進む」のかよくわからない、ジェスチャーな気もしますが、まぁいいかと思い、しばらくこれで試してみようと思います。

Magic Keyboard への移行

Apple Wireless Keyboard が壊れたので*1、これを気に Magic Keyboard に移行。

Wireless Keyboard は電池で動いていたので、時々電池を交換するのが面倒でしたが、Magic Keyboard は充電できるので Good.

使用し始めた時は、キーボード全体の高さが Wireless Keyboard に比べて、2/3 のほどの高さしかなく戸惑ったけど、これはこれで慣れてきた。 MacBook Pro (2018) の薄いキーを使うことが多いからかもしれない。Happy Hacking から徐々にキーの高さが薄い方に移行してきたけど、 最終系まで来たな、という気持ち。

*1:何故かキーボードの下の方の段の z ~ m の段が効かなくなりました

npm パッケージでの package-lock.json の扱い

npm パッケージで package-lock.json をどのように扱えばいいのかわからなかったのでメモ。


最近の npm では npm install した際に、package-lock.json が生成されます。 この pacakge-lock.json を見るとオプション*1によっては、以下のように package-lock.json に記述されるライブラリのバージョンが固定化されます。

// サンプル
    "agent-base": {
      "version": "4.2.0",
      "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.0.tgz",
      "integrity": "sha512-c+R/U5X+2zz2+UCrCFv6odQzJdoqI+YecuhnAJLa1zYaMc13zPfwMwZrr91Pd1DYNo/yPRbiM4WVf9whgwFsIg==",
      "requires": {
        "es6-promisify": "5.0.0"
      }

ただし、普段自分は gulp-nightwatch というライブラリをメンテナンスしており、 上記の様な package-lock.json を含んだ npm パッケージをリリースすると、「パッケージ利用者の人が固定化されたライブラリしか利用できず、プロジェクトで利用しているパッケージによっては依存関係が解決できないのでは?」と思い、大丈夫なのかどうか調べてみました。

結論から書くと、package-lock.json のバージョンを固定化しても問題なさそうです。 というのも、 package-lock.json は npm へ pulish ( npm へのリリース ) の際には無視されるそうです。

npm-package-lock.json | npm Documentation

One key detail about package-lock.json is that it cannot be published, and it will be ignored if found in any place other than the toplevel package. It shares a format with npm-shrinkwrap.json, which is essentially the same file, but allows publication. This is not recommended unless deploying a CLI tool or otherwise using the publication process for producing production packages.

そのため、(npm パッケージの)リポジトリに含まれていても特に問題はなく、 package-lock.json はライブラリの開発の際に利用されるもののようです。 なるほど。なるほど。

*1:save-exact

鯛めし

f:id:tatsuyafw:20181104163938j:plain

調理時間: 約一時間ほど

以下のサイトを参考に作りました

鯛めし レシピ 栗原 はるみさん|【みんなのきょうの料理】おいしいレシピや献立を探そう

鯛は近くの鮮魚店で買いました。

感想

  • 少し味が薄いが美味しい
  • グリルで焼いた後、取り出す際に少し身が崩れてしまった。ちょっと焼きすぎたかも
  • 鯛を手に入れるのが一番大変だったかも 😅