2008年9月10日水曜日

学習メモ

仕事上勉強しなければならなく、かつ、興味もあるもの
  • iPhoneOSでのアプリ開発およびObjectiveC2.0

仕事上にも役に立ち、かつ、興味があるもの
  • JavaScript全般(I Love It!!)
  • Linuxのソース周りを追う
  • Apacheのソース周りを追う
  • MySQLのソース周りを追う

仕事には直接関係ないが、興味があってどうしてもやりたいもの
  • Lisp, Scheme関連(gauche, mosh)
  • SICP関連
  • FirefoxのGreaseMonkey開発
  • FirefoxのExtension開発
  • Firefoxのソースを追う
  • Chrome周りと特にV8のソースを追う
  • CPUの演算理論の基礎

仕事上勉強しなければならないが、遅延学習でいいもの
  • PHP周り(でもできればPHP自体のソースをみたいがそれは別)
  • Ruby on RailsとRuby関連
  • Python関連とGAE関連
  • その他サーバ周りの知識

本当は上の方から順番で優先度があるんだろうな。

全般的には、前にはあった「抽象的」「設計的」知識より、
より低レイヤーで計算機の物理層に近ければ近い方が興味があるようだ。

C++やJavaでアプリ全体のアプリケーション設計をするより、
低レイヤーのソースまで入り込んで、移植性は劣るけど、ゴリゴリとチューニングすることに興味がある。





2008年9月7日日曜日

久しぶりの外出

ちょっとプロジェクトが落ち着いたので外出してます。相変わらず湿っぽいなー。

秋になったら犬とドライブ行こう。



Posted with LifeCast

ガジェット好きも大概に

DellのNetbookに興味津々である。
バッテリを考えるとEeePC901なんだが(5~8時間)、USキーボードのオプションがあることが大きい。ほかのものに食指が動かないのはUSキーボードのオプションがないからだ。

でも、いろいろモバイル好きなんだが、実はほとんど引きこもり生活でそんなにモバイル環境を厳しく査定するほどモバイル要請が高いわけでもない。これも事実。

実は現在つかってない工人舎のミニノートが2台、EeePcの初代が1台ある。
ここでまたNetBook勝手もすぐに飽きて使わなくなるのは落ちだろう。

実際は家の中に鎮座するMacBookやMacBookProが一番公私ともに活躍しており、お金も稼いでくれてるのだ。使い方はほとんどデスクトップみたいな使い方だ。

って考えると、なんか俺はノートPC自体そんなに必要ないんじゃないかって思えてくる。
前は意識過剰なほどに必ず外出時はノートPCを持って行ったもんだが、現在はiPhoneを持って行くのみである。

まあ、今はお金がないんで遠い先なんだけど、次に買うときはiMacかまだみぬ次期Appleデスクトップ機か、MacProか。とにかく大きいディスプレイがほしいです。

ああ、もうすぐ入金があるんで最近やすくなった大型ディスプレイでも先に買っておこうかな。

Windowsつかってる

Chrome使ってるんで自然につかってる。
といってもMacのVmware上だがパフォーマンスは悪くない。
ちょっと前までは弥生で自分の会社の会計をつけるときとAuの公式CP用Spiceにはいるためだけにしか使ってなかった。

Chromeを使うためにTwitterとwasserクライアントもwindowsに導入したがこれも結構使い勝手がいい。RSS関係はNetNewsWireつかってるんでMacでもWindowsでもiPhoneでも関係ないし。

ということで最近はネット、エンタメ系はWindowsに移行した。
月額300円のAtokも入れた氏これも快適。

さすがに開発は環境慣れとツール慣れがあるんでMacからは離れられないんで、Macで行っている。

そういうわけでMacとWidows on Vmwareってのは今のところベストの環境だな。

WindowsのいいところはキーボードでほとんどのGUI操作を行えること。
昔はゲーム会社にいた頃はVisualStudioとかも使ってたんでそんなにWindows初心者ではないが結構知らないことも多い。でも、結構いろいろいじれる自分にびっくり。

あ、WindowsっていってもXPね。VistaはインストールしたのはほとんどXPにダウングレードした。未だによい印象はない。立ち上げるたびにMacBookProがウィーンってファンのうなり声をあげるって、ドンだけ素の状態でCPUを消費すんのよって。すぐやめた。

またあきたら昔みたいにUbuntu使うかもしれない。
ま、Chrome次第だな。

Chromeをつかってる

TumblrやTwitter,wasserやってるとblog書かなくなる。

Chromeが出てからはそればっか使っている。
単にあたらしもんがすきで飽きるまで集中するタイプだってこともあるけど、結構いまのChromeの使い方が気に入っているみたいなのだ。

メインのマシンはMacなので、VmwareでWindowsをたててフルスクリーンにしてSpacesの一画面を割り振っている。そこでChromeを最大化してタスクバーも自動的に隠すようにしている。

Chrome自体が極力ブラウザとしての存在感をなくすGUIになっているので、この効果は大きい。
まるでMacの一画面がChrome専用の画面となっているのだ。これでロケーションバーが自動的に隠れると本当にタブしかないことになる。ステータスバーは必要なときにしか現れなくなってい。

極力コンテンツ以外のじゃまなものは見せないようにしてるんだな。

で、何を主にみてるかというと、Tumblr。
そう、私のMacの一画面はTumblr専門の画面となっているに等しくなっているのだ。
これは非常に快適である。v4になってよりいっそう画像関係が大きくなったTumblrはでかい画面の方が迫力あるのだ。

こういう効果がChromeにはあるのです。

もちろんいろいろ不便なこともある。
Fxでは当たり前だったTomblooやGreaseMonkeyが使えないのはじつはかなり痛い。
ほかの拡張はさておき本当はそれがかなり痛い。
仕方なく自作のBookmarkletで急場をしのいでいるが、所詮TomblooやGreaseMonkeyとはできることが違うんでどうにもならんこともある。

まあ、この辺は今後のChromeの拡張APIの発表に期待するしかない。
CやC++でしか拡張できないとちょっとつらいけどそれでもいいや。
なんかカスタマイズできるといいな。

ということで、たぶんすぐに飽きると思いますが、少し先にはまたFxを使ってると思います。

2008年7月28日月曜日

外でiPhone使って思う事

実はあんまりiPhoneを購入してから積極的に外で使う機会がなかった。
仕事が自営技術者なもんで、下手するとプログラミングしてて一日中家からでない日が何日も続いたりする。
で、そんな中でiPhoneを使ってると、結構偏った使い方で、主に家のリビングと寝室で横になりながらブラウジングしたりするときに使ったりする事が多かったりする。

数少ない外出の中でiPhoneを使ってみて思った事だが、ヘッドフォンの件。
標準のヘッドフォン、あれ、耳のフィット感が悪くないでしょうか。
マイクの位置は口にデフォルトで近いので非常にそこは良いのだが、耳に入れるプラグの部分が悪いらしく、頻繁に耳からこぼれ落ちる。

やっぱりここは、もっと遮蔽が高くて音のいいヘッドフォンが欲しい所だが、iPhoneで電話の受信や音楽停止と早送りのできる物で、マイクがついている物でないといけない。

色々調べてみると、まだまだ種類がすくないようだ。
一番良いなと思う組み合わせは、「Shure Music Phone Adapter for iPhone」と自分の好きなヘッドフォンを組み合わせるという事のようである。

「Shure Music Phone Adapter for iPhone」は


用はiPhone用でないヘッドフォンをiPhoneに繋げる事のできるアダプタだ。
アダプタの方にマイクとコントローラがついているので、自分の気に入ったヘッドフォンを差し込めばiPhone用として使う事ができる。

これが一番満足度が高そうなのだが、一点だけ気になる事は、マイクの位置が下目すぎないだろうかという事。EMONSTERの時もそうだったが、マイクが下すぎると、通話するときにコードをたぐり上げて口に近づけないといけない。これがどうもクールじゃない。これはAppleStoreで試してみるしか無いかな。

あと思うのが、今まで家の中では無線LANメインで使ってきたのだが、みんなほとんど3Gで通信してる見たいだし、無線LANを切れば電池がセーブできるのと、バックで動く負荷が少なくなり重い動作が解消されるかもしれないと、家の中でも3Gで使ってみる事にした。(3Gだけで動かしてみて何か不具合があるかもしれないというのを見てみたいというのもある。)

実際今の所、3Gも無線LANでも、そう体感速度は大きく変わらないような気がする。
もたつく動作は回線スピードというよりは、CPUの非力な所とそれに最適化できていないOSと言った所だろうか。もう少しつかって状況を見たいと思う。

しかし、家のなかでは3G電波が拾いにくくて非常にむかつく。
なにか3G電波を増強してくれるようなデバイスは無いのだろうか。





2008年7月25日金曜日

iPhoneのバッテリーを買って思う事

最近のエントリにも書いたんだけど、モバイルのバッテリーの持続時間ってそれほど進化してない。
実は進化してるが、それ以上にプロセッサの消費電力が上がっているので、なかなか持続時間が延びない。
やっぱり次のモバイルの大きな進化はおそらく電源供給のブレイクスルーが合ったときなのかもしれない。

例えば,iPhoneにしたってPC的な見地からすると、あれもやりたい、できるべきだって色々思うけど、そういった物を総合すると、あの小ささで今のノートPCの様なスペックを求めているわけだ。フルスペックのPCOSで。でも仮にあの小ささでCore2Duoを積んだとして、バッテリ時間が2時間しか持たないってのはどうよ。モバイルとして本格的に使う事ができないでしょ。

という事は、今のモバイルはある程度クライアント機器の消費電力を考慮した、遅めの(エコな)CPUを積んで、ある程度機能に関しては妥協するってのが現状でしょう。

そうなるとiPhoneもそうなんだけど、モバイル機器に取って肝になってくるのは、処理を肩代わりしてくれるサーバサイドの存在。そしてそれを保証するネットワーク。

やっぱり現在のモバイル機器のバッテリー事情を考えると、サーバサイドの役割ってのはまだまだ絶対的に大きい。

だけども日本の携帯電話のようなwebアプリも今では我慢できない。
あれはあれで、サーバサイドの処理に非常にウェイトを持たせたソリューションで非力かつ消費電力をおさえなくてはいけない携帯電話にとっては全うなソリューションであると思う。

しかし、例えば何かを削除しようとして、リンクかボタンをクリックして3秒待たされてやっとかと思ったら、「本当に削除しますか?」とか聞かれて、再度クリックして3秒またされてやっと削除できるって言う、そういうビート感というのは、もう既に現代のネットに生きる人間には受け入れられないビート感だと思うのです。

せめて確認表示くらいはクライアントで行いたい。
ならJavaScript。でもクライアント負荷が増える。
でもこれくらいなら全然負荷にならない。電力も食わない。
こういったうまいバランス感が、時代のネット感覚にあったビート感をiPhoneは持っていると思うのだ。

大体、いくらサーバサイドソリューションって言っても、画面をいちいち遷移して、その度にブラウザが重複した画面部分も含めて、すべてレンダリングするってのは、携帯端末にとってもエコではない。ブラウザのレンダリング量が増える訳です。

やっぱり画面の必要な部分だけを、再レンダリングさせるってのが、携帯端末の消費電力にとっても、ネットワークにとってもエコなのだ。それと、変更がスピーディーなのでビート感にも合致する。

そういった非同期通信とか意味のあるクライアントサイドの処理ってのには私も大賛成だ。
だからそれは単にトランジションエフェクトとかそういったことだけではない。

サーバサイドの必要性が大きい携帯端末だからこそ、よりいっそう、ネットワークが生命線になる。
だからネットワークをうまく効率的な使い方をして、よりユーザビリティーを高めましょうってこと。

こういった視点は大切だと思う。

まあそれよりもなによりも、いろんな事を考えなくても良いように電源供給の革命的なソリューションが来ないかなって思う次第です。

2008年7月21日月曜日

EMONSTERのOpera9.5がiPhoneのsafariより良い件

Opera Mobile9.5がbetaダウンロードできると言う情報を見て、ただだし(当然だけど)、大した期待も抱かずにダウンロードしてみました。

所がこれが結構使い勝手が良くなっている。
今までのOpera Mobileとは大違いなインターフェイスになっていました。

具体的に言うと、タッチ時代を見据えて、それに真っ向から合わせていったインターフェイスになっています。

ほとんどキーボードで操作する部分はなく、iPhoneのsafariのようにスタイラスでだぶるタップすれば、そのブロックエレメントがゆっくりと拡大、もう一回だぶるタップすると、全体を閲覧。

フリップ操作で縦横スクロール。

動きもスムーズでsafariに全くひけを取りません。

(現時点で)safariより優れている点としては、
・落ちない。
2時間ほどいじっていましたが、一度も落ちる事はありませんでした。タブをいっぱ開いても同様です。

・タブで開いた場合、バックのタブのデータが消えてしまう事がない。
これは大変大きな事です。

google readerはiPhone用と同じページを使うんですが、Ajaxの動きは若干遅い物の、ちゃんと動作してくれます。下までスクロールしていき、リンクをクリックすると次々に次のフィードが足されていきます。1000件くらい記事が足されても全く問題はありませんでした。iPhoneのsafariだとハングしていたかもしれません。

あと、readerで「see originals」をクリックするともと記事のページをポップアップして表示するのですが、mobile safariの場合、表示するページが大きいと、readerの方のキャッシュが消えてしまうという悲惨な状態なのですが、Operaはそんな事はありません。

僕が普段使っているサービスはほとんどOperaで問題ありませんでした。

逆に言うとですね、iPhoneというプラットホームでもやろうとおもえば、同じような堅牢性をsafariの持たせることはできるのではないかと確信しました。

AppStoreばかり注目されるiPhoneですが、ブラウザをなめては行けません。
明らかに何か理由があるのだろうが、Appleは先代のOSから続いているこういったブラウザの不完全性というか使い勝手の悪さをそのまま放置した感じがあります。
こういった使い勝手の悪いブラウザを放置することは、必ず、この先のシェアに大きく影響してくると思います。それほどブラウザは現代のネットにおいては重要な役割を持っていると思います。

既に(僕のような)Appleマンセーな人間を除いてはiPhoneを冷静に判断している人が増えてきているように感じています。そのときに、この使い勝手の悪いブラウザは非常にネックになります。

mobile firefoxに期待しているのですが、間違いなく、windows mobileでは提供されるでしょう。
しかもただで。
しかしiPhoneにはFlashをはじめとしてAppleが方針を変えない限り提供されないでしょう。

ぼくはmobile firefoxに非常に期待しています。
もしこのままAppleがiPhoneでブラウザをsafariだけに独占させ競争状態が起こらない場合、iPhoneはwindowsのIE6のような悲惨な事になってしまいかねないと思います。

その頃にはiPhone熱気も落ち着いているでしょうから、冷静なユーザは、そういった「まともな」ブラウザプラットホームのあるデバイスに移行してしまわないとも限りません。

Appleに僕は二つの事をお願いしたい。
・safariをまともに使えるようにしてほしい。絶対にこれはできるはずだから。
・ブラウザの拡張APIを公開してほしい。でないとmobile firefoxに負けてしまいます。

たったOperaをちょっといじっただけですが、そんな事を考えてしまいました。



アプリケーションやプログラミングの民主化

インターネットの発達でかなりアプリ開発等の敷居は低くなったと思う。

Perl CGIの普及はかなりノンプログラマーがプログラミングに入る敷居を下げたと思うし、PHPはそれ以上に下げた。今やRuby on Railsの普及で、今やまともなWebのMVC構築がかなり低い敷居で導入できるようになった。もうRailsに乗っていればWebのいわゆるDBと連携した一連のサービスを、割とメンテのし易い形で、しかも他の開発者と共通言語でコミュニケーションをしながら作り上げていくことができる。

それ以上に今僕を注目させているのは、JavaScriptによるユーザスクリプトなどの一般コンシューマによるサービスの改変や改善が起こっているということだ。

これが圧倒的に一般の人がプログラミングやサービスに参与する事の敷居を大幅に下げていると思う。
すごく面白く楽しそうな現象だ。

やはりサーバサイトはサーバの準備とかUnixの基本を知ったりとか一般の人がかるーく参入するには最初の壁が若干厚い。僕とて10年以上やっているから今では自然なものの、それでもそれは仕事である。一般の仕事で無い人が、ちょっとした興味で始めるには荷が重い。

ところがクライアントサイトに関しては、最新のブラウザとテキストエディタがあればすぐに始める事ができるし、結果もすぐ見る事ができるのだ。

始めようと言う動機も、アプリを作りたい、見たいな大げさな物でなく、既存のサービスの使い勝手の不便さの解消であったり、マッシュアップで合ったりする。

そういった本当にカジュアルな動機による一般のコンシューマのプリグラミング参与。
参加する人が多ければ多いほど、障壁が低ければ低いほど、すごく面白い物が出てくるのではと思う。

iPhoneの発展もそういった事が駆動力になって進んでほしいと思っている。
Objective-Cによる開発も良いけど、もっとsafariに注目してほしいし、safariを強力なプラットホームに仕立ててほしい。safariからiPhoneの優れたハードウェア機能を簡単に使えるように公開してほしい。

そういった視点では、まだPCの方が上手である。
firefoxというプラットホームをみてると本当にそう思う。
iPhoneも負けないようにしていってほしい。

(Firefoxがwindows mobileに乗って、それが本当にiPhoneのsafariよりすばらしかったら、僕は迷う事無くそちらのプラットホームに移行するだろう。)

2008年7月17日木曜日

ZeptoPadに関して

友人から、あまり行けてないコメントがつきましたが、個人的には気に入ってるんですがね。

でも、友人はデザイナ出身なんで要求が高いのかもしれない。

まあ、それをはずしてみても、確かに万人が使いやすいソフトにはなってないし、
かといって本格的に使いたい人には機能不足だし。

そういう意味ではフィットする人を選ぶソフトかもしれませんね。

友人が言っていたように、確かにオンライン機能は欲しいかも。
もうすこしevernote的な要素がくわわると、結構使えるソフトになるのかも。

2008年7月16日水曜日

iPhoneアプリおすすめ

まだこれから色々出てくるので現時点でのおすすめ。

まずは「evernote」。
これはPCでも使っているが、PC、web、iPhoneとプラットホームを問わず同じメモを閲覧できるのがすごいところ。

で、iPhone版なんですが、当然他のプラットホームで取ったメモやwebのスクラップをiPhoneで閲覧できたり検索できることも便利だが、iPhone単体でメモを取ることが結構おもしろくよくできている。

メモも、普通のテキスト、写真をとってアップするスナップショットモード、既存の保存された写真をアップするモード、音声メモのモード。色々なアイディアを思いついたらすぐにいろんな手段でメモしてそれをクラウドにアップできる。これは優れてる。おまけに、英語限定だが、evernoteはスナップショット写真に存在する文字情報をOCRのように認識して検索できるのだ。

とっさに思いついたときにいろんな形でメモできるevernoteはこれで無料だから恐ろしい。
非常におすすめ。

次に「ZeptoPad」。
UEIの基本的にはメモソフト。
指で簡単に図形を描いたりして、まるで白紙の紙メモを持っているかのように使うことができる。
しかもキーボードで普通に文字も入れられるし、図形がベクターデータなので、拡大、縮小し放題で結構細かく描画できたりする。また写真も入れられる。

こっちの方はevernoteよりも、よりアイディアメモとか、簡単な指示メモとかに使えそう。
というのはZeptoPadでは、取ったメモをPNGにエクスポートしてメールで添付送信とかできるのだ。

そういう意味では、少数人数でミーティングするときの、アイディアを膨らませるメディアとして使ったりしてコミュニケーションフルにも使えるのだ。

どちらのアプリに言えることだが、非常に、iPhoneならでわの使い方や目的、環境に合ったソフトとなっているということだ。そして今までのソフトウェアとは異なり、非常にアナログ臭いことを媒介にして、そこにデジタルのメリットを注ぎ込んでいることだ。

これからのネット時代は情報を使った生産性の向上が求められる。
そういったことをアシストしてくれる非常に優秀な知的生産性向上ソフトウェアであると思う。
こういった斬新なものがiPhoneに現れてくれたことは、今後のiPhoneの行きさきを期待させてくれる。

個人の味方。個人の表現力や活動力をエンハンスする。
そういった意味ではiPhoneはやはりかつてアップルがやったPC革命の血統を引いていると思うし、上記アプリケーションはそういった血統をやはり受け継いでいるソフトウェアなんだと思う。


2008年7月12日土曜日

iPhone SafariのJavaScript

Mobile SafariのJavaScriptがiPhoneOS2.0でどう変わったか取り急ぎかるーく調べていました。

取り急ぎ前回無くって今回追加されたもの。
document.openDatabase()
document.getElementByClassName()
document.evaluate()

ということで、HTML5のClient-side-Databaseの機能が噂通りはいってますね。

で、
Element.addEventListner()
は相変わらずありません。

まだ調べてみます。

2008年7月11日金曜日

iPhone Get確定

いやー、今、秋葉原ヨドバシより帰ってきました。

昨日深夜1時から並んで8GB黒を7番目でゲットです。

というか引換券なので、実際には12時以降に引き換えですね。

しかし、人気は16GBの黒ですね。これは秋葉ヨドでも売り切れなんじゃないでしょうか。
次は白でこれも朝7時台に整理券が切れたと思います。

僕の8GBは一番不人気で、朝ぎりちょんで8時半に来た人でも日曜までの在庫にはありついているのではなかろうか。

人ごとながら表参道が心配である。みんな並んでる人かえるのかなー。

しかし、金払いのいい20代から30代中心の感度のよくリテラシーのある層が中心で、おそらく面白いマーケットができるとおもいますよ、iPhone。

ある意味、彼らに嫌われるような商材はクールじゃないって判断しやすいって意味で。

2008年7月8日火曜日

アプリケーションプラットホームとしてのブラウザ

思いつくままにバラバラと。

私は元々圧倒的なNetscapeのファンであの時代、本当にブラウザがOSを駆逐してアプリケーションプラットホームになると信じてきたくちである。

しかし時代はまだ早くてそうなるには時間がかかった。

そして今時代は熟し本当にブラウザがアプリケーションプラットホームになりそうになってきている思う。

そしてその根底に流れている基礎技術はあの時代Netscapeが生み出した物がいくつかあるのだ。

やはり今一番アプリケーションプラットホームとしてのブラウザとしてはNetscapeの直系Firefoxだろう。機能拡張のすばらしさ、ツールバー等、ブラウザをプラットホームとして拡張していく手段がすべて公開されている。これはすばらしいことだと思う。

私はiPhoneにFirefoxが乗らない(今の所)というのはすごくショックである。
もちろんAppleにしてみたらとうぜんかもしれない。
だけど、iPhoneにも機能拡張の開発余地のあるブラウザプラットホームを実現してほしかった。

今、iPhoneでの開発のためにメインブラウザをSafariにしているのだが、やはりFirefoxは便利だったなーと実感している。全てのブラウザがFirefoxになればいいのにと思う。

サイトでなく機能拡張としてサービスを提供していくというアイディアに非常に興味がある。
サイトに囚われず、それらを横断したサービスを提供できるから。

うちのサービスはFirefox限定ですっていうのも今後はありなのかな。

だけど惜しいのはプラットホームがPCだけに限定されているってこと。
今後はモバイルは必須だもんね。

だからモバイルのFirefoxには非常に期待している。
今はiPhoneでいいのだけど、というかしょうがないんだけど。
モバイルで本当にFirefoxが出てくるときが本当に元々Netscapeが言っていたことが実現するときなんだろうと勝手に思っている。
私も本当にそこに期待している。

