鉄分は大事。(特にヘム鉄)

こっち→ https://brookbach.com

距離センサで情報取得→カメラ+OpenCVで顔検出

はじめに

研究室に転がってたラズパイとセンサを使って何かできないかな、と考えてたらタイトルのやつが思いついたので実装してみた。雑にまとめておく

 

概要

フローチャートはこんなかんじ。

ブラウザでボタンがクリックされたときに、距離センサから距離を取得して、値が閾値内なら写真を取り、顔検出を行います。

 f:id:brookbach:20160616224340p:plain

 

ざっくりとしたブロック図はこんな感じ。

カメラはラズパイ専用のカメラを使います。

ADコンバート用にArduinoをかませました。

f:id:brookbach:20160616224517p:plain

 

 

実装

ハード

距離センサ SHARP2Y0A21F54

Arduino Uno

Raspberry Pi 1 Model B

Raspberyy Pi camera module OV5647

 

ソフト

Webまわり SinatraRuby

カメラ操作、センサ情報取得とか Python

画像処理 OpenCVC++)

 

ソースコードはこちら

RaspberryPiProjects/IsThereNagashima at master · keigo-brook/RaspberryPiProjects · GitHub

 

感想

個々に見てみるとサンプルプログラムレベルなんだけど組み合わせてみたらそれっぽいのできた

 

OpenCV、今回初めて使ったけど理論とか知らなくても簡単に画像処理できてすごい。

理論も含めもう少し勉強してみる

 

センサ+画像処理、他にも何かできないかな

 

 

pixiv 2016 SPRING BOOT CAMPに参加してきたよ

 

はじめに

 3月14日から18日の5日間で行われたpixivのインターンシップ, pixiv 2016 SPRING BOOT CAMPに参加してきたので参加記を書きます.
 f:id:brookbach:20160323192001j:plain

きっかけ

 院試の勉強を家で一人やっていたときに, ツイッターでpixivがインターンやるよっていうのが流れてきた. 
 pixivはイラストたまに見に行くぐらいだけど, 楽しそうだしgithub応募できるし報酬もらえるし試しに応募してみるかーと思って応募した. 
 

めんせつ

 何ができるかとか, どんなことやってきたかとかを聞かれた.  後で聞いた話によると, 何か作ったことがあるっていう経験を重視してたっぽい.  自分はRailsとかRaspberry pi とか使って諸々やってたのでそのことを話した.  人によってはコード面接があったらしい.
 
 正直選考を通るとは思ってなかったので, 通過のメールが来たときは嬉しいと同時にスキル的に大丈夫か不安になった
 

はじまり

 そんなこんなでインターンが始まった
 
 去年まではハッカソン的なインターンだったらしいが, 今年は実際のプロダクトを使って開発する感じだった.  ハッカソンとかだと見栄えの良い部分だけ実装したり間に合わせのコードを書いたりすることもあるが, この形式だと今書いているコードがプロダクトに追加されるので, すごい真剣に開発をすることができたと思う.
 
 それと総合職と技術職でチームを組んで課題に取り組んだ.  今までは技術職重視の採用だったらしいが, 会社の規模が大きくなり総合職じゃなきゃできないこともあるよねみたいになったらしくて総合職の採用もしているらしい.
 
 自分は総合職の女の子と技術職の自分の二人チームだった
 

くわしく

1日目 オリエン、課題発表

 自分はBOOTH改善というチームで, twitterを使ってBOOTHの商品を宣伝してください, みたいなお題だった.  他のチームも大テーマは決まっているが詳細までは決まっておらず, 総合職と技術職で相談しながら課題に取り組んでいった
 
 自己紹介とかした後, 課題に取り組み始めた.  結構ざっくりしたお題だったので, 総合職が分析しているのに口を挟みつつ技術職の自分は環境構築を進めていた.
 
 環境構築が終わった後は何を作るか, どこまで実装したら良いかとか相談しながら考えてた 

