Scribble at 2022-05-27 10:41:59 Last modified: 2022-06-06 12:05:53

添付画像

Python 3 is the best version of the language yet: It is more powerful, convenient, consistent, and expressive than ever before. Now, leading Python programmer Mark Summerfield demonstrates how to write code that takes full advantage of Python 3’s features and idioms. Programming in Python 3, Second Edition, brings together all the knowledge you need to write any program, use any standard or third-party Python 3 library, and create new library modules of your own.

Programming in Python 3: A Complete Introduction to the Python Language (Developer's Library)

上記は2009年に出た "Programming in Python 3" の第2版だ。(誤解を招く書き方かもしれないので、もっと正確に換言すると、「上記は2008年に初版が出版された "Programming in Python 3" の第2版(2009)だ」。)

Python 3 は、長らく 2.x が使われているあいだも開発が続いていて、しかしリリースまでに8年を要したせいか、途中からは "Python 3000" などという「愛称」で呼ばれていた(半分は西暦3000年までリリースできないという皮肉もあったわけだが)。

でも、Perl 6 よりはマシだと思うね。Perl 6 なんて、Python 3 と同じく2000年に開発がスタートしてからリリースされたのが2015年だった。そして、「Perl 系統」の処理系としては、いまだにデファクト・スタンダードとすら言えない状況があって、かたくなに Perl 5.x を使い続ける人もいたりする。その決定的な理由は、Perl 6 は Perl 5 と殆ど互換性がなくなっており、従来の Perl プログラマからは「別の言語だ」と見做されるようになって、Perl 6 を "Perl" の名では呼ばずに "Raku" という正式名称へ変更したほどだったからだ。なお、"Raku" は「ラクダ」から来てるのかと思ったら、処理系が "Rakudo"(楽土)と名付けられていて、そこから取ったという。まったく、Perl の業界は(昔からヒッピー文化っぽい中に、そういう雰囲気はあったけど)いよいよニューサイエンスとか新興宗教がかかってきてるな。ともあれ、サーバ会社などでサポートされて〈いない〉状況をみると、はっきり言って Raku (former Perl 6) は10年以内に Perl 5 よりも先に死亡宣告が出るような気がする。Perl 5 は既に時期のメジャー・アップデートが "Perl 7" だとアナウンスされているし、"Perl 6" としての Rakudo は無視されるのだろう。

いや、Perl の話なんてするつもりではなかった。上記の本を取り上げたのは、もちろん僕も一読したからなのだが、やはり僕がここ数日のあいだに書いている話と同じ理由で、低い評価をするカスタマーがいる。つまり、これから本書の全体を使って詳しく説明しないと分からない色々なビルトイン関数とかプログラミング記法とか演算子を、冒頭の第1章に詰め込んでいるのだ。しかも、そういう雑な解説で Python の仕様全体を説明した後で「練習問題(Exercise)」すら掲載している。これでは怒る人がいるのも無理はない。僕のように、この手の〈ひとめぐりスタイル〉と呼んでもいいような内容は、テキストの編集・構成として断じて間違っているから無視するべきだと考えて、最初から買い求めたコンテンツのうちに入らないと割り切って無視するのがいいと思うのだけれど(しかし、それでも処理系を学ぶのに何の不足もないことが分かっているていどに、プログラミングの素養というかプログラミングの本を読み慣れていなくてはならないわけだが)、初心者にそういう割り切りを求めるのは難しい。よって、カスタマー・レビューの多くが、「本書はプログラマー向けの本だ」という理由で酷評することになるわけである。

さて、これについて「いや、本書は最初からプログラマー向けに書いてるんだから、初心者が混乱しても仕方がない」と割り切ることは正当なんだろうか。もちろん、序文にそういうことを書いている著者も多いし、中には書名で "programmer's guide" とか "for the working programmer"(なんで定冠詞なんだろう? 「そこのあなた!」っていうニュアンスでもあるのかな)という但し書きを付けている事例すらある。でも、やはり広告・宣伝つまり出版社の営業としては、そんなことを書けば売れなくなると思うのだろう。それゆえ、大半のテキストは〈ひとめぐりスタイル〉どころか最初から Python のエンジニアを想定した書き方すらしていながら、あたかも初心者向けの教科書みたいなタイトルをつけたりする。書評、あるいはカスタマー・レビューがそれなりに役に立つ理由は、こういうところにある。

日本の未熟な読書人や物を書く方のプロパーやら物書きというのは、出版社が自分たちを何か〈違うステージ〉に引き上げたり、読書界といった妄想の世界へ連れて行ってくれるミカエル大天使みたいなものだと錯覚しているのかもしれないが、グーテンベルクからこのかた出版社なんてただのビラ配りの延長、商売人であって、啓蒙・啓発に身や資産を投じる気高き有志なんかでは断じてない。いや、主観的にそうありたいと願って色々とやる人はいるだろうし、いてもいいわけだが、それが出版事業の本質だというのは、明らかに経済学史の観点から言っても間違っており、自己欺瞞であろう。よって、消費者であるわれわれは、幼子や雛鳥のようにバカ面下げて口を開けながら、出版される本を待ち望むなんて愚劣な態度を捨て去り、あらゆる商品は是々非々で評価しなくてはならない。とりわけ洋書について言えば、既に電子書籍版として出版されるのが当たり前となった当世では、新刊本を手にするのに注文してから1年ほどかかるがゆえにクズみたいな内容でも尊重せざるを得なかった、などという状況は既に消え去っている(僕の世代ですら、専門書を注文してから船便で送られてくるのに数か月も待つのが当たり前だった経験があるけれど、それからアマゾンで洋書を買うようになって事態はすっかり変わってしまっている)。

読者を制限するような書名にすると売れなくなるという、営業マンやマーケティング屋によくある錯覚は、昔から口先だけのロジックとして多くの出版社で通用しているらしい。しかし、多くの書籍がオンラインで「試し読み」できる時代にあって、読む価値があるかどうか分からないのに田舎の本屋で注文せざるをえないなんて不利な状況で闇雲に本を買わされる時代は過ぎ去ってしまった。そういう、姑息な嘘で本来の読者ではない人々に本を買わせて、最大瞬間風速としての販売実績だけで商売を続けようなどという輩が出版業界に根を張っているとすれば、それこそ業界から放り出さなくてはならない異物と言うべきだろう。確かに、その営業が仕事をしているあいだは、最大瞬間風速としてイカサマの売り上げを出すことはできるかもしれないが、出鱈目な本を掴まされた消費者は出版社というブランドに対しての信用を失ってゆく。そういう、長期的で破滅的なリスクを、だいたいにおいて個々の営業担当というのは考えずに、10年ほどしたら転職していくため、誰も後に残されたブランドの低下について責任を取らない。そうやって、長期的なリスクを考慮しない企業というものは徐々に倒産に向かって進んでゆく。はっきり言えば、昨今のトレンドとして続々と出版社が倒産しているけれど、これを「アマゾンのせいだ」などと何の根拠もなく言うのはやめたらどうかと思う。僕が思うには、アマゾンは消費者にとっては商品の価値をあらかじめ正確に知るための新しい手段であり、そういう手段を使って冷静に比較したら、それまで何も気にせずに買ってきた本の多くが出鱈目なものだったということが分かり、そして今世紀になって倒産していった出版社の中には、そういう本ばかりを作り続けてきた無能の集団があったというだけの可能性もある。

  1. もっと新しいノート <<
  2. >> もっと古いノート

冒頭に戻る


※ 以下の SNS 共有ボタンは JavaScript を使っておらず、ボタンを押すまでは SNS サイトと全く通信しません。

Twitter Facebook