2008年7月7日月曜日

Rubyを実用言語としてやることにしました

弾さんのエントリの影響でつい「初めてのRuby」をポチしてしまった。
全くRubyを最近やる気も無いし必要性も無かったのだが、本が良さそうだったので気持ちよくやれそうで。結構これって大事なことですよね。元々Rubyは楽しい言語だし。

ここ3年くらいRubyはいじってないんで復習って感じです。
で、そうなるとPythonは触る機会がなくなるなーと。
僕の言う実用言語ってのは、それを覚えると何の局面でも使えるって言語です。
特にバッヂかいたり、自動化ツール作ったり、簡単な処理をしたりって使いますね。
昔はPerlだったんですけどね。
だからもちろんPerlをやってました。
でもこれが苦手で。。
いつの間にかPythonに頼ってました。だから決行Python歴は長いです。

結構僕の場合一つを極める性格でないのか、こうやってしばらく全くいじってない言語って結構あります。
Perl, Python, C, Java, Scheme, Haskell, Smalltalk....etc..
そのときは熱くなるんですが、コロコロ変わっちゃう。

ま、最近RSSで徘徊してても圧倒的に日本ではRubyの情報が多くなってきたなーって思ってたんで氣にはなっていたんです。ネットで情報が多い方が色々学習効率もいいし面白いですからね。

仕事では相変わらずPHPの依頼が多いんでサーバサイドはCakephpで書いてます。
これはつかず離れずで接していればいいと思ってるんで。
ゆくゆくはお客さんのニーズと運用環境等の環境面が揃ってきたらRuby on Railsに移行しようとは思ってるんですが。

クライアントサイドでは相変わらずJavaScriptにはまってます。
JavaScriptが良いのは、気になったらすぐにソースをチェックできること。
究極のオープンソースですね。
インターネットである意味究極に情報が多いんじゃないでしょうか。
なんで、いらちな僕には、すぐに学習とその対効果がわかるので、一番合ってるような気がします。柔軟だし、シンプルだし、書いてて楽しいし。

Objective-C+Cocoaも非常に興味あるんです、特にiPhone向けとして。
言語的にもLispやSmalltalk臭い所がちょっとそそられます。
が、これを学習するのってかなりパワーがいるし(特にCocoa)、いまいちiPhoneのアプリ配布形態が好きになれないという所で、いまいち前に進めません。
やっぱ自分で開発して自由にwebに上げてダウンロード、インストールできるってのが、今の普通な所なんじゃないでしょうか。Appleのクローズドさがいまいちねー。

しかし、書評って大きいよね。
弾さんのレビュー読まなかったらRubyの本衝動買いすることも無かったんだから。

2008年7月6日日曜日

断食経過

前に断食を始めたことを書いたが、プチ断食、というのは気恥ずかしいので、、軽断食といいたい。。

基本的には自営業をいいことに、朝と昼は抜き。
夕飯は雑穀米と野菜を中心にとる。
おなかがすいたらスニッカーズじゃなくて、バナナと野菜ジュース、最近はところてんと黒蜜ってのも。

で、週末は朝、昼、夜と抜き。

で、かれこれ一ヶ月くらいになるが、体重が減ったことは当然のことだが、体が疲れることが少なくなった。
今日も妻に引っ張り回され買い物に突き合わせれたが、前だとすぐにへばって、滝のような汗をかき、暑がっていたのだが、全くそのようなことがなくなったのだ。いわゆるスタミナがついた状態。

あとは眠りが少なくてもだいじょうぶになった。
基本的に過食気味のひとほど長い睡眠を必要とし、目覚めも悪いよう。

あと、これは副産物だが、断食をあけてからの食事がとてつもなくおいしく感じるという幸せ。
本当にご飯とみそ汁だけでありがたく感じる。
新鮮な野菜をおいしいと思うようになり、あんまり脂っこいもの、ジャンクな物が欲しくなくなってきた。
ただ、ハンバーガーが無償に食べたくなるのは性だろうか?これだけは解せない。

あと、断食モードになると、体に合わない物がいくつか出てくる。
珈琲がその代表である。
珈琲といえば私から抜いても抜ききれない必須品である。
毎朝エスプレッソを飲んでいたのだが、あんまり欲しくなくなってきたような気がする。
特に空腹時には珈琲はとても飲みたいと思えず、しょうがなく麦茶を飲んでいたのだが、なんか味気ないというか、糖分がほしいなと感じることがあった。

そこでネットをぶらついていると、生姜紅茶というものにであった。
紅茶と黒砂糖または蜂蜜と生姜である。
すかさず試してみたのだが、これがとてもいい。
空腹にはぴったりである。こんなに空腹と合うものはバナナに匹敵する。

なんか体がじんわわりあったかくなって自律神経のゆるみとかゆがみを直してくれそうな感じなのである。
これを一日に何杯がのむといいらしい。
しかもバナナはどちらかというと体を冷やすと言われる食材なのだが、生姜も紅茶も体を温めるものらしい。

体を温めるというのは自律神経の調整にもいいし、なんと言っても体の免疫機能を向上させるらしい。
体温が一度あがると、たしかかなりの割合で免疫力があがるということらしい。
ということは生姜紅茶は一石二鳥ではないか。。

ということで心強いヘルパークラスの生姜紅茶を手に入れた週末であった。

2008年7月3日木曜日

体質改善

フィリピンで腰痛になって同時に風邪をこじらせたことで、体質改善へと考え、半断食をずっと続けている。

毎日基本は一食。
おなかがすくときはバナナか野菜ジュースを飲む。
(フィリピンではマンゴージュースを飲んでいた)

一食のご飯は、
十六穀米
みそ汁
野菜を中心とした一菜とか納豆なんかが多い。

体重はここ最近で6-7Kgほど減った。
暑さに強くなった。
あんまり睡眠を取らなくなくても良くなった。
買い物に行ってたちっぱなしでもあんまりつかれなくなった。

まだ、カロリーは多いかもしれない。
もっと何かを減らせるのかも。

とにかく現代は物理的にも情報的にも何もかもが過剰すぎ。
何かをやめるとかなくすとかを非常にしにくい。
サービスも精神もシェイプアップしたい物です。

2008年7月2日水曜日

web制作for iPhoneに関して

iPhone用のウェブサイトをつくるにあたっていろいろとやり方はある。

viewportさえ設定してフォントの大きさをうまく調整すればそれなりのページに見える。
もっとiPhoneチックにみせたければ「iui」を使うという手もある。

しかし最も確かなのは新しいiPhoneSDKに入っているDashcode2.0を使うことだろう。

iPhone独自のUIパーツとレイアウトが部品として用意されていてそれを組み合わせればiPhoneのネイティブアプリに近いUIで作れる。
これにはユーザがネイティブUIと同じ感覚で操作できるというOSの考えにそったメリットがある。
ユーザが迷わず操作できるという訳だ。違和感もない。

ところがDashcodeで制作するコードには、いくつかのAppleオリジナルのJavaScriptのフレームワークが使われている。
それに関するまとまった情報が無い為に、いちいちソースコードを見直さなければならない。
なぜかAppleのDeveloperページには情報が無いと思う。私の見落としかもしれないが。

特にStackレイアウトをつかって、複数のレイアウトをトランジションエフェクトをかけて遷移させていく所があるが、あれは実態は一つ一つのレイアウトは大きなdivのくくりで、それらは一つのHTMLである。それをCSSとJavaScriptのフレームワークを使って画面遷移しているようにする訳だ。そして遷移する際の横スライド等のトランジションはCSSアニメーションで実現している。

そういった動きを全てApple独自のフレームワークで実現している為に、テンプレートを超えた範囲で制作を行おうとすると、まとまった情報が無い為に、初学者はちょっと難しいと思う。

そういったへたれなAppleの状態よりもなによりも、もっと自由に作りたいという欲求がある。
なので、最低限のUIデザインとかトランジションはAppleの物をつかいつつ、なるべくそれは最低限に押さえながら、どのくらい自由に作れるかを今妥当な線として検討している所である。

できればAppleのUIにこだわらずに、独自のUIでiPhone用サービスを作り上げているGoogleとかの方がいさぎいいかんじがする。
ちょっとデザイン的にプアだとおもうが、それがまたGoogleらしさで。

ま、とにかくiPhoneのウェブデザインは、思ったよりもユーザの使い勝手の上で特にユーザが操作する限度があるので、あまり凝ったレイアウトとかデザインをつかったUIができないことは確かだ。あくまでマウスでそうさするのでなく、デバイスは「指」であることをわすれてはいけない。極端な話、普通の指の太さとかを検討することは必須である。

かといって、日本のガラパゴス携帯サイトデザインではかっこわるすぎだし、ちょうどデバイスの位置づけとしてPCと携帯の中間くらいなんだろな。

今の所、特に米国のweb大手がどんどんiPhone用サイトを出していて、それをできるだけipod touchで逐一体験しているのだが、まだ、これといって「おっ」と思わせるサイトにはであっていない。Googleの用に独自色(よく言えばPCのサイトと同じトーン)や、iPhoneネイティブUIに近くしているもの(Facebookとか?)、あとは日本の携帯サイトに近いかなってもの(頭にロゴがドーンとあって、あとはリンクのリストだらけみたいな)とかばらばらですね。

これからどんなものが主流になっていくのか継続的にトレースしていきたいと思います。

2008年7月1日火曜日

未だ不確定なiPhone

ようやく帰国したので駄目もとで地元のソフトバンクショップに足を運ぶ。

店頭にはiPhoneに関しては一切答えられない旨の張り紙。

案の定、店員の話では

予約は一切受け付けていない。
入る数が未確定なので一切手に入る入らないはお答えできない。
「入荷しない可能性もある」

ということで、一切つれない反応。
こちらはMNP手続きも済ませ前日並ぶ覚悟でもいるのに、入らない可能性がある、とはちときつい。

食い下がると、ソフトバンクの直営店と言われる、渋谷や表参道店なら在庫確保が確実かもと。

そこで自宅に帰って表参道店に電話。

やはり対応マニュアルがあるようで、

予約は一切うけつけてない。
最悪のことを考えて入荷しないこともある。

表参道店で入荷しないんだったらどこでもかえないんじゃない?と食い下がると。
まあ、そうなんですが、こちらも全くしらされてませんので。。。というお答え。

こちらが並ぶつもりでいることをつたえても、それでも買えない可能性もあるとのこと。

どうも紋きり調のようだ。

どこも同じで、まじかにならないと全くなにもわからないの一点張り。

ここはまだ当日購入の戦術をたてられない。
ネタフルにあった通り、大手量販店の方が確実なんだろうか。
とりあえず並ぶつもりでもいるのだが、並んでも買えないとショックだな。

ここは直前までのネット、電話、足での情報収集の継続が必要だろう。

しかし、まったくアップルってオープンじゃないね。
ソフトバンクもかわいそうだな。

なんかiPhoneでちょっと引っかかるのってそこなんだよな。
アプリ開発もそうだけど、オープンじゃない。
オープンソースとネットの進化でここ15年位で生じた変化というか価値観と会わない感じがするのだ。
アプリもクローズドな売り場で審査済みの物だけを売り、売り方の工夫もできない。
ちっともその点だけに関してはおれは面白くも何ともない。

売り方から、作り方からすべてが公開されてない。
これって時代の変化の要請と合ってるんだろうかとふと考えてしまう。
俺の考えだと、こういった時代の要請と合わない奴は最終的に失敗するんだと思うんだけど。
ただ、iPhoneの対抗馬が現れてないだけだと思うんだけど、違うかな。

日本のネット環境の凄さ

久しぶりにフィリピンから日本に戻って来てネット環境の充実振りに驚いた。

まずは成田から帰るリムジンバスの中でイーモバイルでつないだ速度がフィリピンのコンドミのスピード同じ位。

自宅は光なのだが、そのはやさたるや凄すぎ。
1GB以上あるiPhoneSDKの新版があっという間にダウンロード完了。
Youtubeも全くストレスが無い。

日本は本当にネット環境に恵まれていると思う。

後はサービスだけじゃないかな。
充実すれば最強の国になると思う。

2008年6月30日月曜日

フィリピンから帰国します

えーと、いまさらなんですが、周りの近い人には告げてますが、フィリピンから本格的に帰国することになりました。

今度は日本がメインになりますので、フィリピンにはたまにしか来ないことになります。

日本で不都合をかけた皆様には大変申し訳なく思うとともに、今後日本でもがんばってやっていきますので、なんとかよろしくお願いいたします、ということです。

フィリピンはやっと暑さに体が慣れてきたとことですが、ちょっと生活的に限界を感じていた所でもあります。やっぱり家庭は大事だなーと思います。

あとネット人間としては、無線環境、ネット環境ともに貧弱なのも辛かったです。
おかげでオフライン性能のことも考えさせられました。
日本以外ではまだ貧弱なネット環境なんだってこと。

おいしいマンゴージュースを気軽に飲めなくなるのはちょっとだけ寂しいですが、日本は日本で楽しいことが一杯あるので実にわくわくしてます。

ということで明日の(今日かもう)飛行機で帰ります。

PCのSafariとモバイルsafariの違い

いやー、結構はまりました。

iPhone用のBookmarkletをまた作っていたのですが、
先日のポストでsafariにgetElementsByClassNameやdocument.evaluteがあることを書いてたんですが、それはPCだけでipod touchには存在しないことがわかりました。

調子にのって便利に書いていたんですが、bookmarkletが動かなくて、しょうがなく少しずつでバッグするはめに。。

それともっと行けなかったのが、実はwebkitのnightly buildを使っていて、それにはElement.addEventListenerがあるらしく、調子にのってそれでいいと思っていたのですが、これもsafari3.1には存在せず、当然モバイルsafariにも存在しません。。

まずは次のsafariでは取り入れられるはずなので、まあいいんですが、iPhone2.0では上記のメソッドは動くのでしょうか。しばらくはどのレベルなのか探る必要がありますね。

しかし、PCのsafariとモバイルで実装が違うのは遺憾ですな。
そこは何とかそろえてくれないと、デバッグができまへん。。

2008年6月27日金曜日

safariってxpathつかえるんだ。。

ふと別の調べ物をしているときに、safariで、
document.evalute()
ができることがわかる。

もしや、とおもってロケーションバーに
javascript: alert(document.getElementsByClassName)
してみると、こちらも存在する。

なんだ。。
いままで結構冗長な書き方してきたよ。。

しかも両者ともネイティブコードで実装されてるらしいのできっと早いだろう。

これからはこちらの方を使おう。
(しかしAppleのDeveloper ConnectionのDOM Referenceにはかいてなかったんだよね)

2008年6月25日水曜日

safari環境整備

webkit関係の特徴になれる為に、わざわ「最高の」Firefox3から乗り換えてsafari3.1を使い始めた。これもなにも次期世界携帯に普及するはずであるwebkitになれておくため。

色々、現状safariだけでしか動かないであろうHTML5のvideoやaudioタグとか、CSSアニメーション、canvas等見ていると、本気でwebkit陣営はFlashのいらない世界をいち早く目指していることがわかる。

でsafariなんだが3.1が出たときは爆速っていわれたけど、ずっとFirefox3を使ってきたかんじからするとそんなに早い感じではない。いや、JavaScript関係ははやいんだけど、ページ全体の読み込みが重く感じるというか、おそらくsafariの方が全部読み込んでからレンダリングしているようなかんじで、多少画面表示までまたされる感じがする。

safariでFirefox3の便利な機能が使えなくなるので、最低限モダンなブラウジングには必要なAutopagerが必要だということで、GreeseKitをいれてoAutoPagerizeを入れる。

しかし色々userscriptを見てみたんだけど、JavaScriptの世界は奥深いねー。
アイディア次第でいろんなことができる感じがする。
こんな手法もあるのかと驚くことばかり、勉強になる。

ipod touchのTabulaterの時も思ったんだけど、この分野はアイディア次第でいろんなことができそうな氣がする。

2008年6月23日月曜日

iPhoneアプリについて考える

最近、僕の周りの敏感な奴らがこぞってiPhoneアプリの開発をはじめている。
それは当然なことだとおもう。
久しぶりにアプリケーションを開発する大きな(少なくともそう感じられる)単一のプラットホームができたのだ。windowsが出てきて以来ではないか。
そこで金を稼ぎたいひと、名前を売りたい人が出てきて当然だし、感度のいいギークがそれになだれ込むの当たり前のことなんだよね。

しかし久しぶりである。
日本の携帯みたいに様々な機種に適合する必要もなく、単一プラットホームを考えればいいだけだし、しかもSDKが充実していてしっかりした物になっているので、開発者としてはやりがいがある。

僕は稼ぎたい方で、名前を売りたい方ではないので、少しiPhoneのAppStoreでアプリを売るという商売が商売になるのかってことを考えてしまう。昨日はネットに繋げなかったので、じっくりと考える時間があった。

で、結論だけど、ごく個人的にでもAppStoreで個人が生計を立てられるだけの物は、結構難しいと思う。
だいたい自分が欲しい月収なり年収をアプリ単価の70%(自分に入ってくる分)で割ると、いくつアプリが売れなければならないかがわかる。計算してみるとわかるが、僕の欲しい売り上げには、結構な数量を売らなければならないというハードルがある。

これだと一個のアプリだけではむりだろうし、複数のアプリを提供しないと行けない。
また、経験上、ダウンロード売り切りの商売の場合、提供直後は普通売り上げのピークでその後売り上げはガクンとダウンする。そう考えると、結構な数をリリースしていき続けなければ、おそらく収入の維持は難しいだろう。ごく少数の定番と言われるアプリなら別であろう。これとて一度それなりのiPhoneユーザに可否を判断されたあとは、あとは、iPhoneユーザの拡大するのに合わせた拡大しか望めない。つまり、日本の携帯電話の時と異なり、新機種への機種変更がないので、一度ユーザがいらないとおもったら、その後そのユーザが購入する確率はかなり低い。あとはiPhoneへ乗り換えるユーザが増えるたびにそのユーザが新たに購入の可否を下すというチャンスがあるだけだ。勢い、売り上げを維持するにはアプリを出し続けなければならないのではないか。

実は携帯電話のゲームをリリースする会社にいたことがあるのだ。
そこで売り上げのながれだとかは多少はわかっているつもりだ。
なので、シビアに考えると上記のようなことが考えられる。

また、iPhoneの行き届く環境が整うまでにも結構まだ時間がかかりそうだ。
当初の販売国数は24カ国だし、60カ国になるには年内一杯かかるだろう。
その後それらの国に普及しだしてから、ということを考えると、整うのは来年にはいってからだろう。

また、かなりの申請されているアプリをappleがさばききれていないようだ、というのがある。
実際にAppStoreに掲載されるのは審査のような物があるのかどうかはわからないが、それに近い物があるのだろう。これだけ開発者が殺到すれば、実際に販売されない、またはいつまでも販売に乗らない物が出てくる可能性は大きい。

もう一つは、下記のようなものである。

先ほどSoftbankShopから電話が来ました。
「予約いただいたiPhoneですが、現在の状況ですとお渡しすることが出来ません、初回入荷数が余りにも少ないため年内にお渡しできないかもしれません。
との事。
事実上の予約キャンセル
これはAppleStoreに徹夜で並ぶしかねぇかなぁ?


iPhoneの現状

ということである。
だからおもったより万人に広く行き渡るには時間がかかりそうなのだ。

そういったこともあり、
冷静に考えるとiPhoneアプリ販売には過大な期待を抱きすぎないことが良いと思ってる。
基本的にWeb2.0以降の世界でわかったことは、ソフトウェアを販売する商売は下火になったと言うことである。これは世の中の趨勢で、AppStoreも70%は無料ソフトであるということは、これも時代の流れなのである。だから、よほど価値のあるソフトでないとユーザは有料で買うことは無いと思う。おそらく、同じ機能でフリーで出す奴がでてくるんで。そういった物はPCの世界で既におこったことで、PC買ってから有料のソフトをインストールすることってそうなくなったんじゃないでしょうか。そういうことだと思います。

まあ、副収入とか会社の事業のあくまで小さい一つ、としては当然挑戦しがいのあるものだと思っている。

それより僕が今一番興味があるのは、iPhoneがwebkitブラウザのプラットホームとなるということである。
ネイティブアプリもいいんだけど、やはりiPhoneの強みは、今までの携帯にないパワフルなPCに近いブラウザが乗っていると言うことだと思う。今までの携帯電話のブラウザは非力で、JavaScriptも動かず、しょぼいCSSしかつかえなかったが、iPhoneのブラウザは違う。ある意味CPUの早さを除いてはMacのSafariに近い機能をもつパワフルなプラットホームなのだ。

今、Firefox3が熱いが、実はwebkit陣営も負けず劣らず熱い。
実は今一番すすんだCSSだとかHTML5だとかJavaScriptの実装をしているのが、このWebkit陣営である。
webkitが実現するのは、ネイティブアプリの負けないリッチな環境を、(Appleのお好きでない)FlashだとかAIRだとかSilverlightだとか特定ベンダーに依存せず、世界標準仕様で実装できるようにすることだ。

このwebkitがくしくもiPhoneとAndroidという次世代のハイパー携帯プラットホームに搭載されるということは偶然だけではないだろう。ある種、AppleやGoogleがどうしたいのかという方向性に裏打ちされている物なのだと思う。

おそらく将来の携帯プラットホームはこの二者がPCの時代にAppleとWindowsという覇権で争ったようなことを行うのかもしれない。

しかし、ブラウザのプラットホームが両者とも同じということは、そこにかなりチャンスがある。
これにPC用のプラットホームのブラウザを考えると、そこには大きな大きな、iPhoneネイティブアプリ以上のビジネスチャンスのあるプラットホームが広がっていると思われる。

だから、iPhoneネイティブアプリもいいんだけど、同時にもっとwebkitの仕様ハックをしていきたい。
ここには結構大きなチャンスがあると思うからだ。

フィリピン台風直撃

この週末はさんざんだった。
土日と二日続けて台風直撃の為に、外にもでれず、しかもネットも切れてしまうという最悪な状況。
しかも、iPhoneアプリ開発の勉強をしている最中でネットが切れやがって、全くさんざん。。

しかし、ネットが切れるとなにもPCでやることがないね。
僕はゲームをするわけじゃないので、ネットがきれるとPCに向かってもいっさいなにもすることが無い。
プログラム書くにもネットにリファレンスとか情報があるので、やっぱりネットがないとだめ。
いかに自分がネットに依存しているのかわかったし、それは結構いろんな人がそうなんじゃないかな、と思っている。いまやPCはネットに接続してないとただの箱、である。
ちょっと昔はソフトがないとただの箱って言われていたんだけど、今はソフトがあってもそれがネットを必要としているソフトばっかんなんだな。スタンドアロンだけで楽しめるソフトって、ゲーム以外には考えられない。

そういった意味で、先週末はネットにつながらなかった分だけ、いろいろなことを考えられた時間であった。

別にRubyが嫌いな訳じゃない

よく最近いろんな人に誤解されているみたいだけど、俺はRubyが嫌いでもやったことが無い訳でもない。

実際、俺はRubyは昔からいじってきた。1.4の頃だから1999年くらいだろうか。
あのときは主にはバックエンドのバッヂ処理とかはRubyで書いていたのだ。
簡単なCGIなんかもerbを使って書いていたのだ。遅かったけど。。
Perlがどうしても苦手だった俺にはRubyは斬新だった。助かった。

