2017年6月
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30  
無料ブログはココログ

« 2009年10月 | トップページ | 2009年12月 »

2009年11月30日 (月)

iVレコーダー VDR-R1000って買いかしら?

AV Watchのスタパ齋藤さん連載で、「日立マクセル -iVレコーダ「VDR-R1000」」についての記事を見て、欲しくなった。
iVってのは、日立のハイビジョンTV Woooなどで使用されるハイビジョン録画に使用されるリムーバブルHDDメディア。
VDR-R1000は、TVではなく録画用のデッキみたいなもん。ビデオデッキなんかよりはるかに小さくて、見た目 無線LANくらいかちょっと大きめな外付けHDDくらいか。
値段も320GバイトHDD付きのVDR-R1000.PLUSが定価が日立マクセルの販売サイトだと45,801円。
Amazonだと(価格.comの最安値よりさらに安く)39,040円となっています。Amazonが一番安いような。

maxell ハードディスクIVDR用 レコーダー IVDR(320GB)同梱 VDR-R1000.PLUS CE maxell ハードディスクIVDR用 レコーダー IVDR(320GB)同梱 VDR-R1000.PLUS

販売元:日立マクセル
発売日:2009/08/05
Amazon.co.jpで詳細を確認する

でも、Amazonの評価を見てみると、動作がのろいとか録画が安定しないとか、あまりいいことが書かれていない。まあ、本体が日立マクセル販売サイトで32,802円(Amazonだと28,120円)という安いものだから、そんなに期待してはアカンがな。
この価格でこの大きさ、商品コンセプトは間違っていない。ちゃんとした物を買うまでのつなぎ商品位に見ていたらいいかも。

オイラはもうチョイ待ってみます・・・。操作が鈍いのは嫌いなので。

2009年11月29日 (日)

今日買ってきてもらった本

また、休出。
早めに帰ろうとしたら、問題がにょっこり出てきて、それが終わったら次のがきて、結局0時近くに帰ってこられましたとさ!

(1)電撃大王 2010年1月号
御坂美琴根付けストラップ付き。
新連載「のりタマ」と「ソ・ラ・ノ・ヲ・ト」の2本。
「ef -a fairy tale of the two.」「車輪の国、向日葵の少女」「ノイジィ・ガール」は休載。特に「ノイジィ・ガール」は特別読み切りという形になるという・・・。

「でじぱら」は、イヤースピーカードライバーユニットSTAX SRM-007tAを購入!希望小売価格(税込)で154,350円ですって奥さん。(価格.comで最安値は124,760円ですって奥さん)
そしてハイエンド エレクトリスタティック・イヤースピーカーSTAX SR-007A(希望小売価格(税込)210,000円)で聴こうという・・・。
ちなみにてまりの「今まで使っていたSTAXのコンデンサー型」のインザ・イヤータイプ・エレクトロスタティック・イヤースピーカー SR-003(希望小売価格(税込)15,750円)。ん?安いな。

電撃大王 2010年 01月号 [雑誌] Book 電撃大王 2010年 01月号 [雑誌]

販売元:アスキー・メディアワークス
Amazon.co.jpで詳細を確認する

2009年11月28日 (土)

今日届いた本

帰り道の中学校へ続く階段と坂道を登っていくと、男性が寝ていた。歳の頃は30代か40代でちゃんとしたコートを着ていて、浮浪者とかではなかった。
23時過ぎの頃なので酔っ払いが寝ていたのだと思う。事件性のものではないだろう。

(1)月刊アフタヌーン2010年1月号
巻頭カラーは、「蟲師」の漆原友紀さんの新作「水域」が掲載。現代都会とちょっと過去の山間の湖がある村を行き来する女の子の物語。
ついに呪街×呪姫が最終回。

月刊 アフタヌーン 2010年 01月号 [雑誌] Book 月刊 アフタヌーン 2010年 01月号 [雑誌]

販売元:講談社
Amazon.co.jpで詳細を確認する

友達100人できるかな 2巻、呪街4巻(完結)、珈琲の時間 は12月22日発売。
ブギーポップ・ダークリー 化け猫とめまいのスキャット12月10日発売。

全然関係ないけど、明日も会社に行く。当分土曜日出勤。休日も予定に組み込まれた!ぶーたれる。

2009年11月26日 (木)

グロイさんの新曲はグロイな。

グロイな

こっちも

C#でフォームアプリケーションをコンソールアプリケーションにする

そんなに難しくない。
Visual C#でフォームアプリケションを作成したときにProgram.csというファイルができてこれにProgramクラスとstaticなMainメソッドがある。
このMainメソッドがプログラム起動時に呼ばれる。
フォームアプリケーションだと以下のメソッドがあって、これでfrmMainフォームが開く。

Application.Run(new frmMain());

なので、コンソールアプリケーションにするには、このメソッド実行をしなければ良い。

2009年11月25日 (水)

「和魂」機能追加予定

なんや今更気付いたのだけれど、ニコニコ動画での検索機能は、従来のキーワード検索に加えてタグ検索も追加されている。(キーワードを含むタグ検索もあるけど、これは動画一覧がすぐにとれるわけではないので除外)

キーワード検索は、
http://www.nicovideo.jp/search/<キーワード>
となっている。
オプションは、投稿が新しい・古い順、再生が多い・少ない順、コメントが新しい・古い順、マイリストが多い・少ない順、時間が長い・短い順がある。
これらのオプションは、<キーワード>の後に ?sort=v/n/r/m/l&order=a が付くことで検索順が変わる。
(v,n,r,mはいずれか。降順のときに&order=aが付く)
何も後ろに付かないとき(デフォルト)は、投稿が新しい順になる。

タグ検索は、
http://www.nicovideo.jp/tag/<キーワード>
となっている。
オプションは、投稿が新しい・古い順、再生が多い・少ない順、コメントが新しい・古い順、マイリストが多い・少ない順、時間が長い・短い順がある。
これらのオプションは、<キーワード>の後に ?sort=f/v/r/m/l&order=a が付くことで検索順が変わる。
(f,v,r,mはいずれか。降順のときに&order=aが付く)
何も後ろに付かないとき(デフォルト)は、投稿がコメントが新しい順になる。

デフォルトが違うのが大きい違いだな。
オプション追加で対応しましょう。(後、検索ページ番号もあるけどね)

2009年11月23日 (月)

今日届いた本

朝から晩までアニメ消化。プログラムも改良していたりしていたけど。
1ヶ月以上たまっているモノをさすがに全部消化できるわけもなく。

(1)【最後の魔法使者】 第一部 魔法の使徒 上
(2)【最後の魔法使者】 第一部 魔法の使徒 下
ヴァルデマール年代記シリーズ
女王エルスペスの時代よりもっと前の話。伝説の森を作ったヴァニエルが使者になるってところから、

魔法の使徒上 (最後の魔法使者第1部) (創元推理文庫) Book 魔法の使徒上 (最後の魔法使者第1部) (創元推理文庫)

