こんにちは! Excel講師の榊裕次郎です。
最近もやっとしていたことがすっきりしたので、それを記録しておきたいなと思います!
そのもやもやとは、データの収集・保存・クレンジング・加工のフローにおける私の作成したプログラムが、30日間も連続して成功しないのは自分のせいなのか? ということです。
私自身、もともとは文系人間で、高校に通ったものの、「数学Ⅲ」「数学C」までは勉強しておりません。大学も法学部、プログラミングとは一切関係のない学生生活を送ってきました。
理系の人とは、そもそも思考ベースが違うという先入観と固定観念があるので、仕事でプログラマーと出会うと、絶対に敵わないだろうなー、この人がプログラミングを組んだら絶対にもっとスマートなやり方があるんだろうなーと、常々嫉妬しておりました。
努力すれば、プログラミングは誰でもできる論はありますが、相対的に見たセンスの「ある」・「なし」問題ですね。
そもそも僕の分野ではないし、センスはない。しかし、やらざるを得ない。どんなに努力をしても、エラーを引き起こす日が出てくる。ああ、やはり僕の分野ではない ―― これを繰り返しているうちに、もやもやが大きくなるばかり。
Excelマクロからはじまり、Google Apps Scriptなり、PHP、Javascript、Pythonなり、とにかくググって調べて勉強しての繰り返しで、業務を回しています。
2020年8月20日現在は、2社で私の作成したプログラムを365日自動で稼働しています。エラーは起きるけれども、かなりの人件費は削減している、そこは強く主張できます。が、どうしてもエラーが避けられない。テストのときはきちんと動くのに、どうして本番環境になると動かなくなるのか?
エラー報告を受けるたびに、誰かに責任転嫁をしたくなってきます。
しかも、こちら側が目を見張っているときはきちんと動いて、見張っていないときを狙ったかのようにトラブルが出てくる。最近はそんな動きが多いので余計には腹を立ててしまいます。
やっぱり自分のコーディングスキルがないからだ。本職のプログラマーにとったら、自分のプログラムは野良コードを書いてしまっているのだ。などと、考え込むようになり、ストレスがたまっていく一方。しかし、違うところでデータ解析の勉強をしていると、こんなことが書いてありました。
あんちべという謎な方の、データ解析の実務プロセス入門という本の一文です。これは良書でした。
データ収集時の泥臭い戦い
決して一度ツールの設定をすれば、あとは自動で毎日動くことが保証されることでもありません。
この一文に、ものすごい救われた感がありました。
そもそも私の出てくるエラー要素を改めて考えてみると、外的要因が多いのです。
- プログラムをテストして本番環境で使用したときに、追加変更があった
- 当初の仕様・要件にない使い方をされている
- データ取得側の仕様が変更になった
- サーバー・システム側のエラーでどうしようもない
考えてみれば、連続して動かないのは自分のせいじゃないよなー、という気づきがあります。
エラー処理ばかり対応していると、ここが見えなくなってくる。自分の要因ではないところで「榊先生、動きません、おかしいです」と、間違いを指摘され続けていれば、さすがに誰でも発狂するでしょう。それが使用者側の操作ミスが原因であれば、なおさらです。
なるほどこうしてシステム開発側と利用者側は隔たっていくのかな、とも思います。365日稼働させるプログラムは、使用期間を決めて担当者を適宜入れ替えしないと、一人が抱え込む結果となり健康的によくないのだ、ということを改めて知りました。
仕事を簡単に請け負い過ぎてしまった気もします。
しかしそうはいえども、エラーのない安定性があり、変更がしやすく、管理・共有がしやすいプログラムを書くことは、引き続き継続していきたいです。まあ、なんでも勉強ってやつですかね。