タグ

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

  • 禅 of Python: 20の格言 - 西尾泰和のはてなダイアリー

    Pythonには "Zen of Python"という、Pythonの設計原則を簡潔に20個の格言にまとめたものがあります。それを単純に翻訳しても伝わりにくいだろうなぁと思ったので、訳注をたくさんつけて翻訳してみました。 美は醜より良い 明示は暗黙より良い 単純は複雑より良い 複雑なほうが理解しにくいよりは良い *1 平坦は入れ子より良い 疎は密より良い *2 読みやすさが重要 「特殊なケース」はルールを破るほど特殊ではない*3 しかし、実利は純粋さより重要 *4 エラーを黙って通してはいけない ただし、明示的に黙らせた場合は別 *5 曖昧さに面したら、正解を推測したくなる誘惑を退けよ *6 一つの明確なやり方があるべきだ。そしてただ一つであることが望ましい。 *7 しかし、その方法はオランダ人以外にはとっつきにくいかもね *8 今やる方がやらないより良い しかし、やらないほうが、今 *す

    禅 of Python: 20の格言 - 西尾泰和のはてなダイアリー
    ledsun
    ledsun 2014/05/30
    memo
  • プログラミング学習手段としての写経について - 西尾泰和のはてなダイアリー

    あるブログが「写経には効果がない」という趣旨のことを書いていて「何を言ってるんだ?」と思いじっくり読んでみたら、彼の言う写経は「動くとわかってる10000行のコードを何も思考せず作業として書き写すこと」を指しているようだった。「そんなわけないじゃん」と笑ってから「もしかして世の中は写経をそういう捉えてるのか?」と不安になった。 写経は自分の中にモデルを作るための行動で、他のもっと効率のよい方法と比べた場合の利点は「自分の中にモデルがなくても使える」点に尽きる。全く知識ゼロでいきなり「自分で考えて書く」ができる人はいない。考えるための材料となる知識をまず脳内に運び込む、それが写経だ。 写経の過程で大事なことは以下の3つだ。 1: 早く学びが得られるように、なるべく小さいコードで実験し、すぐに結果を確認する。 2: 疑問に思ったこと、考えたこと、気づいたことを書き留める。どうしてこういう書き方

    プログラミング学習手段としての写経について - 西尾泰和のはてなダイアリー
    ledsun
    ledsun 2013/03/27
    コードを書き写すと細部に目が行って「これはなんだ?」と疑問がわく、それで説明文を読むと読み飛ばしてた解説に気付いてより理解が進む。わからぬ、何の疑問も抱かずに書き写せることがわからぬ。
  • 「仕事を全部アウトソース」は有益か? - 西尾泰和のはてなダイアリー

    ある程度囲碁とか将棋が強い人にはわかってもらいやすいかと思うんだけど、一目見て「その手は筋悪だ」と即答するけども「なぜ筋悪なのか?」と聞かれると即答できないことがある。 ニコニコ超会議でid:Yoshioriにされた「会社からの仕事を全部クラウドソーシングに投げたら働かずに稼げるんじゃないの」という質問も同じように、その場で筋悪だとは判断したけども、理由が即答できなかった。「会社のコードを外に出せないでしょ」みたいな微妙な回答になってしまった。 二日寝かせてようやく正しい解答が分かった。 会社から来た仕事を全部クラウドソーシングに投げられるということはどういうことか?それはつまり「自分でなきゃできないこと」も「社員でなきゃできないこと」も仕事にできていない状況だ。海の向こうの見知らぬ人でも出来るような「誰でも出来る作業」しか任されてないってことだ。自分がクラウドソーシングを知っていて、会社

    「仕事を全部アウトソース」は有益か? - 西尾泰和のはてなダイアリー
    ledsun
    ledsun 2013/01/25
    「自分でなきゃできないこと」が「クラウドソースに投げること」だから、クラウドソース斡旋業になればいい。当座は会社が顧客になるし、会社が直接やるようになったら別の会社に売ればいい。
  • 「値渡しか参照渡しか」という二分論は混乱の元 - 西尾泰和のはてなダイアリー

    先日のプログラミングシンポジウムでは「今の時代となってはむしろ有害な教育って何だろう」という話題が出た。その時には思いつかなかったけども、今日「Pythonはすべてが参照だっていうけど、boolとか参照渡しじゃないよね」という趣旨の発言を見て思いついた。 「Pythonではすべてが参照」ってのは「Pythonの変数はCで言うと全部PyObject*」って言ってるだけのことなので、関数呼び出しが参照渡しかどうかとは独立な話。そしてPythonの関数呼び出しは値渡しです。渡される値がポインタなのでたぐれるだけ。 参照渡しと値渡しの2通りに分類できるかのような教え方をする教科書は現代ではむしろ有害なんじゃないの。今一番メジャーな渡し方は「参照の値渡し」なんだし。古い用語を使い続けることで混乱が増すだけのような。 そうつぶやいていたら@kuenishiから 今思えばあり得ない教育Javaで値渡

    「値渡しか参照渡しか」という二分論は混乱の元 - 西尾泰和のはてなダイアリー
    ledsun
    ledsun 2012/01/16
    変数の説明がわかりやすい!
  • 1