2日目  講義, 仕様考える

 

 午前中, 総合職, 技術職分かれてそれぞれ講義がいくつかあった.  開発についてとか, セキュリティについてとか参考になった. 
 
 その後, 課題に取り組んだ.
 一日目の時点ではtwitterでのつぶやきを完全に自動化しようという感じだったんだけど, いくつかつぶやいてみてそれは無理だとわかった(自然言語処理とかやることになって難しすぎる)ので, 文言や写真の選択は人間がやり, それを簡単にできるようなサポートをするシステムを作ろうとなった
 
 ここでだいたいやることがかたまり, 総合職はどのようなツイートがいいのか分析し, 技術職がそれを元にツイートしやすいシステムを作ると役割分担ができたのでそこからはひたすら開発していった.

上みたいな感じでツイートしながら分析してた

3日目 全体会議, 全社ランチ

 午前中にラジオ体操,全体会議があって, pixivの最近の動向とかすごい内部の情報を見ることができた.  この会社がどんなことを考えて今どう動いているかがわかり面白かった
 
 お昼は全社ランチ.  ゲストとか来てすごい人数だった.  すごい一体感があった. ランチの席はランダムで, 自分のテーブルは新卒の人とかバイトの人とか集まってて色々話聞けて良かった.
 
 夕方から会社説明会に参加した. 説明会の雰囲気が全然堅苦しくなくてびっくりした
 
 それから開発を始めた.
 3日目はこんな感じであまり開発できなかったので, 少し遅くまで残って実装してた.  大体の人が帰ってたけど, 社内ではビール飲んでたり, 趣味のコーディングしてたり, ゲームしてたり, 仕事してたりといろんな人がいて面白かった.  その感じが高校のときの部活の後に似ていると思った.
 

4日目 実装

f:id:brookbach:20160323185107j:plain 総合職の方と仕様について打ち合わせしながらひたすら実装していた.  夜ぐらいには8割方完成して, レビューの開始をした

5日目 レビュー, 発表

f:id:brookbach:20160323190651p:plain 
 

 

午前中に一通り実装が終わり, レビューをしてもらった後, 14時ぐらいにデプロイできた.  余裕ができたのでお昼ご飯食べながらエンジニアの人たちの話に混じったりしてた(楽しかった)
 
 そっから発表準備をして, 15:30から発表をした.  
 発表が終わった後, みんなで打ち上げに行った. 他のチームの人とか, メンターの方とかと色々話できて楽しかった

かんそう

 5日間, 開発楽しすな日々だった.
 pixivは堅苦しい雰囲気が全くなくて, 楽しい職場だと思った.  働くとしたらこういう職場が良いと思った.
 個人としては, 作成したものをデプロイできて良かった.  土台となる部分の実装を早めにすませて細かい部分の調整をするという感じで開発していったのが良かったと思う.  あとこっそりしこんでた発表終わりのツイートが意外とうけて嬉しかった
 
 
f:id:brookbach:20160323190755p:plain

2016年1月に読んだ本まとめ

 今年の目標として本を(文庫で)100冊読む, というのを決めたので, 早速今月から本を読み始めた.  今月は8冊読めた.  はじめてみて思ったけど毎月10冊近く読むのって意識しないとできない.

今月読んだ本

  1. 理科系の作文技術
  2. コンピュータネットワークセキュリティ
  3. カラマーゾフの兄弟(中)
  4. カラマーゾフの兄弟(下)
  5. 車輪の下
  6. ハッカーと画家
  7. ご冗談でしょう, ファインマンさん(上)
  8. 青の炎

 

 以下, 軽い感想

 

 理科系の作文技術
理科系の作文技術 (中公新書 (624))

理科系の作文技術 (中公新書 (624))

 

 レポートとかを書くとき, どういうことを意識して, どんな順番で書けばいいのかを書いているHowTo本.  ちょっと内容が古いところもある(手書きで書くのを基本としてたり, 発表がパワポじゃなかったりとか)けど, 参考になる良い本だった.

 

 コンピュータネットワークセキュリティ
コンピュータネットワークセキュリティ

