Mentoring, Apprenticeship, And Craftsmanship
-
CSを納めた学生の質にがっかり
- プログラムのなんたるかをちゃんと教わってない
Degrees of Failure
- 修士のインターン生が「プログラム書いたことないんです」という惨状
- できる奴は大学前から独学してて、入学後も継続していたりする
- 学校で教えることと実務との乖離
Mentoring
Digi-Comp I, My First Computer
- はじめてのプログラムの話
- プラスチックでできた3ビット有限オートマトン
- 12歳の子どもにもわかるようにブール代数のマニュアルを書いてくれた人への感謝
The ECP-18 in High School
- 大人のプログラミングを横で見ていろいろ学んだ話
- 指導をうけたわけではないが、すごい速度で学びを得た
Unconventional Mentoring
-
先の2つの例は、「mentoring」という言葉がふつう意味するところではない
- よくできたマニュアルを読んで学んだ
- 見て盗んだ
- 親切にしてくれた人も何人かいたにはいた
- が、基本的には独学
Hard Knocks
- 成功しはしたが、師がいたらもっとよくなっていたと思う
Apprenticeship
-
医者はどうか
- 医学生を雇って初日に患者の胸を開かせるか?
- んなわけない
- インターン
- その後契約期間
- そしてようやく有資格者になる
-
ソフトウェア産業にそのままは当てはまらないにしても、どうすべきか
- 人死には少ないにせよ、バグが原因の金銭損失はままある
Software Apprenticeship
- ボブおじが考えた理想の育成計画
-
プロとしての格付け
- どんなステップを踏めばよいか
- どんな困難を乗り越えるべきか
- どんな目標を達成すべきか
Masters
-
少なくとも1プロジェクトをリードした
- 10年以上の経験
- 複数のシステム・言語・OSで実務経験あり
- 複数チームをリード・調整するすべを知っている
- 熟練した設計者・システムアーキテクトである
- 他の誰よりもうまくコーディングする
-
管理職を薦められたが
- 断ったか、
- 受けたあと技術職に戻ったか、
- 技術職を主要な役割として、両立している
Journeymen
- 訓練され、有能で、エネルギーのあるプログラマ
- チームで働くこと、チームをリードすることを学んでいく段階
- いろいろなシステムでの実務経験はまだない
-
1つの言語、1つのシステム、1つのプラットフォームしか知らない傾向にある
- が、これからより多くを知っていく
- 5年くらいのキャリア
- masters、あるいは先輩のjourneymenに管理監督される
- 成長するにつれて自己決定権を認められていく
Apprentices/Interns
-
journeymenによる管理監督下
- 自己決定権なし
- ペアプロで規律を習得する
-
journeymenによる教育
- 設計原則
- デザパタ
-
規律
- TDDとかリファクタリングとか
- 作法
- 見積もり
- もろもろ
- だいたい1年間くらい下積みする
- journeymenの推薦で、mastersによる面接や達成度確認等を経て、journeymenになる
The Reality
- 言葉の違い等はあれど、現実の組織も大体こうなっているだろう
- 現実の組織の問題は、技術的な「管理監督」を全うしなくても昇進・昇給してしまうこと
Craftsmanship
- プロ意識
- 人から人に教え広め、また若輩から学び直すもの
Convincing People
- craftsmanというロールありきで、プロとして振る舞う
- 【補】プログラマが知るべき97のこと — ロールプレイングゲーム
Conclusion
- 人材を育成するのは大学ではなく現場の責任
英語
-
diploma
- 卒業証書
-
protruding
- 突き出ている
-
be hooked
- 病みつきである
-
adept
- 熟達した
-
treatise
- 論文
-
take one’s toll
-
…に損失をもたらす
- 本文では、経年劣化について述べている
-
-
latch on to
- 理解するf
-
gratified
- 満足する
-
nuisance
- じゃまもの
-
protestation
- 断言
-
that’s about it
- それぐらいですね
-
prosper
- 成功する
-
ensconce
- 落ち着く
-
residency
- 研修医
-
fellowship
- 契約社員
-
induct
- 就任させる、地位につかせる
-
apprenticeship
- 見習い、年季奉公
-
proficient
- 熟練した
-
circles around
- …よりも上手である
-
without breaking sweat
- やすやすと
-
“Scotty.”
-
苦境から救い出してほしい、何とかしてくれ
- スタートレックが元ネタ
-
-
journeyman
- 年季明けの職人
-
diverse
- 種々の
-
burgeoning
- 急成長する
-
autonomy
- 自己決定権
-
scrutinize
- 綿密に検査する
-
ritual
- 作法
-
squint at
- 目を細めて見る
-
acumen
- 鋭い洞察力
-
coddle
- 大事に扱う、甘やかす
-
sterile
- 不毛の
- 子を生まない
-
contagion
-
人から人へ伝わる
- 伝染病など、マイナスなものに使われるが、よいものにも使われるっぽい
-
-
tutelage
- 後見