プログラマでありたい

おっさんになっても、プログラマでありつづけたい

家賃補助がある場合のマンション購入考

 たまに呟いていますが、マンションの内覧が好きです。正確に言うと、内覧をしながらその物件の10年後、20年後の価値を考え、購入するとどれくらいの利回りになるのかと妄想するのが好きです。そういう意味で、値付けパターンが単純な新築より、中古マンションをめぐるのが好きです。
 内覧の際に考えるのが、2つの観点です。1つは利回りで、もう一つはキャッシュ・フローです。無料の不動産情報誌とか読んでいると、簡単なローンシミュレーションなどは載っているのですが、それだけでは足りないように思えます。ということで、私の思考シミュレーションをまとめてみます。また家賃補助というサラリーマン的な観点も考慮してみます。ちなみに個人的な考え方なので、突っ込みどころは満載です。

キャッシュフローから考える


 キャッシュフローとはお金の流れです。手元に入ってくるお金と出て行くお金を差し引いたものと考えてください。住宅に関するキャッシュフローを考える上で、仮に現在の家賃が13万円として、同等+αの住宅を購入しようとしたら4,000万円だったしましょう。フルローン・ボーナス返済なし・35年返済だと、毎月112,914円返済することになります。計算の単純化の為に11万円としましょう。ただし、ここに共益費や修繕費、固定資産税などがかかってきます。共益費と修繕費は全期間を通して月3万円と仮定し、固定資産税は年10万円と仮定すると、月8万3千円今日が必要になります。合計すると19万円強となります。キャッシュフロー的には、賃貸の場合より悪化します。
 ここまで書くと、マンションは最後に部屋が残るので資産価値があるという意見が出てきます。では、資産価値を含めて、次は利回りを考えてみましょう。

利回りから考える


 マンションの購入の際に考える利回りとは何でしょうか?究極的には、Exit(売却)を前提に購入金額から売却金額と経費(税金・共益/修繕費)を差し引いたものでしょう。しかしまぁ、一般的にいうと大幅なマイナスになります。そこで、自分が住んでいる分を他人に貸していると仮定して、周辺相場の家賃を参考に、それを収入と考えてみましょう。

購入金額:4000万
売却金額:2000万
居住期間:35年間
共益/修繕費合計:1,260万(3万円/月と仮定)
固定資産税合計:350万(10万円/年と仮定)
家賃合計:5,460万(13万円/月と仮定)

計算式 2,000万 + 5,460万 - 4,000万 - 1,260万 - 350万 = 1,850万

仮定ばかりで突っ込みどころ満載ですが、35年間住んだとしたら1,850万円のプラスですね。
家賃分を考えずにいると、単純に3,610万円のマイナスです。
単純に賃貸の場合の賃料総計は5,460万なので、2000万弱くらいは有利になっていますね。
(補修費が掛からないという前提ですが)

家賃補助について考える


 上記のこと検討すると、35年という長期スパンであれば購入の方が有利になります。しかし、購入の場合でも部屋の中の修繕費費というのは必要なので実際のところはもう少しコストが掛かってきます。一方で賃貸に比べると、購入の方が住宅の満足度は上げやすいというのも事実です。
 ただし、サラリーマン的に考えると、もう一つのファクターがある場合があります。それが、家賃補助です。家賃補助とは、マイホームの人は貰えないけど賃貸の人には補助してもらえるという、謎のシステムです。何故って合理的な説明は難しいですが、家賃補助があるという所は未だに多いと思います。
 正確にいうと家賃補助のシステムについても、補助分が税金掛かったり掛からなかったりと色々あります。今回は単純化して、月5万円の補助があると仮定します。すると、どうなるのでしょうか?家賃合計が5,460万から3,360万円になります。その差、2,000万円。上記の賃貸のメリット分を吸収する形となります。これを考えると、どちらを選んでも一緒というのが元日なんですね。
※今回は35年間で、部屋の価値が半分になると前提を置いています。これが値段が落ちない場合もあるし、1,000万円でも売れない場合もあるというのが分譲マンションの怖い所なのですね。ちなみに地方では、35年経つと全く売れません。

まとめ


 上記のようなことを考えると、それほど有利な物件というのが出てこなくなります。地味に家賃補助って大きいんですよね。結果、買わなくなっちゃいます。元々同じところに35年住む気もないですし、フルローンを前提にする気もありません。10年間というスケールで考えると別の結果がでる場合もあります。ということで、さっくりどこかを買うこともあるとは思いますが、考え方の一例として紹介だけしておきます。まぁ家ってのは、その人を取り巻く状況によって何が有利ってのは千差万別なので、自分なりの考え方持つとよいですよという話です