コンピュータネットワークセキュリティ

 

 

 大学のセキュリティ授業の教科書.  授業のために書いたらしい.  ネットワーク上にて, どこからマルウェアなどに感染して, どのように影響が出るかやその対策を一連の流れで解説している. 教科書だが, 複雑な説明がでてくるわけでもなく, とても読みやすい.  ネットワークセキュリティの基本を知りたかったら読むと良いと思う.

 

 カラマーゾフの兄弟(中, 下)

カラマーゾフの兄弟〈中〉 (新潮文庫)

カラマーゾフの兄弟〈中〉 (新潮文庫)

 

 

カラマーゾフの兄弟〈下〉 (新潮文庫)

カラマーゾフの兄弟〈下〉 (新潮文庫)

 

 

 昨年のうちに上巻を読み終わっていて, しばらく放置していたが, 気合いを入れて読んだ.  長かったし読みづらかった…... いろんな人が次々出てきて, それぞれが言いたいことを言っていく.  どの人物も, 現代人の何かしらの問題点を話しているんだと思う.  キリスト教についての西洋人の考え方がまったくわからないので, そこを知っていたらもっと楽しめたのかなと思う.  ただ終盤は面白かった.  個人的にはイワンが好き.

 

車輪の下
車輪の下 (新潮文庫)

車輪の下 (新潮文庫)

 

 

「詩人になるか, でなければ何にもなりたくない」とかいう超名言を残したヘルマン・ヘッセの自伝的小説.  内容は, 優秀故に勉強を詰め込まれすぎてパンクしてしまった少年の話. 途中BLっぽくなったりする.  全体的に暗い.  嫌なら逃げてもいい, ってことを教えてくれる人, 逃げた自分を受け入れてくれる人がいたら主人公は救われたのかなぁ

 

ハッカーと画家
ハッカーと画家 コンピュータ時代の創造者たち

ハッカーと画家 コンピュータ時代の創造者たち

 

 

 Y combinatorのポールグレアムさんが書いたエッセイ集.  順番になってるわけではないので, 好きな章から読んで良いらしい.  読むと意識上がる. 熱いLISP推し, Microsoftディスが面白い.  個人的に一番面白かったのは, 富についての章で, 今までと違う考え方を学ぶことができた.  以下にこの人が書いたエッセイの和訳一覧があるので, 暇なときにでも読んだら面白いと思う.

http://practical-scheme.net/wiliki/wiliki.cgi?naoya_t%3aポール・グレアムのエッセイと和訳一覧

 

 

 ご冗談でしょう, ファインマンさん(上)
ご冗談でしょう、ファインマンさん〈上〉 (岩波現代文庫)

ご冗談でしょう、ファインマンさん〈上〉 (岩波現代文庫)

 

 

 ノーベル賞とった理論物理学者が書いた本.  というと超難しい本のように思われるけど, 全然違う.  研究しながら職場の金庫破りを勉強したりとか, 題名の通り冗談でしょ?ってエピソード満載の逸話集.  Wikipediaにも少し書いてある.  好奇心がすごい人なんだなぁと思った.  ふざけた話の中にたまにためになることが書いてあって非常に面白い.  この人の授業は絶対面白いと思う. 

 

 青の炎
青の炎 (角川文庫)

青の炎 (角川文庫)

 

 

 かわいいクラスメイトと妹がいるイケメン秀才が主人公の推理小説.  これなんてエロゲ  推理小説なのでネタバレ回避のため反転して感想書いておく.

 ジャンルは倒叙小説で, 一歩踏み外した主人公がどんどん追い詰められていき, 最後には燃え尽きたーって感じで終わる.  小説だからアレだけど, 現実ならそうするよりもこうしてほしいなーと思う.(反転したのに結局ぼかす)

貴志先生の作品は, 新世界より, 黒い家に続き3作目. どの話も面白い.

 

今月読んだ本のまとめおわり.  どれも良い本だった.

欲しい本リスト

www.amazon.co.jp

 

