タグ

ブックマーク / 0xcc.net (5)

  • 月のオリジン - bkブログ

    スクリプト言語の挙動について、コマンドラインから試すには次のように実行します。 % perl -le 'print((localtime)[4])' 0 % echo "print ((new Date).getMonth())" | js 0 % ruby -e 'p Time.now.month' 1 % ruby -rdate -e 'p Date.today.month' 1 % perl -MDateTime -le 'print DateTime->now->month' 1 % perl -MTime::Piece -le 'print Time::Piece->new->mon' 1 % python -c 'import time; print time.localtime()[1]' 1 % python -c 'import datetime; print datet

    qnighy
    qnighy 2013/04/29
  • 自然言語処理 悪魔の辞典

    言い換え (paraphrase) 都合の悪いことを別の表現でごまかすこと。物は言い様。 例: 「わがまま→自分の意思をしっかり持っている人」 「不潔→ワイルド系」「くだらない研究→興味深い研究」 「役に立たない研究→基礎研究」 意味論 (semantics) 意味論の意味は意味論の意味論によって定義される。 SVM (support vector machine) ポスト決定木の最右翼。決定木を参照のこと。 エラー率 (error rate) 精度の向上が芳しくないときに用いる。精度が 0.01 % 上がりま した、と言わずに、エラー率が 5%下がりました、と言うとよい。 機械学習 (machine learning) 自己の学習をあきらめた人間の最後のよりどころ。 形態素解析 (morphological analysis) 文を形態素に分割すること。形態素が何であるかは永遠の謎。 決

    qnighy
    qnighy 2012/03/31
  • いやなブログ: 普通のやつらの下を行け: ptrace で実行中のプロセスにちょっかいを出す

    普通のやつらの下を行け: ptrace で実行中のプロセスにちょっかいを出す Linux などの多くの Unix 的なOS には ptrace というシステムコールがあります。 ptrace を使うと実行中のプロセスに対して、レジスタの書き換えやメモリ上のデータの書き換えといったさまざまな操作を行うことができます。 普通のやつらの下を行けの第6回として、今回は ptrace を使って実行中のプロセスにちょっかいを出す方法を取り上げたいと思います。 ptrace とは デバッガの理論と実装 に次のような記述があります。 Unix の ptrace() は物のデバッガ API (アプリケーションプログラムインターフェイス) の一例であり、商品に相応しい品質を持ったデバッガをサポートするために設計された、最初の専用 API の1つである。 ptrace はデバッガ用に作られた API のようで

    qnighy
    qnighy 2011/02/21
  • ある程度の年齢を迎えたプログラマが抱える悩み - bkブログ

    ある程度の年齢を迎えたプログラマが抱える悩み ある程度の年齢を迎えたプログラマが抱える悩みに、「若手のプログラマと比べて、どうやって価値を出していくか」という問題があります。これは言い換えれば「同じような生産性であれば、相対的に給料の低い若手のプログラマに置き換えられてしまうのではないか」という悩みです。 この問題のひとつの解決策は、プログラマ以外の仕事のポジション(たとえば管理職など)に移ることですが、他のポジションには向いていない、まだまだ現役でプログラマをやりたいという場合にどんな戦略があるか考えてみました。なお、後述するように、以下に挙げた戦略は相反するものではなく、組み合わせが可能です。 エキスパート戦略 この分野ではトップクラス、というレベルの専門性を身につけ、その分野に特化してキャリアを築くという戦略です。たとえば、ネットワークやセキュリティといった分野で一流と認められる専門

    qnighy
    qnighy 2010/09/22
    0xcc
  • 浮動小数点演算ではまった話 - bkブログ

    浮動小数点演算ではまった話 浮動小数点演算のありがちな問題ではまりました。 いろいろ調べているうちに x86 特有のちょっとおもしろい 現象に遭遇したので紹介したいと思います。 パーセンテージの計算 簡単な C のプログラムでパーセンテージを計算しようと思い、 次のようなコードを書きました。 int x, y; ... int a = (double)x / y * 100; int a = x * 100 / y としないのは、 x が大きい場合に x * 100 が オーバーフローを起こす (INT_MAX を越える) ためです。 このコードは一見、期待通りに動いていたのですが、 しばらく使っていると、手元の環境では x = 53, y = 100 のときに a は 53 ではなく 52 になることに気づきました。 これは次の理由によります。 式の最初の (double)53 / 10

    qnighy
    qnighy 2010/06/04
  • 1