PowerAutomate使用プログラマの苦悩

まあ、なんというか、PowerAutomateって技術があるんですよ。「こんなことやってくれ」っていうシナリオを作成するとその通りにやってくれる便利な技術「RPA」の一種なんですよ。んでもって、PowerAutomateには2種類あって「クラウドで完結するPowerAutomate」と「ローカルもクラウドも扱えるPowerAutomateDesktop」ってのがあるんです。

PowerAutomateの方は、クラウド上でトリガとなる何かを実行する。たとえばSharepointやらFormsやらOnedriveに何か書き込んだりすると、それをきっかけにメール出したり、情報書き込んだりする。まあそんなことをやってくれる技術なんですよ。ワークフローの一部または全部を自動でやってくれるので非常に便利だったりします。

ただね、この技術は「こんなことやりたい」を実装するハードルがめちゃくちゃ高いんですよ。いやわかります。自分は「こんなことやりたい」と思ったことをPowerAutomateで簡単に実装できるぜという方もいらっしゃるでしょう。そんな方がいらっしゃるのはわかるんですよ。

PowerAutomateは「用例からやりたいことを見つけ出す」場合に、非常に簡単に実装することができるんです。ただね、「プログラマがこんなことやりたいと思った」ことを実装しようとすると牙をむくんですよ。プログラミングと比較して非常に自由度が低いんです。マリオメーカーで計算機作るような感じというか。

PowerAutomateでやりたいことを実装しようとしたとき、簡単に言えばMS社が作った機能ブロックを積み上げればいいんです。しかし、機能ブロックが簡単には見つからないんです。そして、ほしい機能ブロックは存在していないことも多い。

プログラミングだったら、「ほしい機能ブロックを自力で作る」こともできるし、おなじようなことをやっている人が作った機能ブロックを検索で見つけて参考にすればいいんです。しかしPowerAutomateの場合、「そんな機能ブロックがあるのかないのかわからない」し「作ることもできない」状態なんですね。

どんな機能ブロックが存在するか知っている超上級ユーザか、「用例からやりたいことを探す」ようなユーザであれば、効率的に使えるかもしれない。でも、「プログラミングだったらこんなことできる」というのを知っているが、「PowerAutomateは昨日から触り始めた」みたいな人に過大なストレスを与えるものなんです。

そして最大の弱点は「AIにコード書かせられない」んですよ。AIの実装方法相談するとGUI操作は教えてくれるんですけど、バージョンとか翻訳とかの影響で。再現性が非常に低いんですよ。

ということで、PowerAutomateってあんまり好きじゃないんですよ。すごい技術ではあると思うんですけどね。向いていないんだと思うんです。使いこなしたいんですけどね。一番の希望は「自動実行系を作成するとき、基本はユーザ操作トレースで製造でもいいから、コードによる生成もできるようにしてほしい」ってことです。お願いしますよ、サティア・ナデラ。