








初のEvernote本が出たというので買ってみました.結論から言うと,すでにEvernoteを使っている人には必要ない本だと思います.Evernoteそのものの使い方の本なので,今までEvernoteを知らなかった人や,インストールしたけど良く分からなくてそのまま放置してあるという人向けです.そういう方に手にとって頂いて,裾野が広がれば良いなと思います.
もう一つ, EvernoteハンドブックというのがPDFで販売されているようです.

できるポケット+ Evernote
著者/訳者:コグレ マサト いしたに まさき できるシリーズ編集部
出版社:インプレスジャパン( 2010-03-05 )
定価:¥ 1,260
Amazon価格:¥ 1,260
単行本(ソフトカバー) ( 160 ページ )
ISBN-10 : 4844328271
ISBN-13 : 9784844328278
Tags:
Book,
EverNote
関連する投稿
2010/03/07 | Posted in Book, EverNote | No Comments









次はRubyRDFです.特徴は以下の通りです.
- Store: Memory, Sesami
- Query: 独自の構文
特定のフォーマットの入出力には対応しておらず,メモリ上(またはSesami)でグラフを作り,それに対して独自のクエリを投げられるだけのようです.また,残念ながら開発が止まっており,かつRuby1.8.xでしか動きません.Ruby1.9.1では駄目でした.メリットが何もないので少し試しただけで止めました.
使い方
gemから入れます.
$ gem install rubyrdf
とりあえず試すには以下のコード(ほぼサンプルのまま)を入れれば良いです.
#!/usr/bin/ruby
require 'rubygems'
require 'rubyrdf'
RDF::Namespace.register(:dc, "http://purl.org/dc/elements/1.1/")
g = RDF::Graph::Memory.new
g.add(RDF::UriNode.new("http://paul.stadig.name/"), DC::author,
g.new_blank_node("test"))
q = RDF::Query.new
q.select(:x, :y).where(:x, DC::author, :y)
result = g.execute(q)
result.bindings.each do |b|
puts "x = #{b[:x]}"
puts "y = #{b[:y]}"
end
Tags:
Programming,
RDF,
Ruby,
SemanticWeb,
Sesami
関連する投稿
2010/02/23 | Posted in Programming, Ruby, SemanticWeb, Web | No Comments









自分用メモとして,言語毎にRDFを扱えるライブラリのまとめをしていきたいと思っています.とりあえずまずはRubyから.RubyはRDFライブラリの対応具合がばらばらで,これといったものがありませんでした.一番人気がある方法がJRuby経由でJenaを使うことです.私はCライブラリであるRedlandのRubyバインディングをたまに使っていました.しかしここ最近,Pure Rubyなライブラリが出てきているので,調査しています.
まず今回はRdfContextです.Reddyがベースとなっています.主な機能は以下の通り.
- Parser: RDF/XML, RDFa, N3
- Store: List(Array), Memory, SQLite3
- Serialization: RDF/XML, N-Triples
まだRDFの入出力しか対応しておらず,SPARQLなどの機能はTodoとなっています.また,非ASCII文字は全部unicode escapeされます.Ruby1.9.1で動かなかったので,とりあえず動くようにするPatchを送ったのですが,作者のGreggが今色々と対応中で,近い内にversion0.5を出したいとのことなので,しばらく待とうと思います.
使い方
インストールはgemでできます.Ruby 1.8.7なら動くはずです.Ruby1.9以上で使う場合は上記のPatchをインストール後に当てればとりあえず使えます.
$ gem install rdf_context
RDFファイルを読み込んでN-Triplesで出力するコードは以下のようになります.p.parseの2つ目の引数で基点となるURIを与える必要があります.与えなかった場合は適当なbnodeになるようです.
#!/usr/bin/ruby
require 'rubygems'
require 'rdf_context'
require 'open-uri'
include RdfContext
p = Parser.new
str = open("http://fumi.me/foaf.rdf").read
g = p.parse(str, "http://fumi.me/foaf.rdf", :type => :rdfxml)
#puts g.to_rdfxml
puts g.to_ntriples
また,GraphにTripleを追加いきたいときは,ストレージ先を指定したGraphを先に作れば良いです.引数storeについては,今のところListは動くのですが,まだSQLite3で動かせていません.引数identifierは,NamedGraph用のようです.下記のコードで,二つのRDF/XMLの内容をまとめた一つのRDF/XMLを出力することができます.
include RdfContext
## 動かない
#g = Graph.new(:store => SQLite3Store.new(:path => "store.db"),
:identifier => URIRef.new("http://fumi.me"))
g = Graph.new(:store => :list_store,
:identifier => URIRef.new("http://fumi.me"))
g.parse(open("http://fumi.me/foaf.rdf").read,
"http://fumi.me/foaf.rdf", :type => :rdfxml)
g.parse(open("http://semantictweet.com/fumi1").read,
"http://semantictweet.com/fumi1", :type => :rdfxml)
puts g.to_rdfxml
全体的にまだまだこれからという印象です.
Tags:
Library,
RDF,
RDFa,
Ruby,
SemanticWeb
関連する投稿
2010/02/23 | Posted in Programming, Ruby, SemanticWeb, Web | No Comments