その後、同時期かちょっと前くらいに、Linuxのディストリビューションをやっていた関係で、インストーラーの日本語化の際にソースを見る必要があって、それはQTをつかってPythonで書かれていた為に、その頃からPythonも使うようになった。

そうやってPythonの方を使うようになって、あんまりRubyは使わなくなったのだ。
その頃はRubyは入っているもんじゃなくって、コンパイルしてインストールするもんだった。
なんで既にはいっているPythonの方が使い勝手がよかったってのもある。

Rubyの斬新さだとか、簡単なことを簡単にできつつ、しかも、難しいことも簡単にできる素晴らしさに関しては、今でも尊敬のまなざしで見ている。Rubyが好きか?と聞かれれば好きだ、と答えるし、Pythonよりもある意味言語的に一本筋が通っていると思っている。

じゃ、なんでRubyをあんまり使ってないかって言うと、使う機会が無いからだ。
いや、実際にはRuby on Railsのプロジェクトを一個メンテしていて、全く関係ない訳じゃないけど、それはばりばりRubyのコードを書きまくる訳ではない。

Webの開発は職業としてやっているのですが、どうしても顧客の要望がPHPが多い為に、ほとんどPHPでこなしてます。実際にはRuby on Railsをかなり参考にして作られている、CakePHPというフレームワークを使っていくつか開発しており、それで足りてしまう為に、Ruby on Railsをあえて使う必要がないのだ。スピードもRuby on Railsに負けず劣らずな感じで開発できるし、できることにもそう差異はないのだ。

また、実際に私の顧客環境を考えると、わざわざRuby on Railsで開発するといっても、はいそうですか、といって簡単に受け入れてくれる斬新な顧客はそういない。やっぱりちまたではまだまだ、PHPの方が実績がある為に安心して受け入れられている。

たとえRuby on Railsが受け入れられたとしても、じゃ、それを顧客に導入するかと言われると、そうはならない。まだ、Ruby on Railsは運用面において、長時間安定してそれなりのパフォーマンスを維持して運用し続けられるだけの実績が世の中にそうないし、ノウハウもまだ蓄積されていない。

だから賭けでRuby on Railsに入れ込んでもいいが、リスクは自分で追わなければならない。
私は職業開発者だから、複数のプロジェクトを廻している、
その中で、そういった実績の自分で確定できていない物で顧客のシステムが回っているとなると、それに時間を取られる恐れがある。それは自分にとって貴重な資産である時間を浪費することになって命取りなのだ。

こういった感覚も長い開発者経験から来ている。
まだ、tomcatが一般的に使用されていない頃に、ノウハウがたまっていないにも関わらず、若かった俺は顧客のシステムにtomcatを入れたことがある。
そしてそれはそれは運用で痛い目をみた。何日も徹夜することになったし、何ヶ月も引っ張り回され、一年後にはPHPで書き換えになったという経験をしている。

だから、新しい物は、ギークとしての私は当然興味があるしやりたいのだが、職業開発者としての私がそれをセーブするのだ。顧客のシステムで実験しちゃいけないよね。

そういったこともあり、自分の仕事ではPHPが主体なので、なかなかRuby on Railsは触る機会がない。

あとはちょっとした書き捨てスクリプトとかバックエンド処理とかだが、これもなかなかRubyを使う機会がない。ついPythonの方を使ってしまうのだ。Rubyにもirbがあるのはしってるが、なにかると、すぐPythonのインタラクティブシェルかiPythonをたててしまう。これはある意味癖である。仕事の経験上の。
それで仕事がすんなりとおわってしまって、なかなかRubyで書く所までいかない。

じゃ、空き時間は?というと、今はクライアントベースの物の方に興味がある。
サーバサイドは既にフレームワークの確立された世界であり、これから大事なのは、以下に安定かつ確実にサーバ側は運用されるかという所であろう。それにくらべて、クライアントベースの物は、これからまだまだ発展していくぶぶんであり、いろいろと新しいトレンドが細かいタイミングで来る世界でる。

なので、空き時間はObjectiveCを書いたりJavaScriptやCSSをハックしたりしています。

そういったことでRubyの出番が無い訳です。

なので、俺は別にRubyが嫌いな訳でないということだけは言っておきたいと思う。

2008年6月20日金曜日

Sproutcoreに関して

Cocoa for Railsともいわれ、Appleが今回のMobileMeを実現するにあたって、webアプリを限りなくデスクトップアプリに近づける為に使われたという、HTMLのUIフレームワークを調べてみました。

これのインパクトの方が大きすぎてiPhoneネイティブアプリ開発よりは優先になってしまいました。

で、UIの方はかなりMac風ではあります。
全く同じということではありませんが、雰囲気は似ています。

で、これを開発するときは、基本的にRubyを使って開発します。
その開発の仕方はRailsに似ていて、Railsを触っている人であれば理解しやすいと思います。

そして出来上がったMVCをRubyでコンパイルして最後にPureなHTML、CSS、JavaScriptを生成するようです。

バックエンドとの連携は通常のXHRなので、バックエンドは何でも良いそうなのですが、やはりRuby on Railsとの相性が良さそうです。(フォーラムではJava等のバックエンドの人が使いにくいって文句を言ってましたが。。)

これは、きちんとしたUIパーツのあるフレームワークなので、Cocoa風のUI部品で統一したアプリケーションを作りたい場合はこれは非常におすすめです。しかし、作者も語っている通り、通常のサイトに効果や風味を加える為に使うというのは難しそうで、それならば、通常のPrototypeとかをすすめるよ、とのことです。

ほんとにネイティブUIのアプリ(メーラーとか)そういう物を作るときにはいいのでしょう。
デザインとか不要に悩むより、コンポーネントが解決してくれます。

ただしカスタマイズして使ったり、一部だけ使うってのは難しそうなので、使う目的は限定されるでしょう。

ということで、やはり、自分の仕事の枠だとJquery+アルファで自由度が高いのが良さげです。

HTML5 Client-side database storageに関して

昨夜同僚と飲みに行ったのでまとめられなかったのでまとめ。

HTML5で策定中のブラウザ側でローカルデータベースをもってデータパシストするという規格「HTML5 Client-side database storage」はまだ最終決定までまとまっていない。

この規格をいち早く取り入れたのが、WebKit陣営。

その最初の製品として「Safari3.1」が上記仕様での実装を行っている。

それとは一方別にちょっと前から、Googleの方でも「Gears」というブラウザへの機能拡張を使って同様の機能を提供できる環境を提供していた。GeaesはFirefox1.5以上とIE6以上の対応。OSもMac、Win、Linuxと対応。(MacのSafariには対応してない)

GearsはもともとClient-side database storageだけを提供するのもではないが、一部の機能としてそれを実現している。それはHTML5で策定中の仕様とは異なる物で、アクセスするJavaScriptのコードもHTML5(Safari)版とは異なる書き方である。

先日リリースされたFx3はClient-side database storageには対応していないので、使用する場合はGearsが必要(ギリギリにリリースされた)。

WebKit陣営は積極的にこの仕様を取り入れているので、一部、携帯電話デバイスも含め、WebKitを利用する各所に取り入れられている。AIRも同様だし、iPhone2.0のSafariに取り入れられているという話もある。となると同じWebKitを仕様する「Android(By Google)」もこれを実装する可能性は高い。なので、気がつくと次世代の携帯端末の雄は携帯においてClient-side database storageを実装するプラットホームとなる可能性がある。

Gearsの方はFacebookやMySpace等が自信のプラットホームアプリの改善の為に取り入れ初めている。
そういった形でオープンなwebプラットホームのなかから取り入れられる可能性が高い。

Fxも最終的にはHTML5仕様のClient-side database storageを入れると思われる。

Gearsは最終的には形を残しつつも、よりHTML5仕様のAPIと互換性を持つ形で発展していく物と思われる。

Client-side database storageの利点は、何よりも、クライアントサイドでのwebアプリケーションのパフォーマンスや使い勝手が圧倒的に向上すると言うことである。また、電波が来ない場合のオフライン機能としてこれを使うこともできる。よりwebアプリがネイティブアプリに近い形に進化する可能性があり、一種RIA環境を構築する際の重要なパーツにもなるであろう。

ということで、早速、今日はSafariとFx3+Gearsでテストをしてみました。
簡単なテーブルを生成して、フォームから書き込んだデータをローカルのDBにインサートして、その後新着からデータをリストで引っ張ってくるという簡単なものだ。

やはりAPIの使い勝手はHTML5版の方が良さげである。
現状、一つのHTMLで両者に対応しようとすると、コードを分岐させて同じロジックを二回書かなければならない。一応、ばからしいと思いながらも、経験ということでやってみたが、やっぱりばからしい。
できれば、GearsのAPIをHTML5版にラップするライブラリを書くことが必要だろう。

ま、(現状のPCの)シェアを考えると、IE、Fxが多いだろうから、やっぱGearsを中心に考えなければならないだろう。ただし、iPhoneとかプラットホームが限定されたサイトを考える場合、結構絞り込みで使えるのでこちらは楽そう。

あ、ちなみにClient-side database storageの実装の招待はSqliteです。
なので、通常使えるSQLはばりばり使うことができます。
SQLばりばりの開発者の方はうれしい方向性ですね。

2008年6月19日木曜日

モバイルとJavaScript

常々モバイルのブラウザにこそJavaScriptが必要だと考えてきた。
だが、セキュリティーの問題やCPUパワーの問題からなかなか実現できていなかった。

モバイルのコンテンツこそ、全体のドキュメントの必要な部分を必要なだけロードして更新すべきだし、レスポンスのいらない操作はバックグラウンド(非同期)で行われるべきである。

携帯のプラウザはJavaScriptを持たないのでリッチな操作感を目指すと勢いFlash Liteである。
そのFlashと携帯ブラウザの今の統合のされ方じゃ、それでもまだ完全にはほど遠い。
(インライン再生とインタラクティブ操作の関係)

やっぱりipod touchが出てきたときに非常にAjaxが使えることがうれしかった。
実際に初期にサイトを立ち上げた人たちは非常に効果的にAjaxが使われているものもあった。

つたない回線だからこそ、効果的に情報遷移と通信を合理的に設計する為にAjaxが必要なのだ。
また、最近はドラックアンドドロップや各種エフェクトの効果のあるJavaScriptライブラリも充実してきているので、それらを利用することで、狭い画面で効果的に操作を行わせたり、効果的に表示できたりもする。

iPhone2.0のSafariがどれほど初代より充実しているのかわからないが、iPhoneサイトの要はそれらを効果的に使うことにつきると思う。

あんまりAjax使うとGoogleに引っかからないんで、おそらく通常のサイトはGoogleに引っかかるようにプレインに作っておいて、iPhoneからのアクセスの時は、iPhone用のインタラクティブなページを見せてやるようにすれば良いのだろう。もちろんそれようのマーキングやCSSも必要になるから。

モバイル分野に本当にパワフルなプラットホームが出てきて本当にうれしい。
あとはサードパーティー向けにFirefoxなんかはでてくるのだろうか。
あれのコンセプト映像は本当にすばらしい物だった。
Firefoxが出てくるとプラグインなんかも実現されるのかな。
楽しみである。

あともう一つは、おそらくPCの方ではHTML5の流れで、クライアント(ブラウザ)側でデータパシストを実現する機能が備わる。今、おそらくsafariでは実現されていて、Firefox3ではどうなのだろう。とにかくブラウザ内蔵のSQLiteがSQLでデータをクライアント側で管理してくれる。これが無いブラウザにはGoogle Gearsがある。

ここら辺がもっと普及すると、webアプリの概念はかなり変わってくるように思われる。
定期的にデータをローカルとリモートでシンクすればよく、作り方も変わってくるだろう。
もちろん、ローカルアプリの動作スピードも通信に惑わされない部分がでてくるので、かなりスピードアップするはず。

これがモバイル(iPhone、Android)の方でも実現してほしい訳である。
というのも、同じことを書くようだが、モバイルの様な通信環境が多少不安定なものほど、オフライン機能が充実していることが必要なのだ。なので、いつも通信や電力が完備されているPCのような環境より、モバイルでバイスの方が、ローカルストレージやAjaxが必要になってくるわけである。

ここら辺が実現するのはそう遠くないと思う。
技術的には難しくないからである。
正常な進化を遂げてほしいと思う。

2008年6月18日水曜日

Tumblrとipod touch

コンドミニアムに帰ると、腰痛の問題もあって楽な姿勢でネットを見れるようずっとipod touchを使っている。

で、Tumblrをしきりに見るのだが、ダッシュボードがiPhoneに最適化されていないのでやっぱ重たい。
(やっぱレンダリングのスピードの問題があると思う)

あと、PCでやってるようなtomblooのような感じのpostができない。

これをiPhone向けのページ最適化の所と絡めて明日解決してしまおうと思う。

具体的にはダッシュボードの方は、こういうときこそのAjaxということですな。
APIをたたいて20件取得して20件目の画面下部ぶ移動したときに自動的にオートページャみたいに次の20件をくっつけるか、新たにページをレンダリングする。とにかく、あの今のダッシュボード全体を再読み込みる重さを回避したい。常々、iPhoneにこそAjaxは向いていると思っている。

できればJSONPの方を使ってAll Javascriptでやりたいですね。サーバを絡めたくない。

もう一つの書き込みの方は、Bookmarkletを使う。
ページのタイトルとリンクのポストはAPIを使って楽勝だろう。
問題は画像を引用してのポストである。一つ画像だけ抽出するBookmarkletを噛まさないと行けないかも。
ちょっとできなさそうなのが、選択範囲の引用によるポスト。
セレクションという概念がiPhoneにはないんだよな。
音声と動画のポストはほとんどしないので無視。

実は明日はメインの仕事がまっているのだが、乗らないので、まずこっちをやってのってから、メインの仕事に取りかかろうと思う。

iPhoneアプリと商売

iPhone熱が一段落落ち着き冷静に色々考えることができるようになってきた。
SDKもはいり、開発する氣十分で少しずつ時間をとってるが、他の仕事もあるのでそう自由にはいかない。

さて、iPhoneアプリはほとんど無料であるという記事が入っていた。

iPhoneアプリは約7割が無料になりそう

売られるアプリもApple分を乗っけてもせいぜい500円位ではないかともこと。

日本の携帯の課金の感覚を考えるといい感じかなーとは思います。

ただ、この金額だと、携帯のアプリ開発をやっていた経験からいうと、結構開発側としては辛いなー、当価格ですね。個人事業主としてなら、なんとか食っていく可能性もあるかもしれませんが、企業としてこれに懸けることはむずかしいですね。おそらく矢継ぎ早にアプリをどんどんリリースしないと結構会社的には難しいんじゃないですかね。

月に100本売れて5万円。60カ国で売れたとして月300万円。
また60カ国に万全と売れだすのは来年以降。
やっぱり規模的にはかつての携帯のゲームマーケットよりしょぼいんじゃないでしょうか。
冷静にみると。

その割にJavaと比べてObjectiveCの開発はどうでしょうか?
おそらく感じとしては、既にCでゲームのソースやアプリのソースを持っている会社は、移植は簡単でしょうね。なんで、資産を持っている会社の方が有利でしょう。そうじゃなくって、一から、ゲームを起こしてiPhone向けに出していこうとなると、結構、Javaアプリの時以上に難しいことになるのでは無いかと思います。

あと、ゲームと各種定番必須ソフトウェア以外はお金取るのは難しいでしょうね。
簡単なアプリは無料で他の会社が出すでしょうから。

ま、最初はiPhoneもやるよ、っていうスタンスでしょうね、みんな。
ただ、まだそれに全部を懸けられるだけの物はないと思います。

すべてはiPhone普及とAppStoreの動向にかかってきているものと思いますがまずは様子見でしょうね。
みんなどのくらいのレベルをいくらで提供してくるのか。
AppStoreでアプリを頻繁に購入するであろう(僕みたいな変な)人はどのくらいいるか。
(でも多分ゲームは買わないな)

あと、最近僕の周りでも色々iPhoneのアイディアを聞くことがあるんですが、みんな思うんですが、ちょっと仕掛けやアイディアが複雑すぎ。多分、ipod touchの使い勝手とか使い込んでみないとわからないんだろうな。Appleのネイティブアプリもかなりシンプルですから。

あと、UIは指で操作するということを意識しないとね。
かなり想像以上にシンプルにして各UIパーツの大きさを大きく取らないと、指で押せません、というか誤操作します。

もしかすると、商売のやり方は単純にアプリを売るというモデルにならないかもしれませんねー。

2008年6月16日月曜日

google気になる

実は黒船だと騒がれているiPhoneももちろん興味があるが、もっと興味があるのはGoogleなのだ。

iPhoneはiPhoneで新しいマーケットとアプリケーションプラットホームを期待させてくれるのだが、Googleが狙っている所はもっと大きな部分であると思っている。

それはiPhoneも飲み込む規模なのではないか。

GoogleはiPhoneが勝とうがWindowsMobileが勝とうがどっちでもいいという、非常に都合の良い立ち位置にいる所であらたなアプリケーションプラットホームを提供してくれそうな気がする。

iPhoneにどっぷり浸かるということは、その枠内で閉じてしまうことを意味する。

Googleが提供しようとしているアプリケーションプラットホームはもっとハードやOSから抽象化されたレイヤーで存在するものだ。だからAndroidでさえも、その中のコマの一つにすぎない。

やはりGoogleが何をしようとしているのか、つかず離れず見続けていった方が良さそうだ。

やる気が出ないとき

そのような状態のとき、会社に行きたくないときは、まず体を温めましょう。
そういうときは、体が冷えの状態になっていることが多いです。
汗をかくくらいがいいと思います。

次に、プチ断食します。
水分はお茶等の暖かい飲み物で補い、どうしてもおなかがすくときはバナナを一本食べることをお勧めします。ヨーグルトなどの酵素食品もいいと思います。

これは両方とも、体の免疫力抵抗力を高める為の手法です。
そうすることにより、体の免疫抵抗力が高まり、精神的にも前向きで打たれ強い気持ちに変わります。

化かされたとおもってやってみては。

2008年6月15日日曜日

パスタ

フィリピンでは水道の水は飲み水や調理用として使わない。
水は買うものである。

通常は飲料水としては、最近日本で見かけるようになった、ウォーターサーバ(冷たい水と熱いお湯が出る)用のでかいボトルを買って運んでもらい、それを使用する。

一個50ペソくらいだろうか。

しかし、炊事をしてておもうのだが、パスタは水を使うという点においては非常に不経済な食べ物である。

よく、笑い話でイタリア軍が砂漠で(貴重な水を使って)パスタを作っているという笑い話があるが、全くそれは実感するのだ。パスタをガンガン作ってると、あっという間に水がなくなっていく。しかもそのゆで汁はすててしまうものねえ。

水が貴重な国ではパスタはそうそう作れんね。

フィリピンのバナナ

フィリピンに来ておいしいと思うもの。
バナナとマンゴー。

両方ともミラクルフルーツと言われ、その栄養素はすごい物があるそうです。

特にマンゴーはカロチンやビタミンAが豊富。
こちらでは日本と比べ物にならないほど安くマンゴー100%のジュースがかえますので、ほとんど毎日それを飲んでいます。

あとはバナナ。
こちらもミネラルが豊富。
三種類の糖質を持っている為に、それぞれ吸収速度が異なり、いわゆる腹もちするとのこと。
その割に低カロリー。
こちらのスーパーで売っているバナナは、若干日本の物とは異なる。
皮が暑く長さが多少短い。
肉質はもっと黄色がかり粘り気があり濃厚である。
おそらく日本で売っている物より栄養が濃そうな気がする。

野菜が不足しがちな一人暮らしを是で補っています。

だいぶよくなった

今日一日安静にしていたら、だいぶ状態が良くなりました。

腰痛にプラス喉に風邪を引いてしまって、咳はでるし、咳をするときに体が緊張して腰が痛むという最悪な状態でした。

しかし不思議に思うのは、鍼とマッサージをしたのが金曜日夜。
そのときに先生はいかにも日曜日は大丈夫だろうというようなことを、結構確信をもっておっしゃっていた。もし日曜になってもどうしてもきになるようなら来なさい、と。
最初はそのときの痛みから、日曜も痛いでしょ、とおもっていたのだが、ふたをあけてみたら結構良い状態な訳である。

最初、金曜に鍼から帰ってきたときに洗面所で自分の顔をみたら、ひどく疲れているように見えた。
目の下にくまがはっきりと出ていたのだ。こりゃいかんな、ということで、マッサージ後はひどく疲れるのでそのまま寝入ったのだった。

その翌日、土曜日、体調はかなりわるかった。
思えばそれはもみ返しのようなものだったのだろう。
あんまりベッドから起き上がれずに、これじゃ、日曜にまた先生の所に行かないとな、とおもっていた。

そして、今日日曜。
まったく昨日の状態が嘘のような状態である。
さすがにちょっと痛みはまだ腰にあるのだが、緊急を要することまでもない。
今日は先生の所には行かないことにきめた。
(結構先生のいるあたりは、フィリピンの地理のわからない俺としては、あんまり休日の夜には行きたくないということもある。平日のよるだったら結構タクシー流してるしあんしんなのだが。ま、あんまり夜にはいきたくないのだ。)

考えてみると、これはやっぱり人間の自己治癒力を引き出す手法なのではないかと思う。
鍼とマッサージで体を結構刺激して、痛めつけるという表現は悪いかもしれないが、いい意味で体に負荷を与える。最初、その時点と特に翌日はその刺激のせいで体の状態が悪くなったかのように感じる。
ところが、その後、人間の自然治癒力が大きな反発をして一気に良い方向に降り幅をグッともっていく。
そういうように個人的には理解した。

だから、鍼とかつぼとかは即効性ではなく、もう少しサイクルを考えた物のようで、あんまり毎日する物じゃないのかもしれない。いっぱいすればいい、という考えは西洋的な薬学の考え方に近い。
必ず、治療をうけた日とその翌日は安静にしているのが良いようだ。

2008年6月14日土曜日

ipod touch復活

しばらく使ってなかったipod touchだが、腰痛になってから必要になってきた。

今のフィリピンのコンドミニアムは、仮住まいなので適当な家具がない。
なので、PCを適切な姿勢で見る机がないのだ。
勢い変な姿勢でPCを見ることになり、腰痛が強まる。

それでは楽な姿勢でネットを見るには、と考えると、ipod touchがいいのではと思い立った。

しかし、最初、こちらのネット環境では無線LANがない、どうしようと言うことになったが、Macのネット接続を共有させAirMacを簡易アクセスポイントにできることがわかった。これで無線LANアクセスポイントを買わずにすむ。ラッキー。

これでネット環境はOK。

あとはネットツールだが、僕の一番のメインアイテムRSSリーダー「Livedoor Reader」がiPhone向けだといまいちの機能なのだ。

ここはgoogleに任せようと、フィード登録をすべてgoogle readerに移行させた。
googleのサービスはほとんどがiphone対応になっているので、すげーフレンドリー。
大体海外系のサービスの方がiPhone向けが充実しているようなので、サービスがそれらを選んだ方がいい。Remember the milkなどもこれでOK。

あとはtumblrなのだが、iPhoneでうまくpostするような機能が見つかっていない。
それだけがちと不便。
しかし、腰痛を悪化させるよりはいいだろう。

腰痛

実は先週末から腰痛に悩まされている。
やっぱり朝がひどく半日しか会社にいけない。

