Archive for 6月 2011
アイデアに投票するサイト – Idea Funnel

「飲み会の席などでサービスやアプリのアイデアを出したけど何も作らなかった」なんて経験ありませんか?そんな報われないアイデアが陽の目を浴びる場所を作った人たちがいます。Idea Funnelという使ってみたいアイデアや投資したいアイデアがあれば投票するというサイトが話題になっていました。ここに読者が投稿したアイデアが掲載されるのかはわかりませんが、デザインがポップな感じで印象に残ります。クリック数もそれなりに伸びているようなので今後の展開があるのかないのか。さて。
ORMがアンチパターンである11の理由

サンフランシスコのプログラマLaurie Voss氏が書いた見逃せない記事が賑わっています。近年のフレームワークやライブラリの定番中の定番ORマッパーが既にアンチパターンなのではというのが彼の主張です。この記事を書くきっかけになったのはこのツイートだそうです。
ORM が危険なアンチパターンだっていうのはどれだけ言っても言い過ぎることはない
このツイートに対して各方面(ActiveRecord, Doctrine, Hibernate)から多くの(激しい)返信が寄せられて書かれたのが問題のエントリです。まずはアンチパターンとは何かの定義として下記の2つを挙げています。
- 当初は有益だが、長期的にみると良い結果以上の悪い結果を招く。
- 確証があり繰り返されている別の解決方法がある。
当初は良さそうに見えたORMがいざ使ってみると問題が明らかになり、しかもその時には切り替えるわけにもいかなくなるというのが彼の主張です。彼による皮肉がたっぷりの論説の最後に付いていたまとめリストは下記のとおり。
- ORMはSQLベースのモデルよりも最初のうちはシンプルで理解しやすく、手早く書く事ができる。
- 効率はどんなプロジェクトでも最初の頃は十分。
- 不幸にもそれらのアドバンテージはプロジェクトが大きく複雑になると消失し、抽象化は破綻し、開発者はSQLを使わなければならなくなる。
- ORMの抽象化はほぼ100%のプロジェクトで破綻する。
- オブジェクトはリレーショナルなクエリの結果を表現するのには不適切。
- 不適切にクエリをオブジェクトにマッピングすることによって、ORMを廃止しない限り簡単には修正できない非効率性がアプリケーションのあちこちにばらまかれる
- リレーションを保存する代わりにORMを全てに適用する場合、設計をよく考える必要がある。
- データが元々オブジェクトならば、NoSQLにオブジェクトを記録する方がリレーショナルデータベースよりも早い。
- データが元々リレーショナルならリレーショナルデータベースに対するオーバーヘッドになるだけ。
- リレーショナルなクエリはモデルレイヤーに隠蔽する。ただしAPIの設計は汎用化の誘惑に打ち勝ってアプリケーションに必要なデータを返すようにする。
- オブジェクト指向設計はリレーショナルなデータを効率的に表現できない。これはORMが解決できないオブジェクト指向デザインの根本的な制限だ。
ORMを使った事がある人にとっては心当たりがありまくりな主張ではないでしょうか。意外と長文なんですが原文を読んでもらう方がORMが良さそうにみえて問題が起こり、そしてその解決方法などのより正確な主張がわかります。また元の記事には現時点で47のコメントが付いており盛り上がっています。
さて、みなさんはORMを次のプロジェクトでも使いますか?
via:http://seldo.com/weblog/2011/06/15/orm_is_an_antipattern
関連:
データベースの間違った使い方10項目 « A-Listers
いきあたりばったりのアーキテクチャと教訓 - Publickey
シアトルの15歳の少年が自分のスタートアップを売却

シアトルに住む高校生の少年が自身の企業をActivePerlなどで知られるActiveStateに売却したそうです。話題になっているのはDaniil Kulchenkoさんで彼が起業したのはPerlのPaaSサービスであるPhenonaです。なお買収額は未公表のようです。彼はパートタイムでActiveStateに加わる予定らしく今後要注目のハッカーかもしれませんね。先日のDuoStackの買収もありましたがPaaSに関しては提供できるスタックの種類を揃えるべく早くも統廃合が始まっていますね。
これからPaaSを使うかどうかを考えている我々はどれだけこの少年に遅れをとっているのでしょうか・・・
via:http://www.geekwire.com/2011/seattle-area-15yearold-sells-startup-company-activestate
美しすぎるギークと行くEverNoteのオフィス

