2008年6月27日金曜日

Cocoa Programming for Mac OS X]に対するタックル

Cocoaの世界では一番有名な本ともいえるAaron Hillegassの「Cocoa Programming for Mac OS X」

2008年4月30日水曜日

アップルストーアのゴルデンウィークはもう一杯!


さて、ゴルデンウィークが迫ってきましたね。全国のアップルストーアでも多様なイベントを開いているみたいです。6歳の娘を持つ親として、当然(?)アップルストーアのキッズ向けイベントを点検しましたが、あら、残念! もうキッズ向けイベントは予約が一杯です。これじゃ、今年は無理ですね!

幸い、(?)キッズ向けイベントは8歳からだそうです。後2年か?
イベントのシャーツももらえるそうで、早く時間がたってくれって願っています!

2008年4月23日水曜日

CODAかDreamweaverか?

ウェブサイトを作る必要があり、ウェブ制作ツールを見比べています。本屋に行ってみたらメジャーはDreamweaverらしく、本も沢山出ていますね。が、何か人と違う事をしたがるバカな私はCODAっていう比較新しいツールに興味があります。趣味的には絶対CODAですね!(ワラ)

ただし、趣味でやっている事ではないし、やっぱりCODAを使うにはリスクがあります。リファレンスもあまりないでしょう。で、結果的にはDreamweaverに決まるとは思います。

ちなみに、今日さらっとCODAを触ってみましたがあまり充実な機能が揃えているとは思われません。なぜこのツールがそんなに有名でしょうか?One Windowsデザインだから?それだけ?いまいちCODAの良さが分かりません。これじゃ、Dreamweaverですね。

検索よりコミュニティ?

最近の私のウェブでの挙動を見ますと、新しい情報を仕事上で探す場合の他にはあまり検索を使用していないような気がします。実はRSSリーダーに登録されているサイトが数百に上るため、それだけを読むにも時間が足りないくらいです。マック、開発、他の興味のある分野の情報はほとんどこのRSSから得ています。

新しい有用なサイトができた場合でも大低はRSSに紹介されるのでそれから知ることができます。でも昨日ちょっと違った検索語で検索をしたら有用な情報が沢山出ました。つまり、私にとってRSSリーダーは情報のチャンネルであり、またファイアウォールでもあったのです。私のような人が増えて行くのであれば今後はただ新しいサイトを作ったからすぐみんなが来てくれるような事は難しくなるでしょう。それよりは既に有名なサイト、コミュニティ等に自分のサイトを知らせてもらう必要があるかと思います。

あ、ひょっとしてSNSなどが流行っているのはその理由でしょうかね?(ちょっと違うと思うけど・・・。)


2008年4月22日火曜日

micro-ISVってご存知?

さて、みなさんは「micro-ISV」って用語を知っていますか?

この用語でISVとは「Independent Software Vender」の略です。つまり、これに「micro」をつけて、一人か小人数で運用されている独立系のソフトベンダーのことを指しています。日本でも最近1円会社って用語が流行ったことがありましたがそれのIT版と考えればいいでしょう。アメリカでマイクロソフト社が自社のプラットフォーム上でソフトを開発・販売する会社をそう呼んだのが語源だそうです。マイクロソフトのみではなく、他の大手会社もISV向けのイベントとかサポートを行っております。日本では最近オラクル社のイベントがあったことを覚えています。

アメリカではこの「micro-ISV」を主題にいくつかの本が出ていますがその中でも有名なのは「micro-ISV from vision to reality」だと思います。この本の著者自身がmicro-ISVでもありますし、この本に紹介されているいくつかのインタビューは結構参考になるとの評価です。私も読みましたが一部マイクロソフトの技術について書かれている部分はあるものの、相当参考になる内容が多いです。英文が読める人なら一読の価値があると思います。

他に、マックのISVたちの話が聞きたいならアメリカのYahooのMacsbグループに登録してみるといいです。マックの世界でmicro-ISVとしてやって行くための議論が主に行われており、既にISVとして活躍中の方々がそこのメーリングリストで生の声を出しています。ちなみに、Macsbはポッドキャストも提供しています。英語が聞ける人は聞いてみたら結構面白いですよ。