著者:マーセデス・ラッキー
販売元:東京創元社
Amazon.co.jpで詳細を確認する


魔法の使徒下 (最後の魔法使者第1部) (創元推理文庫) Book 魔法の使徒下 (最後の魔法使者第1部) (創元推理文庫)

著者:マーセデス・ラッキー
販売元:東京創元社
Amazon.co.jpで詳細を確認する

(3)ゲームラボ 2009年12月号

ゲームラボ 2009年 12月号 [雑誌] Book ゲームラボ 2009年 12月号 [雑誌]

販売元:三才ブックス
Amazon.co.jpで詳細を確認する

(4)世界のエンジニアが生み出した 珠玉の電気回路200選
オイラは、今はソフト屋さんだけど一応大学は電子工学科だったりする。元々、ソフトウェア方面に行くつもりが、もう何処でも良いやって感じで、行き先を間違えたような・・・。って、そんな話はどうでも良くて、なんとなく琴線に触れたので購入してみた。
まあ、あんまりそっち方面は分からんけど、ずしりと重い本の中身は思った以上にマニアックな回路ばかりでついて行けません。素人はそのまま作るのはできるけど、これから発展させるのは難しい・・・。でも、電気+電子系の人は眺めているだけでも面白いかもね。

世界のエンジニアが生み出した『珠玉の電気回路200選』 Book 世界のエンジニアが生み出した『珠玉の電気回路200選』

著者:EDN Japan
販売元:リード・ビジネス・インフォメーション
Amazon.co.jpで詳細を確認する


CookieGetterの修正 ほんちゃん

CookieGetterのfirefoxのクッキー読み込みでSQLiteのDLLを使用していると、バージョンが変わると静的リンクだと落ちてしまう問題を、この前のエントリで解決する方法を見せた。
DLLを動的に読み込むって方法です。

それを一歩進めてDLLを動的に読み込む用クラスにまとめてみました。
その他、諸々のバグも修正しています。
詳しくは、こちらを見てください。
ちなみにVisual C# 2008ソースファイルのみで、実行ファイルは無いのでビルドしてください。

firefoxのクッキーを取得するにはSQLiteのDLLとC#用のラッパDLL(System.Data.SQLite.DLL)が必要なのは変わらないので、ダウンロードしてください。

2009年11月22日 (日)

今日届いた本

オコタでヌクヌクしてアニメの消化とプログラム改造をやったりやらなかったり。
久しぶりにのんびりしている。
寒くて体のコントロールが出来なくなっているけど。(握力がほとんど無くなってしまっている)

(1)からん 3
うじんがー先生が出てきたり、桜香梅香姉妹が仲たがいしてギスギスするけど、結局簡単に仲直りしたり、本気出してほしーなとお願いしたら萌さんたらやる気満々になるところまで。

からん 3 (アフタヌーンKC) Book からん 3 (アフタヌーンKC)

著者:木村 紺
販売元:講談社
Amazon.co.jpで詳細を確認する

参考:掟ポルシェさんのBLOG

(2)ハックス 3
アニメのMADを作って二○動画に投稿するってところ。映研部長(部員一人のみ)が難癖付けてきて、みはしが怒って自己嫌悪したり。

ハックス! 3 (アフタヌーンKC) Book ハックス! 3 (アフタヌーンKC)

著者:今井 哲也
販売元:講談社
Amazon.co.jpで詳細を確認する


(3)Pumpkin Scissors 12
実業家さんがなんか悪さしてる。(まだ読んでいない)

Pumpkin Scissors 12 (KCデラックス) Book Pumpkin Scissors 12 (KCデラックス)

著者:岩永 亮太郎
販売元:講談社
発売日:2009/11/17
Amazon.co.jpで詳細を確認する

(4)アルサラスの贖罪 2

アルサラスの贖罪〈2〉女王と軍人 (ハヤカワ文庫FT) Book アルサラスの贖罪〈2〉女王と軍人 (ハヤカワ文庫FT)

著者:デイヴィッド エディングス,リー エディングス
販売元:早川書房
Amazon.co.jpで詳細を確認する

CookieGetterの修正

和魂に入れているCookieGetterの修正を、本来のCookieGetter側に入れようとしている。
それだけではつまらないので、CookieGetterの最大の問題である「firefoxを使うときSQLiteのC#ラッパDLLのバージョンがビルド時と違うモノを使うと落ちる」を修正してみる。
この間書いたエントリの通り、動的にDLLを読み込めばOK。

まだ、十分見直していないのだが、classFirefoxCookieGetter.cs ファイルを以下の様に書き換える。

using System;
using System.Collections.Generic;
using System.Text;
using System.Collections;
using System.Reflection;

namespace CookieGetter
{
    class classFirefoxCookieGetter
    {
        static public ICookieGetter getInstance(classCookieGetter.BROWSER_TYPE browser)
        {
            ICookieGetter obj = null;
            switch (browser)
            {
                case classCookieGetter.BROWSER_TYPE.FIREFOX3:
                    obj = new classFirefox3CookieGetter();
                    break;
            }
            return obj;
        }

        private class classFirefox3CookieGetter : classCookieGetter
        {
            string assemblyName_ = "System.Data.SQLite.dll";
            object hConnection_;
            Type typeSQLiteConnection_;
            Type typeSQLiteCommand_;
            Type typeSQLiteDataReader_;

            public classFirefox3CookieGetter()
            {
                // アセンブリ内のモジュールを取得
                Assembly assembly = Assembly.LoadFrom(assemblyName_);
                // アセンブリ内のクラスを取得
                Module module = assembly.GetModule(assemblyName_);

                typeSQLiteConnection_ = module.GetType("System.Data.SQLite.SQLiteConnection");
                // クラスを動的に作成する
                if (typeSQLiteConnection_ != null)
                {
                    string file = searchFile(base.getAppdataPath() + "\\Mozilla\\Firefox\\Profiles\\", "cookies.sqlite", true);
                    hConnection_ = Activator.CreateInstance(typeSQLiteConnection_, new Object[] { "Data Source=" + file });
                }

                typeSQLiteCommand_ = module.GetType("System.Data.SQLite.SQLiteCommand");
                typeSQLiteDataReader_ = module.GetType("System.Data.SQLite.SQLiteDataReader");
            }

            override  public string getCookieValue(string url, string key)
            {
                string result = "";
                string query = "SELECT value FROM moz_cookies where host==\'" + url + "\' AND name==\'" + key + "\'";
                string[][] values = select_table(query);

                if (values != null && values.Length > 0)
                {
                    result = values[0][0];
                }
                else
                {
                    result =  "";
                }
                return result;
            }

            override public string[][] getCookies(string url)
            {
                string query = "SELECT name, value FROM moz_cookies where host==\'" + url + "\'";
                return select_table(query);
            }

