2015年12月15日のブックマーク (5件)

  • Evan Priestley 氏がどうやってプログラミングを学んだかを教えてください - Knoh (ノウ) | The Knowledge Hub

    人による回答です。Evan Priestley 氏は知る人ぞ知る、Facebook を代表する (元) エンジニアの一人です。Facebook には 2007 年から 2011 年の間に在籍していました。 手短かに言えば: 何年もの歳月の賜物というか。ぼくはただひたすらプログラミングが大好きで、(フェイスブックで働いていた) 過去4年間、ほとんど他のことをしていない。その前も2.5年ほどプログラマーとして働いていたし、そのさらに前も6年くらい趣味でプログラミングをしていた。ぼくは高校も大学も中退しているので、それで空いた時間もプログラミングに費やした。つい最近フェイスブックを辞めたけど、未だに起きている時間のほとんどはプログラミングだ。 もっと詳しく言えば: 月並みだが、ぼくはちっちゃい頃からコンピューターが好きで、我が家にあったヤツで(最初はMac Plusで途中からIIsiになった)

    rjge
    rjge 2015/12/15
    "複雑なシステムを理解するには、全体のしっかりとしたモデルを頭の中に持つことがカギとなる。おおまかな全体図をまず把握して、そこから部分的につめていくことが大事だ"
  • Big Sky :: golang では for ループの中で defer してはいけない。

    « cat で色々な物をシンタックスハイライト出来る ccat に html 出力機能を入れた。 | Main | 別のプロセスの動的な環境変数を盗み取る » 初めてGolangで書いたデータ投入ツールでプロセスがモリモリ肥大化していくのは ループ内で defer hoge.Delete() とか書いてたせいだったらしい。 defer を消したら100〜200MB落ち着いている。 — m.yuzuki (@ephemeralsnow) December 11, 2015 golang の defer は後処理のキューの登録です。コードを見ていないので分かりませんが、おそらくこういうコードを書いたのだと推測します。 package main import ( "fmt" ) type foo struct { n int } func Create(n int) *foo { fmt.Pri

    Big Sky :: golang では for ループの中で defer してはいけない。
    rjge
    rjge 2015/12/15
    "golang の defer は後処理のキューの登録"
  • Safari 9.0 の JS で「同じ関数を繰り返し実行しただけで返り値が変わる」という強烈なバグが発見されてる - Qiita

    Webkit の Bugzilla で強烈なバグが報告されていると、同僚に教えて頂いた。 あまり話題になっていないものの、単純ゆえに強烈なバグだと思ったので Qiita にも公開しておく。 https://bugs.webkit.org/show_bug.cgi?id=151354 にそのバグ報告が上がっている。 最初に Google+ でやりとり があった模様。 URL のクエリ文字列から値を取り出す関数が正常に動作していないことから発覚したようだ。 その後は、簡単なテストケースに落とし込まれ jsfiddle というサイトにテストケースが公開されている。 Safari でこのページを開くと、実際に JavaScript を実行して確認できるようになっている。 続報 (2015.12.14) この記事を上げてすぐに Bugzilla の方で進展があった。 Yusuke SUZUKI さん

    Safari 9.0 の JS で「同じ関数を繰り返し実行しただけで返り値が変わる」という強烈なバグが発見されてる - Qiita
  • GoでGitHub通知をデスクトップ通知として取得するアプリを書いた - Qiita

    Help us understand the problem. What is going on with this article?

    GoでGitHub通知をデスクトップ通知として取得するアプリを書いた - Qiita
    rjge
    rjge 2015/12/15
    GopherJS x Electron
  • Go Tips Learned From Writing go-libxml2/go-xmlsec

    このエントリはGo Advent Calendar 2015のDec 15th分のエントリです。(追記:はてブは是非このURLで行って下さい!→ https://medium.com/@lestrrat/7bcdfd35689d) tl;dr: go-libxml2とgo-xmlsecを使うとXMLをツリーとして処理するだけでなくXSD検証やXML Signatureの生成もできるようにしました!でもなかなか一筋縄ではいかなかったよ! go-libxml2とgo-xmlsecHDE Incではセキュリティ系のアプリを作っているので最近はgo-jwxとかを開発していましたが、同様にXML Signaturesを使う必要のあるタスクがでてきました。 ところがぱっと見渡す限りGoでちゃんとXML Signaturesを生成できるものが見当たりませんでした。というか、どの言語を見ても基的にはxm

    Go Tips Learned From Writing go-libxml2/go-xmlsec
    rjge
    rjge 2015/12/15
    "unsafe.Pointerを使い始めた時点であとはあなたの書き方次第でどんなことでもできてしまいます。それがもたらす影響や責任を持てないのであればCの世界に入ろうという甘い考えは捨てましょう!"