プログラムが書けない子にプログラムを教えた件

まず前提として

私が業務で本格的にプログラムを書き始めたのは結構遅くて、35歳くらいでした。
新人研修でC言語やったり、サーバ管理の仕事を5年くらいしてたのでshellやPowerShellを書いたり、アニメーション作るのに(今は絶滅した)簡単なAction ScriptやJavaScriptを書いたり…ということはありました。
逆にそれまではサーバ立てたり、HTMLやCSS書いたりする仕事をしていました。なんかプロマネ的なことをしたり。

IT業界で仕事を続けるうえで、やっぱりプログラムかけなあかんやろということで、3人目出産後にプログラムを書かされ始めました。

そんな遅咲きのプログラマ5年の私ですが、今はなんとVBAの先生したり、PHPやJavaScriptの案件でプロマネしたりしています。

ただ、周りにもっとできるプログラマの人はたくさんいて、かなり厳しいダメ出しをもらうこともあります。まだまだ勉強中です。

今私の環境

ええ年になってきたので、課でもちょっと偉くなってきました。
プログラム書くのはそれほど上手じゃないけど、HTMLやCSS書いたり、Web/DTPデザインしたり、サーバ立てたり、プログラム書く以外は他の人よりちょっと上手です。

うちの会社はIT業界の中でも比較的平均年齢が高い方(40代以上が多い)のですが、私の課だけなぜか半分が新卒5年以内で年齢層でいえば20代が一番多い課です。平均年齢でいうと、ダントツで一番若いです。
原因は(実際どうかわからないですが)課のメンバーに教え上手が多いからということのようです。

若い子はもちろん経験が浅いので、いろいろ教えてあげる必要があります。

今年3年目。プログラムが書けない子

その中で、プログラムを書くのへたくそ(?)な子がいました。
課長が小さいプロジェクトでも達成感と自信をつけさせたいとのことで、私のプロジェクトの支援ツールをVBAで作成することになりました。

仕様はそれほど難しくありませんでした。
マスタからカテゴリごとのシートに転記して、転記したシートをPDFで出力するだけです。

これに1か月かかりました。

正直、お客さんがあるプロジェクトであれば大遅延、大赤字です。
私なら1日半とか…それぐらいで終わる内容です。

理由としては

  • 仕様の理解不足
  • 実装するためのアルゴリズムがわからない
  • わからないなりに実装してみたら、ネストの嵐
  • なんでもfotとifでやってしまおうとする
  • Forの中でいらん処理をするのに、必要な処理はしない
  • そのうち何のForかわからんくなって、Forの中に全く関係ないFor作る
  • 変数めちゃくちゃたくさん作る
  • 変数めっちゃ作るけど、変数名見ても何の変数かわからない。またはネーミングがおかしい。統一性がない
    例えば for startrow to owariRow とか。startrowはインクリメントするから2回目startじゃなくなる…
  • クリックイベントの中に処理全部入れすぎ
  • 同じ値だからって全く別の用途の定数を使う
  • 処理の流れを無視し、同じような値を取得するのをまとめて書く(例えば用途の異なる複数シートの最終行取得)ので、処理が前後して正しい値が取れない
  • まとめられる処理なのに、とにかく全部書く。

など。
私もだいぶ時間を割いて教えましたが、これがなかなか手ごわい。

処理の流れを書いて、その通りに実装してみよう!としてもなぜか3番目4番目を飛ばして5番目から実装しようとする。
じゃあ、できるところから関数にしていこうってしても、処理のまとめ方がわからない。

プログラマ歴はそれほど長くないけど…こんなに教えられることがあったんだってくらい教えました。

プログラムが書けない子のその後

これだけ指摘したのにも関わらず、相変わらずプログラムが書けません。

ただ私が1日で終わる作業は10日くらいでできるようになったので少し成長しています。

%d人のブロガーが「いいね」をつけました。