自働化・効率化:Pythonによる実装はIntegromatでも可能?

自働化・効率化:Pythonによる実装はIntegromatでも可能?

タイトルへの回答は「YES」です。そんなわけで、今日のトピックは「自働化・効率化も、ラクを極めよう」です。

オライリーという技術系の本に「退屈なことはPythonにやらせよう」という本があります。サブタイトルは「ノンプログラマーにもできる自働化処理プログラミング」となっています。

帯を見ると「おかげさまで7万部突破!」と書いてあり、多くの人に「自分で作れるRPA本としても読まれています!」とのことです。

この本は第2版が今年の秋頃に出版される予定で、そちらでは、クラウド自働化についても触れるようです。例えば、Googleシートなどです。

いい本なので、第2版も買う予定です。

さて、実は、この本に書かれていることの大半は、クラウド自働化ツール「Integromat」で実現可能です。

筆者は元文系プログラマーです。過去、苦労しながらPHPやPythonを書いてきた経験からすると、Integromatで実装するほうが何十倍もカンタンでラクです。

これまでの社会が労働と隷属にフォーカスしていたためか、私たちは難しいことを好んだり、膨大な時間を使うことにためらいがなく、わざわざ苦労を選択し、必要以上の情報やスキルを得ようとする傾向があります。

しかし、そういうものから自由になって、別のことをするために自働化や効率化があるのではないでしょうか?

そして、RPAとデスクトップ自働化が業務効率化のトレンド、という思い込みもアッサリ捨てたほうが良さそうです。

ChromebookやGoogle Workspaceがそうであるように、データをローカルではなくクラウドに保存することからはじめても良いはずです。

いったんクラウドで作業する習慣がついてしまえば、ローカルの自働化はブラウザくらいになります。実際には、インターネット上の作業をローカル画面で自働化しています。

クラウド自働化では、画面操作の代わりに、API連携で対応します。

そして、クラウドに保存されたデータは、プログラマーでもノンプログラマーでも、ラクに活用できます。ここが、デジタル化の成功を左右するポイントです。

つまり、自働化・効率化・デジタル化のキーポイントは、習慣とクラウドです。もちろん、ローカル限定の作業もありますので、あくまで全体的な話です。

では、具体的に何を自働化できるのでしょうか?Pythonで効率化していることがどのように、Integromat(クラウド自働化)で実現できるのでしょうか?

前述の「退屈なことはPythonにやらせよう」には、こんな自働化が載っています。

  • ファイル操作・管理
  • Webスクレイピング
  • Excelシートの操作
  • PDFやWordの操作
  • CSVやJSONの操作
  • メールやSMSの実装
  • 画像の操作

これらは、Integromatでも実装可能です。

ファイル操作・管理に関しては、ローカルファイルが扱えないという弱みがあります。しかし、これもコンピューター側の設定でなんとでもなります。

例えば、Google DriveやDropboxなどのデスクトップ機能を入れておけば、クラウドのストレージをローカルのフォルダ・ファイルと同じ要領で扱うことができます。

この機能を使っている方は、かなり多いと思います。

ということは、ローカルのGoogle Driveにある任意のフォルダにファイルを保存すれば、Integromatが自動でメールを送信したり、ZIPアーカイブして共有リンクを生成することが可能になります。

他の自働化・効率化にも、同じことがいえます。

もう少し細かいところをみていくと、文字列の操作や計算、分岐、ループ処理など、ロジックを実装するのに必要なツールはIntegromatにも用意されています。例えば、以下のようなジャンルの関数が提供されています。

  • 文字の操作
  • 日付の操作
  • 演算と計算
  • 配列の操作
  • 分岐と判定

弱みを上げると、アプリ連携なしの配列操作に難点があります。

文字操作系関数(Integromat)

他には、正規表現によるパターンマッチングなどが提供されています。正規表現の場合、Text parserというビルトイン・アプリか、Toolsというビルトイン・アプリに含まれているSwitchモジュールを使います。

Switchは条件分岐のためのモジュールです。その他分岐は、フィルターとルーターの組み合わせで実装可能です。ループ処理は、イテレーターとアグリゲーターというビルトイン・アプリを使います。

ということは、Pyhtonと同等の自働化・効率化が実装できるということになります。

Pythonでインポートするモジュールが、Integromatのアプリと同等です。設計の観点からいうと、問題解決ドメインをコンテキストまで落とし込んだものがシナリオです。

より実用的な話をすると、Slackアプリでコマンドを設定して、処理をIntegromatで実装することが可能です。例えば、SlackコマンドからAirtableやGoogleシートのデータを検索することもできますし、実装はとてもカンタンです。

Slackのスラッシュ・コマンド実装例(Integromat)

こうして検討していくと、私たちが目的を達成するために必要なモノがハッキリします。

もちろん、Pythonをマスターして人工知能開発に進みたいという目的があれば、Pythonを選択するでしょう。しかし、Python、JavaScript、AWSのAPI設定、データベースのセットアップ…など全体について考えるならば、自働化・効率化のハードルは、かなり上がります。

よく議論されるトピックに、コードかノーコードかというというものがありますが、「コード vs. ノーコード」というのは、比較対象としては無理があるように感じます。この比較は、ExcelとCSVのどちらが優れているか、という議論に似ています。用途が異なります。

ここでの論点は、ノンプログラマー、つまり非エンジニアがどのように自働化・効率化するかです。プログラマーがノーコードを使うべきかどうかという話ではありません。職業レベルでカテゴリがまったく異なります。

ですから、全体を俯瞰し、目的とセットで検討することにより、必要なツールとその適用箇所がハッキリしてきます。これは、プロジェクトのタイムラインでも同じです。

ポイントは「その自働化はカンタンか?その効率化はラクできるか?」です。

今週、Integromat日本コミュニティに記事を投稿しました。タイトルは「Kintoneのレコードを取得する方法」です。これも、API連携するアプリをイチから実装するとタイヘンですが、Integromatを使えば、すぐにプロトタイプができます。

(Kintoneアプリの開発はIntegromatに依頼してあります!)

もし、この記事をお読みの方がノンプログラマーであれば、Integromatで自働化・効率化も強力なオプションになるはずです。もちろん、プログラマーにもオススメしています。

Integromat日本コミュニティは無料のSlackコミュニティで、実装方法などをディスカッションできる場です。また、SlackコマンドでAirtableを検索するプロトタイプなども入れてありますので、実際に使ってみることが可能です。

一緒にアプリをコミュニティSlackに導入するのもアリです。参加、お待ちしています!

We Can Help You!

お問い合わせ、ご相談、お待ちしております。