<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2japanesefull.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>起業家・Webデザイナー・SE→CIOを目指しつつの大学生のアレ</title>
	
	<link>http://blog.8maki.jp</link>
	<description>起業をめざしつつ周りと俺の変態リタラシーの溝を埋める</description>
	<lastBuildDate>Wed, 17 Feb 2010 14:55:27 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.8maki.jp/feed" />
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/8maki" /><feedburner:info uri="8maki" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Google Visualization APIがGoogle Chart Toolsとしてリニューアルしてた</title>
		<link>http://feedproxy.google.com/~r/8maki/~3/1JAWVvO_M-s/google-chart-tools.html</link>
		<comments>http://blog.8maki.jp/2010/02/google-chart-tools.html#comments</comments>
		<pubDate>Wed, 17 Feb 2010 14:32:15 +0000</pubDate>
		<dc:creator>8maki</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[survey]]></category>
		<category><![CDATA[テクノロジー]]></category>
		<category><![CDATA[Data Visualization]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Google Chart Tools]]></category>

		<guid isPermaLink="false">http://blog.8maki.jp/?p=631</guid>
		<description><![CDATA[パラパラとData Visualization系のライブラリを見てたら、いつの間にかGoogle Visualization APIとGoogle Chart APIが統合してGoogle Chart Toolsなる一つのAPIに統合されていました。
その中でも、QRコードや数式、動的なアイコン生成など、画像を生成するモノはThe Chart API、
Motion ChartやインタラクティブなグラフなどJavascriptやFlashを使うモノはThe Visualization API、
という棲み分けがなされているようです。
Dynamic Icons (Image API)
Image APIでは、Dynamic Iconsなる機能が追加されていました。
こんな感じの画像をこういうソースで呼び出すことができるようです。

chst=d_bubble_icon_text_big
chld=
snack&#124;
bb&#124;
$2.99+!&#124;
FFBB00&#124;
000000
Visualization Gadget &#124; Data Source (Visualization API)
主にVisualization APIについてですが、Visualization GadgetとしてGoogle Doc等で使えたり、Visualization用にデータを配信するData Source Toolも同時に配布されています。
ちょっと色々な機能を包含していて全体像が把握しきれなかったので、図にまとめました。



Data Sourceに関して、ちょっと何なのか良く分からなかったのですが、どうやら、ほぼほぼGoogle Server Side Data Source Java Libraryのことを指しているようです。Java LibraryではTomcatを用いてデータを公開している模様。（Javaに限らずPythonやPHP版などもありますが）
これはWebサービス運営者など、データを持つユーザーが、サーバー側でVisualization用にデータを配信するライブラリみたいです。SQLを用いてローカルのDBにアクセスしたり、データをJSON形式やCSV形式や他に様々なスタイルのデータ型に変換して出力したり、Visualization用データを生成する様々なツールが提供されています。
また、Google DocsのSpread Sheetからデータを取得できるのも特徴的ですね。Data Sourceに関してはこのムービーが詳しいです。



Visualizationに着目すると、Motion Chartや、A Magic Table、Annotated Time Lineが珍しいですね。
]]></description>
			<content:encoded><![CDATA[<p>パラパラとData Visualization系のライブラリを見てたら、いつの間にかGoogle Visualization APIとGoogle Chart APIが統合して<a href="http://code.google.com/intl/ja/apis/visualization/interactive_charts.html" target="_blank">Google Chart Tools</a>なる一つのAPIに統合されていました。</p>
<p>その中でも、QRコードや数式、動的なアイコン生成など、画像を生成するモノは<a href="http://code.google.com/intl/ja/apis/chart/docs/gallery/chart_gall.html" target="_blank">The Chart API</a>、<br />
<a href="http://code.google.com/intl/ja/apis/visualization/documentation/gallery/motionchart.html" target="_blank">Motion Chart</a>やインタラクティブなグラフなどJavascriptやFlashを使うモノは<a href="http://code.google.com/intl/ja/apis/visualization/documentation/gallery.html" target="_blank">The Visualization API</a>、<br />
という棲み分けがなされているようです。</p>
<h4>Dynamic Icons (Image API)</h4>
<p>Image APIでは、<a href="http://code.google.com/intl/ja/apis/chart/docs/gallery/dynamic_icons.html" target="_blank">Dynamic Icons</a>なる機能が追加されていました。</p>
<p><img class="aligncenter size-full wp-image-642" title="DynamicIcon" src="http://blog.8maki.jp/wp-content/uploads/2010/02/DynamicIcon.png" alt="DynamicIcon" width="123" height="63" />こんな感じの画像をこういうソースで呼び出すことができるようです。</p>
<pre class="brush: jscript;">
chst=d_bubble_icon_text_big
chld=
snack|
bb|
$2.99+!|
FFBB00|
000000</pre>
<h4>Visualization Gadget | Data Source (Visualization API)</h4>
<p>主にVisualization APIについてですが、Visualization GadgetとしてGoogle Doc等で使えたり、Visualization用にデータを配信するData Source Toolも同時に配布されています。<br />
ちょっと色々な機能を包含していて全体像が把握しきれなかったので、図にまとめました。</p>
<div style="border:solid 1px #DDDDDD;">
<img src="http://blog.8maki.jp/wp-content/uploads/2010/02/OverviewGoogleChartTools.png" alt="OverviewGoogleChartTools" title="OverviewGoogleChartTools" width="472" height="272" class="aligncenter size-full wp-image-657" /></div>
<p></p>
<p>Data Sourceに関して、ちょっと何なのか良く分からなかったのですが、どうやら、ほぼほぼGoogle Server Side Data Source Java Libraryのことを指しているようです。Java LibraryではTomcatを用いてデータを公開している模様。（Javaに限らずPythonやPHP版などもありますが）</p>
<p>これはWebサービス運営者など、データを持つユーザーが、サーバー側でVisualization用にデータを配信するライブラリみたいです。SQLを用いてローカルのDBにアクセスしたり、データをJSON形式やCSV形式や他に様々なスタイルのデータ型に変換して出力したり、Visualization用データを生成する様々な<a href="http://code.google.com/intl/ja/apis/visualization/documentation/toolsgallery.html" target="_blank">ツール</a>が提供されています。</p>
<p>また、Google DocsのSpread Sheetからデータを取得できるのも特徴的ですね。Data Sourceに関してはこのムービーが詳しいです。</p>
<div style="text-align:center;">
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/guhdYoPY3kM&amp;hl=ja_JP&amp;fs=1&amp;" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/guhdYoPY3kM&amp;hl=ja_JP&amp;fs=1&amp;" allowscriptaccess="always" allowfullscreen="true"></embed></object></div>
<p></p>
<p>Visualizationに着目すると、<a href="http://code.google.com/intl/ja/apis/visualization/documentation/gallery/motionchart.html" target="_blank">Motion Chart</a>や、<a href="http://magic-table.googlecode.com/svn/trunk/magic-table/google_visualisation/example_1.html" target="_blank">A Magic Table</a>、<a href="http://code.google.com/intl/ja/apis/visualization/documentation/gallery/annotatedtimeline.html" target="_blank">Annotated Time Line</a>が珍しいですね。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.8maki.jp/2010/02/google-chart-tools.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.8maki.jp/2010/02/google-chart-tools.html" />
	<feedburner:origLink>http://blog.8maki.jp/2010/02/google-chart-tools.html</feedburner:origLink></item>
		<item>
		<title>【書評】シゴトの渋滞、解消します! 結果がついてくる絶対法則</title>
		<link>http://feedproxy.google.com/~r/8maki/~3/14y70hy-FAE/bookreview-ja.html</link>
		<comments>http://blog.8maki.jp/2010/02/bookreview-ja.html#comments</comments>
		<pubDate>Sun, 14 Feb 2010 15:40:12 +0000</pubDate>
		<dc:creator>8maki</dc:creator>
				<category><![CDATA[survey]]></category>
		<category><![CDATA[書評]]></category>
		<category><![CDATA[渋滞学]]></category>
		<category><![CDATA[西成活裕]]></category>

		<guid isPermaLink="false">http://blog.8maki.jp/?p=621</guid>
		<description><![CDATA[以前、とある勉強会でお会いした、東大の「無駄学」で有名な西成先生から新書の献本をいただいたので、読んだ感想を書かせていただきます。
『シゴトの渋滞、解消します! 結果がついてくる絶対法則』
流体力学を学び渋滞学を研究されている西成先生ならでは、仕事のライフハック的なことを「流れ」で説明しようという感じの本でした。
章立ては以下。

個人の渋滞、解消します！
部内の渋滞、解消します！
社内の渋滞、解消します！

正直申し上げると、2章までは普通のことを渋滞学という切り口で書いているだけで、あまり面白さを感じませんでした。
普段からライフハックやら啓蒙本やら読んでる人には物足りないかも。
ただ、3章は別です。
会社組織をどう円滑に運営していくか、というのが題目なのですが、西成先生個人のお話を中心に書かれています。
東大で順調に研究生活を送り、トップジャーナルに載ったにもかかわらず就職口もなく、ストレスで顔面マヒ、運よく滑り込んだ山形大でも予算が無くて発表が年2回くらいしかできない。そんな中、社会とつながる自分独自の研究領域を発見し、東大に戻った後、ケルン大学の一年研究留学する機会をもらい、そこで一生の研究仲間と出会った。
要約するとこんな感じなのですが、テレビに出たり本を出したり社会的な研究者のパラダイム転換を垣間見ることができる貴重なエピソードでした。
バリバリ研究一筋で研究室から出ない研究者のキャリアは読んだりするのですが、実際仕事が経営コンサルみたいな研究者の方の生き様はとても新鮮でした。
「複雑系」に対する全体視野アプローチ
3章の最後には組織の話というよりかは、「複雑系」の話が中心になっていました。
いや、組織も複雑系における個の集合という点で同じ。
そのときに取られる物理学ならではの通常のアプローチというのは・・・・「対象を単純な要素に還元して、モデル化してそのモデルを解くことによって、対象を理解する」という方向でしょう。
～
生き物については、部分の単なる総和は全体にはならないわけです。物理的にいえば、部分と部分が相互作用をしているから、全体は部分の総和にはならないのです。
だから、「相互作用をしていない要素」「要素と要素の相互関係がかなり弱くなるところ」まで全体をうまく分割できれば、そうした要素のみをあつかっても、全体を理解することができるのではないか？
～
要素単位を変更させながらも、全体の因果関係を理解するために挑戦してゆく。
単に部分に分割するのではなく、その因果関係に着目して全体の「流れ」を知る。
渋滞学ならではの観点ですね。
複雑系において全体から物事を見ることの大切はよく説かれますが、新しい西成先生なりのアプローチを提案されて妙に腑に落ちた気がしました。



シゴトの渋滞、解消します! 結果がついてくる絶対法則
posted with amazlet at 10.02.14

西成 活裕 朝日新聞出版 
Amazon.co.jp で詳細を見る



]]></description>
			<content:encoded><![CDATA[<p>以前、とある勉強会でお会いした、東大の「無駄学」で有名な<a href="http://park.itc.u-tokyo.ac.jp/tknishi/" target="_blank">西成先生</a>から新書の献本をいただいたので、読んだ感想を書かせていただきます。</p>
<p><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4022506741/8makiblog-22/ref=nosim/" target="_blank">『シゴトの渋滞、解消します! 結果がついてくる絶対法則』</a></p>
<p>流体力学を学び渋滞学を研究されている西成先生ならでは、仕事のライフハック的なことを「流れ」で説明しようという感じの本でした。<br />
章立ては以下。</p>
<ol>
<li>個人の渋滞、解消します！</li>
<li>部内の渋滞、解消します！</li>
<li>社内の渋滞、解消します！</li>
</ol>
<p>正直申し上げると、2章までは普通のことを渋滞学という切り口で書いているだけで、あまり面白さを感じませんでした。<br />
普段からライフハックやら啓蒙本やら読んでる人には物足りないかも。</p>
<h4>ただ、3章は別です。</h4>
<p>会社組織をどう円滑に運営していくか、というのが題目なのですが、西成先生個人のお話を中心に書かれています。</p>
<p>東大で順調に研究生活を送り、トップジャーナルに載ったにもかかわらず就職口もなく、ストレスで顔面マヒ、運よく滑り込んだ山形大でも予算が無くて発表が年2回くらいしかできない。そんな中、社会とつながる自分独自の研究領域を発見し、東大に戻った後、ケルン大学の一年研究留学する機会をもらい、そこで一生の研究仲間と出会った。</p>
<p>要約するとこんな感じなのですが、テレビに出たり本を出したり社会的な研究者のパラダイム転換を垣間見ることができる貴重なエピソードでした。<br />
バリバリ研究一筋で研究室から出ない研究者のキャリアは読んだりするのですが、実際仕事が経営コンサルみたいな研究者の方の生き様はとても新鮮でした。</p>
<h4>「複雑系」に対する全体視野アプローチ</h4>
<p>3章の最後には組織の話というよりかは、「複雑系」の話が中心になっていました。<br />
いや、組織も複雑系における個の集合という点で同じ。</p>
<blockquote><p>そのときに取られる物理学ならではの通常のアプローチというのは・・・・「対象を単純な要素に還元して、モデル化してそのモデルを解くことによって、対象を理解する」という方向でしょう。<br />
～<br />
生き物については、部分の単なる総和は全体にはならないわけです。物理的にいえば、部分と部分が相互作用をしているから、全体は部分の総和にはならないのです。<br />
だから、「相互作用をしていない要素」「要素と要素の相互関係がかなり弱くなるところ」まで全体をうまく分割できれば、そうした要素のみをあつかっても、全体を理解することができるのではないか？<br />
～<br />
要素単位を変更させながらも、全体の因果関係を理解するために挑戦してゆく。</p></blockquote>
<p>単に部分に分割するのではなく、その因果関係に着目して全体の「流れ」を知る。<br />
渋滞学ならではの観点ですね。</p>
<p>複雑系において全体から物事を見ることの大切はよく説かれますが、新しい西成先生なりのアプローチを提案されて妙に腑に落ちた気がしました。</p>
<div class="amazlet-box" style="margin-bottom:0px;">
<div class="amazlet-image" style="float:left;"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4022506741/8makiblog-22/ref=nosim/" name="amazletlink" target="_blank"><img src="http://ecx.images-amazon.com/images/I/41th2HufTSL._SL160_.jpg" alt="シゴトの渋滞、解消します! 結果がついてくる絶対法則" style="border: none;" /></a></div>
<div class="amazlet-info" style="float:left;margin-left:15px;line-height:120%">
<div class="amazlet-name" style="margin-bottom:10px;line-height:120%"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4022506741/8makiblog-22/ref=nosim/" name="amazletlink" target="_blank">シゴトの渋滞、解消します! 結果がついてくる絶対法則</a>
<div class="amazlet-powered-date" style="font-size:7pt;margin-top:5px;font-family:verdana;line-height:120%">posted with <a href="http://www.amazlet.com/browse/ASIN/4022506741//ref=nosim/" title="シゴトの渋滞、解消します! 結果がついてくる絶対法則" target="_blank">amazlet</a> at 10.02.14</div>
</div>
<div class="amazlet-detail">西成 活裕 <br />朝日新聞出版 </div>
<div class="amazlet-link" style="margin-top: 5px"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4022506741/8makiblog-22/ref=nosim/" name="amazletlink" target="_blank">Amazon.co.jp で詳細を見る</a></div>
</div>
<div class="amazlet-footer" style="clear: left"></div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://blog.8maki.jp/2010/02/bookreview-ja.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.8maki.jp/2010/02/bookreview-ja.html" />
	<feedburner:origLink>http://blog.8maki.jp/2010/02/bookreview-ja.html</feedburner:origLink></item>
		<item>
		<title>グラフだけじゃない、Data Visualizationフレームワーク集</title>
		<link>http://feedproxy.google.com/~r/8maki/~3/ffdFfMIEsD4/javascript-data-visualization-library-not-only-for-charts.html</link>
		<comments>http://blog.8maki.jp/2010/01/javascript-data-visualization-library-not-only-for-charts.html#comments</comments>
		<pubDate>Mon, 18 Jan 2010 23:56:01 +0000</pubDate>
		<dc:creator>8maki</dc:creator>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[proposal]]></category>
		<category><![CDATA[survey]]></category>
		<category><![CDATA[テクノロジー]]></category>
		<category><![CDATA[デザイン]]></category>
		<category><![CDATA[Data Visualization]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Information Presentation]]></category>
		<category><![CDATA[Javascript]]></category>

		<guid isPermaLink="false">http://blog.8maki.jp/?p=585</guid>
		<description><![CDATA[(8 free Data Visualization frameworks not only for charts [en])
相変わらずData Visualization関係で調査・開発を行っているのですが、その中でJavascriptのライブラリ・フレームワークを探す時間も多いです。
» 20 Fresh JavaScript Data Visualization Libraries
上記記事のようにまとめ記事が結構あって助かるのですが、ほとんどがCharts（グラフ）のライブラリなんですよね。Chartsも線グラフか、棒グラフか、円グラフか、、、みたいにライブラリ化される主要なグラフは8種類くらいしかなく、面白くない。
適切なデータに対して適切なVisualを関連付けるわけですから、もっと多くのVisualが考えられてもいいはず！
そこでChartsに限らない、もっと根本的にData Visualizationを扱っている有名どころのフレームワークをリストアップしてみました。
SIMILE Widgets Exhibit

MITのメディアラボがリリースしているFaceted Search用フレームワークです。HTMLを拡張したテンプレート言語を用いて、簡単にFaceted Searchと、検索結果のリッチなVisualizeを可能にしています。現在、リスト、テーブル、地図、Timeline、TimeplotといったVisualに対応しています。タブなどでVisualを切り替えられるので、ユーザーの目的にマッチした検索機能を提供することができます。
SIMILE Widgetsでは、他にもTimelineや、Timeplot、Runway(Coverflow)などのVisualもAPIとして個別に提供しています。
» SIMILE Widgets Exhibit &#8211; US President Search DEMO
ProtoVis

ProtoVisはStanfordのVisualizationフレームワークです。これは巷のライブラリと違い、グラフや地図、といった単位を1つの単位として扱わず、線や面、点といったもっと細かい部品単位でVisualを作成しています。どちらかというとProcessing.jsに近いかも。たくさんのDEMOが載っているので、それらを参考にかなり自由度の高いVisualを作成することができます。
» ProtoVis DEMO
Prefuse Flare (Flash)

Prefuse FlareもData Visualizationのフレームワークとして有名です。Prefuseは、Javaのフレームワークでしたが、今回Flashに対応しました。こちらも豊富なVisualを用意しており、SIMILE同様データ構造をしっかり設計しているので柔軟性が高く、Visualの切り替えや様々なVisualを拡張することができるようになっています。
また、Flashならでわの気持ちのいいインタラクションも高評価です。
» Flare DEMO
Style Chart

こちらは、javascriptでVisualのリクエストを投げるとサーバー側で画像を生成し、それを表示するというフレームワークです。Galleryを見る限りかなり豊富なVisualを扱えるようです。画像だからってアニメーションやアクションが行えないわけではなく、そこにもちゃんと対応しています。扱っているライブラリが少ない、レーダーチャート（スパイダーチャート）も用意している点がいいです。
» Style Chart Editor(DEMO)
» Style Chart Gallery
CanViz

有名なVisualizationフレームワークであるGraphvizのJavascript版です。主にグラフ構造のデータを描画するのに適しています。ただ、DEMOを見る限り、アニメーションやイベントの設定ができないようで、本当にVisualizeのためだけのフレームワークのようです。
» CanViz DEMO
Axiis (Flex)

こちらはAdobe FlexのVisualizationフレームワークです。インタラクティブなアクションがかなりリッチに作りこまれています。下記のBrowser Statisticsは一部で話題になりましたね。かなり自由度の高いフレームワークのようです。
» Axiis &#8211; Browser Statistics DEMO
Infovis

こちらもグラフ構造のデータ描画ライブラリとして有名です。フレームワークではないので個別のVisualを利用する形になります。グラフ構造しか扱えないのですが、この手のライブラリとしては珍しく、Weighted Graph（ノード間のパスに重みが付いている）/Directed Graph（パスに方向がある）、の描画にも対応しています。現時点で5種類のグラフ系、ツリー系のVisualがありますが、どれもよくできています。
» Infovis DEMO
RGraph
番外ですが、HTML5用のグラフ生成ライブラリも登場しています。HTML5なのでまだまだ本格導入は難しいかもしれませんが、相当クオリティ高く仕上がっており、今後が楽しみなライブラリです。
» RGraph DEMO
]]></description>
			<content:encoded><![CDATA[<p>(<a href="http://analyst.8maki.jp/2010/01/20/data-visualization-frameworks-not-only-for-charts/" target="_blank">8 free Data Visualization frameworks not only for charts</a> [en])</p>
<p>相変わらずData Visualization関係で調査・開発を行っているのですが、その中でJavascriptのライブラリ・フレームワークを探す時間も多いです。</p>
<p>» <a href="http://sixrevisions.com/javascript/20-fresh-javascript-data-visualization-libraries/" target="_blank">20 Fresh JavaScript Data Visualization Libraries</a></p>
<p>上記記事のようにまとめ記事が結構あって助かるのですが、ほとんどがCharts（グラフ）のライブラリなんですよね。Chartsも線グラフか、棒グラフか、円グラフか、、、みたいにライブラリ化される主要なグラフは8種類くらいしかなく、面白くない。<br />
適切なデータに対して適切なVisualを関連付けるわけですから、もっと多くのVisualが考えられてもいいはず！</p>
<p>そこでChartsに限らない、もっと根本的にData Visualizationを扱っている有名どころのフレームワークをリストアップしてみました。</p>
<h4><a href="http://www.simile-widgets.org/" target="_blank">SIMILE Widgets Exhibit</a></h4>
<p><img class="aligncenter size-full wp-image-589" title="dv-js-library-simile" src="http://blog.8maki.jp/wp-content/uploads/2010/01/dv-js-library-simile.png" alt="dv-js-library-simile" width="550" height="260" /></p>
<p>MITのメディアラボがリリースしているFaceted Search用フレームワークです。HTMLを拡張したテンプレート言語を用いて、簡単にFaceted Searchと、検索結果のリッチなVisualizeを可能にしています。現在、リスト、テーブル、地図、Timeline、TimeplotといったVisualに対応しています。タブなどでVisualを切り替えられるので、ユーザーの目的にマッチした検索機能を提供することができます。</p>
<p>SIMILE Widgetsでは、他にも<a href="http://www.simile-widgets.org/timeline/" target="_blank">Timeline</a>や、<a href="http://www.simile-widgets.org/timeplot/" target="_blank">Timeplot</a>、<a href="http://www.simile-widgets.org/runway/" target="_blank">Runway(Coverflow)</a>などのVisualもAPIとして個別に提供しています。</p>
<p>» <a href="http://www.simile-widgets.org/exhibit/examples/presidents/presidents.html" target="_blank">SIMILE Widgets Exhibit &#8211; US President Search DEMO</a></p>
<h4><a href="http://vis.stanford.edu/protovis/" target="_blank">ProtoVis</a></h4>
<p><img class="aligncenter size-full wp-image-588" title="dv-js-library-protovis" src="http://blog.8maki.jp/wp-content/uploads/2010/01/dv-js-library-protovis.png" alt="dv-js-library-protovis" width="550" height="260" /></p>
<p>ProtoVisはStanfordのVisualizationフレームワークです。これは巷のライブラリと違い、グラフや地図、といった単位を1つの単位として扱わず、線や面、点といったもっと細かい部品単位でVisualを作成しています。どちらかというと<a href="http://processingjs.org/" target="_blank">Processing.js</a>に近いかも。たくさんのDEMOが載っているので、それらを参考にかなり自由度の高いVisualを作成することができます。</p>
<p>» <a href="http://vis.stanford.edu/protovis/ex/" target="_blank">ProtoVis DEMO</a></p>
<h4><a href="http://flare.prefuse.org/" target="_blank">Prefuse Flare (Flash)</a></h4>
<p><img class="aligncenter size-full wp-image-591" title="dv-js-library-prefuse" src="http://blog.8maki.jp/wp-content/uploads/2010/01/dv-js-library-prefuse.png" alt="dv-js-library-prefuse" width="550" height="261" /></p>
<p><a href="http://flare.prefuse.org/" target="_blank">Prefuse Flare</a>もData Visualizationのフレームワークとして有名です。<a href="http://prefuse.org/" target="_blank">Prefuse</a>は、Javaのフレームワークでしたが、今回Flashに対応しました。こちらも豊富なVisualを用意しており、SIMILE同様データ構造をしっかり設計しているので柔軟性が高く、Visualの切り替えや様々なVisualを拡張することができるようになっています。</p>
<p>また、Flashならでわの気持ちのいいインタラクションも高評価です。</p>
<p>» <a href="http://flare.prefuse.org/demo" target="_blank">Flare DEMO</a></p>
<h4><a href="hhttp://chart.inetsoft.com/" target="_blank">Style Chart</a></h4>
<p><img style="display: block; margin-left: auto; margin-right: auto; border: 0px initial initial;" title="dv-js-library-style-charts" src="http://blog.8maki.jp/wp-content/uploads/2010/01/dv-js-library-style-charts.png" alt="dv-js-library-style-charts" width="550" height="260" /></p>
<p>こちらは、javascriptでVisualのリクエストを投げるとサーバー側で画像を生成し、それを表示するというフレームワークです。Galleryを見る限りかなり豊富なVisualを扱えるようです。画像だからってアニメーションやアクションが行えないわけではなく、そこにもちゃんと対応しています。扱っているライブラリが少ない、<a href="http://chart.inetsoft.com/gallery/leSHhADy.png" target="_blank">レーダーチャート（スパイダーチャート）</a>も用意している点がいいです。</p>
<p>» <a href="http://chart.inetsoft.com/editor.html" target="_blank">Style Chart Editor(DEMO)</a><br />
» <a href="http://chart.inetsoft.com/gallery.html" target="_blank">Style Chart Gallery</a></p>
<h4><a href="http://code.google.com/p/canviz/" target="_blank">CanViz</a></h4>
<p><img class="aligncenter size-full wp-image-590" title="dv-js-library-canviz" src="http://blog.8maki.jp/wp-content/uploads/2010/01/dv-js-library-canviz.png" alt="dv-js-library-canviz" width="550" height="260" /></p>
<p>有名なVisualizationフレームワークである<a href="http://www.graphviz.org/" target="_blank">Graphviz</a>のJavascript版です。主にグラフ構造のデータを描画するのに適しています。ただ、DEMOを見る限り、アニメーションやイベントの設定ができないようで、本当にVisualizeのためだけのフレームワークのようです。</p>
<p>» <a href="http://www.ryandesign.com/canviz/" target="_blank">CanViz DEMO</a></p>
<h4><a href="http://www.axiis.org/index.html" target="_blank">Axiis (Flex)</a></h4>
<p><img class="aligncenter size-full wp-image-599" title="dv-js-library-axiis" src="http://blog.8maki.jp/wp-content/uploads/2010/01/dv-js-library-axiis.png" alt="dv-js-library-axiis" width="550" height="260" /></p>
<p>こちらはAdobe FlexのVisualizationフレームワークです。インタラクティブなアクションがかなりリッチに作りこまれています。下記のBrowser Statisticsは一部で話題になりましたね。かなり自由度の高いフレームワークのようです。</p>
<p>» <a href="http://www.axiis.org/examples.html" target="_blank">Axiis &#8211; Browser Statistics DEMO</a></p>
<h4><a href="http://thejit.org/" target="_blank">Infovis</a></h4>
<p><img class="aligncenter size-full wp-image-592" title="dv-js-library-infovis" src="http://blog.8maki.jp/wp-content/uploads/2010/01/dv-js-library-infovis.png" alt="dv-js-library-infovis" width="550" height="260" /></p>
<p>こちらもグラフ構造のデータ描画ライブラリとして有名です。フレームワークではないので個別のVisualを利用する形になります。グラフ構造しか扱えないのですが、この手のライブラリとしては珍しく、Weighted Graph（ノード間のパスに重みが付いている）/Directed Graph（パスに方向がある）、の描画にも対応しています。現時点で5種類のグラフ系、ツリー系のVisualがありますが、どれもよくできています。</p>
<p>» <a href="http://thejit.org/demos/" target="_blank">Infovis DEMO</a></p>
<h4><a href="http://www.rgraph.net/" target="_blank">RGraph</a></h4>
<p>番外ですが、HTML5用のグラフ生成ライブラリも登場しています。HTML5なのでまだまだ本格導入は難しいかもしれませんが、相当クオリティ高く仕上がっており、今後が楽しみなライブラリです。</p>
<p>» <a href="http://www.rgraph.net/examples/index.html" target="_blank">RGraph DEMO</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.8maki.jp/2010/01/javascript-data-visualization-library-not-only-for-charts.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.8maki.jp/2010/01/javascript-data-visualization-library-not-only-for-charts.html" />
	<feedburner:origLink>http://blog.8maki.jp/2010/01/javascript-data-visualization-library-not-only-for-charts.html</feedburner:origLink></item>
		<item>
		<title>モノと関連データの関係性-Semantic Webによるスキーマ定義-</title>
		<link>http://feedproxy.google.com/~r/8maki/~3/pBibCSHUcn4/data-visulization_rdf_semantic-web.html</link>
		<comments>http://blog.8maki.jp/2009/12/data-visulization_rdf_semantic-web.html#comments</comments>
		<pubDate>Sun, 13 Dec 2009 12:42:31 +0000</pubDate>
		<dc:creator>8maki</dc:creator>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[proposal]]></category>
		<category><![CDATA[survey]]></category>
		<category><![CDATA[テクノロジー]]></category>
		<category><![CDATA[デザイン]]></category>
		<category><![CDATA[Data Visualization]]></category>
		<category><![CDATA[Dublin Core]]></category>
		<category><![CDATA[RDF]]></category>
		<category><![CDATA[Semantic Web]]></category>

		<guid isPermaLink="false">http://blog.8maki.jp/?p=577</guid>
		<description><![CDATA[前回、モノをある切り口で捉え、それを適切な表現方法にあてはめて考えるアイディア出しスタイルと、モノの関連データにVisualizationをあてはめるというData Visualizationのスタイルは、脳の構造・プロセスが同じで、分かりやすいのではないか、という記事を書きました。
» アイディアの発想法とData Visualizationは同じ構造なのではないか？

そこで今回は、上記事で言及している”モノとその関連データ”とは何なのか、深く掘り下げてみたいと思います。
関連データとはプロパティである
「データから自動でVisualizationを行う」という取り組みの中で、どのようにデータを扱えばよいかという問いにぶちあたり、最近RDFおよびRDF Schema、Dublin Coreあたりを調べています。
RDF とは、主語・述語(プロパティ)・目的語(値)という3要素を用いてデータの関係性を表現するWeb上の枠組みのことです。例えば、「New Yorkの略語はNYである。」という例文は下記のようなXMLで表現されます。

&#60;rdf:RDF
 xmlns:rdf=&#34;http://www.w3.org/1999/02/22-rdf-syntax-ns#&#34;
 xmlns:dcterms=&#34;http://purl.org/dc/terms/alternative&#34;&#62;
  &#60;rdf:Description rdf:about=&#34;urn:states:New%20York&#34;&#62;
    &#60;dcterms:alternative&#62;NY&#60;/dcterms:alternative&#62;
  &#60;/rdf:Description&#62;
&#60;/rdf:RDF&#62;

この例で、主語・述語・目的語はこのような意味になります。↓
主語： New York というモノが存在し、
目的語： NY という関連データがあり、
述語： 略語 という主語と関連データの関連性を意味している。
これだけだとちょっと分かりにくいかもしれませんが、表は、基本的に主語・述語・目的語の構造に落とすことができます。下記は宇多田ヒカルのWikipedia Infoboxの例です。「宇多田ヒカルの出生名は宇多田光である」ということを表しています。

この構造は、前回の記事で示した、モノ⇔関連データ⇔Visualizationの構造に合致しています。
ここの述語、要はプロパティの部分とVisualizationをうまくひもづけるルールを定義できたら、「扱うデータからVisualizationを発想する」ことができるのではないでしょうか。さらに言えば、ルールさえしっかりしていれば、データとプロパティさえ定義すると自動でユーザーが求めるVisualizationを生成することができるようになります。
規格化されたプロパティの定義
ただ、適切なプロパティと適切なVisualizationをひもづけるには、プロパティの規格化が必要です。色々な人が、バラバラのプロパティ名を用いたり、統一化されていないカテゴリをプロパティとして付与したりすると、自動化が非常に困難になります。
そこでRDFでは、Dublin Coreというメタデータ記述語彙集を用いることが推奨されています。Dublin Coreには、TitleやCreatorといった15の基本要素と呼ばれるプロパティ候補があり、これらを用いることで、情報に共通化されたメタデータ、プロパティを付与することができるようになります。
さらにこれを細分化したDCMI Metadata Termsというものも存在します。DCMI Metadata Termsでは、50個以上のプロパティが定義されています。 先程の「略語」という述語（プロパティ）は、DCMI Metadata Termsのdcterms:alternativeというプロパティに置き換えることができます。
考察
このようにWeb上でデータを構造化する動きは、Semantic Webという流れの一つです。Semantic Webとは、コンピュータが理解できるように、Web上の情報に意味を付与しよう、というプロジェクトです。Data Visualizationで扱うデータをSemantic Webに合わせて構造化する方法は、現状は、割と有効だと思われます。
ただ、Semantic Webは分かりにくい上に考え方が古いので、中々浸透していません。Data Visualizationを主軸に考える場合、もっと別なデータの構造化・規格化手法を考える余地は大いにあるとは思います。
参考
こちらに、Semantic Webの概念図が載っています。コンテンツにメタデータの付与→メタデータの語彙規格化→語彙の意味把握(Ontology)→論理式を用いて結論を導く(Rules,Logic Framework)→結論の証明(Proof) という流れはいい線いっている気がしますが、先は長そうですね。
]]></description>
			<content:encoded><![CDATA[<p>前回、モノをある切り口で捉え、それを適切な表現方法にあてはめて考えるアイディア出しスタイルと、モノの関連データにVisualizationをあてはめるというData Visualizationのスタイルは、脳の構造・プロセスが同じで、分かりやすいのではないか、という記事を書きました。</p>
<p>» <a href="http://blog.8maki.jp/2009/11/data-visualization_idea.html" target="_blank">アイディアの発想法とData Visualizationは同じ構造なのではないか？</a></p>
<p style="text-align: center;"><img class="aligncenter" src="http://blog.8maki.jp/wp-content/uploads/2009/11/edit3.png" alt="" width="350" height="270" /></p>
<p>そこで今回は、上記事で言及している”モノとその関連データ”とは何なのか、深く掘り下げてみたいと思います。</p>
<h4>関連データとはプロパティである</h4>
<p>「データから自動でVisualizationを行う」という取り組みの中で、どのようにデータを扱えばよいかという問いにぶちあたり、最近<a href="http://ja.wikipedia.org/wiki/Resource_Description_Framework" target="_blank">RDF</a>およびRDF Schema、<a href="http://ja.wikipedia.org/wiki/Dublin_Core" target="_blank">Dublin Core</a>あたりを調べています。</p>
<p>RDF とは、主語・述語(プロパティ)・目的語(値)という3要素を用いてデータの関係性を表現するWeb上の枠組みのことです。例えば、「New Yorkの略語はNYである。」という例文は下記のようなXMLで表現されます。</p>
<pre class="brush: xml;">
&lt;rdf:RDF
 xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;
 xmlns:dcterms=&quot;http://purl.org/dc/terms/alternative&quot;&gt;
  &lt;rdf:Description rdf:about=&quot;urn:states:New%20York&quot;&gt;
    &lt;dcterms:alternative&gt;NY&lt;/dcterms:alternative&gt;
  &lt;/rdf:Description&gt;
&lt;/rdf:RDF&gt;
</pre>
<p>この例で、主語・述語・目的語はこのような意味になります。↓<br />
<strong>主語</strong>： New York というモノが存在し、<br />
<strong>目的語</strong>： NY という関連データがあり、<br />
<strong>述語</strong>： 略語 という主語と関連データの関連性を意味している。</p>
<p>これだけだとちょっと分かりにくいかもしれませんが、表は、基本的に主語・述語・目的語の構造に落とすことができます。下記は宇多田ヒカルのWikipedia Infoboxの例です。「宇多田ヒカルの出生名は宇多田光である」ということを表しています。</p>
<p><img class="aligncenter size-full wp-image-580" title="utada" src="http://blog.8maki.jp/wp-content/uploads/2009/12/utada.png" alt="utada" width="280" height="234" /></p>
<p>この構造は、前回の記事で示した、モノ⇔関連データ⇔Visualizationの構造に合致しています。</p>
<p>ここの述語、要はプロパティの部分とVisualizationをうまくひもづけるルールを定義できたら、「扱うデータからVisualizationを発想する」ことができるのではないでしょうか。さらに言えば、ルールさえしっかりしていれば、データとプロパティさえ定義すると自動でユーザーが求めるVisualizationを生成することができるようになります。</p>
<h4>規格化されたプロパティの定義</h4>
<p>ただ、適切なプロパティと適切なVisualizationをひもづけるには、プロパティの規格化が必要です。色々な人が、バラバラのプロパティ名を用いたり、統一化されていないカテゴリをプロパティとして付与したりすると、自動化が非常に困難になります。</p>
<p>そこでRDFでは、Dublin Coreというメタデータ記述語彙集を用いることが推奨されています。<a href="http://ja.wikipedia.org/wiki/Dublin_Core" target="_blank">Dublin Core</a>には、TitleやCreatorといった15の基本要素と呼ばれるプロパティ候補があり、これらを用いることで、情報に共通化されたメタデータ、プロパティを付与することができるようになります。</p>
<p>さらにこれを細分化した<a href="http://dublincore.org/documents/dcmi-terms/" target="_blank">DCMI Metadata Terms</a>というものも存在します。DCMI Metadata Termsでは、50個以上のプロパティが定義されています。 先程の「略語」という述語（プロパティ）は、DCMI Metadata Termsのdcterms:alternativeというプロパティに置き換えることができます。</p>
<h4>考察</h4>
<p>このようにWeb上でデータを構造化する動きは、<a href="http://ja.wikipedia.org/wiki/%E3%82%BB%E3%83%9E%E3%83%B3%E3%83%86%E3%82%A3%E3%83%83%E3%82%AF%E3%83%BB%E3%82%A6%E3%82%A7%E3%83%96" target="_blank">Semantic Web</a>という流れの一つです。Semantic Webとは、コンピュータが理解できるように、Web上の情報に意味を付与しよう、というプロジェクトです。Data Visualizationで扱うデータをSemantic Webに合わせて構造化する方法は、現状は、割と有効だと思われます。</p>
<p>ただ、Semantic Webは分かりにくい上に考え方が古いので、中々浸透していません。Data Visualizationを主軸に考える場合、もっと別なデータの構造化・規格化手法を考える余地は大いにあるとは思います。</p>
<h4>参考</h4>
<p><a href="http://www.ritsumei.ac.jp/~inabam/class/km/4/" target="_blank">こちら</a>に、Semantic Webの概念図が載っています。コンテンツにメタデータの付与→メタデータの語彙規格化→語彙の意味把握(Ontology)→論理式を用いて結論を導く(Rules,Logic Framework)→結論の証明(Proof) という流れはいい線いっている気がしますが、先は長そうですね。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.8maki.jp/2009/12/data-visulization_rdf_semantic-web.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.8maki.jp/2009/12/data-visulization_rdf_semantic-web.html" />
	<feedburner:origLink>http://blog.8maki.jp/2009/12/data-visulization_rdf_semantic-web.html</feedburner:origLink></item>
		<item>
		<title>アイディアの発想法とData Visualizationは同じ構造なのではないか？</title>
		<link>http://feedproxy.google.com/~r/8maki/~3/QVrwIY6GLEs/data-visualization_idea.html</link>
		<comments>http://blog.8maki.jp/2009/11/data-visualization_idea.html#comments</comments>
		<pubDate>Mon, 30 Nov 2009 14:51:32 +0000</pubDate>
		<dc:creator>8maki</dc:creator>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[proposal]]></category>
		<category><![CDATA[エンジニア]]></category>
		<category><![CDATA[Data Visualization]]></category>
		<category><![CDATA[松岡正剛]]></category>
		<category><![CDATA[編集学校]]></category>
		<category><![CDATA[高須賀宣]]></category>

		<guid isPermaLink="false">http://blog.8maki.jp/?p=560</guid>
		<description><![CDATA[(Data Visualization is the same as how to organize ideas [en])
先日、元サイボウズでアメリカでLUNARRを立ち上げられた高須賀さんにお会いしました。そこで、最近研究している Data Visualization について発想が沸いたので書き残します。各データの種類（スキーマ）から自動で適切な Visualization 方法を選択して表現する、という研究です。
高須賀さんのお話
「アイディアをひねり出すとき、いきなりすごいアイディアを考えるよりも、切り口を見つけてそこから発展させた方がいい。アイディアと切り口のバランスが取れた位置が一番エネルギーがある。」ものすごく簡単にまとめるとこういうお話でした。
つまり、ものごとを構造化してとらえ、ツールを使って着想を得た方がアイディアを出しやすい、ということ。
例： 新しいレーザーを考える。レーザーは点であり直進する。点の反対は面で、直進の反対は曲がる。これらを2次元グラフにプロットし、各象限に何が当てはまるか頭をひねる。面・曲がるという象限、つまりどこにおいても光を反射させ、面に映し出すという切り口から、スクリーンの前に置かなくてもよいプロジェクターというアイディアが生まれた。
このとき、切り口からアイディアをひねるために用いたツールが、高須賀さん曰く2&#215;2というもの。要は2軸ある2次元グラフで昔私もマトリックスとも呼んでいました。構造化してアイディアを得る・まとめる方法は以下の高須賀さんの記事が分かりやすいです。
» 事業を考える切り口 &#8211; Toru Takasuka の起業・経営ブログ
» 新しい concept のはじまり &#8211; Toru Takasuka の起業・経営ブログ
松岡正剛の編集学校で教える編集術
こういった発想の訓練、実は以前にも受けたことがありました。松岡正剛の編集学校で体験授業です。
割と戦略コンサルのケーススタディ訓練に似ているのですが、MECEに限らず、もっと自由に発想する、ということが目的で楽しかったのを覚えています。そこでいただいたパンフレットに、6個のツールが載っていました。



1. Combination (一種合成型)
2つのものを合成して新しいアイディアを生み出す。
2. Triple Jump (三間連結型)
ホップ・ステップ・ジャンプ型で発想を展開。大・中・小や過去・現在・未来などの切り口もあり。
3. Branching (二点分岐型)
一つのものを2つに展開。この例ではブランドを切り口に展開した。
4. Trinity (三位一体型)
三位一体型、3点セットで考える発想パターン。3Cなどが代表例かも。
5.1 All Around (二軸四方型1)
Branching型の枝が2つ増えて、四方へと分岐する発想法。
5.2 2&#215;2 (二軸四方型2)
2軸を決めてそれぞれのマスに何が入るか考える。マトリックス型。
※英語は勝手に私が変換したものです。

Data Visualizationとの関係
さて、本題ですが、切り口をツールにあてはめアイディアを得るという発想法と、Data Visualization は、頭の中では同じ構造で処理しているのではないか？というのが今回のパラダイム・シフトでした。

どちらも「分かりやすく考える」「分かりやすく表現する」ということで、頭の使い方が非常によく似ているような気がします。Data Visualization というと Computer Science チックですが、何か考えを図にまとめるときのことを考えると分かりやすくて、まず扱う対象があって、それを一つの側面で切ったデータ群があり、それをどう Visualize するか？というのは、高須賀さんのおっしゃる構造的な思考と同じプロセスを踏むのではないでしょうか。
普通 Data Visualization [...]]]></description>
			<content:encoded><![CDATA[<p>(<a href="http://analyst.8maki.jp/2010/01/27/data-visualization-is-the-same-as-how-to-organize-ideas/" target="_blank">Data Visualization is the same as how to organize ideas [en]</a>)</p>
<p>先日、元サイボウズでアメリカで<a href="http://ja.wikipedia.org/wiki/LUNARR" target="_blank">LUNARR</a>を立ち上げられた<a href="http://ja.wikipedia.org/wiki/%E9%AB%98%E9%A0%88%E8%B3%80%E5%AE%A3" target="_blank">高須賀さん</a>にお会いしました。そこで、最近研究している <a href="http://blog.8maki.jp/tag/data-visualization" target="_self">Data Visualization</a> について発想が沸いたので書き残します。各データの種類（スキーマ）から自動で適切な Visualization 方法を選択して表現する、という研究です。</p>
<h4>高須賀さんのお話</h4>
<p>「アイディアをひねり出すとき、いきなりすごいアイディアを考えるよりも、切り口を見つけてそこから発展させた方がいい。アイディアと切り口のバランスが取れた位置が一番エネルギーがある。」ものすごく簡単にまとめるとこういうお話でした。</p>
<p>つまり、ものごとを構造化してとらえ、ツールを使って着想を得た方がアイディアを出しやすい、ということ。</p>
<p>例： 新しいレーザーを考える。レーザーは点であり直進する。点の反対は面で、直進の反対は曲がる。これらを2次元グラフにプロットし、各象限に何が当てはまるか頭をひねる。面・曲がるという象限、つまりどこにおいても光を反射させ、面に映し出すという切り口から、スクリーンの前に置かなくてもよいプロジェクターというアイディアが生まれた。</p>
<p>このとき、切り口からアイディアをひねるために用いたツールが、高須賀さん曰く2&#215;2というもの。要は2軸ある2次元グラフで昔私もマトリックスとも呼んでいました。構造化してアイディアを得る・まとめる方法は以下の高須賀さんの記事が分かりやすいです。</p>
<p>» <a href="http://blog.goo.ne.jp/ttakasuka/e/d101f40c9d1fe9bedd466b654cfdcf5b" target="_blank">事業を考える切り口 &#8211; Toru Takasuka の起業・経営ブログ</a></p>
<p>» <a href="http://blog.goo.ne.jp/ttakasuka/e/95259e55c4307f01892957a16e255927" target="_blank">新しい concept のはじまり &#8211; Toru Takasuka の起業・経営ブログ</a></p>
<h4>松岡正剛の編集学校で教える編集術</h4>
<p>こういった発想の訓練、実は以前にも受けたことがありました。松岡正剛の<a href="http://es.isis.ne.jp/index_main.html" target="_blank">編集学校</a>で体験授業です。</p>
<p>割と戦略コンサルのケーススタディ訓練に似ているのですが、MECEに限らず、もっと自由に発想する、ということが目的で楽しかったのを覚えています。そこでいただいたパンフレットに、6個のツールが載っていました。</p>
<p style="text-align: center;"><img class="size-full wp-image-562 aligncenter" title="edit1" src="http://blog.8maki.jp/wp-content/uploads/2009/11/edit1.png" alt="edit1" width="500" height="364" /></p>
<p style="text-align: center;">
<p style="text-align: center;">
<p>1. <em>Combination</em> (一種合成型)<br />
2つのものを合成して新しいアイディアを生み出す。</p>
<p>2. <em>Triple Jump</em> (三間連結型)<br />
ホップ・ステップ・ジャンプ型で発想を展開。大・中・小や過去・現在・未来などの切り口もあり。</p>
<p>3. <em>Branching </em>(二点分岐型)<br />
一つのものを2つに展開。この例ではブランドを切り口に展開した。</p>
<p>4. <em>Trinity</em> (三位一体型)<br />
三位一体型、3点セットで考える発想パターン。3Cなどが代表例かも。</p>
<p>5.1 <em>All Around</em> (二軸四方型1)<br />
Branching型の枝が2つ増えて、四方へと分岐する発想法。</p>
<p>5.2 <em>2&#215;2</em> (二軸四方型2)<br />
2軸を決めてそれぞれのマスに何が入るか考える。マトリックス型。</p>
<p>※英語は勝手に私が変換したものです。</p>
<p><img class="aligncenter size-full wp-image-571" title="edit2" src="http://blog.8maki.jp/wp-content/uploads/2009/11/edit2.png" alt="edit2" width="500" height="243" /></p>
<h4>Data Visualizationとの関係</h4>
<p>さて、本題ですが、切り口をツールにあてはめアイディアを得るという発想法と、Data Visualization は、頭の中では同じ構造で処理しているのではないか？というのが今回のパラダイム・シフトでした。</p>
<p><img class="aligncenter size-full wp-image-575" title="edit3" src="http://blog.8maki.jp/wp-content/uploads/2009/11/edit3.png" alt="edit3" width="350" height="270" /></p>
<p>どちらも「分かりやすく考える」「分かりやすく表現する」ということで、頭<span style="background-color: #ffffff; ">の使い方が非常によく似ているような気がします。Data Visualization というと Computer Science チックですが、何か考えを図にまとめるときのことを考えると分かりやすくて、まず扱う対象があって、それを一つの側面で切ったデータ群があり、それをどう Visualize するか？というのは、高須賀さんのおっしゃる構造的な思考と同じプロセスを踏むのではないでしょうか。</span></p>
<p>普通 Data Visualization を調べる場合、どういった Visualization があるのか、どうプログラミングで表現するのか、といったことに目が行きがちになります。オライリー本の&#8221;<a href="https://www.amazon.co.jp/dp/0596514557?tag=8makiblog-22&amp;camp=243&amp;creative=1615&amp;linkCode=as1&amp;creativeASIN=0596514557&amp;adid=0SQK1ECCWYAE9RKK0KM6&amp;" target="_blank">Visualizing Data</a>&#8220;もアルゴリズム中心の本でした。</p>
<p>そこを、扱うデータから Visualization を発想するというパラダイムに変換することで、おもしろい表現ができるだけでなく、説得力のある Data Visualization 手法を考案できる気がしました。</p>
<p>参考までに、こちらの図↓は様々なチャートを目的別に一覧表示しています。チートシートとして使うと便利かも。</p>
<p>» <a href="http://i.imgur.com/YjWta.jpg" target="_blank">Chart Suggestions &#8211; A Thought Starter</a></p>
<p>p.s.</p>
<p>オフィスにお邪魔した際、VentureBEATの勝屋さんもいらっしゃいました。Blogに写真を載せてさらにリンクまで張っていただきました。ありがとうございました！最強のコネクターと言われるだけのことあって、超人懐っこいでしたｗ</p>
<p>» <a href="http://www.venturebeat.jp/katchaman/2009/11/%E3%82%A2%E3%82%A2.html" target="_blank">人のつながりは無限（∞）につながる &#8211; 勝屋久の日々是々</a></p>
<table class="yztbl" border="0">
<tbody>
<tr valign="top">
<td class="yz-image"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4873113784/8makiblog-22/" target="_blank"><img style="border: none;" src="http://ecx.images-amazon.com/images/I/41DdCRhKTAL._SL160_.jpg" alt="" /></a></td>
<td class="yz-info">
<div class="yz-name"><a href="http://yasazon.com/asin/4873113784.html" target="_blank"><img src="http://images-jp.amazon.com/images/G/09/icons/icon-books.gif" border="0" alt="" align="left" /></a><a name="yzlink"></a></div>
<div class="yz-detail" style="font-size:small">
<ul style="margin-top:0;margin-bottom:0">
<li><span><a href="http://yasazon.com/s/8makiblog-22/Ben%20Fry.html">Ben Fry</a>, <a href="http://yasazon.com/s/8makiblog-22/%E5%A2%97%E4%BA%95%20%E4%BF%8A%E4%B9%8B%20(%E7%9B%A3%E8%A8%B3).html">増井 俊之 (監訳)</a>, <a href="http://yasazon.com/s/8makiblog-22/%E5%8A%A0%E8%97%A4%20%E6%85%B6%E5%BD%A6.html">加藤 慶彦</a></span></li>
<li>定価 : <span>￥ 3,780</span></li>
<li>発売日 : <span>2008/12/01</span></li>
<li>出版社/メーカー : <span><a href="http://yasazon.com/s/8makiblog-22/%E3%82%AA%E3%83%A9%E3%82%A4%E3%83%AA%E3%83%BC%E3%82%B8%E3%83%A3%E3%83%91%E3%83%B3.html">オライリージャパン</a></span></li>
<li>おすすめ度 : <span><img style="border: none;" src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-4-5.gif" alt="" /> (6 reviews)</span><br />
<img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-3-0.gif" alt="" />可視化の一つの手段としてProcessingの概要を知りたい人に<br />
<img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-5-0.gif" alt="" />情報の可視化入門<br />
<img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-4-0.gif" alt="" />目からウロコが。。。<br />
<img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-5-0.gif" alt="" />日本人の本より読みやすい<br />
<img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-4-0.gif" alt="" />既存のマッシュアップAPIを使うのとは違ったWeb情報の楽しみ方</li>
</ul>
</div>
</td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://blog.8maki.jp/2009/11/data-visualization_idea.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.8maki.jp/2009/11/data-visualization_idea.html" />
	<feedburner:origLink>http://blog.8maki.jp/2009/11/data-visualization_idea.html</feedburner:origLink></item>
		<item>
		<title>MicrosoftのChromeOSとは別のベクトルのウェブブラウズ体験「Pivot」</title>
		<link>http://feedproxy.google.com/~r/8maki/~3/pbYNsegqkoc/microsoft-pivot.html</link>
		<comments>http://blog.8maki.jp/2009/11/microsoft-pivot.html#comments</comments>
		<pubDate>Fri, 20 Nov 2009 02:16:32 +0000</pubDate>
		<dc:creator>8maki</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[survey]]></category>
		<category><![CDATA[テクノロジー]]></category>
		<category><![CDATA[Faceted Search]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[pivot]]></category>
		<category><![CDATA[ブラウザ]]></category>
		<category><![CDATA[検索]]></category>

		<guid isPermaLink="false">http://blog.8maki.jp/?p=545</guid>
		<description><![CDATA[先程、こんなニュース記事を見つけました。巷ではChromeOSのリリースで賑わっていますが、Microsoftも隠れてこんなものをリリースしていたようです。
» マイクロソフトによるウェブ閲覧の新しい実験「Pivot」
&#160;
「ウェブをばらばらのページの集まりとしてではなく、“くもの巣ようなウェブ”として閲覧する方法だ」というコンセプトのようですが、下記のムービーを見る限り、この3つ↓の部分が特徴的な、半ブラウザ・半検索エンジンみたいなアプリケーションという印象です。

検索itemをグループ化（Collections）して、属性で絞り込んだり、ソートできたりするファセット検索
ローカル・Webの境なく、透過的に検索itemを扱える（File、Webページ、画像、、、）
リッチなVisualization


» Learn More about Pivot &#124; Microsoft Pivot
個人的に2:30くらいの部分で出てくる&#8221;Wikipdeia Collections&#8221;がツボりました。便利かどうかは使ってみないとわからないですが、こうやってWebを整理して閲覧する方向性は面白いと思います。
そこでグループ化が肝となってくるようですが、Pivotではそれを”Collections”と評していて、3つのタイプに分けてitemグループを扱っているようです。数学の集合に近いイメージ。

Simple Collections
Linked Collections
Dynamic Collections


まあ、Windows Vista以上、.NET Framework 3.5、IE8がないと動かない点は、なんというか”Microsoft”っぽいですが。。。
ただ、HTML5も本格的に流行り出していますし、今後もブラウザとWebアプリケーションの境が曖昧なコンセプトが出てきそうで、中々おもしろい領域だと思います。ちなみに、近々2つのHTML5関連のイベントに参加予定です。
» HTML5 Tech Talk on November 2009
» HTML5 のご紹介@Opera
]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-546" title="logo-pivot" src="http://blog.8maki.jp/wp-content/uploads/2009/11/logo-pivot.png" alt="logo-pivot" width="191" height="80" />先程、こんなニュース記事を見つけました。巷では<a href="http://googleblog.blogspot.com/2009/11/releasing-chromium-os-open-source.html" target="_blank">ChromeOS</a>のリリースで賑わっていますが、Microsoftも隠れてこんなものをリリースしていたようです。</p>
<p>» <a href="http://japan.zdnet.com/sp/feature/07microsoft/story/0,3800083079,20403889,00.htm" target="_blank">マイクロソフトによるウェブ閲覧の新しい実験「Pivot」</a></p>
<p>&nbsp;</p>
<p>「ウェブをばらばらのページの集まりとしてではなく、“くもの巣ようなウェブ”として閲覧する方法だ」というコンセプトのようですが、下記のムービーを見る限り、この3つ↓の部分が特徴的な、半ブラウザ・半検索エンジンみたいなアプリケーションという印象です。</p>
<ul>
<li><span style="background-color: #ffffff; ">検索itemをグループ化（Collections）して、属性で絞り込んだり、ソートできたりするファセット検索</span></li>
<li><span style="background-color: #ffffff; ">ローカル・Webの境なく、透過的に検索itemを扱える（File、Webページ、画像、、、）</span></li>
<li><span style="background-color: #ffffff; ">リッチなVisualization</span></li>
</ul>
<p><object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/BZuFUZpEZ-A&#038;hl=ja_JP&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/BZuFUZpEZ-A&#038;hl=ja_JP&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object></p>
<p>» <a href="http://www.getpivot.com/" target="_blank">Learn More about Pivot | Microsoft Pivot</a></p>
<p>個人的に2:30くらいの部分で出てくる&#8221;Wikipdeia Collections&#8221;がツボりました。便利かどうかは使ってみないとわからないですが、こうやってWebを整理して閲覧する方向性は面白いと思います。</p>
<p>そこでグループ化が肝となってくるようですが、Pivotではそれを”Collections”と評していて、3つのタイプに分けてitemグループを扱っているようです。数学の集合に近いイメージ。</p>
<ul>
<li>Simple Collections</li>
<li>Linked Collections</li>
<li>Dynamic Collections</li>
</ul>
<p style="text-align: center; "><img class="size-full wp-image-547 aligncenter" title="pivot-collections" src="http://blog.8maki.jp/wp-content/uploads/2009/11/pivot-collections.png" alt="pivot-collections" width="500" height="229" /></p>
<p style="text-align: left;">まあ、Windows Vista以上、.NET Framework 3.5、IE8がないと動かない点は、なんというか”Microsoft”っぽいですが。。。</p>
<p style="text-align: left;"><span style="background-color: #ffffff;">ただ、HTML5も本格的に流行り出していますし、今後もブラウザとWebアプリケーションの境が曖昧なコンセプトが出てきそうで、中々おもしろい領域だと思います。ちなみに、近々2つのHTML5関連のイベントに参加予定です。</span></p>
<p style="text-align: left;"><span style="background-color: #ffffff;">» <a href="http://docs.google.com/View?id=dfwmsc7v_15cc6s2vdh" target="_blank">HTML5 Tech Talk on November 2009</a></span></p>
<p style="text-align: left;"><span style="background-color: #ffffff;">» <a href="http://my.opera.com/MezamashiTech/blog/2009/11/12/html5" target="_blank">HTML5 のご紹介@Opera</a></span></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.8maki.jp/2009/11/microsoft-pivot.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.8maki.jp/2009/11/microsoft-pivot.html" />
	<feedburner:origLink>http://blog.8maki.jp/2009/11/microsoft-pivot.html</feedburner:origLink></item>
		<item>
		<title>Python-MySQL(MySQLdb)のメモリリーク対策</title>
		<link>http://feedproxy.google.com/~r/8maki/~3/1ESmRWc7iQc/python-mysql-memory-leak.html</link>
		<comments>http://blog.8maki.jp/2009/10/python-mysql-memory-leak.html#comments</comments>
		<pubDate>Tue, 27 Oct 2009 00:49:31 +0000</pubDate>
		<dc:creator>8maki</dc:creator>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[proposal]]></category>
		<category><![CDATA[エンジニア]]></category>
		<category><![CDATA[memory]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[MySQLdb]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://blog.8maki.jp/?p=535</guid>
		<description><![CDATA[会社のスクリプト言語がPythonに統一されて、今月からPythonをメインに使っているのですが、MySQLに接続する際なぜかものすごくメモリを食う時がありました。その備忘録。
最近技術ネタが続いていますがf^^;
結論から先に書くと、MySQLdbのfetchallの部分を下記のように書きなおすとメモリリークが起きなくなりました。

sql = &#34;SQL文&#34;
con= MySQLdb.connect(db = db, host = host, user = user, passwd = passwd)
cur = con.cursor()
cur.execute(sql, params)
result = cur.fetchall()

↓

sql = &#34;SQL文&#34;
con = MySQLdb.connect(db = db, host = host, user = user, passwd = passwd)
con.query(sql)
r = con.store_result() # use_result()も可
result = []
while(True):
　　row = r.fetch_row()
　　if not row: break
　　result.insert(0, row[0]) # 初めにデータを挿入してリストの再構成を防ぎ高速化！
con.close()

» ueBLOG  &#124; PythonをつかってMySQLの巨大な結果を返すselect文を処理する
主にこちらのブログを参考にしたのですが、cursorを使わず直接connectからクエリを投げるようにしています。
大きな違いは、一度にデータを取得するのではなく、1行ずつ取得するようにしている、ということだと思います。6～9行目で取得する行を一つ一つリストに格納しています。
なお、4行目でstore_result()を使っていますが、use_result()も可能で、use_result()を使うとデータをサーバに保持しそこから一行ずつ取得するようになるので、よりメモリの消費が抑えられる、気がしますf^^;
確認していないので何とも言えないのですが。
SQLAlchemyだとメモリリークしない、と聞いて試してみたのですが、ORマッピングで導入が面倒くさそうなうえに、生SQLを叩く際は結局MySQLdbを使うようで問題は解決しませんでした。
大量のデータをMySQLに保存しそこから全文検索（エンジンはSenna）でデータを引っ張る処理を行っていて、ある特定のSQLを書く必要があったので。
参考：
» MySQLdbのメモリー・リーク &#8211; [...]]]></description>
			<content:encoded><![CDATA[<p><span style="background-color: #ffffff; ">会社のスクリプト言語がPythonに統一されて、今月からPythonをメインに使っているのですが、MySQLに接続する際なぜかものすごくメモリを食う時がありました。その備忘録。</span></p>
<p>最近技術ネタが続いていますがf^^;</p>
<p>結論から先に書くと、MySQLdbのfetchallの部分を下記のように書きなおすとメモリリークが起きなくなりました。</p>
<pre class="brush: python;">
sql = &quot;SQL文&quot;
con= MySQLdb.connect(db = db, host = host, user = user, passwd = passwd)
cur = con.cursor()
cur.execute(sql, params)
result = cur.fetchall()
</pre>
<p>↓</p>
<pre class="brush: python;">
sql = &quot;SQL文&quot;
con = MySQLdb.connect(db = db, host = host, user = user, passwd = passwd)
con.query(sql)
r = con.store_result() # use_result()も可
result = []
while(True):
　　row = r.fetch_row()
　　if not row: break
　　result.insert(0, row[0]) # 初めにデータを挿入してリストの再構成を防ぎ高速化！
con.close()
</pre>
<p>» <a href="http://www.ueblog.org/blog/entry/pythonmysqldb/" target="_blank">ueBLOG  | PythonをつかってMySQLの巨大な結果を返すselect文を処理する</a><br />
主にこちらのブログを参考にしたのですが、cursorを使わず直接connectからクエリを投げるようにしています。<br />
大きな違いは、一度にデータを取得するのではなく、1行ずつ取得するようにしている、ということだと思います。6～9行目で取得する行を一つ一つリストに格納しています。</p>
<p>なお、4行目でstore_result()を使っていますが、use_result()も可能で、use_result()を使うとデータをサーバに保持しそこから一行ずつ取得するようになるので、よりメモリの消費が抑えられる、気がしますf^^;<br />
確認していないので何とも言えないのですが。</p>
<p>SQLAlchemyだとメモリリークしない、と聞いて試してみたのですが、ORマッピングで導入が面倒くさそうなうえに、生SQLを叩く際は結局MySQLdbを使うようで問題は解決しませんでした。<br />
大量のデータをMySQLに保存しそこから全文検索（エンジンはSenna）でデータを引っ張る処理を行っていて、ある特定のSQLを書く必要があったので。</p>
<p>参考：<br />
» <a href="http://d.hatena.ne.jp/perezvon/20090109/1231491515" target="_blank">MySQLdbのメモリー・リーク &#8211; スコトプリゴニエフスク通信</a><br />
» <a href="http://kjirou.sakura.ne.jp/mt/2008/12/python_mysqldb.html" target="_blank">[Python] MySQLdbのメモリリーク (それなりブログ)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.8maki.jp/2009/10/python-mysql-memory-leak.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.8maki.jp/2009/10/python-mysql-memory-leak.html" />
	<feedburner:origLink>http://blog.8maki.jp/2009/10/python-mysql-memory-leak.html</feedburner:origLink></item>
		<item>
		<title>FirefoxやChromeのPlugin開発に便利なnixysa</title>
		<link>http://feedproxy.google.com/~r/8maki/~3/XCvXvSetdfY/nixysa-npapi-gluecode-genereator.html</link>
		<comments>http://blog.8maki.jp/2009/10/nixysa-npapi-gluecode-genereator.html#comments</comments>
		<pubDate>Thu, 08 Oct 2009 16:42:49 +0000</pubDate>
		<dc:creator>8maki</dc:creator>
				<category><![CDATA[survey]]></category>
		<category><![CDATA[テクノロジー]]></category>
		<category><![CDATA[browser plugin]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[nixysa]]></category>
		<category><![CDATA[NPAPI]]></category>

		<guid isPermaLink="false">http://blog.8maki.jp/?p=523</guid>
		<description><![CDATA[今日はかなりマニアックなネタです。FirefoxやGoogle Chromeのエクステンションを開発する際に、Native Codeにアクセスする必要がある人用のエントリですｗ
※エクステンションとプラグインという言葉は明示的に分けます。前者はFirefox-AddonやChrome-extensionといった拡張機能、後者はFlash Player PluginやAcrobat Reader Plugin等のNative Codeとして実行されるPluginを指します。
エクステンションからNative Codeを扱う場合、javascriptを用いてNPAPI経由でプラグイン(C++クラス)にアクセスする方法があります。NPAPIはMozillaがメインで進めている、ブラウザがプラグインを実行する際に使うAPIです。
ただ、レファレンスを見ていただけるとわかるのですが、とても面倒くさそうｗ C++の時点でWeb系Developerには障壁が高いのに、Windowの制御やGUI表現等数多くのAPIを抑えないといけないのが非常に厄介。
そこで登場したのが、nixysa。これは純粋なC++コードからNPAPIに準拠するコード、ブラウザから利用するプラグインを生成してくれる便利なGeneratorです。これを用いればNPAPIコードの部分を無視してプラグインの開発が行えます。
説明よりもソースをお見せした方が早いです。helloworld.ccのような純粋なC++コードからプラグインを生成し、helloworld.html内のjavascriptから呼べるようになります。
helloworld.h

#include &#60;string&#62;

class HelloWorld {
public:
HelloWorld() {}
std::string GetHw();
};
#endif  // HELLOWORLD_H

helloworld.cc

#include &#60;string&#62;
#include &#34;helloworld.h&#34;

std::string HelloWorld::GetHw() {
std::string hw;
hw = &#34;Hellow World&#34;;
return hw;
}

#ifndef HELLOWORLD_H
#define HELLOWORLD_H

↑「Hello World」を返すGetHwメソッドを持つHelloWorldクラスです。
helloworld.html

&#60;html&#62;
&#60;head&#62;
&#60;script type=&#34;text/javascript&#34;&#62;

function init() {
  var plugin = document.getElementById(&#34;plugin&#34;);
  var hw = plugin.HelloWorld();
  if (!hw) {
    alert(&#34;no plugin&#34;);
  }

  [...]]]></description>
			<content:encoded><![CDATA[<p>今日はかなりマニアックなネタです。FirefoxやGoogle Chromeのエクステンションを開発する際に、Native Codeにアクセスする必要がある人用のエントリですｗ<br />
※エクステンションとプラグインという言葉は明示的に分けます。前者はFirefox-AddonやChrome-extensionといった拡張機能、後者はFlash Player PluginやAcrobat Reader Plugin等のNative Codeとして実行されるPluginを指します。</p>
<p>エクステンションからNative Codeを扱う場合、javascriptを用いて<a href="https://developer.mozilla.org/ja/Plugins" target="_blank">NPAPI</a>経由でプラグイン(C++クラス)にアクセスする方法があります。NPAPIはMozillaがメインで進めている、ブラウザがプラグインを実行する際に使うAPIです。</p>
<p>ただ、<a href="https://developer.mozilla.org/ja/Gecko_Plugin_API_Reference" target="_blank">レファレンス</a>を見ていただけるとわかるのですが、とても面倒くさそうｗ C++の時点でWeb系Developerには障壁が高いのに、Windowの制御やGUI表現等数多くのAPIを抑えないといけないのが非常に厄介。</p>
<p>そこで登場したのが、<a href="http://code.google.com/p/nixysa/wiki/NixysaIntro" target="_blank">nixysa</a>。これは純粋なC++コードからNPAPIに準拠するコード、ブラウザから利用するプラグインを生成してくれる便利なGeneratorです。これを用いればNPAPIコードの部分を無視してプラグインの開発が行えます。</p>
<p>説明よりもソースをお見せした方が早いです。helloworld.ccのような純粋なC++コードからプラグインを生成し、helloworld.html内のjavascriptから呼べるようになります。</p>
<p>helloworld.h</p>
<pre class="brush: cpp;">
#include &lt;string&gt;

class HelloWorld {
public:
HelloWorld() {}
std::string GetHw();
};
#endif  // HELLOWORLD_H
</pre>
<p>helloworld.cc</p>
<pre class="brush: cpp;">
#include &lt;string&gt;
#include &quot;helloworld.h&quot;

std::string HelloWorld::GetHw() {
std::string hw;
hw = &quot;Hellow World&quot;;
return hw;
}

#ifndef HELLOWORLD_H
#define HELLOWORLD_H
</pre>
<p>↑「Hello World」を返すGetHwメソッドを持つHelloWorldクラスです。</p>
<p>helloworld.html</p>
<pre class="brush: xml;">
&lt;html&gt;
&lt;head&gt;
&lt;script type=&quot;text/javascript&quot;&gt;

function init() {
  var plugin = document.getElementById(&quot;plugin&quot;);
  var hw = plugin.HelloWorld();
  if (!hw) {
    alert(&quot;no plugin&quot;);
  }

  alert(hw.getHw());
}
&lt;/script&gt;
&lt;/head&gt;

&lt;body onload=&quot;init()&quot;&gt;
&lt;object type=&quot;application/HelloWorld&quot; id=&quot;plugin&quot; width=&quot;0&quot; height=&quot;0&quot;&gt; &lt;/object&gt;
&lt;/body&gt;
&lt;/html&gt;
</pre>
<p>↑C++で書かれたHelloWorldクラスのgetHwメソッドの返り値をalertしています。&lt;object&gt;タグでHelloWorldプラグインの利用を明示しています。</p>
<p>本来ならNPAPIを使ったかなり長めのC++コードを書かないといけないのですが、こんな単純なC++コードだけでプラグインが開発できちゃうなんて、すばらしい！NPAPIのレファレンスをうんうん眺めなくても作れるというのが気楽。</p>
<p>なお、nixysaでプラグインを生成する際、PythonとSConsというMakeのようなコンパイラが必要です。SConsをapt-getでインストールする際、Python2.6だとエラーが出たので、Python2.5に戻すとインストールできました。実行環境はVMware Player上のUbuntu8.0.4です。sconsを指定のフォルダで実行するとlibhelloworld.soが生成され、これをブラウザのプラグインフォルダに追加するとプラグインとして使えるようになります。Windowsだとhelloworld.dllができるのかな？</p>
<pre class="brush: bash;">
sudo apt-get install scons
cd [PROJECT_HOME]/examples/helloworld
scons
</pre>
<p>プラグインを生成する際には、上記のC++コードに加え、SConsのMakefileにあたるSConstructファイルとC++クラスのIDLを用意する必要があります。そこが面倒くさいのですが、nixysaのパッケージに入っているサンプルプロジェクトの該当ファイルからパクればなんとかなりますｗ</p>
<p>今はSubversionで公開されているので、試してみたい方は下記のレポジトリから。</p>
<pre class="brush: bash;">
svn checkout http://nixysa.googlecode.com/svn/trunk/ nixysa-read-only
</pre>
<p>とは言え、まだまだ開発途上のプロジェクトなので、色々とバグがあったり、ドキュメントがほとんど無かったりしますので、ご注意を。</p>
<p>参考：<br />
» <a href="http://journal.mycom.co.jp/news/2009/04/03/039/index.html" target="_blank">Google Chrome/Firefoxプラグイン開発ツールNixysa登場</a><br />
» <a href="http://code.google.com/chrome/extensions/npapi.html" target="_blank"> NPAPI Plugins // Google Chrome Extensions: Developer Documentation</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.8maki.jp/2009/10/nixysa-npapi-gluecode-genereator.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.8maki.jp/2009/10/nixysa-npapi-gluecode-genereator.html" />
	<feedburner:origLink>http://blog.8maki.jp/2009/10/nixysa-npapi-gluecode-genereator.html</feedburner:origLink></item>
		<item>
		<title>AjaxフレームワークのYUI2.8.0がHTML5ライクなクライアントストレージに対応</title>
		<link>http://feedproxy.google.com/~r/8maki/~3/FuXLFXOwO74/yui2-8-0_html5_like_localstorage.html</link>
		<comments>http://blog.8maki.jp/2009/09/yui2-8-0_html5_like_localstorage.html#comments</comments>
		<pubDate>Thu, 24 Sep 2009 00:21:51 +0000</pubDate>
		<dc:creator>8maki</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[survey]]></category>
		<category><![CDATA[テクノロジー]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Web Storage]]></category>
		<category><![CDATA[YUI]]></category>

		<guid isPermaLink="false">http://blog.8maki.jp/?p=487</guid>
		<description><![CDATA[Ajax JavaScriptフレームワークのYUI (Yahoo! User Interface Library) が、最新版の2.8.0でHTML5ライクなクライアントストレージに対応していました。
YUI 2.8.0における注目の新機能は次のとおり。

HTML5スタイルのローカルセッションストレージを提供するクライアントストレージメタコンポーネントStorage Utility (Matt Sinder氏提供)の導入。HTML5ストレージ、Google Gears、Flash共有オブジェクトをサポート
さまざまな用途に適用できるプログレスバーコンポーネント ProgressBar (Daniel Barreiro氏提供)の導入
接続マネージャにおけるクロスドメインサポートの実現
イベントデリゲーションサポートの実現
カルーセルウィジェットにギャラリーモードを追加
チャートにおける複数軸表示のサポート

» Yahoo! UI最新版登場、クライアントストレージ &#124; エンタープライズ &#124; マイコミジャーナル
細かく見ると色々と便利な機能がついていますが、個人的にクライアントストレージが時代に沿っているというか、HTML5が注目されだしている昨今、非常にタイムリーで目を引きました。
とその前に、ざっとHTML5のおさらい（といっても理解が不十分だったのでこれを機に調べたのですがf^^;）。
HTML5 まとめ
HTML5の注目点は、新しいマークアップ（タグの整理）と新しいAPIの対応です。
■ 新しいマークアップ

 検索インデックスされやすいように構造化
より構造的な文を生成できるように&#60;nav&#62;や、&#60;section&#62;といったタグが追加されました。

マルチメディア対応
&#60;audio&#62;や&#60;movie&#62;といったマルチメディアタグにより、javascriptやFlashを使わなくても音声・動画の再生ができるようになりました。

Flashのような自由な2D表現
&#60;canvas&#62;タグで簡単にJava Appletのような豊かな2D表現ができるようになりました。


■ 新しいAPI

ドラッグ＆ドロップ
戻るボタン
O3D
ブラウザのプラグインとして提供されているO3Dをjavascriptから制御できるようになります。例えばGoogle Earthがこれを使ってブラウザ上で3D表現を可能にしていまいす。

Geolocation
1，2カ月程前に話題になりましたが、Firefox3.5でGoogle Mapを開くと現在地を表示できます。これはGeolocation APIを使っていて、javascriptから位置情報にアクセスできるからこそできる機能です。モバイルのブラウザのエンジンとして標準化しだしているWebkitでも実装が進んでいて、モバイル分野でかなり使われそうなAPIです。

Web Storage
javascriptでクライアントにデータを保存することができるAPIです。このときデータベースのようにSQLを用いてデータを保存することもできるようです。こちらにサンプルコードが記載されています。

Web Workers
バックグラウンドでjavascriptを動かせるようになります。いわばjavascriptスレッドです。繊細なUI処理に影響させることなく、重い処理を裏で行うことができるようになります。

Web Sockets
サーバサイドプロセスと双方向に通信することを可能にするAPIです。


HTML5のより詳しい記述はこちらへ↓
»  グーグルが賭けるHTML 5の未来 － ＠IT
» HTML 5 ― HTML 4 からの変更点 W3C 草案 (Working Draft)
YUI2.8.0 Storage Utility
さて、今回のYUI2.8.0のStorage Utilityですが、HTML5のWeb Storage (FireFox 3, Safari 4, IE [...]]]></description>
			<content:encoded><![CDATA[<p>Ajax JavaScriptフレームワークの<a href="http://developer.yahoo.com/yui/" target="_blank">YUI (Yahoo! User Interface Library) </a>が、最新版の2.8.0でHTML5ライクなクライアントストレージに対応していました。</p>
<blockquote><p>YUI 2.8.0における注目の新機能は次のとおり。</p>
<ul>
<li>HTML5スタイルのローカルセッションストレージを提供するクライアントストレージメタコンポーネントStorage Utility (Matt Sinder氏提供)の導入。HTML5ストレージ、Google Gears、Flash共有オブジェクトをサポート</li>
<li>さまざまな用途に適用できるプログレスバーコンポーネント ProgressBar (Daniel Barreiro氏提供)の導入</li>
<li>接続マネージャにおけるクロスドメインサポートの実現</li>
<li>イベントデリゲーションサポートの実現</li>
<li>カルーセルウィジェットにギャラリーモードを追加</li>
<li>チャートにおける複数軸表示のサポート</li>
</ul>
<p>» <a href="http://journal.mycom.co.jp/news/2009/09/18/037/index.html" target="_blank">Yahoo! UI最新版登場、クライアントストレージ | エンタープライズ | マイコミジャーナル</a></p></blockquote>
<p>細かく見ると色々と便利な機能がついていますが、個人的にクライアントストレージが時代に沿っているというか、HTML5が注目されだしている昨今、非常にタイムリーで目を引きました。</p>
<p>とその前に、ざっとHTML5のおさらい（といっても理解が不十分だったのでこれを機に調べたのですがf^^;）。</p>
<h4>HTML5 まとめ</h4>
<p>HTML5の注目点は、新しいマークアップ（タグの整理）と新しいAPIの対応です。</p>
<p style="margin-bottom:0;">■ 新しいマークアップ</p>
<ul>
<li> 検索インデックスされやすいように構造化
<p style="margin-left: 15px; margin-bottom: 2px;">より構造的な文を生成できるように&lt;nav&gt;や、&lt;section&gt;といったタグが追加されました。</p>
</li>
<li>マルチメディア対応
<p style="margin-left: 15px; margin-bottom: 2px;">&lt;audio&gt;や&lt;movie&gt;といったマルチメディアタグにより、javascriptやFlashを使わなくても音声・動画の再生ができるようになりました。</p>
</li>
<li>Flashのような自由な2D表現
<p style="margin-left: 15px; margin-bottom: 2px;">&lt;canvas&gt;タグで簡単にJava Appletのような豊かな2D表現ができるようになりました。</p>
</li>
</ul>
<p style="margin-bottom:0;">■ 新しいAPI</p>
<ul>
<li>ドラッグ＆ドロップ</li>
<li>戻るボタン</li>
<li>O3D
<p style="margin-left: 15px; margin-bottom: 2px;">ブラウザのプラグインとして提供されているO3Dをjavascriptから制御できるようになります。例えばGoogle Earthがこれを使ってブラウザ上で3D表現を可能にしていまいす。</p>
</li>
<li>Geolocation
<p style="margin-left: 15px; margin-bottom: 2px;">1，2カ月程前に話題になりましたが、Firefox3.5でGoogle Mapを開くと現在地を表示できます。これはGeolocation APIを使っていて、javascriptから位置情報にアクセスできるからこそできる機能です。モバイルのブラウザのエンジンとして標準化しだしているWebkitでも実装が進んでいて、モバイル分野でかなり使われそうなAPIです。</p>
</li>
<li>Web Storage
<p style="margin-left: 15px; margin-bottom: 2px;">javascriptでクライアントにデータを保存することができるAPIです。このときデータベースのようにSQLを用いてデータを保存することもできるようです。<a href="http://journal.mycom.co.jp/articles/2009/06/15/gdd1/001.html" target="_blank">こちら</a>にサンプルコードが記載されています。</p>
</li>
<li>Web Workers
<p style="margin-left: 15px; margin-bottom: 2px;">バックグラウンドでjavascriptを動かせるようになります。いわばjavascriptスレッドです。繊細なUI処理に影響させることなく、重い処理を裏で行うことができるようになります。</p>
</li>
<li>Web Sockets
<p style="margin-left: 15px; margin-bottom: 2px;">サーバサイドプロセスと双方向に通信することを可能にするAPIです。</p>
</li>
</ul>
<p>HTML5のより詳しい記述はこちらへ↓<br />
» <a href="http://www.atmarkit.co.jp/news/200905/28/html5.html" target="_blank"> グーグルが賭けるHTML 5の未来 － ＠IT</a><br />
» <a href="http://standards.mitsue.co.jp/resources/w3c/TR/html5-diff/" target="_blank">HTML 5 ― HTML 4 からの変更点 W3C 草案 (Working Draft)</a></p>
<h4>YUI2.8.0 Storage Utility</h4>
<p>さて、今回のYUI2.8.0の<a href="http://developer.yahoo.com/yui/storage/">Storage Utility</a>ですが、HTML5のWeb Storage (FireFox 3, Safari 4, IE 8以上必要) に対応しているだけでなく、HTML5未対応のブラウザのためにGoogle GearsやSWFファイル(Flash Player 9.0.115以上必要)を使って本機能を実装しています。もちろんセッションでの保存にも対応しています。</p>
<p>YUIのサンプルで動いているのを確認しました。ウィンドウを閉じても文章が保存されていて感動。<br />
» <a href="http://developer.yahoo.com/yui/examples/storage/storage-simple_clean.html" target="_blank"> Simple Storage Example — Saving In-Progress Text Entry</a></p>
<p>コードもstorageEngineオブジェクトを用意してゲッター/セッターで入れるだけというシンプルさ。色々な場面で使う機会が出てきそうです。</p>
<pre class="brush: jscript;">
var storageEngine = YAHOO.util.StorageManager.get(
  YAHOO.util.StorageEngineGears.ENGINE_NAME,
  YAHOO.util.StorageManager.LOCATION_LOCAL,
  {
    order: [
      YAHOO.util.StorageEngineGears,
      YAHOO.util.StorageEngineSWF,
      YAHOO.util.StorageEngineHTML5
    ],
  force: false
}
);
～中略～
storageEngine.getItem(&quot;simple-storage-textentry&quot;);
storageEngine.setItem(&quot;simple-storage-textentry&quot;, YAHOO.util.Dom.get(&quot;textentry&quot;).value);
</pre>
<p>なお、容量としてHTML5は5～10MB、Google GearsはSQLiteを使用していて最大2GB、SWFは100KBまで利用できるようです。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.8maki.jp/2009/09/yui2-8-0_html5_like_localstorage.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.8maki.jp/2009/09/yui2-8-0_html5_like_localstorage.html" />
	<feedburner:origLink>http://blog.8maki.jp/2009/09/yui2-8-0_html5_like_localstorage.html</feedburner:origLink></item>
		<item>
		<title>日本人色のするベンチャー関連企業@世界</title>
		<link>http://feedproxy.google.com/~r/8maki/~3/LdskqEXxiMU/japanese_international_startups_and_venturecapitals.html</link>
		<comments>http://blog.8maki.jp/2009/06/japanese_international_startups_and_venturecapitals.html#comments</comments>
		<pubDate>Sat, 20 Jun 2009 02:16:04 +0000</pubDate>
		<dc:creator>8maki</dc:creator>
				<category><![CDATA[survey]]></category>
		<category><![CDATA[企業]]></category>
		<category><![CDATA[ITベンチャー]]></category>
		<category><![CDATA[VC]]></category>
		<category><![CDATA[ベンチャー]]></category>
		<category><![CDATA[ベンチャーキャピタル]]></category>
		<category><![CDATA[国際的]]></category>

		<guid isPermaLink="false">http://blog.8maki.jp/?p=460</guid>
		<description><![CDATA[前回、”あなたがウォッチすべき世界的テクノロジーベンチャー50”というエントリで、日本企業が入ってない！ことを嘆いていましたが、探せば色々出てくるものです。
知ってる限りまとめてみます。もし情報があればコメント欄で教えてください！
■ベンチャー

Creative Commons
Joi ItoさんがCEOに入っています。Itoさんの本業はVCで、数少ない世界レベルの日本人だと思います。


株式会社ガーラ
ヘラクレスに上場しながらも海外売上比率が８０％（2009.03)と、うまく海外に進出できている数少ない日本製ITベンチャーです。オンラインゲームがメイン事業です。

■ベンチャーキャピタル

DCM(Doll Capital Management)
David茶尾さんが創業されたVCで、数千億レベルのファンドを運用していて、まさに世界的VCです。他にも伊佐山さんや本田さんという日本人の方もいらっしゃって、最近では日本支社も本格的に操業を開始したようです。
（最近のDealでは、レコメンドエンジンのサイジニアに数億規模で投資しています。）


Global Catalyst Parners
三菱商事でアメリカ新規事業を経験された大澤さんが創立されたファンドです。JTPA等、シリコンバレーの日本人コミュニティを運営されていることからも、現地に行ったらまずお世話になる方かもしれません。


Globespan Capital Partners
ベースはアメリカのボストン・パロアルト（シリコンバレー）に置きながら、東京オフィスも構える世界的VCです。日本人では、栢森さん、前田さん、金河さんが主にアジアを中心に投資を行っているみたいです。


Worldview Technology Partners
アメリカにベースを置く、テクノロジーベンチャーへの投資に特化したVCです。国際投資チームに、田中さんと渡邉さんがいらっしゃいます。


Infinitiy Venture Partners
こちらは日本をベースにしながら、中国を始めとしたアジアを中心に投資を開始されるようです。グロービスで多くのファンド運営に携われた小林さんが創立し、モバイルの事業会社を成功させた小野さん、Adobeで投資戦略を練られていた田中さんというチーム体制です。


TEL Venture Capital

]]></description>
			<content:encoded><![CDATA[<p>前回、”<a href="http://blog.8maki.jp/2009/06/50_tech_startups_you_should_know.html">あなたがウォッチすべき世界的テクノロジーベンチャー50</a>”というエントリで、日本企業が入ってない！ことを嘆いていましたが、探せば色々出てくるものです。</p>
<p>知ってる限りまとめてみます。もし情報があればコメント欄で教えてください！</p>
<p>■<strong>ベンチャー</strong></p>
<ul>
<li><a href="http://creativecommons.org/" target="_blank">Creative Commons</a><br />
<a href="http://joi.ito.com/jp/" target="_blank">Joi Ito</a>さんがCEOに入っています。Itoさんの本業はVCで、数少ない世界レベルの日本人だと思います。</li>
</ul>
<ul>
<li><a href="http://www.gala.jp/" target="_blank">株式会社ガーラ</a><br />
ヘラクレスに上場しながらも海外売上比率が８０％（2009.03)と、うまく海外に進出できている数少ない日本製ITベンチャーです。オンラインゲームがメイン事業です。</li>
</ul>
<p>■<strong>ベンチャーキャピタル</strong></p>
<ul>
<li><a href="http://www.dcm.com/jp/index.php" target="_blank">DCM(Doll Capital Management)</a><br />
<a href="http://www.dcm.com/jp/index.php" target="_blank"></a>David茶尾さんが創業されたVCで、数千億レベルのファンドを運用していて、まさに世界的VCです。他にも伊佐山さんや本田さんという日本人の方もいらっしゃって、最近では日本支社も本格的に操業を開始したようです。<br />
（最近のDealでは、レコメンドエンジンの<a href="http://www.scigineer.co.jp/" target="_blank">サイジニア</a>に数億規模で投資しています。）</li>
</ul>
<ul>
<li><a href="http://www.gc-partners.com/" target="_blank">Global Catalyst Parners</a><br />
三菱商事でアメリカ新規事業を経験された大澤さんが創立されたファンドです。JTPA等、シリコンバレーの日本人コミュニティを運営されていることからも、現地に行ったらまずお世話になる方かもしれません。</li>
</ul>
<ul>
<li><a href="http://japan.globespancapital.com/index.cfm/OurTeam" target="_blank">Globespan Capital Partners</a><br />
ベースはアメリカのボストン・パロアルト（シリコンバレー）に置きながら、東京オフィスも構える世界的VCです。日本人では、栢森さん、前田さん、金河さんが主にアジアを中心に投資を行っているみたいです。</li>
</ul>
<ul>
<li><a href="http://www.worldview.com/index.html" target="_blank">Worldview Technology Partners</a><br />
アメリカにベースを置く、テクノロジーベンチャーへの投資に特化したVCです。国際投資チームに、田中さんと渡邉さんがいらっしゃいます。</li>
</ul>
<ul>
<li><a href="http://www.infinityventures.com/" target="_blank">Infinitiy Venture Partners</a><br />
こちらは日本をベースにしながら、中国を始めとしたアジアを中心に投資を開始されるようです。グロービスで多くのファンド運営に携われた小林さんが創立し、モバイルの事業会社を成功させた小野さん、Adobeで投資戦略を練られていた田中さんというチーム体制です。</li>
</ul>
<ul>
<li><a href="http://www.tel.com/eng/about/telvc.htm" target="_blank">TEL Venture Capital</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.8maki.jp/2009/06/japanese_international_startups_and_venturecapitals.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.8maki.jp/2009/06/japanese_international_startups_and_venturecapitals.html" />
	<feedburner:origLink>http://blog.8maki.jp/2009/06/japanese_international_startups_and_venturecapitals.html</feedburner:origLink></item>
	</channel>
</rss>
