2011年11月16日のブックマーク (15件)

  • Steve Yegge、RailsをJavaScriptに移植する

    John Lam / 青木靖 訳 2007年6月24日 Foo Campで私が最初に行ったのは、「GoogleRailsクローン」と題するSteve Yeggeの講演だった。このタイトルを見てどうして聞かずにいられようか? Googleはプログラミング言語として、C++JavaPythonJavaScriptの4つを使っている。WebのフロントエンドJavaで書きたがる人がそういるとは思えないが、それはWebフロントエンド用のJavaコードをたくさん持っているGoogleにしても 同じだ。 Googleにおける開発者の生産性を引き上げるため、Steveは会社にRails(したがってRuby)を言語として採用するように訴えたが、それが叶わないとなると(Googleはインフラでサポートしなければならない言語の数を増やすのをとても嫌っている)、 彼は欲求不満のプログラマがみんなするだろ

    Iori_Nishizawa
    Iori_Nishizawa 2011/11/16
    彼は欲求不満のプログラマがみんなするだろうことをした。RailsをJavaScriptに 移植したのだ。1行1行、6ヶ月で、2000時間かけて。Steveはまったくコーディングの絶倫男だ。
  • 不完全にしておよそ正しくないプログラミング言語小史

    1801 – ジョセフ・マリー・ジャカールがパンチカードを使った織機によってタペストリーに"hello, world"と織り出す。しかしラッダイト (当時のRedditer) たちは、テールリカージョン、並行処理、大文字小文字の区別を欠いていたため、さほど感心しなかった。 1842 – エイダ・ラブレスが最初のプログラムを書く。彼女の努力は、プログラムを実行するコンピュータが実のところ存在しないというマイナーな問題のために頓挫した。後にエンタープライズアーキテクトたちはプログラムをUMLで書くために彼女のテクニックを再び学ぶことになる。 1936 – アラン・チューリングが存在しうるあらゆるプログラミング言語を発明するが、特許化する前に英国情報部員(後の007)によって抹殺される。 1936 – アロンゾ・チャーチも存在しうるあらゆる言語を発明しているが、より巧みに行った。チャーチのラムダ

  • http://www.aoky.net/articles/steve_hanov/images/resume_comic.jpg

  • プログラマになる方法

    Leon Bambrick / 青木靖 訳 2006年9月15日 金曜 インテリセンス . || \/ コード >>> コンパイル >>>>> 実行 >>>> 成功 ;-) /\ || || ^^ \/ \/ ^^ エラー エラー . ^^ \\ // ^^ \\ // ^^ google ^^ || \\ \/ \<<<<<<<<< コピー&ペースト

    Iori_Nishizawa
    Iori_Nishizawa 2011/11/16
    コピー&ペースト
  • Why Ruby is an acceptable LISP (2005) | Random Hacks

    Random code snippets, projects and musings about software from Eric Kidd, a developer and occasional entrepreneur. You're welcome to contact me! Dec 03, 2005 • by Eric Kidd Years ago, I looked at Ruby and decided to ignore it. Ruby wasn’t as popular as Python, and it wasn’t as powerful as LISP. So why should I bother? Of course, we could turn those criteria around. What if Ruby were more popular t

  • Stevey's Blog Rants: Lisp is Not an Acceptable Lisp

    It's been over four months since Eric Kidd posted his infamous Why Ruby is an acceptable LISP article. You know, the one that got approximately 6.02e23 comments, ranging from "I agree!" through "I hate you!" to "I bred them together to create a monster!" Any time the comment thread becomes huge enough to exhibit emergent behavior, up to and including spawning new species of monsters, you know you'

  • Lispの真実

    Leon Bambrick / 青木靖 訳 2006年9月24日 日曜 ここにLispの真実が明らかにされ、いくつかの代替が提示される。 Lispを学ぶことはあなたの人生を変える。 あなたの脳はすごく大きくなり、そんなに大きくなるものだとは思わなかったほどになるだろう。 あなたは自分のアプリケーションをすべて、ほんの一握りのコードで書き換えるだろう。 社会はあなたを避けるようになる。あなたも社会を避けるようになる。 あなたは自分のまわりの物やまわりの人すべてに不満を感じるようになる。 Lispは非常にシンプルであり、ほんの数分で学ぶことができる。私はさっきバスを待っている間に学んだ。 Lispは非常にシンプルであり、どんな言語を使おうと数ページのコードで実装できる。しかしそんなことをすることはないだろう。ひとたびLispを学んだなら、あなたはLisp以外の言語で何かを書こうとは思わなくなる

    Iori_Nishizawa
    Iori_Nishizawa 2011/11/16
    Lisperになると、他の人たちが可笑しいと思わないようなジョークに笑うようになる。あなたには普通の命令型言語では表現不能なことが理解できるからだ。
  • Peter Norvig

    あらゆる数独パズルを解く ((Pythonで) 書く ((さらに良い) Lisp) インタプリタ) ((Pythonで) 書く (Lisp) インタプリタ) スペル修正プログラムはどう書くか メイキング オブ ゲティスバーグPowerPointプレゼンテーション PowerPointの罠 ゲティスバーグPowerPointプレゼンテーション Peter Norvig (ピーター・ノーヴィグ)  Googleの研究ディレクター。AAAIおよびACMのフェロー、 人工知能分野の代表的テキストであるArtificial Intelligence: A Modern Approach (エージェントアプローチ 人工知能) の共著者。以前はNASAコンピュテーショナルサイエンス部門のトップを務め、カリフォルニア大学バークレー校の研究員だった。 日語で読めるNorvigのアーティクルとしては、他に「

    Iori_Nishizawa
    Iori_Nishizawa 2011/11/16
    Peter Norvig (ピーター・ノーヴィグ)  Googleの研究ディレクター。AAAIおよびACMのフェロー、 人工知能分野の代表的テキストであるArtificial Intelligence: A Modern Approach (エージェントアプローチ 人工知能) の共著者。以前はNASAコンピ
  • http://www.aoky.net/articles/randall_munroe/images/online_communities_2.jpg

  • http://www.aoky.net/articles/randall_munroe/images/lisp-j.jpg

  • ソフトウェア開発者のための推薦図書

    Code Complete 2 [ Code Complete第2版―完全なプログラミングを目指して (上・下) ] スティーブ・マコネルのCode Completeはソフトウェア開発者のための「楽しい料理だ。このを読むということは、自分の仕事を楽しんでいるということであり、自分のすることに真剣であるということであり、もっと向上したいと思っているということなのだ。Code Completeの中で、スティーブは平均的なプログラマが読む 技術書は年に1冊に満たないと指摘している。このを読んでいるという時点で、あなたはおそらく周りにいる開発者たちの90%と違う行動を取っていることになる。それもいい方向にだ。 私はこのがすごく好きで、ここから自分のWebサイトの名前(Coding Horror)を取ったくらいだ。このではやるべきでない悪い例には"coding horror"アイコンで印

    Iori_Nishizawa
    Iori_Nishizawa 2011/11/16
    私は"Keep It Simple Stupid"を信条としているが、正規表現については隕石サイズの例外をもうけている。適切に書けば、正規表現は文字列操作で驚くほど時間を節約してくれる。そしてどこかに正規表現の使いどころがないよう
  • いいアジャイルと悪いアジャイル

    スクラムはラグビーにおいて最も危険な段階であり、それというのも、潰れたり不適切なかみ合い方をすると、前列のプレーヤーが怪我をしたり、首の骨を折る危険すらあるからだ。—Wikipedia 私が子供の頃には、コレステロールは体に悪いものだった。これは覚えやすかった。脂肪は悪い。コレステロールは悪い。塩分は悪い。みんな悪い。しかし近頃では、コレステロールが「いい」コレステロールと「悪い」コレステロールに分かれている。私たちがこの2つをどうにかして見分けられるとでもいうように。そしてその切り替わりは奇妙なものだった。FDAが突然プレスリリースを発表して、殺鼠剤には2種類、いい殺鼠剤と悪い殺鼠剤があり、いい方はたくさん摂って悪い方は摂ってはならず、そして決して2つを混ぜたりしてはいけないのだと言ったかのようだった。 一年くらい前まで、私はいわゆる「アジャイル」プログラミングに対して、ごく一次元的な見

    Iori_Nishizawa
    Iori_Nishizawa 2011/11/16
    第一に、悪いアジャイルは最悪な仕方で日程に集中するものだ。短いサイクル、短期の成果物、頻繁な見積りと再見積り。サイクルの間隔はひと月(これはまだ許容範囲だ)から、最悪の場合1日にまでになりうる。そういうの
  • 何故私は狂った猿のように1000万円分の書籍を切り刻んだのか - やねうらお−ノーゲーム・ノーライフ

    id:yaneurao:20091001でFUJITSU ScanSnap S1500 FI-S1500を買って書籍を裁断してスキャンした話を書いた。 「もうどうせ残りのは売ってもたいしたお金にもならないし」と書いたが、取り込んだ書籍の数は3,000冊強。総スキャンページ数、262,845枚。消耗品のパッド交換4回。ローラー交換2回。1冊の平均価格は3,000円程度。全体でおおよそ1,000万円。今回は、気がついたらこれだけのを切り刻んでいた。id:yaneurao:20060131の棚に換算すると14個分である。 たぶんアマゾンで売れば、その1/3ぐらいのお金にはなっていただろうから、ちょっともったいない気もする。私も当初はそこまでを徹底的に切り刻む気はなかったのであまり気にもかけてなかった。 そこで、どうしてこんなことになったのか、つらつら考えてみた。 ■ 切り刻まずに取り込ん

    何故私は狂った猿のように1000万円分の書籍を切り刻んだのか - やねうらお−ノーゲーム・ノーライフ
    Iori_Nishizawa
    Iori_Nishizawa 2011/11/16
    もうこうなってくると末期症状であり、本棚自体が憎らしく思えてくる。本棚自体が悪の権化であり、悪存在であり、悪の巣窟で、悪の化身であり、悪の悪の悪である!(自分でも何を言っているのかよくわからないが)
  • VOYAGE GROUP エンジニアブログ : アジャイルプロセス協議会 第8回 西日本セミナーで基調講演してきました

    2011年11月16日09:24 カテゴリお知らせ勉強会 アジャイルプロセス協議会 第8回 西日セミナーで基調講演してきました こんにちは、VOYAGE GROUPの水越(@Akiyah)です。 11月4日(金)に岡山で開催されたアジャイルプロセス協議会の西日セミナーで基調講演をしてきました。 アジャイルプロセス協議会 第8回 西日セミナー ~アジャイルプロセス 技か? 心か?~ 講演者の顔写真入りのポスター もう一個のポスター『技』『心』 会場の様子(講演開始前に撮影しました) 私の講演資料 アジャイルマインドの重要性 View more presentations from Akiyah VOYAGE GROUPでエンジニアとしてECナビを開発・運営している事例も交えてマインドの重要性を語りました。 パネルディスカッション「アジャイルとは、技か? 心か?」にもパネラーとして参加し

    Iori_Nishizawa
    Iori_Nishizawa 2011/11/16
    アジャイルプロセス協議会 第8回 西日本セミナーで基調講演してきました-VOYAGE GROUPでエンジニアとしてECナビを開発・運営している事例も交えてマインドの重要性を語りました。
  • 竹内関数で音楽生成 - aike’s blog

    Lisperの人ならみんな知ってる竹内関数(たらいまわし関数)という関数があります。 定義としてはこんな感じ。 そのシンプルな定義からは想像もつかないほど複雑で膨大な再帰呼び出しがおこなわれるとても興味深い関数です。たとえば引数にTarai(10,5,0)を与えると343,073回も再帰呼び出しされたりします。 この関数呼び出しの引数がどのように変化するか知りたくてプログラムを書いて調べてみたところ、Tarai(10,5,0)の場合は3つの引数がそれぞれ0〜10(xは-1〜10)の間で少しずつ変化するなかで、2つの値を固定してひとつの値が下降していくような挙動があったりして、なんだか音楽の3和音のコード進行を思わせるような動き方です。 そういうことなら、ということで実際に音にして聴いてみました。Tarai関数が呼ばれるたびに引数のx、y、zを、0=ミ、1=ファ、2=ソ、……、のように音に割

    竹内関数で音楽生成 - aike’s blog
    Iori_Nishizawa
    Iori_Nishizawa 2011/11/16
    コメント欄に竹内先生ご本人登場!