            private string[][] select_table(string query)
            {
                ArrayList values = new ArrayList();

                    //SQLiteConnection hConnection = new SQLiteConnection("Data Source=" + file);

                    //SQLiteCommand myCommand = new SQLiteCommand(query, hConnection);
                    Object myCommand = Activator.CreateInstance(typeSQLiteCommand_, new Object[] { query, hConnection_ });   

                    // データベース接続を開く
                    //hConnection_.Open();
                    // ※:SQLiteConnection::Open()は、引数ありのメソッドが無いので、GetMethod()の第二引数を指定しなくてもOK
                    MethodInfo connectionOpen = typeSQLiteConnection_.GetMethod("Open");
                    connectionOpen.Invoke(hConnection_, null);

                    //SQLiteDataReader myReader;
                    //myReader = myCommand.ExecuteReader();
                    // ※:SQLiteCommand::ExecuteReader()はoverloadなメソッドが他にあるため、GetMethod()の第二引数に明示的に"引数なし"を指定する
                    MethodInfo connectionExecuteReader = typeSQLiteCommand_.GetMethod("ExecuteReader", new Type[0]);
                    object myReader = connectionExecuteReader.Invoke(myCommand, null);

                    //int fieldCount = myReader.FieldCount;
                    PropertyInfo readerfieldCount = typeSQLiteDataReader_.GetProperty("FieldCount");
                    int fieldCount = (int)readerfieldCount.GetValue(myReader, null);

                    string[] col;

                    MethodInfo readerRead = typeSQLiteDataReader_.GetMethod("Read");
                    MethodInfo readerGetString = typeSQLiteDataReader_.GetMethod("GetString", new Type[] { typeof(int) });

                    //while (myReader.Read())
                    // ※:SQLiteDataReader::Read()はoverloadなメソッドが他にあるため、GetMethod()の第二引数に明示的に"引数なし"を指定する
                    while ((bool)readerRead.Invoke(myReader, new Type[0]))
                    {
                        col = new string[fieldCount];
                        for (int i = 0; fieldCount > i; i++)
                        {
                            //col[i] = myReader.GetString(i);
                            col[i] = (string)readerGetString.Invoke(myReader, new object[] { (object)i });
                        }

                        values.Add(col);
                    }

                    //myReader.Close();
                    // ※:SQLiteDataReader::Close()は、引数ありのメソッドが無いので、GetMethod()の第二引数を指定しなくてもOK
                    MethodInfo readerClose = typeSQLiteDataReader_.GetMethod("Close");
                    readerClose.Invoke(myReader, null);

                    //hConnection.Close();
                    // ※:SQLiteConnection::Close()は、引数ありのメソッドが無いので、GetMethod()の第二引数を指定しなくてもOK
                    MethodInfo connectionClose = typeSQLiteConnection_.GetMethod("Close");
                    connectionClose.Invoke(hConnection_, null);

                    //hConnection.Dispose();
                    // ※:SQLiteConnection::Dispose()は、引数ありのメソッドが無いので、GetMethod()の第二引数を指定しなくてもOK
                    MethodInfo connectionDispose = typeSQLiteConnection_.GetMethod("Dispose");
                    connectionDispose.Invoke(hConnection_, null);

                if (values.Count == 0)
                {
                    return null;
                }
                else
                {
                    return (string[][])values.ToArray(typeof(string[]));
                }
            }
        }
    }
}

問題はすでにfirefoxが実行されている状態でCookieを読もうとすると SQLiteConnection::Open() で例外「The database file is locked\r\ndatabase is locked」が発生してしまう。 これは、frefoxが起動中はクッキーファイルを LOCK したままにする仕様(?)の所為らしい。しょうがないので、例外をキャッチしなければならない・・・。

●ついで
SQLiteを使用するには、SQLite.dll と C#ラッパDLLが必要である。

  • SQLite.dllは、本家HPから(上の方にある)メニューDOWNLOAD→Precompiled Binaries For Windowsにあるどれかで sqlite3.dll を取得する。例えば2009/11/22現在最新であるsqlite3_analyzer-3.6.1.zipとか。sqlite3.dllは、パスが通っているところに入れる。別にCookieGetterを動かすAPと同じディレクトリにあってもよい。
  • C#ラッパDLLは、sourceFORGEから拾ってくる。System.Data.SQLite.DLLが必要。SQLite-1.0.65.0-source.zip を落として、binディレクトリにある System.Data.SQLite.DLL をアプリのexeがあるところに置けば良い。

もう眠い・・・、実際に修正したものをアップするのは明日ソースを確認してからにしよう。 

2009年11月21日 (土)

読了:屍肉の聖餐

「物事の結果は往々にして皮肉なものです」

■お勧め度:★★★☆☆
■対象者:サイコサスペンス好きな方。

過去に家族を異常者に殺され、それの悪夢に苦しむ元検視局局長マーカス・モウプレイのもとに、サンフランシスコ州警察啓示フランク・フォーカーソンから助けを求める電話がかかってきた。ゴミの中から肉がむしり取られた人間の頭部が見つかったが破損状況が酷く手がかりが少ない。経験豊かなマーカスの手を借りたいというのだ。
異常者の仕業が許せないマーカスは、ある思いを持ってその仕事を受けることにする。
そして異常者は次の事件を起こす・・・。

屍肉の聖餐 (集英社文庫) Book 屍肉の聖餐 (集英社文庫)

著者:ユベール コルバン
販売元:集英社
Amazon.co.jpで詳細を確認する

サイコサスペンス 俺様祭りの時に購入した本。
普段は全然この手の本を読まないので、この手のキ○ガイな犯罪者に対する耐性がない。面白いと思う思考回路が出来ていない・・・。
話としては面白いし見せ方も考えてあるなと感じるんだけれど、グロイのはダメだわ。
その手の耐性のある方向けだな、この手の本は・・・。

2009年11月20日 (金)

注文した本

本屋にも行けないような状況。午前2時にこれを書いている状況。
休日出勤をまだしろと強要される状況。
残業時間が100hを超えている状況!

(1)魔法の使徒 上 (最後の魔法使者第1部)
(2)魔法の使徒 下 (最後の魔法使者第1部)
 マーセデス・ラッキーのヴァルデマール年代記の新シリーズ

魔法の使徒上 (最後の魔法使者第1部) (創元推理文庫) (創元推理文庫 F ラ) Book 魔法の使徒上 (最後の魔法使者第1部) (創元推理文庫) (創元推理文庫 F ラ)

著者:マーセデス・ラッキー
販売元:東京創元社
Amazon.co.jpで詳細を確認する


魔法の使徒下 (最後の魔法使者第1部) (創元推理文庫) (創元推理文庫 F ラ) Book 魔法の使徒下 (最後の魔法使者第1部) (創元推理文庫) (創元推理文庫 F ラ)

著者:マーセデス・ラッキー
販売元:東京創元社
Amazon.co.jpで詳細を確認する

(3)アルサラスの贖罪〈2〉女王と軍人
デイヴィッド&リー・エディングスの最終シリーズの2巻目

アルサラスの贖罪〈2〉女王と軍人 (ハヤカワ文庫FT) Book アルサラスの贖罪〈2〉女王と軍人 (ハヤカワ文庫FT)

