Home

@masuidrive blog

電子書籍はユーザに新しい価値を提供しない

Photo by svenwerk

 メディアを見ていると、iPadを「電子書籍端末」として、取り上げられていることが多い様に感じますが、ほんとにユーザは電子書籍を読むんでしょうか?

 もちろん、iPadの使い道として電子書籍ビューアもありますが、Appleもあまり重要視していないようで、Jobsのプレゼンの「iPadの使い方」の中でも一番最後でした。@naofumi

 すでに出版業界は壊滅的と言われ、1世帯あたり月の雑誌購入額が376円、書籍を入れても月1000円程度、すでにKindleやiPadなど、5万近いを買って書籍を読むユーザは居ないことを示唆しています。

Continue reading

iPadの新規性はタブレットサイズのユーザインタフェース

Photo by -: pranav :-

 iPadが発表され、いろいろなメディアやブログで紹介されています。
ハードウエア的には目立ったところがないため、多くの人に取ってあまり目新しさがなく、残念に思った人も多かったように感じます。

 私がiPadに期待するところは、タブレット型デバイス向けの、新しいユーザインタフェースです。
 うちには、富士通製のWindowsXPのピュアタブレット(キーボードが無くペンだけで操作するタイプ)があります。
ちょっと重いのですが概ね便利で、布団や居間でネットをするときに使っています。

 しかし、普通のWindowsアプリケーションは、マウスでの操作を前提にしているので、余り使いやすくありません。
普通は、Firefoxを起動しっぱなしにしているのですが、いくつかアドオンを入れて、さらに自作のアドオンも使っています。

 iPhoneが成功した一つの要因に、OSXのユーザインタフェースを引き継がずに、小さいタッチパネルディスプレイ用にユーザインタフェースを設計したことがあると思います。
入力方法も画面サイズも違うデバイスですから、PC用とは異なったユーザインタフェースが必要になります。

Continue reading

CSSを拡張するプリプロセッサを考える

Photo by Aaron Landry

 CSSで、式とかマクロが使えたらなーと思うことがよくあるので、この際だからプリプロセッサを作ろうと思っています。

 文法としては、CSSの構造を大きく変えないで行きます。あくまでプリプロセッサ的な役割で。Sassの様に構文を変えてしまうと、デザイナーの人が取っつき難くなりそうで。

 今のところ、考えている文法の例を下に置きました。誰でも考えそうな所で、includeによる読み込み、ネストをサポート、式と制御構造のサポートを行います。

 このプリプロセッサはサーバサイドで動的に生成するのではなく、一度静的にCSSに変換して使うことを考えています。その為、User agentなど外部からの変数はサポートしません。

 使い方としては、コマンドラインツールによる変換と、Javascriptによる動的な読み込みをサポートする予定です。
開発中は、HTML内に<script src=”ecss_loader.js?test.ecss”></script>と書くことで、サーバに何も導入することなく、動的に拡張されたCSSを読み込むことが出来るようにします。

 文法や機能のアイディア、同じようなプロダクトを知っている!と言う方がいましたら、ぜひコメントお願いします。

Continue reading

Geohashのアルゴリズム

Photo by Ludovico Cera

 前回、最後にGeohashのエンコード・デコード方法を解説、とか書いたのですが、私が書く前にyuroyoroさんがブログで解説していました。しっかり解説されているので、ぜひ、そちらをご覧ください。

 Geohashのミソは、座標を2進数にして、それを交互に並べる所にあります。そしてそれをBASE32でエンコードすることで、座標を文字列にして表現しています。
 BASE32は、5ビットで1文字なので、Geohashの長さが奇数の場合は、経度の方がビットが短くなります。 (例: 5文字の場合 全25ビット 緯度が13ビット、経度が12ビット)
 そのため、グリッドの大きさが、Geohashが奇数の場合は縦長、偶数の場合は横長になります。

Continue reading

緯度経度を文字列で表すGeoHash

 なんか世間的に位置情報アプリが流行ってるらしいし、Google App Engine(GAE)も楽しそう。どうせだから、GAEでなんか位置情報アプリでも作ってみよう!と思ってTwitterに書き込んだところ、Geohashという、位置情報のプロトコル?を教えてもらいました。

 これは、その名の通り、位置情報をハッシュで表す規格なのですが、いろいろおもしろい特徴があり、調べているうちに楽しくなってきたので、勢い余ってPure Rubyのライブラリまで書いちゃいました。

 そのあと、結局ライブラリを作ったところで満足して、アプリは何も作らなかったので、せめてGeohashの解説でも書いておこうと思います。

Continue reading

NoSQL – SQLはもう古い?

