メモの日々


2003年02月03日(月) スペースシャトルコロンビア爆発

会社

  • (8:25)出社。タイムカード点ける文化が身に付いていないので早速忘れた。
  • (8:30〜9:15)部会など。発表された。
  • (昼)誘いなし。なんだよ。
  • (13:30〜14:30)打ち合わせ。スケジュール表がちゃんとあるので話は進んだ。
  • (15:30〜15:35)上席執行役員とお話。どうということはなく意思の確認のみ。
  • ひたすらドキュメント作成。ただいま10ページ。苦手だ。
  • (18:00)退出。帰れるときに帰らないと。

[soft] Jude

UMLツールJudeの竹バージョン(β)が公開されています。XP-jp MLより。ゆっくりゆっくり成長していますね。

[xrea] XREAメンテナンス

うー、今日はXREAがメンテナンスで朝からさっきまでずっとアクセスできませんでした。メモりたいときにすぐメモれないと落ち着かない。

[db] PowerGres

PostgreSQLのWindows版のβ版が公開されています。pgsql-ja MLより。48000円なのですね。OracleやSQL Serverに比べればダントツ安いですが。

[tdiary] tDiary-users

今のところWikiとメイリングリストがあるようです。Asumi日記より。メイリングリストに入ろうかな。

[dev] qmail.jp

qmailのサイトみたいですが、メイル一般の情報もありそうです。NTPの話題もあるようです。

[xrea] XREAメンテナンス(2)

15時過ぎにメンテナンス終了も16時過ぎからまたアクセスできないようになってしまいました。で、また今(17:30)復旧。どうしたのでしょう。

[service] アフィリエイト

PCをエプソンダイレクトで買おうと思っているのですが、アフィリエイトプログラムというのがあるようでそれを使えばコミッションを貰えてで少し安くなると思い登録してみました。こんな感じ

でリンクを張ればよいのかな。自分で購入してもコミッションがあるのかは不明。


2004年02月03日(火)

  • 余分なコードを削った。
  • 今日の行数:4854
  • パスネット3000円分購入をメモ。

やること

  • 決算
  • 不動産屋
  • 定期券を買う

2005年02月03日(木)

  • おかしな動きをするので調査調査調査。デバッガをうまく使えずprintfに頼る。結局元々のコードのバグや設定ミスが原因で、おれのコードを直すことはなかった。もの凄く疲れた。
  • 部屋が寒すぎ。だからみんな風邪ひくんだよ。

[dev] 「研究業績」 (野中ゼミ)

大学の先生の論文がいくつか置いてある。「画面仕様書に基づく対話型ソフトウェアの複雑度重みつき機能規模の測定技法」「設計・ソースコードを対象とした個人レビュー手法の比較実験」「並行・反復型開発プロセスにおける工程品質を考慮したソフトウェア提供期間予測モデル」とかそういうの。oosquare MLより。

やること

  • リンク元のスリム化
  • tDiaryバージョンアップ
  • FSWikiバージョンアップ
  • オーブンレンジ用べんり棚
  • 確定申告書作成
  • 蛍光灯買う
  • ブラウンの安い電動歯ブラシ買う

2006年02月03日(金)

  • 今日も三時半になってしまった。明日は休みだからいいけど。

[java] 「カスタムSWTコンポーネントでのMVCの実装」 (developerWork)

JFaceの説明のようだ。

[soft][dev] 「Internet Explorer 自動運転ツール ROBO-IE」

ROBO-IEは、Microsoft Internet Explorer専用ではありますが、もっとわかりやすく、簡単に全自動UIテストコードを書くためのフレームワークです。

いろんな所より。IEをグリグリ動かすコードをJScriptで書いてテストさせるもののようだ。ここが作者の人のブログみたい。IeUnitというものもあると。

サンプルスクリプトを動かしてみたら、IEの情報バーが出てきてアクティブコンテンツの表示が制限された旨表示された。が、サンプルのスクリプトは動作し続けるようでIEのウィンドウがどんどんポップアップしてくる。

SKGMが作っているのもこういうやつなのかな。

[vim] 「vim でのオススメ plugin」 (川o・-・)<2nd life)

secondlifeさんのおすすめプラグインをメモ。色々試してみないとね。

やること

  • 決算
  • カレンダーを買う
  • ドライヤーを買う
  • 書留を受け取る

2009年02月03日(火)

  • 初めてLinuxでVMWare Playerを使ったが、設定方法がよく分からない。Windowsだとvmnetcfg.exeでネットワークの設定ができるけど、Linuxだとどうすればいいのか。

