最近のトラックバック

2021年7月
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
無料ブログはココログ

« 2009年10月 | トップページ | 2009年12月 »

2009.11.30

スキルの分類に大いに不満

 前に書いた人材募集計画で、一般の転職サイトでのプログラマのスキル評価に大いに不満がある。
 なんでどこも、「プログラム言語」と「経験年数」でしか登録/検索できないのでしょう?

 まあデータベースに入れやすい項目じゃないと面倒が多いのは理解するけどさ。ちょっとでも真面目にこの世界で仕事したことがあるならほとんど意味のない項目だということはわかるはず。
 経験10年でもくずのようなコードしか書けないプログラマは腐るほどいるからな...

 もっと問題なのはプログラム言語での分類だ。
 大事なのはどういう分野のプログラムの経験があるかでしょう。Web、ネットワーク、GUIデザイン、グラフィック、データベース、デバイスドライバ、といった分類で、どれが得意かというほうがスキルとしては大事だ。
 その分野さえ経験があれば、はじめてのプログラム言語でも3日でマスターできるだろと思います。その証拠に、ほんの2年前は超マイナー言語だったObjective-CでみんなiPhone用アプリ作ってるわけです。

 逆に、グラフィックのプロにいきなりデバイスドライバを作れといってもそれは無理な話。こういうのは分野ごとに、経験の深い職人だけが知る匠の技があるので、そう簡単にマスターできるものではないし、逆にマスターすれば希少性があるのでそのスキルは高く売れるのだ。それに比べればプログラム言語が何かなんてのは非常に小さい問題でしかない。

 転職サイトの担当者に、「そういう分野での検索はできないんですか?」と聞いたらあっさりと「ウチのデータベースにそういう項目はないんですよ、へへへ」と笑いやがった。これでも大手業者なんだから困ったものだ。使えないなあ。

2009.11.26

マリオの由来

 ちょっとここんとこまじめな話題が続いていたので...
 友人のMixi日記の関連ネタで。

 数日前、マリオの名前の由来判明という記事がありました。

 「任天堂が借りていた倉庫のオーナーの名がマリオ」だと?
 それは明らかに違う! 由来はどうみても映画「恐怖の報酬」(1953年)だ。主人公4人組のうちリーダー格がマリオ、もちろんルイージも仲間だ。
 そしてこの風貌。もうごまかしきかないだろこれは...
Wf1
Wf2

 話の筋は、遠くの油田で起きた火災を消すため、ちょっと衝撃を与えると爆発するニトログリセリンをトラックに満載して道なき道をゆく、というものだ。ドキドキの連続。

 この映画はけっこう思い出深く、たしか小学5~6年のころ、たまたまTVで放送したときに今は亡き父が「これ面白いぞ」と勧めてきて、むちゃむちゃ興奮しながら見た記憶がある。映画をたくさん見始めるきっかけになった作品だ。
 いま思えば小学生の息子にこういうフランス語の白黒映画を勧めるのはどうなのよ、とは思います。

 なので名前の由来がこれなのは確実と思うんだが、ここまで世界的キャラクターになってしまったらいまさら映画が由来と認めるわけにはいかんよなあ、やっぱり。

2009.11.23

人材獲得作戦・2

 前回のエントリのコメントで

なぜリスクを取ってまで、戦力を今以上にしたいのですか?

 というのがあったので一応そこも説明。

 まあ単純な話で、戦力に売上が単純に比例するとしても、増加した戦力が余らないくらいに潤沢に仕事がありさえすれば、こなせる仕事が増えて利益も増えるからだ。前回の比喩では戦力1について支払給与20万円/年だったから、売上がそれ以上あるなら超過分は会社のもの(=株主のもの)になる。
 今は自分の会社は100%僕が株主なのでそのまま僕個人のものになるともいえる。

 で、利益が増えれば、新プロジェクトにチャレンジするなり引退を早めるなり相場で勝負するなりといった選択肢が増えるので人生豊かになる。

 これが実態としてピンハネなのは否定しません(雇った従業員が生んだ価値に満たない給料しか払っていないから)けども、会社というのは世界どこでもそういうものだから仕方がないね。

 問題は僕は経営者になるつもりはない(ある程度はやってもいいけど軸足はエンジニアから離さないつもり)ので、その状態で何をどれくらいやるかが難しいところだ。でもまあ、個人事業に戻ればいつでも安定黒字にできる、というのは心の拠り所としてたいへん大きい。

 今後は、いよいよ日本の衰退がはっきりしてくる時代なので、個人も会社もたくさん淘汰されるだろう。財政や年金はご覧のとおりだし、JALだってあのありさま。
 最初は単に、僕が組織で働くことができない異端者であることを自分で素直に受け入れて独立してみたわけだけど、これが結果としてこういう時代のサバイバル術として最も効果的だったというのはなかなか世の中不思議なものである。

2009.11.19

