さとやn Blog

試合はRuby,勝負はC#!

帝王星 新堂冬樹

「黒い太陽」「女王欄」の続編であり3部作の完結編(らしい)。
「カリスマ」や「無間地獄」の頃のワクワク感を感じられないのは、新堂冬樹の作風に慣れすぎてしまったせいかも知れません。でも、やっぱりこのシリーズは面白いです。
まさか、また溝鼠が出てくるとは思いませんでしたが、立花がそっち方面のやつと仕方なく会話を合わせてるシーンはちょっと面白かった、、。
しかし、これで完結なのか? やっぱり先が読みたくなる、、、。

タイトル帝王星
著者/監督/Artist新堂冬樹
価格, 出版¥ 1,890 祥伝社
評価★★★★
2011-09-06

【内容紹介】

「帝王星は、ふたついらない」 ベストセラー人気エンターテインメントの最新刊! 『黒い太陽』『女王蘭』――荘厳なる夜の叙事詩、ここに完結! 不死鳥の男と風俗王だった男、天才と呼ばれる女と伝説の女。 絶対のキング、そしてクイーンは誰か? 最終戦争はいずこへ向かう!? キャバクラ界の若き覇者立花に壊滅的打撃を与えられて五年。堕ちた“風俗王”藤堂が復活した。天才キャストゆりなをはじめ精鋭を引き連れて聖地・歌舞伎町に帰還したのだ。だが、栄華を極める立花は、ゆりなの唯一の弱点を探り出し、引き抜きに成功。対する藤堂は、かつてのカリスマキャスト冬海を復帰させ、立花の店に送りこんだ。藤堂と立花、二人の進退は冬海とゆりなの売り上げ競争に賭けられることとなった。絶対のキング、そしてクイーンは誰か? 奇策を放ち、知略を尽くす、漆黒の闇を火花が飛び交う決戦が始まった! ゆりなの神がかる魅惑、冬海の桁違いの技巧……。たった一つの帝王星をめぐる闘いの行方は!? 連続テレビドラマ化されたベストセラー『黒い太陽』、新たなヒロインを迎えた『女王蘭』に続く、エンターテインメント界の鬼才・新堂冬樹が、風俗産業の闇に挑んだ大河サスペンス完結編!

【内容(「BOOK」データベースより)】

キャバクラ界の若き覇者立花に壊滅的打撃を与えられて五年。堕ちた“風俗王”藤堂が復活した。天才キャストゆりなをはじめ精鋭を引き連れて聖地・歌舞伎町に帰還したのだ。だが、栄華を極める立花は、ゆりなの唯一の弱点を探り出し、引き抜きに成功。対する藤堂は、かつてのカリスマキャスト冬海を復帰させ、立花の店に送りこんだ。藤堂と立花、二人の進退は冬海とゆりなの売り上げ競争に賭けられることとなった。絶対のキング、そしてクイーンは誰か?奇策を放ち、知略を尽くす、漆黒の闇を火花が飛び交う決戦が始まった!ゆりなの神がかる魅惑、冬海の桁違いの技巧…。たった一つの帝王星をめぐる闘いの行方は!?連続テレビドラマ化されたベストセラー『黒い太陽』、新たなヒロインを迎えた『女王蘭』に続く、エンターテインメント界の鬼才・新堂冬樹が、風俗産業の闇に挑んだ大河サスペンス完結編。


C#でSpec NSpec on Mono Mac

ちょっと前に.NETのSpecテストフレームワークでSpecFlowというものを試したのですが、なんかちょっと違うなーと感じてはいました。要はRSpecと同じようにSpecで単体テストがしたかっただけなのですが SpecFlowはどちらかというと受け入れテスト向けのもののようですね。確かにソースコードとは別になんかシナリオみたいの書くって、なんかメンドーだなーと、、、。
で、やっぱりRubyにはRSpecがあるように、C#、つまり.NETにはNSpecなるものありました。
私が探していたのはこっちこっち、って感じで早速やってみました。
サイトの方ではNuget(VisualStudioのパッケージ管理ツールみたいなやつ)向けのドキュメントですが、中身はDLLとEXEファイルなのでMonoでもできるはず、という事で今回もMonoです。
やっぱりSpecテストはこんな感じが良いですよね。

20


C# でIPhone Xcode4.1でできるようになった

InterfaceBuilderとXcodeが統合されてしまったせいでさっぱりやり方がわからなくなってしまったMonoTouchですが、Xcode4に対応したバージョンがAlpha版で出たらしいので、早速やってみました。
確かに以前より使いやすくなってはいますね。

iPhoneでワンセグを見ることに

OSをLionにアップデートしたおかげで地デジが見れなくなってしまった私は、しばらくはiPhoneでワンセグを見ることにしました。