全世界160万人のベロニカファンのみなさん、こんばんは。今回も恒例の「BestJobEver」からの動画を紹介します。今回美しすぎるギーク、ベロニカが訪れたのは定番モバイルアプリの1つであるEverNoteのオフィスです。おそらくEverNoteを知らないという方は殆どいないと思いますが、その開発の現場というのはあまり話題になっていない所だと思います。

スタッフが増えているという事で広々としたオフィスはパステルカラーで開放的な感じ。映像でもスタッフ同士がオープンにコミュニケーションを取っている様子が伺えます。あと「おーいお茶」らしきペットボトルが散見されるのはたぶん社内の自動販売機か無料冷蔵庫に入っているんじゃないかなと。

Andrew Sinkovさんは会社やEverNoteの概要、自分自身が料理のレシピ収集にEverNoteを活用しているという事例を話してくれます。(その他のスタッフのツイッターアカウントなどの一覧がこのページにありました)

また技術的にはEverNoteは各OSやスマートフォン、開発者向けAPIなど非常に多くのプラットフォーム、言語で開発をしており開発者にとってさまざまな経験が積める職場である事が強調されていました。また逆にいうとクラウド型のプラットフォームのサービスを展開するにはかなりの開発リソースが必要になるんですね。

クラウド型のサービスとクライアントアプリを組み合わせるというスタイルは最近基本の1つになってきたと思いますが、EverNoteの雰囲気やその開発体制などから学べる事が色々ありそうな気がします。公式のブログなどもありますので追ってみるといいかもしれません。ベロニカの様子やオフィスの様子など、動画の方もご覧になってみてください。
via:http://www.youtube.com/watch?v=iA6EBXtDk5c
Debianのアクティブな開発者率国別ランキング

人気のLinuxディストリビューションの1つ、Debianのアクティブな開発者の割合(総数ではない)を国別にランキングした統計が話題になっていました。日本ではCentOSのリリース延期が話題になる事が多いですがDebianの状況はどうなっているんでしょうか。

詳細はリンク先を見て頂くとして、ざっと見てみます。1位フィンランド、2位スイス、3位マルティニーク、4位ノルウェー、5位ニュージーランド。これらの国々のDebianの開発者は活発、つまり熱い!ということですね。なお日本は33人がアクティブで29位でした。アメリカは162人がアクティブで25位。各国のアクティブな開発者の総合計は896人とのこと。
他のディストリビューションの状況も見てみない事にはなんとも言えませんが、Debianについて何かを迷っている方には判断材料のひとつになるのではないでしょうか。
via:http://www.perrier.eu.org/weblog/2011/06/12#devel-countries-201106-3
iPhoneで多用されている暗証番号

個人情報がたっぷり詰まったiPhoneにはパスコードをかけていると思いますが、4桁の数字ということでバリエーションが気になります。20万件の調査結果から調べた良く使われているパスコードは下記のとおり。

連番や連続した数字、西暦、アルファベット打ちでのLOVEなどがよく使われているようですね。特にトップの「1234』については全体の15パーセントを占めるということで大変な割合です。
また各桁に使われる数字の頻度を示したヒートマップも掲載されていました。

