2014年4月28日月曜日

cakephpとruby on railsの比較

最近、僕がウェブ関連で使うメインの言語がRubyからPHPにかわりました。
理由は、Ruby(ruby on rails)で作ったものは、手離れ(つまり、自分が作ったもののメンテナンスや運用を自分でやらないこと)が難しいことが多いからです。

どうしても、運用の細かなノウハウみたいなものが必要になることが多いruby on railsに比べて、とりあえず、パッケージからApacheをインストールしたらデフォルトで使えたり、ほとんどのレンタルサーバーで普通にサポートしてくれていたり、というPHPは、自分が将来も運用に関わりたいというわけでないプロジェクトには便利です。

フレームワークは、これまでRails使ってたんですが、今は、フレームワークも使ってません。

でも、なんかフレームワーク使ったら便利かもな、と思って、最近、CakePHP勉強しようと思い立ちました。

で、なんとなくCakePHPって、Railsに似た、PHP版のRailsみたいなもんだと思っていたんですが、ずいぶんちがうんですね。

以下は、Railsに頭が慣れた僕が、現在、CakePHPにびっくりしているところです。

1,controllerでGETメソッドとPOSTメソッドで分岐したりすることがある。
Rails的には、普通は、URLやリクエストのメソッドから、controllerのメソッドにマップするのは、routingの仕事です。controllerは、modelを操作して、viewを表示するだけです。ところが、CakePHPでは、controllerのメソッドの中に、HTTPメソッドごとに分岐するようなコードを書いてあるサンプルが時々あるようです。routingでメソッドごとに分岐させることができるのかできないのかは、まだ調べていません。もし、routingでメソッドごとに分岐することができるのにそうしないんだとしたら、CakePHPの仕様というよりも、PHPの人のコーディングの習慣ってことになるんでしょうね。routingみたいなことまでcontrollerに書いちゃうと、少々fatなcontrollerになっちゃいませんかね。

2,modelは、オブジェクトじゃなくて、配列である。
いや、モデルオブジェクトってのはあるんですが、とにかく、配列で返ってくるってのがびっくりしました。

3,URLがRESTじゃない。
これも、どっちかというと習慣ですね。railsの世界では、URLは、RESTfulにするのが普通なんですけれど、こっちでは、あんまりそういうところにこだわらないコードが多いみたい。

これなら、あんまり複雑なことしないなら、別にフレームワーク使わなくても、プレーンなPHPで書けばいいじゃんって気がします。

私は石屋ではない(Scanaduについての雑感)