Ingress レベル16の私が、Pokemon Goを2日間やった感想

 ちょっと上から目線のタイトルにしてみました。ハマり過ぎるのが解っていたので、Pokemonはするつもりはなかったです。しかし、こんなに流行になってしまうと、どんなものか把握していないと差し障りが出るレベルなので始めました。まだ数時間やったレベルですが、現時点での感想はIngressの問題点を解決して万人向けに上手く調整してきたという印象です。

f:id:dkfj:20160725072353j:plain
f:id:dkfj:20160725072409j:plain

Ingressの問題点



 Ingressはよく出来たゲームですが、万人受けするゲームではないです。また、幾つかの問題点があります。それは、基本的には陣取り合戦なので他のユーザを敵と認識しやすいゲーム設計となっている点です。その原因の1つに、レベルとメダルが密結合している点にあります。レベル9以上にレベルをあげる為には、得点+メダルの数が必要になります。そのメダルの中に幾つかに、他ユーザの行動によって左右される条件があります。その最たるものがガーディアン(守護者)というものです。このメダルは、ポータルという拠点を何日間か防衛しないと取得できません。金のガーディアンメダルを取るためには、20日間防衛する必要があるのですが、19日目とかに攻撃され陥落しようものなら攻撃した相手恨んでしまいますね。
 上記のようにIngressの基本は、2陣営に分かれての戦いになります。その為、どうしても敵味方の概念が出てきてしまいます。

Pokemon Goの場合



 それに対してPokemon Goの場合は、基本的には他のユーザの行動が自分のプレーに影響されない設計になっています。同じ場所でポケモン探していたとしても、取り合いという形にはなりません。その為、周りにプレーしている人がいても気になりません。リアルでのユーザ行動見ていると、複数人で一緒に移動したりと仲良くプレーしている人が目立ちます。
※ちなみに、Ingressの場合は他ユーザに遭遇する機会は少なかったのですが、他ユーザに気がついたら基本的にコソコソと撤退していました。

 この部分、Ingressで培ったノウハウを、よく活かしてるのが解ります。特に感じるのが、メダルとレベルを分離したことです。また、唯一の戦いの場であるジムバトルも、揉める要素が最小になっているように思います。まだルール理解していない部分も多分にありと思いますが。。。

解消していない問題



 もちろんPokemon Goになっても解決していない問題は沢山あります。例えば、都会・田舎の格差問題です。ポケスポットは、Ingressのポータルのデータを引き継いでいます。その為、Ingressのポータル過疎地はポケスポット過疎地になっています。ポケスポット以外にもポケモン出るようになっていますが、出現率でみるとやはり低いようです。そうなると、やはり田舎のユーザには厳しい作りとなっています。一方で、ポケスポットを連続で利用できる間隔が短くなっているので、Ingressに比べると少し緩和しているかなぁという気がします。

課金プレーについて



 Ingressの場合、殆ど課金する意味がなかったです。しかし、Pokemonの場合、ブーストアイテムはレベルアップでプレゼントされるか買うかしかないです。やっているうちに課金したくなる作りなので、上手いこと考えたなぁと思います。また、買わなくてもゲームは充分楽しめるので、廃課金とかの問題を出さない作りで良いと思います。

電池消費について



 体感レベルですが、電池の消費激しすぎます。モバイルバッテリーで充電していても、Nexus 5xだと電池が減ってきます。この辺り、バージョンアップで解消して欲しいですね。モバイルバッテリーが必須です。

感想



 データを持っているところ(Niantic)と、キャラクターを持っているところ(任天堂)は、強いですね。ただブランドに傷を付けないように、いろいろ苦労しているのが垣間見れます。いずれにせよ暫くはブーム続くと思われるので、ウォッチしていきたいです。


技術書執筆に関するお金の赤裸々な話

 本を書いてると、よく『儲かるの?』と聞かれます。私は決まって、『儲かりません』と答えます。総額ベースではそれなりに貰っているのですが、何故そう答えるか整理してみます。

