2008年3月23日日曜日

Python初心者が最初につまづくあれこれ

最近ようやくプログラミングと言うもののおもしろさが分かってきたので、Pythonを始める事にした。何故Pythonなのかよくわかんないけど、とりあえず蛇でかっこいいのと(実際はモンティ・パイソンが元ネタ)、レア言語ってかっこいいじゃん?みたいな感覚です。括弧がいらないってのもおもしろいところ。Lispの反対で天邪鬼っぽいとこがいいでしょ?

  • 導入編
FrontPage - Pythonのお勉強
http://python.rdy.jp/
インストールはここの最新のダウンロードの項からお好きなOSの物を

Python Japan User's Group
http://www.python.jp/Zope/

Instant Hacking
http://www.python.jp/Zope/intro/instant_hacking_jp
とりあえずインストール終わったら、チュートリアルこなそう。演習をちょいちょいっとね。

Python 2.4 ドキュメント - June 27, 2006
http://www.python.jp/doc/nightly/
あとはリファレンス見てお好きなように。

  • 初起動編
最新バージョンをインストールしたらPython Command Lineを立ち上げていじくってみる。

Hellow world!!


print "Hello world!!"


  • とりあえず詰んだ編
いきなりループ制御で詰んだ。for文は"for var in range(1,100)"みたいな感じなので"Hellow world"を10回表示させようとすると・・・


for num in range(1,10) :
print "Hello world!!", num;

IndentationError: expected anaindented block


IndentationErrorなるものが出て詰んだ。Indentation??インデンテイション・・・インデント!!そうです、for文内の命令ということを表すために、インデントを入れないとだめ。インデントで怒られるとかなんか新鮮です。以下のように治して実行。


for num in range(1,10) :
print "Hellow world!!", num;

実行結果:
Hello world!! 1
Hello world!! 2
Hello world!! 3
Hello world!! 4
Hello world!! 5
Hello world!! 6
Hello world!! 7
Hello world!! 8
Hello world!! 9


ちなみにインデントはタブでもスペースでもいいみたい。
とりあえず飽きなければ自分がつまづいた部分を晒していこうと思います。つづく・・・?

2008年3月20日木曜日

EclipseプラグインのBIRTのまとめ

BIRT=Business Intelligence and Reporting Tools
BIRTはEclipse上で各種データベースを元に様々なレポートを出力する事ができるプラグインです。XMLを元にレポートを出せるみたいで、WebAPIなんかを使って得た情報も様々な形で加工して表示させる事ができるみたいです。(未確認)というか、そういう事をやってみたいのでちょっとまとめてみます。
最終的にはTwitterの発言や、はてブのブックマークをまとめて様々な角度から検証するレポートを出す事が目標です。

  • とりあえずリンク集
Eclipse.org home
http://www.eclipse.org/

Eclipse BIRT Home
http://www.eclipse.org/birt/phoenix/

BIRT Tutorials
http://www.eclipse.org/birt/phoenix/tutorial/

[ThinkIT] 第1回:インストールからはじめるEclipse BIRT (1/3)
http://www.thinkit.co.jp/free/tech/28/1/



BIRT Tutorial←今ここ
http://www.eclipse.org/birt/phoenix/tutorial/basic/basic05.php

2008年3月18日火曜日

OCL:defでコレクション型属性を定義する方法

OCLで新たに属性を追加するにはdefを使って定義するが、コレクションの属性を定義する場合はコレクションの型と要素の型も指定する。

