2022年07月13日

発注者はセカンドオピニオンを求めよう

発注者がベンダーをコントロールしたり、評価しようと思わないで!
あなた方には無理だから。それよりもセカンドオピニオンを別のベンダーに求めてください。
あなたがいくら病気の知識を仕入れようとしても、医者の説明で納得することはありません。
その時は、セカンドオピニオンが参考になるはずです。

挙句の果てに、発注者は「あなたの言うことがどうして正しいと言えるのか?」などと質問する。
かなり高度な質問です。システムには様々な視点があり、何が正しかを言えないことが多い。
だから立場や視点を変えて、コスト、技術、保守性、様々な観点で、どの程度正しいのかを、経験や業界の状況交えて説明する必要があります。相当に高度なスキルを要します。あなたが満足する回答をくれるベンダーなど数%程度です。
ほとんどが期待外れに終わるでしょう。

だからあなたがレビュアーにならず、セカンドオピニオンを別のベンダーに求めてください。
セカンドオピニオン専門のコンサルティング会社を始めてもいいな。
posted by しもす at 00:06| Comment(0) | IT業界

2022年07月09日

IT人材の「混ぜるな危険」に疑問、に疑問

2022年6月23日の木村岳史のコラム。
いつも現場人間以上の洞察力で「なるほど」と唸るほど切れ味のあるコラムを届けてくれる。

ところがこの号だけは頂けない。
ITには守りと攻めがある。いわゆる保守とDXなど推進する新規開発。
多くの起業では、これらを担う人材を2つに分け、別々の組織にする。
これは私自身も多くの企業と接してきたが、この業界で初めて働きだしたころ頃から引き継がれて来たことであり、違和感はなかった。いやむしろ正しい組織のあり方だと思って来たし、そう意識する必要もないくらい当たり前のことだと思って来た。

木村氏のコラムを読んで目から鱗・・とはならない。
そもそもどうしてこの組織の在り方がおかしいと言うのか論拠が希薄過ぎる。
「多様性が重要」だから、だけでは根拠が希薄であり、「多様性」が正しというだけの原理主義である。

現場にいると、よくわかること。
保守する人間と、開発をする人間ではタイプが違う。
誤解を恐れずに言うと、開発をしたいと思う人の方が優秀である。
IT業界は技術革新が激しいから、ほぼ毎日学んでいないと、時代に遅れてしまう。
労働時間も長く、自分の時間を犠牲にすることも少なくない。
能力的に、学んだり、達成への努力をする人間にしか務まらない。

保守の作業は単調で、ほぼ決められたことを一定時間に正確に実行することを求められる。
保守の至上命令は本番のトラブルを出さないことである。
創意工夫は必要ない。「いつもと違う」ことをして、本番トラブルを出すなどあってはいけない。
できるだけ作業を単純にし、自動化し、「誰がやっても同じ結果になる」ことが保守の成功の頂点である。

ただし、システムはそんなに単純なものではなく、日々の保守運用には魔物が潜む。
どうしても完全に単純化され、自動化されたオペレーションで全てが回ることはない。
規模が大きくなれば全てを完全正確に実行するだけでも大変な作業である。
そのため、どうしても保守には数%優秀な人材が必要となる。
イノベイティブである必要はないが、システム全体を網羅的に理解し、起きている状況を瞬時に把握し、万が一の時にどういうアクションを取るかを瞬時に判断できる人である。システム全体を把握するのは人間には無理なので、階層化する能力、つまりアーキテクチャ的能力も必要である。実は大企業のシステム保守はこの数%の人に支えられている。後は置き替えが可能な人材だ。

さて、このような優秀な人材なら、ITを始めた時に新規開発を経験すれば、その道の一流のプロになることもできるだろう。ただし、「運悪く」(と思っているのは私だけかもしれないが)、保守を長く経験すると、本番システムで障害を起こさないことが最も崇高であり、誇りに思うようになってしまう。

時として、新しいイノベーションを志す若い人や、経営陣が、「改革」を阻む抵抗勢力は、このように不幸にも保守を長く担当することになってしまった、優秀な人達である。新しい技術やシステムの導入することは未知や障害を伴い、少々の努力では実現しない。だから本番の障害を引き起こす可能性は当然ながら高い。
彼らは「本番運用で障害を出さない」という誰が聞いても正しい命題を掲げて、その導入に反対する。もしも「こういうことが起きたら」どうなるんだ、「こういう対処」はできているのか 正しく動くことをどう担保するのか?
新しい技術なんだからそんなことに答えられる人はいない。命題は正当だし、論理は正しく、実績も高い。そんな人たちに抵抗されて、抵抗に屈せず、新しい技術を導入できる人材なんているだろうか?
システムの障害は経営陣の進退も左右する時代である、改革は必要だと頭で理解していても、リスクを冒すことはできない。

「混ぜると危険」というのはこういうことである。絶対混ぜてはいけない。もちろん彼らの意見は貴重であり、十分検討しなければいけないことであるが、故に新規システムはお断りだ、という態度をとる人間、元がどれだけ優秀であったとしても、排除すべきである。

単純に多様性が重要というだけでは、本番トラブルを出すわけにはいかないと言っていることと同じ原理主義だ。
保守の何を是とし、リスクテイクして、どこを攻めるかを判断するのが、真のCTOの役割である。


posted by しもす at 15:53| Comment(0) | IT業界

2022年03月21日

こんな簡単なVBAコードが検索できなかった

Dim ce As Range
Dim va As Variant

Sub MultiSelect()

    For Each ce In Selection
        va = Range(ce.Address).Value
        MsgBox "選択された値は " & va & " です"
    Next

End Sub

このブログで具体的にコードのことを書くのは初めてだ。
一昨日VBAの簡単な(のつもりだった)コードを書くつもりが、思ったサイトを検索できなくて少し時間がかかってしまった。
要件は、Ctrlで複数のセルを選択した時に、全てのセルの値を取得して処理をするというもの。

Ctrlしながら複数セルを選択するのはWindowsの基本機能だからそんなサンプルコードはどこにでも転がっていると思っていた。ところが検索キーワード

vba activecell 選択 複数

では、「複数」に反応しない。

vba selection 選択 複数

も飛び飛びの範囲ではなく、最上下、最左右で作られる長方形の領域全てのrangeを処理するものばかり。

vba selection 選択 複数 飛び飛び
これもだめ・・

ようやく選択したセルの番地を取得するサイトは見つかったけど、

値を取得するサイトは見つからなかった。
そこで、載せてみたというわけだが、このブログが検索されることがあれば幸い。

VBAはググればやりたいことがほぼ見つかるのだが、同じようなサイトが多いから検索上位10サイトのどれを見ても、ほぼ同じような内容というものが多い。ヒットするならいいのだけど、少し違うニュアンスの処理にしたいときは、下の方に検索されることが多いということもある気がする。


posted by しもす at 14:26| Comment(0) | IT業界