そこで会社の知り合いの紹介で鍼にかよっている。
フィリピンに来て初めて鍼をするとは思わなかった。

今日は二回目の治療。
鍼とマッサージの合わせ技。
今、帰ってきた所。

かなり効いてきたように思う。
先生は日曜までみてまだ痛かったらもう一度来なさいとおっしゃる。

しかし、東洋医療ってほんとに不思議ですね。
実際に効くことは間違いないんだけど、その理屈はさっぱりわからない。

2008年6月11日水曜日

パラダイムチェンジ

パラダイムチェンジが起こったらそれに合わせて自分の動き方をかえていくのは事前の道理。
特に資金を多く持たない私のような物は、細かい変化に合わせて、すぐに方針変更することが大切。
短気だとよく言われるが、判断を早くするのは必須。だから見切りも早い。

iPhone2.0の発表はパラダイムチェンジにふさわしい物だった。

今年の後半の目標。

・iPhoneアプリの開発体制
必要な手続きを整えてさっさと開発する。
ObjecttiveCはMacの時に少しやったが、開発対象にモチベーションを保てず挫折している。
今回はiPhoneアプリが目標なんでがんばれそう。

・Google App Engineをプラットホームにした開発
これも先取り(でもないか)。
いずれ是が正式版になったときに必ず個々で開発したい要望が出てくるはず。
あとweb開発もやっぱやりたいし。
Pythonは前の会社のメイン言語だったんで学習は容易。

・フィリピンからの撤退をするか
ちょっと会社の方向性にブレを感じている。
あんまりフィリピンにいるメリットを見いだせないでいる。
元々投資のつもりできたのでだめでもいいんだが、そんなに資金があるわけではないので、損切りは早い方が良い。
というか、損ではないけど、まだ会社の体制として私の参加は時期早々かなと感じている。
早ければ来週、友人でもある社長が帰ってきたら結論をだすことになる。
場合によっては日本に帰国もありうる。


2008年6月10日火曜日

ちと脱力

しかし昨日のWWDCの発表に興奮しながら出社して、周りにはなしたけど、「何それ?」的な反応。。。

しかし同じ業界にいる人たちとは思えない情報感度の低さ。

しかも経営陣なのに、目の前の「きせかえツール」とかに追い回されて、単なる、他の会社でいう「ディレクター」の存在「だけ」になりさがっている。

たとえ目の前の仕事がどうであれ、自分が経営者であったりすることに誇りと責任感をもって仕事しなきゃね。

たいていこういう人は、iPhoneなんて日本の携帯がすべて実現できてることばかりじゃん、とかさー、
お財布が無いもんねとかさー、(じぶんら使ったことも無いくせに)
ワンセグないんでしょーとかさー、

本当に鎖国の中の発言ばかりなんだよな。

iPhoneがすごいのってそういうことじゃないでしょ。

あれが今年中に世界70カ国で販売されるということと、
それのターゲットは3GでiPhoneを使える=PCを使えるリッチな層になるということ、
既に2万5千のデベロッパーが申請して、まだ4千しかAppleではアプリを承認できてないこと、
iPhoneはあのスペックで199$で販売されるということ、

どれをみてもターゲットがワールドワイドじゃない?
そう、マーケットはワールドワイドなんだよ。
ワンセグとかお財布とか関係ないの。

このスペックの3G携帯を199$で世界にばらまかれたら、日本の携帯メーカーでどこが太刀打ちできる?
世界に占める日本の携帯業界の鎖国性だとか存在感の小ささをまるでわかっていないんだ。

着せ替えとかもいいけどさ。
今ごはんを食うだけで精一杯なのは、まわりだけでいいや。
なんかちと脱力しました。

やっぱ人の問題なのかなー。
俺の理想と遥かに遠いんだけど。。

SQLに関してメモ

AppleのWWDCのライブを覗いている合間にメモ。

SQLは集合を扱うのに向いている。
しかし我々は手続き型言語の思考回路にとらわれている。
手続き型言語の思考回路で集合を考えると、ついループと条件分岐の発想をしがちである。
ところがSQLはそれをスマートかつ効果的な形で表現するパワーを持っている。

一番駄目だと思うのは、SQLで取り出した集合を再度プログラム言語側で手続きルーチンでループして加工したり構造を変えたり、融合させたり、分離させたりすること。
(Viewをレンダリングするときにループさせるのはしようがないよね)

これじゃ全くSQLの恩恵を受けていない!

これらは手続き型言語でやることではなくって、SQLがスマートにできること。
だから、こういった物はSQL側にまかそう。
たいていはサブクエリーやJOINや集約やUNIONとか使って実現できるはず。
時にはSQL関数だって使える。

また、できるだけ一回のクエリーで望む集合を取り出そうとしよう!

そうでないと、それぞれ複数のクエリーで取り出した集合をメモリ上で手続き型言語によって再構築しなければならない。それはクールじゃない。

最終的に取り出したい集合のイメージをしっかりと持ってくエリーを組み立てることが大切。
SQLにおいては集合の取り出し方ではなくって、どんな集合が欲しいのかの方が大切。

昔々、webの世界でRDBMSを使うことはそれはそれは高価なことだった。
webのわずかばかりの機能にそんな高価なRDBMSを使うことは採算的にあわなかった。
ところがオープンソースのRDBMSの発展によってRDBMSは低コストで使えるようになった。
またwebも少しずつRDBMSの持つ複雑な問い合わせ機能に依存する機能をほしがるようになった。
そしてwebでRDBMSを使うことはコモディティー化した。
最近では単に永続データを実現する為に、単なるデータ置き場として使われているようだ。
また、最近のSQLを書かなくてもいいフレームワークがそれにいっそう拍車をかける。
そしてみんな複雑なSQLは書かなくなって、フレームワークに任せるようになった。

でも、もっとSQLはデータを取り扱うときにパワーはあるし、それをもっと使うべきでしょう。
フレームワークは簡単なSQLは「書かなくってもいい場合がある」ということを助ける。
だから、フレームワークが発行する簡単な物があってそれで実現できればそれにたよればいい。
しかしフレームワークが実際にどのようなSQLを発行しているのかをハックすることは大事だと思う。

2008年6月9日月曜日

現実解としてのデータベースとSQL

前にすべてのウェブサービスがローカルにデータベースを持たずに、クラウドのデータベースサービスやweb自体を直接データベースとしてクエリーできるようになるという絵空事を書いたことがある。

この考えは自分としては変わってないんだけど、現実解としては、やっぱり各ウェブサービスがデータベースを個々に抱えてそれを提供するサービスにならざるを得ないんだな、やっぱり。

いろいろクラウドとしてのウェブ開発環境が初期段階なので、まだ、十分に使えるようになっていないということ。いろいろ回数や使用量の制限がありすぎて実用にならない。

また、クラウドのサービスを使うと高コストになってしまうということ。
現実にそこらの安いホスティングでMySQL使っている方が安くって、なおかつ、ある程度までのリクエストに耐えることもできる。アマゾンもGoogleも提供しているクラウド環境は結局有償なので、何か金儲けする為のサイトでないと、簡単に使うことができんよね。

ただ、言えることはネットのウェブサービスのほとんどはデータの検索と更新追加等に翻訳されるってことは変わりはない。なんの変哲もないそれだけのことなのだ。

DBで言うとCRUDだし、HTTPでいうとRESTな訳である。
データを生成し、取得し、更新し、削除する。
それができるインターフェイスがインターネット世界にいろいろおかれているだけのことなのだ。

まずはユーザはブラウザ等のインターフェイスを使って、URLでサーバにクエリーをかける。
サーバはプログラムでそのクエリーをDBのクエリーに変換する。
そして最終的にはウェブにくっついているRDBMSがクエリーされて結果が返される。

これがクラウドになった場合、
単にRDBMSがクラウドに変わるだけで、
今はRDBMS用のSQLというクエリー言語が使われているのが、
別の言語に変わるだけである。

今単純にMVCでしっかりと作っているwebサービスは、
Mがちゃんと抽象化されていれば、簡単にRDBMSからクラウドに置き換えは可能であろう。

あとはそのデータを検索するクエリー言語の能力おの差があろうが。

その点SQLは長い歴史に基づき、また、数学的な集合理論に裏打ちを持つ為に、かなり高性能である。
私が、現在のクラウドデータベースサービスの問い合わせが、あんまり複雑なことができないというのはそういうことである。単純に今SQLでできていることが、実現できない、または、実現するにはアプリケーションの方でいろいろ面倒を見なければならないからである。

SQLがいいのは、ちゃんとRDBMSの設計が適切にできていていれば、かなり凝った手を加えた状態でデータをRDBMSから取得できる。それが一回のRDBMSの接続でできたりする。

アプリケーションの方は、ほとんどその取得データをアプリケーション側で何の手も加えることも無しに使うことができるほどだ。

だからwebアプリケーションの極意(ってほどでもないけど)のほとんどは、SQLに関するもので、SQLで適切かつ楽にデータが取得できるようにRDBMSの設計をすることである。
特にデータの持ち方は非常にアプリケーションのパフォーマンスにも影響する。

だから、しばらくはこういったRDBMS主体のアプリケーションの作り方は変わらないのかもしれない。

そういえば、最近、Firefoxも内部でSQLiteつかってたり、組み込みRDBMSがFの携帯に使われていたり、いろんなweb以外の所でも、データ管理の為にSQLが使えるデータベースが普及してきたようだ。

やはり、データを適切に管理することが現代のどのアプリケーション分野でも求められていて、それの最も標準的で普及した手法としてRDBMSが見られているということだろう。

2008年6月7日土曜日

独立記念日

フィリピンは6/12が独立記念日の様ですが、大統領令で月曜日に祝日が変更されたようです。
なので、フォリピンは月曜が休みで三連休です。

て言う訳なのかどうか知りませんが、今仕事の合間に気晴らししてたら、外から轟音でファンカデリックが鳴り響いてることに気づきました。なんかお祝いムードなのでしょうか。

周りに聞くと独立記念日はテロがあるかもしれん、なんて物騒なことを言ってました。
月曜はこちらは休みでも日本は動いてるからな。。
せめてオフィスに行かないで家で仕事しよか。

で、うちの会社もそんなこんなで金曜に新人歓迎会をかねてパーティーを開きました。
場所はエドコンの前のカラオケ屋です。

フィリピン人はカラオケが大好きで、というか、歌うこと自体が大好きなので、職種を問わず必ず誰かが仕事中に歌を歌ってます。

そういう国ですから、カラオケでパーティーを開くと大盛り上がりです。
はじめは日本人と同じく「シャイ」の気質をもつフィリピン人なので、目立ちたがり屋が歌うだけなのですが、乗ってくると、我も我もと歌い始めてすごく盛り上がるようです。
楽曲はみんな20代で若いんで、ほとんどがアメリカのポップスですね。

しかし、歌で一致団結することってあんまり実感がないんですが、ここの国民は歌で一致団結というか意気投合できる人たちなんですね。大合唱なんかしちゃって。

こういう所で音楽のパワーって感じますね。

なんて、しらけた視点で見ている寒い日本人の親父は、ただあっけにとられて、暖かい視線を送るだけでした。

2008年6月4日水曜日

saasとしてデータベース

webにデータベースというかRDBMSがくっついてwebアプリケーションなどと言われるようになってかなりの時間が経過したと思う。

僕がweb業界に入ったときは、まだRDBMSをくっつけてwebを運用するのは新しい手法で、普通ではなかった。ファイルベースの簡単なデータファイルであったり、ハッシュ型のDBMでデータを突っ込んだりしてデータパシストを実現していたように思う。

ところがRDBMSがwebにくっつくようになって、web自体のサービスが変わってきた。
今までのCGIとテキストファイルやハッシュDBMで実現していたのは、単にデータが永続化されるというメリットだけを実現できていたのだが、RDBMSが使われるようになって、RDBMSの持つ集計や並び替えの細かな昨日だとか、きめ細かい更新などが行えるようになってきたのだ。

技術者以外の方はあんまり関係ない話と思うかもしれないが、僕が言いたいのは、その技術の進化によってweb企画者の企画の発想もそれに影響されるようになってきたということだ。
例えば、最新アクセストップ10とか、カテゴリ毎に集計数をだしてリスト化してみせるだとか、そういった手法はRDBMSがwebにくっつく前はあんまり実現しにくかった。故に、RDBMSがくっついてから、そういうのが容易にできるようになったことが影響して、web企画者は企画の発想がある意味RDBMSのもつ機能や実現できることに、逆にコントロール(規定)されるようになってきたと思うのだ。

作り手も企画者も、言葉には表さないが、なんとなくRDBMSが既に存在することを前提に企画の型にはまっているような感じだし、作り手は企画者の企画をシステムい落とし込むにあたり、RDBMSを使った手法に、まず第一に落とし込むことになる。

最初、RDBMSを使うwebアプリケーションは高価なOracleだとかが使われていて、結構、重かったり、アクセスが多くなると破綻していたように思う。
それが、MySQL等の安価なコストのRDBMSの出現で一気にコモディティー化した。
誰でも、何でもかんでもRDBMSを使うことがwebの決まり事であるかのようになっていった。
RDBMSの使い方も本来の使い方とは違うところで、単なる、ファイルシステムの代わりとして使われるようになっていった。

確かにMySQL等オープンソースのRDBMSの普及により、前よりはシステムが負荷によって落ちることは少なくなった。ノウハウも少しずつ蓄積されていったことも影響している。

ところが、そういったRDBMSの機能向上を上回る勢いでインターネットというかwebを取り巻く環境が成長していった。それによって、驚くほどのアクセス数がアクセスするようになり、未だにRDBMSをどうアクセス数に大してスケーラブルにしていくかに関するノウハウやそれにかかるコストは無視できない物になってきている。データも無くしていい軽い物から公共の財産という概念にかわり、よりいっそうデータをなくさないように運用することが求められてきている時代でもある。

同時に僕がかねてからいっているように、RDBMSに規定された企画の発想が故に、二つの大きな問題がwebシステムについて回るようになった。

一つはどうやってそのRDBMSを埋めるデータを個々のサービスは集めることができるのか。
もう一つはそのデータを良質なレベルに維持するため、メンテナンスをどうすればいいのかということ。

大概のweb企画はここで頓挫する。
これは大規模になったときの問題(twitterの残念な現状とか)とあわせ現状の問題点になっている。

ところが最近一つの流れが起きてきている。
インターネット自体を一つのプラットホームとして見なすクラウドコンピューティングの考え方である。

既に大きなクラウドコンピューティング環境を保持するgoogleとかamazonがそういったクラウドコンピューティング環境を一般webサービサーに解放していく流れが最近でてきている。

インターネットをプラットホームと考えたり、クラウドコンピューティングの考えを持つと、上記にあげた二つの現状の問題点は解決されてくるのではないか。

データをどう「自分んの物として」集めるか、ではなく、データは既にプラットホーム(インターネット)の中に豊富に存在してるのだという視点。また、プラットホーム(インターネット)のデータは公共財であるが故に、自分の集めたデータも公開していくというマナーといかルール。

また、膨大な負荷をさばくことも、既にあるクラウドコンピューティング環境がさばいてくれる。
個人やサービサーは安心してそういったことを気にせずにサービスだけを考えていくことができる。

そういった経緯もあり、最近、amazonのSimpleDBとかgoogleのApp Engineとかsaasとしてのプラットホームを活用できないかどうか調査している。

しかし、こういったサービスに共通していることだが、やはり既存のサービスと比べてできることが限られているし効率も落ちる。
それはちょうど昔、デスクトップアプリケーションとwebアプリケーションを比べて、やはりwebアプリケーションの方ができることに制限があったり(OSの内部にアクセスできないとか)使い勝手においてデスクトップアプリに負けていたことを思い起こさせる。

しかし最終的に、webアプリケーションの使用がデスクトップアプリケーションに勝りそうな状態になっている現代である。

これはwebアプリケーションの使い勝手やできることが進化したということもあるだろうが、やはり、ユーザ自体の使い方が変わってきたいうことだろう。全体的にリッチで複雑な操作系よりはシンプルな操作系、使い方も効率性よりはライトな使い方が中心になってきたからではないだろうか。

saasとしてのデータベースやアプリ環境も同じで、
現在のローカルにDBをもつwebアプリケーションに比べると、あまりできることは多そうにはおもわれない。

例えばamazonやgoogleが提供するデータストアに関しても、現在のRDBMSのような細かい集計機能はそなわっておらず、それを簡単に実現することはむつかしい。
つまり今までのweb企画者が発想する企画を実現するには、これらのサービスは「機能がたらない」。
プラットホームとのインターフェイスがSOAPなものもあり、細かい頻度の更新にも向いていないようだ。
だから、「今までの発想の企画」にこれらを使おうとすると、開発者は大変である。

おそらく、「違った切り口」か「よりいっそうのシンプルさ」を軸にサービス企画を立てないと、これらのsaasプラットホームはうまく企画にフィットしないように思われる。

しかし時代の流れは必然なので、webにRDBMSがくっついてweb企画者の発想が変わったのと同じく、saasプラットホームが中心の時代には、それにより発想が転換した「新種の企画者」が出てくるのではないかと思われる。

おそらくは、もっとライトなサービス。
(プラットホームの)部品としてのサービス。
それらの部品を利用したメタサービス。
お互いのサービスは利用しあうという発想。
そのためにインターフェイスが常に公開されているという姿勢(みんなの為は自分の為!)

僕が最後にいいたいのは、
技術者の人には非常にweb企画やサービス企画に関わるのに有利な時代が来ているということ。
サービス企画をやられる人には、技術を恐れないで、そこで提供されるプラットホームで何ができるのかを、さけないで、正面から見つめることをお勧めしたい。
それには多少の技術を知ることも必要になるとは思うが、この世界はやはりそれを知らないで通り過ぎることはできない。

新しいサービスをやりたいのならなおさらである。
もしあなたが、今の、自分の所で抱えた閉鎖的なデータベースでゴチャゴチャやってそれで満足している、楽しいのならばそれでもいいんだけど。

ユーザはあなたの所のトップ10とか新着とかにもう興味が無いんじゃないかな?
そのカテゴリに何件あるとかさ、全く関係ないんじゃないかな。

少なくとも僕はそうだし、時代は本当に変わりかけていると思う。

睡眠は大切

今日の偏頭痛で昨夜0時台から本日15時台まで睡眠を取ったんですが、非常に調子がよくなりますね。

僕は人と比べてロングスリーパーの方なのかもしれない。
わりとだらだらと。睡眠の集中力が無いのかもしれない。

ロングスリープをすると、
昨夜まで悩んでいたことに、おきがけに既に結論が出ていたり。
昨日まで気づかなかった価値に気づいたり。
新しい物や情報に対する意欲が増進してたり。
創造性が活発になったり。

とにかくいいことずくめですね。
起き抜けから頭がフル回転しているかんじです。
起き抜けに取るコーヒーのカフェインがそれを増幅します。

今日からは睡眠時間の確保にもっと注意を払おう。
具体的にはもっと早く睡眠につかないとだめですね。
僕の場合は集中した睡眠が難しいので、割と余裕時間をとって、眠りにつくまでのぐずぐずとか、寝起きの二度寝三度寝とかを計算に入れないと行けないみたいです。

I was down

極度に体調が優れず、今日はずっとコンドミニアム。

昨夜、同僚にマニラの火鍋屋につれていってもらって帰ってきたのがこちらの0時くらい。
極端に疲れていてすぐ寝入ったのだが、結局今朝起きるとまた偏頭痛で、二度寝して起きたのは15時頃であった。

近頃、偏頭痛が頻繁にする。
何かがおかしいのか。
マニラの暑さは偏頭痛を増幅する。冷やすと心地よい。
まだ環境に体がついていってないのかな。

今日はずっとよくなったので、お米を買いにいこう。
納豆なんかも買えるといいな。

2008年6月2日月曜日

フィリピン到着

今フィリピンに到着してコンドミニアムに落ち着いています。

着いて早速、暑いですね。
夜なので幾分涼しいのですがそれでも。。

着いて早速チップ攻勢にあい、フィリピンに来たことの実感を感じます。
この国はサービスは金で買う、安全や快適は金で解決する、が徹底してます。
といってもサービス大したことは無いですが。。。

空港からマカティーのコンドミニアムまでクーポンタクシーを使いました。
普通のタクシーだと結構ぼられたりトラブルになりやすいです。
一見安そうなんですが、結局高いことになる。
特にこのご時世原油価格が上がっていて、この国のタクシーはガソリンなので、結構困ってると思います。その分悪どいことをしようという人間も多くなります。
入国でて出口ですぐ声をかけてくるのはこのたぐいです。
この国のタクシーを嫌いな俺としては絶対に乗りたくないです。
クーポンタクシーは値段は普通のタクシーより張りますが前払いで明朗会計です。

このようにこの国では安全や快適は金で買うのです。

久しぶりにコンドミニアムに戻ってきて、前と違うのは、日本のご飯を食べられる食材を持ってきていること。生活に必要な小物を持ってきていること。インターネットが通じていること。
だいぶ前よりは人間らしくなってきました。

今回は体調を崩さないように気をつけて参りたいと思います。

2008年6月1日日曜日

フィリピン出発

いよいよ出発で今、成田で飛行機を待っています。

なんかPCを開くのもおっくうで、EMONSTERでかいてます。

なんかフィリピンの生活に魅力を感じていないのでちょっと凹んだ気分です。いいなあ、と言ってくれる人もいましたが、個人的にはちっともいいことはなくって、家族と離れるしさみしい限りです。

恥ずかしい限りですが、うちの犬は子供と同様なので会えないとかなりつらいです。妻はSkypeでコンタクトできたりして結構つながれるんですが、犬はそういうわけにいきません。犬は嗅覚で存在を感るので、Skypeで声や顔は認識できてもにおいがしないので、不思議なようで、かえってさみしい思いをさせてします。僕の声が聞こえると玄関に走って探しにいっちゃうようです。

今日も出かける近くで準備から出かけることを感じ取って急に息が激しくなってまと割りついて大変でした。

そんなこんなもあって、思い出して写真とか見ると寂しく後ろ向きになるので、逆に前向きに早く生活と環境を安定させて、フィリピンの方に呼べるようにと考えるようにしています。頭でシュミレーションするのです。そうすると、心が落ち着きます。

さて、物事を前向きに考えれるようにするためには、いろいろ基礎環境が必要です。僕の経験では、睡眠をきちんととること。これが一番です。後ろ向きだなと感じたらまずは睡眠をとること。自律神経が正常にはたらきます。

あとは、フィリピンは暑いのでばてないようにすること。

結構、冷たいものをがぶのみしがちなので、冷たいものは、口に少量づつ含んで少しずつ飲むこと。胃液が薄まっちゃって消化能力が落ちます。

あとは甘いものの飲みすぎに注意。
フィリピンで買える飲料は水を除き甘いものが多いので飲みすぎるとビタミンB群が不足してばてやすくなります。

とにかく体のコンディションの維持が前向きにつながると思います。

というまに、搭乗の時間になりました。
それでは。

プラットホームとしてのウェブということ

案外、ネットに関わる人たちの間でもあんまり実感できてないことの一つだと思う。

僕らは既にあるwebのプラットホームの上に新しいアプリケーションを築けばよくって、なにもかんにも、一から構築する必要はないんだということ、案外理解されていないと思う。

逆に一からすべてを構築することは、既にいままで蓄積されてきたwebというプラットホームの恩恵を受けることができずに、面白みの無いアプリケーションの構築につながる可能性が高い。