著者:デイヴィッド エディングス,リー エディングス
販売元:早川書房
Amazon.co.jpで詳細を確認する

(4)からん 3

からん 3 (アフタヌーンKC) Book からん 3 (アフタヌーンKC)

著者:木村 紺
販売元:講談社
Amazon.co.jpで詳細を確認する

(5)ハックス! 3

ハックス! 3 (アフタヌーンKC) Book ハックス! 3 (アフタヌーンKC)

著者:今井 哲也
販売元:講談社
Amazon.co.jpで詳細を確認する

(6)Pumpkin Scissors 12

Pumpkin Scissors 12 (KCデラックス) Book Pumpkin Scissors 12 (KCデラックス)

著者:岩永 亮太郎
販売元:講談社
発売日:2009/11/17
Amazon.co.jpで詳細を確認する

(7)世界のエンジニアが生み出した『珠玉の電気回路200選』

世界のエンジニアが生み出した『珠玉の電気回路200選』 Book 世界のエンジニアが生み出した『珠玉の電気回路200選』

著者:EDN Japan
販売元:リード・ビジネス・インフォメーション
Amazon.co.jpで詳細を確認する

(8)ゲームラボ 2009年 12月号

ゲームラボ 2009年 12月号 [雑誌] Book ゲームラボ 2009年 12月号 [雑誌]

販売元:三才ブックス
Amazon.co.jpで詳細を確認する

(9)月刊 アフタヌーン 2010年 1月号

Book 月刊 アフタヌーン 2010年 01月号 [雑誌]

販売元:講談社
Amazon.co.jpで詳細を確認する

(10)コンティニューvol.49

Book コンティニューvol.49

著者:ラブプラス
販売元:太田出版
Amazon.co.jpで詳細を確認する

なんだ?著者:ラブプラスって?

2009年11月19日 (木)

C#でDLLを動的に読み込みたい

和魂は、FireFoxのクッキーを読み込むときにSQLiteを使用する。
しかし、プロジェクトで参照設定を行って、リンクしているため、DLLが無かったりバージョンがリンク時のものと違ってしまうと、DLLのクラスを生成するときに落ちてしまう。
C言語(というよりVisual C++か?)では、LoadLibrary()を使えばDLLが無くても落ちることはない。(もちろんDLLが無いときのエラー処理をしているという前提があるけど)

C#にも同じような機能が無いものかと検索してみると、当たり前だけどあった。
GoldFishさんの「動的にアセンブリを呼び出す」はわかりやすいですね。

とりあえず、SQLiteのDLLを読み込んで、SQLiteConnectionクラスを生成できるか試してみた。(時間が無いのでメソッドを呼ぶまでは試していない)

  • Assembly.LoadFrom()とassembly.GetModule()の引数に文字列で"System.Data.SQLite.dll"を指定する
                    // アセンブリをロード
                    Assembly assembly = Assembly.LoadFrom( "System.Data.SQLite.dll");
                    // アセンブリ内のモジュールを取得
                    // 通常は、ファイル名と同じ
                    Module module = assembly.GetModule( "System.Data.SQLite.dll");
  • module.GetType()の引数に文字列で"System.Data.SQLite.SQLiteConnection"を指定する
                    // アセンブリ内のクラスを取得
                    // ネームスペースを含めた完全なクラス名で
                    // 指定する
                    System.Type type = module.GetType("System.Data.SQLite.SQLiteConnection");

以上、これで、type変数に値が入って、その次のObject form = Activator.CreateInstance(type);でオブジェクトが生成される。
次はメソッドを取ってMethodInfo::Invole()で実行すればよい。

SQLiteやMedia Playerを読み込もうとしているのだが、入れ忘れたファイルがあるようで、提供してあるExeのZipファイルでは起動しない。(と思う)
SQLiteとC#でSQLiteを使うラッパDLLを落としてきてビルドすれば使えるのだが・・・。
Visual C# 2008を誰もがダウンロードするわけでもないからなぁ。
近いうちに和魂を直そう。

2009年11月18日 (水)

プログラムの考察:関数の大きさ

関数の大きさは、悩むところである。
機能の区切りで分割するのは一つの手ではあるが、細かい処理がつながっているときは区切りをつけるのが難しい。
そんなプログラムは、その関数内のローカル変数のが膨大になる。正直、これはメンテナンスがしづらい。

処理はデータを操作・加工する物であり、そのデータは変数に格納される。
データは漠然とのんべんだらりと存在するわけではなく、ある程度、種類でまとめられるはずである。(カウンタとか関数の戻り値とか、単体で意味する一時的に使用する変数は除く)
つまり、関数=処理を分けるには、データを納める変数の種類に着目して行うとよい。

どうしても関数が大きくなるしかないなら、変数を構造体に納めると変数の数が少なくなって、データの纏まりが見えてくる。結果、処理が分かりやすくなる。

2009年11月17日 (火)

昨日届いたCD

ささくれさんのCDが3枚届きました。

P1030247

忙しくてまだ聞いていないけどな!

株:現物売り約定

風邪をひいた模様。ハナとクシャミが出る。熱は特にないけど、肺がプチ痛い。これは風邪のとき、いつものことだけど。

久しぶりに持ち株を売れました。
買ってから2ヶ月・・・、長かった。今回は買ってから下がりだして、先日、大幅黒字ということで業績報告されてやっと値が上がってくれて売れたのでした。
今回は855円で200株を売り約定。
今日の値動きは、初値840円、終値849円、高値858円、安値839円。高値にある程度近い値で売れたから良しとしよう。
17,000円程度の利益。2ヶ月でたったこれっぽっちか・・・。痛いな。

現在の内訳は
・OBARA(6877):200株 損益-100,200円
バンナムHD(7832):100株 損益-11,800円
・日本システムディベロップメント(9759):100株 損益-34,000円

現状、含み損益-146,000円(-28.57%)となりました。
バンナムが結構下がってしまって、売るに売れない状況が痛い。まさかあんなに赤字になるなんて思わんかったもんなぁ。

次に狙う株はどうしようか悩む。ちょっとお休みって感じで傍観してみようか。

2009年11月15日 (日)

「まいにちいっしょ」が消えた・・・

今日、やっと時間ができたので「まいにちいっしょ」から「週刊トロ・ステーション」にデータを移そうとした。
PS3を起動してみると、「まいにちいっしょ」のメニューが消えている・・・。
当然、データの移行もできない・・・。

「まいにちいっしょ」のダウンロード履歴からもう一度ダウンロードしてみても、すでに新しいバージョンがインストールされているとエラーになってインストールもできない!
メニューがないからアンインストールもできない。

と思ったら・・・。オイラ、理解していませんでしたよ。
いつものゲーム一覧の所ではなく、ダウンロードしたゲームのフォルダ(?なにもやっていないと「未設定」って名前になっていると思う)に入ってしまっていた。
それらしき記述(ここの一番下)はあったのだけれど、分からんよな。

