マエカワの備忘録的な何か

思い立ったが吉日

ソフトウェア工学 其の二 20171012

ビデオ戦争についての補足訂正

どちらが早く出したかよりもどれだけ差があるか

 前回の補足訂正をしていきます。
 ネットワーク外部性がある商品は早く出したほうが有利ということを前回書いたが、VHSとベータではベータのほうが早くリリースされている。当初、VHSとベータの勢いは拮抗していたが、どんどん利用者数のさが広がっていき、ある一線を超えたところで一気にVHSのほうに勢いが傾いた。リリース時期よりも、差が優位になるまで広がったことがVHS普及の原因になっている。
 ちなみに、現在Microsoft Wordが事実上の標準になっているワープロソフトにもネットワーク外部性があり、やっぱりこれもWordとほかのソフトとの間に有意な差が生まれた途端にシェアをかっさらわれたらしいです。自分は「一太郎」しかわかりませんでした。

どこで差がついたのか

 勢いが拮抗していたVHSとベータだが、いったいどこで差がついてしまったのか。その答えが書いてある記事を見つけたので載せておく。
d.hatena.ne.jp
 さすが三大欲求といったところでしょうか()

今日の内容

ゲームテスターは意外にも高コスト

 大規模ゲームになると、バグ個所を洗い出すためのテスターも大量投入され、その規模は100人オーダーになるという。そのコストは月2億。とんでもない数字。さらに、各ゲーム会社が社運をかけて制作するようなタイトルは全体で数百億かかることがあるようです。その分面白いものが出来上がってちゃんとリターンされるのがすごいところ。最近ではスマホゲームが数十億、数百億単位で開発されているそうです。

自分の価値を高めるために

 自分が持っているスキルで自分の価値は決まっていく。このスキルを育てる、手に入れるためには初期投資が必要になってくる。リソースを突っ込むときは突っ込む。あとのことを考えて打算的に行動しては結局自分の身にならない可能性が高い。初期投資をしっかりすれば、あとはグライダーのようにゆっくりと下降していく。時間さえ積めば、自分の価値が上がっていくなんてことはめったにない。まずない。
 自分が楽しいと思うことに時間をかけることが勉強。リソースを突っ込んでスキルを上げると、あとは倍々ゲームでスキルは上がっていく。興味を持つようになると、自分で情報収集するだけでなく、情報のほうから自分に歩み寄ってくるからだ。新しい技術を身に着ければ、当然スキルアップになり、また自分の価値を高めることができる。興味を広げる→論文を読む→英語を勉強するなど、興味を持って行動しているだけで新しい知識技術が手に入る。
 この倍々ゲームに参加するかしないかのボーダーが大学だという。そういった意味で、弊学は恵まれすぎているのかもしれない。

大学と専門学校の違い

 MITと東大でプラントの設計レースをしたことがあったらしい。最初は設計のためのソフトの使い方を熟知しているMITのぼろ勝ちだったらしいが、最終的に東大が設計したものに軍配が上がった。先を見越した設計が受けたという。
 大学は先の社会でも活用できる技術や一般的原則を教えてくれる場所。今流行りの人工知能だが、内部では誤差を最小にするプログラムが動いているように、基礎的な部分は学部1,2年時に習った統計学解析学がベースになっている。なので、解析、統計で起こる問題は、それを応用した人工知能でも起こりうる。
 数年先、数十年先で流行るかもしれない技術はもちろん基礎的な原則が根幹にある。食いっぱぐれはないわ、もしかしたら山が当たるかもしれないわという点で大学はローリスクハイリターン。時代の変化に左右されない確実な知識を養う場所が大学だ。

キャリアは縁

 とりあえず、一生懸命やっていれば楽しくなって、のめりこんでいく。先に書いた倍々ゲームに乗るチャンスが巡ってくる。きっかけなんてどこからやってくるかなんてわからないもので、割と住めば都という感じがします。

