メモの日々


2001年06月06日(水) 営業研修

今日は一日中営業研修なのだ。おれも営業マンになるのかな。顔の輪郭を書いたりした。

SolarisのデスクトップはGNOMEになるらしい。Sunからメイル来てた。


2002年06月06日(木) がー眠い日

会社

  • 9:45 今日はスーツを着ている。JR新宿駅で初めてエスカレータで降りてみた。超楽ちんで便利。入社7年目にして渋谷での乗車位置を変更することを決意。
  • 10:35 Windowsプロに載っていたDomainView--をインストールしてみた。どうということはなかった。
  • 同様にWindowsプロに載っていたWindowsのCD-ROM中のSupportにあるToolsをインストールした。よく分からないツールばかりだけれど、WinDiffだけは使えそうな気がしています。
  • 21:15 なんだもう夜です。残業久々。搬入搬出の資料は一区切りした。今日はWorldComというIDCの話を聞いたのとTDの案件の話を聞いたのをした。疲れる。
  • 21:30 あー、Kのパフォーマンス測定をどうするか考えないといけないのだ。明日やる。

[book] 共生虫(村上龍)

共生虫(村上竜/著)読了。普通。読まずに死んでも後悔する必要は無い。村上龍で人が死なない話ってあるのだろうか。

[サッカー] ドイツvsアイルランド

どっちのチームにもあまり興味なくどちらが勝ってもよかったのであまり面白くない。ヤンカーはでかいなあ。こんな試合よりポルトガルvsアメリカを見たかった。

テレビ/本

  • 日経Windowsプロ6月号。.NETの特集。全く興味が湧かない。乗り遅れているのかしら。サイボウズのワークフローを重宝している会社があるんだって。

2003年06月06日(金)

[life]会社へ行く

打ち合わせ長ーい打ち合わせに出席。事情を分かっていない人が、偉いからというだけで会議を仕切ろうとするとうまくいかないね。詰問するだけでは何の解決にもならない。打ち合わせの前半は何の意味もなかった。丸投げされたSBさんはあの状況でよくまとめたと思います。ご苦労さま。

仕事のTODO

  • 職種を扱えるようにする
  • 仕様の不明な点をクリアにする

2004年06月06日(日)

[life] プレゼント当選した (2)

またIDGのプレゼント当選してしまった。JavaWorld6月号でやってた本50冊のプレゼント。すごいすごい。

当たったのはEffective Java。意外に薄い本なのね。57項目の教えが書かれている。

[hard] 割り付け印刷ができない

Sambaで共有しているPIXUS 560iにてWindows PCから割り付け印刷ができない。「ページ印刷」タブにある「印刷の種類」メニューに「割り付け印刷」が出てこない。なんでや。

サポートサイトにある ネットワーク上でPIXUSを共有する(プリントサーバがWindowsXP/2000の場合)

プリントサーバ機がWindows Me/Windows 98でクライアント機がWindows XP/Windows 2000の場合、ポイントアンドプリントインストールを行うと、割り付け印刷、冊子印刷、両面印刷、逆順で印刷、部単位で印刷、スタンプ/背景印刷、プレビューが使えなくなります。

クライアント機でプリンタドライバのプロパティを開き、[ポート]タブの[ポートの追加]を選んで、サーバのプリンタ名をネットワークパス付で入力してください。

とあるのを見つけたが、ポートの情報は既に「サーバのプリンタ名をネットワークパス付」で設定されおり手の打ちようがない。どうしたらいいのかな。

プリンタをWindows PCに直結すれば割り付け印刷のメニューは出てくる。何が違うのかどこで判断しているのか。

新聞メモ

6月6日の産経新聞より。

「伏魔殿」社会保険庁の実態(中)

全国13ヵ所に建設されたリゾート施設「グリーンピア」関連に使われた保険料は昭和48年度から平成14年度までで2900億円。13ヵ所のうち7ヵ所が赤字で、平成17年度までに全てを廃止することになっている。グリーンピア以外にも全国265ヵ所に年金福祉施設があり、どこも経営はふるわない。

「年金受給者が有意義な老後を送り、年金加入者が楽しく余暇を過ごすため」が設置目的だったというが、ある政府関係者はこういう。