これに気付かず、「週刊トロ・ステーション」をすべて見ちゃいましたよ・・・。
改めて「まいにちいっしょ」を起動して11月11日のトロ・ステーションを見て、引き継ぎデータを作成、「週刊トロ・ステーション」を起動してめでたくデータは引き継がれたとさ。
もう一度、「週刊トロ・ステーション」の見直さないと・・・。

しっかし、夜中になって「週刊トロ・ステーション」を起動したのだが、空地はスゲーさみしい。トロのためにプラチにゃ会員になろうかと考えたのだが、さすがに月800円は辛いだろ。だって、年9,600円だぜ?普通のソフトより高くなりますよ?

ちなみに引き継ぎは2010年3月31日までなので、ある程度猶予はありますな。

2009年第四 四半期 新作アニメ感想

もう、1か月以上過ぎてしまって、やっと新作の1回目を見終わった。そろそろHDDレコーダがいっぱいになって見るのがおっつかない状況が辛い。
例によって評価順に並べる。

DARKER THAN BLACK 流星の双子    (音声あり注意)
重厚なシナリオを感じさ、十分な現地ロケで丁寧に作られた良い作品。前作とは違い主役が女の子で、前作主役の黒(ヘイ)が絡んでくる。
今回の音楽は菅野よう子さんではないけれど、結構良い。相変わらずOP・ENDは、有名どころだかを使っている。
ん、2話目から時間が変わった?!

鷹の爪 カウントダウン   (音声あり注意)
相変わらず手作り感が良いな。色々ヤバメなネタが多くて大笑いしてしまった。こういうストレートなブラックネタが
非提供サントリー(大人の事情で察しろ)ってのは、面白い試み。というか釣り。

天体戦士サンレッド 2ndシーズン
こういう小ネタ系は好きだな。ストーリー物じゃないから数を小出ししていくのはすごい大変だろうけど。

にゃんこい
いいな、猫と話せるなんて。
単純な猫話ではなくて、猫地蔵をひょんなことからバチ当たりなことをしてしまい、猫語が分かるようになった猫アレルギー持ちの男子高校生。罰を解消するには100個、猫のために良いことをしなくてはならないという。ドタバタラブコメ?
無愛想猫が良い。面白いね。
CMの猫かわいい!

テガミバチ
1話見た感触は、良質なラノベって感じ。
人の感情に反応して襲ってくる巨大な虫が荒野に居る世界。その荒野を跨いで手紙を配る通称てがみばちとよばれる配達人。訳ありの子供を届けるとい話からはじまる。
なかなか面白い。

WHITE ALBUM
ん、出来良い。
80年代の暗い雰囲気でマッタリしているという感じ。(ネトッとしている?)
それがよいかどうか見る人によるんだろうな。

聖剣の刀鍛冶
正統的な中世ソード アンド マジック系ラノベだな。
特筆すべき特長はないけれど、丁寧に作られているし面白いと思う。
あえて難点を言うなら女騎士ってのは無理があるよな・・・。気品が感じられないってのも、騎士っぽくないし。

そらのおとしもの
なんか問題作って書いてあったのをみたんけど、そんなに問題ないと思うよ。
ちょっと良い方向の中2病患者の夢をかなえてくれるって感じなだけで。
空から天使(美少女)が落ちてきて、なんでも言うことを聞いてくれるという、都合のよいよくある話ですよ。

空中ブランコ
クセが強いしねちっこくてウザい感じ。でも、悪い意味ではなくて、そういったカラーということで、ほめているんですよ。(久しぶりな)三ツ矢雄二の声が良く合う。
フジテレビは電気グルーブ好きだな。

夏の嵐 春夏冬中
なんか新房監督にしては(OP以外は)おとなしいな。ま、前作「夏の嵐」もおとなしかったけれどね。
でも、話回しとかもちゃんと見せたいという意思を感じる良きアニメだ。

とある科学の超電磁砲<レールガン>
さすがJ.C.STAFFって感じで良い出来。前のとある科学の禁書目録<インデックス>よりテンポが良いような感じ。

君に届け
ある意味かわいい爽子ちゃん。不器用なんよね。
この世の中、不器用な正直者は割を食うけれど、アニメくらい良き目を得るというのはいいかもね。

ファイト一発 充電ちゃん (音声あり注意)
うーん、評価しづらいな。キャラ、話、画の評価は普通、悪くはない。変な劇中劇(アニメ)を使っているとか露骨なエロ描写はダメだけど。
普通過ぎて評価がしづらいという・・・。

アスラクライン2
1周目の記憶という新たなファクターにより、ただ巨大人型機械や特殊能力者がいるというありきたりな世界に深みが出た感じ。
ドタバタ系が引き締まって面白くなった感じがしますよ。

生徒会の一存
アニメでやるアニメネタを披露する原作ライトノベルという、メタなんだかその斜め複素数方向なベクトルを向いている、ちょっとずれたらもうダメぽな感じなのだが・・・。
ま、オタクな高校生の友達同士が軽いオタク談義でじゃれあうような感じが良いかもね。あくまでも(本物で)軽くというところが重要。

リリカルなのはA's
無印とA'sは、時間的に見られなかったので、今回初見。Striker'sは見ていたんだけどね。
いきなり無印からの話なのでイマイチ状況が分からない上にStriker'sである程度事情が見えているということで、ちょっと混乱してみたり。
魔法少女というとキャピルンな感じが多い中、これは熱い戦い+健気に頑張る萌えという希有な存在。
せっかくなので見るぜ。

フェアリーテール
あれな、ワンピースの作者のもの。ネタとしては面白いが、ジャンプレベルの世界観はイマイチ。物はよさそうだがツボではないので切りかなぁ。

"青い"文学シリーズ
寡聞にして、文学と呼ばれるものは読んだことがない。
ま、味があるというかエグイというか。一応見ていく。

ささめきこと
ユリもの?2話から見た。なんつうかあまり売りが見えない。これからか?

ミラクル☆トレイン ~大江戸線へようこそ~
駅の擬人化が売りの鉄子向けというより、イケメンが奉仕してくれるやおいモノによくあるパターン。まあ、見ていこう。

乃木坂春香の秘密 ぴゅあれっつぁ♪
主役二人は普通(?)な友達以上恋人未満なラブコメだけど、周りの人たちが突拍子もないので、なんかそこで大きくマイナス。
周りがひっかきまわさないと話が進まないってのは、作家としていかがなものか。
見ていくかどうかは今後の展開か。サブキャラクターのトンデモ話で始終するなら切り。

グインサーガ  (音声あり注意)
スゲー強引な話。何の背景も見せずに城が攻められ、中世っぽいのに転送装置みたいな高度技術があると思えば、「設定失敗しちゃった、テヘ」で敵領土に飛んで行って、たまたまグインと出会って・・・。
運命の神に操られたって・・・。アホかっていうぐらいご都合主義で設定も1980年代なみの古臭い設定(原作が古いものだからしょうがないのだが・・・)。
とりあえず見ていくが、ご都合主義がこれ以上続くなら切り。

