28102011 HTML5
HTML5 Canvasの7章がaudioを扱う章で、oggが必要なのでググッた。
MP3は適当にyoutubeから引っ張ってきた。というか、B1ガンパレ的に「つけナポリタン」で。
今度CD買っとこ。
28102011 HTML5
HTML5 Canvasの7章がaudioを扱う章で、oggが必要なのでググッた。
MP3は適当にyoutubeから引っ張ってきた。というか、B1ガンパレ的に「つけナポリタン」で。
今度CD買っとこ。
27102011 HTML5
videoタグの使い方。動画の制御をやったあと、もう少し高度な使い方としてCanvas要素をつかった動画の扱いを学ぶという章。
最後のほう(6-10)でビデオのパズルを作る。ちなみに揃えるとPyConJPのシールを映した動画が出てきます。

基本的にCanvasをうまく使う。
HTML5 Canvas: Native Interactivity and Animation for the Web26102011 work
経営に近い人達は当たり前だけど忙しいしだらだらとアポの時間を取れるわけではない。だから、自分たちは顧客とか出資者にプレゼンするつもりで臨まないといけない。同じ船に乗った同士とか昔の上司だからとか、よーく話せばわかるとか、そういうぬるい考えを持ってはいけない。
つまり、常にエレベーターピッチのようなものを用意して、現状の問題点と改善点を完結にプレゼンできるようにしておかないといけないし、30分程度の時間をもらえたらwin-winの提案をして資源を勝ち取らなければならないと思っているし、まぁ実践している(できているかどうかわからないけど)。
というわけで、最近は寝る前にこの本を読んでいるんだけど、言い回しが堅苦しいのでよく寝られる。
内容はいいと思うんだが、咀嚼できてないので3回くらいは読まないと分からない感じ。
26102011 Scala
Console.scalaを読んでいたらANSI color codesをvalで定義してあった
scala> import Console._ import Console._ scala> println(YELLOW + "yellow" + RESET + " and "+ RED + "red" + RESET)
こんなので、色が付くので便利かも

26102011 Scala
Scalaのソースを読んでいます。
Function.scalaのchainメソッドっていうのが面白い。
def chain[a](fs: Seq[a => a]): a => a = { x => (x /: fs) ((x, f) => f(x)) }
/:っていうのはfoldleftのシンタックスシュガーなので、よくあるパターンと対比ささせてみる
scala> (0 /: Seq(1,2,3,4,5))(_ + _) res9: Int = 15
左からパタパタと倒していく。
つまりSeq[a => a]という関数のシーケンスを次々に適用していくわけですね。
故にチェイン
25102011 SQL
SQLはデータベース操作用の言語でとっつきにくいなぁと敬遠してたわけですが。
ORM便利だわと考えていた時期もあったのだけど、実際、多対多の設定もめんどくさいし集合関数とかジョイントかさせようとすると余計ややこしくなるので、やっぱSQLもきちんと覚えておかないといけないかなぁと。
本書は、集合を操作する言語としてのSQL言語を楽しみながら読める構成になっている。。3論理値の話も面白かったし、having句とかexists述語の使い方も勉強になった。これは良書でしたね。
SQLを集合思考言語と考えれば、宣言的な表現になっているのも素直だし、関数型言語脳で処理したほうが素直だなぁと思える。Play ScalaはORMじゃなくてSQLだしねぇ。
もし関数型言語とか集合論に馴染みが薄ければ、この二冊を読んでおくとよいかもしれません。
積んである本に「SQLパズル」があるんだが、読むのが楽しみになった。
25102011 work
著者はノーリツ鋼機の経営戦略室にいたらしい。ノーリツ鋼機といえばお家騒動的なアレとか産業が急速に減衰した業界ですね。
こういう背景を踏まえた上で読んでいくと、特に三章以降は恨みっぽい感情も行間に見え隠れしつつも、株主資本主義に疑問を呈している感もあるかなぁと。ネクスト・ソサエティで似たようなことをドラッカーも書いてたな。
一章、二章のどう働くかは参考になった。
今回からHTML5&CSS3実践入門を読んでいきます。初回は三島で開催です。プログラムプログラムしてない本なので、スマホのヒトも、webデザイナーのヒトも楽しく勉強できると思いますよ。
HTML5&CSS3実践入門 最新Web標準を使いこなす (The Pragmatic Programmers)尚、当日は三島バルという飲み歩きイベントも行われているので、飲み歩きついでにちょっとHTML5でも勉強しておくかっていう参加のしかたもありだと思いますが。
ちなみに私は子供の面倒をみないといけない(第5土曜日は保育所が休みらしい)ので、読書会には参加できません ;-)
夕方からのこのこ出かけていってバルからの参加になるわけですが、@bg7860と久しぶりにウダウダと飲み歩く予定なので、会ったらよろしく。
公式サイトみると#三島バルっていうタグつけてつぶやけって書いてあるけど、タグ打ちめんどくさいし、酒のんで楽しんでいる状況でそんな面倒なことは多分しない(吉原バルで経験済み)位置情報オンにしといて、緯度経度情報でtweetフィルタリングするのが現実的なやり方じゃないのかなぁと思うが。
どうやろかね?
クライアントによっては自動で前回入れたタグが自動的に挿入される機能があったりすんのかな?そういうあたりもちょっと興味あるね。
こういったあたりも。
23102011 HTML5
videoタグじゃなくてcanvas経由で動画を表示する。

videoElement = document.createElement('video') videoDiv = document.createElement('div') document.body.appendChild(videoDiv) videoDiv.appendChild(videoElement) videoDiv.setAttribute("style","display:none;") videoType = supportedVideoFormat(videoElement) console.log(videoType) videoElement.setAttribute("src","/videos/sample." + videoType) videoElement.addEventListener("canplaythrough", videoLoaded, false) theCanvas = document.getElementById("canvasOne") context = theCanvas.getContext("2d") videoElement.play() setInterval(drawScreen, 33)
なんでvideoElementにイベントリスナー設定しているのに、最後の方でplayメソッドを呼び出しているのかわからん。6-5のサンプルに倣うんだったらvideoLoadedで呼び出すべきなんじゃないのかね?
HTML5 Canvas: Native Interactivity and Animation for the Web22102011 HTML5
HTML5 Canvasも6章になってvideoを扱う。この本の欠点はサンプルコードがないことかなぁ。
コードはなくてもいいけど本書でつかった画像とか、動画とかはダウンロードできるようにしてもらいたかった。しょうがないので、必要な画像とか動画は都度用意しているが、やはり手間だ。
そして、初めてvideoタグを使う時がやってきたので、動画のコンバーターをインストールしたり、サンプルの動画を用意したりしている。
現状のブラウザの対応状況の関係で、動画関連はメインの規格が3つくらいあって、面倒だとは聞いていたけど、用意するのは本当に面倒だった。WebMなんて特に面倒くさい。ogg(theora+vorbis)はffmpeg2theoraがあるので楽だった。MP4(H.264+AAC)は特許に縛られてるからどうだろうねぇ、現状iPhoneとandroidで動くので必要だろうけど。
入門HTML5のvideoの章が、「サルでもわかるHTML5ビデオ」みたいなスクリーンショット多めのチャプターでソフトウェアの使用方法にページを割いててなんだこれ?と思っていたんだけど、実際に動画を変換してみて、
あーこの章は必要だわ
と思ったのであった。
各ブラウザのサポート対応表を改めて見直していたら、別にWebMに対応しなくてもいい気もしてきた。
ところで著者のMark Pilgrimは今月の頭にinfosuicideしちゃったみたいなんだよね。