タグ

ブックマーク / nishiohirokazu.hatenadiary.org (12)

  • ネタとしての黒歴史と本当の黒歴史について - 西尾泰和のはてなダイアリー

    「締め切りがないと、到達しないすごく遠いゴールに向かって走ってしまう」──カーネルハッカー・小崎資広(2) | サイボウズ式が公開されました。 公開前は「締め切りを設定することのメリット」に関して、いくつか他の実例を紹介したりしようと思っていたのですが、いざ公開してみると意外なことに小崎さんが勉強会発表動画を「黒歴史」と呼んだことについての反応がいくつかありました。 考えてみてください。自分がインタビューを受けて、そのインタビュー内容は記事になることがわかっているとします。「当に人に知られたくない過去」について言及するでしょうか。 また自分の「当に人に知られたくない過去」が動画として公開されている場合、その動画を公開した人に「おい、やめろよ」と言わないってことが考えられるでしょうか。言われた勉強会の主催者が「やだよ、消さないよ」と言って公開し続けることがありえるでしょうか。 ないない、

    ネタとしての黒歴史と本当の黒歴史について - 西尾泰和のはてなダイアリー
    dowhile
    dowhile 2014/08/21
  • 猫を飼い始めた理由 - 西尾泰和のはてなダイアリー

    を飼い始めたという話をすると、よく聞かれるのが「なぜ?」という質問です。 僕自身は動物を飼ったことがありません。あるとすれば、小学生の時にキャンプに行って、川の水の中にいる半透明のプランクトンを捕まえ、ジューCの空き容器に入れて持って帰ってきて、蓋を閉めたまま放置したら、翌日には全部白くなって浮かんでた、というのが唯一のペット飼育体験。 一方、は鳥とか亀とかハムスターとか、色々なものを飼った経験があるそうです。で、を飼いたいのも。僕はペット飼育経験がないのでを飼うことにも一抹の不安があったけども「不安があるけど行動する」と「不安を避けて行動せず何も変化しない」の二択だと時々エイヤッと前者を選ぶタイプ。 そんなわけでを飼うこと自体は前々から決まっていて、去年の2月にはを飼える家への引っ越しを決めていました。(家を探したのはだけど。この辺の苦労話はまた別のエントリーで書きます)

    猫を飼い始めた理由 - 西尾泰和のはてなダイアリー
    dowhile
    dowhile 2014/07/23
  • コード進行を五度圏で可視化してみた - 西尾泰和のはてなダイアリー

    Songleの外部埋め込みプレイヤーがJavaScriptでカスタマイズできるので、それを利用して五度圏の可視化をするデモを作ってみました。 スピッツの「ロビンソン」 中島みゆきの「地上の星」 きゃりーぱみゅぱみゅの「ファッションモンスター」 ロビンソンはコードの動きがわりとおとなしいですね。一方ファッションモンスターはGm Fmを交互にピコピコ動いてダンスを見ているような楽しさが。 Songleは音楽の理解を支援するサービスで、楽曲からコード進行などの情報を抽出し、可視化したり、コード進行を強調して再生したりしてくれます。詳しくはSongleのサイトの解説をごらんください。外部埋め込みプレイヤーを使うと、JavaScriptからそのコードの情報が取れるようになるので、以前から興味のあった五度圏での可視化を試してみました。100行未満のソースコードで実現できてとても手軽でした。このデモのソ

    コード進行を五度圏で可視化してみた - 西尾泰和のはてなダイアリー
    dowhile
    dowhile 2014/06/16
  • 量子将棋が面白い - 西尾泰和のはてなダイアリー

    量子将棋というゲームが遊べるようになったということで、さっそくプレイしてみた。ルールは簡単に言うと、すべての駒は量子的な重ね合わせの状態にあり、どう動かしたかによって駒の状態が収束する。王将に収束した駒を取れば勝ち。(追記: ルールの解説書きました: 量子将棋 Q&A) 2勝2敗で結構面白かったので流れ去ってアクセスできなくなる前に感想をメモ。 1回目(勝ち) 棋譜: http://shogitter.com/kifu/884 僕の戦略 駒の種別が確定すれば取れる選択肢が減る。ということは必要がない限り駒は動かないほうが良い。動かさなければいけないのであれば歩の振りをするのが一番可能性が狭まらない。 王将に確定した駒を取れば勝ちなのであれば、相手の「王将かもしれない駒」をどんどん取って行って可能性を狭めるべき。 感想 駒の上にマウスポインタを置くと可能性のある駒の種類が出てくる 飛車を取る

    量子将棋が面白い - 西尾泰和のはてなダイアリー
    dowhile
    dowhile 2013/10/28
  • やる気を出すシステム5000ユーザ突破記念エントリー - 西尾泰和のはてなダイアリー

    ひっそりと運用していた質問に答えるとやる気を出すためのアドバイスをしてくれるシステムがつい先日で5000ユーザーを突破しました。このシステムのおかげでやる気が出たという方も2000人いるようで、作ったかいがあったというものです。 ところでこのシステムは、用意した回答の中から適切なものが見つけられなかった場合に「なぜやる気がでないのだと思いますか?」と自由記述で問いかけて、あらためて自分の気持ちを見つめてもらうというのをやっています。これだけデータが集まってくると、この自由記述の中にも共通のパターンが見えてきます。そこで、5000ユーザ突破記念ということでいくつかピックアップして解説します。 自虐的レッテル貼り 「なぜやる気がでないのだと思いますか?」という質問に対して「ぐーたらだから」「クズだから」「怠け者だから」「ダメ人間だから」「いつまでたっても一人前の仕事ができないから」という種の回

    やる気を出すシステム5000ユーザ突破記念エントリー - 西尾泰和のはてなダイアリー
    dowhile
    dowhile 2013/09/01
  • 再帰呼び出しを再帰呼び出しなしで実現 - 西尾泰和のはてなダイアリー

    拙著「コーディングを支える技術」の第5章「関数」では、P.50で「再帰呼び出しを使っているプログラムは、再帰呼び出しを使わなくても書くことができる」と説明しました。この件に関してここで補足記事として解説することにしました。 P.53の簡単な再帰呼び出しの例(total関数)をターゲットにします。これは空行とコメントを除くと8行の簡単な例です。このコードから、挙動を変えずに再帰呼び出しを取り除いてみましょう。腕に自身のある人はは続きを読む前に自分で実装してみるとよいでしょう。 チャレンジする人向けの注意点 今回の対象では再帰呼び出しをしながら行う処理が「要素の足し算」でした。足し算は順番を入れ替えても結果が同じです。なので、うっかり計算の順番を変えてしまっても、結果からは間違いに気付けません。例えば深さ優先探索を幅優先探索に変えてしまうと、[1, [2, 3], 4]が来の1, 2, 3,

    再帰呼び出しを再帰呼び出しなしで実現 - 西尾泰和のはてなダイアリー
    dowhile
    dowhile 2013/06/01
    アセンブラをC++で開いたってことだよね。
  • 「自信がない」は自信の持ちすぎ - 西尾泰和のはてなダイアリー

    「原稿書かなきゃいけないんだけどなぁ」とか言いながら現実逃避で読んでいた「心は病気―役立つ初期仏教法話〈2〉」に心に刺さる言葉があったのでここに書いておく。 正確な引用ではないので、正確な言葉が知りたければP.60から3ページくらいを読むとよい。 人間が自信をなくす原因は、自信の持ちすぎである。 自分が「この程度の仕事サクッと終わらせられる」と思っているのに、実際にやるとうまくいかないとき、人は自信をなくす。 「抜群のスピーチをしよう」と思って、実際にはうまく喋れなくて、自信をなくす。 妄想の中の自分が事実に反して素晴らしすぎるから、その「妄想の中の素晴らしい自分」が振る舞うように振舞おうとして、できないので苦しむ。 「自分の仕事に自信がない」というのは、奇跡的な成功を頭で妄想しているせい。現実の自分ができるようにしかできない。できることをすればよい。「自分は精一杯やった」と思える状態を

    「自信がない」は自信の持ちすぎ - 西尾泰和のはてなダイアリー
    dowhile
    dowhile 2012/11/17
  • makeがよくわからない日記 - 西尾泰和のはてなダイアリー

    複数の*.jsを元にして、別のx.jsを作りたいとする。まあ例えば具体的には複数の*.jsをコンパイルして一つのJSファイルにするとかね。コンパイルの部分は質ではないので「catで結合する」で代用することにしよう。 Q1 ソースコードのファイル名は未知とする。というわけでワイルドカードを使うことになるだろう。 x.js: *.js cat $? > x.jsいま、カレントディレクトリにa.jsとb.jsがあるとする。 $ cat > a.js a $ cat > b.js bこの状態でmake x.jsすると1回目は期待通りにa.jsとb.jsを結合したx.jsが作られる。しかし、もう一度実行するとx.js自体が依存ファイルの*.jsにマッチしてしまうためエラーになる。 $ make x.js cat a.js b.js > x.js $ make x.js make: Circular

    makeがよくわからない日記 - 西尾泰和のはてなダイアリー
    dowhile
    dowhile 2012/05/30
    make でglob展開使うのが悪いのでは
  • Jubatusワークショップに行って来ました - 西尾泰和のはてなダイアリー

    昨日行われたJubatus Workshopに参加してきました。ref. 第一回 Jubatus Workshop #jubatus - Togetter JubatusOfficial Presentations 以下は僕の解釈も含めたまとめ ユバタスの必要性 データはこれからも増加していく。今多いってことより、今後どんどん増えるということが重要な問題 データの活用は 蓄積→理解→予測。世の中はようやく蓄積が出来るようになり理解に向かい始めた段階. CPUの速度が向上する速度よりも、データ量の増える速度の方が大きい。必然的にデータに対する処理で並列性を考えなければいけない状況が増えてくる。 既存のシステムとの差 既存のシステムでは 1. リアルタイム性の確保 2. データの水平分散処理 3. 高度な解析 の3つを兼ね備えることが困難。 MapReduceは処理の自由度は高いが基的にバッ

    Jubatusワークショップに行って来ました - 西尾泰和のはてなダイアリー
    dowhile
    dowhile 2011/11/08
  • 黒魔術について - 西尾泰和のはてなダイアリー

    Twitterから引用 黒魔術を使ってDSLを作り易くしている言語の作者たちって、ファイル冒頭でuse BlackMagic;しないと黒魔術使えないようにするとかuse BlackMagic::MetaClassHack;とか書かせてどんな魔術が使われているか明示的にするとか考えないのかなぁ nishio/nishio hirokazu 2010-09-25 15:53:05 PythonのPEP 20には「明示的なのは暗黙的なのより良い(Explicit is better than implicit)」と書かれており、「C++の設計と進化」P.284には「柔軟性や表現の自由を求める気持ちと、安全性、予見性、そして単純性を望む気持ちは衝突する」と書かれている。実際にOption Explicitやuse strictなどの「柔らかくしすぎた言語を固くするオプション」が導入された事例もある

    黒魔術について - 西尾泰和のはてなダイアリー
    dowhile
    dowhile 2010/09/27
    今時DSLを作り易くする機能が言語に含まれている程度のことを黒魔術と呼んでいいのかな
  • Ruby 1.9.2リリースとWEBrick脆弱性問題の顛末 - 西尾泰和のはてなダイアリー

    はい、Ruby 1.9.2がリリースされましたね。このバージョンではWEBrick にゼロデイ攻撃可能な脆弱性 - スラッシュドット・ジャパンで紹介されている脆弱性が僕が書いたパッチで修正されているわけなのですけど、そもそもなんで僕が修正しているのか、って顛末がわりと面白いので紹介します。 Apple、upstreamに報告してくれないまま脆弱性をCVEに届け出る upstreamに連絡が来ないまま脆弱性が公開される ruby-devにAppleが書いたと思われるパッチが貼られる(Appleでない人間によって) パッチのライセンスが不明なので取り込めない ライセンスを問い合わせるAppleの窓口が不明なので問い合わせもできない ruby-devを読んだ人はライセンス上安全なパッチを書けない 脆弱性だから話は非公開に進めたい yuguiさんがruby-devを読んでない僕に書かせることにする

    Ruby 1.9.2リリースとWEBrick脆弱性問題の顛末 - 西尾泰和のはてなダイアリー
    dowhile
    dowhile 2010/08/20
  • 最もタメになる「初心者用言語」は Python! - 西尾泰和のはてなダイアリー

    追記:これはネタだったのですが、思いの外ページランクが高いみたいで「初心者 Python」で検索した人がここに来てしまうそうです。 当にPython初めての人は下の記事を読むといいと思います。 Pythonの紹介 Instant Hacking Python チュートリアル - 最もタメになる「初心者用言語」は JavaScript。 - IT戦記 http://d.hatena.ne.jp/amachang/20080204/1202096633 Pythonだってクロージャつくれるもんっ!>< // JS function make_counter(){ var x = 0; return function counter(){ x++; console.log(x); return counter; } } make_counter()()()() # Python def mak

    最もタメになる「初心者用言語」は Python! - 西尾泰和のはてなダイアリー
    dowhile
    dowhile 2008/02/05
    せんせーこのメソッド定義のselfってなんですか?
  • 1