けんぷファー
設定とシナリオがめちゃくちゃ中二病(ピンク色)。
見ていて頭が痛くなる。
こんな話しかけるなんて、どんな頭しているのか一度分解してそのままにした方が世のためになると思う。
1話見たけど、切りだな。

あにゃまる探偵 キルミンずぅ+
キッズものだ。パス。

ご姉弟物語
オイラにゃ合わない。

今日届いた本

昨日も休出してしかも午前様だった。疲れきってしまって(ブログも書かずに)そのまま泥のように眠った・・・。

(1)JC.COM 6
「ミツヨシ完結編」は密厳と胸冬の戦い。虫どもを許せない密厳は虫を絶やそうとし、隻眼を開き虫どもの理屈を武家社会の本意と見た胸冬は反逆者である密厳を無力化しようとする。

JC.COM 6 Book JC.COM 6

著者:村田 蓮爾
販売元:集英社
Amazon.co.jpで詳細を確認する

遂に「ミツヨシ完結編 上巻」コミックが12月4日に発売だ!

(コミック)ミツヨシ完結編(上)/上山徹郎/集英社 2009年12月4日発売 (コミック)ミツヨシ完結編(上)/上山徹郎/集英社 2009年12月4日発売

販売元:ひょうたん書店楽天市場店
楽天市場で詳細を確認する

(2)Make: 08
オープンソースハードウェアArduinoが多いな。
なでると光るイワシってのは・・・。

Make: Technology on Your Time Volume 08 Book Make: Technology on Your Time Volume 08

販売元:オライリージャパン
Amazon.co.jpで詳細を確認する


2009年11月14日 (土)

REVERSE

今日も帰りが遅くなって終電間際の電車に乗って帰宅したわけなのだが、金曜日の深夜は、何が嫌かと言うと飲んだ帰りの乗客が多くて混むということが、何よりもイヤ。

今日は人身事故だかなんだかで、京急の下りが遅延していて、こういうときは更に混む。
そして、戻している女性が3人もいた・・・。
自分の体に自身があるのは良いけれど、限度ってものを知っておけよ・・・。

オイラは乗り物に弱いので、電車に乗る前はなるべく飲み食いを控えるようにしている。それは飲み会がある時も同じ。少なくとも2時間前には、食べない。酒もそんなに強くないので、ちょっと酔っ払ったら気持ち悪くなる方なので、崇拝飲んだらソフトドリンクに切り替える。

これくらい気を付けるってほどではないけれど、気にした方が良いぜ。
女性は特に前後不覚になるまで飲むってのは、お洒落じゃないし。

#ちなみに英語で戻す(吐く)は、reverseではなくて、vomitとのこと。
明日も仕事に行きます。当分、こんな調子が続くと思うと、げんなりしてくる・・・。

2009年11月13日 (金)

プログラム考察:引数

C言語などの手続き型プログラミング言語では、関数に引数を渡してデータを処理するのが基本だ。(グローバル変数を使うこともできるけどここでは述べない)

引数で渡すデータは、どのような順番が良いだろうか?
闇雲に思いついた順に入れたとしたら、統一がとれておらず、プログラムが読みにくくなってしまう。(コンピュータには関係ないけど)
では、どのような順番に並べれば良いのか?
人間が文(横書きならば)を解釈するとき、左から右へと読む。
処理が参照するものを先に起き、出力(ポインタへの書き込むもの)は後に於く
そして、大枠から細かい方へと進む方がわかりやすいし、副次的なものより本質的なものの方が先に来る方がわかりやすい。

つまり、以下の順に気をつければ良い、
・処理が先のもの(入力値など) → 処理が後のもの(出力領域など)
・大分類(大枠) → 小分類(詳細)
・本質的 → 副次的

これは引数だけの話ではない。
関数やクラス、構造体の定義順、関数内の処理の順などなど、いろんなものに適用できる。

2009年11月12日 (木)

ブログネタ: こたつ、もう出した?

先週の水曜日は、すげー寒かったからもう出しても良いとは思うけれど、まだ出していない。
おこたは、テーブルとして使っているので炬燵布団を出せばもう完成なんだけれど、屋根裏部屋にあるはずで、とってもらわんとどうにもできない。
はよ、出してもらわにゃ。
あー、でも、土日、また仕事にでなきゃならんだろうから、おこたの恩恵を受けられないなぁ・・・。いつまで続くんだろ、こんな骨身を削るような生活・・・。


ブログネタ: こたつ、もう出した?参加数

2009年11月11日 (水)

今日届いた本

出勤のときと帰宅のときに、追浜駅近くで猫が車にひかれて死んでいた・・・。
俺たちにとって良い猫とは生きた猫だ。

(1)2010週めくり 岩合光昭×ねこ
毎年購入している1週ごとに1枚の卓上猫さんカレンダー

2010週めくり 岩合光昭×ねこ(Yama-Kei Calendar) Book 2010週めくり 岩合光昭×ねこ(Yama-Kei Calendar)

著者:岩合光昭
販売元:山と溪谷社
Amazon.co.jpで詳細を確認する


(2)2010猫カレンダー のら 岩合 光昭
(3)カレンダー世界の猫 2010 岩合光昭
(4)2010世界の猫カレンダー 新美 敬子
なんか猫ものカレンダーが欲しくなったので購入。卓上カレンダーと思ったら、1か月ごとの壁掛けカレンダーだった。3冊も購入してしまって、どこに使おう・・・。

2010猫カレンダー のら Book 2010猫カレンダー のら

著者:岩合 光昭
販売元:日本出版社
Amazon.co.jpで詳細を確認する

カレンダー世界の猫 2010 Book カレンダー世界の猫 2010

著者:岩合光昭
販売元:労働教育センター
Amazon.co.jpで詳細を確認する

2010世界の猫カレンダー Book 2010世界の猫カレンダー

著者:新美 敬子
販売元:日本出版社
Amazon.co.jpで詳細を確認する

月に一枚というのは物足りないな・・・

(5)狼と香辛料 13
SIDE STORYの第3弾目

狼と香辛料 13 (電撃文庫 は 8-13) Book 狼と香辛料 13 (電撃文庫 は 8-13)

著者:支倉 凍砂
販売元:アスキー・メディアワークス
発売日:2009/11/10
Amazon.co.jpで詳細を確認する


(6)ぐらシャチ
中村 恵里加さんの新作

ぐらシャチ (電撃文庫 な 7-13) Book ぐらシャチ (電撃文庫 な 7-13)

著者:中村 恵里加
販売元:アスキー・メディアワークス
Amazon.co.jpで詳細を確認する


(7)彷徨える艦隊 4
海外スペオペSF物。今、2巻目を読んでいるけどスゲー面白い。

Book 彷徨える艦隊〈4〉巡航戦艦ヴァリアント (ハヤカワ文庫SF)

著者:ジャック キャンベル
販売元:早川書房
Amazon.co.jpで詳細を確認する

(8)MUSIC MAGAZINE 2009年 07月号
菅野よう子さん特集。
インタビューが非常に菅野よう子さんらしい雰囲気を思いこさせるような書き方で好感を覚える。