印税の仕組み



 執筆に関する収入として、大きく2種類があります。1つはページ数に対しての単価が設定され、発売部数に関係なく支払われるタイプ。もう1つは、印税率を設定して書籍価格×出版部数×印税率が支払われるタイプです。前者は雑誌やムック本などに多く、それ以外のものは後者の印税のパターンが多いです。
 また印税にも契約条件が細分化されています。大きく分けると刷数に対して支払われるのと、実売ベースのものです。当然、筆者としては前者の方が有利になります。

1冊書くと、どれくらいの印税になるのか



 最近書いた『Amazon Web Services クラウドネイティブ・アプリケーション開発技法』のケースで考えてみましょう。この本の価格は、3,680円+税となっています。印税の対象は消費税は除外されます。税込み価格が3,974円ですが、3,680円に対して印税が支払われます。そして気になる印税率です。これは出版社や初版・増刷によって異なりますが、8〜10%というケースが多いのではないでしょうか。(詳細は内緒)そして、初版部数は技術書だと3,000〜4,000冊というところではないでしょうか。ということで計算式は次のようになります。

3,680(円) × 3,000(冊) × 0.08 = 883,200(円)

 88万円と聞くと、結構な金額に思えます。ただこれは、一人で全部書いた場合です。実際には、この本は6人で書いています。割り方は執筆者の間で取り決めですが、6等分したとしたら、147,200円です。どんどん小さくなってきましたね。

時間あたりの労働単価



 もう少し掘り下げて、時間辺りの労働単価は幾らになるのでしょうか。計算を単純化するために、1人あたり100ページで15万円支払われたとしましょう。ページあたり単価は、何と1,500円となります。そして問題になるのが、1ページをどれくらいの時間で書けるのか。一概に言えませんが、調査の時間とかを考えると2〜3時間は見ておいた方がよいでしょう。(もっと早く書ける場合もあるし、もっと時間が掛かる場合もあります。)3時間としたら、時給500円ですね。
 というところが、儲かりませんと答える所以です。まぁ上記は初版のみ考えていましたが、増刷時の旨味はあります。

感想



 とは言っても、儲からないから書くのは損だという訳ではありません。執筆に関する人生のボーナスは沢山あります。ということで、一度出すと繰り返して書いてしまうのですよね。

Amazon Web Services クラウドネイティブ・アプリケーション開発技法 一番大切な知識と技術が身につく (Informatics&IDEA)

Amazon Web Services クラウドネイティブ・アプリケーション開発技法 一番大切な知識と技術が身につく (Informatics&IDEA)

  • 作者: NRIネットコム株式会社,佐々木拓郎,佐藤瞬,石川修,高柳怜士,佐藤雄也,岸本勇貴
  • 出版社/メーカー: SBクリエイティブ
  • 発売日: 2016/04/20
  • メディア: 単行本
  • この商品を含むブログを見る

See Also:
アプリケーションエンジニア向けのAWS本を書きました
Amazon Web Services クラウドネイティブ・アプリケーション開発技法の目次
『Rubyによるクローラー開発技法』を書きました
『Amazon Web Services パターン別構築・運用ガイド』を書きました

AWS Summit 2016 Tokyoの感想

 3日間のお祭りが終わったので、感想を残しておきます。私の立場としては、出展者やAWS本の著者、ベンダー、JAWSUG参加者など色々あります。まぁその辺りを無視して、ただの感想です。

出展者として



 AWS Summitのブースに立ったのは久しぶりでした。ブースに訪れてくれるユーザのAWSの関心の高さ・具体性が段違いに高いというのが印象的でした。たしか前にたったのは3年程前で、その時は情報収集段階という人が多かったです。今年は、もう既に導入している/導入検討している上で、具体的な悩みなどを色々聞くことができました。後のフォロー次第ですが、出展者側としては、AWS Summitはやはり重要な機会ですね。

AWS本の著者としてて



 ブースに『Amazon Web Services パターン別構築・運用ガイド』と『Amazon Web Services クラウドネイティブ・アプリケーション開発技法』を並べて、立ち寄った人に紹介していました。パターン別構築・運用ガイドについては、結構な割合で知っている人が多くて嬉しい限りでした。一方で、クラウドネイティブ・アプリケーション開発技法の知名度はまだまだでした。もう少し広まればなぁと思います。まぁ発売1年と1ヶ月で、第4刷・初刷の差は大きいのかも。来年は、両方共しっているよと言われることを目指したいです。