サッカー関係の本は好きなので結構読むのですが,この本は面白いです.FCバルセロナは去年12月にFIFAクラブワールドカップ2009に優勝し,現在のリーガエスパニョーラでも首位と,現在最も勢いのある世界有数のビッククラブです.しかし,2002年頃には大幅な赤字(7300万ユーロ)で経営難に直面していました.それをどうやって2003年に黒字に戻し,2008年には収益を2002年と比べて3倍以上にしたのかが述べられています.
当時からトップの収益を誇るマンチェスターユナイテッドから学べるところを全部学んだ上で,独自の理念・戦略を考え,それをどうやってチーム全体に根付かせたかというのを,マネージメント,リーダーシップ,マーケティング,育成,交渉など様々な側面から触れています.この経営改革によって,現在FCバルセロナは一つのグローバル企業のような存在になっています.スペインの一サッカークラブが日本語のサイトを持っているというのは凄いですよね.アラビア語のサイトもあります.また,日本人もソシオ(サポーター)になることができますし,会長選挙の投票権など運営に関わる権利もスペイン人と同様に与えられます.投票は現地にいかないといけないですが.
マネージメントやサッカー,スポーツビジネスに興味がある人には是非読んで見ると良いのではないでしょうか.特にサカつくとか好きな人にはお薦めです.
また,”史上最強バルセロナ 世界最高の育成メソッド”も一緒にお薦めです.こちらはバルセロナのカンテラ(下部組織)でどうやって若手を育成してきたのかということが書かれています.現在のトップチームの半分がカンテラ出身というのは,偶然ではないというのがわかります.

ゴールは偶然の産物ではない~FCバルセロナ流世界最強マネジメント~
著者/訳者:フェラン・ソリアーノ
出版社:アチーブメントシュッパン( 2009-12-01 )
定価:¥ 1,680
Amazon価格:¥ 1,680
単行本 ( 272 ページ )
ISBN-10 : 4902222809
ISBN-13 : 9784902222807
Tags:
Book,
Management,
Soccer
関連する投稿
2010/02/13 | Posted in Book, Sports | 2 Comments









私はずっとFirefoxをメインで使っていましたが,その大きな理由の一つがTomblooでした.以前ブログにも書きましたが,複数のウェブサービスを使っている人には大変役に立つアドオンです.Firefoxがメモリ2GBくらい占有して固まったりとかするのが日常茶飯事になってしまっていて,他ブラウザに移行したいなと思いつつも移行できなかったのはこれがあったからでした.
実はGoogle Chrome Extensionsには,TomblooのChrome版であるTaberarelooというExtensionがあります.しかし,Mac版のChromeではExtensionに正式には対応していなかったので使えませんでした.Windows版では既に試用しており,これが対応すれば移行できるのになと思っていました.
そんな中,やっと昨日の更新でMac版のChromeも正式にExtensionが動くようになったと聞きました.試したところ,Taberarelooもきちんと動くことが確認できました.というわけでしばらくの間Chromeをメインブラウザに指定して使ってみることにします.
Tags:
Browser,
Chrome,
Extension,
Taberareloo,
Tombloo
関連する投稿
2010/02/13 | Posted in Browser, Google | No Comments









