「自走プログラマー」という本が出ます!この本は僕と清水川さん、tell-kさんで、株式会社ビープラウドの仕事として書いた本です。自走プログラマーには僕の10年来の開発ノウハウを詰め込みました。清水川さんtell-kさんに至ってはもっと長い経験があります。その3人が、入門本ではない本を本気で書きました。ビープラウドのつよつよメンバーが何度も何度もレビューしてくれました。僕は自走プログラマーを多くの人にぜひ読んでほしいと思っています。「とにかく買ってほしい」とはあまり思っていません。「多くの人に読んで欲しい」、「これで助けになってほしい」と思っています。ビープラウドでは自走プログラマー(とPythonプロフェッショナルプログラミング)を読んでもらったうえで普段話をしたいです。ことは多くないですか?自走プログラマーはそういった人のための本です。自走プログラマーの前書きより引用します。開発現場で起こった実際の問題とその解決法をもとに,文法以外に必要な「プロジェクトの各段階でプログラマーがやること」「その選択をどう判断するのか」「どうコードを実装して実現していくのか」を解説します。自走プログラマーは120個のプラクティスを通して学べる本です。各プラクティスには具体的な失敗とベストプラクティス、説明が書かれています。120個のプラクティスはこちらです(以下、長いです)。気になるものがあるか見てみてください。本の雰囲気も伝わると思います。ストーリーが満たせるかレビューしようこうやって見ると、よく書いたもんだなと思います。著者の3人が個別のプラクティスを分業して書きました。120です!手取り足取り教えてくれる本ではありません網羅的かつ段階的に設計やアプリケーション開発を教える本ではありません。「入門書はとりあえず終わったので次に何かを教えてくれる本が欲しいな」という人には残念ながら向いていません。「あなたもこれを作ってみよう」という本ではありません。設計やアプリケーション開発に重要なこと、ノウハウやプラクティスはたくさんお伝えしています。何か作りたいものがあって、挑戦しているがうまくいかないことが多く悩んでいる人にはオススメします。逆に、何か作りたいものも分からない人や、自力でプログラムを書いてみたことがあまりない人にはオススメしません。先輩プログラマーの人でこの本を後輩さんに読ませたいなというときは、この本がアドバイスや導きのキッカケになると嬉しいです。したら、キッチリ題材を作って学ばしてあげる必要があるかもしれません。1プラクティスに書かれている内容が、先輩的には十分とは思えないかもしれません。そのときはぜひ、直接後輩さんや他メンバーにあなた自身のノウハウを教えてあげてください。いう意味では既存のPythonの本とは少し違います。どちらかというと、リーダブルコードに近いかもしれません。内容はプログラミング言語Pythonを使って書かれていますし、Python製のライブラリーやフレームワークを元にした説明が中心になります。プログラミングも詳しくないし、Pythonも詳しくないという人には分かりにくいかもしれません。Railsに慣れている人などは勉強になると思います。具体的にPython製のライブラリーを紹介しているトピックなどはありますが、その部分は「Rubyでもこういうライブラリーはあるのかな?」と考えて読んでいただければと思います。長い長い執筆期間と込めたノウハウこの本は著者陣が仕事の中で他の人に教えたことを中心に執筆しています。コードレビューや、社内でのサポート、社内外の研修、コンサルティングの中で伝えてきたことをまとめています。ビープラウド社内のメンバーも積極的にレビュー、コメントしてくれて、社内のかなりのノウハウが取り込まれています。執筆に際しては社内で半年から1年をかけてネタを集めて、選別する時間を設けました。著者の3人が日々の業務で伝えたことや感じたこと、過去に社内で伝えたことをネタ帳として集めてから執筆しています。「ログには5W1Hを書こう」という僕が執筆を担当したプラクティスがあるのですが、これは5年前(2015年)から社内では共有していた知識です。これは社内でも好評で、「ロギングって大事だけど、何を書くべきかを学べる場所がなかった」とフィードバックを受けていました。そのノウハウがやっと日の目を見ることになって、僕個人としてはとても嬉しいです。こんなにうれしいことはない。この話が日の目を見ることになった。2020年2月20日それ以外にもこの本は紆余曲折あり、一旦けっこう書いた内容を、構成や構造を変えて新しくしたりと大変でした。執筆メンバーが抜けて再スタートしたり、正直、時間をかなり書けたので費用対効果はかなり悪い本になってしまったなと思っています。その分、長い時間を使っただけに本当に良い内容だけが本に抽出されたように思います。この本を読んで日々のプログラミングやチームの改善に役立ててもらえると嬉しいです。(2020年2月22日より発売)物理は2月27日に発売です!Epub/PDF版は技術評論社のサイトから購入できます(2月22日より)。PDFで欲しい!という方は技術評論社からご購入ください。10:5310年以上のノウハウを詰め込んだ「自走プログラマー」を執筆しましたTweet2020-02-03Pythonのリストはイテレーターでない。わかりやすい(はずの)イテレーターとイテラブルの説明Pythonこんにちは。(もし間違えていたら教えてくれると嬉しいです)。「リストはイテレーターです」、「rangeはイテレーターです」、「dict.keys()はイテレーターを返します」、など間違いが多いので注意しましょう。イテレータ警察だ、床に伏せて頭に手をのせろ。2:3}.keys()を「イテレータ」と解説した疑いで貴様を逮捕する。2020年2月3日リストはイテレーターではないまず、リストはイテレーターではないということを感じてもらいます。以下をPythonのインタプリターで実行してください。とエラーが表示されるはずです。iteratorはい。Pythonさんもリストはイテレーターではないと言っています。いう疑問があるかもしれません。