まずはデータということ。
それをどこから集めるの?ってこと。そういういつもまとわりつく問題点。
これひとつとってもwebプロットホームの既にある豊富な資産という視点が見えないサービス企画は多い。そういうサービスに限って、そのコンテンツがwebというプラットホームになんにも(データという形で)還元しないという負の連鎖を持っていると思う。

私(私のサイト)だけで完結するより、外部とつながった方がもっと面白くなれるから、周りに対してはオープンでいてほしい。外部にオープンでいてほしいがゆえに自分のデータもオープンにするという姿勢。
この連鎖がwebというプラットホームをより面白くしていくのだと思う。

だから、既にあるwebアプリケーションやサービスに付随したサービスを作ることに後ろめたさを感じるよりは、より積極的にそっちの方に出て行くべきだ。

googleを近年まれに見るプラットホームだと認識するだけで、かなりかわった観点でサービスを作ることができるんだけどね。


2008年5月30日金曜日

ラーメン

フィリピンに向かう日が近づいてきて少しナイーブです。

で、向かう前に日本のうまいラーメンでも食っていこうかと。
あちらではなかなかうまいラーメンにお目にかかれないんで。
いろいろ検討したけど、結局地元の「北の大草原」に行くことに。

ここで「香りみそらーめん」を注文。

ここはいい仕事をしますねー。
スープをレンゲに取って香りを嗅ぐとミートソースに近いようないい香り。
一口口に入れるとまったりしたまろやかさ。
炒め野菜はいい感じにレアで野菜そのものの甘みが出ている。
特にタマネギはとても甘い。
麺はアルデンテの北海道玉子縮れ麺。
メンマはここの特徴で親指大の太さをもちしゃきしゃき。
いつも追加でトッピンングをする。

しかしラーメンほど一つの器に多様性と完成度を極めた料理はないと思う。

いろんな国の料理を食べてきたが、日本のラーメンに勝る物をしらない。

B級なりの熾烈な競争にて発展してきた日本のラーメン。
日本の人はこういう決められた設定というかお題の中で多様性とか完成度を極めることが好きな民族だと思う。日本人以外がやると反則技とかでてきて正常な進化は遂げられなかったのではないか。
あくまでラーメンという枠は守った上で独自の発展を遂げる姿が美しい。

2008年5月28日水曜日

悩みは比較するもんじゃない