2007年11月11日日曜日

'Top-down vs Bottom-up' Or 'Top-down with Bottom-up'

プログラマーからの観点で作成されたソフトウェアを見ればよく思うのは機能は優れているかも知らないが使い勝手が悪いと言うことです。また、最近避けたいと思っているのは典型的な3つのペーンで構成されたUIです。
例えば、こんな感じ?



あまりにも典型的で飽きて来たと言いましょうかね?もちろん、このようなUIが一番効率的なアプリケーションもあります。ただ若干考えればよりユニークなUIを提供する事もいくらでも可能なソフトウェアでも大抵同じく3ペーンになってしまうとやっぱりなんかつまらなくなります。これは特に個人や小人数で作成されているソフトではよく見られる現象です。多分、プログラミングはできるけど、デザインやUIに付いてはあまり詳しくない事がその原因ではないかと思いますがいかがでしょうか?

そこで、今朝考えた事が、タイトルの「'Top-down vs Bottom-up' Or 'Top-down with Bottom-up' 」です。Top-downとは、エンドユーザの観点から物事を考えて行くとの事、またBottom-upとは技術的な観点から物事を考えて行く事とこの文章では使用しています。
一般的に、プログラマーはBottom-upの思考をすると思います。(これは私自身の経験から^^;)例えば、何か新しい機能を提供する技術やチップなどを見つけると、「これでなんか作ってみようか?」と思っちゃう訳です。つまり、作り手の観点が基本で、使い手の観点などはあまり考えられてません。その結果が上述したような、機能的にはいいかも(!)知らないが使い勝手の悪いソフトウェアができてしまう理由の一つではないでしょうか?

参考として、最近読んだJoelの「User Interface Design for Programmer」では逆の発想として、「Activity-based Planning」を紹介しています。ユーザの観点で、ユーザは何をやりたがるかを真っ先に考えるという手法です。上記の用語定義からすると、正に「Top-down」形式だと言えます。(詳しくは前回のポスティングを参照)

で、今私が捨てないと行けないのは「Activity-based Planning」の対称となる、「Bottom-up」の考え方、言わば、「Technology-based Planning」でしょうね。但し、これは本当に、どっちかを選ぶべきものでしょうかね?両立した方が一番いいと思いませんか?「Top-down」でソフトウェアの要件を決め、UIをデザインし、その裏を「Bottom-up」で作って行くのです。(書いてみたら、まあ、当たり前か。)

二つの異質のものを一人が併せ持つ事は確かに難しい事だと思います。例えると、文武兼備でしょうかね?どちらか一つだけに優れる事も厳しいのが現実でしょう。だから、常は各分野に優れた複数の人がチームを組んで働きます。だが、チームにはコミュニケーションコストが発生しますし、そのコミュニケーションがボトルネックになるケースが多いです。クリエイティブな作業の場合はよりそうです。まだ形になってないクリエイティブな思考を共有するのはほぼ不可能に近いと思います。そしてクリエイティブな思考とは一段形になってからは既に変更が自由にできなくなります。

だからこそ、実は一人の人間が全ての知識を持ち合わせているのが理想なんです。(現実ではなく、理想ね!)でも現実的にはそんな天才肌の人は少ないですね。そこをなんとかしてみたいと思っていますけど、まだそれっぽい答えは見えていません。

まあ、ソフトの要件とデザインについて考えている途中のつぶやきでした。

2007年11月7日水曜日

NoteBook 2.1



http://www.circusponies.com/

アップルのダウンロードサイトから偶然発見した、ノートというもののメタフォーを本当に上手く利用したソフトです。実際のノートを使うような感覚でソフトを使う事ができます。どこにもあるようなインタフェースを提供するソフトと比べると全然いいですね。

これを見て、やっぱり新しいものって、既存のものを少し変えた事にすぎないと思いました。人間は以前は自然を真似してものを作り、今はオフラインのものを真似してオンラインのものを作ってますね。作っているものがどんどん仮想化されつつあるような気もします。(最近の経済もそんな感じですね。実物より数字の力がもっと強い)