ABC032に参加した

 Atcoderで行われているAtcoderBeginnerContest,通称ABCに参加した。

Welcome to AtCoder Beginner Contest 032 - AtCoder Beginner Contest 032 | AtCoder

 今までいくつかこういうのに参加してたけど、参加記ってめんどくさかったので書いたことなかった。他の人が書いてるのを見て、思考の整理になりそう&後々振り返るときなどに役に立ちそうと思ったので試しに書いてみることにした。

A. 高橋君と青木君の好きな数

 A,B二つの数で割れる,N以上の数を出力せよ、という問題。

 最小公倍数を使って・・・とか考えたが,制約を見て全探索すればいいやと思って妥協して実装した。AC時間は開始6分ぐらい。

a = gets.to_i
b = gets.to_i
n = gets.to_i
ans = n
loop do
 if ans % a == 0 && ans % b == 0
 break
 end
 ans += 1
end
puts ans

B. 高橋君とパスワード

 文字列Sに対して、長さKの部分文字列の数Tを数え上げる問題。

  • K > Sの場合は0を出力した。
  • K ≦ S の場合、見つけた部分文字列を配列Tに保存していく。
    i 文字目から i + K 文字目までの部分文字列 tmp を切り出す。
    これが新しい部分文字列の場合、 T に保存する。
    最後に T の長さを計算する。

AC時間は開始14分ぐらい。

s = gets
k = gets.to_i
t = []
if s.length < k
    puts 0 
else
    for i in 0..(s.length - k - 1)
        tmp = s[i..(i + k - 1)]
        if t.include?(tmp)
            next
        else
            t.push(tmp)
        end
    end
    puts t.length
end

C 列

 長さNの数列S、整数Kがある。Sのうち、すべての要素の値の積がK以下となるような、連続した部分列の最長の長さを求める問題。

 Sに0が含まれる場合、解はNとなる。

 Sに0が含まれ、かつK>0の場合、要素の積がK以下となるような配列sと、その積mを作成する。数を一つ取得するたびにmを再計算する。そして、m>Kの間、先頭の要素をpopしてmを再計算する。この際、sの長さの最大値を保存しておく。

 だいたいの方針は上の通り。再計算に関して、はじめ、数の出入りがあるたびにすべての要素について再計算していてTLEした。考えて、出入りする数に関してだけ計算すれば良いと気づき変更した。変更の際、出入りする要素が0のとき、mがnilのときに注意する必要があった。(2REした)

 尺取り法なるアルゴリズムがあって、それに似たようなものになったと思う。

AC時間は開始65分ぐらい。(一回目の提出は30分ぐらい)

n, k = gets.split.map(&:to_i)
s = []
max = 0
m = 0
n.times do
    s.push(gets.to_i)
    if s[-1] == 0
        max = n
        break
    end
 
    if m == 0 || m == nil
        m = s.inject(:*)
    else
        m *= s[-1]
    end
 
    while m.to_i > k
        t = s.shift
        if t.to_i != 0 && m.to_i != 0
            m /= t
        else
            m = s.inject(:*)
        end
    end
 
    if s.length > max
        max = s.length
    end
end
puts max

D ナップサック問題

 3つの条件があって、それらの条件に応じて適切なアルゴリズムを用いてナップサック問題を解く問題。できなかった。

 ナップサック問題の解法は蟻本を写経したものが手元にあったので、それをコピペしたらいけるやろとか思ってたらそんな甘くなかった。要復習。

 条件によってアルゴリズムが変わるのは面白いと思った。

さいごに

 できれば全完したかったができなかったので悔しい。ただ、まだまだ初心者でやることがたくさんあるのはわかっているので(蟻本、チーター本、ABCの過去問など)、練習を重ねて上達していきたい。

 余談だが、サンプルケースをコピペするのがめんどくさいと思いrubyでそのへんやってくれるatcoder_greedyなるgemを作ったんだが、本番でうまくサンプルを取得してくれなかった。

情報系の大学生の自分が2015年に読んだ本のまとめ

