30歳過ぎから工学 vol.2

http://d.hatena.ne.jp/j130s/ から移行しました.オープンソースロボットソフトウェア技術者兼主夫. 高校・大学学部文系-->何となくソフトウェア開発業-->退職・渡米,テキサス州でシステムズ工学修士取得,しかし実装の方が楽しいと気付き縁があったロボティクス業界で再就職.現在 Texas 州内の産業用オートメーションのスタートアップに Georgia 州から遠隔勤務.

インド人とのアセンブラ言語グループワーク

アセンブラ言語の授業の, 学期末でボリューム多めの宿題が終わりました. 終えてみてびっくり 3週間で 73時間を費やした. システム作り系の宿題は時間がかかるものだがこれはかけ過ぎだ.
今回はマシン語インタプリタアセンブラ言語で書くというもので, 1)マシン語の理解, 2)アセンブラでの実装, という 2工程があり, 私はその前者に殆どを使いました...マシン語なだけに機械様が最も理解し易いように書かれていて人間には理解しにくく, おかげで "一旦わかっちまえばこっちのもの" とは行かず, 同じ内容を何度繰り返して確認しても正しいか自信が持てなかった.
とはいえ今回の題材だった "Cardiac" と呼ばれる, CPU の振舞を理解する為に 40年前にベルが作ったツールは, 終わってみればとても理解の助けになったなと思えるものでした. 期末試験を終えたら改めて紹介しますが, 簡単に例を説明すると, 今回作ったインタプリタは例えば入力を
002
800
010
とすると,
01 番地に 002 を格納
00 番地にカーソルを移動
01 番地に 10 を格納
という感じで動いていきます. なにやら不思議ですね.

今回のフローチャートとノートブック. 文字が小さくてすみません. これも提出物. エンジニアリング組織文化に慣れることの一環として, 最終成果物だけでなく作業過程も(一応)評価されます.


さて本題. 2人1組のチーム作業で, 私は修士課程のインド人女子と組んだのですが, 〆切が迫って切羽詰まって来るとどんどん話が噛み合なくなり, ストレスが溜まりました. インド人だからなのか, 彼女自身の性格なのかはわかりませんが, 分担と言う考えが無いのか, 私: "あなたは A, B, C をやってるようだから私は D, E, F をやるよ. OK?" 彼女: "ラジャー了解" という会話はあったものの, その後なぜか彼女は ABC を終えた後 D も作り, 今 E を作ってる最中だ, などと先の分担を無視して報告してくる. そして結局, 残念ながら彼女が書いた部分はそのままでは動作しなかったし, なぜ同じ箇所を作ってくるのかを問いただすような事も無意味なのでしなかったが, 努力を無にするのも亦残念なので, 一応プログラミング年長者として彼女が書いたプログラムを私が編集して〆切当日になんとか動作させてみたら, 安心したからなのか色々謝ってくれました. おとなげないとは思いつつ,彼女に対して苛立ってたことをしまいには隠さなかったのだが, それにも反応してくれて助かった. どうもプログラムが動かなくて彼女なりに一杯一杯だったようでした.
今回の失敗は, 最初に方針を明らかにしなかったこと. 作業を先に進める事を優先するのか, すべての作業内容を双方が理解することを優先するのか. 私は心の中では前者で決めていて, お互いの分担箇所がかぶらないように最初に押し付けがましくないように注意しつつ割り振ったつもりだったが, 彼女はその進め方をまったく理解しなかった. 作業箇所がかぶることの無駄について私が何も説明しなかったし, そもそもそれを無駄だと思って居なかったのかも. 授業だから理解するのが第一目的, はじめからお互いが同じ作業をすることにするという方針もあり得たな.
前述の通り,今回の出来事は相手がインド人だからなのかどうかは分かりません. 日本の企業に居た時に中国人の同僚と一緒に仕事した事はあったけど, あの時は日本の文化を基盤にするという前提があった. しかしここはアメリカ, アメリカの文化を基盤にしてまるで文化が違う人と行う共同作業は, 正直自分はまだ勝手が分かっていないんだな, ということを認識しました. 計算機科学&工学学科は, 上級レベルに行くにつれグループで動くシステムを作る宿題が多くなるようです. プロ相手だと勝手が共有できるので良いんだけど, フルタイムエンジニア業務未経験の学生さん相手に自分が元プロだからって偉そうにしたら誰にも相手にされない. 今後もっと苦労することでしょう. 今回しきりに, 以前勤めてた企業がインドやベトナムへのオフショア開発委託を試みてはうまくいかなくて苦労してた話を思い出した. あの時社内での報告をもっと真面目に聞いてれば良かったなあ.
なおこの授業課題, どうも授業担当者によると半数以上が正常動作させられないまま提出するのが常なようです. 完成させられない生徒が多いことを知っていながら毎回同じような方針で課題設定するやり方は一体どういうことなんだろう. 何はともあれ我らがインド人女子 + 日本人オッサソチーム, 途中でコミュニケーショントラブルはあったもののきちんと動作させられたので及第点. よく頑張りましたマーク.