セッション参加して



 ブースにいたり個別ミーティングをしてたりと、あまりセッションは参加できなかったです。参加したのは、2つのキーノートとウフルさんのIoTセッションです。前者については、昨年一年の振り返りと今年一年の方向性の確認のためです。概ね想定通りユーザー側の積極的利用が牽引するという形にいたのを確認できて良かったです。
※まぁこれも全国に広がったユーザコミュニティとそれを支えるエンジニアのお陰だと思いますが。
ウフルさんのセッションは、予想以上に良かったです。IoTというバズワードの陰で顕在化している問題もしくは落とし穴にハマりつつ乗り越えていった知見の共有が素晴らしかったです。

ランチ



 カレーが食べたかった。ただし、昨年の混雑を考えると仕方がないですね。

JAWS-UG



 JAWS-UGの認知を高める場としては、最高の場所ですね。スペースに対して人数が多すぎる部分はありますが、お祭りとしては大成功ではないでしょうか。ブースの片付けでLTは殆どみれず、ウルトラクイズは壇上手前で間違えたのは痛恨の極みでした。

感想



 お祭りのような3日間でした。今日からまた日常に戻って、一歩一歩進んでいきます。ただ3日間立ちっぱなしはシンドかったなぁ。

もうすぐ出る/最近出たAWS本5冊

 AWS Summit2016の興奮が冷めやまぬ今日この頃です。Amazonのクラウドのカテゴリを見ていると、新しい本が大量に並んでいました。AWS本が一気に4冊も登場ということで、軽く紹介してみます。タイトルと目次だけみて感想を書いているので、悪しからずご了承ください。

Amazon Web Services企業導入ガイドブック


 タイトルとサブタイトルで対象者が明確化されているのが、この『Amazon Web Services企業導入ガイドブック -企業担当者が知っておくべきAWSサービスの全貌から、セキュリティ概要、システム設計、導入プロセス、運用まで-』です。その名の通り企業に導入する際に検討すべき事項が網羅的にカバーされています。フォーカスも技術的な話ではなく、AWSを導入する上でどう標準化していくかとかプロセスに落とし込んでいくにはどうしていけばよいのかという内容でした。(AWS Summitの会場で、パラパラと立ち読みしました。)そんなこんなもあり、息の長い本になるのではという一冊です。
 ちなみに注目すべきは、著者陣です。荒木さんに始まり大谷さん、小林さん、酒徳さん、 高田さん、瀧澤さん、山本さん、 吉羽さんとAWSの中の人・もと中の人のオールスターで書かれています。後にも先にもこのメンツの著作を読めるのは、この本だけでしょう。是非、紙の本を買って、サイン行脚の度にでましょう。サインを求める際に質問も出来たら、きっと全部集めたころにはAWSマスターになれるはずです。なお、私のAWS本の第三弾は、こんな感じの本にしようか企画立てておりました。どうしようかなぁ

Amazon Web Services企業導入ガイドブック -企業担当者が知っておくべきAWSサービスの全貌から、セキュリティ概要、システム設計、導入プロセス、運用まで-

Amazon Web Services企業導入ガイドブック -企業担当者が知っておくべきAWSサービスの全貌から、セキュリティ概要、システム設計、導入プロセス、運用まで-

  • 作者: 荒木靖宏,大谷晋平,小林正人,酒徳知明,高田智己,瀧澤与一,山本教仁,吉羽龍太郎
  • 出版社/メーカー: マイナビ出版
  • 発売日: 2016/06/10
  • メディア: 単行本(ソフトカバー)
  • この商品を含むブログを見る

ちなみに著者の吉羽さんが、抽選でのプレゼントキャンペーンをしていました。申込期間は、2016年6月5日〜9日です。

【10名様にプレゼント】Amazon Web Services企業導入ガイドブック - connpass

Amazon Web Servicesではじめる新米プログラマのためのクラウド超入門



 山田祥寛さんの監修のAWS本です。『Amazon Web Servicesではじめる新米プログラマのためのクラウド超入門』というタイトルから察すると、アプリケーションエンジニアがどうAWSを使うのかなと思ったのですが、目次を見る限りは普通にインフラよりっぽい話が多そうです。Dockerを扱っているのもよいですね。
※まだ読んでいません。

Amazon Web Servicesではじめる新米プログラマのためのクラウド超入門

Amazon Web Servicesではじめる新米プログラマのためのクラウド超入門

  • 作者: WINGSプロジェクト阿佐志保,山田祥寛
  • 出版社/メーカー: 翔泳社
  • 発売日: 2016/06/17
  • メディア: 単行本(ソフトカバー)
  • この商品を含むブログを見る

