5月振り返り

O'Reilly Japan - JavaScriptデザインパターン

2015年になった今となっては古い内容が多くなってしまった。先頭を突っ走る人たちは速すぎる。
JavaScriptと戦ったり、jQueryプラグインをこれから書くような場合にはいいのかな。
デザインパターン自体は特定の言語に依存した内容ではないし今でも学ぶ価値があるとは思っているけど、
それ自体を目的とするなら別の本でいい(し、ガッツリデザインパターンってわけでもない)。

http://www.oreilly.co.jp/books/9784873116600/:

今、何かと熱いJavaScript関数型プログラミングというIQ145と激突できそうなタイトル。読むのは2回目。
Underscoreを使って関数型プログラミングというスタイルを紹介していく本。
パラダイムに触れるだけではなくUnderscore、lodashのサンプル集という見方もできる。
実用面では、簡単なvalidatorを合成して複雑なものを構築したり、事前条件・事後条件のチェックも入れたりする部分は
綺麗にかつ柔軟性に富んだものです。
値段は3000円と倍以上しますが、レビューググって訝しむならこっちのほうが断然おすすめできます(たぶん)。

いかにして問題をとくか

1 問題を理解する
未知のものは何か、与えられているデータは何か、条件の各部を分離し書きあらわせ。
2 計画をたてる
与えられた問題が解けなかったら、既に解いたことのある易しくて似た問題を思い出せ。条件の一部を残し他を捨てれば未知のものが見えてくる。
3 計画を実行する
解答の計画を実行するときに、各段階を検討せよ。その段階が正しいことをはっきりとみとめられるか。
4 ふり返ってみる
得られた答えを検討する。結果をちがった仕方で導くことができるか。他の問題にその結果や方法を応用することが出来るか。

数学の問題に限らず、プログラミングでも日々の問題も解決に至るまでの道筋としてはそんなに差がないですよね。
自分が問題を解く場合だけではなく、他の人へ教える場合にも意識したい。

  • NUC

www.intel.co.jp

前々から欲しいと思っていたんだけど、店頭で見たら14000円切ってたりと買うしかないと思い購入。
メモリは悩んだけどCFD Panram D3N1600PS-8G (SODIMM DDR3 PC3-12800 8GB)を選択。
SSDはとりあえず後回しで余った500GのHDD積んで遊んでいます。

用途としてはローカルネットワーク内で動かすサーバー。

# uname -a 
Linux arch 4.0.4-2-ARCH #1 SMP PREEMPT Fri May 22 03:05:23 UTC 2015 x86_64 GNU/Linux

BIOSアップデートさえすればLinuxもちょろい感じで結構遊べてます。

  • Docker

コンテナ動かしておー!で終わらせないためにUser Guide読んだ。docs.docker.com

↑のNUCは今のところ直接アプリケーション動かしてるけどコンテナ上動かしたいという動機もあった。
とりあえずひと通り目は通せたので動かしたいアプリケーション用のDockerfileを書いているところ。
自社内へ導入の提案はしません。自分へのデメリットを想像すると気持ち的につらい。