def : Collection(OCLType //コレクション内部の型) = expression //コレクションを返す式


EclipseのOCLプラグインだとこうなる

OCL ocl = OCL.newInstance(ECoreEnviromnmentFactory.INSTANCE);
OCLHelper helper = ocl.createOCLHelper();
helper.defineAttribute("collection : Collection(Integer) = OrderedSet{1,2,3}"); //OrderedSet型で要素が1,2,3が作られCollection(Integer)型のcollectionという変数が定義される
//helper#define*で定義された属性や操作はこのhelperから作られたQueryでしか有効にならないので注意


属性だけじゃなく操作も定義できるのですっごい複雑なOCLを毎回書くのが面倒な場合でかつ、モデルに直接持たせるほどでもない属性であった場合、エイリアスとして定義して使うことができる。

でも、渡されたオブジェクトがCollection型であるか調べる方法がわからなず。

// 上の続きでcollectionはInteger型が入ったコレクション
collection.oclIsTypeOf(OrderedSet(Integer)) // これはダメだった

Collectionとして見るよりは、要素の集合として見てて、要素の属性もそのまま使えるから、Collectionの型を意識する必要は無いのかな?

ところで、この辺りを触ってて、OCLHelper#defineOperation()で二つ以上パラメータを持った操作を定義しても、すべてのパラメータの値が必ず最初のパラメータになるバグに遭遇して困っている。
Bugzillaで検索しても出てこず、最新版でも直ってなかったので気付いてないのかなぁ?
どなたかBugzillaで発見したら教えてください。

2008年3月17日月曜日

著作権問題をクリアしてニコニコする方法



①同サービス内における既存の著作権侵害放送番組動画はすべて削除する
こと、②新規投稿動画の監視を行い著作権侵害放送番組動画については直ちに削除する旨
の申入書を提出しましたことをお知らせいたします。



080311.pdf (application/pdf オブジェクト) から2008年3月17日に引用

先日、ニコニコ動画を運営するニワンゴの親会社であるドワンゴが放送局に対して、テレビ放送されている番組の動画すべてについて、厳格に削除対象とする申入書が出されました。

一部権利者はネット上への違法アップロードに対して譲歩とも言える発言をしているようですが、


「好意を持っていてわざわざ宣伝してくれる。そんなファンをないがしろにして著作違反だとやっていたら、ファンなんかいなくなります」



J-CASTニュース : 「らき☆すた」売れまくったのは 違法投稿が「宣伝」してくれたから から2008年3月17日に引用

著作権に関しては以前からいろんな場所で議論が行われていると思いますが、結局は「違法動画も利益に繋がる派VS著作物は権利者のものだゴラァー派」の二方による水掛け論となってしまって平行線を辿ってることと思います。
今の法律の上では著作権者の方が利用者よりも有利であり、利用の仕方が限られているのは確かなので、これ以上著作権に関する議論を繰り返してもはっきり言って無駄な気もします。
僕としては水掛け論を繰り返すよりは、新しいビジネスモデルを考えだしてそれを権利者やコンテンツオーナーに売り込んだ方がいいと思うしね。
それか、自分自身がコンテンツオーナーになって誰かの考えたビジネスモデルを取り入れて、沢山利益を上げる前例を作っちゃう。そうすれば失敗や現在の既得権益を失う事を恐れて動こうとしない大手コンテンツオーナーを動かす事もできるかもしれない。
例えばこちらのエントリーではかなり詳細に新しいビジネスモデルを提案していて、とても期待できそうです。が、実際導入しようと思うと複雑過ぎてコストがかかり過ぎるんじゃないかなとも個人的には思います。あとはカードネタを作ったユーザーが何かしら権利を主張した場合はどうなるんでしょうか?この辺りはのま猫問題のようになかなか難しいところもあるかもしれません。



「ニコ☆スタ」とはオンラインカードゲームで、アニメの有料視聴、ニコニコ動画内のクリエイターへの寄付、そしてニコニコ動画の文化の持続を全て可能にする案です。簡単に言うと、色々な商品にアニメの有料視聴するための料金を予め上乗せしよう、という案です。



ニコニコ動画公式カードゲームでアニメ有料視聴を無料に - 論理的なアイディアはまだかい? から2008年3月17日に引用

しかし、ここまで詳細に書かれているので著者のid:ronriさんはかなり本気なんだと御見受けします。他のエントリーもすごいアイデアの宝庫だし量が半端ないっ!
僕はただのしがないニコ厨でそんなに頭もよくないのでかなり単純な方法で今すぐにでも実現でき、著作権問題をクリアし、かつニコニコ動画の楽しさを損なわずにみんなでニコニコする方法を提案してみようと思います。

コメント専用動画 : ニコニコプラン


ニコニコ動画で観る動画がただのローカル上で再生する動画より面白い理由はいくつかあると思いますが、やっぱり一番の理由はコメントが付いている事だと思います。そしてそのコメントが動画と同期しており、まったく違う時間に観た人と同時に見ているかのような擬似的感覚を味わえたり、独りで観た場合見逃してしまうような細かい点についてもコメント(突っ込み)によって気付かされる事も多々あります。(何回動画を繰り返し観ても中毒じゃないという上級ニコ厨のみなさんにはわかりきった事ですね><)

そこでコメント専用動画を作って、そこにみんなでコメントをするというのはどうでしょう?

動画の内容はもちろん著作者の権利を害さないもので、対象となる映画やアニメ、ドラマなどの動画の長さだけ合わせてあります。その動画に対してコメント及び突っ込みを入れる、もちろん弾幕も。そして本編の動画は各自がテレビ放送を録画するなり、DVDを買うなりレンタルするなりして合法的な手段を使って入手したものを再生しつつ、コメント専用動画を流す。
これなら、権利者の権利は害してないし、DVDの利益分も権利者に行くだろうし、視聴者としても新たな動画の楽しみを満喫でき、なおかつ製作者も視聴者のダイレクトな反応が見る事ができてこれからの動画製作に活かせて、一石三鳥だと思います。
問題としては、
  • 動画とコメントの同期を上手く取れ無い場合がある。
  • ニコニコ動画のように動画上にコメントを表示できない。
などが挙げられると思いますが、一つ目はコメント用動画にここからオープニング、ここからAパート、ここでアイキャッチなど著作権に触れない範囲で同期させるための動画の情報を用意する事で、手動だけどある程度容易に動画を同期できるようになると思います。
二つ目は、コメントの情報を読み取って表示するようなプレイヤーを誰かが開発するのを待つんです!(他力本願w)もちろんわざわざ動画上に表示させなくてもいい人もいるでしょうし、ニコニコがそういったクライアントソフトを提供してくれるといいのですが・・・。
理想としてはEPG(Electronic Program Guide:電子番組ガイド)から番組情報を取得して自動的に番組用コメント専用動画が用意されるようになればいいなぁ。2ちゃんねるの実況板がニコニコ動画の起源だけど、実況板で番組用スレッドを立てる感覚でコメント専用動画が用意する事ができれば理想だなぁと感じます。
実際にテレビ番組欄@2chではEPGを利用しているようですし。

テレビ番組欄@2ch - PukiWiki

正直に言えば、僕はニコニコでコメント付きのアニメを観るようになるまでは、アニメなんてほとんどみなかったのに、今ではどっぷりはまってDVD買ったりするまでになりました。これも、多彩なコメントで僕を洗脳してくれる上級ニコ厨のみなさんのおかげなのですが、逆に言うとコメントが付いてないアニメには魅力を感じてなくて、ニコニコ動画が無ければ毎週欠かさず観るようなことにはならなかっただろうと思います。それがこういった例もあるのですから(たった一例だけどw)コンテンツオーナー側も既得権益の死守にばかり力を入れるのではなく、みんながニコニコできる新しいビジネスモデルに少しでも注目していただいて、権利者、視聴者、製作者それぞれの観点から利益を得られる環境ができればいいなぁと思う。
(念のため書いておきますが、僕は違法動画のアップロードを擁護してるわけではありません。現在の法律上は違法なのですから、運営者はしかるべき態度を取るべきだと思っています。まぁ、それによって僕がコンテンツを買う機会はなくなると思いますが・・・)

深読みすると最初に書いたドワンゴの強気な姿勢は、コンテンツオーナーから歩み寄らせるためのカードなのかなぁとも思うですが実際はどうなんでしょうか?
まだまだ、ニコニコ動画からは目が離せませんね!

3月18日追記:
ちょっと検索したらまったく同じような事を先立って書いてるエントリーを見つけた。
ほとんど同じような事が書かれていてびびった。う~ん・・・、自分は意識しないうちに読んでたのかなぁ。
版権動画でニコニコする方法を考えてみる ver.2 - ブログ執筆中

2008年2月27日水曜日

人間に生まれてよかった

人間に生まれてよかったと思える瞬間ってありますか?
僕が最近人間に生まれてよかった思う瞬間は、僕みたいな非力で行動力のない生物でも社会に属していればちゃんと生きていけるというところ。
弱肉強食の世界に生まれていたとしたらすぐ死んでる気がする。
ライオンに例えたら教育の為に母ライオンから崖に突き落とされたて死んでる。
ペンギンに例えたら卵が凍って死んでる。そんな気がします。
だから、僕は立派な人間ではないけど人間に生まれてよかったっと思っています。

  • 僕が立派な人間じゃないわけ
僕がこのブログを始めたわけは、一番最初のエントリーに書いたんですけど、10日に一回の更新で本当に未来の自分が変わっているのか少し不安になってきました。
まぁ、飽き性の自分が分かっているので無理して毎日書いたりすると突然どうでもよくなって辞めてしまうので今くらいのペースがちょうどいいのかもしれません。
iKnowで英語関連の日記やはてなでピアノの練習帳なんかも書いてるので、それを入れたら結構良いペースで書いてるんじゃないかなとも思う。
だから、そのうち統合するかも?ラベルで分ければいいしね。
っと、ちょっと話がそれましたが僕がこんなにも自信が無くて、そして変わって行きたいと思っている原因は一つ。最初のエントリーでも少し触れたんだけど元引き篭もりってところ。
自分としては人間形成のすごく大事な期間を引き篭もって過ごしたために、人と係わるのを避けるあるいは人との付き合い方を知らず関係を築けなくなっていると考えている。
そして、このまま孤独に生きていけるのかとても不安で苦しい、そんな自分を変えたいと思っているのである。
そこで、自分を変える一端として自分の過去をブログで晒そうかと考えています。
正直、何故引き篭もったのかということは未だに原因が掴めていない。少なくとも自分の記憶上はいじめられて登校拒否ってわけではなくて、何故か急に学校に行きたくなくなった。だから余計に何故引き篭もったかという原因に興味があるわけです。
それが分かれば今のネガティブな自分を変えられるかもしれない、変わらないかもしれない、けど自分と見つめあうのは決して悪い事では無いと思うんですよね。
なのでこれから少しづつ当時を思い出して自分と見詰め合った結果を晒していこうと思います。
今、ふと思いついたのは当時の自分を周りはどう見ていたのか聞いてみよう。
今回はとりあえず自分の引き篭もりデータを晒しておこう。
  • 期間:引き篭もり期間中学1年2学期~卒業まで
  • 原因:不明。担任が最悪だった記憶はある(これについてはまた次回)。いじめではない。
  • 後遺症:現在は一応社会復帰して働いてはいるが休みは引き篭もりがち。人間関係を築こうとしていない。

2008年2月21日木曜日

禁煙のすすめ

そろそろ禁煙を始めて半年になるだろうか?
健康診断の一ヶ月前にふとたばこ辞めようと思いたちきっぱり辞めた。
もともとたばこの味や匂いはあまり好きではなくてほとんどニコチンの中毒感のみで吸っていたので参考になるかわからないが、これから禁煙しようという方に僕が気をつけたことをいくつか挙げておきます。
  1. 一日に吸うたばこの本数を把握する。
  2. 食事の後や寝起き、交尾の後や飲み会など決まった行為前後の一服を把握する。
  3. 喫煙のデメリット、禁煙のメリットを書き出す。(例:たばこを辞めるといくら節約できる等)
  4. 一ヵ月後を禁煙日と決め徐々に吸う本数を減らす。
  5. 決まった行為の後に吸う事が多い場合は、その決まった行為自体を減らす。
  6. 薬局で禁煙補助剤を購入。少し高いけどたばこを一ヶ月辞めれば元が取れます。
  7. 禁煙を開始したらたばこを吸ってる人には近づかない。
  8. 吸いたくなったら頭の中で15秒数える。
これぐらいかな?極一般的に言われている事と変わらないですね><
一番僕が気をつけたのは7.で禁煙して3ヶ月は飲み会も麻雀も我慢してました。
特に親しい人が目の前でたばこを吸っているとついつい一本貰いたばこしてしまいがちで、悪くすれば相手が親切心といたずら心から禁煙するのをわかっていてたばこを勧められる場合があるからです。
最近の研究によると

喫煙量が月1本以下の人の46%が、喫煙に対する欲求を抑える力が弱まっていると回答した。より顕著だったのは、喫煙したい気持ちを抑えるのが難しいと回答した人のうち、10%が最初に喫煙してから2日以内に、25%が1月以内に強い欲求を感じたということだ。


「たった1本のたばこ」で欲求を抑えられなくなることも、研究報告 国際ニュース : AFPBB News から引用


だそうで、「まぁ、一本くらいいいかっ」が命取りで、逆に言えばこの一本さえ乗り越えられれば禁煙できるという事です。
ど~しても吸いたくなったら頭の中で15秒数えましょう。
衝動的に殺人を犯す場合があるように人間の感情や欲求はふっと沸きあがった瞬間がとても強いのです。しかし、15秒我慢してしまえばその欲求もほとんど消えてしまうのでたばこ以外の事を考え始めましょう。

禁煙して半年近くになるともうたばこを衝動的に吸いたいと思うことは無くなりましたが、未だに吸いたいという欲求は消えません。だけど、たばこにはデメリットしかない事を考えるともう吸うことは無いでしょう。

・・・・・嘘、50歳になってお金に余裕が出てきたらまた吸うんだ!その時には一本いくらになってるだろう?

2008年2月1日金曜日

iKnowが好き

まずはこちら

fladdict.net blog: 英語の勉強したい人はiknowよりESL Podcast聞こうぜ
昨日いつものようにグーグルリーダーでフィードを巡回してた時にふと目に飛び込んできて、2ヶ月前からiKnow始めて毎日欠かさず勉強してきた一ユーザーとしてはムキーっ!っと釣られてしまったエントリー。

英語を学ぶためのポッドキャストを探しています。 TOEICスコア(現在680)が上昇するようなレベルで、身近な話題を扱っているものがあったら教えてください。 わがままを言.. - 人力検索はてな
以前この人力検索でESLを知って少し聞いてすぐ諦めた超英語初心者としては、日本語解説もなくスクリプトも有料なこのポッドキャストよりはiKnowの方が優れてるだろゴラーッ!っと思ったわけですよ。
そしたら夜になってブックマーク数が物凄い数に。

はてなブックマーク - fladdict.net blog: 英語の勉強したい人はiknowよりESL Podcast聞こうぜ

iKnowが出てから英語学習に興味を持った人が増えた事の現われなのか、現時点で1000を超えてます。しかもほぼコメントがESLマンセーだったので、ゴラーッ!っと思ってしまったiKnow信者の僕は実は世間(はてなユーザーを世間と言うのもおかしいか?)からずれてるのかなと不安に思ったり・・・。
でも、すでにリスニングにある程度自信を持ってる人はともかく英語学習を始めたばかりの初心者としてはiKnowは物凄く役立つツールであるといえます。
人が物を覚える時、すなわち記憶を定着させるには復習が大事なんですが、iKnowは一つ一つの単語に定着率持たせていて、ずるをしなければ最低でも3回は復習させてくれる。しかも、狙ってるのかたまたまなのかはわからないけど、短期記憶から長期記憶へ定着させるように狙った感覚で復習がやってくる気がします。(要するに最初の復習は次の日くらい次は4,5日後、次は一週間後といった感じ。ただ一日に何十回もレッスンをしてしまう人には当てはまらないかもね・・・)
そして、必ず流れる音声に合わせてシャドウイングをする事。自分の発した言葉をさらにまた耳で聞くことで記憶の定着率が上がるはずです。
なんか英語の勉強法に話題がずれちゃいましたが、何が言いたいかって言うと"英語を勉強したい人はiKnowもPodcastも利用できるものは利用して英語にどっぷり漬かろうぜ!”って事です。
でも、今冷静になってエントリーをよく見ると別にiKnowを批判してるわけじゃなくてESLいいよって内容ですね・・・><

で、このむちゃくちゃなブックマーク数を見かねてか続きを書いてらっしゃいます。

fladdict.net blog: 英語の勉強したい人はESL Podcast聞こうぜ その2 - より引用

はてぶのコメント欄とか見てると、こんなんだけじゃ英語の勉強にならないみたいな意見がみられる。だけど私見では、社会人になってからは単語帳とか ディクテーションとか、ガッツリした英語学習できる人なんて10人に1人もいないと思う。そういうやり方は中高生でないと中々時間が取れない。

その上、人間なんて年とりゃとるほど楽な方向に流れるわけで、正直少ない時間は単語帳めくるより、友達や女の子と遊んだり、自分の趣味に使いたいっ て人が大半だと思う。だから、まともな英語学習なんてよっぽど鋼の精神があるか、外資で会社のサポートでもなきゃ無理だと思う。

むしろ人間の行動なんてものは、結局は環境によって規定されると思うので、英語ってのを日常に埋め込んでしまえば、なんだかんだであっさり覚えられるんじゃないかと。


前半はちょっと同意できないかなぁ。iKnowはそこまでガッツリした時間なんて必要ないし、webブラウザがあればどこでもできちゃうお手軽なアプリですよ。それに、社会人だからといって時間が取れないって人は英語学習しようっていう気持ちが足りないんだと思う。本気で学習したいって人は睡眠時間削ったり、空いた時間をちゃんと使って勉強するもんだよね。要は時間の使い方でしょう。
ただ、最後の文はすごく同意。とにかく英語を身に付けたい人は身近なものからぜーんぶ英語を取りいえれていくべきだと思います。
iKnowがどこまで効果的なのかは3月にTOEICを受ける予定なのでその時にわかる事でしょう。
ちなみに僕は2ヶ月前に英語を始めたときには中学英語すらわかんないといったレベルです。