MUSIC MAGAZINE (ミュージックマガジン) 2009年 07月号 [雑誌] Book MUSIC MAGAZINE (ミュージックマガジン) 2009年 07月号 [雑誌]

販売元:ミュージックマガジン
Amazon.co.jpで詳細を確認する


(9)MUSIC MAGAZINE 2009年 09月号
CRAZY KEN BAND特集。

ミュージックマガジン 2009年9月号 [雑誌] ミュージックマガジン 2009年9月号 [雑誌]
販売元:セブンアンドワイ ヤフー店
セブンアンドワイ ヤフー店で詳細を確認する

2009年11月10日 (火)

銀行振込しました

ささくれさんのCDを3枚購入した。
銀行振込ということで横浜銀行のATMから支払いをした。
操作は簡単。

ATMに銀行カードを差し込み、銀行振込を選択。
みずほ銀行ということで、他行への振り込みを選択。
支店名、口座種別(普通)、口座番号を入力・選択
金額を入力(3,900円)して確定
最後に、振込人、振込先(ここでやっと振込)が表示されるので確認して、OK。
最後の最後に、再び振り込むために、今回の振込先を銀行カードに記録させますかと出る。
まちがえて「はい」を選択してしまった。
ま、影響ないけど。

1週間くらいしたら届くかな?

2009年11月 9日 (月)

備忘録

備忘録

(1)ささくれさんところからCDを3枚購入するので、銀行振込をする。3,900円

(2)「和魂」のページを改定する。この前、出したα4版の説明に加えて、sqliteのDLLダウンロードの説明も充実させないと難しいと感じた。自分でやっても、すでに古いバージョンを使うことになるので、ダウンロードをどこから行えばいいのか分からない。結局、最新版を持ってきてビルドしなおす方が早かった。
でも、別のPCで和魂を動かすと落ちてしまう。バージョン違いとかでなら落ちるのはわかるが、ビルドしたものと同じになったはずなのに、なぜだろう?
まず同梱、出来ないか調べるべきだと思う。

(3)同じく「和魂」の連続ダウンロードの機能の動作が怪しいので、改良する方法を考えてみる。今はダウンロードを優先コマンドとして処理するようにしているが、スレッド起動と別に動かしている(ハズ)なので、タイミングによっては動画ページの取得がだぶってしまって、動画取得が失敗する(ハズ)。ダウンロードコマンドと検索画面・動画ページ取得コマンドのキューを別に持ち、ダウンロードコマンドキューの優先順位を上にするという方法で対処する方向で処理を見直す。あと、ダウンロードは、動画ページ取得を経由するので、先に動画ページ取得のみをコマンド発行しているときは、どちらかの依頼コマンドが不要になるので、廃棄するしょりが必要。

(4)Amazonで猫カレンダーを4種類も購入したので、どこで使うか検討しておくこと。衝動買いしてしまった・・・。

2009年11月 8日 (日)

プログラム考察:ログ出力(トレースログ) その2

昨日の続き。

トレースログは、何の情報を取得すればいいかを考えてみた。
正直、これには回答がない。
というのも、プログラムの使用用途、規模によって取得する量、質が変わるべきだからだ。
ミニマムな環境では必要にも満たない最低限のものになるし、パワフルな環境なら十分な情報を取得することも可能である。
バッチシステム、サービスプログラムのような一気に動かすようなものなら、データについて情報を取得することを考慮すべき。しかも、動作の信用性も十分確保しなければならないので、動作経路も分かるようにするべき。ちょっとでもおかしなデータが来たら出力して、その経路も分かるようになっているとベター。
ユーザAPのような小規模ならば利便性を優先させるべきなので、あまり多くの情報を取得すると遅くなってしまうし、セキュリティも甘いからパスワードなどは出力は言うまでもなく、個人情報に関わるデータも出力するべきではない。(ユーザAPだけじゃないけど)

簡単にまとめると、何の情報が必要かの設計するべきで、その指針はそのAP・システムが何のために使われるものか考慮しなければならない。
ログについては、システムが実現したいことの本流ではないので、ないがしろにされてしまうのだが、(バグを除去して安全なシステムへと成長させるには)本当は十分検討しなければならないことなのだ。

以上はマクロな視点なのだけど、ミクロな視点では共通して言えることがある。
main関数のようなプロセスが起動する上位関数辺りでは、扱う情報が少なく、実行回数も少ないので、ログを充実して、何時どんな処理をユーザが依頼したかを記録する。
ループの中や実行回数が多い下位の関数は、ログを出力すると、とんでもない量の情報が出力されてしまって、必要な情報が埋もれてしまう可能性が高い。なので、なるべくループの外や呼び出す側の(実行回数が少ない)関数でログを出力するようにする。あと、危なそうな処理を見極めて、そこに集中させるというのも良いかも。(出来の悪いプログラマが作ったところとか:-p)
また、正常ケースの処理にではなく、異常ケースだけログを出力ようにする。例外キャッチがある言語では、危険なところをキャッチして例外を出力する。

いずれにしても、何の情報を取得するのか(処理の実行順や入出力データ)を考慮し、実行回数の多少を見てどれだけ出力されるのか、ログの要件がシステムに合致するのかなどなどを検討して、最適解を求めなければならない。

土曜日は休出してヘロヘロになってしまった。なので昨日分のこのブログを書いてなかったりする。というのも開発中のシステムが各チームの出来たものを結合して動かしているのだが、オイラが担当したところで、どうしても分からない問題が出てな。しかも、それが領域破壊っぽい・・・。
時間がなさ過ぎて、コーディングは何とか終わったけれど、ログを十分埋め込めてないしもちろんログについて検討なんて夢また夢、机上テストができず、単体テストも出来ていないのでまともに動かないのは予想通りなんだけど、それでいて期間が短くてもう手がない・・・。
領域破壊などの困ったチャンなバグは、机上デバッグでソースを見て、トレースログ埋め込みや修正を試して、繰り返して、ある時、なんでもないようなコーディングミスがぱっと見つかるって時間をかけなければ見つからんようなバグなんだよな・・・。

2009年11月 7日 (土)

プログラム考察:ログ出力(トレースログ) その1

プログラムの処理をたどるのに有効な手段として、ログ出力がある。
ログを取る目的は、「問題が発生した時=意図しない動作をしたときに、なぜその動作になったか解析できる情報を自動的に常時取得する」ことである。

究極的には、問題が発生した部分についてだけの情報(処理の流れ、処理しているデータの値=変数値)が取れればよい。

しかし、どこにバグがあるかわかるわけがないので、ログを取得する箇所を局所化することはできない。バグが潜んでいるところが分かっているなら、さっさと直せば済むことだし。
となると、どこで問題が発生しても良いように、全体的にトレースログを埋め込む必要がある。
しかし、トレースログは、本来必要な処理ではないので、多量に埋め込むと性能劣化、リソースを多く使うという問題につながる。また、多く埋め込むとソースが見難くなるという問題も発生し、トレースログ自体がバグの原因となる可能性も高くなる。たとえばポインタのメンバ変数を見ようとしたら、NULLポインタだったので落ちたとか、数値を出力しようとしたのに出力子を”%s”としてしまいとんでもないアドレスを文字列として出力してしまい、アクセスバイオレーションになってしまったとか・・・。