Amazon Web Services 定番業務システム12パターン設計ガイド



 『Amazon Web Services 定番業務システム12パターン設計ガイド』は、日経BPからの出版です。ページ数が176ページと薄めです。タイトルどおり12個のパターンをどう説明するのかな目次を見ると、AWSの概要的な説明はなしに最初からパターンの説明から入っているようです。AWSの説明については巷にいろいろあるので、それもありなのかもしれません。吉とでるか凶とでるか、注目です。
※まだ読んでいません。

Amazon Web Services 定番業務システム12パターン設計ガイド

Amazon Web Services 定番業務システム12パターン設計ガイド

実践AWS lambda 限定お試し版



 『実践AWS lambda』は、日本におけるサーバレスアーキテクチャのビジョナリーであるAWSの西谷さんの書き下ろし本です。AWS Summit向けの限定今回で、本編は9月発売とのことです。帯に"「AWS Lambda」の基本から、中級者向けの「こなれた」使い方まで満載!"とあるので、期待感が増します。個人的には、フレームワーク編Serverless,Zappa,APEXの3つと継続的インテグレーションが気になります。

実践AWS lambda 限定お試し版

実践AWS lambda 限定お試し版

Amazon Web Services クラウドネイティブ・アプリケーション開発技法



 最近じゃないと石を投げられそうですが、1ヶ月と少し前なのでご容赦ください。Amazon Web Services クラウドネイティブ・アプリケーション開発技法のコンセプトは、アプリケーションからAWSをどう組み込むかです。通常のAWS本とは、逆のアプローチを試みています。サンプルコード盛り沢山で、触っているうちにアプリの作り方もAWSの使い方も覚えられるようなものを目指しました。

Amazon Web Services クラウドネイティブ・アプリケーション開発技法 一番大切な知識と技術が身につく (Informatics&IDEA)

Amazon Web Services クラウドネイティブ・アプリケーション開発技法 一番大切な知識と技術が身につく (Informatics&IDEA)

  • 作者: NRIネットコム株式会社,佐々木拓郎,佐藤瞬,石川修,高柳怜士,佐藤雄也,岸本勇貴
  • 出版社/メーカー: SBクリエイティブ
  • 発売日: 2016/04/20
  • メディア: 単行本
  • この商品を含むブログを見る

 ちなみに1年前に出した『Amazon Web Services パターン別構築・運用ガイド』についても未だに売れ続けています。日によっては、Amazonのクラウドカテゴリのトップということもあります。定番本になると良いですね

Amazon Web Services パターン別構築・運用ガイド

Amazon Web Services パターン別構築・運用ガイド

感想



 6月だけでAWS本が3冊+1冊の発売です。Summitに合わせて来たんだろうなぁと予想ができます。というか、サミット前に出版したかったのではと邪推しております。(Amazon Web Services企業導入ガイドブックは、会場で見ることができましたしねぇ)

Amazon Web Services企業導入ガイドブック -企業担当者が知っておくべきAWSサービスの全貌から、セキュリティ概要、システム設計、導入プロセス、運用まで-

Amazon Web Services企業導入ガイドブック -企業担当者が知っておくべきAWSサービスの全貌から、セキュリティ概要、システム設計、導入プロセス、運用まで-

  • 作者: 荒木靖宏,大谷晋平,小林正人,酒徳知明,高田智己,瀧澤与一,山本教仁,吉羽龍太郎
  • 出版社/メーカー: マイナビ出版
  • 発売日: 2016/06/10
  • メディア: 単行本(ソフトカバー)
  • この商品を含むブログを見る

AWS認定ソリューションアーキテクト - プロフェッショナルに合格したので、調子に乗って勉強方法を考えてみる

f:id:dkfj:20160525073947p:plain

 AWSの本を2冊書いていますが、AWS認定資格を1つも持っていませんでした。(正確に言うと、ソリューションアーキテクトのアソシエイトを持っていたけれど、2016年4月末で有効期限切れで失効していました。)会社の後輩たちが、どんどんプロ資格を取っていって疑いの目を向けられるようになってきたので、これはまずいと受験することにしました。昨日受けて無事合格したものの、幾つか反省点があるのでまとめてみます。