で、買ってきたのが、バッファローの「ちょいテレi」というやつです。
私の部屋は6階なので電波の入りも良く結構快適に見れています。
少なくとも2007年ころに購入したソフトバンクのガラケー(913かな?)よりは綺麗に見れています。
こんな感じ。

xcode4.1でMonoTouchはまだ無理のよう

現時点ではまだサポートされてないようですね。

http://ios.xamarin.com/Roadmap

Short Term

Some of the technology that was developed for Xamarin’s XTouch and Xdroid products will be folded into MonoTouch and Mono for Android, and we will deliver these changes initially on our beta channel, and we will graduate those to the stable channel over time.

For MonoTouch, this will include the following improvements:

  • New MonoDevelop Release:
    • Adds integration XCode 4’s Interface Designer
    • Adds new iPhone property list editors
    • Unified MonoDevelop, Mono and MonoTouch updater

全く見た目が変わっててさっぱり使い方がわからなかった、、、。
InterfaceBuilderってどこいっちゃたの? って感じです。

地デジ移行2日前に地デジが見れなくなった

金曜日に手元のiMacのOSをLionにアップデートしたら、地デジチューナーM2TVが見れなくなりました。
ドライバが対応してないとか何とか、、、。
とりあえずガラケーのワンセグがあるから見ようと思えば見れるんですけど、、、。

にしても、中国の列車衝突事故で衝突車両を粉々にして穴掘って埋めるって、、、にわかには信じ難い。
本当に意味がわからなくて「えっ?、えっ?」と思ったのは私だけではないと思う。

天地明察 by 冲方 丁

メガロス柏のコンディショニング・サロン「スカッツ」の整体師の方に借りた本。
内容は下に書いてある通りで、一見そんなに面白そうな話ではないのですが、これが、読み始めると止まりません。久しぶり、まあ、文芸書自体が1,2ヶ月ぶりではあるのですが、とにかく面白かった。
これだから読書はやめられない。
数学や暦について造詣の深い人は作家の知識不足や認識違いが気になってしまいあまり楽しめないようです。

あ、それからなでしこジャパンの決勝戦、酔っ払って眠りが浅かったせいか、4時半に起きしていまい、まあ、ちょっと見てみるか、どうせ勝ってはないだろうけど、的なノリで丁度後半戦開始から見てしまったのですが、あれは本当に良いものを見ました。スポーツをTVであんなに夢中で見たことはかつてないかもしれない。本当にたまたま起きて良かったです。
 

タイトル天地明察
著者/監督/Artist冲方 丁
価格, 出版¥ 1,890 角川書店(角川グループパブリッシング)
評価★★★★★
2011-07-19

【内容紹介】

江戸、四代将軍家綱の御代。ある「プロジェクト」が立ちあがった。即ち、日本独自の太陰暦を作り上げること--日本文化を変えた大いなる計画を、個の成長物語としてみずみずしくも重厚に描く傑作時代小説!!

【内容(「BOOK」データベースより)】

江戸時代、前代未聞のベンチャー事業に生涯を賭けた男がいた。ミッションは「日本独自の暦」を作ること―。碁打ちにして数学者・渋川春海の二十年にわたる奮闘・挫折・喜び、そして恋!早くも読書界沸騰!俊英にして鬼才がおくる新潮流歴史ロマン。


LinuxでASP.NET MVC3(ビューエンジンはRazor)を動かす

ようやく仕事でもRails3になったので、しばらくはプライベートではC#で色々やりたい。
というわけで、ASP.NET MVC3で噂のビューエンジンRazorを使用して作ったWebアプリをLinuxのmono
で動かしてみました。

さすがにMonoDevelop(マック版)はMVC3やRazorにはまだ対応してないので、開発はVisualStudio2010で作成して、それをLinux(Cent5.5)のMonoにデプロイすることに。

開発:Windows7, VS2010, MVC3, Razor
ホスト: Linux(Cent5.5), Apache

とりあえず動作確認のため、デフォルトのMVCプロジェクトをコンパイルしてLinuxにコピー。
でmonoでASP.NETを動かすには、
http://www.mono-project.com/ASP.NET
ここに書いてあることによると、
mod_mono
xsp
が必要とのこと。
それぞれソースを落としてコンパイル&インストール。
インストールが完了すると、mod_mono.conf というApacheの設定ファイルが出来ているので基本的にそれはそのままでOK。
私の場合は /etc/httpd/ 直下にできていたので、conf.d下に移動。

続いてサイトの説明を読んでいくと、何やらAutoHostingなるものがあるらしい。
http://www.mono-project.com/AutoHosting
これによるとAutoHostingなら後々ASP.NETプロジェクトをホストする場合でもいちいちApacheの設定ファイルを弄る必要がなくて便利ですよー、とのこと。指示通りに設定ファイルをいじっていたら、途中でMVCプロジェクトの場合はルーティングにファイル拡張子が使用されないから云々とかで、AutoHostingは推奨しません、だって。かなりガッカリ。
で、仕方ないので、従来通りの方法でASP.NETのプロジェクト単位でApacheの設定ファイルを作ることに。

