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は持っていると思うのだ。

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

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

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

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

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

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