IQ145の女子高校生の先輩から受けた特訓5日間という本を読んだ。内容について内容は関数型プログラミング+JavaScriptライブラリ+哲学史+ラノベ。関数型プログラミングとJavaScriptライブラリはわかるがなぜ哲学史?と思われるかもしれないが著者のあとがきなどによると読者に「ものごとの考え方を変える」重要性に触れてもらいたいため哲学史を追加したそうだ。ラノベパートについては「ライトノベルというパッケージを入れ、天才美少女にならばダサい考え方を変えなさいとダメ出しされても受け入れられるのではないか?」とそのように考えたため加筆したそうだ。ラノベパートは本筋とは関係がない箇所の話が非常につまらなかったので削ってほしかった。(コナミスポーツクラブやスタバに行くなど)あと400ページとかなりボリュームがあるので重く、文字数が多めなので平均的な技術書よりも読むのに時間がかかる。(なぜ電子書籍で売られていないのだろう)目次について目次は以下のようになっている。different』『ものの見方を変える事はIQ80ポイントに匹敵する。Shellでデスクトップアプリ海へ行こう目次を見てもわかるとおりこの本は関数型プログラミング以外のことも書かれている。そのため関数型プログラミングの内容が少なく関数型プログラミングに目覚めたい!という人には向かない。読者が求める内容と一致しないことが多いせいかAmazonカスタマーレビューの星評価は全体的に低くなっている。本書では論理操作の組み合わせの設計だけのredece関数を使用したほうがforを使用するのと比べて状態変数がないためバグが発生しづらく、手順ではなく論理を分割したほうがクールだと書かれている。この点においては異論はないがreduce関数はIE8以下では使用できないためPCサイトで使用する際は注意が必要だ。(IE8以下では表示されない)本書にはreduce関数を自前で作成する方法も記載されている。こちらの関数であればIE8以下でも使用できる。(IE8以下でも表示される)さらにUnderscore.jsにはreduceが用意されていてこちらもIE8以下で使用できる。車輪の再発明にならないようUnderscore.jsを読み込んでいる場合はこちらを使用するのが望ましい。(IE8以下でも表示される)第1章が勘違いを加速させる著者の岡部健氏のブログに本書のDay1(第1章)が無料で公開されている。Day1はreduce関数などを使用して関数型プログラミングの基礎を中心に書かれている。これを読んだ人はDay2以降も関数型プログラミングがたくさん出てきて後半には応用まで学べると思ってしまう。実際はDay2までは関数型プログラミングを中心に学ぶことになるがDay3からは主人公が先輩とスポーツジムなどに行くという関数型プログラミングとは関係のない話が11ページ続く。(しかも内容がつまらない)またDay3以降は哲学史がたびたび関数型プログラミングの合間に入ってくるのでここは好き嫌いが分かれそうだ。総評1300円と技術書にしては安いし関数型プログラミング(基礎)+JavaScriptライブラリ+哲学史の本として見れば決して悪くない本。星1つというのは明らかに過小評価。個人的にはおもしろかったです。関数型プログラミングだけを学びたい人には絶対におすすめできない。関数型プログラミングの本に関してはすでにオライリーからJavaScriptで学ぶ関数型プログラミングという本が出版されているのでこちらを読んだほうが良い。池尻大橋の人気ワンタン麺のラーメン屋に行った感想と注意点Confluence(コンフルエンス)を使用するなら最低限覚えておきたいWiki記法iwbjp7@gmail.com。