Johannes Brahms, Claudio Abbado(cond,), Vienna Philharmonic Orchestra(orch.) – 21 Ungarische Tanze (Hungarian Dances) (111 Years of Deutsche Grammophon CD1)


★★★★☆
20世紀のピアニストたち、と並行して聞いていこうと思うボックスセット Amazon.co.jp: 111 Years of Deutsche Grammophon: 音楽。今日は1枚目の、ハンガリー舞曲集。マイナー調全開で、泣きの舞曲。何となく演歌に通じるところもある。とても美しい。しかし、美しいんだが感動できない。どことなく淡泊じゃない?と思った。ジャケットはすごくいい!


ローソク図試作品

仕事が多すぎて日曜日までずれ込んだ。まだ動かしていないけど、今日はここまで。

/// <reference path="scripts/typings/easeljs/easeljs.d.ts" />
module SHChart {
export class CandleStick implements GraphElement {
//ローソク本体
private body: createjs.Shape;
//上ヒゲ
private uShadow: createjs.Shape;
//下ヒゲ
private lShadow: createjs.Shape;
//陽線か?
private isYang: boolean;
constructor(public date: Date, public open: number, public high: number, public low: number, public close: number) {
this.isYang = open < close;
}
public getMax(): number {
return this.high;
}
public getMin(): number {
return this.low;
}
public paint(stage: createjs.Stage, min: number, max: number, x: number, width: number, xmin: number, xmax: number, ymin: number, ymax: number): void  {
//座標決定
//ToDo:0.8でいいのか?
var bodyWidth = width * 0.8;
var bodyXmin = x - width / 2;
var bodyXmax = x + width / 2;
var bodyYmin = ymin + (ymax - ymin) * ((max - (this.isYang ? this.close : this.open)) / (max - min));
var bodyYmax = ymin + (ymax - ymin) * ((max - (this.isYang ? this.open : this.close)) / (max - min));
var uShadowYmin = ymin + (ymax - ymin) * ((max - this.high) / (max - min));
var lShadowYmax = ymin + (ymax - ymin) * ((max - this.low) / (max - min));
//本体描画
var g: createjs.Graphics = new createjs.Graphics();
//ToDo:色の変更
g.beginStroke("#000000");
if (!this.isYang) g.beginFill("#000000");
g.drawEllipse(bodyXmin, bodyYmin, bodyXmax - bodyXmin, bodyYmax - bodyYmin);
this.body = new createjs.Shape(g);
stage.addChild(this.body);
//ヒゲの描画
if (uShadowYmin < bodyYmin) {
g = new createjs.Graphics();
//ToDo:色の変更
g.beginStroke("#000000")
.moveTo(x, bodyYmin)
.lineTo(x, uShadowYmin)
.closePath();
this.uShadow = new createjs.Shape(g);
stage.addChild(this.uShadow);
}
if (lShadowYmax > bodyYmax) {
g = new createjs.Graphics();
//ToDo:色の変更
g.beginStroke("#000000")
.moveTo(x, bodyYmax)
.lineTo(x, lShadowYmax)
.closePath();
this.lShadow = new createjs.Shape(g);
stage.addChild(this.lShadow);
}
}
public drop(stage: createjs.Stage) {
if(this.body) stage.removeChild(this.body);
if(this.uShadow) stage.removeChild(this.uShadow);
if(this.lShadow) stage.removeChild(this.lShadow);
}
}
}

クラス図としては
Chart(canvas1枚に対応) ← ChartHandler(UI担当)

1
n

Graph(グラフ1本に対応)-固定要素、xy軸情報、マウスカーソルに対応する情報など

1
n

GraphElement(グラフの値1日分に対応) 派生:CandleStick, Bar, Line
という感じか?まだまだ、完成しそうにない。来週中には、UIは度外視してグラフくらいは描けるようになるかもしれない。
時間がかかっても自作にこだわる理由。他人が作ったグラフや指標、シグナルを使うのってなんか悔しいじゃない。自分に都合がいいように改良できなくてもどかしいし、他人と同じことをやってるんじゃだめでしょ?


Slayer – Reign in Blood(1986)


