サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
体力トレーニング
keiono.hatenadiary.org
今年もGoogle Summer of Codeの時期がやってきた。もう受付が始まっているが、応募したいと思っている人にアプリケーションを書く上で一般的な注意点を。 ゴールを明確に 最初にどんな機能を実装したいのか、明確/簡潔に書く。難しい英語の表現など使わなくていいので、ワンパラグラフくらいで、最初に明確なゴールを定義する。 具体的に どんな機能をどのように作るか。ここで具体性を欠くと、応募しているそのプロジェクトに対する理解度を疑われる。ソースコードをチェックアウトしてビルドし、全体像を眺めるくらいはやっておいて欲しい所。 ダメな例: Add a cool visualization engine to this JavaScript library. いい例: To solve rendering performance issue in current engine, add We
Vizbiでのトークは、主に二つに分けられる。一つは一般的な可視化の話題を扱うキーノート。もう一つはデータの種類ごとの可視化を扱うデータ別のセクション。まず、キーノートの中からUBCのTamara Munzne教授のトークをレポート。なお、プレゼンテーションで使われたスライドはここからダウンロード可能(PDF)。 彼女のトークの題は、そのものズバリ「可視化の原則(Visualization Principles)」可視化そのものを研究していない者にも非常に分かりやすい内容だった。ここでは彼女のトークの中から興味深かった点をまとめてみる。以下では一部生物学の例を使ってあるが、基本的に一般的な可視化の話題として読めるようにしてある。 データ可視化とは何か まず最初にデータ可視化とはどういう事なのかを定義する所から始まった。 「データ可視化システムとは、視覚的にデータを表現する事により、人間が何
ホスティングに関しては色々とうちのプロジェクトでも試行錯誤していて、多分Java系の開発では、以下のような組み合わせが可能なフリーホスティングがあれば凄く便利なのにね、という話をしている。 ソースコード管理: Subversion まあ色々と異論もあるでしょうが枯れているという事で。 ビルドツール: Maven 周辺環境も整っているので、今からやるならAntよりもこっちかな。 継続的インテグレーション: Hudson 後発だけあって色々と便利だし、元々の開発者は日本人の方なので、日本語を使う人にもうれしい。 静的コード解析ツール: Sonar 解析結果がグラフィカルでとても見やすい。他のツールとの相性も割といい。 成果物のデプロイ: Nexus Mavenを使っている場合は必須。アーティファクトをGUIで管理出来る。 プロジェクト管理: Trac or Redmine まだどちらの方がいい
当たり前ではあるけど、相変わらず計算機分野の技術の流行り廃りは激しい。とてもじゃないが一人の人間、もしくは小さなチームが全部の流行を追う事は不可能。そこで自分の関わる分野に役立ちそうなものをピックアップしてみた。 まず、今ユーザー(生物学者と医師)から出ている課題: 生物学は、各コンポーネント(遺伝子など)を見る時代から、それらの関係性を見る時代に確実にシフトしている。しかし、関係性を見ると言ったところで、フラットなPPI等を眺めるだけで得られる知見には自ずと限界がある。可視化から更なる理解を深めるためには、機能モジュールやネットワークモチーフ等に基づいた階層構造の表現が必要。そして、それはインタラクティブ、且つ簡単なオペレーションでなくてはならない。(計算機リテラシーの高い人ばかりが研究者ではない。) モジュール/サブネットワークを表現するファイルフォーマットの検証。XMLを使えば容易、
スラッシュドットを読んでいたら、SNT氏による興味深い発言を発見: とある大学の先生と話したとき、教育に何故Processingを使うのかを教えてくれました。 ・Printfで文字列が出たって面白くない ・面白さが勉強する動機になる ・絵を動かしたいなら、ループ処理が必要になり、 ・複数のオブジェクトを動かすには配列処理が必要になる ・そして、ゲームを作るには状態遷移や構造化が必要になり、 ・オブジェクトの種類が増えればオブジェクト指向が必要になる ・そして、Processingの機能に不満を持つようになるが、 この頃にはJAVAやC++などの言語にいつでも移れるだけの実力が身に付く なるほどな、と思った。確かに今時"Hello World"って文字がターミナルに表示されて喜ぶ若い人は居ないだろうし、(明示的な)コンパイル無しでサクサク作れるし。 例えば、今Cytoscapeで保持されてる
Uploaded with plasq's Skitch! Uploaded with plasq's Skitch! Uploaded with plasq's Skitch! Uploaded with plasq's Skitch! Uploaded with plasq's Skitch! Uploaded with plasq's Skitch! Uploaded with plasq's Skitch! Uploaded with plasq's Skitch! Uploaded with plasq's Skitch! Uploaded with plasq's Skitch! Uploaded with plasq's Skitch! Uploaded with plasq's Skitch! 色々と実験中。 作っていて気がついたけど、ネットワークのノードを表示する場合は、
全体の設定とEclipseヘのインポート まずテンプレ作成のスクリプトを実行。更に短く、かつ最新のバンドルを利用するように修正しました。 #!/bin/sh # Create Project "hello" pax-create-project -g org.cytoscape -a hello cd hello # Add SpringSource Enterprise Bundle Repositories pax-add-repository -i com.springsource.repository.bundles.release -u http://repository.springsource.com/maven/bundles/release pax-add-repository -i com.springsource.repository.bundles.external
Cytoscapeは、Version 3からOSGiベースのアプリケーションになります。ユーザー側から見て大きな変化はありませんが、プラグインを書いて独自の解析を行なおうと言う場合などには、色々と新しい概念を憶えなくてはならなくなります。最初は面倒かもしれませんが、一度憶えると、きれいな実装を実現することが比較的容易になります。 自分も色々試行錯誤しながらやっていますが、なにぶん新しいテクノロジーなので、文献が充実しているとは言いがたい情况です。特に日本語の資料になると、概念の説明ばかりで、「じゃあ実際どうやるの?」と言うところで行き詰まる場合が多いと思います。そこで、少しでも将来Cytoscapeのプラグインを書いてくれる方が増えれば、と言うことで、少しずつこのあたりの技術のチュートリアル的なものを書いて行こうと思います。 前堤条件 Javaを一通り知っている Mavenが何かくらいは分
このページを最初にブックマークしてみませんか?
『Viz/Sci/Dev Log』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く