AWS認定資格の概要



 AWSの認定資格は、2016年5月現在では2つのレベル・3つの分野があります。まずエントリーレベルであるAssociateは、一番メジャーで全般的な知識を問うSolutions Architect、開発者向けのDeveloper、運用管理者向けのSysOpsの3つがあります。そして下位の資格を持っていないと受験できないプロフェッショナルは、Solutions ArchitectとDevOpsがあります。DevOpsは、DeveloperもしくはSysOpsのどちらかの資格をもっていれば受験できます。何となくRPGの合成職みたいで厨二病な感じがしますね。
 試験範囲は、AWS認定の準備からそれぞれの資格に遷移し、試験ガイドのPDFを落とすことで解ります。例えば、SAプロの場合は、下記のような出題範囲と配点になっています。

  分野 試験に占める範囲
1.0 高可用性および事業継続性 15%
2.0 原価計算 5%
3.0 デプロイメントマネージメント 10%
4.0 ネットワーク設計 10%
5.0 データストレージ 15%
6.0 セキュリティ 20%
7.0 拡張性と伸縮自在性 15%
8.0 クラウド移行およびハイブリッドなアーキテクチャ 10%

 分野の中で扱う内容は、ガイドの中に細かく書いています。

AWS認定ソリューションアーキテクトの勉強方法



 上記を踏まえてどう勉強するかです。試験の出題者の意図としては、試験対象の範囲の知識を満遍なく持っていて、その中から適切なアーキテクチャを選択できるかという点にあります。ということは、当然試験範囲のサービスについては把握しておく必要があります。またAWS認定試験の特徴としては、具体的なシーンに基いて解決策を求めるという傾向があります。その為、サービスの知識だけではなく、実践的なアーキテクチャ設計の経験が必要になります。その辺りを踏まえて効率的に勉強するとしたら、下記の優先順位あたりかなと思います。

 概要を知った上で、サービスに触れる・デザインパターンを知るということが特に重要になります。

弱点補強



 SAプロの試験の範囲に、専用線サービスであるダイレクトコネクトや複数のアカウントでの認証連携があります。何気にここが弱点になっている人が多いのではないでしょうか。そもそもダイレクトコネクトを設置する機会は少ないはずです。また複数アカウントを運用するという経験も、利用環境によっては全くない人もいると思います。ここの部分、自習方法があるのでやっておく方がよいかもしれません。

 ダイレクトコネクトについては、AWS専用線アクセス体験ラボです。これは実際にオンプレミスのルーターを設定して、AWS Direct Connectを使ってVPCに接続するハンズオンとなっています。私は参加したことがないのですが、参加した人に聞くとかなり実践的で勉強になるそうです。一度手を動かしているのと動かしていないのでは、勉強するにしても情報の吸収力が違います。東京・大阪に限定されていますが、ぜひ一度受けてみると良いのではないでしょうか。

 次に複数アカウントの連携です。これは2つのアカウントを使って試してみましょう。クロスアカウントでロールによって認証などの経験があると、STS周りの説明を聞いた時に理解が進むはずです。アカウント複数作っても、IAMだけだと無料です!

今回の受験に関して実施したこと



 自分の中で、AD関係・クロスアカウントでの認証周りが弱点ということは解っていました。またKMS(Key Management Service)についても知識が足りないので補強しようかなと思ってました。が、時間切れで結局まったくやらずに受験という形になってしまいました。案の定、その辺りに関係するセキュリティの配点が低かったです。反省

 AWSに関しては、最近の業務では実務的な意味で深いことは自分でやっていないです。一方で、AWS技術コンサルティングサービスみたいな形で、お客さんのところに行ってよろず相談をしています。その中で色々な環境と悩みを聞いてアーキテクチャを考えているので、その辺り経験値面で有利だったかなぁと思います。ちなみにこのコンサルティング、基本はAWS前提ですがアプリアーキテクチャの話とか多岐に渡るので油断が出来ないです。自分自身にとっても勉強になるので、楽しいのですけどね。興味がある人は、こっそり連絡くださいw

感想



 受かって良かった!!

Amazon Web Services パターン別構築・運用ガイド

Amazon Web Services パターン別構築・運用ガイド

Amazon Web Services クラウドネイティブ・アプリケーション開発技法 一番大切な知識と技術が身につく (Informatics&IDEA)

Amazon Web Services クラウドネイティブ・アプリケーション開発技法 一番大切な知識と技術が身につく (Informatics&IDEA)

  • 作者: NRIネットコム株式会社,佐々木拓郎,佐藤瞬,石川修,高柳怜士,佐藤雄也,岸本勇貴
  • 出版社/メーカー: SBクリエイティブ
  • 発売日: 2016/04/20
  • メディア: 単行本
  • この商品を含むブログを見る

