みんなの幸せは自分の幸せ
自分は、自分に課している規範として「自分の周りの人の幸せを考えて行動する」というのがある。
戦いたくない戦場での戦いを強要されるご時勢:島国大和のド畜生
困ったときはお互い様だと思いたいし、おれはお前が得するように考えるから力を貸してくれよ、というスタンスでいたい。
大型プロジェクトや、グローバル化は、人の顔が見えなくなっていくし、容赦の無い切り捨てが必要になっていく。仕方がないこととは言え、あまりにもツライので、なんかいろいろと算段を考えてしまう。
幸せにたいする言及。
プログラマなら誰もが経験していると思うけれど、
うーん、と唸っていてとれないバグや書けない処理があったとき、
チームの誰かとちょっと話した事がきっかけでそれが解きほぐされたことがあると思う。
それはとても嬉しいことだし、チームであるということが「よかった」と感じられる1つのケースであるとも思う。
環境を用意するとき、
誰かにとってやりやすい環境を用意できて、
「思いの外良かった」
「使いやすい」
「また使いたい」
「応用してこういうことにも使いたい」
なんてことを言って貰えたら嬉しい。
自分はつくるとき、自分が面倒だなと思っても、
使う側にたったときに「楽だな」と思う方法を選びたいと思っている。
例えば、ゲームでもアプリでも外部から数値を変更する仕組みを用いることはよくある。
ゲームなら、攻撃力や行動パタンや、アクセス範囲、いろいろ。
そういうときに、「外だしするのめんどくせえ」といってソースに数値を書いちゃう人がいる。
それって、調整するときに、
これぐらいの値にしてみてと伝える
→ソース編集
→ソース取得
→コンパイル
→起動
か
直にプログラマ以外の人間がソース編集してやるしかない。(最初の1ステップ省略)
これって、終盤でファイルが多くなってリンクに時間がかかるようになると、
一回試すのに数分かかることもざらじゃない。
正直、あり得ないと思う。
Webなら、管理画面を作らずにおいて、
好きにSQLなげてちょ、っていうのに近いくらいの投げっぱなしジャーマン。
これは全然幸せじゃない。
ただ単にサボっただけだ。
だから、使う相手が使いやすいようなものを考えてつくるべきだ。
外部ファイル編集
→動的読み込み反映
でいいじゃん。10秒もかからないで試せる。
確かにそういう口をつくるのには手間はかかるけれど、
トライアンドエラーで浪費される時間に比べたらたいしたことじゃない。
誰かに喜ばれたいという気持ちが少なからずプログラマにはあって、
それはアプリもWebもゲームも変わらないと思う。
腕を磨くのも、勉強するのも、良いプログラマになろうとするのも
すべてが周囲のためのとは言わないけれど、
周囲のためにしたことがいずれ必ず自分のためになる。
よいプログラマになるってことはきっとそういうことだ。
周りの幸せを考えられない人はチームにいるべきじゃない。
やっぱり自分は人と仕事がしたいし、
人のために仕事をしたい。