はじめに

 今年、といっても8月くらいから、本を読もうと思い読み始めた。はじめの頃は何を読んだらいいかわからなかったが、読み始めてみると一つ読み終わったら次に読みたい本が出てきてハマってしまった。
 今年の振り返りと、あとは少し前の自分のように本を読みたいと考えているが何を読んだらいいかわからないと思ってるような人に向けて書く。
 あと、本の紹介とともにアフィリエイトを貼り付ける。これは、読みたい本に対して自分の財布が寂しく、この記事を書くことで少しでもその補助が欲しいからです。また、最後に自分の欲しい本リストを公開します。優しい人は一冊でも良いので助けてください。
 

読んだ本について

 読む本の選び方だが、本当は自分で本屋に行き自分で考えて読む本を選んだ方がいいのだと思う。しかし、膨大な量の本の中ゼロから自分の読みたい本を探すのは大変難しかった。
 なので、この辺のまとめを見つつ、興味を持った面白そうな本から買い始めた。
 
 
 本はだいたいAmazonの中古、もしくはBookOffで買っている。タブレットも持っているので何冊か電子書籍で購入もしたが、活字の本を読むには紙媒体の方が読みやすいと自分は思った。この違いについては長くなりそうなので省略する。また、大学での専門科目の勉強に使う本も結構購入したが、そういった本はここには上げない。
 

読んだ本の紹介

 では、読んだ本の紹介に移る。本の紹介はジャンル別に、簡単な紹介と面白かった度を星5つを満点として紹介する。 
  紹介する本について、☆の数でソートしようとしたがあえてやめておいた。これらの本を選んだ基準でわかるように、ここで上げた本はどれもみな良い本であり、星の数は単純に自分の感想だからです。各本の紹介については、詳しく書こうとするとネタバレになってしまったり、数行では終わらなくなりそうな本が多々あったのでなるべく短くなるようにしました。
 

SF

SFは、名作と呼ばれる物を端から読んでいこうと思い読んだ。途中で他ジャンルのものを読むことが多くなりまだ読んでいない本があるのでそこを読み進めていきたい。

 

アンドロイドは電気羊の夢を見るか? (ハヤカワ文庫 SF (229))

アンドロイドは電気羊の夢を見るか?  ☆☆☆
アンドロイドが発展した世界で、人間とアンドロイドの違いとは、人間とは何か?を問いかける本。人間ってなんだろうね
 

星を継ぐもの (創元SF文庫)

星を継ぐものガニメデの優しい巨人巨人たちの星  ☆☆☆☆☆
星を継ぐ物シリーズ。ハードSFなのではじめは読むのが辛いが、読み進めていくうちに止まらなくなる。星を継ぐ物だけでも十分な大作だが、次のシリーズを読むとそれが序章だったと感じるのですごい。この辺BTTFみたいだと思った。
 

夏への扉 (ハヤカワ文庫SF)

夏への扉 (ハヤカワ文庫SF)  ☆☆☆☆
自分の発明を奪われた主人公が、それを取り戻す話。サッパリしてるSFなので、軽く読めると思う。あと猫がかわいい
 

一九八四年[新訳版] (ハヤカワepi文庫)

一九八四年  ☆☆☆☆
全体主義ディストピアな世界で、主人公がもがくが・・・という話。書かれた時代のせいなのかもしれないが、全体主義を極端に悪く書いているな、と感じた。(全体主義が良いとは言っていません)
 

華氏451度〔新訳版〕 (ハヤカワ文庫SF)

 
華氏451度 ☆☆☆☆
舞台は本を読むことが禁止された世界。本を焼くことを仕事にしている主人公が、あるとき本の魅力にハマって・・・という内容。
本を全く読まない妻、本を読んでいるが内容の復唱しかしない上司などに対し、主人公がどう感じるかが面白かった。
 

たったひとつの冴えたやりかた (ハヤカワ文庫SF)

たったひとつの冴えたやりかた  ☆☆☆☆
スター・ウォーズみたいにいろんな宇宙人がいる世界で、3つの短編が書かれている。宇宙人に限らず、未知との遭遇って面白いなと思った。
 

