<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2836050582139613382</id><updated>2012-02-17T05:16:40.749+09:00</updated><title type='text'>ohnetaの、以上、よろしくお願いいたします。</title><subtitle type='html'>Regards or Sincerely ?</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>47</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-4992128993648152460</id><published>2011-08-22T17:05:00.002+09:00</published><updated>2011-08-22T18:37:32.607+09:00</updated><title type='text'>なんとまー、一年ぶり？</title><content type='html'>忘れた頃に更新されるブログ？&lt;br /&gt;&lt;br /&gt;えっと、（株）ケロン軍の運転資金稼ぎに某社で働いていましたが、7月末をもって契約が終了しました。&lt;br /&gt;また、今月からは開発の請負業務を再開です。&lt;br /&gt;&lt;br /&gt;で、この丸1年間の間にiPhone(iOS搭載機)アプリ開発のスキルもいろいろ上がりましたよ。&lt;br /&gt;External AccessoryやExternal Displayの経験もしましたので、iPhoneへの外部機器接続プログラミングもイケます！&lt;br /&gt;&lt;br /&gt;個人的にスマートフォンと外部機器の接続ってとても興味のある分野なので、この分野のお仕事なら、ばんばん受けたいとおもっています。&lt;br /&gt;&lt;br /&gt;OTOduino/SoftModemのような簡易接続からMFiばりばりのI/Fまでなんでもござれ！ｗ&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-4992128993648152460?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/4992128993648152460/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2011/08/blog-post.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/4992128993648152460'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/4992128993648152460'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2011/08/blog-post.html' title='なんとまー、一年ぶり？'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-9074764010140693912</id><published>2010-08-02T23:41:00.000+09:00</published><updated>2010-08-02T23:41:15.280+09:00</updated><title type='text'>で、リアルタイムキャプチャ</title><content type='html'>というわけで、リアルタイムでキャプチャして、そのキャプチャデータのbitmapへアクセスする方法を調べたさ。&lt;br /&gt;&lt;br /&gt;これ、&lt;a href="http://developer.apple.com/iphone/library/qa/qa2010/qa1702.html"&gt;Appleがサンプルを出している&lt;/a&gt;んだけど、うちの環境だとちゃんと動かない。&lt;br /&gt;なにがダメかってと、captureOutputメソッド(delegate)で取得したUIImageをそのdelegateの外(メインスレッド)から使おうとすると、データの中身がなくなっているのです。&lt;br /&gt;原因はよくわかんないんだけど、これはdelegateを呼び出すタイミングと外側から使おうとしてオブジェクトへアクセスするタイミングでうまく噛み合わなくてダメなんじゃないかと憶測。delegate内で処理を完結させればいいのかもしれない。&lt;br /&gt;&lt;br /&gt;AbrViewerで使うならdelegate内で処理を終わらせればいいんだけど、 別アプリで使おうとしているアイディアではキャプチャしたデータを外側で使いたいから、これじゃダメ。&lt;br /&gt;&amp;nbsp;なので、いろいろ試行錯誤で実験してみた。&lt;br /&gt;&lt;br /&gt;で、最終的にどうしたかというと、delegateの中で sampleBufferからCGBitmapContextCreateでbitmapを作って、そこから CGImageを作る。&lt;br /&gt;そこから定番のCGImageGetDataProvider/CGDataProviderCopyDataでCFDataRefを作って、そのコピーをメンバ変数に設定して全体で使えるようにしておく。&lt;br /&gt;&lt;br /&gt;使う側では、そのコピーからCGImageを作って、UIImageにしてやる。&lt;br /&gt;っと、ここまでやればキャプチャされたデータをメインスレッド側で好き勝手に使えるようになるみたいだ。&lt;br /&gt;&lt;br /&gt;結構、めんどくさいね。。。。(^^;&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-9074764010140693912?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/9074764010140693912/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/08/blog-post.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/9074764010140693912'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/9074764010140693912'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/08/blog-post.html' title='で、リアルタイムキャプチャ'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-745794377101867094</id><published>2010-07-30T23:02:00.001+09:00</published><updated>2010-08-02T23:57:21.022+09:00</updated><title type='text'>もう先週の話だが、、、</title><content type='html'>UIGetScreenImageがまたもや非公開API扱いになった。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;一応、iOS4からリアルタイムでカメラキャプチャデータを取得するAPIができたので、それを使ってくれとAppleからメールが来てた。いまいま公開されてるアプリを非公開にするわけではないらしい。&lt;br /&gt;んま、iOS4からしか対応できないから、しかたない。&lt;br /&gt;&lt;br /&gt;つかさー、こんなAPI、最初から用意しとけってーの！ &amp;gt; Apple&lt;br /&gt;&lt;br /&gt;で、どうするかだ、、、&lt;br /&gt;ま、そんなに難しくはないようなので組み込んでみることにしますよ。まったく、もうっ。&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-745794377101867094?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/745794377101867094/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/07/blog-post_30.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/745794377101867094'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/745794377101867094'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/07/blog-post_30.html' title='もう先週の話だが、、、'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-4001031039648889341</id><published>2010-07-17T01:06:00.000+09:00</published><updated>2010-07-17T01:06:28.969+09:00</updated><title type='text'>はてさて、</title><content type='html'>夏もだいぶ本格的になってきつつある梅雨の後半、猛ダッシュ。&lt;br /&gt;(株)けろんぐん　も東京に越してきてから早２ヶ月が過ぎました。&lt;br /&gt;&lt;br /&gt;その後、けろんぐんはなにをやっているかって？&lt;br /&gt;いや、はい、もちろんiPhoneアプリの開発はやってますよ、、、やってるはず、、、やってたっけな？、、あれれ？？？&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ahaha!&lt;br /&gt;&lt;br /&gt;ええっとですね、、、、資金不足です。運転資金ありません！！&lt;br /&gt;もともと貧乏会社なので運転資金なんてものはないのですが、さらに貧乏になりました。&lt;br /&gt;&lt;br /&gt;なので、けろんぐんの代表、わたくしことohnetaは働きにでています！ｗ&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;いやぁ、もちろん、この仕事もけろんぐんとして受注した仕事なので、立派にお仕事ではあるのですが、iPhoneアプリを作っているわけではないのです、、、&lt;br /&gt;まぁなんというか、、、SIerな感じの仕事をして、ちょっと食いつないでいます(^^;&lt;br /&gt;&lt;br /&gt;で、普通にお仕事なので、けっこうフルタイムで時間を拘束されるわけで、終業時にはけっこうクタクタ。iPhoneアプリを作るパワーが、もう、ほんの少ししか残っていません。&lt;br /&gt;&lt;br /&gt;そのほんの少しのパワーを寄せ集めて、バージョンアップやら新アプリやらを、ちまちまとやってますので、この年末年始でいっきにアプリを作ったようなスピードでは、いまはできてません。トホホ。&lt;br /&gt;&lt;br /&gt;&amp;nbsp;などと、いいわけを書いてみる昨今です。&lt;br /&gt;&lt;br /&gt;いくつかおもしろいアプリのアイディアはあるので、 やってみたいのだけどなー。&lt;br /&gt;だれかプログラムつくってくれる人おらんかな？けろんぐんで雇えるかな？という問題もあるのだが。。。ｗ&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-4001031039648889341?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/4001031039648889341/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/07/blog-post.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/4001031039648889341'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/4001031039648889341'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/07/blog-post.html' title='はてさて、'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-1431717856754725568</id><published>2010-05-10T00:38:00.000+09:00</published><updated>2010-05-10T00:38:53.171+09:00</updated><title type='text'>移転したよー！</title><content type='html'>まだインターネットへは仮アクセスしかできないのだけど、(株)けろんぐんは実質的に東京に引越しましたよー。&lt;br /&gt;いや、登記上はまだ本社は和歌山にあるのだけど、実際の会社機能は東京に移りました。&lt;br /&gt;今月末に登記上も東京にもってくるつもりです。&lt;br /&gt;&lt;br /&gt;いやぁ、ながかった。。。。&lt;br /&gt;けろんぐん設立前年に和歌山に移住して、勢いで会社をつくって、、、、ん、、実に丸３年間、縁もゆかりもないど田舎生活でした。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;で、これから、東京でなにしていけばいいですかねぇ、、、やっぱまだiPhoneアプリ開発なのかなー、、、、ちょいとばかし悩んでみます。&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-1431717856754725568?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/1431717856754725568/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/05/blog-post.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/1431717856754725568'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/1431717856754725568'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/05/blog-post.html' title='移転したよー！'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-8128090507794161090</id><published>2010-04-06T10:01:00.010+09:00</published><updated>2010-04-09T00:46:29.522+09:00</updated><title type='text'>iPhoneで任意のオンラインストレージを使ってファイルのやり取りをしたいのさ！</title><content type='html'>&lt;span style="font-size: small;"&gt;iPhoneでもiPadでもそうなんだけど、基本、MacなりPCを母艦としてiTunes経由でデータのやりとりがされているけど、それってカッタるくない？&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;世の中、クラウドだとか騒いでいるんだから、ファイルのたぐいはオンラインストレージでいいんでないの？と思うのだけど、Appleはそう考えていないようなのよねー。&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;いや、Appleが MobileMeでストレージスペースを提供しているのは知ってるけど、あれって有料だし。DropboxやSugerSyncなんかの無料なサービスがあるんだから、そっちを使いたいのが消費者の気持ちってもんだよね。べつにそんな貴重なデータを残しておきたい訳じゃない場合とかならなおさら。&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;つか、すでに使っているサービスがあるなら、そっちを使いたいじゃない？&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;ま、オンラインスストレージベンダーさんたちもiPhone用アプリを提供してたりするんだけど、あれも自分ち専用だったりするから、どうしたものかと。&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;いろんなアプリがデータのやり取りしたいしたがってるとおもうのよねー。私のAbrViewerだって履歴のエクスポートをファイルでやりたかったもの。もし、ファイルが取り込めるならウィッシュリストの取り込みとかやりたいもの。。。&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;そんなこんなで、アプリを提供する側からいえば、ユーザがどこのオンラインストレージを使ってもかまわないんだけど、いちいちそれらのサービスに対応したコードを用意するのは面倒なので、共通ライブラリがあれば便利じゃね？と思うわけですよ。&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;重要なのはアプリが出し入れするファイルであって、そのファイルを置いておくサービスなんかどこでもかまわないわけ。でも、広くサポートはしたい。てか、ストレージ業者じゃないんだからヘタに囲い込みたくないわけです。Evernoteじゃあるまいしｗ&lt;/span&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;ライブラリ１つで、ユーザがどこでも好きなサービスを使ってもらってかまわない。自由な選択にしたい。&lt;/span&gt; &lt;br /&gt;&lt;span style="font-size: small;"&gt;今でも、多くのオンラインストレージサービスってAPI持ってたりするから、それらアクセスするための共通I/Fをもったライブラリを&lt;/span&gt;&lt;span style="font-size: small;"&gt;iPhoneなり&lt;/span&gt;&lt;span style="font-size: small;"&gt;Android&lt;/span&gt;&lt;span style="font-size: small;"&gt;なりなんなりに提供できれば、デベロッパーもハッピー、ユーザもハッピー、ストレージベンダーもハッピー(かな？ｗ)になって、いいんじゃね？&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;と、思いついた、とある４月の午前中。&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;こういうアイディアに資金だしてくれるとこないかなぁー？　ひと月もあれば立派なもの作れる気がする。速攻作りたいよなー。&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;それに、ライブラリ販売すれば、それなりに売れるとおもうんだけどねぇ。 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt; &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-8128090507794161090?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/8128090507794161090/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/04/iphone.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/8128090507794161090'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/8128090507794161090'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/04/iphone.html' title='iPhoneで任意のオンラインストレージを使ってファイルのやり取りをしたいのさ！'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-6504468965903292191</id><published>2010-04-03T17:47:00.000+09:00</published><updated>2010-04-03T17:47:49.880+09:00</updated><title type='text'>AbrViewer 1.2.1 および AbrViewerLite が公開されました。</title><content type='html'>やっと、やっとのこと &lt;a href="http://itunes.apple.com/jp/app/abrviewer/id354868436?mt=8"&gt;AbrViewer1.2.1&lt;/a&gt;と&lt;a href="http://itunes.apple.com/jp/app/abrviewerlite/id364500139?mt=8"&gt;AbrViewerLite&lt;/a&gt;の申請が通りました。&lt;br /&gt;長かった、、、２回rejectを喰らって、途中でバグを発見してdevelopper rejectを３回、、計5回のバイナリ提出し直し。&lt;br /&gt;ふぅ。&lt;br /&gt;&lt;br /&gt;まぁ、これでとりあえず無料版(AbrViewerLite)も提供できたのでヨシとしましょう。&lt;br /&gt;いろいろ機能が増えてるので便利になっているはず。と思います。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;どうぞ、よろしくｗ&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-6504468965903292191?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/6504468965903292191/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/04/abrviewer-121-abrviewerlite.html#comment-form' title='2 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/6504468965903292191'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/6504468965903292191'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/04/abrviewer-121-abrviewerlite.html' title='AbrViewer 1.2.1 および AbrViewerLite が公開されました。'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-966677221581769209</id><published>2010-03-27T05:12:00.000+09:00</published><updated>2010-03-27T05:12:30.488+09:00</updated><title type='text'>あはは、Liteがrejectくらった！</title><content type='html'>なんか無料アプリのほうが審査がはやいのかな？早々、reviewステータスにかわって、早々連絡がきた。&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;rejectされた。。。。orz&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;いや、単にUIボタンの使い方が悪かっただけで、すぐに直せるとはおもうので、落ち込むほどでもないんだけど、、、やっぱ、rejectくらうとちょっとショックだな。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;てか、今回のバージョンを提出してから、さらに新しい機能を思いついたので、ついでだからそれも入れて、再提出しよう。。。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ふみぃ。。。。&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-966677221581769209?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/966677221581769209/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/03/litereject.html#comment-form' title='2 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/966677221581769209'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/966677221581769209'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/03/litereject.html' title='あはは、Liteがrejectくらった！'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-1752718973140769559</id><published>2010-03-26T14:12:00.001+09:00</published><updated>2010-04-07T12:51:46.302+09:00</updated><title type='text'>これで、次</title><content type='html'>これで、とりあえず次のやつのやりかけのを再開することができる。&lt;br /&gt;んま、申請通ったら通ったで、また、いろいろやること出てくるので、それはそれでまた時間がとられるのは目に見えているのだが、、、、ｗ&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-1752718973140769559?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/1752718973140769559/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/03/blog-post_26.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/1752718973140769559'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/1752718973140769559'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/03/blog-post_26.html' title='これで、次'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-5855280345422361038</id><published>2010-03-26T14:01:00.002+09:00</published><updated>2010-03-26T14:06:13.135+09:00</updated><title type='text'>AbrViewer 1.2.1申請だしましたん。今回からLiteもあるよ。</title><content type='html'>何日か前に書いたとおり、Appleの申請が通れば、AbrViewerがバージョンアップできる予定。&lt;br /&gt;バージョンアップ情報をブログに書いた後からも、某ユーザさんからいただいた要望などを取り入れて、若干のUI変更と機能追加をしましたよ。&lt;br /&gt;&lt;ol&gt;&lt;li&gt;ISBN入力画面の修正 &lt;br /&gt;ISBN入力フィールドのフォントを大きくした。&lt;br /&gt;入力された文字数をカウント表示をするようにした。&lt;br /&gt;&lt;/li&gt;&lt;li&gt;アプリ内ブラウザ画面からのISBNリンク&amp;nbsp; &lt;br /&gt;amazonサイトが表示されているとき、そのページでISBNが取得できたらそれをボタンにして表示。タップするとブックレビューを表示 &lt;br /&gt;&lt;/li&gt;&lt;li&gt;スクロールコントローラの追加&lt;br /&gt;それぞれのレビューの下位部分に画面を強制的にスクロールするボタン（コントローラ）を付けた。&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;1はバーコードスキャナが使えない環境での入力を補助しようとするものの一環。&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_k_iYu215kSk/S6w3--IXtEI/AAAAAAAAAoM/h8tvZ3vqHcg/s1600/3.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://1.bp.blogspot.com/_k_iYu215kSk/S6w3--IXtEI/AAAAAAAAAoM/h8tvZ3vqHcg/s200/3.jpg" width="138" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;文字が小さいとの意見をもらったのでテキストフィールドを横一杯まで広げた。&lt;br /&gt;電卓アプリくらいのUIがいい、と言われたのだけど、さすがにあれを作るのは面倒だったのでテキストフィールドで実現。&lt;br /&gt;&lt;br /&gt;文字数カウント表示は長いISBNの入力の目安になれば、、、という感じ。&lt;br /&gt;数字をハイフンで区切って！って要望もあったのだけど、ISBNのハイフン間の文字数ってISBN仕様上は不定なので、とりあえずなんか、、、とおもって作ってみた。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2はamazonをブラウズ表示して他の関連書籍に移ったとき、それもAbrViewerのレビューで表示してあげようという機能。自分で作っといてなんだけど、これは便利だ。&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_k_iYu215kSk/S6w5Qylk51I/AAAAAAAAAoU/5BRZmKkc2qo/s1600/IMG_0397.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://2.bp.blogspot.com/_k_iYu215kSk/S6w5Qylk51I/AAAAAAAAAoU/5BRZmKkc2qo/s200/IMG_0397.PNG" width="133" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;amazonの商品紹介ブラウズ中だと画面の下側にISBNボタンが表示されるので、これをタップすれば、その本のレビューが読める。 &lt;br /&gt;でなにが便利って、レビューが表示されれば履歴に入るようになっているので、これと履歴のエクスポートを併用することで、簡単なウィッシュリストを作ることができる。&lt;br /&gt;&amp;nbsp;もうちょっとiPhoneの画面が大きければ更に使いやすいんだろうけど、それは無い物ねだりだし。。。 &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3はレビューを読みながらフリックする面倒くささの低減をはかったもの。 だらだらとレビューをいくつも読んでいると、先頭に戻るためのフリックが結構面倒になる。ので、一気に先頭にもどったりするのに便利。&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_k_iYu215kSk/S6w6CqeyaCI/AAAAAAAAAoc/IaZRP4csqYs/s1600/IMG_0395.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://3.bp.blogspot.com/_k_iYu215kSk/S6w6CqeyaCI/AAAAAAAAAoc/IaZRP4csqYs/s200/IMG_0395.PNG" width="133" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;下ボタンで次のレビューまで強制スクロール&lt;br /&gt;上ボタンで現在のレビューの先頭まで強制スクロール&lt;br /&gt;二重上矢印でこの画面の先頭までスクロール&lt;br /&gt;このボタンは大きめなので邪魔だと思う場合は設定でON/OFFできるようになっている。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;などと、機能が結構追加されたのので、今回のリリースはバージョンも 1.2.1 にすることにした。&lt;br /&gt;最後の .1 はちと内部的な問題があったので付けました。あまり深い意味はない。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;それで、これと同時に若干の機能制限をつけた無料版 AbrViewLite　も申請。&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_k_iYu215kSk/S6w8LcQ0w9I/AAAAAAAAAok/g3eq_jH5UEA/s1600/IMG_0396.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_k_iYu215kSk/S6w8LcQ0w9I/AAAAAAAAAok/g3eq_jH5UEA/s320/IMG_0396.PNG" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;こちらの制限は、&lt;/div&gt;&lt;ul&gt;&lt;li&gt;履歴が５つまで&lt;/li&gt;&lt;li&gt;履歴のエクスポートができない。&lt;/li&gt;&lt;li&gt;全レビューの取得ができない。最大20まで。&lt;/li&gt;&lt;li&gt;レビュー表示で5回に１回くらい 「これはLite版なのでFull版買ってよ、おねがい♪」の旨のメッセージが強制表示される。&lt;/li&gt;&lt;/ul&gt;など。&lt;br /&gt;「買ってよ、おねがい♪」メッセージがうざいくらいで、本質的な制限ではないので、バーコード入力を試してみたい方はこちらでもいいかもね。。。。&lt;br /&gt;(本音ではFull版を買ってもらいたいのだけどw)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ということで、さっき申請したので、うまくいけば来週中には公開されるかも。あくまでもうまくいけば、、です。どこでrejectされるかわからんから、、、Appleの場合。汗&lt;br /&gt;&lt;br /&gt;うまくLite版が公開されたら、ちょっとキャンペーンやってみようかなと検討していますので、こうご期待！ ｗ&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-5855280345422361038?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/5855280345422361038/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/03/abrviewer-121lite.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/5855280345422361038'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/5855280345422361038'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/03/abrviewer-121lite.html' title='AbrViewer 1.2.1申請だしましたん。今回からLiteもあるよ。'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_k_iYu215kSk/S6w3--IXtEI/AAAAAAAAAoM/h8tvZ3vqHcg/s72-c/3.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-6233308373511046565</id><published>2010-03-23T23:28:00.000+09:00</published><updated>2010-03-23T23:28:50.850+09:00</updated><title type='text'>なにがどう、、、とはいえないんだけど、</title><content type='html'>昨晩から今朝にかけてネット上で起きた出来事により、流れが変わった気がする。&lt;br /&gt;これが、くすぶっていたものが流れ出て湧き溢れる潮流であってほしい。&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-6233308373511046565?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/6233308373511046565/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/03/blog-post_23.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/6233308373511046565'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/6233308373511046565'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/03/blog-post_23.html' title='なにがどう、、、とはいえないんだけど、'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-3457283490553343891</id><published>2010-03-19T13:24:00.001+09:00</published><updated>2010-03-19T15:50:05.480+09:00</updated><title type='text'>新アプリの前にAbrViewerバージョンアップと...</title><content type='html'>新アプリをリリースするまえに AbrViewerの拡販のために無料版をつくることにしました。&lt;br /&gt;とはいえ、今時、無料版といっても機能を削るわけにもいかないので、いま販売しているものと同じくらいの機能は備えるつもり。制限は履歴の数くらいかなぁー。&lt;br /&gt;&lt;br /&gt;そうなってくると、有料版の差別化をしていかないといけないので、有料版は同時にバージョンアップ。という話になってくるわけで、その内容です。&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;ISBN入力フィールドにクリアボタン&lt;br /&gt;入力のクリアに本体シャッフルかキーボードバックスペースしかなかったので、一気に全部消すボタンを新設。&lt;/li&gt;&lt;li&gt;[978]の短縮入力ボタン&lt;br /&gt;ISBN-13の場合、先頭の「978」は固定なのでそれを簡単に入力できるボタンの新設&lt;/li&gt;&lt;li&gt;ISBN-10の X に対応したキーボード&lt;br /&gt;実はISBN-10のチェックデジットが「X」という本があるがその入力方法がなかったのでキーボードをカスタマイズして「X」が入力可能なように機能追加。&lt;/li&gt;&lt;li&gt;ブックレビュー後にamazonサイトの切り替え&lt;br /&gt;ブックレビューを表示後、同じ本を別amazonで再表示できるよう機能追加&lt;/li&gt;&lt;li&gt;ISBN検索失敗後にISBNを保持したままamazonサイトの切り替え&lt;br /&gt;4と同様の機能なのだが、こちらはISBNが見つからなかった画面からのamazonサイト切り替え&lt;/li&gt;&lt;li&gt;履歴情報のメールによるエクスポート&lt;br /&gt;プレーンテキストとHTMLテキスト(amazonサイトへのリンク付き)が設定で選べるエクスポートメール。&lt;/li&gt;&lt;li&gt;amazonサイト表示のアプリ内webブラウズ&lt;br /&gt;いままでmobile safariで表示していたamazonサイトをアプリ内のwebブラウズ機能で実現&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;と、これくらい。&lt;br /&gt;&lt;br /&gt;4、5のISBN保持したままamazonサイトの切り替えってamazon.co.jpしか使っていない場合、あんまり恩恵がわからないとおもうのだけど、英語の本などの場合、扱っているamazonサイトが US、UK、CAと3カ国あったりするのでそれぞれでレビューの内容も違うからそれを読み比べることも出来るようになる、という英語圏の人向けの機能。日本ででも洋書のレビューを読みたいときには便利かもね。いちいち設定画面からamazonサイトを切り替えないでも済むし。&lt;br /&gt;&lt;br /&gt;6はせっかくの履歴情報をPCなりなんなりに取り込みたい、という人向け。将来の書籍管理機能のへの布石(えっ？)　www&lt;br /&gt;&lt;br /&gt;7は自分で使っていて不満だったwebブラウジングの内包。いったん別アプリを起動しちゃうと戻ってくるの面倒だったから。いや、ver.1.0でも付けたかったかったのだけど、手を抜いてました。すんません(汗&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;こんくらいしか機能的には変わってないので ver.1.1ってことにします。&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;えっ！？バーコードの認識率上げろって？&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;&lt;span class="Apple-style-span" style="color: red;"&gt;わーわーわーーーーぁ　&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: red;"&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;キコエナイ。&lt;/span&gt;キ、コ、エ、ナ、&lt;span class="Apple-style-span" style="font-size: small;"&gt;イ、ヨーォＯお&lt;/span&gt;&lt;/span&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="color: red;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;oヲ---&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;span class="Apple-style-span" style="color: red;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;。。。。。&lt;/span&gt;。&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;写真は開発中のものです。リリース時にはもちっと綺麗になります。なるで&lt;span class="Apple-style-span" style="font-size: small;"&gt;しょう。なると思います。なるのか？&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;なるのかなぁ？？？？&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ISBN入力フィールドにクリアボタンの新設&lt;br /&gt;[978]の短縮入力ボタンの新設&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_k_iYu215kSk/S6L5kRHspjI/AAAAAAAAAnU/4mUto47QP6A/s1600-h/IMG_0372.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://2.bp.blogspot.com/_k_iYu215kSk/S6L5kRHspjI/AAAAAAAAAnU/4mUto47QP6A/s200/IMG_0372.PNG" width="133" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;ISBN-10の X に対応したキーボード&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_k_iYu215kSk/S6L6c3M4XtI/AAAAAAAAAn0/3ZD08vA0mus/s1600-h/IMG_0375.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://4.bp.blogspot.com/_k_iYu215kSk/S6L6c3M4XtI/AAAAAAAAAn0/3ZD08vA0mus/s200/IMG_0375.PNG" width="133" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;ブックレビューを表示後、同じ本を別amazonで再表示できるよう機能追加&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;ISBN検索失敗後にISBNを保持したままamazonサイトの切り替え履歴情報のメールによるエクスポート&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_k_iYu215kSk/S6L6IgDpk3I/AAAAAAAAAns/d7-UFT0u-tU/s1600-h/IMG_0373.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://4.bp.blogspot.com/_k_iYu215kSk/S6L6IgDpk3I/AAAAAAAAAns/d7-UFT0u-tU/s200/IMG_0373.PNG" width="133" /&gt;&lt;/a&gt;&lt;a href="http://3.bp.blogspot.com/_k_iYu215kSk/S6L59Kz-IpI/AAAAAAAAAnc/LSHntrlfh_A/s1600-h/IMG_0371.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://3.bp.blogspot.com/_k_iYu215kSk/S6L59Kz-IpI/AAAAAAAAAnc/LSHntrlfh_A/s200/IMG_0371.PNG" width="133" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;プレーンテキストとHTMLテキスト(amazonサイトへのリンク付き)が設定で選べるエクスポートメール。&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_k_iYu215kSk/S6L7GiSUT-I/AAAAAAAAAn8/XgTNeKtIBtI/s1600-h/IMG_0368.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://3.bp.blogspot.com/_k_iYu215kSk/S6L7GiSUT-I/AAAAAAAAAn8/XgTNeKtIBtI/s200/IMG_0368.PNG" width="132" /&gt;&lt;/a&gt;&lt;a href="http://4.bp.blogspot.com/_k_iYu215kSk/S6L7NRdO2oI/AAAAAAAAAoE/cng5pFHF35U/s1600-h/IMG_0369.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://4.bp.blogspot.com/_k_iYu215kSk/S6L7NRdO2oI/AAAAAAAAAoE/cng5pFHF35U/s200/IMG_0369.PNG" width="133" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;br /&gt;などと。&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-3457283490553343891?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/3457283490553343891/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/03/abrviewer.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/3457283490553343891'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/3457283490553343891'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/03/abrviewer.html' title='新アプリの前にAbrViewerバージョンアップと...'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_k_iYu215kSk/S6L5kRHspjI/AAAAAAAAAnU/4mUto47QP6A/s72-c/IMG_0372.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-8903549760988471571</id><published>2010-03-03T11:30:00.006+09:00</published><updated>2010-03-03T11:36:55.352+09:00</updated><title type='text'>こんなん見ちゃったらさー、自分のレベルあげなきゃしゃーないやん。</title><content type='html'>AbrViewerは世間のiPhoneアプリと同様、なかなか売れない。&lt;br /&gt;販売努力をまったくしてないので、こうなるとは思っていたが、これほど売れないものなのかと。&lt;br /&gt;マジで対策せねば死活問題なのだが、この話題はそれはそれでおいといて、、、、ｗ&lt;br /&gt;&lt;br /&gt;今、次のプロダクトをつくっているのだけど、いろいろ参考にと他の方々のアプリを調べていた。&lt;br /&gt;個人的には奇をてらったUIは好きじゃないので、iPhoneのガイドラインに沿って作るべき。と考えているのだけど、これを見たらヤラレました。自分の考えが粉々に砕け散りまくった。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.blogger.com/goog_1267582262464"&gt;Awesome Note&lt;/a&gt;&lt;br /&gt;&lt;a href="http://bridworks.com/"&gt;http://bridworks.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;機能はもちろんだが、そのUIとデザイン。まったく知識なしに使い始めたのだけど、&lt;br /&gt;「こうするためには、こうすればいいのかな？」&lt;br /&gt;って操作すると、実際にそうなる。&lt;br /&gt;なに、これ！？　なに？この爽快感！！&lt;br /&gt;&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;そして、これを味わうと　「じゃ、この場合は？」　と自ら課題を作って、そのアプリの操作性自身を楽しみ出すことに気がついた。そして、だんだんそのアプリ自身が好きになっていく自分。&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;もう、こうなると、より難しい操作ができなくても、それはそれでＯＫ。だって好きになっちゃったんだもん、多少の問題は目をつぶっちゃうよね。てか、それも含めてＯＫだよね。だって好きになっちゃったんだもん。愛は盲目！ｗ&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;で、アプリユーザならここまででいいのだけど、一応、アプリを作る側の人間なので、これを冷静に考えてみると、&lt;br /&gt;&lt;br /&gt;『解決すべき問題に直面したときに、自分が思いつく方法(操作)で問題が解決できると、そのプロダクトへの親近感が増す』&lt;br /&gt;&lt;br /&gt;ようである。&lt;br /&gt;iPhoneアプリのように操作性が限定される場合はさらにそれが端的に発揮されるのであろう。&lt;br /&gt;携帯サイトをつくっていたときも、どんだけ直接的に必要な画面に移行できるか。ってのは課題の１つであったわけだし。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;しかし、さすが定番アプリ。iPhoneアプリは消費されるものなので、その中で選ばれて勝ち続ける。ってのはすごく大変だが、これはそのデザインと操作性で圧倒的であった。&lt;br /&gt;なるほど、ここまで作らねば勝てないのか。&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;てかさぁーーー、こんなの見せられちゃうと、ここがスタートラインになってしまうよ。&lt;br /&gt;これくらいできて当たり前。この先をどうするかが勝負になってくる。&lt;br /&gt;&lt;br /&gt;やはり後発組には厳しい市場だなー。&lt;br /&gt;ま、大きな壁ほど乗り越えるのも楽しいのだけどね。まだ、乗り越えられる程度の壁だしw&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-8903549760988471571?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/8903549760988471571/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/03/blog-post.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/8903549760988471571'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/8903549760988471571'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/03/blog-post.html' title='こんなん見ちゃったらさー、自分のレベルあげなきゃしゃーないやん。'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-468390941491389409</id><published>2010-02-18T10:01:00.009+09:00</published><updated>2010-02-22T17:05:24.571+09:00</updated><title type='text'>お誕生日だった。</title><content type='html'>いやぁ、また年取ってしまいました。とほほ。&lt;br /&gt;&lt;br /&gt;2月17日は私のお誕生日でした。&lt;br /&gt;ここ数年、嫁さんの流行で私のお誕生日におかしなケーキを注文する。というのがあるらしく、&lt;br /&gt;昨年は&lt;a href="http://d.hatena.ne.jp/ohneta/20090217"&gt;こんな感じ&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://f.hatena.ne.jp/images/fotolife/o/ohneta/20090217/20090217161427.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="192" src="http://f.hatena.ne.jp/images/fotolife/o/ohneta/20090217/20090217161427.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;やら、こんな感じ&lt;br /&gt;&lt;script src="http://ext.nicovideo.jp/thumb_watch/sm8447836" type="text/javascript"&gt;&lt;/script&gt;&lt;br /&gt;&lt;noscript&gt;&amp;amp;amp;lt;a href="http://www.nicovideo.jp/watch/sm8447836"&amp;amp;amp;gt;【ニコニコ動画】はちゅねミク のお誕生日ケーキ&amp;amp;amp;lt;/a&amp;amp;amp;gt;&lt;/noscript&gt;&lt;br /&gt;でした。&lt;br /&gt;&lt;br /&gt;で、今年。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_k_iYu215kSk/S3yHIFVarLI/AAAAAAAAAjI/kl0cydxlCdM/s1600-h/IMG_0271.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_k_iYu215kSk/S3yHIFVarLI/AAAAAAAAAjI/kl0cydxlCdM/s320/IMG_0271.jpg" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;そう、きましたか！　www&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;iPhoneですね、これ。&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;しかも、AbrViewerがちゃっかりのってますｗ&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;つか、アイコンがすべて作ってあるよ。。嫁さん、こんな無茶発注かけて、ケーキ屋さん、ごめんなさいｗ&lt;/div&gt;&lt;br /&gt;なので、せっかくなのでケーキ屋さんの力作アイコンを１つ１つ見ていきましょう。&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;左上から。&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&amp;nbsp;&lt;a href="http://3.bp.blogspot.com/_k_iYu215kSk/S3yLZg_eZiI/AAAAAAAAAk8/_hKftzqOumk/s1600-h/%E3%82%B3%E3%83%B3%E3%83%91%E3%82%B9.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_k_iYu215kSk/S3yLZg_eZiI/AAAAAAAAAk8/_hKftzqOumk/s320/%E3%82%B3%E3%83%B3%E3%83%91%E3%82%B9.jpg" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;コンパス&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&amp;nbsp;&lt;a href="http://2.bp.blogspot.com/_k_iYu215kSk/S3yLgcQO54I/AAAAAAAAAlE/g1yotc4DMKw/s1600-h/%E4%B9%97%E6%8F%9B%E6%A1%88%E5%86%85.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_k_iYu215kSk/S3yLgcQO54I/AAAAAAAAAlE/g1yotc4DMKw/s320/%E4%B9%97%E6%8F%9B%E6%A1%88%E5%86%85.jpg" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;乗換案内&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_k_iYu215kSk/S3yLy7zNu4I/AAAAAAAAAlM/wcJQVSdlAu8/s1600-h/Google+Earth.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_k_iYu215kSk/S3yLy7zNu4I/AAAAAAAAAlM/wcJQVSdlAu8/s320/Google+Earth.jpg" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;Google Earth&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_k_iYu215kSk/S3yL6CR97PI/AAAAAAAAAlU/cdG58pU0paM/s1600-h/Skype.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_k_iYu215kSk/S3yL6CR97PI/AAAAAAAAAlU/cdG58pU0paM/s320/Skype.jpg" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;Skype&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_k_iYu215kSk/S3yL_A28xCI/AAAAAAAAAlc/LqGRIWOmtNI/s1600-h/Broadcaster_Ustream.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_k_iYu215kSk/S3yL_A28xCI/AAAAAAAAAlc/LqGRIWOmtNI/s320/Broadcaster_Ustream.jpg" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;UstreamのBroadcaster&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_k_iYu215kSk/S3yMGf4X3uI/AAAAAAAAAlk/0uiFuzhT3FY/s1600-h/Flickr.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_k_iYu215kSk/S3yMGf4X3uI/AAAAAAAAAlk/0uiFuzhT3FY/s320/Flickr.jpg" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;Flickr&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_k_iYu215kSk/S3yMMlfbdPI/AAAAAAAAAls/HFZoQUMX3R0/s1600-h/%E3%83%8B%E3%82%B3%E3%83%8B%E3%82%B3%E5%8B%95%E7%94%BB.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_k_iYu215kSk/S3yMMlfbdPI/AAAAAAAAAls/HFZoQUMX3R0/s320/%E3%83%8B%E3%82%B3%E3%83%8B%E3%82%B3%E5%8B%95%E7%94%BB.jpg" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;ニコニコ動画&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_k_iYu215kSk/S3yMRVAWcsI/AAAAAAAAAl0/Cmd9I-puZFM/s1600-h/%E3%82%BB%E3%82%AB%E3%82%A4%E3%82%AB%E3%83%A1%E3%83%A9.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_k_iYu215kSk/S3yMRVAWcsI/AAAAAAAAAl0/Cmd9I-puZFM/s320/%E3%82%BB%E3%82%AB%E3%82%A4%E3%82%AB%E3%83%A1%E3%83%A9.jpg" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;セカイカメラ&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_k_iYu215kSk/S3yMW0tpKJI/AAAAAAAAAl8/5kcc-5jDfbI/s1600-h/Classical.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_k_iYu215kSk/S3yMW0tpKJI/AAAAAAAAAl8/5kcc-5jDfbI/s320/Classical.jpg" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;Classical&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&amp;nbsp;&lt;a href="http://2.bp.blogspot.com/_k_iYu215kSk/S3yMfB1fY4I/AAAAAAAAAmE/naDuEe-ZK5w/s1600-h/VoiceBand.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_k_iYu215kSk/S3yMfB1fY4I/AAAAAAAAAmE/naDuEe-ZK5w/s320/VoiceBand.jpg" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;VoiceBand&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_k_iYu215kSk/S3yMzrroc-I/AAAAAAAAAmM/cDa9JZWeSfc/s1600-h/Dropbox.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_k_iYu215kSk/S3yMzrroc-I/AAAAAAAAAmM/cDa9JZWeSfc/s320/Dropbox.jpg" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;Dropbox&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_k_iYu215kSk/S3yM3zAVB9I/AAAAAAAAAmU/feefHVNPZ-w/s1600-h/RedLaser.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_k_iYu215kSk/S3yM3zAVB9I/AAAAAAAAAmU/feefHVNPZ-w/s320/RedLaser.jpg" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;RedLaser&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_k_iYu215kSk/S3yM_-Rp4bI/AAAAAAAAAmc/vZqemfbWGP8/s1600-h/%E5%92%8C%E8%8B%B1%E5%92%8C.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_k_iYu215kSk/S3yM_-Rp4bI/AAAAAAAAAmc/vZqemfbWGP8/s320/%E5%92%8C%E8%8B%B1%E5%92%8C.jpg" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;和英和&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_k_iYu215kSk/S3yNFuCAVVI/AAAAAAAAAmk/kWhjCjRe-Vg/s1600-h/eBay.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_k_iYu215kSk/S3yNFuCAVVI/AAAAAAAAAmk/kWhjCjRe-Vg/s320/eBay.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;eBay&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_k_iYu215kSk/S3yNM-di-sI/AAAAAAAAAms/2SJKZdhPVSU/s1600-h/aMart.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_k_iYu215kSk/S3yNM-di-sI/AAAAAAAAAms/2SJKZdhPVSU/s320/aMart.jpg" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;aMart&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_k_iYu215kSk/S3yNSPdENdI/AAAAAAAAAm0/4Oq4IcnFiiQ/s1600-h/AbrViewer.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_k_iYu215kSk/S3yNSPdENdI/AAAAAAAAAm0/4Oq4IcnFiiQ/s320/AbrViewer.jpg" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;で、AbrViewer&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;下段は定番のこいつら。&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_k_iYu215kSk/S3yOrC3eqrI/AAAAAAAAAm8/iCMT6omEYP8/s1600-h/Tabs.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_k_iYu215kSk/S3yOrC3eqrI/AAAAAAAAAm8/iCMT6omEYP8/s320/Tabs.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;メール、電話、Safari、iPod&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;いやぁ、やはりパティシエ、Good Job !&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;こんな仕事してもらって通常のお誕生日ケーキと同じ値段だった(らしい)ので申し訳ないので、お店のリンクだけでも貼らせてもらいます。&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;a href="http://www.b-yanagi.co.jp/"&gt;ボナペティヤナギヤ&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;というわけで、ここを私がいただきました。ｗ&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_k_iYu215kSk/S3yRLKLzGLI/AAAAAAAAAnE/PH2sEMNy_5A/s1600-h/IMG_0284.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_k_iYu215kSk/S3yRLKLzGLI/AAAAAAAAAnE/PH2sEMNy_5A/s320/IMG_0284.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;毎年、毎年、ありがとう、嫁さん。愛してるよw。&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;p.s.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;ムービーにしてみましたｗ&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;http://www.nicovideo.jp/watch/sm9762021&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;span id="goog_1266451064756"&gt;&lt;/span&gt;&lt;span id="goog_1266451064757"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-468390941491389409?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/468390941491389409/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/02/blog-post_18.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/468390941491389409'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/468390941491389409'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/02/blog-post_18.html' title='お誕生日だった。'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_k_iYu215kSk/S3yHIFVarLI/AAAAAAAAAjI/kl0cydxlCdM/s72-c/IMG_0271.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-2931419646105936330</id><published>2010-02-15T16:09:00.002+09:00</published><updated>2010-02-15T17:53:03.726+09:00</updated><title type='text'>でた！ AppStore/utilitiesの新着トップだ！</title><content type='html'>iTunesのAppStoreに新着として表示されました。&lt;br /&gt;&lt;br /&gt;これ、どうもリリース日のものをアルファベット順に並べるようで、偶然にも「AbrViewer」なんてけっこう索引の前めの名前だったのでトップページの最上段に表示されました。&lt;br /&gt;あはは、これは良い誤算ｗ&lt;br /&gt;&lt;br /&gt;これが日本のiTunesの画面。&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_k_iYu215kSk/S3jyrp6-jPI/AAAAAAAAAiI/I17NZjBty0c/s1600-h/AbrView_AppStore_JP.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_k_iYu215kSk/S3jyrp6-jPI/AAAAAAAAAiI/I17NZjBty0c/s320/AbrView_AppStore_JP.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;こっちがアメリカのもの。&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_k_iYu215kSk/S3jyzvN9_8I/AAAAAAAAAiQ/vTfgO2YJJCQ/s1600-h/AbrView_AppStore_US.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_k_iYu215kSk/S3jyzvN9_8I/AAAAAAAAAiQ/vTfgO2YJJCQ/s320/AbrView_AppStore_US.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;まんなかコンテンツの左上に注目！ほらほら！&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_k_iYu215kSk/S3jy5T7uKQI/AAAAAAAAAiY/fJBmCrYcNzc/s1600-h/AbrView_AppStore_US_zoomup1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_k_iYu215kSk/S3jy5T7uKQI/AAAAAAAAAiY/fJBmCrYcNzc/s320/AbrView_AppStore_US_zoomup1.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;左上！左上！&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_k_iYu215kSk/S3jy-UVJ3PI/AAAAAAAAAig/71RmNOvNVNA/s1600-h/AbrView_AppStore_US_zoomup2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_k_iYu215kSk/S3jy-UVJ3PI/AAAAAAAAAig/71RmNOvNVNA/s320/AbrView_AppStore_US_zoomup2.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;うほほ。らっきぃー♪&lt;br /&gt;つか、他のアプリはエロっちぃのが多いぞ？ここユーティリティカテゴリ―だったよな？(^^;&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-2931419646105936330?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/2931419646105936330/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/02/appstoreutilities.html#comment-form' title='2 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/2931419646105936330'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/2931419646105936330'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/02/appstoreutilities.html' title='でた！ AppStore/utilitiesの新着トップだ！'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_k_iYu215kSk/S3jyrp6-jPI/AAAAAAAAAiI/I17NZjBty0c/s72-c/AbrView_AppStore_JP.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-7569691534859397974</id><published>2010-02-15T01:08:00.001+09:00</published><updated>2010-02-15T01:12:53.270+09:00</updated><title type='text'>で、つぎ。</title><content type='html'>音声ものにするつもりで、録音とか再生の実験コードを書いてます。&lt;br /&gt;MP3を再生させるコードを書いて、テストで何曲かいれてみて、いろいろ操作してたら、そっちが楽しくなってきてしまって、アプリ用のコードが書けてません。(^^;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;もちっとマジメにやりますよ、、、はいっ！&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-7569691534859397974?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/7569691534859397974/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/02/blog-post_7673.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/7569691534859397974'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/7569691534859397974'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/02/blog-post_7673.html' title='で、つぎ。'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-4562170559495335419</id><published>2010-02-15T00:38:00.001+09:00</published><updated>2010-02-15T00:44:29.067+09:00</updated><title type='text'>無事販売開始されたようです。</title><content type='html'>AbrViewerはアメリカ太平洋標準時2月14日0時から iTunes AppStoreで販売がはじまりました。&lt;br /&gt;英語と日本語に対応しているので、usと日本のiTunes Storeから検索効いて買えるようです。&lt;br /&gt;&lt;br /&gt;&lt;a href="itms://itunes.apple.com/us/app/abrviewer/id354868436?mt=8"&gt;iTunesのURI&lt;/a&gt;を設置しておきます。&lt;br /&gt;&lt;br /&gt;何人かの知人が購入してくれたようで、すでに鋭い意見をいただいています。&lt;br /&gt;さっそくバージョンアップになるかも。。。(^^;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;あ、あと、サポートページは結局 mobile safari対応に間に合っていません。ただのwebページしかありませんので見づらいです。&lt;br /&gt;これも実施日未定ですが対応予定になっています。&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-4562170559495335419?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/4562170559495335419/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/02/blog-post_15.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/4562170559495335419'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/4562170559495335419'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/02/blog-post_15.html' title='無事販売開始されたようです。'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-1527572971511956997</id><published>2010-02-13T08:33:00.002+09:00</published><updated>2010-02-13T09:12:55.082+09:00</updated><title type='text'>AbrViewerのサポートページとかいろいろ</title><content type='html'>AppStoreでアプリを公開するにはサポートのwebページやらなにやらを用意することがAppleから必須にされているので、&lt;a href="http://www.kerongun.com/products/AbrViewer/"&gt;作った&lt;/a&gt;。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;英語は全く自信なし。とりあえずあるだけ。片言でもあるだけでなんとかなるかな、、、という甘い考え。&lt;br /&gt;実際、私の場合、日本語だってあやしいのに。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;で、これを作るついでに&lt;a href="http://www.kerongun.com/"&gt;会社のwebサイト&lt;/a&gt;も、ちゃんと(?)作ることにした。&lt;br /&gt;以前は私個人のwebサイトに会社情報だけ載せてたんだけど、ドメイン自身はだいぶ前から取って持っていたので、それを設定した。&lt;br /&gt;&lt;br /&gt;&lt;div style="margin: 0px;"&gt;なんと！今時、日本では珍しい .com 企業ですｗｗｗ&lt;/div&gt;&lt;div style="margin: 0px;"&gt;まぁwebのほうはボチボチと更新していきます。&lt;/div&gt;&lt;div style="margin: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-1527572971511956997?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/1527572971511956997/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/02/abrviewer.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/1527572971511956997'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/1527572971511956997'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/02/abrviewer.html' title='AbrViewerのサポートページとかいろいろ'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-4343197674388595767</id><published>2010-02-11T11:55:00.003+09:00</published><updated>2010-02-11T12:39:22.997+09:00</updated><title type='text'>in Review &amp; Ready for Sale</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;えと、バーコードでISBN読んでamazonのブックレビューを表示するiPhoneのアプリは「AbrViewer」として2月6日にiTune Storeに登録申請しました。&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;で、2月9日になってin Reviewになり、2月11日早朝、めでたく Ready for Sale になりました。&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;なにしろハジメテのことだったので、ちょっと（いや、だいぶｗ）ドキドキしてましたが、けっこうすんなり通りました。&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;でも、Appleのreviewってどうなんでしょうね？&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;今回申請してみて思ったんだけど、基本的に申請するものってアプリそのものとそれのサポートサイトのURLくらいで、マニュアル的なものはまったく提出しない。それに今回、サポートサイトもちゃんと出来てるわけではない状態だったので参考にしたとも思わわれない。つまり、いきなりアプリ渡されて、これをAppStoreにのせるかどうか判断してるわけだよね？&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;これって手の込んだアプリとかだと難くしねーか？&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;今回、私が申請したヤツは単機能だから比較的わかりやすいし簡単だろうけど、手の込んだヤツだと目的を達成させるための操作が煩雑だったりすると、reviewerの中の人も困惑だろうに。。。&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;ああ、だからreviewの期間ってアプリ次第でバラバラなのか。&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;つまりだ、はやくreviewを通りたかったらわかりやすい単純な操作にしとけ。ってことだな。&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;じつにiPhoneアプリのガイドラインに沿ってるな、と妙に納得ｗ&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;あ、AbrViewerは登録時に公開日を2月14日にしてしまったので、それまで公開されませんけどねｗ&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'MS PGothic'; font-size: medium;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-4343197674388595767?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/4343197674388595767/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/02/in-review-ready-for-sale.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/4343197674388595767'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/4343197674388595767'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/02/in-review-ready-for-sale.html' title='in Review &amp; Ready for Sale'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-2791948376132409995</id><published>2010-02-08T08:48:00.005+09:00</published><updated>2010-02-11T12:36:37.875+09:00</updated><title type='text'>カイゼンカイゼンまたはオオキクカイゼン</title><content type='html'>バーコードは読めるようになったので、アプリ全体の機能をすべてつけて、いざ、大量の本で実地試験と相成りました。&lt;br /&gt;&lt;br /&gt;とりあえず、作業デスクのそばにある何冊香の本で試してみたところ、うまく読み取れないコードがいくつかでてきた。&lt;br /&gt;バーコード自身を目視してみると白黒が１モジュールづつ連続しているところだったり、４モジュール連続で白とかの部分がうまく読み取れない場合があった。&lt;br /&gt;(モジュールとはバーコードの最小単位。あのバーの一番細いのが1モジュールにあたる)&lt;br /&gt;&lt;br /&gt;自分のソースコードなのでいくらでも手を入れられるし、あーでもない、こーでもない。といった実験もできる。ちょっと反応は鈍くなったけど、手近の本のバーコードが読めるようになった。&lt;br /&gt;まぁ反応の鈍さは複数回のループ処理など、まだコードの最適化をやっていない部分が大きいので、コード確定次第、最適化を施せばいいやと。&lt;br /&gt;&lt;br /&gt;ので、自宅にある1,800冊オーバーの蔵書を誇るマンガ棚にいって、かたっぱしからバーコードを読んでみた。(なぜそんなにあるかは&lt;a href="http://mixi.jp/view_diary.pl?id=887762895&amp;amp;owner_id=10995"&gt;ここらへん&lt;/a&gt;参考にしてね)&lt;br /&gt;&lt;br /&gt;、、、、、勝率８割程度、、、、orz&lt;br /&gt;&lt;br /&gt;これじゃだめだ。20%も読めない読み間違えが発生する。&lt;br /&gt;せめて95%、希望は99%。願わくば100%認識率にしたい。&lt;br /&gt;&lt;br /&gt;ちなみにライセンス買おうかどうか迷ったRedLaserのバーコードは認識率100%。しかもすごい速さで認識される。&lt;br /&gt;&lt;br /&gt;負けてる、、、いや、負けてもいいのだけど、負けすぎている。&lt;br /&gt;相手はiPhoneもバーコードも先達で社名からもわかるようにバーコードのプロだろう。&lt;br /&gt;こちとら２日間やそこらでつくったバーコードスキャナだもの、負けているのは仕方がない。しかし、負けすぎだろー。実用にならないよ、、、、80%程度じゃ。&lt;br /&gt;&lt;br /&gt;そして、決定的に敗北を味わったのが、いくつかある洋書(主にアメリカ)のバーコードスキャンをおこなったとき。&lt;br /&gt;&lt;br /&gt;ぜんぜん認識されない。勝率1割程度。。。&lt;br /&gt;当初からワールドワイドに展開♪とかうそぶいていたのに、なにこのありさま？&lt;br /&gt;アメリカ向けにはバーコードスキャン機能禁止ってしないとならない？&lt;br /&gt;ちなみにRedLaserはこちらも100%認識してました。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;それでも、ちまちまとカイゼンカイゼンを勧めた結果、多少まともに洋書は読めるようになったけど、こんどは日本の本の認識率が下がりだした。&lt;br /&gt;&lt;br /&gt;&amp;nbsp;あっちを立てればこっちがたたず。&lt;br /&gt;&lt;br /&gt;もう手詰まり状態で悶々とした日を数日過ごしたので、いっそのこととおもい、バーコード認識部、正確にいえば画像を取り込んでから２値化補正するまでの部分を、まったく新しい方法で実装し直すことにした。&lt;br /&gt;それまでは画面を10分割くらいして、ちまちまドットを数えていたのだが、この新しい方式は分割は３つ。ドットもちまちまカウントするのではなく、X軸の各位置(dot)をY軸方向に全部加算して得られた値からバーコードを内部的に再構成してから、それのドットを数えるようにした。&lt;br /&gt;&lt;br /&gt;で、これが大正解！！&lt;br /&gt;日本のバーコードもアメリカのバーコードもほぼ問題なく読めるようになった。稀に間違いがあるよう(経験則からいって1〜2%程度かな)だけど、それも再度バーコードスキャンしてみればちゃんと読める。希望の99%はほぼクリアされただろう。 &lt;br /&gt;で、なにが良くなったかって、全体の計算量が減ったので、すごく反応がよくなったこと。レスポンスがいいので使っていてストレスがない。&lt;br /&gt;バーコードをちょっとかざすだけでサクっと読んでくれる。(もちろんオートフォーカスがちゃんと焦点をあわせていることが前提だが) &lt;br /&gt;&lt;br /&gt;RedLaserのバーコードスキャナと比べれば、もちろんまだまだ負けてるけど、負けすぎていない。十分実用になる範囲だ。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;と、いうことで、この新しい方法を正式に採用し古いバーコードスキャンルーチンは捨ててしまい、これをいれたものをビルドしてAppleにアプリ申請した。&lt;br /&gt;これが2月6日。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;さてさて、申請のreviewがいつから始まってどうなることか、まだ先のことはわからんけど、とりあえずiPhoneアプリ第一弾は提出できた。&lt;br /&gt;&lt;br /&gt;思いのほかバーコードの認識率がいいので、これを使った第２、第３のアプリの構想もはじめたので乞うご期待！&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;というわけで、これが現在の本業なのです。&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-2791948376132409995?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/2791948376132409995/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/02/blog-post_08.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/2791948376132409995'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/2791948376132409995'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/02/blog-post_08.html' title='カイゼンカイゼンまたはオオキクカイゼン'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-103241901302906815</id><published>2010-02-08T05:39:00.006+09:00</published><updated>2010-02-08T20:37:35.050+09:00</updated><title type='text'>そしてバーコードの読み取り機能</title><content type='html'>さて、最大の目玉機能であるバーコードスキャンの件。&lt;br /&gt;&lt;br /&gt;下調べはamazonアクセス実験なんかと並行して実施してたけど、amazon接続がうまく行くことを確認したので、本格的にバーコードの読み取り機能をつけていこうとした。&lt;br /&gt;&lt;br /&gt;下調べ中にわかったんだけど、iPhoneのバーコード読み取り機能ってアプリで販売されている。(RedLaser)&lt;br /&gt;しかも、このアプリは大ヒットらしく、&lt;a href="http://jp.techcrunch.com/archives/20091215bar-code-scanning-redlaser-iphone-app-reaches-750k-downloads-over-1m-in-revenue/"&gt;TechCrunchにこの件について記事になっていた&lt;/a&gt;くらいだ。&lt;br /&gt;それから、このアプリの会社は、このバーコードスキャン機能を有償でライブラリ提供しているようで、会社のwebサイトにライセンス料金が書いてあった。それによると、、、&lt;br /&gt;&lt;ul&gt;&lt;li&gt;デベロッパ登録は $50&lt;/li&gt;&lt;li&gt;最低$2,500&lt;/li&gt;&lt;li&gt;5万本以上売ったら、そこからパーセンテージでライセンス料ね。&lt;/li&gt;&lt;/ul&gt;とのこと。&lt;br /&gt;100本とか200本売れれば御の字だぜ！と思っている身に $2,500はきびしーー。&lt;br /&gt;てか、仕事がなくて貧乏になっているのに、ここで払える金なんぞありません！&lt;br /&gt;&lt;br /&gt;とはいえ、バーコード読み取り機能がついてないと、当初の構想の達成にはならないので、最悪、金を払ってでもライセンスを受ける覚悟だけ決めて、まずは自分でバーコードスキャン機能を作ってみることにした。&lt;br /&gt;&lt;br /&gt;まずはバーコードとはどのようなもので、ISBNとはどのようなもので、ISBNとバーコードとはどんな風に絡んでいるのか？ってのをwebなどで調べて、それぞれの規格を把握。&lt;br /&gt;これをもとにバーコードの読み取りコードを書いていこうとしたのだけで、その前にiPhone固有の大問題が発覚した。&lt;br /&gt;&lt;br /&gt;実はAppleから提供されるドキュメントや前述の「iPhone SDKアプリケーション開発ガイド」にはiPhoneカメラのリアルタイムでの画像取り込み、処理の方法がまったく書いてない。&lt;br /&gt;カメラで写真やムービーを撮る方法はいくらでも解説がありサンプルコードが存在するのに、カメラ機能だけ有効にして写真をとらずに表示されているカメラの映像をプログラムに取り込む方法がまったくわからなかったのだ。&lt;br /&gt;これはバーコードスキャンするほうからすると致命的な問題。だってバーコードの写真をいちいち撮影した上でそれをアプリに読ませて認識されるなんてしたくないじゃない？バーコードにカメラをかざしたら「ピッ！」とかいって即でamazonに飛びたいじゃない？&lt;br /&gt;&lt;br /&gt;いやぁ、延々調べましたよ。セカイカメラやUStreamアプリ、それに上記のRedLaserもリアルタイムで画像処理してるんですよ。でもその公式APIが存在しない。まじで途方にくれました。&lt;br /&gt;で、その探しいる途中ですごくヒントになる&lt;a href="http://webdog.be/archives/091212_021008.php"&gt;webの書き込み&lt;/a&gt;を見つけました。&lt;br /&gt;&lt;br /&gt;これですべてわかりましたよ。&lt;br /&gt;そうなのです！カメラのリアルタイム画像を取り込むAPIはまったく存在しないのです。そんなものはもともとないんですよ！&lt;br /&gt;カメラの画像を取り込むのではなく、カメラが写したiPhone上の画像を連続でキャプチャすればいいわけだ。&lt;br /&gt;で、キャプチャもAPIがあるわけでもなく、いま現在iPhoneに写っている画像のビットマップメモリを直接参照(実際には一旦、別のCGImageにコピーしたものだけど)すればいいわけです。&lt;br /&gt;&lt;br /&gt;実はこの機能も非公開APIなのだけどUStreamが審査を通過してからはその利用が暗黙のうちにOKになったようで、おかげでセカイカメラやそれにつづくAR/VR/リアルタイムカメラエフェクトなアプリも軒並み審査を通過している。&lt;br /&gt;すごく合点がいきました。いっきに視界が晴れ上がった気がしました。&lt;br /&gt;&lt;br /&gt;で、さっそくその機能をつかってバーコードをキャプチャし、仕様書をもとにオリジナルで考えたアルゴリズムでバーコードデータをリアルタイムで２値化、補正してみることにした。&lt;br /&gt;それがこれ。&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&amp;nbsp;&lt;a href="http://4.bp.blogspot.com/_k_iYu215kSk/S2_3bWYBhPI/AAAAAAAAAho/DX9yaWuhVDs/s1600-h/59360996.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_k_iYu215kSk/S2_3bWYBhPI/AAAAAAAAAho/DX9yaWuhVDs/s320/59360996.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;画像のが上半分が実際にリアルタイムスキャンしているバーコード。&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;その中段にあるのが２値化直後の画像。&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;そして下段、タブバーの上にある細い白黒画像が実際にバーコードとして認識させようとして補正を加えたもので、非常に鮮明にバーコードが二値化された。 &lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;で、これをバーコードの規格(JANコード)にそって読み出すと、ISBNコードを取得することができた。&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;やったね！　これで下手にライセンス料を払わないで済むことになるよ！&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;と、バーコードが読めた瞬間、&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;「オレって天才！　いま、世界はオレを中心に廻っている！」&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;と、いつもの勘違いを味わっていました。&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;その後に、まさかあんなことがおきようとは。。。 &lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;/div&gt;ちなみに、このバーコードの読取コーディングをはじめてから実際にISBNが読めるようになるまで約2日くらい。結構楽勝！&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-103241901302906815?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/103241901302906815/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/02/blog-post.html#comment-form' title='1 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/103241901302906815'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/103241901302906815'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/02/blog-post.html' title='そしてバーコードの読み取り機能'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_k_iYu215kSk/S2_3bWYBhPI/AAAAAAAAAho/DX9yaWuhVDs/s72-c/59360996.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-7957007011505829269</id><published>2010-02-08T04:43:00.003+09:00</published><updated>2010-02-11T12:21:38.614+09:00</updated><title type='text'>謎のamazonへのアクセス失敗</title><content type='html'>さらに続くのだがｗ&lt;br /&gt;&lt;br /&gt;そうなってくると、目的はしっかりしたので、手段を決めて、ひとつづつ解決していけばいいわけです。もう、ここまでくれば50%はできたも同然。&lt;br /&gt;技術的に懸念があるとすれば amazonのAPI使ったことないのでその使い方の習得と、iPhoneでのバーコードスキャン機能。&lt;br /&gt;&lt;br /&gt;バーコードスキャン機能はバーコードの規格やら画像認識やら面倒が多そうなので、まずはamazon APIへのアクセス方法を調べて実際にやってみることに。&lt;br /&gt;&lt;br /&gt;これはそんなに難しくなかった。&lt;br /&gt;amazonはすでにAWSのEC2をつかっていたりするのでデベロッパとして登録済み。なのでamazonサイトを漁って必要なドキュメントを読んだり、webで解説している人たちのサイトを参考にして自分でもAPIつかってamazonにアクセスしてみることにした。&lt;br /&gt;もちろん、いきなりiPhoneのコードで書くと基本的なところでツマズいた時に原因の切り分けができない可能性あるので手馴れたPHPでwebサービスとして実験コードを書いてみた。資料もあるしPHPのコーディングは慣れているのであっという間に完成。個人的にamazon EC2のサーバを借りているのでそこに設置して実験してみた。&lt;br /&gt;amazon.co.jpにISBNをItemの引数としてアクセスしてみると見事にamazonで表示される情報が引き出せた。これは楽勝！&lt;br /&gt;&lt;br /&gt;と、おもいきや、なんかうまく引き出せない場合もある。&lt;br /&gt;まったく同じISBNなのに、うまくできるときとできないときがあり、原因がわからない。ちなみにamazon.comやamazon.co.ukへのアクセスではこのような状況は発生せず、毎回、すべてうまくアクセスできた。amazon.co.jpだけ、なんかダメみたい。&lt;br /&gt;&amp;nbsp;webで同じ様な境遇が人がいないかと調べたけど、こんな症状はみつからないので、仮説をたてた。&lt;br /&gt;&lt;br /&gt;◆仮説&lt;br /&gt;&amp;nbsp;仮定1.&lt;br /&gt;amazon.co.jpのAPIリクエストを受けるサーバは複数台ある。&lt;br /&gt;(これは仮定ではなくて実際そうだとおもう)&lt;br /&gt;&lt;br /&gt;仮定2.&lt;br /&gt;そのサーバは地域もしくはIPアドレスでフィルタされる設定がされている。&lt;br /&gt;もしくはルータとかでフィルタされているかもしれない。 &lt;br /&gt;(実際、アクセスしてくるIPアドレスでブロックしていて、amazonからの接続を拒否されているwebサービスもあったらしい)&lt;br /&gt;&lt;br /&gt;仮定3.&lt;br /&gt;私が実験しているサーバのIPアドレスもしく地域(us東海岸)がそのフィルタにひっかかっている。IPアドレスはEC2から払い出しされたものなので可能性はある。&lt;br /&gt;&lt;br /&gt;仮定4.&lt;br /&gt;で、そのフィルタの設定はamzonのサーバ間で共有、統一されていない。&lt;br /&gt;(不当なwebサービスをブロックしたいなら、一部サーバだけでもブロックすれば恒常的なサービスとして提供できなくなるのでamazonとしてはこれで問題はないだろう)&lt;br /&gt;&lt;br /&gt;この４つの仮定が成立していることによって、私の実験コードはうまくいったりいかなかったりしているのではないか？&lt;br /&gt;これはamazon.com/co.uk/.fr/.ca/.de のそれぞれでは発生しなかったため、amazon.co.jpだけの固有の問題だと思われる。&lt;br /&gt;&lt;br /&gt;ってことでIPアドレスを変えればうまく行くだろう。という結論にした。&lt;br /&gt;他にグローバルIPアドレスは持っていないので実験はできないけど、これを問題にしている人が見つからないということから、非常に稀な現象であろうと。なので１つでも仮定が崩れれば問題なくアクセスできるであろう。ということにした。こんなことでいつまでも時間とられれていても仕方なのでね。&lt;br /&gt;&lt;br /&gt;まぁPHPで不安は残りながらもamazon APIの使い方はわかったのでそれをもとにObjective-CでiPhoneに実装してみたところ、もちろん、アクセスに失敗することなどなく、すべてうまくいきました。&lt;br /&gt;仮説成立！めでたしめでたしｗ &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ちなみに、この時点でISBNコードの手入力でブックレビューを表示するところまでは成功している。これ1月の中旬ごろのことだと記憶している。ここまでくれば機能的には70%はできたも同然状態でしょうか。最悪、バーコードスキャンのプログラムが失敗しても製品としては言い訳がたつくらいの機能はついています。&lt;br /&gt;&lt;br /&gt;でも、本当にほしいのはISBNバーコードをサクっとスキャンしてレビュー表示する機能です。本題はこれからだっ！！！&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;注) &lt;br /&gt;http://twitter.com/ohneta_/status/8064153065&lt;br /&gt;http://twitter.com/ohneta_/status/8064154887&lt;br /&gt;ここらへんで結論をtweetしてるけど、これはiPhoneで実際にamazon.co.jpにアクセスした結果をもとにして確証を得たあとの発言です。&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-7957007011505829269?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/7957007011505829269/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/02/amazon.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/7957007011505829269'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/7957007011505829269'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/02/amazon.html' title='謎のamazonへのアクセス失敗'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-8083565931880894578</id><published>2010-02-08T03:36:00.006+09:00</published><updated>2010-02-09T15:21:34.482+09:00</updated><title type='text'>それで本業であるiPhoneのアプリ開発なんだけど</title><content type='html'>で、いっこ前の話題の続きになるけど、 12月初頭に Mac miniを購入してデベロッパ登録もした。仕事がなくて貧乏なのに年会費１万なにがしとか取られるんだよなぁ。&lt;br /&gt;まぁ、それでMacの操作になれてみたり、ドキュメント読んだり、知人からいただいた本でiPhoneやcocoaフレームワークに慣れてみたり、、、。何を作るか決めてはいなかったのだけど、基本事項を習得していった。&lt;br /&gt;で、実際にプログラムを書き始めると自分専用で使えるiPhoneがほしくなるわけで、12/23に私もMNPしてiPhone 3GSをゲット！&lt;br /&gt;&lt;br /&gt;この日から本格的にiPhoneアプリ開発を開始です。&lt;br /&gt;&lt;br /&gt;当初、嫁さんが欲しいといっていたマルチタイマーアプリを作ろうかなと目論んでいたんだけど、正月前にオライリーの「iPhone SDKアプリケーション開発ガイド」は読んでおくべきだなと思い、和歌山県で最大の本屋さんに出向いて購入。いったついでにiPhone関連の本も何冊か仕入れておこうとおもって、いろいろ漁っていたのだけど、どの本がいいのかよくわからなかったので、その場で持参したiPhoneでamazonのブックレビューを読んで選んでいた。で、その時、&lt;br /&gt;&lt;br /&gt;&lt;div style="color: red; text-align: center;"&gt;&lt;span style="font-size: x-large;"&gt;&lt;b&gt;ピンっ！&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&amp;nbsp;ってきたのよ。&lt;br /&gt;&lt;br /&gt;実用書とかって実際どれがいいのかってわかんないじゃない？目的はわかっているのだけど手段がわからないから参考にしようとして本を買って読むのだけど、その本自身に書いてある手段がどれくらい参考になるのか、って自分じゃまだ理解できていない場合がほとんどでしょ？だからamazonのブックレビューとかとても参考になるし、参考にしてもらいたいとの思いで書く人もいるわけです。&lt;br /&gt;&lt;br /&gt;&amp;nbsp;ただ選択肢の本がいっぱいあると、そのブックレビューを見るためにamazonで検索するにも結構な労力が必要じゃない？と思ったわけです。 iPhoneなんか画面小さいからさらに苦労が多いわけですよ。まったく。&lt;br /&gt;だったらさ、せっかく本にISBNついてるんだから、それ入力で即目的の本のブックレビュー読めたらうれしくね？ってのが最初の発想。&lt;br /&gt;実際、amazonの検索ワードにISBN入れれば一発で検索されるんだけど、ブックレビューだけ読みたいのだからamazonの他の情報は邪魔なわけです。専用アプリでサクっと表示できたらいいのになー。と思ったわけです。&lt;br /&gt;そしてISBNっていま出版されている本には&lt;span style="font-size: x-large;"&gt;&lt;b&gt;&lt;span style="color: red;"&gt;すべて&lt;/span&gt;&lt;span style="color: red;"&gt;バーコード印刷されている&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;(&lt;/span&gt;&lt;span style="color: red;"&gt;ここ大事です！試験にでますよ！&lt;/span&gt;&lt;span style="color: red;"&gt;ww&lt;/span&gt;)のですよ。だったらiPhoneのカメラでバーコードをスキャンしてISBNを拾い出して、それのブックレビューを即読めたら、すごくうれしくね？　すごくね、それ？　欲しくね？少なくとも、いまの俺はすごく欲しいぞ！！&lt;br /&gt;という連鎖反応がおきて、頭のなかでアプリの構想が決定してしまいました。&lt;br /&gt;で、これ思いついたときに、すんごく興奮していっしょに行っていた嫁さんに話たんだけど、反応はいまいちｗ。&lt;br /&gt;でも、まぁ、少なくとも俺は欲しいし、俺が欲しいと思うくらいだから、世界中で100人や200人くらいは欲しがるだろうと。ニッチすぎるかもしれないけど、でも欲しがる人はいるだろうと思い、嫁さん要望のマルチタイマーアプリは置いといて、自分の構想のアプリ開発を強行決定！(@自分の中で)したのでした。&lt;br /&gt;&lt;br /&gt;これ、去年の12月28日くらいの話です。&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-8083565931880894578?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/8083565931880894578/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/02/iphone.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/8083565931880894578'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/8083565931880894578'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/02/iphone.html' title='それで本業であるiPhoneのアプリ開発なんだけど'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-2013177106203688413</id><published>2010-02-08T03:14:00.002+09:00</published><updated>2010-02-15T00:46:20.174+09:00</updated><title type='text'>flying tweetその後といまなにしてるの？</title><content type='html'>いやぁ、最後にブログ書いてからすでに３ヶ月近く経ってしまった。&lt;br /&gt;ちょいと本業を本気でやっていたので、flying tweetをぜんぜんやってなかった（汗&lt;br /&gt;盛大にバグってるまま公開放置してたから、もうだれも使ってくれてないようだ。実際自分でも使ってないし。。。。&lt;br /&gt;&lt;br /&gt;で、その本業のほうなんだけど、いまさらながらiPhone/iPodのアプリ開発を始めたのです。&lt;br /&gt;去年の夏くらいから受注の仕事が全くなくなってしまって、収入の見通しがたたなくなってしまい、世の中不景気なので営業かけたところでそうそう受注仕事があるわけでもないし、現在住んでいる地域ではそんなもの壊滅的な状態。&lt;br /&gt;&lt;br /&gt;なので、「こんな時こそ自分中心でできるものを作っておくべきだよな」とおもい、以前に作っていたwebサービスの展開を考えたり、現場復帰をちょっと希望している組み込み系マイコンやFPGAを触ってみたりとしていたのだけど、どうせやるならワールドワイドに展開したいの思いが強いので、今更ながらiPhone/iPodのアプリ開発をやってみることにした。&lt;br /&gt;&lt;br /&gt;実際は11月に嫁さんがiPod 3GSに機種変して実際に触ってみて面白かった。ってのが要因なんだけど、 昔とった杵柄でMacの(Macで)プログラムを書くこと(といってもSystem8ぐらいまでだが)に抵抗はないし、NeXTだってちっとは触っていたので、どうにかなるでしょう。。。と、相変わらず甘い考えで手を出しましたw&lt;br /&gt;&lt;br /&gt;てことで、flying tweetはもちっと時間に余裕ができたら、開発再開したいと思っていますが、いまはちとペンディングにしといてください　_o_ 　&amp;gt;　関係各位&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-2013177106203688413?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/2013177106203688413/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/02/flying-tweet.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/2013177106203688413'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/2013177106203688413'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2010/02/flying-tweet.html' title='flying tweetその後といまなにしてるの？'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-4273332441278015119</id><published>2009-11-20T10:08:00.001+09:00</published><updated>2009-11-20T10:11:35.601+09:00</updated><title type='text'>flying tweet alpha5はメモリ喰らい (バグか？)</title><content type='html'>&lt;div style="font-family: Verdana,sans-serif;"&gt;自分でも(てか、自分だけ？)alpha5を試しているのだが、クライアントがどうも「メモリ喰らい」の感がある。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;一応、クライアント側はnow/friends/mentiosのそれぞれのメッセージを最大200件づつまで持てるようになっていて、余計なメモリ確保をしないようにしているつもりなのだが、動作途中でつくられるオブジェクトの解放がされないのか、どんどんメモリを消費しているようだ。firefoxでしかためしてないけど。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;JavaScriptだから動的なメモリ確保は言語任せだし、オブジェクトの参照がなくなればメモリは解放されるはずではあるのだが、どうもそうなってはいないみたい。 どこかで参照が残り続けてるのかもしれない。これは困った。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;通常のwebページであれば、継続的に表示されつづけることはないので、多少メモリリークしていてもブラウザを閉じちゃえば完全に解放される。しかし、webアプリケーションとして提供する場合、比較的長時間、そのページ(webアプリ)を開き続け、さらにそのページ内で動的にいろいろ動作するので、メモリリークは深刻な問題だ。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;手っ取り早い解決方法は、重くなりはじめるポイントを見つけて、そのタイミングでページをリロードしてしまえばいいのだけど、現在のクライアント実装だとリロードするとそれまで溜め込んでいたメッセージ情報も解放されてしまうので、ユーザインタフェース的にはダメだろう。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;解決策として、クライアントの溜め込んだメッセージをサーバ側で保存して、リロード時にそれをクライアントに渡す。という方法を考えたのだが、twitter自身をメッセージのストレージとして使う的な目標もあるので、この方法は本末転倒。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;なんかうまい方法を考えないとなぁー。というか、メモリリークをなくさないとな(^^;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-4273332441278015119?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/4273332441278015119/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/11/flying-tweet-alpha5.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/4273332441278015119'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/4273332441278015119'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/11/flying-tweet-alpha5.html' title='flying tweet alpha5はメモリ喰らい (バグか？)'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-1036120477542456479</id><published>2009-11-18T12:35:00.006+09:00</published><updated>2009-11-18T12:47:45.156+09:00</updated><title type='text'>flyingtweet alpha5</title><content type='html'>&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;まだアルファ版ですよ。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;機能が決定できないのでいつまでたってもアルファ版です。どこぞの「永遠のベータバージョン」よりひどい状況だなｗ。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;で、alpha5。クライアント、サーバとも書き直してみた。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;クライアントのほうはalpha2～4まで、timelineはIFRAMEを使って子ページで実行したいたけど、親子間でデータの受け渡しが面倒になってきたので、YUIのタブ機能を使って１つに納めることにした。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;もともとはファイルを分離すればコードの見通しがよくなるだろう、という単純な発想からIFRAMEつかってみたのだけど、親子間でいろんなデータの受け渡しをするようになってくると、逆に分離されていることの煩わしさが気になり出して、今回、クライアンのト書き直しでJavaScriptのコードが減ったので、まとめてしまうことにした。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;いやぁ、コードのどこからでもデータが参照できるので楽になったよｗ&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;あと OAuthに対応。対応ってか、完全依存。。。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;ログイン後もOAuthのライブラリを使ってtwitter APIを発行するので、APIは完全に依存してしまった。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;ただ、これだとtwitter停止時に独自にメッセージ配信をおこなう。という当初の2大目標のうちの１つが出来なくなってるのよねー、、、いや、できなくはないのだけど、サインインをどうするかを決めてないので、結局、このバージョンでは出来てないわけです。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;flying tweet側で会員登録するのでは本末転倒だし、なんか安くてうまい方法あればなー。OAuth認証されたら、｢認証済みだよ」cookie設定しておいて、twitter停止時はだけそのcookie参照すればいいかな。twitter停止時だけ利用するなら、そんなに悪利用されることもないだろう。ん？悪用はないよな？　たぶんないよな？なければいいな。。。あったらどうしよう。。。。。。。(T_T)&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;で、TLは最大200メッセージまで保持できるんだけど、現バージョンは20固定。最大TL数は内部では変数でもっているので単に手抜きで20で固定しちゃっている状態。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;timelineのアップデートインターバルなんかもそうなんだけど、ここらへんはクライアント側の設定画面で変更できるようにするつもり。表示や回線負荷は個人の環境に左右されるからね。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;サーバ側はベースの考え方に 変更はないんだけど、フォローしていない第3者にreplyメッセージが配信されちゃうって不具合があったので、その対策。これはtwitterのfriends_timelineと同じ動作になるように工夫した。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;本当にこれは工夫が必要。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;flying tweetは全twitter会員のfollowerリスト持ってるわけじゃないから、だれがだれ宛にメッセージを配信するかの判断をさせるのは結構面倒な処理だった。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;それと、サーバへのアクセス方法はweb API化した。twitter絡みのアクセスはほぼtwitter API互換。flying tweetの大本の発想はサーバ側からでたものだったので、クライアントは単にサーバの動きを確認してもらうためのツールでしかない。なのでこのAPIを使ってクライアントをつくってもらえたらうれしいな。という甘い考えが本音ｗ。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;てなわけで、alpha5は大幅な刷新がなされているわけです。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;つまり、新規のバグもたくさん含んでいるということ！！そこをご注意のうえ、ご利用いただければと思います　：）&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;a href="http://site2.ohneta.net/"&gt;flying tweetへ&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-1036120477542456479?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/1036120477542456479/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/11/flyingtweet-alpha5.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/1036120477542456479'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/1036120477542456479'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/11/flyingtweet-alpha5.html' title='flyingtweet alpha5'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-6712175935386458660</id><published>2009-11-14T04:05:00.002+09:00</published><updated>2009-11-18T12:51:10.588+09:00</updated><title type='text'>書き直し中</title><content type='html'>&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;flying tweetを書き直してます。alpha4まではいろいろ試行錯誤してたので、クライアント側のコードがグチャグチャで見通しは悪いし、メモリリークっぽい動きはするし、えらく重くなったりするし、、、と、ちょっと動作が残念な状況になっていたので。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;サーバ側はけっこうシンプルですっきりできているので、根本的には手を入れるつもりはないのだけど、ちょっとおもしろいこと思いついたので、それを入れておこうかなと。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;あ、あとtwitterのOAuth登録したので、次期バージョンからはOAuthログインできる予定。&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-6712175935386458660?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/6712175935386458660/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/11/blog-post.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/6712175935386458660'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/6712175935386458660'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/11/blog-post.html' title='書き直し中'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-1610263420247917883</id><published>2009-11-12T07:16:00.007+09:00</published><updated>2009-11-18T12:51:57.454+09:00</updated><title type='text'>quick tweet  → flying tweet  早速名称変更</title><content type='html'>&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;quick tweetはあんちょくに名付けてしまったのです。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;だって、quickにtweetできるから。。。。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;α版を公開してから気づいたけど、「QuickTweet」って名称のtwitterプロダクトは結構あるようで、すでにiPhoneとかでは有名らしいので、早々、名称を変更。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;結構悩んだ(約1時間)末、またogochanから「Flying Twitterでいいんでねの？」的に提案があったので、それで、、とも思ったのだけど、名称に「Twitter」が入ってるのは問題かな？と。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;一応、今後のことも考えてTwitterのOAuthを実現するつもりなのだけど、その申請時にサイトの名称を登録しなければならないので、へたに刺激しないほうがいいかなとおもって無難に &lt;span style="font-size: 180%; font-weight: bold;"&gt;flying tweet &lt;/span&gt;としてみた。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;ちなみに全部小文字で書くのが正式です。なぜだかわかりませんけど。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;ということで、今後は flying tweet として開発していきます。てか、開発継続なの？本当に？(汗&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-1610263420247917883?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/1610263420247917883/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/11/quick-tweet-flying-tweet.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/1610263420247917883'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/1610263420247917883'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/11/quick-tweet-flying-tweet.html' title='quick tweet  → flying tweet  早速名称変更'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-432045974885485410</id><published>2009-11-11T17:03:00.006+09:00</published><updated>2009-11-18T12:52:24.516+09:00</updated><title type='text'>quick tweet (仮称)を作成中</title><content type='html'>&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;ご多分にもれず&lt;a href="http://twitter.com/ohneta_"&gt;私もtwitterを使ってる&lt;/a&gt;わけですが、time line(TL)の表示のタイムラグやサイトが重くなってサービスがつかえない。ってことが結構頻発してる。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;で、まぁ、twitterってそんなものだよなぁー的に思っていたのだけど、twitterでfollowingしている&lt;a href="http://twitter.com/ogochan"&gt;ogochan&lt;/a&gt;が「メッセージの配信をtwitterにまかせるのではなく独自にやっちゃえばいいんでね？」的なことをつぶやいているのを読んでちょっと興味があったので実験しながら作ってみることにした。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;以前からtwitterのクライアントだとか自サーバを介してのサービスだとか実験的には作っていたので、twitterへのアクセスは比較的簡単に実現。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;自サーバ経由でAPIを呼び出すと呼び出し制限数にすぐにひっかかるので、webクライアントからAPIを呼び出して結果を自サーバに送りつけて自サーバ側でTL管理とか以前つくったものがあるので、これらを整理して、ちょろっと作ってみたのがこれ。&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;a href="http://site2.ohneta.net/"&gt;http://site2.ohneta.net/&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;ユーザインタフェースとかまったくアイディアがなかったので作りながら考えてるとこあるので、リリースごとに極端に画面や機能が変わることがあるのでお気をつけてｗ&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-432045974885485410?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/432045974885485410/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/11/quick-twet.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/432045974885485410'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/432045974885485410'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/11/quick-twet.html' title='quick tweet (仮称)を作成中'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-8157249485849705308</id><published>2009-10-28T09:00:00.002+09:00</published><updated>2009-10-28T09:14:21.376+09:00</updated><title type='text'>python3/mod_wsgiで日本語表示</title><content type='html'>python3 (python3.1.1)＋mod_wsgiで日本語なページを表示しようとしたら、なんかエラーがでたので、もろもろ調べて対策してみた。&lt;br /&gt;&lt;br /&gt;その顛末を自分のwikiページにまとめたよ。&lt;br /&gt;&lt;a href="http://www.ohneta.net/wiki/index.php?python3%2Fmod_wsgi%E3%81%A7%E6%97%A5%E6%9C%AC%E8%AA%9E%E8%A1%A8%E7%A4%BA"&gt;&lt;span class="small"&gt;http://www.ohneta.net/wiki/index.php?python3%2Fmod_wsgi%E3%81%A7%E6%97%A5%E6%9C%AC%E8%AA%9E%E8%A1%A8%E7%A4%BA&lt;/span&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-8157249485849705308?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/8157249485849705308/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/10/python3modwsgi.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/8157249485849705308'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/8157249485849705308'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/10/python3modwsgi.html' title='python3/mod_wsgiで日本語表示'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-26976933968463231</id><published>2009-09-09T07:23:00.004+09:00</published><updated>2009-09-09T07:32:55.110+09:00</updated><title type='text'>いろいろ集めてみる。</title><content type='html'>&lt;span style="font-family:webdings;"&gt;mixiの日記機能が閉じた環境なので、friendfeedに繋いでみた。&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:webdings;"&gt;これなら、twitterもbloggerもはてなもまとめてmixi側に出すことができるとおもう。&lt;br /&gt;&lt;br /&gt;問題はmixi自身がfeedの反映が遅いってことか。&lt;br /&gt;friendfeedはなんであんなに反映がはやいの？pingしてるのかな？&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-26976933968463231?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/26976933968463231/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/09/blog-post_09.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/26976933968463231'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/26976933968463231'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/09/blog-post_09.html' title='いろいろ集めてみる。'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-3317208905469139501</id><published>2009-09-05T08:14:00.015+09:00</published><updated>2009-09-05T09:29:15.111+09:00</updated><title type='text'>関数型言語わかりましぇーんｗ</title><content type='html'>&lt;span style="font-family:arial;"&gt;やっぱLisp使いってかっこいいじゃない？20年くらい前かなぁ、、、Franz Lispの人(もちろん外国人w)とちょっとだけ仕事したことあったんだけど、やっぱLispで食っている人は、私らマイコンあがりからしたら別世界の人だった。&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;当時はMIT震源地のLispブームみたいのもあったので憧れだったりと。。。&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;で、この20年くらいLispかっこいいなぁ、関数型言語すげーなー、、などと思いながらも、仕事ではC→C++→Java(webに転向)→Perl→PHP/JavaScript って感じでメイン言語を渡り歩いてきたので、まったく関数型言語を使う機会がなかったわけ。関数型言語を使うような仕事って、私がいたような環境ではありえなかった。&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;ところが、ここ最近、日本ではrubyでなんかする。ってのが流行りだしてきている。rubyってぜんぜん詳しくないのだけど、ちょっとみLispを現代的なセンテンスで書き直したって感じ？と思っていたりしたのだ。&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;それから、なんかHasｋellやOCamlが話題だし、MicrosoftがF#を出してきたりと、関数型言語を実際の仕事として使える環境が整いだしてきたような気がする。&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;さらに言えば、いままで使ってきた言語類もその拡張でイテレータが普通に使えたり、lambdaできるようになったり、FirstClassObjectが使えたりと関数型言語の特徴が取り入れられてきていることで、だんだん関数型言語が身近になってきている。&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;特にJavaScript。こいつ、あまり好きな言語ではないのだけど、それはなぜかというとwebでHTML書くときに使うから。&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;webではデザインとロジックを分離して書くのが主流の現在、HTMLの修飾のために使われていたりするので「どうもなぁ～」と思っていたのだけど、単純に言語としてみるとそれはそれでよくできている。DOM内蔵してるしねｗ。&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;で、いま、JavaScriptを触っている人が大量にいるわけで、JavaScriptの現代的な記法に慣れた人にとって関数型言語の概念は結構すんなりと入っていくのではないかと思うわけです。&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;かく言う私は、それはもう旧態然とした脳なのでなかなかハードルが高いのだが、やはり関数型言語を華麗に操るプログラマはかっこいいわけで、&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;やらないわけにはいかない！&lt;/span&gt;&lt;span style="font-family:arial;"&gt;ってのがここんとこのキモチ。&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;とはいえ、食っていくためにはPHPもやるしPythonだってやるさー。しゃーねーもんっ！&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-3317208905469139501?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/3317208905469139501/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/09/blog-post_1795.html#comment-form' title='1 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/3317208905469139501'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/3317208905469139501'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/09/blog-post_1795.html' title='関数型言語わかりましぇーんｗ'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-6019792733827166174</id><published>2009-09-05T03:33:00.002+09:00</published><updated>2009-09-05T03:46:36.733+09:00</updated><title type='text'>ううーーポータビリティにならない。。。</title><content type='html'>ハード的に同一サーバ上で開発環境とステージング環境を提供している。(実行環境)&lt;br /&gt;しかも、初期化情報ファイルをweb側とバックグランドバッチ処理側で共通化している。(ファイル環境)&lt;br /&gt;&lt;br /&gt;これが面倒なことこのうえない。&lt;br /&gt;実行環境を切り替えるためにスクリプト内でdefineしている部分があるのだが、それをインクルードするファイルのディレクトリはファイル環境によって変えなければならない。つまり環境によってディレクトリが変わるが、ディレクトリの指定は環境を前提にしている。。。。なにをいいたいのかわかりづらいな、、、&lt;br /&gt;&lt;br /&gt;んま、端的にいえば、条件が２重になっていて、それぞれが依存関係にあるので、共通化できないのだ。&lt;br /&gt;&lt;br /&gt;これは非常にこまった。&lt;br /&gt;環境変数とかで指定する方法もなきにしもあらずなのだが(実際、ほかのサイトではそうやってるものもある)、サーバ環境に依存しないポータビリティを追求している(していた)ので、ここで妥協するのはちと悔しいのだ。&lt;br /&gt;どうにかならんもんかなーーー。&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-6019792733827166174?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/6019792733827166174/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/09/blog-post_05.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/6019792733827166174'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/6019792733827166174'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/09/blog-post_05.html' title='ううーーポータビリティにならない。。。'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-4996912612397893061</id><published>2009-09-01T02:20:00.003+09:00</published><updated>2009-09-01T02:32:04.672+09:00</updated><title type='text'>こうなんか、漲らない</title><content type='html'>なんかねー、ここ数日、本業以外のとこでいろいろ面倒な細かいことがあって、まとまった時間がとれない。&lt;br /&gt;プログラミングなんてまとまった時間がないと進まないものだから、どうもダメだねぇ。&lt;br /&gt;で、中途半端な時間で作業しても、中断されたとこから元に戻すのに、またいくらかの時間がかかる。&lt;br /&gt;&lt;br /&gt;頭の思考を100%プログラミングに向けないと仕事できないようだな。わたしは。&lt;br /&gt;自分ではコントロールできない状況をすごく嫌っているようだ。&lt;br /&gt;&lt;br /&gt;と気づかされるここ数日であった。&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-4996912612397893061?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/4996912612397893061/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/09/blog-post.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/4996912612397893061'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/4996912612397893061'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/09/blog-post.html' title='こうなんか、漲らない'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-678172190370627578</id><published>2009-08-17T13:58:00.007+09:00</published><updated>2009-08-19T06:26:17.576+09:00</updated><title type='text'>結論は別RDBMSをqueueにみたてて読み書きGo!Go!</title><content type='html'>結論からすると、RDBMS自身がネットワーク越しに接続できるのだから、それを利用しようということになりました。&lt;br /&gt;messageに対して１対１で処理プロセスが走るならメモリ上のqueueでもいいのだろうけど、1つのmessageで複数の情報を生成するつもりなのでね。あ、あとqueueからmessageを消すタイミングは時間ベースでやるし、リレーションしやすいというかすでに慣れてるRDBMSのSQLでやろうかなと。&lt;br /&gt;&lt;br /&gt;さー、DBのschemaガチガチに固めなければ、、、いまどきっぽくないですけどっ！(T_T)&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-678172190370627578?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/678172190370627578/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/rdbmqueuegogo.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/678172190370627578'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/678172190370627578'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/rdbmqueuegogo.html' title='結論は別RDBMSをqueueにみたてて読み書きGo!Go!'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-389252002932711944</id><published>2009-08-16T17:56:00.006+09:00</published><updated>2009-08-19T06:24:07.530+09:00</updated><title type='text'>で、いろんなfeedを提供したいのだが、</title><content type='html'>いろんな切り口でRSSってかfeedを提供したいのだが、message queueに入ってる情報をどう使うかはクライアント(この場合、提供するfeed情報を生成する)プログラム側の処理次第。&lt;br /&gt;&lt;br /&gt;で、じゃ、いつまでqueue内の情報は残しておけばいいの？ってのが問題。&lt;br /&gt;クライアントプログラムがどのように切り込んでくるかはわからない状態だと、永遠にすべて残しておかないといけなくなる。さすがにそれは無理ぽ。&lt;br /&gt;だとすると、やはり先に生成するfeed情報を決めておかなければならない。そうしないとqueue内のデータがいるのかいらないのか判断をつける材料がないもの。&lt;br /&gt;&lt;br /&gt;さーて、困った。&lt;br /&gt;どこまでほしいんだ？個人的には what's new と 個別テーマくらいでいいかなとは思うのだけど、mylistの更新情報もfeedでほしい気がする。&lt;br /&gt;他にも共通グループでのfeedもほしいかもな、、、グループは大枠できてるし、このまま採用されるだろうから、それも考慮しておいたほうがいいよな。&lt;br /&gt;あー、だれそれさんって個人ののfeedもほしいかなー。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;feed集めて表示してるfriend feedとかfacebookとかはどうやってるんだろうか？&lt;br /&gt;動的に取ってるわけでもないだろうし。。。むむー、悩むぅ～～～～&lt;br /&gt;&lt;br /&gt;だいたい提供するfeedそんなに多くていいのか？ mylistを分類できるようにしといて、それをfeedすればよくね？「feedしたかったらmylistに登録しやがれ、このヤロウ！」と言い切れるしｗ。&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-389252002932711944?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/389252002932711944/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/feed.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/389252002932711944'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/389252002932711944'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/feed.html' title='で、いろんなfeedを提供したいのだが、'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-5030752103521807022</id><published>2009-08-14T22:41:00.005+09:00</published><updated>2009-08-19T06:21:29.637+09:00</updated><title type='text'>でだ、</title><content type='html'>そうなってくると、更新のタイミングで処理するものが多くなってレスポンスが悪くなるのがみえみえ。&lt;br /&gt;まだ、ユーザが少ないので更新なんてそうそう発生してないから、マシンパワー使いたい放題だけど、ユーザが増えてきたらここらへんが効いてきそうだなーと。60万PV/日の携帯サイトをやってた経験からね。&lt;br /&gt;&lt;br /&gt;なので、リアルタイムで更新する必要のないものは、チマチマとバックグラウンドで処理しようかなと。RSS の書き出しとかtwitterでつぶやきとか。(RSSつける前にtwitterのつぶやきI/Fをつけたあたり今時でしょ？ｗ)&lt;br /&gt;&lt;br /&gt;ということで、そんなときは、メッセージキューだよな、と。IPCだと同一マシン(ていうかOSのインスタンス)内でしか利用できないので、それは却下。ネットワーク越しにできたほうがいいじゃない？いまは利用しなくても将来的に絶対に。&lt;br /&gt;てことでActiveMQやらRabbitMQやらを調べていたのだけど、結構面倒そう。Java環境入れなきゃならんしねー。もちっと軽量なのないかなぁー。&lt;br /&gt;&lt;a href="http://ja.wikipedia.org/wiki/Apache_ActiveMQ" title="Apache ActiveMQ"&gt;&lt;br /&gt;&lt;/a&gt;&lt;a href="http://www.rabbitmq.com/" class="external text" title="http://www.rabbitmq.com/" rel="nofollow"&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-5030752103521807022?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/5030752103521807022/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/blog-post_14.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/5030752103521807022'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/5030752103521807022'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/blog-post_14.html' title='でだ、'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-2698872864691119576</id><published>2009-08-14T22:26:00.005+09:00</published><updated>2009-08-14T23:10:37.163+09:00</updated><title type='text'>でけた。RSS</title><content type='html'>なんと、問題はURLの&amp;amp;でした。xmlを書かなくなって久しいので、こんな問題にひっかかってましたよ。とほほ。つか、HTMLは普段書いてるんだから、意識しろよ＞おれ。&lt;br /&gt;&lt;br /&gt;てわけで、とりあえず what's new をRSS1.0で書き出せるような仕組みはできた。&lt;br /&gt;あと、個別のテーマ更新もそれを追ってる人向けにRSSできればなぁ、、とおもい、更新のタイミングをトリガとしてRSSファイルをベースにした更新履歴を考えたのだが、そうなると、RSS1.0よりもRSS2.0のほうが簡単な処理で済みそうなので、RSS2.0ベースで全体で使えるユーティリティクラス化してみた。&lt;br /&gt;&lt;br /&gt;当初、node操作なんぞせずに、ベタにXMLファイルを書き出すつもりだったけど、node操作しないと履歴操作できないから、結局DOMでガリガリにXML操作するハメになったし。。。実に10年ぶりくらいにDOMでXML操作したよ。はじめてつくった携帯サイトがXMLバリバリでつくったヤツなので、あれ以来。いやぁ、XPathだとか便利なものも揃ってるし、いいね。いまどきのXMLは。&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-2698872864691119576?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/2698872864691119576/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/rss.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/2698872864691119576'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/2698872864691119576'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/rss.html' title='でけた。RSS'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-4342210740515742810</id><published>2009-08-13T15:07:00.002+09:00</published><updated>2009-08-13T15:40:49.738+09:00</updated><title type='text'></title><content type='html'>ハート型のビーズに黙々と糸を通していく娘、３才。&lt;br /&gt;&lt;br /&gt;すでに５０個くらいは通したようだ。&lt;br /&gt;色はバラバラだが、すべて同じ方向に通してるぞ、、、&lt;br /&gt;&lt;br /&gt;なんかチマチマした作業が好きなのか？&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-4342210740515742810?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/4342210740515742810/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/blog-post_3784.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/4342210740515742810'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/4342210740515742810'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/blog-post_3784.html' title=''/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-8297833542062532714</id><published>2009-08-13T09:42:00.003+09:00</published><updated>2009-08-19T06:18:51.318+09:00</updated><title type='text'>自分がダメだと思う瞬間</title><content type='html'>エロサイトを見ていて大量のサンプルムービーを見つけて、その一括ダウンロードスクリプトを書いているとき。特にJavaScriptとか絡めれ て簡単にぶっこ抜きできなくしてるようなサイトを攻略してるとき。&lt;br /&gt;&lt;br /&gt;すべてのしがらみを振り切って、一心不乱にサイトの構造とかファイルの規則性だとか見つけ出したり、HTMLやJavaScriptを読んでどう動いてるか調べてるときに、ふっと我に返ってしまうと「ああ、おれ、ダメじゃね？」と思う。&lt;br /&gt;だが、そんなものは一瞬なので、すぐに作業に戻るのだがｗ。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;てか、その情熱を生産的ななにかに向けろよ、、、４２才のおれ。(汗&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-8297833542062532714?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/8297833542062532714/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/blog-post_788.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/8297833542062532714'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/8297833542062532714'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/blog-post_788.html' title='自分がダメだと思う瞬間'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-8647667639928590651</id><published>2009-08-13T09:26:00.003+09:00</published><updated>2009-08-13T09:29:51.139+09:00</updated><title type='text'>やっぱいまどきのサービスを作ってるんだから</title><content type='html'>feedできなきゃね。とおもい、RSSを自動生成しようとしてるのだが、&lt;br /&gt;なんかうまくないのです。&lt;br /&gt;&lt;br /&gt;ひとんちのサービスが提供してるRSSファイルを参考にいぢってみたりもしたのだが、&lt;br /&gt;まるまるコピーする分にはうまくいくけど、大幅に項目削除して縮小版とかつくってみるとうまくいかなくなる。&lt;br /&gt;&lt;br /&gt;なんでかなぁ～。もちっと悩んでみるかぁ...(T_T)&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-8647667639928590651?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/8647667639928590651/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/blog-post_13.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/8647667639928590651'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/8647667639928590651'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/blog-post_13.html' title='やっぱいまどきのサービスを作ってるんだから'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-7601353551571601293</id><published>2009-08-12T14:51:00.003+09:00</published><updated>2009-08-12T15:09:26.349+09:00</updated><title type='text'>私の中のmixi終了のお知らせ。</title><content type='html'>私の中ではmixiは利用価値が激低下。&lt;br /&gt;単なる知り合いのblogのfeedの価値ぐらいしかない。&lt;br /&gt;あ、ときたま２ホップ以上の知り合いで近しくなりたい人はでてくるけど、んま、それもmixiである必要はなし。私がwebサービスに求めるものがmixiでは実現できないので、利用価値激減。&lt;br /&gt;&lt;br /&gt;ユーザ側の要望（つか進歩？）をフォローしきれなかったmixiさん、敗北です@私の中。&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-7601353551571601293?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/7601353551571601293/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/mixi.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/7601353551571601293'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/7601353551571601293'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/mixi.html' title='私の中のmixi終了のお知らせ。'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-2393354756181677569</id><published>2009-08-12T12:03:00.003+09:00</published><updated>2009-08-19T06:16:18.368+09:00</updated><title type='text'>AmazonEC2 postfix submisson 設定時のメモ</title><content type='html'>ローカルのPCのHDDが吹っ飛んだりした場合、メモをなくすと困るのでブログに書いとく。&lt;br /&gt;---------------------------&lt;br /&gt;■環境&lt;br /&gt;amazon ec2 m1.small&lt;br /&gt; (fedora x86/32bit インスタンス)&lt;br /&gt;&lt;br /&gt;submmision port = 587&lt;br /&gt; TCP/UDPの両方が必要&lt;br /&gt;&lt;br /&gt;MTA is postfix.&lt;br /&gt;&lt;br /&gt;■submission portを開ける&lt;br /&gt;&lt;br /&gt; /etc/postfix/master.cf&lt;br /&gt;#submission inet n - n - - smtpd&lt;br /&gt;↓&lt;br /&gt;submission inet n - n - - smtpd&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;■SMTP Authする&lt;br /&gt;/etc/postfix/main.cf&lt;br /&gt;&lt;br /&gt;smtpd_sasl_auth_enable = yes&lt;br /&gt;smtpd_sasl_local_domain = $mydomain&lt;br /&gt;#smtpd_sasl_local_domain = $myhostname&lt;br /&gt;smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination&lt;br /&gt;smtpd_sasl_security_options = noanonymous&lt;br /&gt;broken_sasl_auth_clients = yes&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;aws EC2 の fedora8 Basicでは sasl2はデフォルトインストールっぽい....&lt;br /&gt;一応、確認...&lt;br /&gt;&gt; # cat /usr/lib/sasl2/smtpd.conf&lt;br /&gt;     &gt; pwcheck_method: saslauthd&lt;br /&gt;     &gt; mech_list: plain login&lt;br /&gt;&lt;br /&gt;いらない&lt;br /&gt;&lt;span style="color: rgb(192, 192, 192);"&gt;mkdir /var/state/saslauthd&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(192, 192, 192);"&gt;chmod 700 /var/state/saslauthd&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(192, 192, 192);"&gt;chown postfix /var/state/saslauthd&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;saslauthd で使用可能なメソッドを確認。&lt;br /&gt;&gt;# /usr/sbin/saslauthd -v&lt;br /&gt;&gt;saslauthd 2.1.22&lt;br /&gt;&gt;authentication mechanisms: getpwent kerberos5 pam rimap shadow ldap&lt;br /&gt;&lt;br /&gt;とりあえずpamで運用。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; sasl2の起動&lt;br /&gt;     /etc/init.d/saslauthd start&lt;br /&gt;&lt;br /&gt; 動作してることを確認&lt;br /&gt;&gt; # ps ax | grep saslauthd&lt;br /&gt;&gt; 31697 ?        Ss     0:00 /usr/sbin/saslauthd -m /var/run/saslauthd -a pam&lt;br /&gt;&gt; 31699 ?        S      0:00 /usr/sbin/saslauthd -m /var/run/saslauthd -a pam&lt;br /&gt;&gt; 31700 ?        S      0:00 /usr/sbin/saslauthd -m /var/run/saslauthd -a pam&lt;br /&gt;&gt; 31701 ?        S      0:00 /usr/sbin/saslauthd -m /var/run/saslauthd -a pam&lt;br /&gt;&gt; 31702 ?        S      0:00 /usr/sbin/saslauthd -m /var/run/saslauthd -a pam&lt;br /&gt;&lt;br /&gt;postfixの再起動&lt;br /&gt;     /etc/init.d/postfix restart&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;----------------------------------&lt;br /&gt;■popperの設定&lt;br /&gt;dovecot.i386&lt;br /&gt; dovecot-devel.i386&lt;br /&gt;&lt;br /&gt;&gt;# yum install dovecot.i386 dovecot-devel.i386&lt;br /&gt;&lt;br /&gt;/etc/init.d/dovecot start&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;----------------------------------&lt;br /&gt;■EC2の Security Groupsの設定&lt;br /&gt;メール関連部分のみ抜粋&lt;br /&gt;&lt;br /&gt; C/Method  Protocol   FromPort   ToPort    Source&lt;br /&gt; POP3      tcp        110        110       0.0.0.0/0&lt;br /&gt; SMTP      tcp         25         25       0.0.0.0/0&lt;br /&gt; -         tcp        587        587       0.0.0.0/0&lt;br /&gt; -         udp        587        587       0.0.0.0/0&lt;br /&gt;&lt;br /&gt;----------------------------------&lt;br /&gt;&lt;br /&gt;■動作確認&lt;br /&gt;自ホストから....&lt;br /&gt; &gt;# nmap localhost&lt;br /&gt; &gt;&lt;br /&gt; &gt;Starting Nmap 4.52 ( http://insecure.org ) at 2009-08-12 02:36 UTC&lt;br /&gt; &gt;Interesting ports on localhost.localdomain (127.0.0.1):&lt;br /&gt; &gt;Not shown: 1705 closed ports&lt;br /&gt; &gt;PORT     STATE SERVICE&lt;br /&gt; &gt;22/tcp   open  ssh&lt;br /&gt; &gt;25/tcp   open  smtp&lt;br /&gt; &gt;80/tcp   open  http&lt;br /&gt; &gt;110/tcp  open  pop3&lt;br /&gt; &gt;143/tcp  open  imap&lt;br /&gt; &gt;587/tcp  open  submission&lt;br /&gt; &gt;993/tcp  open  imaps&lt;br /&gt; &gt;995/tcp  open  pop3s&lt;br /&gt; &gt;5432/tcp open  postgres&lt;br /&gt; &gt;&lt;br /&gt; &gt;Nmap done: 1 IP address (1 host up) scanned in 0.155 seconds&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;外から...&lt;br /&gt; &gt;$ nmap さーばあどれす&lt;br /&gt; &gt;&lt;br /&gt; &gt;Starting nmap 3.70 ( http://www.insecure.org/nmap/ ) at 2009-08-12 11:54 JST&lt;br /&gt; &gt;Interesting ports on さーばあどれす:&lt;br /&gt; &gt;(The 1654 ports scanned but not shown below are in state: filtered)&lt;br /&gt; &gt;PORT    STATE  SERVICE&lt;br /&gt; &gt;22/tcp  open   ssh&lt;br /&gt; &gt;25/tcp  open   smtp&lt;br /&gt; &gt;80/tcp  open   http&lt;br /&gt; &gt;110/tcp open   pop3&lt;br /&gt; &gt;587/tcp open   submission&lt;br /&gt; &gt;&lt;br /&gt; &gt;Nmap run completed -- 1 IP address (1 host up) scanned in 35.845 seconds&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-2393354756181677569?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/2393354756181677569/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/amazonec2-postfix-submisson.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/2393354756181677569'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/2393354756181677569'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/amazonec2-postfix-submisson.html' title='AmazonEC2 postfix submisson 設定時のメモ'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-2452385147989278571</id><published>2009-08-11T20:45:00.003+09:00</published><updated>2009-08-11T20:58:30.795+09:00</updated><title type='text'>メールサーバ移行の手順メモ for 自分</title><content type='html'>旧DNS&lt;br /&gt;MX=旧サーバ&lt;br /&gt;TLLを300程度にする。浸透するまで待つ。(いまのままだと10時間程度)&lt;br /&gt;&lt;br /&gt;■新サーバ&lt;br /&gt;新DNSをたてておく&lt;br /&gt;&lt;br /&gt;SMTP AUTH/TSLでpostfixを入れる。&lt;br /&gt;旧サーバと同等のアカウントを作る。&lt;br /&gt;旧サーバと同等のmain.cf/virtual/aliasを用意する&lt;br /&gt;(virtualで旧サーバのアカウントをフォローしておく)&lt;br /&gt;&lt;br /&gt;別ドメイン名の新旧DNSのMXを新サーバに向け、それで送受信ができることを確認。&lt;br /&gt;-----------------&lt;br /&gt;&lt;br /&gt;旧サーバMTA停止&lt;br /&gt;DNSのMXを新サーバに向ける&lt;br /&gt;&lt;br /&gt;10分程度待ってで新サーバにメールがとどくかどうかチェック&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ドメイン名のレジストラにDNSの変更通知(新DNSに変更)&lt;br /&gt;了承がとれたら、旧DNS停止&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;以上。&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-2452385147989278571?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/2452385147989278571/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/for.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/2452385147989278571'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/2452385147989278571'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/for.html' title='メールサーバ移行の手順メモ for 自分'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-9219118939503487990</id><published>2009-08-11T09:54:00.005+09:00</published><updated>2009-08-17T16:18:57.106+09:00</updated><title type='text'>FriendFeedが買われた。</title><content type='html'>んま、企業の売買はよくあることなので、珍しくもなんともないのですが、買ったのはFacebookですか。&lt;br /&gt;金に困って売った。的なものではないようなので。&lt;br /&gt;&lt;br /&gt;なんていうんですか、feedを集めて１つのコンテンツにする。って最近のはやり、名称はよくわかりませんが。この手のサービスは、元ネタ提供の他のサービスから独立した位置にあって成立しているのでおもしろいとおもっていたのですよ。&lt;br /&gt;&lt;br /&gt;あ、ああ、あれだ。mixiがなんでもかんでも囲い込んでしまっているのとは対照的な位置ですね。&lt;br /&gt;オープンな感じ。個人の采配で好きなようにサービスが組み合わせられる。という感じ。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;んとね、以前からなんかやれそうだな。とは思っていたんです。んま、自分でやってないのでその時点で負け犬の遠吠えなんですが。&lt;br /&gt;この手のソーシャル系サイトとかブログとかニュースサイトなんかでもいいんですけど、今時的にいえばリアルタイムストリームサイト(？)などの更新が頻繁なものを、個人にどうみせるか。ってインタフェースね。&lt;br /&gt;もう、webでしかサービスが許されないような状況になりつつあるので、やるならweb上で。&lt;br /&gt;&lt;br /&gt;常に集めて、趣味嗜好、現在の興味のターゲットでリアルタイムに分類して、表示方法も工夫。&lt;br /&gt;たとえば、いま興味の中心になっているものは大きく見やすく、情報量多めに。&lt;br /&gt;iTuneとかsafariのUIでCDジャケットやらwebページが3次元的に並んでいて、注視しているところが中心に表示されるヤツあるじゃないですか？あんな感じのもっとイイやつ版。&lt;br /&gt;もちろん、ぼんやりとしか考えてないので、どうすればいいか？なんてわかりませんよ。そりゃ。汗。&lt;br /&gt;でも、あの手のUIで見せてあげれば、人の思考の補助装置としてはとてもよいのではないかなー&lt;br /&gt;と思っていたのです。&lt;br /&gt;&lt;br /&gt;で、その手の可能性としてFriendFeedを使い始めたのですよ。&lt;br /&gt;そしたらその矢先にFacebookによる買収って。&lt;br /&gt;いや、ただ、いまFriendFeedとtumblrに注視してたのでこの話題を書いてるだけです。&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-9219118939503487990?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/9219118939503487990/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/friendfeed.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/9219118939503487990'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/9219118939503487990'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/friendfeed.html' title='FriendFeedが買われた。'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-6313371705755907562</id><published>2009-08-10T21:43:00.001+09:00</published><updated>2009-08-10T21:45:37.139+09:00</updated><title type='text'>ここから</title><content type='html'>&lt;span style="font-weight: bold;"&gt;friendfeed&lt;/span&gt;を経由して&lt;span style="color: rgb(51, 204, 0);"&gt;twitter&lt;/span&gt;にでるのか？&lt;span style=";font-family:courier new;font-size:180%;"  &gt;ほんとに？&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-6313371705755907562?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/6313371705755907562/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/blog-post_10.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/6313371705755907562'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/6313371705755907562'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/blog-post_10.html' title='ここから'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2836050582139613382.post-8021339725638708018</id><published>2009-08-10T15:37:00.001+09:00</published><updated>2009-08-10T15:37:59.127+09:00</updated><title type='text'>よ、わからんちん。</title><content type='html'>よっ！？？？&lt;br /&gt;どう？&lt;div class="blogger-post-footer"&gt;[ブログ更新]&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2836050582139613382-8021339725638708018?l=ohneta-blogger.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ohneta-blogger.blogspot.com/feeds/8021339725638708018/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/blog-post.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/8021339725638708018'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2836050582139613382/posts/default/8021339725638708018'/><link rel='alternate' type='text/html' href='http://ohneta-blogger.blogspot.com/2009/08/blog-post.html' title='よ、わからんちん。'/><author><name>ohneta</name><uri>http://www.blogger.com/profile/00052943055123868909</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/_k_iYu215kSk/Sn_THQOMarI/AAAAAAAAAbo/4lV6jLJqVuc/S220/10995_3187744037.jpg'/></author><thr:total>0</thr:total></entry></feed>
