Dennis E. Shasha
Amazonランキング:1366位
Amazonおすすめ度:
Amazonおすすめ度:

この本は、レバレッジサロンをともに設立したH・Millsさんが企画した書籍です。
僕も本好きプログラマーという事で、出版前のレビューに参加させていただきました。
H・Millsさん出版おめでとうございます!
[概要]
・プログラマとしての力を伸ばしたい人
・ソフトウェア開発職でより良いポジションに就きたいと考えている人
・優れたプログラマを採用したいと考えている企業とその採用担当者
本書は上記のような人に向けた論理パズル集である。
[著者]
Dennis E. Shasha氏は、ニューヨーク大学クーラン数理科学研究所コンピュータサイエンス学科で教授職を務める。
本書の他にパズル関連の書籍を5冊、コンピュータサイエンティストにまつわる逸話をまとめた伝記、データベースチューニング、生物学におけるパターン認識 、時系列データ分析に関する著書を出版。
[ポイント]
・考える力を鍛えるのは難しい
思考力を鍛えるには王道はない。能力を身につけるためには、トレーニングを繰り返すしかない。
頭で理解するだけでなく、訓練を通して身につける必要がある。
・パズルは思考力のトレーニングに最適
ソフトウェア開発で共通しているのは、「明確な設計方法や答はすぐには導けない、もしくは存在しない」ということだ。
しかしそのような問題に何らかの道筋や回答を見つけなければならない。 そのためには公式を覚えて当てはめるのではなく、頭を使う必要がある。 頭を使う難しいパズルは、こういった問題を解くためのトレーニングとして最適なものである。
・ソフトウェア開発とパズル
1.「機能・要件定義」では提示された問題を深く観察・理解し、開発すべき目的を明確にしなくてはならない。これはパズルの題意を理解することに相当する。
2.「設計」では、パズルを解く手法そのものに相当する。
3.「コーディング」では、アルゴリズムのひらめきやコードレベルでの例外処理を網羅するといったことがパズルでの制約条件を正確に見抜く力に似ている。
4.「テストケース作成」では、解法の仮説を立てて仮の解答を導く力がテストケースのカバレッジに生かされる。
5.「デバッグ」における、限られた情報から隠れた本質を導きだす作業は、まさにパズルにおけるケース分析に等しいといえる。
[サンプル問題]
インフルエンザの予防接種を受ければ100%予防できる。 しかし受けずにいるとインフルエンザが蔓延した場合に10%の確率で死亡する。 インフルエンザの予防接種を受けると5%の確率で死亡してしまうリスクもある。 政府機関が60%の国民に予防接種を受けさせた場合、総人口に対してインフルエンザによって死亡するリスクは何%か?
この問題は本書の中ではかなり簡単な方です、解答は本書で^^
[感想]
とにかく難題のオンパレード!
レビューをしたとはいえ、自力で解けた問題はわずかでした、、、
特に難しい問題はこんなアイコンがついています(笑)
自分の思考力を試したい方、難題こそ燃えるストイックな方、Google・Microsoftに入社したい方!?、是非本書を手にとってみて下さい。
H・Millsさん、このようなレビューの機会を下さりありがとうございます。
非常にエキサイティングで貴重な経験でした。
まだ解けていない問題はこれからじっくり取り組みます^^;
![]() |
![]() |
![]() |
![]() |
| Powered by SEO対策 RSSプラス | |||