人材獲得作戦

 久々に風邪ひいて通常の仕事はあまりできず。ズルズル下がる日経平均を見ながらこれ書いてます。

 最近、弊社ではエンジニアの人集め活動をいろいろしております。(ちなみにエンジニア以外は満ち足りています)
 本格的にやるのは僕も初めてなので、まずは勉強も兼ねて、ということで代表的手法である

(1) 知人づてにメンタリティの近いフリーランスを獲得
(2) ピンポイントで人材紹介をしてくれるところに依頼
(3) 転職サイトに広告を出す

 を同時進行でやってます。

 だがいままでの感触では(2)(3)はつらそうだわ。そもそもの大前提として、優秀なヤツは既に自分でやりたいことを見つけてやっているのでこういう一般の転職市場には流れてこない、というのがあるわけですが、それよりも大きな問題が立ちはだかっている。

 たとえば年俸600万でA君を採用したとしよう。それなりに試験をして応募者から選別して決定した人材だ。
 で、僕の生産性を100とする。

 それでも、プログラマとしての基本的なスキル、相場自体の知識、仕事自体へのモチベーション、仕事の割り振りをするコスト、等を勘案すると、3か月程度のトレーニングを経た後でも、僕+A君の総戦力はかなりうまくいったとしても130くらいに上がるだけだ。
 すると30の戦力に年600万のコストというのが高いのか安いのかが問題になってくる。この相場だと、僕の戦力100が年2000万になっているかどうかが損益分岐点だ。
 いちおう計算上はこれはクリアしてる(そうでなければ採用活動に踏み出していない)けど、本当に130になるかどうか、戦力のアップに伴って本当に売上も増やせるのか、今後収入が減ったらどうしようか、とか考え出すと不安でしょうがない。
 人を雇って給料を出すとなると、既婚者ならその人の妻子の生活まで面倒を見ていることになるのでどうしても緊張する。

 もしこれで戦力が110とかにしかならなかったらさすがにキレるぜ。「なんで1週間かけてこんなクソなコードしか書けないんだ!」と壁を蹴っている可能性大。こうやってイライラすれば簡単に総戦力は100以下になってしまう。

 すでに20人いる会社が21人目を採用する、とか、もともと資本がVCとかで「所詮は他人の金さ」とある程度割り切れる状況ならもう少し気軽に構えられるのだけど、これまで自分で稼いできたものを原資に人を雇うって心理的に本当に大変だ。
 もちろん、他人をうまく使うスキルと資質が僕に欠けている、というのもありますが...。こういったことはすべて諦めて一匹狼に専念、というのも有力に思えてきている。

 すると(1)は有力で、過去2件良い成果が出ている(うち1件は後にやむを得ない理由でつづかなかったけど)。
 やはり、既に独立していてある程度基盤がある人なら、あとくされなく気軽に頼めるので楽だし、実力的にも人間的にも信用できる。

 なので、(2)(3)のルートは結局誰も採用しなくてももともと、くらいに考えてるのだけど、広告出すのに60万かかったことだし、せっかくやるからには不採用でもいくらかの成果を持って帰るべく試験問題には自分なりに工夫をこらしました。2~3カ月後にはすべての結果が出ているでしょう。

2009.11.10

テトリスを1時間強で作ってみた

 「テトリスを1時間強で作ってみた」の記事を見たらびっくり、後輩じゃないか!
 この記事では中高のころの話しか出ていないけれど、お互い東大生のころに彼のボスが僕だった時期がありました(年齢はたしか2つか3つ僕が上)。当時の仲間は主に麻布出身で、僕だけ筑駒出身だったけれども、確かにベーマガの話をすれば共通のネタはいくらでもあったねえ。ベーマガは確かに偉大な雑誌で、あれがなければ今の僕もなかったのは間違いない。

 今でもちょっともったいないと思うのは、当時のメンバーはかなり優秀なのが集まっていたのを解散してしまったことだ。いまはそれぞれ違う仕事(ソフトウェア業界、という点では一緒だけど)で、たまに会って飲みにいくくらいだけれども、僕や彼ぐらいの水準の人材は世の中に少ない、という認識が当時はまったくなかった。

 Web上での反応をみると、子供のころからプログラミングをしていたことに大きな反応があるみたいだけど、それって当然じゃね?と思います。僕は小5でファミリーベーシックから入ったクチだけども、僕の周りをみても優秀なプログラマは遅くとも中学生までに始めているように思います。

 プロゴルファーやピアニストとかと同じで、ソフトウェアの世界も子供のころからやらないとだめなのかもね。