Photo by shindotv

 ここ最近、海外のブログで「NoSQL」という単語をちょこちょこと見るようになりました。

 これは新しいデータベースのムーブメントで、「SQL=リレーショナル」ではないデータベースの事を指しています。

 NoSQL DBサーバの有名な物は、Facebookがリリースした「Cassandra」、Erlangで書かれた「CouchDB」、日本からは、mixiがリリースしている「TokyoTyrant」があります。
 またGoogle App Engineでは、DataStoreというBigTableベースのNoSQLサービスが提供されています。

 ある程度ユーザを集めたコンシューマ向けサービスは、大抵の場合パフォーマンスとの戦いとなります。

 技術誌の中でも「スケールアウト技法」的な記事を目にすることが増えてきたことからも、多くのサイト運営者が、パフォーマンスの問題を抱えていることがわかります。

 多くの場合、問題になるのは、データベースのパフォーマンスです。

Continue reading

AmazonがMySQL 5.1をサービス化 – Amazon RDS


 AmazonがAmazon RDSという、MySQL専用のインスタンスをサービス始めました。

 これは、MySQL 5.1がセットアップしてあるインスタンスで、Small(1CPU, 1.7 GBメモリ)〜Quadruple Extra Large(26CPU, 68 GBメモリ)までスペックが提供されています、Smallは$0.11/時 ($81/月)か。Largeだと$0.44時で$327/月なので、通常のEC2よりはちょっと高めの様です。
 EC2と違うのは、ネットワーク代は別でDBへ外部からアクセスした場合には、1GB辺り、Inは$0.10、Outは$0.10〜$0.17掛かります。

 これ以外に、1GB辺り$0.1のストレージ代と、100万IOアクセス辺り$0.1の代がかかります。この辺はEBSと同じみたいですね。

Continue reading

いまさらディープリンク問題?

  • 2009-10-19 (Mon)
  • life

 レシピ横断検索サイト recipe growlerの管理者宛に、“個別ページにリンク禁止”の為、リンクを削除して欲しい旨のメールが届いたらしいです。
 この手の話はひさびさに聞きました。

 さらに、各レシピのページに「簡単リンク 外部のブログにこのレシピのリンクを貼れます」って書いてあるのに。
簡単リンク 外部のブログにこのレシピのリンクを貼れます

 「トップページ以外にリンクしては行けない」という話は、「ディープリンク問題」としてかなり昔から議論され、もうとっくに「他人にディープリンク禁止は強制できない」ということで決着しているものだと思っていました。

 どうしてもディープリンクを禁止したい場合は、サイト側で技術的に対策が可能です。
 ニュースサイトのITmediaでは、画像への外部からのリンクを禁止し、実際に外部からリンクを行っても画像が見れないように対策されています。また検索エンジンにリンクされたくない場合は、robots.txtと言う方法で簡単に行えます。

 本意はディープリンク禁止ではないかもしれませんが、ネット系ベンチャーとして、いまさらディープリンク禁止を掲げるのは、恥ずかしくないのかなぁ。

[追記]
 リンクに関するページが更新された模様。素早い対応、すばらしい!

 でも「クックパッドにリンクしていること自体をサイト運営や
営業の手段としないでください。」ってどういう意味だろう?
これだと、「美味しいレシピを見つけましたブログ」の様な形態のサイトを作る事は、NGって事かな?
クックパッドにリンクしている言うことを目立つところに書かなきゃOK?

DataMapper 0.10.1をmerbで使う為のパッチ

先日、DataMapper 0.10.1がリリースされました。
DataMapperを使う上で致命的だった、count問題も直っているようです。

しかし、そのままだとmerb 1.0.12ではエラーが出て動きません。
そのときは、下記のコードを適当な所で実行してください。

class Merb::Orms::DataMapper::Associations < Merb::BootLoader
   def self.run
     DataMapper::Model.descendants.each do |model|
       include DataMapper::Resource
       touch_child_keys(model)
     end
   end

   def self.touch_child_keys(model)
     model.relationships.each_value { |relationship| relationship.child_key }
   end
end

引用元

OSXのApacheにmod_reproxyをインストールする

OSXのApacheにKazuho@Cybozu Labsさんのmod_reproxyをインストールする方法。

sudo apxs -i -a -c -Wc,-Wall -Wc,-g -Wc,-O2 -Wc,"-arch x86_64 -arch i386 -arch ppc" -Wl,"-arch x86_64 -arch i386 -arch ppc"  -lcurl  mod_reproxy.c
sudo echo "Reproxy On" > /etc/apache2/other/reproxy.conf
sudo /usr/sbin/apachectl restart

いつか作らないとなーと、ずっと思っていたので、非常にうれしい!

Home

Search
Feeds
Meta

Return to page top