★★★★★─=≡Σ((( つ•̀ω•́)つ
もはや語る必要もないほどの名盤。8年ほど前にこのアルバムを聞いた時は、本当にびっくりした。あまりの速さと破壊力にのけぞり、世界は広いと思った。久々に聞いてみたら、彼らにはこの時何かが取りついていたんじゃないかと思った。演奏レベルは2nd以前とは比べ物にならないほど上がっている。Angel of Death, Necrophobic, Jesus Saves, Postmortem, Raining Bloodあたりは本当にどうかしてる。陳腐だが「悪魔が降臨した」という表現が最も適切だ。


75 Jahre Donaueschinger Musiktage 1921-1996 (CD1) Paul Hindemith, Igor Stravinsky, Ernst Krenek, Kurt Weill, Hans Haass


★★★★★_(┐「ε:)_ズコー
電子音楽に幻滅してきたことと、現代音楽成分が足りないことから、このボックスをセレクトした。
Donaueschinger Musiktag(ドナウエッシンゲン音楽祭)は、ドイツの小さな町ドナウエッシンゲンで開催される、初演作品のみの現代音楽祭。アクの強い曲を期待して聞いたら、やっぱりびっくりするような曲がある。
1枚目のトラックリストは次の通り。

1.
Quartet for Strings [no 3] in C major, Op. 16 by Paul Hindemith
Orchestra/Ensemble: Buchberger String Quartet
Period: 20th Century
Written: 1920; Germany
2.
Sonata for Piano in F sharp minor by Igor Stravinsky
Performer: Maria Bergmann (Piano)
Period: 20th Century
Written: 1903-1904; Russia
3.
Lustige Marsche (3), Op. 34 by Ernst Krenek
Conductor: Erich Schmid
Orchestra/Ensemble: Southwest German Radio Symphony Orchestra
Period: 20th Century
4.
Der Lindberghflug by Kurt Weill
Performer: Betty Mergler (Spoken Vocals)
Conductor: Hermann Scherchen
Orchestra/Ensemble: Berlin Radio Symphony Orchestra, Berlin Radio Chorus
Period: 20th Century
Written: 1929; Berlin, Germany
5.
Capriccio, Fugue and Intermezzo for player piano by Hans Haass

注目すべきは1と5。1曲目、ヒンデミットの弦楽四重奏は演奏が超高レベルで、意味不明すれすれの、まだ調性がわずかだけ残っているドキドキカルテット。この崩壊と調和のエッジを歩くような曲は大好きです。弦楽四重奏って宇宙だよな。Youtubeにありました
5曲目は、自動ピアノのための曲。当時は1929年、パソコンのなかった時代の自動ピアノは、演奏データをパンチ穴で記録していたと思われる。パンチ穴だけでこんな複雑な曲を演奏させようなんて。。一体どんな苦労をしてパンチ穴の大群を空けたというのか。想像すると込み上げるものがある。っていうか馬鹿じゃねーの!!!!その馬鹿をあえてやってのけた Hans Haassさんすごい!Youtubeにありました。あまり有名な人ではないので、他の音源が全然残ってない。残念。現代なら、PCの力を借りてもっと高音質な音源が作れそうな気がする。が、楽譜が残っているとは思えないし、この曲の耳コピは無理か。


CDレビュー: Yes – Yes(1969)


★★★★★
プログレバンド、イエスの1stアルバム。イエスのアルバムは今まで5枚目のClose To The Edgeしか聞いたことがない。しかしこのファーストアルバム、方向性が見えにくいとはいえ、しょっぱなからレベルの高い作品を完成させている。何がすごいってドラムスです。ドラムなのに歌っている。右に左に揺れ動くドラムス。ジャズでもなかなかないです。ただの16分連打が迫ってくる様子を想像できますか?ヴォーカルも非常に抒情的で澄んだ声ですよね。2曲目I see you、5曲目Halord Land、ラストSurvival、この3つが◎。ちなみにセールスは鳴かず飛ばずだったそうな。

プログレッシブロックの他のCDレビューはこちらです。rokujo.hatenadiary.com


Visual Studio 2013 + TypeScript .jsファイル作成

Visual Studio 2013でTypeScriptを使用して、ファイル分割して作成したアプリケーションを1ファイルにまとめるには、プロジェクトをwebアプリケーションとして作成した上で、
プロジェクト
→「”プロジェクト名”のプロパティ」を選択
→「TypeScript ビルド」セクションの「出力」の「JavaScript 出力をファイルに結合する」を選択し、出力したいファイル名(??????.js)を入力
→コンパイルすれば、プロジェクトファイルと同じフォルダに、jsファイルが作成されます。あとはこのファイルをお好きなhtmlファイルから呼び出してやればOK!
簡単な設定なのに、意外とここにたどり着くまで時間がかかった。。


The Rough Guide to Flamenco (1997)


★★★★☆
フラメンコといっても、カスタネット鳴らしてオーレ!って叫んでるだけではない。スペインは昔ウマイヤ朝が存在していたこともあり、ヨーロッパでも異色のイスラム色が非常に強い音楽が特徴だ。っていうかここはどこの中東だ!?って曲ばっかりだった。手を叩いてリズムを取る曲はベドウィンの音楽と同じだし、男のアアーーーアーアーーーアーーーって叫びはまんまコーランだ。しかしヨーロッパのスパイスも効いており、ギターはカッコ良い。こんな曲ばっかり流れてれば情熱的になるよラテン系。おすすめはテンポも展開も気持ちよすぎる2曲目Mi tiempo、観客と歌い手の熱気だけがすべての4曲目Buleria de la mocita、とてつもない歌い手の声の伸びが聴ける8曲目Y yo que culpa tengo。後半ちょっとだれてくるので星は-1とした。


Enrico Pieranunzi & Paul Motian – Flux And Change (1992)


★★★★★
ピアノとドラム2人だけのライブ・アルバム。ベースがいないので真ん中に吹き抜けができたような不思議な空間が広がる。面白い。大きく3つのセッションに分かれており、1つ目は不気味で捉えどころのない即興が中心。たまに Someday My Prince Will Come のようなスタンダードナンバーを混ぜる。2つ目がもっとも聞きやすく、心地よい。ピエラヌンツィさん作曲のSweet Little Swan が最高だ。二人ともめちゃんこ上手。


TypeScript 1.4 with VS2013

easeljs.d.ts を導入して、やったぜタイプセーフwebプログラミング始まる!と思っていたら、導入直後にコンパイルエラーが同時多発で48か所も発生した。

export class AlphaMapFilter extends Filter {
constructor(alphaMap: HTMLImageElement | HTMLCanvasElement);
// properties
alphaMap: HTMLImageElement | HTMLCanvasElement;
// methods
clone(): AlphaMapFilter;
}

こういう | で結ばれたのがコンパイルエラーになる。で、このパイプで結ばれたプロパティはなんじゃらほい、見慣れた記号だしどっちの型でもいいってことじゃないかな、と思ってしばらく調べると、TypeScript1.4でサポートされたUnion typesという機能らしい。やはり、どっちの型でもよいという意味だった。VS2013はインストール時TypeScript1.0までしかサポートされていない。しかしつい最近、2015/01/17にアップデート用モジュールがリリースされていた!
TypeScript 1.4 for Visual Studio 2013 extension
インストールしたらコンパイルエラーが絶滅した。やった!
1.0からの大きな変更点は
・protectedのサポート
・tuple typesのサポート:var tuple: [number, string, boolean] = [1, “str”, true]; //こういう配列の型定義
・union typesのサポート:前述
・type aliasのサポート:declare type PropertyKey = string | number | Symbol; //PropertyKeyは3つのいずれかの型をとる
このくらいか。日々バージョンアップが繰り返されており、今後も目が離せない。


TypeScript Handbook

Handbook – Welcome to TypeScript
を読んだ!!言語仕様は大まかに把握できたので、もう少しで実装に入れる。クラスベースでwebアプリケーションが作成できるなんて、夢のようだ。特に、プロジェクトが大きくなればなるほど、恩恵を受けられることだろう。d.tsファイルを揃えれば、有名どころのjsライブラリでも型セーフなプログラミングが可能、というところもすごい。
実装には北米Yahoo!Financeのチャートがとても参考になりそうだ。ほぼ、このグラフと同じ機能でいいのではないか。見た目が