タグ

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

  • 言語女子会2: varは必要?/privateがない? - 西尾泰和のはてなダイアリー

    言語女子会: undefとnullは両方必要?の続編です。 varは必要なの? とあるプログラミング言語が集う女子会にて: Python: JavaScriptちゃんってさ、なんでvarだらけなの? JavaScript: えっ、変? Python: varなんかいらなくない?私ぜんぜん持ってないよ? JavaScript: えー、じゃあ変数をどうやって宣言するの? Python: 宣言っていうか…「x = 1」みたいな代入文があれば変数xが必要なのって自明じゃない?宣言とか必要? Ruby: 必要ないよね。っていうか変数宣言とか古臭くない? JavaScript: そうかなー。 Python: 少しダサイかも。ほら断舎離ブームだし要らないものは捨てなきゃ! JavaScript: 要らないかなぁ、変数宣言。Pythonちゃんは関数がネストしているときに外側のスコープの変数に代入するのって

    言語女子会2: varは必要?/privateがない? - 西尾泰和のはてなダイアリー
    markup
    markup 2012/03/22
  • 言語女子会: undefとnullは両方必要? - 西尾泰和のはてなダイアリー

    Twitterのタイムラインが面白すぎて、ついうっかり言語を擬人化して脳内で言語女子会なるものを開いてしまいました。なお、登場人物と実在の人物は1対1に対応しません。 undefinedとnullの両方必要なの? とあるプログラミング言語が集う女子会にて: Perl: そういえばさ、なんでJavaScriptちゃんってundefinedとnullの両方もってるの? JavaScript: えっ、未定義の変数にアクセスした時undefined返したいじゃない? Python: 例外投げて死ねばいいじゃん Ruby: 例外投げて死ねばいいよね Python & Ruby: ねー♡ Java: いやそこは参照型ならnull、数値型なら0で初期化すべきでしょ C: これだから最近の若い子は…初期化にだってコストが掛かるんだからね!デフォルトで初期化するなんて無駄遣いよ!必要な人だけが責任をもって初

    言語女子会: undefとnullは両方必要? - 西尾泰和のはてなダイアリー
    markup
    markup 2012/03/18
  • 次の日曜日、新感覚シューティングゲームを展示します - 西尾泰和のはてなダイアリー

    次の日曜日、ちょっと面白いものを展示します。でかいテーブル型モニターで、フィギュアを使って直感的に操作できる新感覚シューティングゲーム!位置だけでなく角度も制御できるので、今までにない体験ができると思います。 イベントは18日のトレジャーフェスタ、場所は東京ビックサイト(東京国際展示場)東4ホールです。一緒に妖精眼鏡と、同じく未踏発のプロジェクトであるQUMA[YouTube]も展示されます。他にもいろいろ面白い展示が出るはず。ブースは結構でかいのですぐ見つけられるかと思います。 この作品は未踏で知り合った仲間たちで作っています。僕の他にはQUMAの発案者・開発者でもある久池井淳、未踏でマルチマウス・マルチモニター共有を開発していた上田真史、某巨大研究所の所属で週末ゲームプログラマとしていくつかのゲームをリリースした経験のある中山心太、の4人。フィギュアのコントロールには昨年の5月に僕と久

    次の日曜日、新感覚シューティングゲームを展示します - 西尾泰和のはてなダイアリー
    markup
    markup 2011/12/11
  • チケットレコメンデーション - 西尾泰和のはてなダイアリー

    Python温泉にて「チケットがたくさん山になっているとヤル気がそがれたりどれからやったらいいか悩むのに時間を使ったりしてしまうので、オススメのチケットを選んでくれるシステムがあったらいいんじゃないの?」って話題になったのでコンセプトプルーフを実装した。 とりあえずRubyRedmineからチケットを適当に取ってきて実験。recommend()ってやるとオススメのチケットを1つ教えてくれる。 In [2]: recommend() Windows環境で日語を含むパスに対して、File.expand_path が存在しないパスを返すパターンが存在する。これはちょっとなー、自分向きじゃないなぁ(OS依存だし)、別のがいいなぁ、と思ったのでno()と答える。すると別のチケットを提案してくれる。 In [3]: no() Please backport r33556 (Bug #5243)うん

    チケットレコメンデーション - 西尾泰和のはてなダイアリー
    markup
    markup 2011/11/21
  • コードリーディングに何を使うか(まとめ) - 西尾泰和のはてなダイアリー

    Twitterだと流れ去ってしまうのでまとめて転載 nishio みんなソースコード読むときは何を使っているのかな? shibukawa grepとテキストエディタと、自作のログ出力デコレータ(Python限定)あたりかな?大したことしてないです。 hmori 色々ツールはあるけれど、別の意味で便利だったのはTextMate (OSX シュアウェア) プロジェクトを作ってプロジェクトフォルダーに放り込むだけでソースコードファイルがtreeで見られてクリック1つで開く。まあそれだけだけど。 voluntas vim と ctags くらい。 kumarobo less(lv), cat -n, grep, emacs(xyzzy) あたり。うっかりvisual studio起動することもあるけど jmuk テキストエディタやgrep、viewsvnなど以外だと、globalとかかなぁ。 ug

    コードリーディングに何を使うか(まとめ) - 西尾泰和のはてなダイアリー
    markup
    markup 2010/04/24
  • 初iPhoneアプリがリジェクトされた - 西尾泰和のはてなダイアリー

    10月14日にSubmitして10月29日に返事が来ていた。以下翻訳。こんな丁寧な解説がくるのか〜。そりゃ多少時間がかかっても仕方がないなぁ。「iPhone Application Programming Guideを読め」的な1行コメントがくるのかと思っていたので逆に驚いた。こんなに丁寧に教えてもらえるんだったらリジェクトされても逆に勉強になるな。 - にしおさん、 ConicFilmのAppStoreへの投稿ありがとうございます。 我々はConicFilmをレビューし、このバージョンのあなたのiPhoneアプリをAppStoreで公開することはできないと判断しました。理由は、このアプリが iPhone Developer Program License Agreement の 3.3.5章「アプリはHuman Interface Guidlinesおよびその他のAppleが提供するドキ

    初iPhoneアプリがリジェクトされた - 西尾泰和のはてなダイアリー
    markup
    markup 2009/11/02
  • 「女の子牧場」をリリースしました - 西尾泰和のはてなダイアリー

    女の子牧場マトリクス牧場(追記: ネーミングについて問題が多かったので変更しました。「べっ、別に女の子になんか未練ないんだからね!」) 「男の子牧場」でしばらく遊んでみて、マトリックスの共同編集って面白いなと思ったんで作りました。ただ、生身の人間の個人情報で遊ぶのはあんまり品がよろしくないと思ったので、個人情報を投稿するのは利用規約で禁止しておきました。トップページでログインするとマトリックスを新しく作ったりとかアイテムを追加した人の配置したアイテムを「いやー、これはこっちだろー」とか言って移動することができます。 僕的に「男の子牧場」の面白かったポイントが「軸を自分で決めたマトリクスの上にいろんな物を置いて人に見せられる」って所だったのでSNS的な要素とか全然つけてないけど、需要あるかなぁ。まあ、アルファリリースってことで、反応によって今後どうするか決めようっと。 やー、しかしJSとかC

    「女の子牧場」をリリースしました - 西尾泰和のはてなダイアリー
    markup
    markup 2009/05/15
  • 「プログラミング言語を理解するにはどうしたらいい?」という話を聞いて思うこと - 西尾泰和のはてなダイアリー

    「プログラミングとか特定のプログラミング言語とかを習得したくて色々勉強したけど、いまいち理解できた感じがしない、何がいけないのだろう、何を学べばいいんだろう」という話を聞いて思ったこと。 それって、目的が曖昧だから達成感が得られないというだけじゃないのか? 僕の今までの人生の中には「プログラミングを習得した!」と思える瞬間も「Pythonを理解した!」と思える瞬間もなかった。具体的な「Pythonで継続のある言語を実装できた!」とかならある。でも「継続の概念を完全にマスターしましたか」と言われるとそんな気はまったくしない。まだまだ先は長い。しかし僕よりはるかに継続に詳しい人たちが集まって継続に関する議論をしてたりするのを見ると、この道に明確なゴールはないことがわかる。どこまで行っても「まだ先がある」という感じが残るに違いない。 手段が間違っているのではなく、目的が間違っているんだ。「○○を

    「プログラミング言語を理解するにはどうしたらいい?」という話を聞いて思うこと - 西尾泰和のはてなダイアリー
  • そろそろ例のプロジェクトについて言及するか - 西尾泰和のはてなダイアリー

    以前、とあるシステムのソースコードを読む機会があったのだけどあまりにひどかった。あのひどいコードでまあまあまともに動いているというのが逆に信じられない。今日昼ご飯をべながら少し話していたのだけど意外と知られていないようなので、話せる範囲でいかにひどいのか説明してみようと思う。 まず、ソースコードが大雑把に見積もって3750万行あるのだけど、その中でまともに機能しているコードは3%しかない。10分の1程度のソースコードで同程度の機能を実現しているシステムもあるのでほんとあのシステムのコードはゴミだと言っても過言じゃない(*1) プログラマとしてはなんでそのプロジェクトはそんな状態になってしまったのか気になるところだけども、まあ多くのプロジェクト同様、真相を知る人は誰もいない。でもまあ、実際に機能しているコードのコピーみたいなものがあちこちに散らばっていることからしてコピー&ペーストが盛んに

    そろそろ例のプロジェクトについて言及するか - 西尾泰和のはてなダイアリー
    markup
    markup 2009/02/01
  • kajuntk氏に会ってきた - 西尾泰和のはてなダイアリー

    最近僕をベタほめする気持ちの悪いエントリでホットエントリーに入るなどしているid:kajuntkに会うために有給休暇を取って葉山まで行ってきた。 少なくとも彼は僕よりも人間社会の動きにたいする理解が優れている。そもそも僕は他人の感情や認知の状態を理解する能力に乏しいから彼の視点からの指摘はとても参考になる。 まずカンファレンスのコモディティ化についての指摘。僕は「(日用品のように)誰でもどこでもいつでも入手できるようになること」だと考えて、それこそ1000speakersの目指しているものじゃないだろうか、と思った。しかし彼の言うコモディティ化は「参入障壁が下がることによって(それまでそれなりの熱意のある人だけだったところに)有象無象が参加するようになって全体のレベルが下がること」のようだ。 そしてレベルの低下によってレベルの高い発表をする人に取ってのメリットが薄れ、ますますレベルの低い発

    kajuntk氏に会ってきた - 西尾泰和のはてなダイアリー
    markup
    markup 2008/08/25
  • C++のテンプレートで素数計算 - 西尾泰和のはてなダイアリー

    C++のテンプレートで計算をするなんて変態だと思っていたのだけど、奥さんがさくっと10分くらいで書いたFizzBuzzのコードを見るとなんか非常に素直で読みやすいコードだったので、僕もテンプレートで何かしてみることにしました。 Kazuho@Cybozu Labs: C++ テンプレートで(いまさら)FizzBuzz http://labs.cybozu.co.jp/blog/kazuho/archives/2008/04/fizzbuzz_cpp_template.php そんなわけでできたのが素数を求めるコード。途中の「数字を全部出す」と「2の倍数を出す」をコメントで残してあります。isPrime2とかisPrime3とかあるのは3つ合わせてisPrimeの働きをする型のそれぞれの名前を思いつかないので適当な名前になっています。テンプレートにはデフォルトの型引数があるみたいなのでisP

    C++のテンプレートで素数計算 - 西尾泰和のはてなダイアリー
    markup
    markup 2008/04/22
  • 最もタメになる「初心者用言語」は 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! - 西尾泰和のはてなダイアリー
  • いい嫁 - 西尾泰和のはてなダイアリー

    「いい嫁」でググると1位になるといって喜んでいるdropdbをみると、いい嫁が別の人になってがっかりしたところを見てみたくなる(ぇ ページランク高そうな人に「いい嫁」でリンクすればいいのかな?[いい嫁] - さっそくyoshioriとamachangが追随してるw ひどいなみんなww ほんとに1位から落ちちゃうんじゃない?w - dr○pdbがはてブコメントで応戦しているけど、どう考えても自滅行為。 http://b.hatena.ne.jp/entry/http://d.hatena.ne.jp/cactusman/20080128/p1 http://b.hatena.ne.jp/entry/http://d.hatena.ne.jp/amachang/20080128/1201521271 - 終電は座れないので今から帰るけど、帰宅時にトラックバックされているエントリに関しては全部は

    いい嫁 - 西尾泰和のはてなダイアリー
    markup
    markup 2008/01/28
  • PythonでSchemeを作りました - 西尾泰和のはてなダイアリー

    1000人スピーカカンファレンスの二次会の飲み会会場を追い出された後、なぜかサイボウズラボに戻って三次会。 なぜかyukobaがSchemeを作り始め、amachangも「作る」と言い出した!「どうせだからハッカソンにしよう」って話が!いや、そんなことしだしたら帰れないし!ああっ!でも今書かなければ一生書かないかもしれないっ! というわけで書いたのがこちら。 どう書く?org 5414 にしお: 飲み会の後5時間で作ったものなのでかなり...(Schemeもどきの実装) - 投稿の詳細 残りの二人の書いたものはこちら。 Scheme on JavaScript 作りました - yukobaの日記 わーい \(^o^)/ Scheme もどきを JS で書いたよー! - IT戦記 - せっかくなのでハッカソンの雰囲気を少しでも伝えられるように書いてみる↓ 以下オフラインの発言は「」、Ling

    PythonでSchemeを作りました - 西尾泰和のはてなダイアリー
    markup
    markup 2008/01/22
  • 1