痛いニュース(ノ∀`):「そんな次元の悩みで自殺。川田アナは世間知らずで打たれ弱いお嬢さん」…故・川田亜子さん批判で電撃ネットワーク・南部のブログが炎上

人の悩んでることなんて誰も本当にはわからんさ。
次元とか、量とか質とかで人の悩みを比較して考える人は能天気だと思う。
「お前なんかより俺の方が悩んでるんだ」とかね。
すべてそういう論理とか価値観で侵されてるのかなってね。

人間はすごい大変なことに耐えることができても、ほんのちょっとしたことに耐えられなかったりする。

そういうことが、そういう人にはわからんのですよ。

時に人はとても強い物だと思うが、時に人はそうも簡単に死んでしまうんだって思うこともある。



2008年5月27日火曜日

新サービス

新サービスを2つばかりリリースしました。
サースコーピオンス名義です。

http://mobatv.jp/
http://mobapv.jp/

両方ともYoutubeとのマッシュアップで携帯向けサービスです。
片方はテレビ番組を、もう片方が邦楽と洋楽を携帯電話(現状のYoutubeだとDocomoとAUの端末の一部)で気軽に楽しむことができます。

Youtubeの存在をしらないライトユーザ向けですね。
パケ代だけ気をつければ結構楽しめるかと。
シンプルなサービスになっています。

2008年5月26日月曜日

USキーボード

週末体調を壊してしまったがなんとか日曜は戻して、買い物にでも出かけようと。

新宿の東急ハンズで、フィリピンで使う用の電子レンジで炊飯とスパゲティが作れる用具を購入。

その後、秋葉原にてUSキーボードを物色。
Happy Hacking Lite for Macか新しいAppleのフルキーボードか迷う。

しかしHappy HackingはProfessionalだと打鍵感がいいかんじなのだが、Liteは多少ガチャガチャする感じ。
Professionalは1万円以上で高すぎ。
残念ながらあきらめてAppleの純正キーボードを購入。

その後、7階の万豚記にて妻と食事。

家に帰って早速USキーボードを使う。
ちょうど作業があったので喜んで使ってみた。
そのときはコンソールの作業だったので英字ばかり使っていた。
軽いかきすてスクリプトを作る必要があり、viにて作り、やっぱなれるとUSの方がプログラミングしやすいと実感。

そこまではよかった。

その後日本語を打とうとするときに気づいた。
ことえりにするとキーがJIS配列になる???
ことえりを抜けるとUS配列に戻る。。。

かなりなやんだ。
いろいろ環境設定をいじくってみるがなおらない。
再起動してもなおらない。

MacBook自体がJIS配列だと問題があるんだろうか???

ググっているうちに、ログインログアウトすること、みたいなのがかいてあったので、おもむろにログインとログアウトをする。

そうしたら、なんとUS配列で日本語をうてるではないか。。
なんだこれ。。

なんかインテリジェントにMacBookは内蔵キーボードでJIS、外付けはUS配列と分けているようだが、それらは自動的になされているようだ。

なんでなおったのかは全くわからない。
まあ、とりあえずはいいや、なおったから。

まあ、主に記号をうつ機会の多い、英字プログラミングのときに主にUS配列のありがたみがあるんだけどね。

たすかった。。

2008年5月21日水曜日

日本を歩いてみて

久しぶりに帰ってきて日本を歩いてみて感じたこと。

サービスもインフラもすべてが日本はすばらしい。

けど人の表情はだれも冴えない。
みんなつまんなそうな顔で歩いている。

フィリピン人はみんななぜか楽しそうだな。

生きるのが楽しいのと、死にたくないからとりあえず生きてる、の違い。

あと、日本の自転車のマナーは世界最低。
歩行者はおっかなびっくりあるかんとならん。

日本人って公式に制限されてると異常にルールを守るのに、
公然とルールが無いと、急に暴走する傾向がある。

旅の恥はかきすての売春ツアーとか、
花見や元旦のあとのゴミの山とか、

そういうのに象徴されると思う。

EMONSTER+BlueTooth+MacBook

日本に来て再びEMONSTERが活躍する機会が出てきてます。
もちろんフィリピンでも使ってましたが、SmartのSIMをいれてGSM端末として使っていました。
なんで、データ通信端末としては使ってませんでした。
あとは電話の他には純粋にEXELとかメモとかローカルマシンとして。

日本に来てまた使うにあたって、今まではWMWifiRouterでネット接続という感じだったんですが、最近ネットをみるとMacBookとかAirとかとBuletoothでつなぐってのが出てきてます。
こっちの方が消費電力が少ない(EMONSTERの方ね)ということなので、早速試してみました。

Airは今までEMONSTERとのペアリングが不調で、最近有志による改良が公開されているようですが、MacBookの方は問題なく使えます。

まずはEMONSTERの方でBluetoothとネット共有を有効にします。その場合有効にするデバイスをUSBでなくBluetoothにする所が大事。それとネットワークはembとかEmnetとか自分で選んで。

次にMacのBluetooth設定、おそらく検索されてS11HTって携帯デバイスが表示されると思うんでウィザードでペアリングします。最後にバスコードの数字がMac側に表示されると思うんで、それをEMONSTERの方入力すると無事ペアリングされます。

で、スピードはやっぱ、無線LANというかWMWifiRouterの方が早いです。
Bluetoothの方はやっぱBluetoothのスピードで制限が出ているようです。
ちょっともっさりしていてダイアルアップって感じのスピードですね。

だから、簡易は接続、メールとか文字中心の場合はBluetoothで。
スピード重視の場合は無線LANってかんじでしょうか。
電源は長い間使ってるとかなり消費するのはどっちも同じですね。
一時間ほど使ってバッテリーが半分くらいになります。

あんまりBlueToothの方に魅力を感じないのは俺だけでしょうか?

2008年5月18日日曜日

一時帰国しました

無事台風は回避してなんとか日本に到着しました。
フィリピンからは半袖で来たのですが、今日の日本は半袖でも十分でしたね。

久しぶりの日本ですが、やっぱり食べ物がおいしいですね。
特に根菜類があちらでは一人暮らしでどうしても欠けてしまいますので、今日は根菜ずくしの夕食を食べました。
体がほしがっていたせいか、大変おいしく感じます。

あとはネットワークがやっぱり早くて便利。
モバイルのイーモバイルもやっぱりすばらしいサービスだって海外から来るとわかりますよ。

あとはやっぱり愛犬に遭えたことが最高です。
今日は愛犬も一日中べったりでした。

二週間ですがいろいろやりたいことがあるので、じっくり整理したいと思います。

一時帰国前夜

帰国日と台風が重なるのではないかとかなり心配したがどうやら大丈夫なようだ。
マニラは今日は曇天で台風のせいで風が強く、それゆえ比較的涼しい土曜日だった。

成田に預けている車の引取書を会社に忘れていたことを思い出し、午後からゆっくりとオフィスに向かう。
会社につくとなぜか一人ぼっちでdennisが仕事をしていた。
どうやら昨日社長に早急に指示された仕事をやっつけているらしい。
「taroからの仕事をやってんの?」と聞くとその通りと。

これは結構フィリピンでは珍しいことなのだ。
休日に出勤して仕事をやるのはそうとうまじめでないと。
うちは結構デザイン部隊はオタクが多いので深夜残業も休日出勤も平気なのが多いのだが、俺が統括することになった開発部隊は結構そういう感じではないと思っていた。

dennisはNo2のシニアでもの静かでまじめである。強い自己主張をしない。
しかし責任感は強くまじめである。人より出しゃばることを嫌うところもある。

No1のシニアはrommelというのだが、彼は結構フィリピン社会では高給取りの方で、独身貴族。
一般のフィリピン人にはなかなかいけないスポーツジムに通い、赤くビカビカの三菱のピックアップトラックも持っている。彼は他より英語が流暢なので、その分一言余計というか、言い訳が多く自己保身の主張は積極的にやってくる。結構自己主張するタイプ。

今両方を鍛え上げてるのだが、技術力やコーディング等力量に関しては、両者にさして違いはない。
日本で言うとジュニアクラスであろう。
ただ理解力や吸収力で俺はdennisに光る物を感じた。
彼は妻もいて稼がないといけない。
なんとか彼の活躍する案件と場を作り上げていかなければならない。
それとrommelにもっともっと焦らせる必要がある。

なんというか、こう長くこの世界でやってくると、自分の関わったり教えたりした人間が元気で自分の道を見つけてやっているという情報を見たり聞いたりすると非常にうれしく思う。特に間違った道に行っていないことがわかると余計うれしくなる。今はもう教えてもいないのに。

一つ、俺はこの国でちゃんとした技術者を育て上げる使命がある。
自分で選択してきたことの一つである。
二週間日本に帰国するが、その後はまた帰って彼らを教え続けていく必要がある。

いつの日か日本で関わった人間のようにかれらが元気で独り立ちするところを見てみたいと思う。
日本から帰ってくるときになんか欲しい物があるか?と軽い気持ちで聞いたら、なんと答えは英語の技術書だった。マニラのあたりではなかなか内容によっては手に入らないのだそうだ。

なんか少しうれしかった。

日本の関係者の皆様、明日から帰国します。
二週間ですが、いろいろご相談に伺いますのでよろしくお願いします。

2008年5月16日金曜日

ネット開通

ようやくフィリピンのコンドミニアムにネットが開通した。

で、Smartの設定に来た人間は最低だがSmartBro自体は思ったよりいいという話。

会社のRoanldがいろいろ仲介してくれて今朝9時に設定にくるはずのSmartの奴らは10時になっても来なく、10時半に一度今向かうという電話があった後、結局11時過ぎに来た。

ここはフィリピンなのでこれはもうあきらめるしか無い。
こういうことが多すぎる。

来た奴らはちょっと年配のよれよれのおっさんと若者一人。
おっさんはなんかスチールの汚い棒を持っている。

若者がおっさんに指示。
おっさんスチールの棒を切り始める。どうやらSmartBroは無線インターネットなんで、アンテナを固定するためのものらしい。しかし、どこかに落ちていた棒を持ってきたとしか思えない。。

なんとかアンテナをつけて方角の調整とPCの設定。
ここら辺はまるでスカパーのよう。
微妙な角度があるらしい。
若者が微妙に数センチ方向を変えてはPCにてチェック。
そんなに違いあるんかい、ってほど細かくそれを繰り返す。

最終的なPC設定だが、彼はMacをしらないらしい。
インターネットオプションはどこにある?
とか
コマンドプロンプトはどこだ?
とかうるさい。

結局Macの設定はほとんど俺がやるはめに。。
意味ねー。。
しかも、やつはチャッカリと「ipconfig」じゃなくて「/sbin/ifconfig」だとかメモっていきやがった。
いろいろMacとネットワークの基礎を教えてあげたよ。。
その間、おっさんは俺のソファーでうとうとしてるし。

で、設定のやつらはどうしようもなかったが、ネットワークはおもったよりいい。
やはり日本の光と比べるとDLとかおそいんですが、前評判で非常によくない情報を聞いていたんで、正直期待してませんでした。

しかし、Skypeでの画像チャットも会社の回線と遜色ないし、Youtubeやニコニコ系もストレス無くみれた。
今もShoutcastでテクノ流しながらネットしてる。
全く問題ない。

ま、俺の部屋はコンドの27階なんで障害物がないからな。
電波状況がいいんでしょう。

ということでネットワークは得した気分です。
といってると、もう日本に帰国する日が後数日と近づいてます。
意味ねー。。
二週間はここではネットしないもんね。

ま、こんなもんです。フィリピンは。

2008年5月15日木曜日

スクレイピング

今いろんなサイトをスクレイピングしていろいろゴチョゴチョやっている。

最初、蟹君がBeautifuleSoupなんかを話していて、「ふーん」位にしか思っていなかったが、まさか自分がいろいろスクレイピングするとはおもわなかった。でもやってて結構面白い。

まあ、音楽でもコンシューマ映像でもウェブでもマッシュアップというか、サンプリング、再編集といった物が盛んになってきている。もちろんこういった現象が起こるためには再構成・編集するための豊かな素材環境がなければならない。これがデジタル化、インターネット化によって豊富なデジタルデータが流通するようになった。それがこの現象の根底であることは間違いない。

それと、マッシュアップするための道具が一般に普及してきたということもある。
音楽ではサンプラーとサンプリング音源を組み立てるDTMソフトウェア。
あとは簡単にPCで動画編集可能になったこと。
ウェブプログラミングでも大きなWebサービス自体がAPIを提供していることとか、いろいろなライブラリの発達が根底にはある。

で、公開されているAPIをつかってデータをゴニョゴニョして再構築再構成するのはわりと「表の全うな道」である。
正当性としてはこうあるべきであろうし、こういった方向で発展すべきであろう。

で、俺のやっているスクレイピングはもっと「裏のヤクザな道」を想起させる。
なんかこそこそAPIで公開されていないデータをハックして奪い取るような感じだ。

いずれにせよ、これからは既にあるウェブの固まりやデータをそれぞれパーツとしてみることができるかという、ちょっとかわった知識が必要になってくるであろう。それらをどう組み合わせたら面白く魅力的なことができるかということに長けている人が面白いと思う。

根底にあるのは移り変わりの早いウェブの世界でネタになりそうなサービスやデータの固まりをよりよく知っていること。これは蓄積される財産である。トライブ・コールド・クエストのQ-tipがすばらしいサンプリングアートをヒップホップという音楽で提示したのも、彼のもっている豊かな黒人音楽の古くから蓄積されたレコードライブラリがあったからこそで、それが焼けてなくなった後に、彼が創作意欲をかなり長期間にわたって失ってしまったというのは、よく分かる話である。

あとは、その豊富な資産をそれぞれ分割してパーツとしてとらえることのできる知識である。
どこの部分がつかえて、どこがコアで、どこがいらないのかがわかること。

あとはそれをどうつなげていけばいいのかというのは、いささか技術的な話になるだろう。
そこら辺は多分に技術やの領分である。
Web技術でいえば、DOMの理解とかHTTPリクエストの構成をハックしないといけない。

こういったことをしてハックするのは、実は非常に楽しい。
いくつか楽しいコンテンツがフィリピンから出てくるとおもうので、その際は紹介したいと思います。


2008年5月12日月曜日

散文的な説明書

いきなり表題とは違って恐縮だが、今日おれがコンドミニアムにいないときに、Smartの人間が来て、Internetの設置に関して俺を一時間くらいまっていたそうです。コンドミの入り口にいる受付兼ガードマンがそう話してくれました。

そいつはいきなり何の俺に連絡もせず、勝手に俺がいるかと予測して来て、しかも一時間も俺が帰ってくると予測して待っていたそうです。

俺の電話番号を伝えてあるんだけどな。。
というか、連絡せずに普通くる?

Smartと言えば日本ではNTTDocomoの様な会社。
そこの社員がこの有様じゃ、全体的なレベルに疑問が生じるってのも無理無いだろう。

しかし、今Fueldの仕事を手伝っているのだが、あるシステムのメンテをある開発者から引き継いでいる。
引き継ぎが完璧じゃないのもあって、疑問が生じるとその人にメールで聞いたりする。
ところがその開発者から来る説明メールがいつも散文的で困る。

なんというか、説明書に求められる機能になっていないのだ。
まるでエッセイか詩をかいてくるかのようである。
行間を読むことを強制するし、読めないひとには何にも伝わらない。

しかし皆さん、説明書とか手順書が欲しいのにそれが詩的だったりしたらつらいでしょ?
それがどんなに美しい文だとしても。
例えば携帯の説明書である機能がわからないときにそれを引くとして、その文章がわざわざ倒置法でかかれていたり、奇をてらって最初に結論の予兆見たいのを伏線にして、そして結局はあなたの解釈次第なのです、みたいな書き方をしていたら、途方に暮れると思う。

その人は尊敬できる開発者なのかもしれないが、ビジネスでは問題がある。
僕はビジネスの戦場でもまれてきたエンジニア・プログラマだからその欠陥がよくわかる。
これはだめだしを社内でくらう説明書なのである。
顧客には出せない。

やはり人はそれぞれそれなりの才能があると言うことだろう。

2008年5月11日日曜日

フィリピンの合わないところ

暑くて蒸し蒸ししているところもそうだけど、なにげにイラッとさせることがいくつかある。

まずはやたら車がクラクションをならすこと。
圧倒的に日本より回数が多い。止まっている車しかないところでも、10分に一回はならすやつがいる。
何を主張したいのかは不明。というかならすんじゃねー!

フィリピン人が揃うとうるさい。
カフェだとそれなりに静かで落ち着いた空間を求めるんだけど、欧米人主体だと基本的にしずか。
ところがフィリピン人が揃うととたんにうるさくなる。
なんか知らんが「ギャーギャー」はなしてる。
というか黙れ!

タクシーがうざい。
フィリピンの恥部である。
俺は数回フィリピンのタクシーに乗って、そのせこいだまし攻撃に頭にきて、できるだけ乗らないようにしている。
しかしなぜか夜道を歩いていると、すーっとタクシーが近づいてきてクラクションを一回ならす。
ようは「乗らないか?」という営業らしいが鬱陶しいことこのうえない。
特に道を横断しようとすると、ハエのようにタクシーがたかってきて、一台追い返してもその後ろにあるもう一台がまたよってきたりする。前の車追い返したの見てないんか??
そんなこんなでみんなタクシーがスローダウンするし、それに従い他の後続車もスローダウンせざる終えないので、いつまでたっても道を横断できない。
この国の印象の悪いことの60%以上はタクシーによる。
政府も考えた方がいいんじゃね?

しかしSmartがネット設置しにこないんでいつまでたってもネットしにカフェに出かけるのはうざいな。
もう999ペソはらったんだから早よ設置しにこいよボケ。
ネットの無線LANだと7日間有効で1000ペソする。約日本円で2500円ほど。
二週使うと5000円ほどになってしまう。
Eモバイルなみじゃねーか。たまらん。このプアなスピードで。
ほんとに早く設置にきてほしい。

しかしほんとに生活することになると、やはり最初はお金がかかるね。
昨日いろいろ買い物して痛感した。
日本にあるものと同じ者が重複していてちょっと無駄を感じたりして凹む。
ネットがきたら無線LANにするの必須だから、AirMac Expressもひつようだろ。
あれは一万ちょっとか。
電子レンジも買わんと食事に不便するしなー。

2008年5月10日土曜日

ふと土曜日

まだSmartの奴らがインターネット設置にこないんで、相変わらずスタバでネットしてます。

まあ、フィリピンでは約束通りにこないとか、いつまでも催促しないと連絡がこないとかな普通のこと。

しかしスタバでネットするときに、日本のように長居を気にする必要はない。
結構、ドリンク一杯でみんな長居しているのだ。
むしろ問題なのは電源の問題。

この電源の問題も、日本では勝手に店のコンセントを使うと窃盗になるなど気になるのだが、こちらでは全く気にする必要はない。

たいてい僕が行くスタバやシアトルベストではいつもコンセントが近い位置を覚えていて、そこが開いていると入るようにしている。そこでおもむろに電源をコンセントに差し込んでも文句を言われることは全くない。

たまに固い椅子でなくちゃんとしたソファーもあるので、そうなるとよりいっそう心地いい。

もともとスタバなんかはそういうコーヒーを切り口にした「環境」をうっているんだものね。

ただ、もともとヒッキーな俺はわざわざスタバにでかけるのもうっとおしいところ。
はやく家にネットがこないかとおもう。

一時帰国する前にくるかなあ??

2008年5月9日金曜日

フィリピン人教育

やっとフィリピンに適合してきた。
ネットも家にもうすぐ入る予定。

しかしこの国のリズムになれきってしまうと日本のスピード感についていけなくなる恐れがある。
みんなこの国にいる日本人はこの国や人間のだめな部分ってのに気づくんだけど、それを変えるというよりはそれになれきってしまうらしい。これはとっても危険なことだ。

来週からフィリピン人にフレームワークを教えていく。
優秀な人を二人だけだ。
そして彼らがタガログ語でほかの人間に伝える。
もちろん彼らが教えることによって復習効果があることを見越してのことだ。

一応すべてのフレームワークを知ってもらうというよりは、フレームワークのパーツをきちっとこなしてもらうことを目標にしている。
DB設計からモデルクラスやコントローラクラス、アクションメソッドのスケルトンまでこちらで縛って、そのアクションメソッドなり、ビューファイルを作業してもらおうと考えている。
もちろんコンポーネントやヘルパーもこちらで作る。

うまく行けば自分の経験にもなるだろう。
こういう経験をできる人もなかなかいないだろうから。

2008年5月6日火曜日

KeyHoleTV

今のオフィスのエアコンはビルの調整で21時くらい(?)から急に効かなくなる。
今日はここ数日よりマカティーはあつかったようだ。
エアコンが消えてからのオフィスは地獄のよう。

うまく仕事がなかった俺は、今日は吉野家にいってみようと「パセオ・デ・ロハス」をすすんだ。
しかし今日は暑すぎた。
体は汗でびっしょりで、のどは乾くし、のたれ死にするのかとおもった。

なのであきらめて、グリーンベルト2のシアトルベストに直行。
アイスティーの大とクラブサンドを頼んでしばし休憩+インターネットタイム。

いやー、シアトルとスタバは異様に冷房が効きすぎていて俺にはベストマッチ!!
おまけにネットできるし、家のエアコン代うくし。

で、何をしてるかというと、MacにVMwareいれてWindowsいれているので、そこにKeyHoleTVをいれて日本のテレビ番組を流しながらいろいろブログ書いたり情報整理したりするのです。いまだとフジの「スポルト」が流れてます。

これ便利ですね。
別にフィリピンのネット回線はそんなに太いものではないけれど、十分ストリーミングしてくれます。
画質はそんなによくないんですが、十分なものです。

外国にいる人間にはありがたいものです。
これもちゃんと日本の番組を流してくれているユーザさんのおかげです。
足を向けて寝れません。方角わからないけど。。

とにかくYoutube、ニコ動、KeyHoleとかは本当に優れたサービスですね。
特に外国にいる人間には大変ありがたいものです。
今はロケフリもあるし、今度日本に帰ったら考えようかな。


2008年5月4日日曜日

フィリピンインターネット事情

こっちに来てからまだアパートメントにインターネットが来ていない。

こっちにはいくつかの選択肢があるようだが、一つはSmart Broというおそらく3G回線を使ったワイアレスインターネット、もう一つはADSLである。前者は家にアンテナの様なものを取り付けてそれ経由でインターネットに接続する。設定は比較的簡単でなおかつ取り付けまでが比較的早い。しかしスピードが368kに最高限定される。後者は大家の了承とかいろいろ手続きが面倒な上、帯域は512kまで保証してくれるものでも、月に7000円くらいかかる。

いろいろ悩んだが、家のインターネットは緊急用なので、今、Smart Broを頼んでいる。
けどもう少し時間がかかりそうだ。

しかしどちらにしてもインターネットは必須である。
僕の場合はプライベートの娯楽もかねているので、インターネットがないと家に帰っても何もすることがない。
せいぜい、MP3tunesから自分のMP3をDLして家でならすくらいである。
なので、土日でもインターネットができる会社にいってインターネットするのだ。

今日、もう一つの手段を発見した。
ここらには主に富裕層向けに一応、スターバックスとかシアトルベストとかがある。
そういうところはたいてい無線LAN環境を用意してある。
もちろん無料ではない。
だいたい、もう一つの通信会社「Globe」のWIZというサービスである。
これに接続するには、しかるべきローミング会社と契約するか、店頭にてチケットを買うか、あとはクレジット払いでチケットを買うことができる。
僕はクレジットで買ってみた。
無線LAN自体はそのまま接続できるので、そのあとブラウザーを立ち上げると、WIZのトップページにどの接続もリダイレクトされる。そこかから、クレジット購入のページに移動して、しかるべき項目を入力してサブミットすると、最後の画面にIDとパスワードが表示される。それでログインすると、ほかのサイトも見ることができる。

価格は1時間100P(250円程度)と一日400P(1000円)くらいと7日間有効がある(600P)。
値段は少し高いのだが、例えばこちらでコーヒーを頼むと日本と同じで250円くらい。
1時間のネット接続を買って500円程度になる。

一つこの形のいいところは、スタバとかは外人向けを意識してるせいか、エアコンが非常に効いている。
おれはこの国のモールとかのエアコンはぬるいと感じてる人間なので、スタバとかでやっと冷房の恩恵を感じる。
あとは比較的落ち着いてコーヒーを飲みながらネットできること。あとは、比較的に家の近くに何件かあるのでオフィスへいくよりは近いということ。あと、結構深夜までやっていること。
電気代が非常に高いフィリピンでは、いい気になってエアコンをつけていると、家賃ほどの電気代をせいきゅうされるそうだ。家のエアコン代節約にもいい。

悪いと所は、値段が高いこと。もう一つは電源の取り口がないこと。PCの電源で決まってきてしまう。
(微妙に電源がある店もあるようだ。)

ちゃんとSSHも使えたので、仕事での緊急対応も良さそうだ。
でもSSHも通じるということは、もしかすると80番ポート以外は無線LANをつなげた段階でチケットを買わなくても通じるのかもしれないと、ふと思った。今度試してみよう。もしできれば、80番ポーとリクエストを22番にフォワーディングすることでただで使えるかもしれない、なんで思ってしまう。

後は電源問題だな、予備バッテリーを日本でさがすかな。

結構電気代節約を考えると、家でインターネットしない方がいいかもしれない。
もちろんオフィスでやるのが一番いいのだが。

ちなみに今も、グリーンンベルトモールのシアトルベストからの書き込みです。非常に快適。

2008年5月3日土曜日

こざかしいフィリピンのタクシー

今フィリピンで借りているマンションとオフィスが徒歩で15分から20分なので、歩いていけないこともないのだが、いかんせん、今は非常にあついことと、タクシー代がそれでも日本円で120円から200円程度なので、ついタクシーで出勤してしまう。

しかしこの国のタクシーの運転手はこざかしい奴らが多い。
なんというか、少しでも付け入る隙があればちょっとした詐欺を引っ掛けてくる。
特に外国人とみるとそうである。
この少しでも人を欺いて小銭稼ごうとする根性は国民に根付いているのではないかと思ってしまう。

まずはのってすぐにメーターを動かさない。
必ず半数以上はこのパターンである。
忘れているのではない、わざと動かさずに料金をごまかして、なんだかんだいって多めにふんだくるためである。なので、かならず「てめー、メーターを動かせ」といわなければならない。つかれる。。

あとは、乗るといきなり「100ペソでどうだ!」とか、断ると「上乗せで20ペソだ!」とか勝手に料金を設定にかかる。とにかくメーターを動かせさせないといけない。

最悪になると、メーターは動かすが、停車と同時にメーターを消して40ペソなのに「100ペソだ」とかいってくるやつがいる。有無をいわさず40ペソぶん投げてだまっておりるしかない。後ろでなにか叫んでるなー。。しかも、ちゃんといわれた所についてねーし。。

非常に外国人向けのきれいなショッピングセンターのところから乗るタクシーはあんまり変なやつはいない。町で捕まえるやつが最低なのだ。

はっきりいって毎日こんなやつらと調整しているのは疲れる。
片道は歩いてかえろかなーと思ってき始めている。

この国はこういうひとでいっぱいでーす。

2008年5月1日木曜日

フィリピン到着

何とか到着して一日過ぎました。

あまりの暑さに辟易。
初日は朝空港へかなり速く出発したため寝不足で頭痛もする。

何とか会社までたどり着き、しばし休憩。
その後会社でかりてくれたアパートへ行く。

ワンルームのこじんまりした部屋だが、フィリピンの悪い癖で、ちゃんとライフラインが設定されていない。水はでるがお湯がでない。電話も当然無い。

お湯は明日設置にくることになったので、フィリピンでは普通という水シャワーを浴びる。結構水も冷たく無いのでなれれば平気だ。

最大困ったのは、ネットがまだ設置されてないことと、割と高層なので、電話の電波が届きにくいこと。そのために自由に電話もできない。

日本で通信が行きとどおっている環境になれているもんだから、ネットと電話の不自由な環境はかなり凹む。というか、恐怖すら覚える。

なんとかネットをいれることと、家族をこちらに呼ぶことをしないと、精神的にかなり安定しないとおもう。

唯一ネットが完備で涼しく落ち着くのは会社なので、なんか、会社に入り浸りになりそうだ。。

2008年4月28日月曜日

All you need is net

ここ一年くらいでネットの存在が必須になってきている。
それは初めはネットのある場所に自分を移動させてきていたが、最近はネットの環境を自分の回りに持ってくることが出切るようになってきた。

音楽の聴き方も以前は自分のストレージで貯めた音楽を聞いていたが、現在はネットからのストリーミングである。ソースは自分の曲をアップしているMP3Tuneからだったり、Shoutcastだったりする。外でもShoutCastのPlaylistをWindowsMobileのgsplayerに食わせて、3Gの通信に任せてなれ流しする。

あとはメールもGmailに集中させており、PCからはブラウザで、ipod touchやWiindows Mobileからはimapのクライアントでアクセスするので、基本通信がないとなりたたない。

MemoやTodoもRemember the Milkにありネットがないと優先順位さえも分からなくなってしまう。まったく役立たずになってしまう。

何といっても一番辛いのは、常にネットから降ってくる情報が途絶えてしまうことだ。ネットの無数のフィードをLivedoorReaderに食わせ、キーボードショートカットで高速に速読していく。気になった物はピンをたてて後で一気に熟読。感心したらTumblerにTombloo経由でどんどんアップしていく。夜中に今日アップしたTumblrを見直して整理したりしている。また、FifefoxでVimperatorとAutopagerを入れてからWebを見るのが高速化した。特に検索なんかは今までの苦労はなんだったんだと言うくらい高速化する。全然情報の量が圧倒的に違う。

これらの手法はすべてネットがあってこそ成り立っているものである。ネットがなかったら、俺はタダのでくのぼうだ。

ネットで圧倒的な情報に接している事が最近はまったく不安でも怖くもなくなってきている。むしろ、今までの人が取得しえなかったであろう圧倒的な情報の流れに身を任せていることの方が安心でかつ心地いいのだ。

だから、フィリピンに行くのは正直怖い。
日本がネットに恵まれているのは、何ヶ国も見てきて知っている。
しかしここ最近に自分に起きている変化を顧みるに、ネットの環境の乏しい場所に身を置いて、果たしておれはちゃんとやっていけるのか不安である。

まったく、たいしたネット中毒患者だよ。おれは。
収入が多少減ってもネットにかける時間を減らす事はできない。

でも、俺と同じような人間が結構世界にいるような気がする。
人間は明らかに新たな段階に上がろうとしている。
ネットの情報はどんどん多くなっていき、その膨大な情報の流れにビビらない、今までとは違う情報取得の手法を駆使して、驚くべき速さで情報を乗りこなしていく人種が出てきている。

2008年4月23日水曜日

EMONSTERでSkypeOut

昨日深夜の電車で走りながらやってみた。
回線は3G回線で無線LANではない。

結論から言うと普通に固定電話にかけて通話できます。
けど、聞く方はクリアですが、声を受け取る相手の方は結構雑音がひどいようです。

これがEMONSTERが原因なのか、ヘッドセットなのか、回線の問題なのかは分からない。

一回、WMWifiRouter経由で無線LANでPCからSkypeOutしてみたら、回線のもんだいかどうか切り分けできるような気がします。

また報告します。
とりあえずは実用にはなるようです。
僕は定額コースにはいったので、携帯電話代削減のためにはいいかもしれません。

2008年4月16日水曜日

携帯電話ゲーム考

今日久しぶりに夕方6時台くらいの、いわゆるフツーのサラリーマンさん達が帰宅につかれる都営地下鉄に乗っていました。

ふと見ると、久しぶりに感じたのですが、結構疲れたヨレヨレの中年サラリーマンさんが携帯電話でしょぼいゲームをやってました。

なんか久しぶりにみた光景に深い感慨を抱いてしまったのです。

そーいえば、最近電車で見かけるのって、DSとかPSPやってる人たちばっかだよなー。けーたいでんわでげーむやってるのみかけなくなったね。

ケータイ電話ゲーム業界にかかわっていたのは2〜3年前なんですが、はっきりいって速く足をあらっといてよかったですね。

今時ケータイ電話でゲームやってるのはローティーンか中年おじさんだけですね(決めつけモード)。

ゲームやりたい人は携帯ゲーム機に流れてる。

ケータイ電話コンテンツって、ほんとに一時代の徒花に感じますね。
もちろん全否定するわけではない。
現在で結構堅くお金を稼ぐにはいいコンテンツ商売でしょう。
でも未来がみえませんね。今を食うためにはいいんでしょうが。

僕がみたいのはその先に有るものです。
コンセプトは良かったんだけど、ハードの進化もネットワークの進化も追い付いていなかった時代の作品みたいな。
その進化の中間過程のように感じるのです。

(テトリスっていまだにうれてんのかな)

2008年4月15日火曜日

どこでも無線LAN

どうも、最近限りなく90Kgに近づいているmanamanmanaです。

最近のヒットとしてはネットで速い人はみんなやり始めてるんですが、EMONSTER+WMWifiRouterによるどこでも無線アクセスポイント化です。EMONSTERは手に入れてから音声端末としてはまったく使っていません。また、加入時にEMnetに加入しなかったので、いわゆるEMobile版携帯コンテンツ(?)とかNavitimeのようなGPSコンテンツは使えないのですが、もともとの目的が、「どこでも無線LAN化」にあったので、通常のデータ通信をやるだけで全く問題はありません。一応、EMONSTERのIEでサイトを見たりしたのですが、あまりの使い勝手の悪さに、これはダメだと思いました。なんで、ソフトはNetFrontを一応入れただけです。EMONSTER単体で使う使い道は今のところ立っていません。個人的にはSkypeとGoogleTalk互換のIMが有れば結構単体でも使うかもっていうのがあります。

で、「どこでも無線LAN化」なんですが、非常に快適です。電車に乗る前にEMONSTERでWMWifiRouterを起動してコネクトしておきます。電車に乗ったらおもむろにipod touchを出してSafariでブラウジング。

あとは出先の喫茶店でEeePCでつないでメールチェック(Gmail)とかたまに簡単な仕事をやっつけます。
今はスケジュール管理、タスク管理、メール、死後と環境全てがネット上にあるので、ネットが無い状態では仕事ができません。

ひとつこの「どこでもLAN化」が優位な点は、ネットを使うデバイスの方は、特に接続環境を意識せずに、単に無線LANアクセスポイントにアクセスするという単一のインターフェイスで良い所です。その無線LANアクセスポイントはEMONSTERが提供しているのですが、その先がブロードバンドの有線だとか無線LANだとか3Gネットワークであるとかは、一切デバイス側は知る必要が無いし、それによってアクセス方法を変更する必要も無いということです。プログラミングでいうと、優良なAPIが提供されて、中のロジックが隠蔽化されている、ということと同じ感じです。

もっとEMONSTERの面白い使いかたがないか考えている所です。

さて、自分ではEMONSTERが熱いんですが、巷でざっと今日のRSSを流して見たところでは、今日のニュースのメインはWillcomのD4のようですね。いよいよAtom対応デバイスがでてきましたね。
しかしVistaだとは思いませんでした(笑)。
さて、チップセットの制限でメモリも1GB制限ということですが、本当にVistaは快適にあのデバイスの上で動くのでしょうか??メモリもディスプレイ解像度も全くVista向けじゃ無いかんじがするんですが。。
自分は全くこれには興味がない(Vistaっていう時点で無し)のですが、Vistaが快適に動作するのかどうかは興味があります。

むしろ自分にとってここ数ヶ月で熱いのは、
  • Ubuntu次のHardy Heronの正式リリース(4月中のはず?)
  • Firefox3の正式リリース
  • EeePCの900のリリース(これももうすぐのはず)
といった所でしょうか?
特にEeePC900のリリースとHardy Heronのリリースがマッチすれば、新しいEeePCを買ってそこにHardy Heroをインストールできるのでそれを期待してます。
その時にはメインブラウザはFirefox3になっているはずで、これはここ最近の中で僕が実際に使って高く評価しているハードウェアとOSとソフトウェアになります。
今度のEeePCは問題の横解像度がまともになり、SSDが12GBくらいになりそうですね。かなり期待できます。
Hardy Heronも安定版になるので、安心して使うことができます。おそらくフィリピンのPCにはそれを入れると思います。

近頃思うのは一番大切な重要度がPCのスペックからネット環境に移ってきていると思うのです。
それはOSやソフトウェアの重要度が下がってネット環境の重要度があがってきていることと同義です。
金を投資すべきは自分のネット環境です。常にOnLineでいるために投資することは本当に意味があります。
EMONSTERなんかへの投資を僕が財政的に厳しい状況でやっているのは、そういった僕の中のプライオリティーを頭の中だけでなく、行動まで一致させたいと言う強い希望からきています。

とにかくネットこそが一番大切でそこを中心に全てを考えていくべきなのです。

その中でネットにもっともマッチしたデバイスとして僕はEeePCを選択し、
OSとしてはLinuxのUbuntuを選択しました。
この快適さは1Kg以上のノートPCを持ち歩き、壊れやすいHDDを気にしながら、
起動の遅いWindowsやMacを使っている人にはたぶんわからないでしょう。
常に自分が思うときにOnLineになれてパフォーマンスを出せると言う事を考えたときに、1Kg以上とか、HDDだとか、WindowsやMacっていうのはそれだけで、パフォーマンスを下げるものだとおもってます。

あと、できるだけデータはポータビリティーを考えてネットの向こう側に置くように心がけています。
仕事場の環境もできるだけネットの向こうに置くように心がけています。
できるだけFirefox上で動くサービスを利用するように心がけています。
開発もこれからはネット依存でブラウザネイティブな言語や開発環境がはやりつづけるとおもいますね。
究極はブラウザだけあれば開発可能なようになるんだとおもいますね。

こういった事を考えると、非常に心が軽くなりますし、
なによりも、ネットと電源と言う二大インフラがいかに大切なのかがわかってきますね。

逆にいえば僕はこの二大インフラが保証されさえすればどこでも仕事ができる自身が今は有ります。
そういった事がいっそう自分の気持ちを軽くさせますね。

2008年4月5日土曜日

Share

なんだかここ数日おぼろげながら、ぼんやりとしていた概念がわかってきた。

「Share」である

世の中のいろんな問題を有る切り口で見た場合にすっきりと見えることがある。
ここ数日この現在のWebやRealで起こっている事を「Share」を切り口に見るとよくわかってくるのだ。

そんなの当たり前じゃん、っていう人はすいません。
物分かりが悪いもんで。

例えば、今日すごく天気が良くって、なんというか日光で色彩が鮮やかになっているような感じで、道脇に咲いている花がすごく綺麗に見えた。

その時思ったのは、この綺麗に思っている感覚って、他の人も感じてるのかなってこと。
どのくらいの人が同じ感覚を持っているのだろうという興味。

これがShareの感覚の源と合致しているのかなって思う。

その花自体は誰の所有物でもなく、その花を綺麗だと思う感覚=情報は皆に共有される。
でも花自体は誰にも属していない、みたいな。

Webの世界はその「Share」の感覚をデジタルで効果的に行うことの出来る「場」なのだと思うし、まさにその「Share」の実体そのものなのではないだろうか。

情報はデジタル化されるといくらでも劣化せずに複製可能である。
その劣化されない情報はWebによって簡単により多くの人間たちに「Share」されるようになってきたんだろう。

この「Share」の考えって、結構人間のもつ「理性」の中で原始的で根本的な欲求の部分に近い所に位置するものなのでは無いだろうか。

人は根元的に「Share」したい。
または「Shareされた自分」になりたい。

ここら辺が「ソーシャライズ」というキーワードとも接点を持ってきて、ともに今のWebのあり方に大きな影響を与えているのだと思う。

そして、それはこれからの人間の生き方にも大きな影響を与えているのではないか?

今までは情報手段の限界から、各孤立したブロックでのソーシャライズであり、Shareであった。
当然そのブロックの中での満足感を味わう事ができるが、そのブロック内での満足感への依存から、えてして、ブロック外の世界に対しては、Shareしない、という壁がつくられ、それがその構成員の安心を保ってきた。

今世の中に起こっているのは、その壁がガラガラと音をたててくずれ始めているという現象なのでは。

Shareの単位がよりグローバルに地球単位になってきている。

その感覚が次のあたらしい次元に我々を導いているような感じがどうもするのだ。

そして前に書いたとおり、Shareの概念は人間の根本的快感と合致する。
みんな「わかってもらいたい」し「わかりたい」。
また、みんなに「わかってもらっている自分」になりたい。
そこに快感を覚える。

あの何かを人とShareしたときの、独特な感覚はなんだろう。
なんともいえない解放感を持っている。

何かを必死で所有している時の辛い感覚と対極にあるのだ。

人は何かを「Share」したときに開放され、軽くなる。
自分だけで所有するということは辛い事である。

もちろん全ての物事がShareされれば全てなんでも解決すると考えているわけではない。
ただ、何かを有る程度までShareすることによって、何か経済的に合理的な効果が出るという事も人間は知っているのだと思う。

考えてみたらインターネット自体が「Share」の概念のおかげで成り立っていて、効率性がとられてるんだもんね。
だからインターネットの根源にはShareがあるんだよね。

企業体だってこれからは規模とか利益とかもあるけど、いかに基本目標とか理念をShareできる人間で構成することが出来るかって事が大事になってくるんだと思う。

それが各自のHappyにつながっていくんだと思う。
必ずしも金を独占的に所有することが幸せじゃないもんね。
それを誰かとShareしたときにさ、幸せになるんだと思う。

そういう方向に世界が動き出してるように思えるのだ。

2008年4月3日木曜日

MIDが切り開く未来

もう昨日からAtomとMIDの事ばかり書き込んでいる。

調べれば調べるほどMIDの切り開くであろう未来に希望が見えるのだ。
おそらく日本のユーザ層の移行はゆっくりであろう。
インターネットが、特に、リッチなPCでのインターネット環境が常に生活の必需品の世代(20代〜40代)を中心に少しづつ移行していくことになるのだろう。

今のふやけた10代には期待してない。
あの鎖国の象徴であるimodeの小さい画面とともに世の中から淘汰されてしまってもいい。

ここで俺が大事なのだろうと思うことは、あくまでインターネットとそれによるアプリケーションが生活の一部になっている層がマーケティング対象だということだ。TwitterとかTumblrとかGmail、Skype、Youtubeが無いと生活出来ない(ほんとはそんなことは無いんだけど)と言う層だ。OfficeのVBAマクロに興味があるだとか、年賀状を刷るのが目的な人では無い。そんな人は昔ながらの「デスクトップ」とやらで大きな画面でちくちくやってもらってかまわない。だが、ここでいう対象層は異なる層なのだ。こういった人たちは。

そういう人たちにぴったりくるデバイスが、
もっと軽快でどこでもOnLineでモバイルネイティブなMID端末になるだろうということだ。
モバイルネイティブは別に外出中に留まらない。家の中で色々ポジションを変えながらも使いつづけられることをも意味する。リビングで、トイレで、バスタイムに、寝室に、庭で、それぞれそのデバイスはついて回り、それでもっていつもAlways On the netなのだ。

そういった生活に密着した情報ネットワークデバイスって今まで日本でいうと携帯電話だった。
日本人の多くはインターネットを知らずにいきなりその世界に入り込んだ。
「経験」としてはちょっとプアだけど、それは紛いもなく生活に初めて入り込んだネット体験だったろう。

でも諸外国では事情がちがった。
既にPCでのリッチなネット体験をしている海外の若者には、その携帯上のコンテンツは二番煎じで貧相な物でしかなかった。これは俺自身が欧州圏と米国圏で携帯電話コンテンツに少しかんだ事があるので実体験として非常に強く感じている。日本ではやっていた着メロや待ち受け画像、ゲームは、彼らにとっては夢中になれるものではなく、偽物のガムに入っているシールみたいなものでしかなかった。

ここにきてMIDが切り開こうとしている世界は、まさに日本がかつて携帯電話で狙っていた層であろう。

彼らの満足できるコンテンツやサービス、ソフトウェアが提供できる本物の携帯端末。
しかも始めからインターネットがバンドルされているもの。
それが世界標準ってやつだし、日本が「鎖国」から揺り起こされるようになるのも見えてくるのであろう。

大体、日本っていうちっぽけなマーケットだけ相手にしても、過当競争と次第にやせ細る畑の中でどうやって今日明日の食い扶持をかせぐかっていう切ない戦いにしかならない。
三菱はそうやってimodeから撤退していったし、ソニエリだってそっぽを向き始めているじゃないか。
どうみたって、通信をとっても端末使用をとっても世界に標準たるものを持たない日本の携帯電話業界は、海外に進出しようとしてもかなわない話。既にノキア、モトローラ、ソニエリ、サムソン、LGに食われちゃっているってのは公然の事実である。

MIDの世界こそ、日本が挽回できるかもしれない世界かもしれない。
特にコンテンツやソフトウェア、サービスを提供する人たちにとっては。
世界標準に準拠した戦いなのである。

さて、
Atomの入ったMIDだが、6月くらいに発表されて夏くらいから売り出されるといわれている。
MSは軽量版のVistaは出さないといっているそうなので、おそらくOSはLinuxのカスタマイズ版かUbuntu等のディストリビューションが乗ることになるのではないか。(MSは次のWindowsはコンポーネント化してくるみたいだから、それからなのかな)。もちろんMIDにもいろんな物が有るだろうから、Vistaの乗っているMIDもあるでしょう。ちょっと重いだろうけど。

キラーアプリ基盤はもちろんブラウザー。
おそらくFirefoxとWebKit系が本命なのではないか。
それと間違いなくAdobeのAIR。(レノボの試作品MIDのGUIはAIRらしい)
ここら辺、つまりこれら(Gekko、WebkitのCSSやJSの実装、AIRの仕組み)の理解がこれからの技術者に必要な要素。

それと技術的には、DOM、JavaScript、XUL回りとかxpiを作る知識、HTML5、あとはFlexあたりかな。
かなりクライアントかつUI向けな技術知識が必要とされていくと思います。

(サーバ回りはFrameworkにしたがって、有る程度蓄積された知識を元に、きちんとスケールアウトさせて開発・管理していきましょうってことだと思う。てか、これを主作業にするサービス業者がいっぱい出てきて、それは、そういった仕事は有る程度企業体力勝負なんで、そこはそういう体力のある優秀な技術者を抱えた会社に頼みましょう、ってのがある。Amazonのクラウドサービスとかはそんな方向性だし、そういった「少数の」会社が寡占していくのではないか?これって、昔見たダイアルアップ時代のインターネットプロバイダーの中小が消えていった感じを思い起こさせます。中小のベンチャーが狙うのはこちらの線じゃないでしょ?)

あとは楽しいサービスがつくれればww

そうそう、今日のいろんなニュースのなかで一番感心したのがこの記事。

Apple の戦略を象徴する「MacBook Air」

普段あんまりコンサル系の話は関心することが少ないんだけど、これはよい。

これを読むと、Jobsの狙っている所と、MIDの狙っている所がクロスオーバーしてくるのがわかる。

Jobsがどうしてああも割り切ったスペックのMacBook Airを出すことを考えたのかがよくわかる。
おれもこれを読むまではAirのよさってわからなかった、正直言って。
USBも一個しかないしさ、80GBしかないしさ、DVDROMがねーじゃんとかさ。
「今までの古い脳」で考えるとさ、やっぱりお買い得に見えないわけ。
MacBookの方がお買い得じゃん?

でもさ、Jobsは軽さと薄さを重視したんだよね。
君等が足りないっていってるのって、みんあネットワークで解決するじゃん?
ネットの向こうのストレージつかってさ。
コンテンツもメディア使ってるのって古いよね、ふつーダウンロードでしょって。
いつまでそんなに古い脳をもってるの?
そういう人にはかってもらわなくていいよ。
とまではいっていないだろうけど。
そういうことだと思う。

こう考えたら非常にAirが欲しくなってきた。
魂を揺さぶるっての?そんな感じに見えてきた。

実際に俺は今、Ubuntuを入れたEeePCでプライベートから仕事まで全てこなしている。
EeePCもMIDなんだと思うけど、たった5万円ちょっとのMIDですべて「こなせて」いる。
自営業だからほんとにそれで飯食ってるんだ。
(まあ、Webの技術者だからってこともあるんだろうけどね。)
別に4GBのSSDと4BGのSDHCだけしか保存領域がなくてもちっともこまってないよ。
(友達にはそれじゃまずいじゃんって笑われたけどww)
仕事場とストレージはネットワークの向こうの安いホスティングサーバにあるしな。
普通にYoutubeとかShoutcastたのしんでるし。
さすがにエンコとか動画編集とかしないけど。(趣味じゃないんで)

だから、MIDじゃ物足りないんじゃない?って思う人も、ネットが中心の生活の限り心配なことはないから、別に。
逆に携帯電話しか使ったことのない人でも、MIDは恐くないから。
うちの妻も17InchのMacノートをFirefox専用端末としてつかってるからさwww。
うちの妻にもできるくらいだから、他の...以下略。。

やっぱり個人的には、次の高解像度のEeePCもMac Airも両方ほしいな。
AirにはVMware Fusion入れて、その上でWindowsとUbuntu Linuxを動かせばそれでOK。
WindowsはIEだけしかチェック用にしかつかわないんだけど。。
これで完璧じゃん。

むしろ本格的に整わないといけないのはネットワークと電源のインフラだよね。これからは。
MID+Linux+WiMAX(3.5G??)ってのが本命だろうけど。
どこでもインターネットが無線で無いと絶対にダメダメ、デバイスよりもそっちの方が大切。
あとは公共にもっと電源を有料でもいいからさ、供給してくれるスペースが無いとだめだよね。
ここらへん、サービス業の方は特に電源のサービスを入れると、これからの時代は客がつきますよ。

今だと、どうだろ、Emobileが一番いいのかな。
俺もUSB型の使っているけど。最近不満です。
これからいつも無線の常時インターネットの時代なのにさ、USBで、しかもちょっとだけ長いっていうダサイケーブルでつながってるのってさ、どうよ?
やっぱさ、最近話題になっている、EMONEとかEMONSTERのさ、WindowsMobile端末にWMWiFiRouterをいれてさ、それを無線アクセスポイントにして、それをカバンの中にポイって放りこんで、澄まし顔でipod touchとかAirとかEeePC使うのが今のところ一番かっこよくね?
見てるリーマンが、ここってアクセスポイントあるのかな?って思わせるくらい。

ま、将来的にはiPhoneが今のFoma High Speedくらい(Emobileくらい)の早さでつながってくれれば、それで事足りるんだけどね。もっと将来的には、WiMAXで。

さて、本格的に技術の取得方法も、デバイスも通信手段もPost2007体制に持っていかないとな。
まずはEmobileの契約変更からかな。
あとは頑張って仕事してAirかうか。
ね、蟹君。





2008年4月2日水曜日

MIDとATOMが実現するもの

Intelが積極的だ。

6月に出ると言われてるAtom(CPU)
それによって実現されるMID
またSSDも増産するとな

MIDがこれまでのデバイスと違うのは、そのAtom CPUセットが、今までモバイルで主流だったARM類よりも省電力の割にはパワフルで、また、今までのIntel x86で蓄積されたOSやソフトウェア資産がそのまま継承出来る点である。

特に今まで日本と言う「パラダイス鎖国」の中でちっちゃい「ケータイ」と言う枠組の中で、特殊なコンテンツ作りのノウハウを得意としてきた人々は、今の、オープンネットワークと蓄積される膨大なコンテンツ資産に対応出来なくなって、既にその特殊権益を犯され始めてきている。

と同時にハードウェアの世界からも大きな波が押し寄せてくるということなのだ。

もう特殊なOSをわざわざ載せて開発することはない。
WindowsやMacOSやLinuxでOKなのだ。
そこで動くブラウザもPCと同じでいいじゃないか。
じゃ、その上のコンテンツもPCと同じでいいよね。
(基本的には、ということですが。)

いままで、我々は、インターネットの有る場所に自分の実体を動かしていかなければならなかった。
今後は本格的にインターネットの有る場所を自分のいる場所に自由に動かせる時代である。

モバイルっていうとすぐに外を考えがちなんだけど、家の中でいろんな場所やシチュエーションの中で常にインターネットを携帯出来るだけでも十分モバイルなのだ。

MIDは特に今の若い既に生まれた時からインターネットネイティブな世代に急速に普及していくだろう。

(携帯に犯されたふやけた日本の若者はどうだろう?だって、他の西欧諸国の若者だったらあんなちっちゃい携帯画面でリッチな経験を期待できると思わないもの。彼らはもっとリッチでパワフルなMIDを自然に欲しがるはず。だっていつでもSkypeしたいじゃん。Twitter気になるじゃん。TumblrのDashboadに街で見つけたお気に入りをアップしたいし、Youtubeを見たいかもしれない)

低コスト化して大容量化するSSDがそれを後押しする。

そして通信インフラもWiMAXとかもっと広範囲なWiFiが後押しする。

どんどんグローバルスタンダードになっていく時代にみんな着いていけるか??
何か古い物に固執してないかい?
既得権益のぬるま湯につかってないか?

それはもう近くにきている。

VIM7を久しぶりに触ってみる

たまたま蟹君からチャットで話しかけられ、その時にVIMのことを話した。

彼は今立派に某検索エンジンの会社でMac上のPythonでプログラミングをしている。

彼はVi使い。俺はなんでも使いなんだけど、最近はEmacsかAptana

久しぶりにVimを使ってみようと、Ubuntuでインストール。
パッケージはvim-gnome。

いいねーVIM。
指使いもちゃんと覚えていたよ。
特にVIMは7になってからが非常によい。
Omni補完が秀逸。
スクリーンショットがPHPでしょぼくて恥ずかしいがorz。。

あとCtagでプロジェクトファイルさらって、タグ補完とか。
あとは文書内をCtl+n,pで補完できるよね。

補完マニアの俺としてはうれしい限り。

最近Aptana起動でスプラッシュのゲージを見ているとそれだけでコーディング意欲30%減の俺としては乗り換えをせずにはいられまい。

やっぱ、VimかEmacsだね。LL言語は。


Firefox 3 Beta 4不具合

UbuntuでFirefox3 beta4を使っているが、非常にいらいらする不具合がある。

Livedoor Readerでキーボードで操作しているときに、記事の詳細を見ようとvキーを押す場合、JavaScriptによるポップアップが開いて詳細を表示しようとするのだが、当然デフォルトではFirefoxはそのポップアップをブロックする。

そこで、このドメインはポップアップを許可するよっていう設定を施すのだが、これが効かない。

なんど設定しなおしても必ずポップアップブロックされてしまう。

これが無ければいいのにな。

でもすでにFirefox3使いやすすぎてFirefox2にはもどれない。。。

2008年4月1日火曜日

Pwn to Ownコンテスト

なんかLeopardが呆気なく陥落したようである。
Safariの脆弱性。
ダメ杉、Apple。。

これは諸説あって、
陥落したPCをハッカーが賞品賭してもらえるということで、ハッカーはMacAirが狙いだったのだと言う説もある。

いずれにせよ、OSの標準アプリでやられるなんてダメ杉。

つぎにやられたのが、WindowsVista。
なんかFlashの未公開の脆弱性でやられたらしい。

これにはハッカーがVistaを残しておいては名折れになるとばかりに頑張ったのではないか?

この件は、FlashはOSでないし、サードパーティーだからな、ってことを言う人もいるけど、サードウェアのアプリでOS自体が乗っ取られるって構造はモダンなOSの考え方としてどうなのよって感じが個人的にはする。

最後に残ったのはUbuntuの入っているVaioらしい。
やっぱハッカーもLinuxには敬意を表したのかな?
単にVaioイラネだったりして。Ubuntuイラネかも。。

いずれにせよ、いつも常用しているUbuntuが堅牢なようで喜ばしいことでー。

最近はMacな時代だけど、俺にとってのブームは昨年までのこと。
俺の中では次の時代はLinuxだぜって思ってる。
また浮気するかもしれないけどMacに。

Emacsは忘れた方がいい(Gosling)

僕は普段「emacs」を開発用のエディターとして使っている。
方法はプロダクト又はテストサーバの該当ディレクトリをsshfsでローカルにマウントさせ、そのローカルディレクトリのファイルをemacsで編集するわけだ。

結果はブラウザをリロードさせるだけですぐチェック出来るので、この方法はシンプルながら非常に気に入っている。

でもGoslingがこんなことをいっている。。

あー、Emacsね。あれは1978年頃のアイデアとしてはとても素晴らしいものだったよ。何年前になるかな?30年前?みんな、もういい加減使うのをや
めたらどうだ。30年前と言えば、ムーアの法則が少なくとも15回は適用できることになる。2の15乗倍ものCPU性能があれば、もっと違うやり方ができ
るはずだ。NetBeansを試してみることを強く勧めるね。セマンティックスをリアルタイムで解釈してくれるプラットフォームを使い、キーストロークを
逐次分析させることで、素晴らしい魔法のようなことができるようになるんだよ。だから、Emacsのことなど忘れてしまった方がいい。もうテレタイプなん
て使っていないんだろう--それってあまり頭の良いことじゃない。とにかくEmacsを使うのはやめた方がいい。
でもおれの記憶だとNetbeansって奴はムーアの法則を越えるくらいにクソ重くって、サポートされてるLL言語も少なくって、とても日常使う気にならないしろものだった。

一応、Goslingがそういうものだから、Netbeansを落として俺のUbuntuに入れてみた。

が、起動して3秒で使うのをやめた。

やっぱ、Netbeansはクソだな。

おれも、Emacsだけじゃまずいのかなってひよって、Aptanaを入れたりして試したりしてるんだ。AptanaはEclipseベースだったよな。Macの時はTextMateも使っていて、必ずしもEmacsだけじゃ無く色々挑戦してみたのだが。。

でも、Netbeans使うくらいならEclipseをつかうね。
ごめんGosling。
あんたの言う魔法を受け止めるには、俺のPCが遅すぎるか、俺が短気過ぎるらしい。

前述のとおり、色々使っているのだが、いざ緊急で対処しなければならないときとか、つい、Emacsに戻ってしまう。もっと急いでる時はVimである。

この軽快さは何事にも替えられない。
Windowsでいうメモ帳ではたらず、IDEではクイックに対応出来ない用途のエリアって結構あると思う。Web開発ならなおさらである。そういったスペースに、特にLL言語にとっては、EmacsやVimは非常に有効であるような気がしている。MacだとTextMateがいい線をいっていると思う。

結局いつもEmacsに戻ってしまう俺だが、
もう一つクロスプラットホームと言うことがある。

最近はクロスプラットホームの物をを好んで使う用にしている。
ソフトウェア、ファイルフォーマットや全てに置ける基準としている。
その点、EmacsもWindowsでもMac、Linux、BSDでもどこでも使える。
同じやりかたで。
これはFirefoxにも言える。

これからも色々浮気するとは思うんだが、
結局戻る所はEmacsだけよ。っていう落ちの無い話でありました。
チャンチャン。。

2008年3月10日月曜日

社会保険料とか税金とか

今日、ようやく時間ができて、前の会社の事業縮小で解雇されて以来手元になかった健康保険証を作るために区役所出張所にいってきた。今後は勤め人になる予定が今のところ無いので、久しぶりの国民健康保険と国民年金の加入である。

その時に役所にいわれたのだが、前年の収入ベースで計算されるために、結構高額に請求されるようなことだった。

この国の仕組みはいつもそう。
前の年の収入が「普通」恒常的に続くであろうモデルを想定して、次の取立金額を決める。
そこには経済のトレンドだとか、勤め人が一般的なモデルから勤め人を離れて独立指向のトレンドだとかを考慮する余地はまったく無い。

ちょっと会社や個人事業を立ち上げた人ならわかると思うが、普通スターとアップの時は、前の年の収入が安定して継続的に続く事ってなかなか望めない。普通、ジェットコースターの様なアップダウンを描くはずである。その場合に前年収入を元に計算をされるのって結構きついんだよね。特する場合もあるけど。基本的には前年より収入が下向きになることをあまり考慮してないっていうか。

この国のシステムは、誰かに囲われて細々生きていくのに最適化されていて、個人が自分の力で生きていこうとするときに、特に、新たな挑戦をするときにあまりやさしくない。しかも、北欧諸国のように、誰かに囲われなくなっても最終的に国が贅沢に囲ってくれるっていう方式にもなっていない。

だけど時代は少しずつ変わり始めているはずだと思うけど。

2008年3月2日日曜日

ちょこちょこCAKE.PHP

需要と供給の関連からやっぱPHPをやらねばならないということで、CakePHPで作ってます。

Cakeも色々言う人はいるけど、僕のようなしがない個人事業プログラマが個人という限られたマンパワーをエンパワーメントするにはいいツールだとおもうんだよね。大規模開発ってわけでもないし。Symphonyとか他にも色々あるようだが、基本的にはそういった案件だとあんまりPHP自体どうかと思うし。

しかし僕の回りがそうなのかも知れないけどPHPの案件は多いですね。
ちょっと前まで一年近くPythonでやっていたため、PHPでやると気楽でいいですね。
Pythonの方がずっとStrictなので、もっとエラーが頻繁に起こります。
でもPythonで本当にエラーが出来ないように作ると、結構バグの少ないものができます。
PHPの場合、それ以前の段階であんまりエラーがでないんで、個人的には楽です。
そういえばJavaやってたときももっとStrictで頻繁にエラーがでてたような。
PHPが楽なんですね。。

で、Cakeなんですが、今二つの案件を並行に回しているんですが、結構いい感じで学習出来ています。一つの案件は、本当にベーシックなCakeの知識でいけるやつで、なんというかViewとModelの一対一関係がわりとストレートで、データ構造もマスターと詳細と言う基本的なパターンなんで(いわゆるhasManyとbelongsTo)基本を理解するには丁度良い感じでした。

もう一つの案件は、もっとviewに複数のモデルとの関係が強かったりして、そしてモデル間の関係がわりとHABTMな関係が多いので、これはこれで今までの発展系として勉強になります。

ま、どちらにしても、CakeとかFrameworkの醍醐味は、DB→Model→Controller→Viewの関係が以下に楽に透過的になっているかと言う所にあるとおもうんです。いちばんいいのは、ViewとModelが直接連動しているように扱える位の透過性を感じれるものがいいとおもうのです。
やはり一番多いDB&Webの案件ではそこを確実にしかもいかに楽に構築できるかがプロジェクトの分かれ目だと思うんです。

そういった意味では今回はDBDesignerからER図作って、それをXMLに落として自動的にCakeのModelを関係性込で自動生成と言うやりかたは、非常に斬新なものでした。ここを自動化出来るかどうかって結構大きいと思うんです。

ま、しばらくWebがRDBMSを使っている限りはこの流れは続くでしょう。
しかし、10年後にも残っているパターンだとは思わないけど。
そこのころにはもっと抽象化されたインターフェイスの外部からデータを持ってくることになっておそらくRDBMSは隠蔽化されてると思うんです。そのころにはだから、もっと自然にアプリの方がデータを扱えるようになってもっと楽が出来るんじゃないかと思っています。
どのウェブサーバも裏に個別にRDBMS持ってるってのも考えたらwebの進化には無駄な話だからね。

楽できるっことはそこがきちっとシステム化されていて、直接いじる必要が無いって事だと思うんで、システム全体的な見地からいっても僕は賛成です。コアなデータ管理の部分は、もっと専門家がきちっと安全な所で管理すべきだと思うし、Webのプログラマがそこを個別に管理しなければならないってのも、本来的には無駄な話だと思っています。

2008年2月28日木曜日

Poroxyも「いか」から「たこ」の時代に--eeeXubuntuにPolipoを入れる

昨夜から風邪を軽くひいてしまい、熱で少しダウンしてしまいました。
今かかっているプロジェクトがもうすぐ終わるので、ちょっと休んだらもう一頑張りです。
プロジェクト関係のみなさま、申し訳ありません。m(__)m

さて、ふらふらとはてブ界隈をブラついていてると、Mac用の簡易Porxy「Dolipo」で驚速27倍速ブラウジングとかいう話題が複数のっていました。

驚速!27倍速ブラウジング、Macユーザ必携ツール登場:Dolipo


簡単にいうとこれは簡易?Proxyの「Polipo」(イタリア語でたこの意味)をローカルに立ち上げて、それを経由してブラウジングすることで、一層ブラウジングのスピードを上げることが出来るというものらしい。

僕はMac使いなのでDolipoも使う事が出来るんですが、今メインで使っているのはEEEPCでそれに載せたXubuntuと言うLinuxです。この小型のPCで全ての作業をほとんどやっていると言うほど愛しているので、このPCでなんとかPolipoが使えればいいんじゃないかと考えました。

で、結果としては簡単で、UbuntuのパッケージにPolipoがありました。
さすがUbuntu!
Synapticで検索してワンクリックインストールです。
インストールが終わると自動的にデーモンモードで立ち上がってます。
デーモン起動設定も/etc/init.d以下あたりに入っています。
あとはブラウザのProxy設定をlocalhostの8123に設定。
それで問題なくブラウジングできます。

あとは設定ファイルが、/etc/polipo/config なので、英語が読めれば設定ファイルにていろいろな設定をすることができます。どれも親切にコメントが書かれているので問題無く設定できるでしょう。

これをつかってよかったら、Macの方はDolipoを入れてみることにしましょう。

2008年2月18日月曜日

今度はeeeXubuntuにOperaを入れてみた

仕事しなければならないのに現実逃避モードです。。
なんせ集中力のあがるのは一日の中でわずかな時間。
しかも、何かのブログに書いてあったが、本当の集中状態に入るまでには無音で準備する15分の時間が必要とのこと。そこから集中状態に入るが実際集中はそう続かない。
集中した時間に以下に無駄な事をしないで仕事のコアを進められるかである。

ということで、現実逃避のためにOperaをEeePCのXubuntuに入れてみた。
といっても簡単で、OperaのサイトからUbuntuのバージョンにあったdebを落としていれるだけ。
あとは日本語ロケールファイルをDLして、どこか(俺は$HOME/.opera/)に保存して、設定パネルからそれを指定するだけでメニューの日本語化はOK

問題はデフォルトのフォント指定はむごいのでIPAフォント一式に指定しなければならない。
設定パネルのWebページタブの通常のフォントと等幅フォントの指定をまずは変えないといけないが、フォント選択ダイアログの中でIPAフォント系は文字化けしているのでちょっと戸惑ってしまう。これは昔はIPAPGothicとか指定していたのがIPA P ゴシックとかの日本語名に変わったためである。

これは、フォントの並び順から、
  • IPA Gothic(等幅)
  • IPA P Gothic(プロポーショナル)
  • IPA 明朝
の順である。
それぞれを指定してあげればOK。
あとは詳細設定タブのフォントで、各種フォントの設定があるので、適宜指定してやる。
Web系の人なら知っていると思うが、セリフは明朝でサンセリフはゴシックを指定してやればいいと思う。モノスペースは等幅、それ以外のファンタジーとかがゴシックでいいだろう。

で、使用感であるが、
やはり軽い感じである。Firefoxよりも。
EeePCの場合、Forefox3と同様に、ページのズーム(解像度)を変える事ができるので、横幅の狭いEeePCの場合は、- キーで縮小表示してやるとうまく全体が入ってくるので便利。
ただしフォントが小さくなるので、結構よみずらくはなるけれど。

常用出来るかに関しては、まだ使い込んで見ないとダメだろうけど、おそらく他のOSと同じように対応できないサービスやサイトがいくつか出てくると思う。
これってどうにかならないのかね。常にForefoxが基準で新しいWebサービスは作られていて、現状だとFirefoxを使っている方が安全である。
いろいろOperaのよさを語るものを見たりするのだが、いまいちポイントが明確でない。
微妙なスタンスのブラウザなのだ。

俺がブラウザ病なのは、今後PC以外のインターネットに接続するデバイス(含む家電)の中でPCでは圧倒的なIEの影は見えず、むしろSafariやAndriod等を筆頭にするLinux由来のWebkit系とかOperaの存在感が圧倒的だからである。最近のニュースではFirefox等のGekko系もスモールデバイス版を開発し始めているらしい。そういった意味では、次世代のPC以外の巨大な領域をせしめるデフォルトブラウザはまだはっきりしなくて、群雄割拠の時代であるといえるからである。今のところPCでは占有率の低いOperaの方が一歩抜きん出ている所があるが、GoogleやAppleの使うWebkit勢もまだいつでもOperaをひっくりかえす事ができる。WebkitはオープンソースなのがGekkoとならんで有理な点であろう。そういった意味ではOperaがどういう戦略をとるかによって、まだまだわからないといったかんじである。(そういえば、AdobeのAIRもWebkitベースのものをつかっているんだよな。Webkit強し、だな)

2008年2月14日木曜日

firefox3 beta3を使ってみて

Firefox3のBeta3を早速、EeePCのXubuntuに入れてみました。
ForefoxはLinuxでも問題なく最新版が手に入るので便利ですね。

Linux版は解凍してそのディレクトリ下のfirefox(シェルスクリプト)をたたくと起動しますが、そのまま起動させると、既にfirefox2が入っていると$HOMEの.mozillaディレクトリを見に言ってしまい、プラグインの起動チェックとかして起動に時間がかかってしまいます。

なので、併用させるには下記の通りにします。
  1. $ firefox -ProfileManager でプロファイルマネージャを立てて新しいProfile作る
  2. $ firefox -P <作ったプロファイル名>
これで新しいプロファイルで起動できます。
私も試したんですが、ほとんどのfirefox2機能拡張が使えませんので、新しいプロファイルでも問題ありません。
一応のために$HOME/.mozilla のバックアップをとってから起動させるのが吉です。

で、新しいfirefox3ですが、
  • なんとなくUIが少しだけ洗練れててあかぬけた。
  • Gekko自体のレンダリングもきれいになった。(フォントの行間の空き具合とか)
  • なんとなくレンダリングが早くなっている。
  • アドオンがアドオン管理画面から直接DLできるようになっている。
  • Ctrl - +で拡大表示、Ctrl - -で拡大縮小表示可能
特に最後の縮小表示は、狭いEeePCの横幅にはとっても助かります。
今のところ大丈夫なので、一応、forefox2と併用で使うのが吉でしょう。

ちなみにUbuntuのパッケージにもforefox3がありますが、まだアルファの時のバージョンなので、あえてインストールしませんでした。

メモリ使用量等は機能拡張がほとんど入っていない状態なんでちゃんと見てません。
あしあらず。

2008年2月11日月曜日

EeePCに関して思うこと

EeePCを使い込んでかなり時間がたちました。
ネット界隈でも、現実のショップでも、かなり売れているようです。

売れているのは現実にはわかるが、まだ、PCオタク層中心に売れているような気がする。
でも、他でもないASUSが狙っていたのは、コモディティーとしてのPCだったのだろう。
まだ、実際にはそういったコモディティーとしての用途としてPCを欲しがっているのは既にPCを数台もっていて、二台目以降として買うような熟練PC購買層で、本当に簡単なコモディティー要素が必要なだけの人間は日本では携帯電話に流れているんだと思う。これが世界レベルでみると違うとおもうんだけどね。

実際、コモディティーとして使うPCとしては品質は高い製品だと思う。
ブラウザとIMとちょっとしたエディタとメーラー、ちょっといるひとでおオフィス系製品。
それがあればOKと言うひとにとって、特にインターネット端末として使う人にとっては最適な商品なのではないか。

実際にネットでの反応を見ていると、二つ大きな意見があって、ひとつはEeePCに求める機能や用途が高すぎな人たち。これらの人たちはSDDが4Gしかないことや解像度が800x600なことをよくネタにしているようです。CPUもちょっと弱いとか。

これは大きな間違いで、このPCにそういったハイレベルな用途を求めてはいけないわけです。
そんなに大きなファイルや画面が必要な作業はそれなりのデスクトップ環境ですべきです。

もうひとつの意見は、これは寝モバに最適って意見。
こういった人達はEeePCを特に用途を限定した使いかたとしてセグメンテーションできてるわけで、他にも複数PCを持っているような人なのではないだろうか。
こういった人たちはEeePCを完全にコモディティー化したPCとして見ているために、もともとASUSが狙っているコンセプトに近い使いかたなのだと思う。

ひとつ日本市場が違っている点としては、最初のPCとしてコモディティー化したこういったPCを買う層が日本にはあんまりいないと言うことでしょう。先にも書いた通り、本来、簡単にネットとメールとチャットができればいい人間は、日本では携帯電話で事足りるわけです。

僕はといえば、EeePCをメインとして使っているという稀有な層です。
もちろん、仕事柄、Web関係なので、MacもWindowsも持っています。
メインマシンはどちらかというとMacになるのでしょう。
しかし、今はEeePCだけをつかってほとんどプライベートから仕事まで行っています。
もともと小さいPCが好きなこともありますが、ほとんどプライベートから仕事まで本当に僕の用途ではこれで足りてしまっているからです。

一応、プログラマの端くれなので、プログラムを書くんですが、これも今入れているeeeXubuntuであれば仮想デスクトップがいくつでも作れるんで、ここはブラウザ、ここはEmacsとかしてそれで仕事はこなせてしまいます。

あとはプライベートはIMもあるし、SkypeもLinuxはあるし、Firefoxがあればすべてこなせます。メールもGmailですから。大きな画像処理とかエンコードもそんなにしないので、もし、することがあったら、Macでやりますから。

やっぱEeePCの良い点は、
・SDDであること。確かに4Gではりますが、それでも900MB位あいてるし、LinuxはSwap切ってるのでそう空き容量は心配ありません。それよりも、HDDのクラッシュを恐れながら移動させる苦労や心配がないことが大きいです。家のなかでも、定期的に場所を変えながら仕事をするので、結構重宝してます。(ちなみにソファーでやる場合はIkeaの膝上PC板がサイコーです。)

・軽量であること。これも上記の条件とあわさって移動が楽であるということですね。

・起動や終了が早いこと。このため、出先で立ち上げてもすぐ立ち上がるんで、いちいちスリープとかさせる必要もありません。

あと、これがあると今度はいいな、と思うのは、
・画面の解像度が少なくとも横1000pxは越えてほしい。今のWebの状況だとそうなんで。
でもOpera見たく自動的に幅にあわせたレイアウトに変換してくれるような機能があればいいのかもしれませんが。

・SDDを増量してほしいとはいわないが、SDスロットをもうひとつ増やしてほしい。
今SDHCは結構やすいんで、16GBを二本させば、それだけで32GBの領域が稼げます。

それくらいかな。

こういっって考えると、主メモリがソリッドステートで、SDによる容量拡張なんてまさに携帯電話見たいですよね。そういった意味ではPCのコモディティー化なんですよ。特にモバイルPCの。所が日本にはモバイルPCと言うニーズがあまりないわけです。そういったいみではASUSは日本市場をこれからどう考えるかと言うのは見物ですな。

携帯電話もOpera9.5とかモバイルのFirefoxの話とか出てきますし、なんと言ってもipod touchのSafariがありますね。あれくらい使い勝手のいいブラウザが出てきて、あまたあるwebサービスを使うことができるようになれば、本当にコモディティー用途は携帯電話で十分と言うことになりそうです。

これから、モバイルPCも携帯のようなコモディティーになっていくし、携帯はグレードアップして両者は近づいていくような気がします。家にこもりっきりな癖に気分はいつでも藻バイらーな俺は、これからどうなっていくのか非常に楽しみでもあります。

2008年2月8日金曜日

Web Frameworkいろいろ

今日、メインクライアントの会社に行ってきて新しい案件の打ち合わせをしてきました。
今月後半から来月中にかかる仕事がもらえそうです。
新しく立ちあがったばかりの個人事業で受託ですから、仕事の内容に文句は言えません。

言うまでもなく、今、僕が一番自信のある言語はPythonです。
これならかなり複雑なものでもこなす自信があります。

しかしながらPythonを使え案件はそうない。
止める前の会社のサービスがPythonで作った話は前に書きましたが、そのメンテを今もやっていて、そこで少しPythonを使う機会があるだけです。
今回のメインクライアントの案件もPHP+MySQLらしく、PHPも4か5かもまだ判然としないようです。

おりしも、このメインクライアントの案件と同時に仲間内ではじめようとしている、携帯でもうけようのサービスもあります。この二つのプロジェクトをこなしていかないといけないわけですが、初めは携帯のプロジェクトの方はPythonでやろうと思ってました。しかし、同時にPythonの独自フレームワークのプロジェクトと、もうひとつのメインクライアントのPHPを同時になることは私自体経験もなく、ちょっと心配です。いつもの感じだと、いきおい、全部同じ言語で書きたくなる所です。

悩んだあげく、結局、両方ともCakePHPのフレームワークでやることにしました。
まず、PHPもそこそこ書けるという自信はあること。
それと、CakePHP自体、Ruby On Railsにインスパイアされたフレームワークなので、高生産性が期待できること。
PHP4でも5でも動くので、メインクライアントの環境がどっちにころんでも大丈夫なこと。
結局、両方の案件とも、単にDBの情報を検索したり閲覧したり、書き込んだりするオーソドックスな案件であること。
これらが理由です。

結局、最近のWebや携帯の案件って、結構Rails系が得意なDBに対するCRUD操作の案件が殆どなんですよね。こういったプログラミングって、常に必要とされる機能やプログラミング内容は同じで、おもしろくもなんともなく、手早くパッパっと終らせたい繰り返しものなわけです。
で、それなら、その骨格部分は手早くできる既存のフレームワークにまかせちゃえ、ってなわけです。特に今回は二つのプロジェトが平行で走るために結構必要にせまられたりするわけです。全く二つの違う環境を用意したり、頭を切りかえるのって、結構大変ですから。

僕としては、PHPの案件がほとんどなので、8割方はこういったフレームワークで高生産性を稼いておいて、残りのフレームワークにはまらない部分、フレームワークで解決しにくい部分、それを越えたもっと複雑な部分を補完でPythonで書けたらな、と思うわけです。単にDBへのCRUDでは収まらないもっと複雑な分野って必ずあるはずですし、それができることが、単にDBへのCRUDしかできないところとの、個人的には差別化になるわけです。

本当は、何度も書いているのですが、AptanaのJaxerに期待をよせているわけです。
なかなかこれを使わせていただけるプロジェクトがなくて(クライアントの要求だったり、サーバ環境の要請等から)、実現したプロジェクトとしてできてないんですが、これがやれれば最高だと思います。恐らく、今、PHPでやっていることの置き変えが全くできることになるでしょう。これで必要とされるWebサイトの8割は作れると思います。

残りの2割は、はたしてPythonで書くのか、それともJavaScriptでそのまま書けるのかは、これからの時代の進みかたにかかってきます。結構、JavaScriptはPythonができることがほとんどできるようになるまで、進化するのではないかと、期待しております。もちろん、記述力ではJavaScriptはPythonには負けていません。むしろ、個人的には、複雑なロジックを記述するときじは逆にJavaScriptの方が勝っていると感じている程です。まだニッチなニーズまで満すライブラリ等が揃っているのはPythonのほうですけどね。(ま、一番はPerlでしょうけど、僕が全くPerlにふれないことには、何か訳があると思ってくださいな。)

AptanaのJaxerは本当にデザイナとプログラマの分業を完全に確立できるプラットホームになるでしょう。毎日、Aptanaのサイトの英語の情報にかじりついています。
早く実現できればと思います。

2008年2月6日水曜日

最近のプロジェクト

最近、いくつかのプロジェクトをやっている、やることになっているのだが、なんとかしてServer side JavascriptのJaxerの案件をつくりたいな、と思っている。

今、昔の会社から引き継いでいるプロジェトはPython案件なので、これは満足。

つい先日、仲間たちとやることになったプロジェクトは、開発者が俺だけなのでJaxerを使えるかなと思ったのだけど、サーバ環境がさくらインターネットのホスティングだったので、Jaxer使用をあきらめることとなった。

JaxerはそのコアはLinuxではmod_jaxer.soというApacheの動的読みこみモジュールである。
(Aptanaでは最近、Linux版のJaxcerをプレビューリリースしてます。)
ということは、PHP等のモジュール版とおなじことで、Apacheひとつに対して組みこまないといけません。普通のホスティングサービスだと、通常のユーザ権限しかありませんし、あくまでヴァーチャルホストです。Apacheの再起動とかもできませんし、この権限ではmod_jaxerを読みこますことはできません。

もともと、さくらのホスティングでは、OSがFreeBSDですしmod_jaxerは現在、Linuxの32bitのELFバイナリしかありませんので使いようがありません。
ここはあきらめて、今回はPythonを使おうと思っています。

mod_jaxcerを使うには、現状、一台のサーバをコントロールできるroot権限か、または、現在はやりのVPSのようなroot権限のある仮想ホスティングしか選択肢が無いでしょう。
本家Aptana Forumでもこのような話しが話し合われていますが、Aptana側でもAmazon ES2とかいろいろなホスティングサーバ会社にアプローチしているようです。Ruby on Railsもやっとこさインストールされているサーバが出てきた所なので、Jaxerがこういったサービスにプレインストールされるのはもっと先の話になるでしょう。
でもVPSでも最近は月額10ドルを切るものも出てきているので、下手なホスティングを使うよりは良いのではないでしょうか。

あとはもう一つ携帯の大手から仕事がもらえそうなのですが、それはたぶんひとつサーバを用意すると思いますんで、そこで改めてJaxer使用を打診してみたいとおもいます。

あとは、昔の会社からの案件。
これは今週の金曜にミーティングするのですが、そこの会社はPHP主体の会社で、しかもお客の案件だろうから、開発プラットフォームを選択することは難しいかもしれません。しかも、すでにあるサイトの追加拡張のような案件だったと思いますので、おのずから、PHPを書かないといけないのかな、と思っています。

しかしPHPはいやだなー。
なんとかそこにもJaxerを押しこめないだろうか?
JavaScriptなんで誰でもわかるのでメンテも簡単ですよ、とかいって。
それがまだ実績がなくて信頼されないんだったら、せめてPythonを使いたいな。
PHPだとJavaScriptとかPythonのときの俺のコーディングスタイルにあわせるために、結構ラッピングの関数を書かなければならないだろう。
でも抽象化しにくい言語だからつらいよな。

でも逆にPHPで俺が思うようなプログラミングができれば、たいしたものなんだろうけどね。
まあ、抽象化だけは心掛けてやっていこうと思う。
  • 制御構文の抽象化
  • 処理の抽象化=関数化
  • その関数の実行を制御するためにクロージャや高階関数の使用
メモメモ

2008年2月4日月曜日

Aptana Jaxer for Linux

結構待つていた人もいるのではないでしょうか。
Aptanaの例のServre Side JavaScript(彼らはAjax Serverとよんでいる)のLinux版が出たようです。もちろんearly版です。

Try out our early Linux builds

私も今見たばかりなのでまだインストールしてませんが、プリコンパイルされていてApache2.2が同梱されたバイナリのようです。

わたしもサーバに入れて後で試してみたいと思います。

2008年2月1日金曜日

PHPに関して再考

最近、MatzさんやDanさんのBlogをはじめ、PHPに対する議論が盛り上がっている。
一部、一番最初のMatzさんの論旨とは違う方向へそれていっているものもあるようだが。。。

わたしもPHPがPHP/FIと呼ばれていた時代から使っていて、いち早く顧客の案件で使用していたりした人間である。また、Webアプリの最初はPerlだったが、Perlに付いていけず挫折した人間でもある。その反動でRubyは早くから飛びついており、Ver1.6以前からのユーザでよくバックエンドのバッヂ処理等にRubyを使ったりした。Pythonは今のわたしのメイン言語であるが、使い始めたのはRubyと同じころで、一時、仕事の都合でJavaやPHPがメインであったが、再び、メイン言語として返り咲いたと言う形である。

そのほか、最近の密かな関数型言語の盛り上がりに煽られたわけではないが、Haskell、Scheme等もかじったりしている。そういったいろんな言語に食指を出す人間にとってみると、今回の特にPHP派の反論の中にはいただけない反論もあると思う。特に、PHPしか知らないと言う人に限ってPHPマンセーでそれを信じて疑わず、PHPの欠点に付いて語ると、PHPの使いやすさ(と言うか入り込みやすさ)や、こんな便利な機能(実は外部ライブラリ)が簡単に使える系とか、普及度とか、場合によってはSIerの案件として需要があるだのという、方向のそれた反論をしてくる。あくまで本来は純粋にその言語のもつ機能(?)や能力の問題に関して良い点、悪い点を語っているのに、反論がなんか、言語としての問題とそれた形で語られるのが不思議である。

というのも、わたしが現在関係している会社も、PHPマンセーの会社なのである。
うちには受託をやるソリューションと言う部門と、自社開発サービスを立ち上げていく独立部門のふたつがあって、わたしは自社開発サービス部門に属している。もともとわたしが入る前からPHPマンセーな会社立ったらしいのだが(と言うがそれ以外知らない?)、わたしが入って開発責任者になってから、わたしは自社サービスにPythonを採り入れたのである。既にわたしが入ったときに作られていたそのサービスはPHPでつくられており、それが拡張限界になって作り替えと言う事態になって、そこでわたしがPythonで作り替えようと提案したのである。拡張限界になったのはいろいろな要因があるのだが、まずはパフォーマンスやスケーラビリティーの問題、それと、拡張しづらいスパゲッティー化とか諸々の問題があった。その全てがPHPの問題であったとはいわないが、例えばPHPを何も考えないで使ったときに起こりがちな、名前空間の汚染問題やそれに伴う変数や関数・クラス名の難解化とかとか、うまく複数の開発者をコントロールできないと解決しずらい問題が含まれていた。PythonとかRubyはネイティブの機能としてそういった問題を解決してくれる。普通の開発者が普通に作っても、そういった問題から普通に逃れることができる、そういった要素があることを私は経験上わかっていたからだ。

あとは、高階関数とかクロージャとか無名関数がないだとか、より複雑になりがちなことをシンプルに記述できる手法が使えないというのもあるな。まあ、これはいろいろな所で書かれていることではあるけど。個人的には今回の長いプロジェクトでこれらがないとプログラムを各のが嫌になると言うくらいになってきていて、それがいっそう、もうPHPには触りたくないな、と言う感覚になってきているのだ。

そのプロジェクトがいろいろな経緯があり収束して、今後のわたしの仕事として、その今の会社のソリューション(受託)の仕事を手伝わなければならないことになってきて、PHPを使わざるを得ない状態になってしまってきているのだ。しようがなく、A言語のあの機能はPHPではできるのだろうか?とか、具体的には無名関数ってPHPでできたっけ?とか、クロージャは?とか調べていくうちに、それができないとわかってかなり絶望した。実際にはZendのソースに拡張を入れてそういった機能を実現しようとしている人もいるらしいが、それって言語のネイティブな機能じゃないよね。というか、それを使ってくださいとお客にいうわけにも行かないし。。そういった所にジャストタイミングでちまたのWebでMatzさん筆頭にPHPの話が盛り上がってきたのだ。

思うに、MatzさんやDanさん等の言っていることは、私のように複数言語の経験があり、しかもお客の受託を受ける仕事をやっていて、その実現手段(OS,プラットフォーム、言語)を選ぶことのできない人たちにとって、ずっとずっと前からフツーにブツブツ言われてきた問題、感覚で、当たり前の考えだと思っている。それが、現実に影響力のある人から発言があったということで、まえまえから「ある特定」な人たちには常識であった思う。みんな、半分諦めながら、不満とフラストレーションを抱きながらPHPをつかっていたんだと思うし、それは私もよくわかるのだ。

そうなると、やっぱりPHPを極めよう(書いてて恥ずかしいが。。)とか、言う気持ちはまったくなく、そこから新しい概念を学ぶと言うことも期待できず、50年以上のプログラミング言語の進歩の恩恵を感じることもなく、ただ淡々とPHPを道具として仕事をこなすと言うことになる。はやくおわらねーかな、このぷろじぇくと、ってかんじになる。てか、もともとPHPにそういう効果を求めてる人って多くないだろう。PEARとか外部ライブラリとかで誰かが機能を付加してくれるのを期待して、その情報をいち早くキャッチして、早く使ったもの勝ちと言う。単純にそういったサイクルなのではないか、言語というより、そういった外部ライブラリによって以下に便利な機能が簡単に追加されるかってことの方が大切なようである。そういった人にとってSchemeがなぜいいのか理解することは永遠に期待できないであろうという、軽い断絶感覚を感じる。(ライブラリがあった方が便利なのは否定しないのであしからず)

話は飛ぶが、PHP見たいな言語を使うにはIDEが必須であろう。
もちろんエディタでもかけるのだが、あのうんざりするほど長ったらしい、統一性のない関数名を補完してくれる機能が必要だから。順番に統一性のない引数の順番を補完してくれる機能が必要だから。あの中途半端なクラスを一々作らないと物事が進まないんで、テンプレート挿入機能も必要だろう。なぜなら、別にそれを暗記する気持ちは「まったく」ないんで。ただ、早くこの面白くないプロジェクトを終わらせたいだけだから。こういったのは、昔のVBも同じような気がする。

久しぶりに受託の方に戻ってみたら、彼らのブームはPHP5化+ZendFramework+HogeHogeと言うある会社の作ったテンプレートエンジンだそうだ。ライセンスがいるみたい。一般の営業まで中身もしらないのに得意気に、セールストークで言ってるみたい。軽くこの会社に絶望感を覚える。しようがないんで、会社にあったZendFrameworkの本を15分くらい読む。Strutsとか使っていたひとなら簡単に理解できるであろう。15分位で大体内容は把握できてしまった。もちろん詳細まで暗記はしていない。もともと覚える気はないから。確かに便利である。しかしすべてがnew Zend_HogeHoge()というセンス無い名前で始めるというのがダサダサだな。全くあたらしものに触れる充実感や感激といったものがまったく無い。

いっぽうで顧客の指定のないものに関して、どれで開発しようかなと迷っている。
Pythonっていうと、おそらくメンテできないと言う理由で拒否されるだろう。
Rubyも同じだろう(というか、今のバブル状態でRubyに関心ないのもなー)
私が期待してるのはJavaScriptである。サーバサイドの。
AptanaがJaxerを出したばかりである。まだ、Linux版が無いので本格的にためしようがないが、今日見たらソースはあったのでLinuxでMakeできるだろうか?
ちょっと簡単にはいかないかもしれない。
良くあるJavaServer環境にRhinoを入れたものとは違い、mod_jaxcerと言うネイティブモジュールでApacheに入るらしく、付きまとうJavaくささもなく好感である。
JavaScriptならメンテする人がいないとは言わないだろう、と期待しているのだ。
あとは安定性の問題を証明できれば。。
言語自体は楽しいのはもう間違いない。

であるが、現実にはPHPを使わざるを得ないだろう。
これが自営の受託の悲しい性だ。
せめてIDEを使って楽しよう。。
そう思いながらサーバサイドJavaScriptが追い付いてくれるのを期待すう日々になるのか。。