新しいことは何かを壊すかもしれない。それでも錆びついた足枷をも壊せるかもしれない可能性に賭けたい

Java漬けになってきたが、それでも僕は書いてない - 無駄かもしれない足掻き

 ざっと上げただけでも「書いていない」文法やらコードやらがこれだけある。
2つの場で知った知識どころが、基調講演でも飛ばされるような些細な変更すら適用されていない環境でコードを書き、テストはなく、バージョン管理がまともに動作していない。

目指している方向はあっているはずなんだ。
ただ、やり方がとんでもなく手遅れているだけだ。

おなじ職種として考えさせられる記事だったし、自分自身の環境もこの方と近いところにあって共感しました。

要点をまとめると、

  1.  毎日Javaコードを書いている
  2. Javaのイベントに参加したら最新のJavaコードに触れた
  3. 古いJavaしか書いていないことに気づく

僕がメインで書いているC++(正式にはVC++)も、コンスタントに新しい文法が追加されたり、多言語の移植だったり、非同期APIの強化だったり、’いま’のアプリケーションに求められる変更が多い。

もちろんそれだけではなく、どうがんばっても5行書かないとダメだったものが1行で書けたり、ラムダ式STLC++標準ライブラリ)のアルゴリズムとを組み合わせることでコードが断片化することを防げたり、STL自体も安定、高速になってる。

 

Visual Studio統合開発環境)もマルチコアに対応してコンパイル、ビルド時間も短くなっている。VC++も全部ではないけど、C++11の文法をサポートしているし、インテリセンスも強力に動いてくれる。Visual Studio自体の安定性も上がっていると感じるし、軽いのにパワフルだと感じる。

 

そんな2015年に、VisualStudio 2010を使うことに対する「どうしてこうなった」感は、ある。非常にある。

 

もちろん、ただただ黙っていまの状況を受け入れているわけではない。

 

全体ミーティングがあれば、それとなく新バージョンのメリットを紹介したり、新規プロジェクトであれば積極的に新バージョンを使うように推進している。

新規プロジェクトでは、新しい環境を勝ち得たこともあった。
だがしかし、過去のプロジェクトのバージョンアップとなると、


「何が起こるかわからない」
「いまの機能には新しい環境の機能は不要だから」
「そんなに新しいコード書かないし」

 

悲しい。自分の意見が通らないことが悲しいのではない。同じ開発者であるはずの人たちからこのような言葉が出てくる現実が悲しい。

 

新しいことは何かを壊すかもしれない。それでも錆びついた足枷をも壊せるかもしれない可能性に賭けてチャレンジしたいとおもってます。

 

(賭けるとか、チャレンジ、とかいかにもギャンブル性の高そうなリスキーな書き方をしてしまいましたが、ふつうのことです。

開発環境とか、新文法なんていうのは、最新を追って当たり前。それが僕らの仕事であり、それをしないということイコール自分たちを緩やかな地獄へいざなっているということですから。)

 

おわり。

 

STLを使用して、配列をカンタンに安全に使うときのサンプル。
本来ならstd::initializer_listを使いたいが、std::arrayでお茶を濁している。