1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

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

Posted at

これは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ハック)のじゃまにならない程度の稼働におさえます。

まとめ

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

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?