クローラー/スクレイピング本が充実

 ふと気がついたのですが、ここ1〜2年で言語ごとのクローラー/スクレイピング本が出てきています。まとめがてらに感想と一緒に紹介してみます

PythonによるWebスクレイピング



 直近で出たスクレイピング本としては、PythonによるWebスクレイピングです。購入だけしてまだ読んでいないのですが、BeautifulSoupとScrapyを利用してスクレイピングしているようです。個人的にはrubyを使ってスクレイピングすることが多いのですが、BeautifulSoupはrubyのnokogiriより使いにくいと思っています。一方でrubyのクローラーフレームワークであるanemoneよりScrapyの方が優れた設計・特性をもっているかなぁと思っています。スクレイピングを始める前にrubyかpythonかの選択に悩んだのですが、BeautifulSoupよりnokogiriが良いやという理由でrubyを選択しました。この本を読みながらじっくりPythonのスクレイピングを学んでみようかなと思います。

 それ以外に興味深い点としては、PDFやMS Word、さらには画像認識とテキスト処理ということでOCRといったことにも取り組んでいます。この辺り興味ありますね。

PythonによるWebスクレイピング

PythonによるWebスクレイピング

目次

まえがき
第I部 スクレイパーを作る
1章 最初のWebスクレイパー
1.1 つなげる
1.2 はじめてのBeautifulSoup
2章 高度なHTMLパーシング
2.1 いつもハンマーが必要なわけではない
2.2 BeautifulSoupの別の使い方
2.3 正規表現
2.4 正規表現とBeautifulSoup
2.5 属性へのアクセス
2.6 ラムダ式
2.7 BeautifulSoupを超えて
3章 クローリングを開始する
3.1 単一ドメインを走査する
3.2 サイト全体をクローリング
3.3 インターネットをクローリング
3.4 Scrapyでクローリング
4章 APIを使う
4.1 APIはどう働くか
4.2 共通表記
4.3 レスポンス
4.4 Echo Nest
4.5 Twitter
4.6 Google API
4.7 JSONをパースする
4.8 すべてをホームに集める
4.9 APIについてさらに学ぶ
5章 データを格納する
5.1 メディアファイル
5.2 データをCSVに格納する
5.3 MySQL
5.4 メール
6章 文書を読む
6.1 文書エンコーディング
6.2 テキスト
6.3 CSV
6.4 PDF
6.5 Microsoft Wordと.docx

第II部 高度なスクレイピング
7章 汚れたデータをクリーニング
7.1 コードでのクリーニング
7.2 事実の後でクリーニング
8章 自然言語の読み書き
9章 フォームとログインでクロール
10章 JavaScriptのスクレイピング
11章 画像処理とテキスト認識
12章 スクレイピングの落とし穴を避ける
13章 Webサイトをスクレイパーでテストする
14章 リモートでスクレイピング

付録A Python入門
付録B インターネット入門
付録C Webスクレイピングの適法性と倫理

訳者あとがき
索引

JS+Node.jsによるWebクローラー/ネットエージェント開発テクニック



 Node.jsでクローラーといえば、このJS+Node.jsによるWebクローラー/ネットエージェント開発テクニックです。この本の特徴としては、Node.jsのモジュールをいろいろ紹介しているので、Node.js初学者に作りながら学べるという点が大きいです。一方でクローラー特有の要素であるHTMLから要素の指定方法など、もう少し説明が欲しいなぁと思うこともあります。ただ、コンパクトにまとまってバランスの良い1冊であることは間違いありません。

JS+Node.jsによるWebクローラー/ネットエージェント開発テクニック

JS+Node.jsによるWebクローラー/ネットエージェント開発テクニック

第1章 開発環境の準備
第2章 Web データの収集
第3章 ログインの必要なWebサイトをクロールする
第4章 データの整形と保存
第5章 形態素解析で日本語を扱う
第6章 クローラーのためのデータソース
第7章 データの分類と予測と機械学
第8章 データの視覚化と応用

Excel VBAでIEを思いのままに操作できるプログラミング術