「当時、潤沢な保険料で、うまくいけばひともうけできるし、悪くても、厚労省や社会保険庁幹部らの天下り先の確保ができる、と考えたのでしょう」

やること

  • プリンタ処分

2006年06月06日(火)

[java][soft] 「PMD」

PMD scans Java source code and looks for potential problems

ソースコード検査ツールのPMDをメモ。MYCOMジャーナルより。PMDを紹介しているページもちょっとメモ。

[dev][net][soft][c++] ACE

以前NSURくんが紹介していたThe ADAPTIVE Communication Environmentについてちょっとメモ。

http://www.geocities.jp/kagaruby/ace.html に論文の翻訳があった。

ACEはイベントの処理、イベントハンドラの起動、コネクションの確立、ルーティング、アプリケーションサービスの動的コンフィグレーション、並列性の制御といった通信ソフトウェア共通の処理を行なう多くのOSの上で動作可能な再利用可能なC++ラッパー、フレームワークとクラスカテゴリの豊富なセットを提供する。

4894714787 「C++ネットワークプログラミング」という本で解説されているようだ。

C++ってのがなあと思っていたら、Javaへの移植もあった。

[vim] 文字コードの確認

VIMで、開いているファイルの文字コードを確認したい場合は

:set fileencoding?

やること

  • テーブル生成
  • デザイン変更
  • プリンタインク
  • 保険
  • 松井
  • PC接続用ケーブル
  • Cの本
  • 単3乾電池
本日のツッコミ(全1件) [ツッコミを入れる]