1桁目に占める1が突出しているのは、「1234」と西暦の影響ですかね。以上を念頭に置いておくと安全な暗証番号を考えるヒントになりそうです。
via:http://amitay.us/blog/files/most_common_iphone_passcodes.php
スタートアップをグーグルメソッドで始めてはならない
スタートアップのビジネスモデルについて「グーグルメソッドで考えるのはやめよう」と呼びかける記事がスタートアップ向けブログメディア The Startup Foundryに掲載されていました。グーグルメソッドとはつまり、「今はまだ利益があがっていないけど、ユーザーが10万人に達しさえすれば広告で採算がとれるようになるはずだ!」という考え方。
Googleのビジネスモデルについては既にご存知の方も多いと思いますが、同ブログによれば、
- Googleは実質的には、マーケットに入り込むために検索を利用している広告の会社である
- 無料のサービスで注目を集め、実際の製品である広告をより効果的なものにしている
といった点で、Googleは多くのスタートアップとは異なるゲームをプレイしている、としています。
一方で、スタートアップ(特に自己資金によるブートストラップ・スタートアップ)は生き延びるためにキャッシュを必要としており、主力製品を無料で配りその分を規模で補うようなやり方はとても危険なので、盲目的にグーグルメソッドをなぞってはならない、と。
では、スタートアップはどうすればいいのか?という話なのですが、同ブログでは自社のサービスに「初日から課金する大胆さ」を持つように勧めています。このアプローチは一部のアントレプレナーたちからは敬遠されているようですが、
- 自分のスタートアップが現実の価値を提供できると信じているのならば、ユーザーにお金を払ってもらおう
- 無料で提供するという考えに怖気付いてはならない
だそうです。
Googleのモデルもスタートアップのモデルも理屈としては理解している人が多いと思いますが、いざ自分のサービスをローンチさせるという段階になってみると、なかなか冷静に判断できなくなるものなのでしょうか…。
via: It sucks to build a startup with the “Google Method” | The Startup Foundry
全世界のWEBサーバーの数は3億4千万(2011年6月調べ)

古参の統計サイト、netcraftが発表したWEBサーバーに関する統計が話題になっていました。ウェブの利用拡大に伴いサーバーの数もやはり順調に増加しているようです。またサーバーに締めるApacheの割合も引き続き増加中のようです。また軽量サーバーのnginxがいつの間にか4番手にまでなっているのも注目するポイントでしょうか。

個人的にはなにかのスライドに使うかもしれない図表としてキープしておきたい感じです。
via:http://news.netcraft.com/archives/2011/06/07/june-2011-web-server-survey.html
githubの404ページがかわいい

見ての通りですがgithubの404ページがいつの間にかかわいいです。しかもこの画像はマウスの動きに反応して奥行きを表現するようになっています。この表現は最近できたAboutページなどでも使われているので最近試しているんでしょうね。
なお元ネタはスターウォーズエピソード4の「These are not the droids you’re looking for….」という台詞ですね。
初めて見た時は驚いて何を探していたかを忘れちゃいますね。
先週のA-Listersまとめ #6

Photo by Ryan Orr
月曜恒例 A-Listers のまとめ。先週公開された11本の記事から人気のあったものを紹介していきます。
iCloudがMSのAzureとAmazon S3を使っているらしい
ツイートによってかなり拡散したこの記事(元記事よりも多くのツイートが!)。先週WWDCで発表されたiCloudがAzureとS3を使っているらしいよ、という短いものでしたがAppleへの注目を反映してか非常にたくさんのアクセスがありました。
原文からさらに補足すると、「すべて外部CDNに頼っているわけではなさそうだし、自前のものが準備できるまでの措置かもしれない」とのことでした。
アメリカのプログラマの給料はどれくらい?
その次に反応をたくさん頂いた記事はこちら。アメリカのプログラマのお給料の現実をリアルに知りたいという方も少なくなかったようです。ツイートでは、「有名企業でも意外に高くないね」というコメントがちらほら。
しかし「アメリカのプログラマーの給料はどう感じる?」というアンケートに対しては7割以上の方が「やはり日本よりも高い」と回答。意外に高くはないけど、全体で平均すると5万ドルから10万ドルというのはやはり日本標準より高めのようです。
あなたのソフトウェアプロジェクトが破滅する10のサイン
こちらの記事は、「あるある」「納得」という再確認の意味でよく読まれた模様。海外の記事とはいえ2007年から言われている破滅サインが今日になっても相変わらず反響を呼ぶというのは、普遍的なポイントがまとまっているとも言えますが、「これやっちゃだめ」という認識がまだまだ浸透しきっていないということでもあるのかなと思います。
その他の反応
先々週に公開された「Bitcoinに乗り遅れそうな人向けわかりやすい説明」が先週になってアクセスを集めていました。セキュリティホール memoさんから取り上げていただいた影響のようです。

