nowaの撤退をどうみた?(下)この辺りの話題を眺めていて思うところあったので少し書いてみる。別にはてな社やライブドア社がどうだって話ではなくて、システムやソフトウェアを開発する仕事の話です。新しくスクラッチから書き起こす既にある機能と互換性を保ちながら改修するプログラマにとっては、前者の方が圧倒的に楽しい仕事だと思ってます。(最近無くなったらしいけど)グーグル社の20%ルールは、開発者の創造性を巧く引き出せるよう上手に設計された制度です。現実問題として、IT業界では後者の仕事を行う機会の方が圧倒的に多い。私は2011年頃からメイン設計者・開発者は退職してしまった年に数回は1からスクラッチで書き直そうよという話題が持ち上がっては消える既に利用者は大勢抱えているので現行版の保守は続けなければならないといったライブラリ(非常にぼかして書いてます)のメンテナンスを細々と行うのが主要なお仕事です。最初は7人くらいでワイワイと開発してた筈が、いつの間にか1人になっているという。その話は関係ありませんから置いておきます。あちこちから「イケてない」とか「ドキュメントが使えない」とか文句が来て、実際その通りだし、目の前にあるコードは事実としてクソ設計だという状況で、モチベーションを保つのは結構難しいものです。前任者を呪ってやろうと思った回数は数え切れません。過去のことをネチネチ言っててもしょうがないので、最近はこういうことを実践して楽しみを見出すようにしてます。Development)をやります。自分でチケットを切って自分をアサインして自分で返信して自分でクローズする行為は最初、寂しさのあまり死にたくなりましたが、慣れてみると「今やらないといけないこと」が明確になって楽しくなりました。「あいつに仕事を頼む時はチケット切らないと」くらいに思われるのが目標です。ローカルリポジトリでコミットを育てる保守しているライブラリそのものはSubversionで管理されているけど、そこにコミットするまでの差分管理はローカルにGitやMercurialでリポジトリを作って育てるようにしています。これはローカルでもコミットしておいて安心感を得たいというのと、今後の自分のキャリアを考えた時、単純に分散バージョン管理システムに慣れておいた方が得策だろうという判断からです。テストを書く複数人で開発していた頃にユニットテストが無かった訳では無いのだけど、「察して下さい」レベルの品質だったので、バグ修正の度にテストケースを書き起こして追加してます。小さいながらも新規にコードを書く楽しみが得られるし、次にリファクタリングする時に楽が出来ます。パフォーマンステストも書いておくと、面白いし数字を減らす楽しみが生まれます。コードレビューするリーダーからの提案で始めましたが、割と楽しい行為です。レビューへ提出するために綺麗な差分に整えようという意識が高まります。Boardというソフトウェアが結構イケてます。レガシーな現場ってどこにでも存在すると思うので、工夫をして楽しく仕事したいなぁと。どこまで実践できるかも、与えられた裁量に拠るところですが、今はそこそこ自由にやらせてもらえてます。次なる野望はJenkinsで自動ビルドをする、なんだけど、時間が取れなくてなかなか進められない。(2019-03-28(木)15:19)「バージョンは好きにしていいのか。