さくらインターネットからSharkSpaceに移行するのに一番の問題がMySQLでした.MySQLは4.0と4.1とで文字の扱いが大きく変わっています.また,MySQLの文字の問題は環境によって様々なケースがあり,これをすれば良いという解決方法がありません.きちんと現状を把握して,それぞれの環境に合わせて解決するしかありません.詳しくは日本MySQLユーザ会のWikiを参照してください.ここではMySQL-4.0, 3.X を現在運用しているひとは原則今のままキープ,と言われてしまっています.
色々試行錯誤の結果,私の場合は,”さくらのレンタルサーバで MySQL 4.0 から 5.1 へ移行した記録“が参考になりました.以下に手順を書きます.
まず,私の場合,MySQL4.0の設定はujisでしたが,データ自体はutf8にしていました.そのため,データをそのまま取得する必要があります.そこで,敢えて5.xのmysqldump を使い,–default-character-set=utf8を指定することでうまくいきました.mysqldump-4.0はutf8に対応していないため,5.xのを使う必要があります.実行時に一つ文句を言ってきましたが,問題はないようです.
$ mysqldump --user=user --password=pass --host=db --default-character-set=utf8 dbname > dump
次にdumpファイルの中に記述されている以下の行をsedなどで全部除きます.
SET @saved_cs_client = @@character_set_client;
SET character_set_client = @saved_cs_client;
その後,dumpファイルの最初に以下の行を加えました.これでdumpをリストアするときの環境をutf8にしてくれます.
SET names utf8;
ここまで準備できたら,SharkSpaceのcPanelでデータベースの設定をします.cPanelは日本語化されているのでやり方はすぐわかると思います.Panel内にデータベースの項目がありますので,そこでデータベースとデータベース用ユーザを作成し,ユーザに権限を与えれば良いです.データベースはusername_hogeというデータベース名であればいくらでも作れます.
また,phpMyAdminで作成したデータベースを選択し,操作 -> 照合順序のところで utf8_general_ci を選択しておきました.
最後にsshでアクセスして,mysqlコマンドでリストアすればOKでした.
$ mysql --user=user --password=pass --host=host dbname < dump
Tags:
Hosting,
MySQL,
SharkSpace,
WordPress
関連する投稿
2010/01/31 | Posted in MySQL, WordPress | No Comments









当サイトをSharkSpaceというホスティングサービスに移転完了しました.
さくらインターネットのスタンダードを今まで使っていましたが,色々問題がありました.まず,重かったです.特に管理画面が重く,いつまで待っても編集できないということが良くあったため,更新するのが億劫になっていました.また,自分がさくらを使い始めたときにはMySQL4.0.xしかなかったのですが,WordPress2.9からMySQL4.0をサポートしなくなったので,アップグレードできずにいました.現在さくらでもMySQL5.0.xが使えるのですが,どちらにしろ移行作業をしないといけないので,移転先を探していました.私が望んでいた要件は以下の通りです.
- ssh
- WordPressの速度
- MySQL5
- 容量 (Disk・転送)
- 価格
1. のsshがなかなか厳しい条件です.何故か未だにsshを提供しない,または条件付きのホスティングサービスが多いのです.sshでアクセスするのは基本だと思うのですが,この条件でかなり選択肢が減ります.国内で且つ低価格でsshを提供するのはさくらかxrea系列くらいです.また,4. Disk容量については,さくらスタンダードの3GBでは足りなかったのと,月の転送量が10GBを越えてきたので,それを余裕を持って上回るものを探す必要がありました.
この条件で探すと国内では割高なので,海外のホスティングサービスを中心に探していました.その中で,安定した評判を得ていたのはBlueHost系列 (BlueHost, HostMonster, FastDomain)でした.値段も6-7USD/monthからと,そこそこです.sshを使うには,アカウント作成後にPhoto ID (パスポートなど)を登録する必要があるというのが面倒ですが,それ以外は良さそうでした.
試しにHostMonsterとかを使ってみようかと思っていたところで,SharkSpaceという,聞いたことのないホスティングサービスを推薦しているサイトを見つけました(海外サーバーコレがイチばん!).読んでみるとなかなか良さそうなことが書いてあるので,海外のホスティングサービスフォーラムとかも見てみたところ,確かに地味に評判が良さそうでした.個人的にはsshがPhoto IDなしでいけそうだというところと,値段が安いことに惹かれて,使ってみることにしました.
値段は,真ん中のHammerheadコースの2年契約だと7.95USD/月(190.80USD/2年)なんですが,50%offクーポン(クーポンコード: 50offlife)があるので,3.975USD/月(95.4USD/2年)になります.今1USD=90JPYなので,大体360円/月です.これは安い.これでDisk容量が20GB,データ転送が500GBあります.PHPもモジュールで動きます.さくらのようにCGIモードではありません.
契約してわかったことですが,残念ながらsshを使うにはやはりPhoto IDが必要でした.仕方がないのでiPhoneでIDを写真に撮って,手続きしました.5分程ほどでsshアクセスできるようにしてくれたので,応対は良いですね.
今のところ,不満点はPhoto IDだけで,それ以外はかなり快適に使っています.まだcronで動かしているスクリプトがあるのでしばらくさくらも使いますが,少しずつ移していこうと思っています.
以下は参考サイトです.実際のMySQLの移転作業については別途まとめます.