ホラー

角川ホラーを3冊読んだ。小説でのホラーというのは、映画や漫画と異なり音や映像、絵などの直接的な恐怖を受けることがないのでホラーが苦手でも楽しめると思う。

 

黒い家 (角川ホラー文庫)

黒い家  ☆☆☆
サスペンスホラー。サイコパスな人が相手。終盤の追い詰められてる感がすごい怖かった。
 

玩具修理者 (角川ホラー文庫)

玩具修理者  ☆☆☆
表題の短編ともう一つの中編で構成されている。
怖いというより考えさせられる系で、SFよりだと思う。
 

パラサイト・イヴ (新潮文庫)

 
パラサイト・イヴ  ☆☆☆
ミトコンドリアが反逆する本。バイオハザードで慣れてしまっていたせいかそんなに怖さは感じなかった。生物系の人が読むと色々突っ込みたくなるらしいが、自分は違和感なく楽しく読めた。
 

その他小説

ホラー、SF以外のジャンルの本をあげる。これらの本はあまり力を入れずに読めるので、息抜き感覚で読んでいた。

 

大聖堂 (上) (ソフトバンク文庫)

大聖堂  ☆☆☆
中世イギリスで大聖堂を巡る人々の話。長い。人物ドラマとして面白かった。ただ、大聖堂自体になじみがなく大聖堂の構造とか説明されても全く思い浮かばなかったのが残念だった。わからない名前出てきたら画像をググりながら読むと良いと思う。 
 

塩狩峠 (新潮文庫)

 
塩狩峠  ☆
昭和ぐらいのキリスト教の人の話。泣ける、というレビューを見て読んだが、自分にはキリスト教色強すぎて微妙だった。
 

中島らも『ガダラの豚』全3巻セット (集英社文庫)

ガダラの豚  ☆☆☆
考古学者のおっさんがアフリカに行って呪術者と闘う話。真面目かと思いきや結構ふざけてるので、TRICKとかSPEC好きな人なら楽しめると思う。 
 

オリエント急行の殺人 (ハヤカワ文庫―クリスティー文庫)

オリエント急行の殺人  ☆☆☆
オチが有名すぎてネタバレ不可避な本。呼んでる途中でオチを思い出してしまった。ただ構成は見事で面白い。もう少し推理小説を読みたいと思った。 
 

桐島、部活やめるってよ (集英社文庫)

桐島、部活やめるってよ  ☆☆☆
高校の一つの出来事を元に、高校生の心の動きを事細かに描写している。登場人物のスクールカーストがはっきりしているので、どの人に共感できるかでその人がわかりそう。
 

The Rosie Project: Don Tillman 1 (Don Tillman Series)

The Rosie Project  ☆☆☆☆
唯一の洋書。確かビルゲイツが勧める本の中にあったと思う。理系の研究者が、婚活するぜ!って本。読みやすく面白い内容だった。英語で本を読むと、感情表現とか、よりネイティブな感覚がわかる・・・気がする。ちなみに和訳も出てるようである→ワイフ・プロジェクト
 

カラマーゾフの兄弟〈上〉 (新潮文庫)

カラマーゾフの兄弟 (上巻のみ)☆☆☆
大学生のうちに読んでおいた方が良い本で必ず上がっている気がする。ロシア文学で、カラマーゾフ一家の話を題材にいろんな人の欲が書かれている。非常に読みにくいので読むのに気合いが要る。中、下巻を読んでいないので読まなければ・・・
 

アルジャーノンに花束を〔新版〕(ハヤカワ文庫NV)

 
アルジャーノンに花束を ☆☆☆☆

知能にハンデを持つ主人公が、頭の良くなる手術を受け、天才になり・・・という話。主人公の知能レベルが変わっていく中で、周りの人との関係も変わっていく。読者としては客観的に見られるが、実際自分が作中の登場人物だったらどうだろうか・・・と考えながら読んでいた。

 

役に立つ系