2009.11.08

 「やれば必ずできる」と「できるかどうかわからない」

 突然だけど、プログラミングって2種類あるよな。
 「やれば必ずできる」と「できるかどうかわからない」の2つ。

 仕事でやるものはだいたいが「やれば必ずできる」ものに入る。どういう機能を持たせればよいか理解して、それを実現するデータ構造を考えて、素直に書いていけば完成する。まあ所要時間は事前の見込みより数倍くらい長くなることもあるけど、完成しないということはたぶんない。

 一方の「できるかどうかわからない」は、そもそも解決することができるかどうかが定かでないような問題にチャレンジすることだ。解決できない理由としては、もともと原理的に無理、計算量が爆発して現実的な時間内で実行できない、エンドユーザにとって許容可能なパフォーマンスが出ない、などいろいろあるので、それをうまくかわしてゴールにたどり着かないとすべて徒労になってしまう危険な世界だ。

 もしかすると、職業プログラマの多くは「できるかどうかわからない」問題にはチャレンジしたこともないかもしれないけれども、知的興奮としてはこっちがはるかに上だ。

 過去にチャレンジした例としては、あるJavaVMの実装があって、それのガーベジコレクションのアルゴリズムを中断可能にする、というのがあった。オリジナル実装はガーベジコレクションが一度始まると完了までVM全体が動作しなくなってしまう欠点があったので、それに割込をいれられるようにする、ということだ。ふつうはそれくらいの停止は問題にならないけど、Javaアプリケーションがリアルタイム性を必要とする場合は困るのである。
 結果的にそのときのチャレンジは失敗した(2~3週間かけていくつかの戦略を考えて検証し、すべてうまくいかない結論が出た)けれど、そういう類の問題が「できるかどうかわからない」に相当する。

 で、なんでこんな話を書いているかというと、つい昨日、「できるかどうかわからない」問題の一つが前向きに解決できてたいへんうれしいのである!
 これは今後の商売のネタになるので詳細は書けないけど(いつかのバージョンのTacticoに搭載されるでしょう)、こんな感じ。

●バージョン1の実装
 以前アルバイトにやらせてみた。ある程度はできたものの仕様にかなり制限をつけないと実用にならず。
●バージョン2の実装
 バージョン1で得た経験を踏まえて自分で再設計して実装。しかし、「場合分け」の膨大なif文の分岐に耐えられず挫折。
●バージョン3の実装
 場合分けが複雑になりすぎる理由を考察していろいろ改良して再実装。これでうまくいった!

 コードの行数ではせいぜい1000行くらいの機能なのだがえらく苦労したぜ。
 もちろん、前バージョンの失敗の経験がなければ次には進めなかった(同じ分野で充分な経験を積んだ人なら別だろうけど)ので、あきらめずに思考を蓄積するのは重要なのである。いきなり最初から正解を思いつくというのはとても難しいし、失敗からちゃんと知見を得て次に生かすのも難しいが、突破できた場合の喜びは大きい。

 さて次はこいつのObjective-Cを作らねば...

2009.11.02

Hearts of Iron Ⅲ

 最近は仕事はそんなに忙しくないので、次の大きな開発をするときのために感覚を磨くべくゲームをやる時間も増えてきました。
 なのでその活動のことも取り上げてみます。

 最初はHearts of Iron Ⅲ.前作HOI2はたいへんな傑作で、第二次世界大戦近辺の歴史・軍事が好きな人ならかならず楽しめる内容だし、僕の評価では一人で遊ぶゲームとしてはこれまでに遊んだ全ゲームの中で最も面白いものである。その続編ということで大きく期待してて、英語版を予約してずっと待っていたわけなのだが...

 いくらなんでもこれはひどかった。
 そもそもの動作が重いというのはあるが、それ以前にすぐ補給線が伸びきるとか同盟国同士が勝手に戦争をはじめるとか、どうにもこうにもバグだらけでゲームになっていない。詳しくは2chのスレ等にあるけど、発売後にいくつかパッチが出たものの大して状況は変わらず、却って悪化した機能もあるほどだ。

 これだけだと単なるクソゲーで捨ててしまうところだが、それでも見捨てないファンが多くいるのはやはりこのゲームが持つビジョンというか、製作サイドが何をしたかったのかが伝わるからなのだ。僕もさすがにこのバージョンでまじめに遊ぶ気にはならないものの、何にチャレンジしたかったかはよく伝わるので全く腹は立たない。
 もちろんそれは、MODでいろいろな改造ができることや、過去の実績から言って継続的にバージョンアップをしてくれる期待があるからではあるけれども。

 この辺は映画やWebサービスでも同じで、多少不格好なところがあっても、作り手の「魂」が感じられるかどうかで客の付き方が決定的に変わってくるものだ。特に玄人の客ほどそういう傾向はあるだろう。格好を整えるのももちろん大事(特に素人の客には)ではあるが、魂を伝えるのをさぼってしまっては結局すべてを失うような気がする。何作もつづいているゲームや、最近のMS-Officeなんかがそうだけど、よくまとまってはいるがこれといった特徴のないものをエンドユーザに見せてしまうと、次に何を強化すればよいのかわからなくなる、というのはよくあることだ。

 しかしやはりこれで驚いたのは、ここまでゲームとしてひどい出来でありながらそれなりに(僕を含めて)固定ファンを繋ぎとめていることだ。失望はしているのだけど、見放してはいない。
 もうここまでくれば全部をオープンソースにしてもやっていけそうな勢いではあるが、それは期待しすぎかなあ。

« 2009年10月 | トップページ | 2009年12月 »