処理の実行履歴=トレースを追うのなら、デバッガでステップ実行するのも可能であるが、以下の問題がある。
① 処理全体を追うのは大変
② ユーザのところで問題が発生した時、発生した時点の処理履歴が欲しい。ユーザのところで問題が発生するまでデバッガで実行するわけにいかない。
デバッガのステップ実行を行ってのデバッグは、トレースログで問題個所の辺りをつけて、より詳細な動きを確認するために行う行為である。なので、トレースログに取って代わるものではなく、補完するために行うことなのだ。

では、トレースログで取得しなければならない情報は、何か・・・。
難しいので、また今度考える。

2009年11月 6日 (金)

ブログネタ: あなたは霊を信じますか?

まず、霊とは何かということから定義してもらわんと。
ま、それを置いといても、人間というものは簡単に錯覚を起こすし、簡単に記憶がすり替わる。ついでに言うと、知覚しているものが本物であるということは証明できない。
なので、霊が存在するかとか霊を信じるとかは、証明できないのでナンセンスだ。
”霊を信じる”という言葉もあいまいだ。霊が存在すると確信しているということか?それとも霊に(神を信じると同じようなことで)身をゆだねると言う意味で信用するといっているのか?
とはいえ、具象的なものではなく、抽象的概念で人間の精神の高次的な次元の世界があると考え、その次元から人に干渉できるとは考えられる。ただし、それが共通世界で他者と共有できるものであるか、個人内で閉じるものなのかは分からない。この住んでいる世界だって妄想ではないとは言い切れない。
現状、人が他人または世界へ干渉するには物理的手段を使う方法しか知らないから、霊が存在するかは分からないとしか言えない。
もし、霊やテレパシーが聞こえてきたとしても、それを妄想であるか現実にあるかとは区別できる方法がない。たとえば2重人格であるとか、妄想が進んで自分がそれを演じていることを忘れているのかもしれない。

ブログネタ: あなたは霊を信じますか?参加数

2009年11月 5日 (木)

もう来年のカレンダーが発売される時期になったんだ

2010週めくり 岩合光昭×ねこ(Yama-Kei Calendar) Book 2010週めくり 岩合光昭×ねこ(Yama-Kei Calendar)

著者:岩合光昭
販売元:山と溪谷社
Amazon.co.jpで詳細を確認する

手帳も買っておきたいけれど、物をみて買いたい。

2009年11月 4日 (水)

ニコニコ動画検索支援ツール「和魂」 ニコニコ動画(9)対応+Piapro対応

今日一日で和魂をニコニコ動画(9)に対応してみた
和魂が落ちるのは、どうやら情報を取得するためのHTMLタグの取り方(パス)が悪かったようで、一部の変更で悪さしてしまった模様。異常系の処理が十分でないということもあるのだろうけど。
検索画面をデフォルト4列であるのを、Cookie追加により2列することで殆どの情報はすぐ取れた。あとはタグ取得JSONファイルの修正をした。
プログラムから2列にするCookieを設定する方法は前に書いたのでそちらを参照のこと。
ダウンロードの方法も変わったので対応しておいた。

今回からPiaproの検索画面の情報も取得できるようにしている。
Piaproは動画でもないしサムネイル(絵)もないので、リストの表示方法を変えています。前は、オリジナルで作ったリストコントロールだったけれど、今回から備え付けのListViewコントロールを使うようにしました。
他に、「再生」ボタンとか付いているけど、まだ実装していないので何も起きません。
ダウンロードも対応しているけど、隠し機能なのでどうやれば良いかは秘密。ソースを見れば一発でわかる。
でも、ニコニコ動画でダウンロードすると、「連続参照やめれ」とエラーになってしまう・・・。間隔の開け方が悪いのか、バグがあって連続してしまうのか、調査していないので分からない。
その他、バグがあるようでちゃんとテストしていないので、何で起きるかわかっていない。だから修正方法がわからん。
仕事がひと段落ついたら確認しよう、そうしよう。
説明も殆ど書いていないので、時間があったら追記しよう、そうしよう。

注:本プログラムを使用して被害・損害を受けた、または与えたとしても当方は一切責任を持ちませんのでご了承ください。また、質問 は一切受け付けませんのでご自分で勉強なさったら。まあ、オイラも勉強不足だし、直観とフィーリングでプログラムを作っているので、何が正しいかは己の心 に聞け!

USE AT YOUR OWN RISK

2009年11月 3日 (火)

一昨日買ってきてもらった本

久しぶりの休み。
車洗ったり、散髪したり、撮りだめしたアニメをすべて消化したり、トロ・ステーションをすべて見たりしたかったのだけれど、あまりに寒いので、洗車と散髪はパス。
アニメは1週分を消化しきれていない状況。3週分残っているので、後もう少しでHDDが満杯ということで消えてしまう・・・。
ま、マッタリ居眠りしながら休日を過ごしました。

(1)ゲーマガ 2009年12月号
久しぶりにDVDが付いてきた。まだ見ていないけど。
PSPのデコレーションステッカーはマクロスF(PSPのゲームが出た記念)が付いてくる。
なんか連載漫画「竹本泉のいろいろめもー2C」「ケータイ少女ヘブン」は休載しているし。なんかあったん?

ゲーマガ 2009年 12月号 [雑誌] Book ゲーマガ 2009年 12月号 [雑誌]

販売元:ソフトバンク クリエイティブ
Amazon.co.jpで詳細を確認する

ラブプラスが欲しくなる記事が・・・。

なんかもう、すみません

P1030224

2009年11月 2日 (月)

ごはんぢゃワンもそうだけど

ローソン「秋のリラックマフェア」のスープマグって、なんか猿の頭を割って脳みそを食べる料理を思い出すよな。

ごはんぢゃワン

2009年11月 1日 (日)

ニコニコ動画(9)について

ニコニコ動画(9)の検索画面で投稿者コメント、視聴者コメントが表示されないと思っていたが、4列表示だと表示されないだけで、2列表示にすれば、今までと同じように投稿者コメント、視聴者コメントが表示される。
「動画を2列表示」のリンクを押せば、検索情報が4列表示から2列表示になる。
これはクッキーに保存されるもので、URLでコントロールするものではない。

和魂のようなプログラム側からコントロールするには、クッキーのドメイン:".nicovideo.jp"、キー:"col"、値:"2"を設定すれば2列表示の検索画面を取得できる。

HttpControl.classRequest request_;
request_.cookie = new CookieContainer();
Cookie objCookie = new Cookie("col", "2");
objCookie.Domain = ".nicovideo.jp";
request_.cookie.Add(objCookie);

« 2009年10月 | トップページ | 2009年12月 »