会社に入るとバカになる

 細分統治によりあらかじめ決められた目的を、もっと言えば決められた作業をこなしていき、全体で目標に向かっていくというのが会社。この作業はただ時間を積めば達成できるもので(もちろんそうじゃない場合もある)、その通りに作業をしていると考えることがなくなり、次第に考える能力がなくなってくる。
 大学院へ進学するということ、研究を進めるということは自分で問題点を考え、解決策を考え、手順を考え、発表方法を考え、考え、考え。常に何か考えている状態。このスキルを引っ提げて社会へ出ると、普通に会社で仕事をしていると気が付かないような問題点、解決策に行きつくことができる。その能力が社会では重宝される。もっと言えば、どんなことができるのか、逆にどんなことができないのかを正しく把握することが重要になっている。

ソフトウェアの種類について

情報システム

 組織の業務、利用者の利用手順を最適化するシステム様式。同じ役所などでは同じ様式を使えばいいという人がいるかもしれないが、元のシステム自体は同じといえどその最適化の過程は組織ごとで全く異なる。そういった些細な違いにも対応するために、この組込みシステムはオーダーメイドであることが多い(実際、必要かどうかは置いといて…)
 しかし、このシステム形態には問題が多数ある。その一つが「客先常駐」という仕事スタイル。組織のシステムを構築するのに、わざわざ会社に戻るのは時間のロスだし、常駐することで生の現場のニーズなどがわかるという利点もあるにはあるのですが、次第にエンジニアの心をすり減らし、SEの奴隷化が始まっていく。客先常駐について書いているブログがあったので載っけておきます。
blog.imalive7799.com
 このブログの問題2として挙げられているのが「情報格差は埋まらない」というもの。結局、他社は他社といった意識なんでしょうか。わからないことを自ら興味を持って取り込んでいくことはクライアントとエンジニア双方にいいことだと思うんですけどね…。尊重し合っていきたいものです。
 また、構築したシステムにバグが出た時のことを考えてみる。このバグを直す労働にも賃金が発生するため、あえてバグを残して賃金をもらおうとする人たちが出てくるみたいです。これではいつまでたっても品質は落ちていくばかり。できの悪いものを作り続けると、市場価値が下がっていき、得られるはずだった利益を教育費や経費、残業代削減という形で補填していく。ここがブラック企業への第一歩の一つ。原価割れはまず起こらないのが質の悪いところ。
 逆に、超高品質な情報システムとして挙げられたのが東京証券取引所の「アローヘッド」。取引を大量に高速で行うことでなんちゃらエラーが少なくなるなどのメリットがあるらしい。詳しいことはわからない。調べてみよう。

組込みシステム

 スマホがそのいい例になっている。バッテリー、液晶、基盤などなどといったハードウェアが集まって一つのシステムを構築しているスタイル。
 半導体の設計についてここで話が出てきたので少しだけ。半導体の設計図は最初Pythonで書いて、Cで書いて、アセンブリで書いて…といった感じでより高速にしていくらしい。ここで「石を焼く」なる言葉が出てきたので調べた結果、半導体を製造するということらしい。半導体のもとであるケイ素は鉱石から採取できるので石と呼ばれてるというわけだ。
半導体は「石」だったの!? | TQ Colmn | Tyro teQ
 特別なシステムには、その処理専用の半導体が使われている。さっき出てきたアローヘッドにも専用の半導体が使われている。

飛行機の操縦システムについて

 飛行機も組込みシステム。昔は油圧式で操縦かんと翼が直接つながって操縦できていた飛行機だが、今では操縦かんというよりもゲームのリモコン。さらに、コンピュータ制御で翼に信号を送って操縦しているとのこと。「フライバイワイヤ(fly-by-wire」というそうだ。旅客機、戦闘機、あらゆる飛行機はこの形式で操縦されている。
 3年前期の「総合情報学特別講義」第一回で、トラックはもはやコンピュータ。ハイテクマシンになっているという話を聞いた。ブレーキ、アクセルもコンピュータ制御になっていて、直接エンジンにはつながっていない。最近、アクセルを誤って踏んだら異常を検知して止まるという車が出てきているが、こういったシステムはアクセルが直接エンジンにつながってたら難しいんじゃないかと思う。コンピュータで制御しているからこそ実現できているのだろう。

もろもろの情報

  • 1回目のレポートは「ネットワーク外部性」が深くかかわっている様子
  • 1回目のレポートはグループワーク
  • レポート内容がかぶったら受理されず
  • 期末試験は合計6問
  • レーザーポインターが高出力