あなたはすでに良いアイデアを持っています
あなたの質問であなたが概説したアイデアは素晴らしいように聞こえます。成功していないのは大きな驚きです。それは2012年であり、オブジェクト指向の革命は最先端から実践へと移り変わってから長い間経ちます。離職率が非常に低く、雇用が非常に少ない場合を除き、数十、または100の優秀なオブジェクト指向プログラマーを獲得するのに苦労するようです。
アジャイルまたはオブジェクト指向?
TDDなどのいくつかのアジャイルテクノロジーやいくつかの新しいコンセプトについて言及しているため、一部の管理チームが積極的に戦っているものを受け入れないことに対して、人々にあまり厳しくしないでください。アジャイルを採用すると主張する人もいますが、それについて話すとき、それは彼らが言う意味を意味します。組織は、意思決定を行って適応するチームではなく、強力な階層的な契約スタイルの制御によって特徴付けられます。
しかし、オブジェクト指向に戻ります。オブジェクト指向の分析や設計については言及していませんが、どのプログラミング言語がどのオブジェクト指向プログラミング言語に取って代わっているのかはよくわかりません。UMLが多くのオブジェクト指向プログラマーの間で人気の問題を抱えていることは知っています。OOADで徹底的に訓練されたことは、自然言語を学びたい国の文化や歴史を学ぶことに似ていると思います。たとえば、ギリシャ語を学びたい場合、アルファベット、語彙、および文法を学ぶことができますが、豊かな歴史と文化を無視すると、多くを見逃します。いずれにせよ、オブジェクト指向プログラミング言語についてすべてを学び、OOADについては何も学ばなければ、重要な機会が失われたと思います。
克服すべき問題?
橋が遠すぎる? 参加する人々の中で、1年に1週間に1つの小さなことを学ぶように人々に求めると、多くの変化があります。あなたが彼らに知っているすべてを変えるように彼らに頼むならば、それは少数によって歓迎され、多くのために激しく、そして他のために不可能です。ソース管理などの一部の変更はローカライズされています。前にやらないことから移行し、記憶の限界に重点を置かないトレーニングを受け、誰かが初めてそれを説明してくれたので、日々はとても簡単でした。
その他の変更は広範囲に及びます。たとえば、CをダンプしてJavaに切り替えるには、新しいIDE、新しいコンパイラ、新しい言語、新しいAPI、新しい展開モデルなどを採用するために、日々の大幅なトレーニング、セットアップ、および大きな変更が必要です。パイロットプログラムまたは企業の再編に関連して最も頻繁に発生すること。
革命をリードしていますか? 現在仕事をしている人々が報われた歴史があり、会社が失敗の危険にさらされていない場合、変化の動機は何ですか?あなたが方向を示し、彼らが予測できない結果に責任を負わせたいと思っている部外者のように思えるなら、それはすべてのリスク、報酬なしのように見えるかもしれません。
権力とアイデアのリーダーシップの位置付け 多くの組織は、地位に基づいて運営されています。マネージャー、セクション長、ディレクター、副社長からの目に見えるサポートが不足している場合、あなたは単なるアイデアリーダーです。一部の人々は、1つのアイデアを持ち、2番目のアイデアを楽しませることができないという危険な立場にあります。伝えるのではなく見せることができれば、懐疑論者を静かにし、才能のある同盟者に興味を持たせることができます。
サポートのベースが小さすぎますか? 250人の人々の間でトリアージを行い、3つのカテゴリーに分類します:受け入れる準備ができている、学ぶ意欲がある、学ぶ意欲がない。あなたは、変化を起こすことに興味のない人々の何人かにイライラする正当な理由があります。ロープを押すこともできます。これは無駄な努力です。誰が変化をサポートしているかについての感触があれば、何に関心があるのかを知ることができます。
倫理的かつ実践的な選択が助けを借りて成功する中間層を助けることである医療トリアージとは異なり、判断と好みに基づいてエネルギーと時間を投資できます。あなたの成功のために、新しいアイデアを受け入れる準備ができているグループを育ててみませんか?最初は数少ないかもしれませんが、雪だるま式のように、支持者としてのあなたの可視性と信頼性は高まります。すぐに、次のトレーニングがいつ行われるのかと聞かれます。
長期的には? あなたが後のものを運ぶためにチャンピオンを養うまで、あなたは関係を築くのに時間を費やすことを期待すべきです。コーチするチームに1か月以上滞在する必要がある場合があります。チームが改善されたプラクティスを自分で所有するまで、あなたは単なる技術または方法論の警官です。メンタリングは何年もかかるプロセスです。開発者がやりたくないことは、重要だと思うことはたくさんあります(具体的には、ユニットテストについて言及していると思います)。これがもたらす価値について共通のビジョンを構築するには、時間がかかる場合があります。私はかつてフォーチュン500社でコードカバレッジツールを提唱していましたが、これは品質で高い評価を得ていましたが、マネージャーや同僚も同様にコミットすることに慎重でした。
エキスパートまたは草の根? メンタリングよりもはるかに速いのは、各チームメンバーからの草の根のサポートを促進することです。10人のソフトウェアスペシャリストのチームから始めて、1人が常にプロセスを担当するか、10人が10%のプロセスを担当するかを選択した場合、2番目を選択します。草の根プロセスにより、支持者はアプローチの影響を感じ、作業を所有するチームの問題を最適に解決するようにアプローチを調整することができます。
フリーダムラインが見えますか? 「ベストプラクティス」を導入することの一部は、一般的な方法で物事を行う自由を人々に放棄させることです。開発者に多くの選択肢を残す機会を探しているなら、プログラマーの裁量を放棄することはより好ましいでしょう。彼らが選ぶものは、自由線と呼ぶことができるパーティションによって義務付けられているものから線引きされています。組織、地域/サイト固有、チーム、および個人の慣行について、同様の正当に正当化された部門が必要になる場合があります。