OutOfMemoryErrorを発生させるソース

OutOfMemoryErrorを簡単に発生させるソースコード
一覧検索などの処理をこんな感じで書くと、本番運用でデータ量が想定より増えると一撃で死亡します。

public class MemoryError {
  public static void main(String[] args) {
    Runtime runtime = Runtime.getRuntime();
    List list = new ArrayList();
    for (int i = 0; i < 100000; i++) {
      Map map = new HashMap(1000);    
      list.add(map);
      System.out.println(runtime.freeMemory() + " / " + runtime.maxMemory());
    }
    System.out.println("end"); 
  }
}

職人学(★★★★★)

職人学

職人学

「職人の誇り」が伝わってきます。そういった意味で以前読んだ「My Job Went To India」のDryな感じとは随分違う。本書は町工場の職人の話ですが、システム開発に置き換えても多くの示唆を得ることができると思います。自分もこんな風にありたい。がんばりたい。


特に印象的なだったものをメモ。

  • 職人は限りなく無個性なものを作るために、そのものを作り出すプロセスで限りなく個性を発揮する。
  • 治具(JIGU):その仕事のために作成する専用工具。ノウハウの結集。
  • プロセスをイメージできない人は、結局できない。
  • 検査で不合格品を出すのは恥である。
  • 検査機は結果を見るものではなく、プロセスがうまくいっているかをみるための道具。
  • レストアによる技能伝承

sudo

sudoコマンドの設定メモ。
まずはsudoパッケージをインストール。

$ su
Password:
# apt-get install sudo

続いて、/etc/sudoersファイルに権限設定を追加。この作業はvisudoコマンドで実施。

# visudo

以下のように編集したら完了。

# User privilege specification
root    ALL=(ALL) ALL
hoge    ALL=(ALL) ALL

確認。ログは/var/log/auth.logに出力されます。

# exit
$ sudo apt-get -s dist-upgrade
Password:

経済学的思考のセンス(★★★☆☆)

  • 身長が収入に比例するだとか、本当かよ!?的な法則が色々書いてあった。
  • 図書館で借りて期限ギリギリだったので最後まで読めず。残念。
  • こういう事に人生かけて調べるってすごいなあ、と素直に思いました。

大航海時代とモルッカ諸島(★★★☆☆)

  • スペインとポルトガルに一方的に東南アジア諸国は植民地化されたのかと思っていたが、各諸島の王国間での覇権争いでお互いに利害関係にあったのだと初めて知った。
  • フランシスコ・セランなどの英雄的な人物の存在を始めてしった。知らないことばっかりだ。マニアックだけど面白い。
  • 文章構成としては予備知識がないと読みづらい。いきなり丁字とか言われるとツライ。

モンゴル帝国の興亡(★★★☆☆)

モンゴル帝国の興亡 (ちくま新書)

モンゴル帝国の興亡 (ちくま新書)

  • 従うものは助け、抵抗するものは皆殺し、というわかりやすい戦略。
  • オスマントルコ帝国やロシア等々の起源がモンゴルにあったというは初めて知った。チンギスハーンが世界を創った、いうのは言い過ぎでないんだなあ。
  • 読み物としては、教科書的に事実を淡々と書いているような感じで、少々退屈だった。残念。