Tags:
Hosting,
SharkSpace,
WordPress
関連する投稿
2010/01/31 | Posted in WordPress | No Comments









“新しい扉 PlaceEngine ActionScript API公開“という記事で,ActionScript用のAPIソースが公開されていたので,それをベースにPlaceEngineをActionScriptから使ってみました.とりあえず,PlaceEngineのローカルDBを用いて緯度経度を取得することはできるようです.
まず,PlaceEngineをサイトからダウンロードしてインストールします.起動後に,環境設定→ローカルDB→アップデートをします.WifiをOnにした状態で”現在地を取得”を押すと,登録されている位置が取得できるはずです.取得できない場合はPlaceEngine.com Mapから追加してください.
ActionScriptからローカルDBを使うには以下のようにします.
- PlaceEngine連携サイト用アプリケーションキー取得ページで以下の情報を入力してアプリケーションキーを生成
- 認証コード: 表示されているcaptureを入力
- URL: app:/アプリケーション名.swf (helloというアプリならapp:/hello.swf)
- サービス名: アプリケーション名
- PlaceEngineAPI.asをプロジェクトの適切な場所に置く.デフォルトパッケージ名はPlaceEngineAPIになっているので適宜変える.
- PlaceEngineAPIに以下を追加
public function getLocationFromLocal():void{
printMsg("WiFi情報取得中...");
//タイムスタンプとして現在時刻を取得
timeStamp = new Date();
//URL文字列を作成
var URL:String = "http://localhost:5448/locdb?t=";
URL += timeStamp.milliseconds + "&appk=";
URL += appk;
trace("URL: " + URL);
var request:URLRequest = new URLRequest(URL);
var loader:URLLoader = new URLLoader();
//イベントハンドラをセット
setListeners(loader, "Server");
//実際にリクエストを発行
sendRequest(loader, request);
}
- プログラム側からはgetLocationの代わりにgetLocationFromLocalを使う
以上の手順で動くことは確認しました.苦労したのは,正しいアプリケーションキーの取得方法がなかなかわからなかったことです.
getLocation がうまく動かないためWebAPIから直接取得できないのですが,原因はcrossdomain.xmlにあるようです.どうやらcrossdomain.xmlの内容が古いらしく,以下のエラーを吐きます.サーバ側で対応してもらえるように,後で連絡する予定です.
Warning: Domain www.placeengine.com does not specify a meta-policy. Applying default meta-policy ‘master-only’. This configuration is deprecated. See http://www.adobe.com/go/strict_policy_files to fix this problem.
Error: Ignoring policy file at http://www.placeengine.com/api/crossdomain.xml due to meta-policy ‘master-only’.
Tags:
ActionScript,
Flex,
PlaceEngine,
Programming
関連する投稿
2010/01/11 | Posted in Flex, Programming | No Comments