タイトルは、初代スタートレック(TOS)その場で
エンタープライズ号の船医、ドクターマッコイの有名なセリフです(あまりに有名なので、スタートレックシリーズに登場する医者は、ほとんど全員、類似のフレーズを口にします。オリジナルに対するパロディーですね)。
スタートレックシリーズに出てくる医者は、だいたい、そこそこ器用でいろんなことができるキャラクターおのて
め、しばしば、仲間から奇妙な雑用を押し付けられるのです。そして、シリーズを通して、奇妙な雑用を押し付けられるたびに、彼らは「私は医者だ、○○ではない。(I'm a doctor, not a XXX.)」と叫ぶのです。


さて、ずいぶん前の記事ですが、こういうのみつけました。

Scanaduという会社の製品ですね。
昨年6月のgismodoの記事を見ると、今年3月発売予定だったようですが、ページを見る限り、まだ発売していないようです。

この会社のイメージ動画みたいなのがYoutubeにありますね。

これを見ると、いろんな生体情報を取り込んだり、写真をとったりして、それを元に簡単な診断を下したり、どのようにすればいいのかアドバイスしてくれたりするようです。

この会社は、要するに、スタートレックシリーズに出てくる医療用トリコーダーみたいなイメージの製品を作りたいようです。

トリコーダーというのは、スタートレックシリーズに出てくる、宇宙艦隊の官給品のポータブル万能科学探知機のようなもので、科学調査用と医療用があります。初代シリーズでは、科学調査用のほうはミスタースポックが、医療用はドクターマッコイが使っていました。後者には、自動診断機能のようなものがついていて、プローブを患者に当てれば、その健康状態や、考えられる病気などを表示してくれ、食べ物などに当てれば、その毒性や、含まれる栄養、細菌などを表示してくれます。

昔、スタートレックを見て、あのトリコーダーがあれば、勉強しなくても医者ができるのになぁ、と思っていたことを覚えています。

さて、技術的には、このビデオでやっていることのほとんどはそれほど難しくありません。一般消費者に売るレベルではともかく、研究室レベルであれば、たくさんの先行事例があります。

以下、少し気になった点をふたつ。

1,スマートフォンの写真による発疹の診断。
ビデオの中に、ユーザーがスマートフォンのようなものでとった写真をScanaduで読み込むと、その写真から、Scanaduが発疹の種類や原因、対応を診断するシーンがありました。それを見て、これは本当に可能なのかな、と思いました。
典型的な発疹であれば、写真から、ソフトウェアのパターン認識で自動的に診断することは、現在でも十分に可能です。問題は、素人であるユーザーが写真に納める部分が、必ずしも、その発疹の典型的な部分ではない、ということではないかと思います。
僕は、子供の発疹については、できるだけ、その場で携帯電話で写真をとっておいて、受診時に見せてくれるように親に指導しています。
子供の皮膚の症状について心配する親は多いです。それに、子供に多い感染症では、皮膚の症状は、病気の診断の重要な手がかりになることも多いのです。しかし、しばしば、その種の発疹は短時間で消えてしまいます、そうなると、医師は診察時にそれを見ることができません。そんなとき、親に、発疹の形や色などについて思い出しながら口頭で説明してもらうよりは、写真でもとっておいてもらったほうが、どのような発疹があったのかについて、ずっと正確に理解することができます。
でも、僕の経験からすると、写真をとってもらっても、しばしば、医学の素人である親が心配して写真にとってくれるものと、医学的に重要なものは一致しないのですね。Scanaduにみせるための適切な写真を自分でとれる患者は、案外少ないのではないかと思います。

2,消費者は「機械の間違い」を許容できるか。
あたりまえのことですが、他の多くの分野での難しい意思決定と同様、診断など医療の意思決定でも、一定の確率で間違いが発生します。つまり「誤診」です。
機械の自動診断も間違えることがあります。
もちろん、人間の医師だってしょっちゅう間違えますし、ソフトウェアによる自動診断は、分野によっては相当に進んでいて、今では人間の医師よりも正確な診断をできることもあります。つまり、機械による自動診断は、正確さにおいて、それほど人間の医者に劣っているわけではありません。
しかし、それでも、一定の確率で、間違えるのです。
僕は、現在の一般消費者は、あまり「家電製品」がしょっちゅう間違える、ということに慣れていないのではないかと思います。
「家電製品に搭載されたソフトウェアだって人間と同様、一定の確率で間違えるかもしれない。でも、それでもこの製品は、健康のためにアドバイスしてくれる便利なシロモノなんだ。」と一般ユーザーが自動診断機を受けいれてくれる日は、きっと将来来ると思います。でも、その前には、いろんなハードルがある気がするのです。

さて、懸念材料をいくつか挙げましたが、それでも、僕は、スタートレックのトリコーダーのような機械が過程に普及しているような未来を信じています。
ドクターマッコイはドアストッパーでもエンジニアでも車掌でも石屋でもないぞ。

2014年4月14日月曜日

STAP細胞騒動と科学の時代の終わり

STAP細胞騒動は、様々な捏造が見つかった結果、結局、信じるに足る証拠が何一つ残っていないという状況になってしまいました。現時点での、この問題に関する僕の評価を書いておきます。

1,元の論文に書いてあった、STAP現象の証拠であった写真や実験結果はすべて捏造、もしくは信用できない記述であった。
2,無論、論文が信用できないことと、STAP現象それ自体が存在しないことは別であるが、現時点で、STAP現象は、元論文と同じ条件では再現に失敗している。また、その後公開された実験方法でも再現に失敗している。このため、現時点では、仮にSTAP現象があるとしても、少なくとも元論文に記載されたような現象ではないことははっきりしている。
3,その一方で、今回の件が完全に捏造と考えるのは難しい。仮に、STAP現象が完全にウソであれば、「STAP細胞」が胎盤へ分化したという現象とつじつまが合わないと思われる。したがって、論文中のSTAP現象の記載には相当の誤りがあったとしても、何か変な現象が見つかった可能性は高いと思われる。
4,ただ、その、今回の研究で見つかったかもしれない「変な現象」については、どうも、当初期待されたような、医学への広い応用ができそうなものではなさそうである。仮に、刺激によって細胞が多能性を持つ現象があるとしても、これほど再現に手間取っているところを見ると、簡単に再現できるものではないらしいからである。これでは、仮にSTAP現象が存在するとしても、すでに存在するiPS細胞などに比べて技術的に優位な点は殆ど無い。
5,仮にSTAP現象が存在したとしても、これの発見者として小保方氏の名前がクレジットされることはないであろう。彼女の報告した論文の記載には誤りが多く、実験記録も残っていないようであるため、彼女が実験したという証拠が何一つないからである。

結論から言いますと、何か不思議な現象が見つかったかもしれないが、それは、あまり役に立つようには思えず、また、「発見者」の発言もまるで信用できない状態です。オカルト雑誌の後ろの方に載っているような、読者投稿の「ツチノコ目撃談」みたいなものです。たとえツチノコが存在したとしても、ツチノコ目撃談の投稿者を科学的な発見者として扱うわけには行かないでしょう。

奇妙なことに、そういう状況にも関わらず、小保方氏は、会見後、一定の支持を集めているように見えます。

僕は、たぶん、「科学を信じる時代」が終わってしまったのではないかと思っています。

今回のことに限らず、原発にせよ、予防接種にせよ、がんもどきにせよ、多くの人は、すでに、「科学的に正しいこと」を信じません。

これまでだって、一部の理科系の教育を受けた人以外は、科学的に正しい推論の方法、科学的事実や実験の結果の正しい評価方法について知識を持っていたわけではありませんでした。ただ単に、なんとなく、科学的な「権威」や「教科書」を信じてきただけです。そして、いつのまにか、相当数の人が、権威や教科書よりも「自分の気持ち」を優先するようになりました。そして、「理研の調査」や「専門家」などの権威を信じる代わりに、自分が信じたいものを信じるようになったのでしょう。

多くの人が、権威よりも自分の気持ちを優先するようになってきている現在、人々が信じていることと科学的に正しいことの間に乖離が発生してきていることは、ある程度は仕方がないことなのかもしれません。

どうやってこの乖離を埋めていけばいいのか、現状を直視して考えていく必要があると思っています。

医学部卒のビジネスマンが増えたという話と就活生の格差の話。

昨夜、「医学部を卒業したのにウェブ制作会社で勤務しています」という記事をみて、ああ、こういうひと増えているよなぁ、と思いました。最近、医学部を出たけれど医者にならないという人の話を時々聞くようになったと思うのです。

昔から、医学部を出たけれど自分は医者に向かないと思う人で、大学の、医学や生物学の研究者になったり、厚労省の官僚(医系技官)になったり、そういうのは結構いました。でも、医学部の新卒で、それ以外の一般の企業に就職していく人はほとんどいませんでした。

医者というのは、かなり変わった仕事、というか、普通のサラリーマンとは異なる態度や考え方や行動を求められる仕事です。必然的に、医者に向いた性格、向かない性格というのは、かなりクリアにわかれます。医者に向いていて、すごく生き生きと仕事をしている医者も多いのですが、その一方で、頭は良くて、人当たりもいいのだけれど、どうしても医者向きでない人というのも、結構多いのです。

先に書いたように、昔から、そういう、医者に向かない医師免許保有者の受け皿になっていたのは、研究者や官僚でした。でも、研究者や官僚だって、実は、かなり向き不向きのある特殊な仕事です。
ですから、医者にも、大学教授にも、官僚にも向かないけれど、そこそこ頭は良くて、ビジネスマンとしてはそこそこ優秀そうな人、というのは、結構いるのです。そういう彼らが一般企業に就職しなかったのは、たんに、医学部出身者には、そういうレールがなかったからです。そういう人が大学や病院でイライラしながらくすぶっているのを見るたびに、僕は、残念な気持ちになっていました。


普通のビジネスマンになっていく医学部卒業生が前より増えてきたんだと僕が気がついたのは、ここ数年のことです。たぶん、実際にこの動きが始まったのは、もう少し前、ここ10年くらいのことだと思います。僕は、最近、大学医学部を卒業して、でも医者にはならなかった人たちを何人も知っています。そのほとんどは、なぜ自分が医者にならなかったか、うまく言語化できていないようです(上のリンク先の著者もうまく説明できていませんね)が、つまるところ、自分には、医療現場だけでは満たされない部分があるのだと言っているわけです。彼らは、医者にならなかった後は、ほとんどがそれなりの就職をして、医者以外の職場でイキイキと働けているようです。彼らの多くはリスクを取ることを恐れません。なぜなら、仮にリスクをとって失敗してクビになったって、最悪、医者に戻ればいいと思っているからです。こういう態度は、一般の医者の仕事をすこし過小評価しているように思えてムカつきますが、この点では、医学部出身の基礎医学研究者の多くも、同じようなものだとも思います。

医学部出身で、一般企業に就職したいという人のニーズは昔からありました。それなのに、ごく最近になって一般企業就職者が増えた背景には、僕は、ウェブでエントリーできる「就活サイト」の普及があると思っています。

ウェブが普及した現在の就職活動の現場では、人気企業はどれも異常な高倍率で、企業は、志望者全員を慎重にチェックするわけに行かなくなっています。自然、学歴や資格などで「足切り」することが多くなります。就活生の多くも、何度も落とされて疲労し、「誰も得をしない状況」などと言われているようです。

しかし、高倍率というのは、見方を変えますと、これまで、就活に参加していなかった就活生が競争に参加するようになってきたということでもあります。
少し前まで、医学部出身者が一般企業を受けるときの一番のハンディキャップは、周囲が、(あたりまえのことですが)医者志望の学生ばかりで、一般企業の就職活動をしている友人がほとんどいなかったということでした。いまでは、周囲にそういった友人が少なくても、相手企業についての情報は、すこし努力すればインターネットなどで得られるようになってきましたし、エントリーも簡単にできるようになりました。

批判の多い現在の就活ですが、一定以上の高学歴の人にとっては、人生の大きな方向転換が簡単にできるようになったというメリットがあるのだと思います。僕は、そういう方向転換をスムーズにこなして、別の分野のエリートになっていく医学生を見ていて、これは必ずしも悪いことではないな、と思っています。

少なくとも、この流れを逆転させることは難しいでしょう。元々満たされていなかったニーズが、ウェブによって幅広い選択肢が与えられた結果、満たされるようになった、ということなんでしょうから。それに、相当の知的能力を持ったエリートが、自分が不向きな分野でくすぶっているのは社会全体にとっても損失だとも思います。人生の方向や専門分野を18歳で完全に決めてしまうというのは、間違いが起こりやすい危ない方法です。


これまでよりも大量に就活にエントリーされることで、これまで見かけることがなかったような出身学部の就活生も出てきている。その一方で、選ぶ企業側は、全員を慎重にチェックするわけに行かなくなったから、学歴とかなんとかで「足切り」をしている。結果、多くの就活生が、エントリーシートも見てもらえなくなって、有利な学生とそうじゃない学生の格差が広がっている。

ここまで考えてきて、これは、何かに似ているな、と思いました。

少し前に、iOS用のアプリを作っている友人が言っていました。どんどんアプリの種類が増えて、ユニークな、これまでにないアプリが出てきている。アプリ市場全体の売上も伸びている。でも、一方で、ほとんどのアプリはユーザーの目に触れることがなくなって、ランキング上位のアプリ以外は売れなくなっていている。アプリ間の格差が広がっている。

少し前、ドワンゴが、就活に少しだけお金を取るという試みをやるというニュースが流れました。もし、あの試みが普及したら、確かに、エントリーする就活生は減るでしょうね。企業はじっくり時間をかけて就活生を選べるようになると思います。しかし、たぶん、この格差は戻らないのではないでしょうか?もし、アップルが、アプリ開発者から今より多額のマージンを取るようになっても、それだけで売れるアプリの種類が増えるとは思えませんから。

ひょっとしたら、このあたりは、カネを取るのではなくて、AppStoreや就活サイトのデザインを変えることでなんとかなるのかもしれません。

あんぱんまんラーメン

「あんぱんまんラーメン しょうゆ味」というのがあるみたいです。
アンパンなのかラーメンなのか、あんなのか醤油なのか、なんだか不条理な商品に感じます。
類似のコンセプトの商品に、
「あんぱんまん 鮭ふりかけ」というのもあるみたい。
こちらも、なんだか、不条理感炸裂。

やるんだったら、鮭ふりかけごはんマンとかラーメンマン(あ、これは、別のマンガにいたな)いうキャラクターを作ってくれればいいのにと思うのですが、この商品の主要な消費者は、あんぱんまんの絵だけに強く反応するからこうなっているのでしょうね。

今回は、こういう商品があることに僕が驚いたというだけの、短いエントリーです。