[java] Cobertura でカバレッジを測定した

昨日のJMockitでは十分な結果を得られなかったので、Coberturaを使ってみることにした。こちらは素直に動いた。

インストール

Cobertura 1.9のアーカイブをダウンロードして展開するとトップディレクトリに cobertura.jar というファイルがあり、libディレクトリにもいくつかjarファイルがある。これら全てをクラスパスに含めれば使用できる。

Antに組み込んでカバレッジを測る

junitタスクを既に使っているとして、その前に cobertura-instrument タスクを実行し、junitタスクが完了したら cobertura-report タスクを実行すればいい。次のような感じ。ドキュメントにある通りにすればよい。

    <target name="coverage" depends="...">
        <delete file="cobertura.ser" /> <!-- 削除が必要みたい -->

        <path id="cobertura.classpath">
            <fileset dir="...">
                <include name="cobertura.jar"/>
                <include name="lib/**/*.jar"/>
            </fileset>
        </path>
        <taskdef classpathref="cobertura.classpath"
                 resource="tasks.properties"/>

        <cobertura-instrument todir="...">
            <fileset dir="..." includes="**/*.class"/>
        </cobertura-instrument>

        <junit fork="yes">
            <formatter type="plain" usefile="no"/>
            <classpath>
                <pathelement location="..."/>
                <pathelement location="..."/>
                <pathelement location="..."/>
            </classpath>
            <batchtest fork="yes">
                <fileset dir="...">
                    <include name="**/*Test.java"/>
                </fileset>
            </batchtest>
        </junit>

        <cobertura-report destdir="...">
            <fileset dir="nantoka/src/src" includes="**/*.java"/>
            <fileset dir="kantoka/src" includes="**/*.java"/>
        </cobertura-report>
    </target>

2014年02月03日(月)

[shell][howto] 巨大ファイルの先頭付近だけを比較

巨大な2つのファイルの先頭付近だけを比較したいときは、シェルのプロセス置換が使えるのでメモ。プロセス置換はbashとzshなら使えるみたい。

% diff -u <(head -100 a) <(head -100 b)

headの引数を2回書かないとけないのは冗長だなあ。


2023年02月03日(金)

[shell][unix] nohupは必要

以前、Bashがデフォルトではログアウト時にSIGHUPシグナルをジョブへ送らないことをメモした。

だから、Bash使用時にnohupコマンドを使う必要はないと思っていたが、そうではなかった。nohupは必要だ。

単にログアウトした時にはSIGHUPは送られないのだけれど、ログインした状態で端末ソフト(自分の環境だとWindows Terminal)を終了するとSIGHUPは送られるようで、このときバックグラウンドプロセスは終了してしまう。

nohupは指定したコマンドがSIGHUPを無視するようにしてくれるので、使っているシェルの挙動とは無関係にSIGHUPによるプロセス終了を避けられる。ただし、SIGHUP以外のシグナルを受けてプロセスが終了してしまうことはあることに注意。

次のページが参考になるのでメモ。

自分でも試しておく。

huponexitオフでログアウトした場合

Bashのデフォルトの設定だと、ログアウトしてもバックグランドプロセスは終了しない。

% bash --login
$ shopt huponexit
huponexit       off
$ sleep 200 &
[1] 9224
$ nohup sleep 100 &> /dev/null &
[2] 9225
$ exit
logout
% ps u -C sleep
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
kenichi   9224  0.0  0.0   5364   560 pts/16   S    18:18   0:00 sleep 200
kenichi   9225  0.0  0.0   5364   560 pts/16   S    18:19   0:00 sleep 100

huponexitオンでログアウトした場合

huponexitを有効にすると、nohupを使っていないバックグランドプロセスは終了する。

% bash --login
$ shopt -s huponexit
$ shopt huponexit
huponexit       on
$ sleep 200 &
[1] 9233
$ nohup sleep 100 &> /dev/null &
[2] 9234
$ exit
logout
% ps u -C sleep
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
kenichi   9234  0.0  0.0   5364   560 pts/16   S    18:21   0:00 sleep 100

huponexitオフで端末ソフトを終了した場合

huponexitが無効であっても、ログイン状態で端末ソフトを終了するとnohupを使っていないバックグランドプロセスは終了する。

% bash --login
$ shopt huponexit
huponexit       off
$ sleep 200 &
[1] 9241
$ nohup sleep 100 &> /dev/null &
[2] 9242
$
(この状態で端末ソフトを終了する)
% ps u -C sleep
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
kenichi   9242  0.0  0.0   5364   496 ?        S    18:23   0:00 sleep 100