物事の考え方や物理、科学について書いている本。とても役に立つ本が多かった。

東大とかハーバードの先生が書いたって煽りが多い

暗号解読〈上〉 (新潮文庫)

暗号解読 ☆☆☆☆☆
 シーザー暗号から現代の暗号に至るまで、その発明と解読の解説とドラマを読みやすく、わかりやすく書いてある。暗号について全く知らなくても楽しめる。結城浩先生の暗号技術入門も冬休み中に読む。 
 

これからの「正義」の話をしよう (ハヤカワ・ノンフィクション文庫)

これからの「正義」の話をしよう ☆☆☆☆
古代から現代まで、どのように正義の考え方が進化してきたか、そしてこれからはどうするべきが、みたいなことが書いてある。大切なのは結論を決めることではなく、質問をして、考えて、議論することである。と学んだ。 
 

沈黙の春 (新潮文庫)

 
沈黙の春 ☆☆
50年ぐらい前に書かれた、化学物質を森に撒きすぎててこのままじゃ人類やばいよ、って内容。たぶんこの本が出たおかげで今なんとか地球が終わらなくてすんでいるのかな、と思った。内容は古いが大事なことが書いてあると思う。 
 

知的複眼思考法 誰でも持っている創造力のスイッチ (講談社+α文庫)

知的複眼思考法 ☆☆☆☆☆
単一的な物の見方ではなく、複数の角度から物事を考える方法を身につけるべく、本の読み方、文の書き方、物の考え方を詳しく説明してくれる。実際に身につけるのは大変だと思うが大変参考になった。
 

明日の幸せを科学する(ハヤカワ・ノンフィクション文庫)

 
明日の幸せを科学する ☆☆☆☆☆
題名が某宗教っぽいが、Stumbling on Happinessという本の訳なので全く関係ない。また、内容も幸せになるためにはとかではなく、人間の脳がどのように機能し、考えているかの解説がメインで、そのうえで間違いを犯さないためにはどうするか、ということが書いてある。最終的な結論だけでなく、自分たちの脳が以下に間違いを犯しやすいかを知ることができるだけでも読む価値がある。 
 

主役はダーク 宇宙の究極の謎に迫る

主役はダーク ☆☆☆
こちらもふざけた名前ではあるが、東大の物理の先生がダークマターとかの宇宙の話を解説した本。わかりやすく書いてあるが、著者が終始ふざけているので冗談を聞きつつ大切なところを読む力が求められた。
 

情報系

情報系の人向けの本で、特に専門的でないものをここにあげる。

 

How Google Works (ハウ・グーグル・ワークス)  ―私たちの働き方とマネジメント

Googleの中の人が、How Google Worksについて書いている。優秀な人を集めて自由にやらせとけ、みたいな内容で凡人はどうすればいいんだ、と思った。
 

珠玉のプログラミング―本質を見抜いたアルゴリズムとデータ構造

 
珠玉のプログラミング  ☆☆☆☆

コードを書いて問題を解決するために、どういう点に気をつけどう考えていくかが書いてある。競技プログラミングみたいな内容であり、実際の業務には役に立たないと思えるかもしれない。しかし、大事なのは考え方であり、この本の内容ぐらいはできていないとだめだと思う。

 

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)

リーダブルコード ☆☆☆☆
コードを書く人におすすめする本のなかだと必ず登場する本。変数名とかの単純なところから、コード全体の設計まで、どうすれば読みやすくなるかが書いてある。内容自体は難しくないが、身につけるには練習とレビューが必要である。
 

それがぼくには楽しかったから (小プロ・ブックス)

それがぼくには楽しかったから ☆☆☆☆

Linuxを開発したリーナス・トーパルズの自伝。技術の話ではなく、なぜそれを作ったか、何を考えていたかが書いてある。 雲の上の人のように感じるが、本を読むと印象が変わると思う。

 

おわりに

 以上29冊でした。思ったより少なかったので、来年はもっと読みたい。おすすめの本があったら是非紹介してください。

www.amazon.co.jp