また、メタフォーは新しいものを人に紹介する場合にいい道具となりますが、今までなっかたもの、例えばオンライン上にオフラインにはない、本当に画期的で斬新なものを作り、紹介する際には逆に邪魔になったりもするのではないかと思っています。

2007年11月2日金曜日

User Interface Design for programmers

Joel on Softwareで有名なあのJoelの本です。彼はこの本で、ユーザインタフェースに対して話しています。色んな事例の話も含まれておりなかなかためになります。特に私のようにプログラミングから物事を考え始める人間には結構いい薬になる本だと思います。

この本の中にActivity-Based Planningという用語が紹介されていますが、今の私にはこの用語は結構タイミングよく現れてくれたって感じです。これはソフトウェアを最初にデザインまたは仕様を決める際に、そのソフトが提供する機能の一覧からではなく、そのソフトのユーザが何をするか、何をしたがるかの観点で物事を考えるとの事です。この観点は最初にソフトを設計するとき以外にもソフトのバージョンアップの際にも有効だそうです。その例として、Excelのバージョンアップの際のエフィソードを紹介しています。MSのエクセルチームは彼らのソフトが複雑な会計用業務に一番使われているだろうと考えていたそうです。それが、実際に調べてみたら、簡単なリストの作成と管理でエクセルを使っているユーザが意外と多かったそうです。それで、彼らはリスト管理をより効率的にできる機能を次期バージョンに追加して行きました。その反面、同時期に競争社はインプルブーという、会計機能に特化されたソフトを出資します。但し、そのソフトはリスト管理の機能は持っていませんでした。結果、今でもエクセルは皆さんが一番よく使うソフトの一つとして依然として残っていますが、インプルブーは誰も覚えてさえもいません、と。

まあ、顧客の観点で物事を考える事の大事さを説明する例としてはいい例ですね。最初のActivity-Based Planningの例としてはどうかなとは思いますが。他にも、この本にはユーザと直面するプログラマーにはためになる内容が沢山あるいい本だと思います。英語ですが、そんなに難しい英語でもなく、活字も大きいのでスラスラ読めました。


2007年10月30日火曜日

Leopardだからできる文書管理の一例

私は仕事柄上、沢山の文書を読み、保管しています。
いざとなった時に「あれ?それ、どっかで見た覚えはあるけどな・・・。どこだったけ?」では話になりません。特に、最近はセキュリティが強化されており、客先ではネットが使えない場合も多いです。そんな時のためにも、マックで使えるコンテンツ管理ソフトは大事です。それで私が愛用しているのはYojimboです。こいつはPDF、ウェブページ、RTFなど仕事で必要なファイルフォマットは大低保存でき、タグをつけておく事で必要な文書を素早く検索できる、なかなか行けてるソフトです。

但し、今まで一つ足りなかった機能はウェブページの保存の際に、ウェブページに自分なりの強調やコメントなどをつける事ができないとの事でした。ウェブアーカイブ形式は修正ができないのです。それが、LeopardになってPreviewにPDFファイルのハイライト、注釈追加の機能が追加されました。それらを使うとなんと以下のような事ができちゃうのです!

①。サファリーで必要なウェブページを見つける。(ここでは、http://www.kanzaki.comを勝手に採用させて頂いております。いい情報盛りだくさんです)



②そのページをPDF化してPreviewで必要な強調表示とメモ書きをする。



③そのPDFファイルをYojimboにインポートしてタグをつけておく。



これで、ばっちりです!
今後この文書の情報が必要となった際にはいつでもすぐ検索し、しかも自分が強調しておいた部分をすぐ読む事ができます。

Leopard! やっぱ、いいですね!

2007年10月26日金曜日

Leopardが来ました!



早速インストールしました。さすが、きれいですね!

OSのインストールには1時間強かかりました。開発用のツールまでインストールするには2時間以上かかりますね。
ファインダーのビューなどが変わり、すごい!を連発しているところですが、私が画面キャプチャーに使っていたウィージェットはなぜか機能しなくなりました。他にはFireFoxのフォントなどが変わったような気がします。

うむ・・・。他はもうちょっと使ってみてからまた書かせて頂きます。