TrackBack [http://kogakogakoga.blog96.fc2.com/blog-entry-4470.html もぼ..]


2009年06月06日(土)

  • ズボンとシャツを買った。安いやつ。最近は安物でもあまり気にならない。

[サッカー] ワールドカップアジア最終予選 日本vsウズベキスタン(タシケント)

勝てばワールドカップ出場が決まる試合。日本の先発は

         岡崎
  大久保 憲剛 俊輔
      遠藤 長谷部
長友 闘莉王 中澤 駒野
         楢崎

で内田が体調不良で休み。最初はよかったが途中から日本はボールを繋げず押し込まれる展開。中澤大忙し。ウズベキスタンがシュートをふかすことが多く助けられた。岡崎はいい仕事をした。岡崎が代表で活躍するとはなあ。最後は長谷部が退場になり岡田監督も退席と大変な展開になった。


2011年06月06日(月)

[tdiary] pre_wrap.rbへのパッチ

昨日tDiaryを色々調べている中でpre_wrap.rbがちょっとだけおかしいことに気付いたので開発MLに報告した、ということをメモ。しょうもないパッチですけど。

もう1つ修正の提案があるのだけれど、そちらはgithubを使って報告したい。githubって日本語化したと聞いていて、そんな画面を見た記憶もあるのだが、今アクセスしてみると英語でしか表示されない。表示言語を切り替えるメニューも見当たらない。

[tdiary][web] IE8で表示が崩れていた

このページをIE8で開くとサイドバーが下に表示されてしまうことがあるのに気付いた。ウインドウの幅を変えると直ったりする。何なのこれ。

他にも、IEだと想定外の表示のされ方をしているページを色々見つけてしまった。うう、毎度のことだけど。Chrome/Operaでも見ておかなきゃ。


2016年06月06日(月)

[java] JUnitでparameterized testなどを使うサンプル

6月からJavaを使っている。JUnitのパラメータ化テストなどの機能を使ったので忘れないようにメモ。

を使った。パラメータ化テストは以前にTheoriesを使ったことがあるのだけれど、今回はParameterized testsを使ってみた。

次のサンプルでは、テストメソッドは testAdd(), testAdd2(), testDivide() の3つだけだけれどパラメータ化により15件のテストが実行される。testDivide()の実装はいまいち。

// テスト対象のクラス
public class Calculator {
    public static int add(int x, int y) {
        return x + y;
    }

    public static int divide(int x, int y) {
        return x / y;
    }
}
import java.util.Arrays;
import org.junit.Test;
import static org.junit.Assert.*;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import org.junit.runners.Parameterized.Parameters;
import static org.hamcrest.CoreMatchers.is;
import org.junit.Rule;
import org.junit.experimental.runners.Enclosed;
import org.junit.rules.ExpectedException;
import org.junit.runners.Parameterized.Parameter;

// Calculatorのadd()とdivide()のテストを束ねるクラス。
@RunWith(Enclosed.class)
public class CalculatorTest {
    // Calculator::add のテスト
    @RunWith(Parameterized.class)
    public static class AddTest {
        // AddTest用のテストパラメータ
        @Parameters(name = "{index}: {0}")
        public static Iterable<P> data() {
            return Arrays.asList(
                    new P(1, 1, 2),
                    new P(1, 2, 3),
                    new P(0, 1, 1),
                    new P(-1, 1, 10), // わざとテストを失敗させる
                    new P(-1, 1, 0)
            );
        }

        // AddTest用テストパラメータを保持するクラス
        public static class P {
            int x;
            int y;
            int expected;

            P(int x, int y, int expected) {
                this.x = x;
                this.y = y;
                this.expected = expected;
            }

            @Override
            public String toString() {
                return String.format("x=%d, y=%d", x, y);
            }
        }

        // テストパラメータはメンバ変数に保持することになる
        @Parameter
        public P p;

        // これがテスト本体
        @Test
        public void testAdd() {
            assertThat(Calculator.add(p.x, p.y), is(p.expected));
        }

        @Test
        public void testAdd2() {
            assertThat(Calculator.add(p.y, p.x), is(p.expected));
        }
    }

    // Calculator::divide のテスト
    @RunWith(Parameterized.class)
    public static class DivideTest {
        @Parameters(name = "{index}: {0}")
        public static Iterable<P> data() {
            return Arrays.asList(
                    new P(1, 1, 1),
                    new P(1, 2, 0),
                    new P(0, 1, 0),
                    new P(-1, 0, null), // 例外が投げられるケース
                    new P(-1, 1, null)  // わざとテストを失敗させる
            );
        }

        public static class P {
            int x;
            int y;
            Integer expected;

            P(int x, int y, Integer expected) {
                this.x = x;
                this.y = y;
                this.expected = expected;
            }

            @Override
            public String toString() {
                return String.format("x=%d, y=%d", x, y);
            }
        }

        @Parameter
        public P p;

        // 例外を捕捉するのにExpectedExceptionルールを使う
        @Rule
        public ExpectedException thrown = ExpectedException.none();

        @Test
        public void testDivide() {
            // expectedがnullなら例外を捕捉することにする
            if (p.expected == null) thrown.expect(ArithmeticException.class);

            int result = Calculator.divide(p.x, p.y);

            if (p.expected != null) assertThat(result, is(p.expected));
        }
    }
}
Testsuite: CalculatorTest
Tests run: 15, Failures: 3, Errors: 0, Skipped: 0, Time elapsed: 0.047 sec

Testcase: testDivide[4: x=-1, y=1](CalculatorTest$DivideTest):	FAILED
Expected test to throw an instance of java.lang.ArithmeticException
junit.framework.AssertionFailedError: Expected test to throw an instance of java.lang.ArithmeticException


Testcase: testAdd[3: x=-1, y=1](CalculatorTest$AddTest):	FAILED

Expected: is <10>
     but: was <0>
junit.framework.AssertionFailedError: 
Expected: is <10>
     but: was <0>
	at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20)
	at CalculatorTest$AddTest.testAdd(CalculatorTest.java:56)


Testcase: testAdd2[3: x=-1, y=1](CalculatorTest$AddTest):	FAILED

Expected: is <10>
     but: was <0>
junit.framework.AssertionFailedError: 
Expected: is <10>
     but: was <0>
	at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20)
	at CalculatorTest$AddTest.testAdd2(CalculatorTest.java:61)

2024年06月06日(木)

[python] Pythonの構成情報を取得する

sysconfigモジュールを使うと、Pythonのインストールパスなどを得ることができる。

例えば、Python.h が置かれているパスは次のようにして得られる。

> python
Python 3.12.3 (tags/v3.12.3:f6650f9, Apr  9 2024, 14:05:25) [MSC v.1938 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import sysconfig
>>> print(sysconfig.get_path("include"))
C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.12_3.12.1008.0_x64__qbz5n2kfra8p0\Include
>>>

また、

python -m sysconfig

を実行するとsysconfigで得られる情報を一覧表示できる。欲しい項目だけを表示するオプションがあるといいのだけれど、そういうのは無いみたい。