あまりクローラー/スクレイピング本と認識されいないけど、凄い1冊がExcel VBAでIEを思いのままに操作できるプログラミング術です。ExcelのVBAからIEを呼び出して、IEでDOMを操作して情報を収集するという本です。この本の存在を最近まで知らなかったのですが、私が初めてスクレイピングをした時と同じやり方で感動しました。人にスクレイピングを勧めるにも、プログラムの実行環境をどうするか悩ましい問題です。オフィスワーカーの共通プラットフォームであるエクセルを使うのは、いい選択肢と思います。(IE+DOM操作は面倒くさいですが)

Excel VBAでIEを思いのままに操作できるプログラミング術 Excel 2013/2010/2007/2003対応

Excel VBAでIEを思いのままに操作できるプログラミング術 Excel 2013/2010/2007/2003対応

1 初めてのIE制御
2 理解しておくべき基礎知識
3 IEの動作や外観を制御する
4 HTML画面部品の制御
5 Webサイトを自動操作する
6 Webページ解析のテクニック

Rubyによるクローラー開発技法



 せっかくなので、自分が書いた本も紹介させてもらいます。Rubyによるクローラー開発技法は、私が初めて書いた本です。クローラー本ですが、その周辺技術のHTMLのxPath,CSSセレクタ・正規表現の考え方の他、サーバサイドのことまで書いています。2章以降を担当し400ページ近く書きました。今目次を見返しても、いろいろ書いたなぁと思えるくらい多岐に渡っています。またサンプルも多いので、クローラー/スクレイピングをしようとした際は、たいてい似たパターンの書き方を見つけることが出来るのではないでしょうか。
 おかげ様で発売から2年近く経っても売れ続けています。改訂版を出すとしたら、サーバサイドの部分をAWS Lambda使うパターンを足したいなぁと思います。

Chapter 1 10分クローラーの作成
 1-1 イントロダクション
 1-2 クローラー 「GNU Wget」
 1-3 クローラーを作るにあたってのRubyの基礎
 1-4 Rubyでテストサーバを立てる
 1-5 超簡単! 10分で作るクローラー
 1-6 クローラーを拡張する
Chapter 2 クローラー作成の基礎
 2-1 クローラーの目的と構造
 2-2 Anemoneを利用する
 2-3 Anemoneのインストール(Windows編)
 2-4 Anemoneのインストール(Mac編)
 2-5 基本的なクローラーを作成する
 2-6 クローリングができない場合の対処法
 2-7 行儀のよいクローラーを作るには
 2-8 ブラウザタイプのクローラー
Chapter 3 収集したデータを分析する
 3-1 収集したデータを分析する
 3-2 HTML解析と正規表現
 3-3 文字コードの対処法
 3-4 RSSの解析
 3-5 HTMLの解析
 3-6 自然言語を使った日本語の処理
Chapter 4 高度な利用方法
 4-1 データの保存方法
 4-2 クローラーの開発とデバッグ方法
 4-3 クローリングとスクレイピングの分離
 4-4 クローラーを効率的に動かすには
 4-5 Anemoneのオプション一覧
 4-6 APIを利用した収集
Chapter 5 目的別クローラーの作成
 5-1 Google の検索結果を取得する
 5-2 ブログへのクローリング
 5-3 Amazonのデータを取得する
 5-4 Twitter のデータ収集
 5-5 Facebookへのクローリング
 5-6 画像を収集する
 5-7 YouTube から動画を収集する
 5-8 iTunes Store の順位を取得する
 5-9 Google Playの順位を取得する
 5-10 SEOに役立てる
 5-11 Wikipediaのデータを活用する
 5-12 キーワードを収集する
 5-13 流行をキャッチする
 5-14 企業株価情報を収集する
 5-15 為替情報金融指標を収集する
 5-16 郵便番号と緯度経度情報を取得する
 5-17 新刊情報を収集する
 5-18 荷物を追跡する
 5-19 不動産情報を取得する
 5-20 官公庁のオープンデータを活用する
 5-21 新聞の見出しを集める
Chapter 6 クローラーの運用
 6-1 サーバサイドで動かす
 6-2 定期的にデータを収集する
 6-3 収集結果をメールで自動送信する
 6-4 クラウドを活用する
 6-5 さらなる高速化の手法
 6-6 変化に対応する
 6-7 クローラーとそれに付随する技術

感想



 Spidering Hacksからの空白の10年。主要なスクレイピング言語でクローラー/スクレイピング本が揃ったということは結構幸せなことではないかなと思っています。あと1つ足りないと思っているものがあるので、どこかのタイミングで出してみようかなとも思います。