2009年4月26日

Pythonの基本思想を知る方法

Pythonインタプリタで、Pythonの基本思想を知る簡単な方法がある。
インタプリタを起動して以下のコマンドを入力する。それだけ。(英語だけど)

Python 2.6.1 
Type "help", "copyright", "credits" or "license" for more information.
>>> import this

関連URL
PEP 20 -- The Zen of Python
The Zen of Python - PyJUG

2009年4月21日

ニセコに春スキーしに行ってきたよ

毎年とは行かないが5月のGWは大抵ニセコへ行って春スキーをしている。しかし今シーズンは雪が少なかったので5月まで持つのか心配。ちょうど天気も良かったので「行くか」となった。

羊蹄山
羊蹄山
P1000103
ひらふ
P1000104
ニセコからの羊蹄山
ニセコライス
ニセコライス(というらしい)
ふきのとう
春なのでふきのとうも見える

行ってみると思っていたよりも雪が残っていた。たぶん5月までも残っているだろう。

スキーから帰宅後は焼肉、というが典型パターン

CLR/H第40回勉強会に参加してきた

CLR/Hの第40回勉強会に参加してきた。

  1. ハードウェア情報アプリケーションの開発 ~茨の道の歩き方~
    • Crystal Disc Infoを作った
    • Crystal Markも作った
    • Crystalシリーズ作った
    • 低レイヤープログラミングは楽しい
    • ベンチマークソフト
    • 各ハードウェアのテストモジュール書くのは大変
    • スコアの算出も大変
    • コンパイラによってもスコアが変わってくる
    • ディクスベンチマーク
    • 単位MB/sは、1024*1024と1000*1000とがあるので注意
    • ダイレクトアクセス型のディクスベンチマークでOSあるディスクを書き込みテストは自殺
    • CPU
    • ユーザーモードとカーネルモードがある。
    • MSR:マシン固有レジスタ
    • RDMSR(読み込み)とWRMSR(書き込み)
    • ユーザーモードでRDMSRすると一般保護例外
    • カーネルモードで無効なアドレスを読むと、Blue Screen of Death
    • Blue Screen of Death専用マシンを用意
    • ディスク情報
    • S.M.A.R.T.:ハードディスクの故障を予測
    • 最近のHDDにはたいてい搭載されている
    • USB接続のHDDでは見れない
    • ライブラリWinRing0も作った
    • GUIの多言語にも力を入れている
  2. 遺伝的アルゴリズム ~ことはじめ~
    • 数学ガール良いよね
    • 遺伝的アルゴリズム:1975年に提案された
    • 生物の進化をヒントにしている
    • メタヒューリスティクス:汎用的に利用できるある程度正解に近い解を得る方法
    • 「生物のヒントにヒントを得た、汎用的に利用できる、定式化された形で表現したもの」
    • 「初期集合」「評価」「選択」「交叉」「変異」
    • 100%最適な解が得られるとは限らない
    • 遺伝子の表現は通常「0」と「1」で表現する。整数の配列でもかまわない
    • 場合によっては、全く最適ではない解に収束する場合もある
    • 初期集合や交叉・選択を操作することで、より効率的に最適解を得る事ができる

低レイヤープログラミングは面白そうだ。GUI多言語の話はセッションではしなかったが、結構力を入れているようでP1000110GUIの仕組みも面白い工夫がされているそうだ。見た目は重要。 これほんと。

遺伝的アルゴリズムでは、最初難しくてついていけてなかったが、最後のDemoを見て何とかイメージつかめた。アルゴリズムについて真剣に話を聞いたのは初めてだったかも。

2009年4月12日

第2回北海道情報セキュリティ勉強会に参加してきた

第2回北海道情報セキュリティ勉強会に参加してきた。今回の会場は札幌コンベンションセンター。でかい。

  1. インシデントレスポンスの現場から ~事件は会議室で起きているんじゃない。現場で起きているんだ。
    • 2008年12月にボットの被害が非常に多い
    • 偽アンチウィルスソフトをインストールするとHTTPリクエストのユーザーエージェントを改ざんされる
    • SQLインジェクションの目的が、情報盗む事からWebページ改ざんへ変わってきた
    • 被害が自動的に拡大される
    • 悪いことは当然監視を避けて行う
    • 2chサーバはキムヨナには勝ったが、イチローには負けた
    • Tomcatのアプリケーションマネージャでアプリケーションアップロードできる
    • エラー情報を表示することによって、サーバ内部の構成が把握できてしまう
    • Moodleの脆弱性が狙われた。公式ページの使用サイト一覧が利用されたのではないか
    • 「鎖は一番弱い部分が切れる」
    • 人事異動が行われたこの時期が危険
    • 「実装前の対策」:一番大切
    • 「見える仕組み」:起きてしまった時にすぐにわかる仕組みが必要。起こること前提に考える
    • 「組織間の連携」:情報の共有、伝達が不十分だと危険
    • 「入り鉄砲に出女」これ大事

講師の川口さんは本当に面白い。休憩時間におやつ時間がある。チーズケーキおいしかった。八つ橋も頂いた。八つ橋目的に参加したといっても良いくらい八つ橋好きだ。おいしかった。

懇親会ではまた楽しい時間が過ごす事ができた。1件目で散々食べた後にも関わらず、2次会でまさかのもつ鍋屋。しかしもつ鍋、おいしくて普通に食べてしまった。翌日起きたら二日酔いで具合悪い&おなかいっぱい、というダブルパンチ。

セキュリティ対策について、起こること前提で考えるというのは非常に重要だと思った。もちろん起こらないように対策するのは必要で、開発者も最大の努力をすべきだが、やはり起こるものは起こる。ゴルゴからは逃れられない。だから起こってしまった時にどうするかという事も考えておく必要があるだろうと思った。
今でも「小さな恋人」は人気商品である。

2009年4月8日

2009年4月6日

人工衛星

とりあえずは、大きな被害がなくてよかった。しかし本当に発射するんだ。

【北ミサイル発射】「打ち上げは失敗」と米宇宙司令部 - MSN産経ニュース

北米航空宇宙防衛司令部(NORAD)は5日、北朝鮮が打ち上げたと主張する人工衛星「光明星2号」について、「何も軌道に乗らなかった」として、打ち上げが失敗したとの見方を示した。
MSN産経ニュース

これに対し、北朝鮮の朝鮮中央通信は、人工衛星が同日、運搬ロケット「銀河2号」によって舞水端里の東海衛星発射場から打ち上げられ、軌道進入に成功したと報じている。
MSN産経ニュース

アメリカの見方を信じたとして、太平洋に落ちたことは、人工衛星としては失敗だろうけど、北朝鮮の目的としては成功と言えるのかも。これだけのミサイルを持っているぞ、と示すことができたわけだ。

ミサイルの軌道を示した画像がニュースに出ていた。

「八峰町」。