2
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

posted at

Organization

GYOMUハックエンジニアのモチベーションについて

これはGYOMUハック/業務ハック Advent Calendar 2019の13日目の記事です。

モチベーションについて

GYOMUハックエンジニアをやっていると、データインポートのような業務を回す上では重要な作業が出てきます。
だけど私的にはあまり面白くなく、辛い作業です。(この手の作業をもくもくとこなせる人を尊敬します)
この手の作業が楽しくなるように工夫してみます。

どうやるか?

ツールを作ります。

Salesforceならデータローダやデータインポートウィザードがあるのですが、プログラミングの練習だと思って作ります。

Common LispでSalesforce連携ができないかと思い、途中まで作ったライブラリがこちらです。
https://github.com/tamurashingo/cl-salesforce-bulk

example
(defparameter *upsert-record*
  "Name,Description,ExternalId__c
\"Tamu Systems, Inc.\",\"update record\",C00001
\"new company\",\"create record\",C00002
")

(ql:quickload :cl-salesforce-bulk)

(defvar *conn* (cl-salesforce-bulk.connection:login "tamura.shingo@gmail.com" "password#password" "37.0"))
(cl-salesforce-bulk.api:bulk/upsert *conn* "Account" *upsert-record* "ExternalId__c")

気をつけた点

このツールがなくても誰も困らないようにする

Salesforceであれば、データローダやデータインポートウィザードがあるので、何かの理由で実行環境が使えなくなっても業務は回ります。自分が担当じゃなくなったときは「データローダでインポートをお願いします」で済みます。

これがCommonLisp処理系を入れてコマンドラインから sbcl を起動して〜、だとなにかエラーがあったときに対応できる可能性は結構低いです。

(逆にこのツールがないとみんな困る状況になるまでツールが成長してしまったのであれば、みんなが分かる言語やライブラリで書き直したほうが良いと思います)

ツール作成が本業にならないようにする

あくまでモチベーション維持、モチベーションアップのためにやることです。
本業(GYOMUハック)のじゃまにならない程度の稼働におさえます。

まとめ

  • ツールを作ってモチベーションアップ
  • プログラミングは楽しい
  • いつでも標準のやり方に戻れる程度のやつを作ろう

Register as a new user and use Qiita more conveniently

  1. You can follow users and tags
  2. you can stock useful information
  3. You can make editorial suggestions for articles
What you can do with signing up
2
Help us understand the problem. What are the problem?