船木俊介「デジタル進化論」

スーパーソフトウエア東京オフィス代表&キッズラインCTO

先生はSなほうが向いている

新しく入社する社員も多いので技術的な基本研修をやったりしてますが、人にものを教える先生というのはちょっと楽しい。どうだこれは分かるか、こんなのだったらどうだ、この問題は解けるか、という感じでSレベルが問われる気がする。まあ、気がするだけで合ってるかどうかは知らないけど。

C言語をメインで使ってたというエンジニアの場合は、プログラミングは出来るけど、Webやスマホの技術背景に戸惑うこともあるので、ベーシックな講義も実施。 87dd454e_2
プログラム設計で重要なことは「いかに抽象化した考え方」ができるかということ。ネットに転がってるソースを切り貼りすることでも多少動くものを作った気になるけど、自分の思ってるものやこだわりを実現しようとしたらちゃんと自分自身で設計できないといけない。自分でアプリを企画して実装してリリースくらいは簡単にできるよ、というくらいのレベルにはなって欲しい。

オブジェクト指向講座の主題は、福山雅治も出川哲朗もデーブスペクターも人である、ということ。いきなり、歌のクオリティやザリガニの有無といった細部は考えないで、人だということから始める。これはデーブスペクターだ、これはヤキソバンの宿敵ケトラーだ、とか些細な違いに惑わされないようになれば一人前。見たもの、触れたもの、目の前の世界が全てコードに見えるようになる。

k1 k2
講義のあとは、もちろん宿題を出して、提出されたコードをチェック。言語は何でもいいよといったら、Java、Rubyの他に意外に人気が高かったのがC#。エンジニアだけでなく、コンサルタントも人事も関係なく宿題やってこいという無茶なオーダーを出したところ、なぜか人事のやまきさんが結構すごいRubyのコードを書いてきたのでびっくり。期限までに提出しなかった男子は、化粧して新宿2丁目を歩くなど楽しい罰ゲームもご用意してあります。

iOSの研修は、画面仕様だけ与えて1週間で10本アプリを作るブートキャンプ。基本が分かっていればできるものと、API連携などちょっとハードルあるものまで、硬軟取り混ぜて入門編。 k4 k3
思った通りにプログラムが書けるようなエンジニアに必要な構成要素は、①文法、②設計・抽象化、③制御処理や影響範囲などのロジカルシンキング、④実装手法のパターン認識力、⑤トラブルシューティング能力、⑥コントリビューション、あたりかな。

夏っぽく恵比寿のビアガーデン(のはずが屋台の露店ぽい感じ)で歓迎会。 IMG_1085_2