がるの健忘録

エンジニアでゲーマーで講師で占い師なおいちゃんのブログです。

「優れた技術力」って、なに?

色々とちょうど良いタイミングなので*1、一気に考察………出来るかなぁ?


まず先にこの手のものは「逆から」。
なので、「明らかに優れていない技術力」について考察。なお、おいちゃんが考察するので当然ながら「お仕事としてエンジニア−特にWeb−をやっている」状況が前提。多分応用はいくらでも利くはずなんだけど。

  • 修正追加に対する柔軟性が低い

まぁ多岐にわたる部分に配慮する必要があるのですが…とりあえず色々と困ります。
インタフェースをしっかりと切ってソースコードにはたっぷりのコメントを入れて*2。
1つの「もの(オブジェクトとでもなんとでも)」は一箇所に書いてある状態。
最低限その辺やらないと、例えば「入力画面で1項目追加するのに17箇所プログラム変更」とかいう、存在自体を抹消したくなるようなソースコードができあがります(残念な事に実話です)。

  • あまりにも性能が悪い

別にダイナミックステップレベルでチューニングしろたぁ言いませんが。
とはいえ「明らかにどう考えても性能を考えてなさ過ぎる」システムというのは時々あるものです。
これは、例えばWebなんかですとユーザ数が増えたりした時に、割と顕著に悪さをしてくれます。
ある程度、メンテナンス性が落ちない程度には色々と考えながら作りましょう。

  • セキュリティ的な問題が多すぎる

「当面、表面化しにくい」だけに、1ランク厄介度が上の問題です。
ちなみに、例えば「個人情報が流出した」時の、純粋な「金銭的損失」を計算すれば、これを問題にすべきかしなくてもよいのかなんてぇのは一撃でわかります。

  • スケールアウトに対して未考慮

少しハードルを上げてみました。ここに未考慮だと、システムがある程度以上でかくなったときに大変です。
最低限「この部分は未考慮」って部分の切り出しくらいはしておきましょう。


…ん、書いててなんですが。
http://d.hatena.ne.jp/gallu/20081022/p1
と繋がってるなぁ当たり前か。
…ここからもう少し展開していくかなぁ?


考察ネタなので悩んでる悩んでるw

*1:知恵熱で倒れかかってるのがちょうど良いのかは微妙だけど多分ちょうど良いw

*2:コメントに賛否両論があるのは知ってますがとりあえずハードルを低くしておきます