http://go-mono.com/config-mod-mono/
このサイトでは必要な項目を入力すればそれを元に設定ファイルを作成してくれるようなので、サーバー名とかプロジェクトのディレクトリパスとか必要な項目を入力して作ってもらう。
mod-mono-serverのパスが/usr/binになってたり若干自分の環境と異なっているので、そこは自分で修正。更にmod-mono-server2となっていたのをmod-mono-server4に変更。
そいつをコピーして、Apacheのconf.d下に my_mvc_project.conf みたいな名前のファイルを作ってそこに保存。

Apache再起動してブラウザで表示してみると、なんかエラー。
リモートマシンなのでエラーの内容がわからないため、Web.config の <customErrors mode="Off" />にして再度トライ。
なんかDLLが見つからないよーみたいなことを言われるので、VS2010に戻って必要なDLLを参照追加して、更にそいつのプロパティでローカルコピーをTrueにして再デプロイ。
するとまた別のDLLがないよーと言われるので、その都度同様の作業を繰り返す。
結局Windowsから持っていかなきゃならないDLLは
  • System.Web.Mvc.dll 
  • System.Web.Razor.dll 
  • System.Web.WebPages.dll 
  • System.Web.WebPages.Deployment.dll 
  • System.Web.WebPages.Razor.dll
  • System.Data.Entity
  • System.Web.Helpers.dll
 Entityとか使ってないんだけどなー、、、。

でもとりあえずページは表示されました。

C#でRedisしてみる

MemcachedをRubyから試す予定だったけど、半分気まぐれRedisをC#から試してみることにしました。 仕事ではどっちもRailsでやる予定なんで、家で触るならC#でってことで。

とりあえずRedisをインストール。

wget http://redis.googlecode.com/files/redis-2.2.11.tar.gz
tar xzvf redis-2.2.11.tar.gz
cd redis-2.2.11
make
sudo make install

因みにhttp://redis.googlecode.com/
このサイトではブラウザ上でインタラクティブにRedisのコマンドを叩けるTutorialがあって大変面白かったです。

Redisサーバーを起動してみる。
redis-server
クライントを起動していくつか適当なコマンドを叩いて動作確認。
redis-cli #クライアント起動

#rootというキー名で satoyan 文字列をセット
redis 127.0.0.1:6379> set root satoyan
OK

#取り出す
redis 127.0.0.1:6379> get root
"satoyan"

#queen:membersリストの最後尾に Fready を追加
redis 127.0.0.1:6379> rpush queen:members Fready
(integer) 1

#同様にBrian も追加
redis 127.0.0.1:6379> rpush queen:members Brian
(integer) 2

#リストの中身を表示 0から-1というのはつまり先頭から最後尾までという意
redis 127.0.0.1:6379> lrange queen:members 0 -1
1) "Fready"
2) "Brian"

次にC#からRedisを扱うライブラリをダウンロードする。なんか幾つかあるようですが、今回はServiceStack.Redisというもので試してみる。

https://github.com/ServiceStack/ServiceStack.Redis
ここからDLL一式をダンロード。

MonoDevelopを起動して適当なプロジェクトを作成してDLL参照を追加。
こんな感じ。

Ruby1.9.2 Rails2.3 でMySQLのencodingトラブル

Ruby1.9.2からは文字列がエンコード情報を持つようになったようなのですが、Railsでよく使用されるMySQLドライバーが未対応のためか、ActiveRecordで取得したデータの文字列はすべてASCII8として扱われてしまうようです。

こいつのせいでViewの方でエラーが多発してしまい、さて困った、、、。 調べてみると gem mysql2 がこのエンコード問題にも対応しているらしい。

早速インストールしてみる。

https://github.com/brianmario/mysql2

上記サイトのActiveRecordの項目を読んでみると、Rails3.1未満の場合はバージョン0.2系を使え、とのことなので、environment.rb に

config.gem "mysql2", :version => "0.2.11"
として、
rake gems:install
database.ymlの方も
development:
  adapter: mysql2
  database: hoge
  encoding: utf8
とすると無事にマルチバイト文字も扱えるようになりました。 にしてもRuby1.8系のソースを1.9に合わせるためには、大量のファイルの先頭にエンコードを示すマジックコメントを追記しなけれならない。他に方法ないのかな。
プロフィール

さとやn

C#が好きだけど仕事はRubyばかりな開発者。
最近はDockerとか関数型言語とかAngularJSにハマっている。
武蔵小杉とか田町とか柏とかに出没。

QRコード
QRコード
  • ライブドアブログ