文芸的プログラミング https://www.amazon.co.jp/dp/4756101909
本文中の「わかりやすい症候群」(という造語)について https://twitter.com/Philomagi/status/1364546479445004288
アート、サイエンス、「わかりやすさ」1@Philomagi2021/03/[email protected]おすすめの技術書 LT会#itbookslt
View Slide
発表者@Philomagi● WEB系プログラマ● 自称フロントエンド寄り○ 最近のマイブームは SelfとSmalltalk○ Haskell と Golang にも最近手を出し始めた● たまにtwitterで怪電波を垂れ流してます2
今回のテーマ3● Donald E. Knuth 『文芸的プログラミング』の紹介● 「わかりやすさ」に対する違和感を、本文中のアートとサイエンスの関係に対する議論から説明できないか
4
5第1章『芸術としてのプログラミング』
6「昔は、芸術家の想像的(訳文ママ)な見解は、科学者にとっては死であると考えられていた。そしてまた、サイエンスの論理はすべての芸術的な空想の飛翔から魔力を奪ってしまうとも考えられていた。」(中略)私から見ますと、このような一見相反するような立場は、コンピュータプログラミングにとってきわめて大切なのです。Donald E. Knuth 『文芸的プログラミング』 p.26
7「昔は、芸術家の想像的(訳文ママ)な見解は、科学者にとっては死であると考えられていた。そしてまた、サイエンスの論理はすべての芸術的な空想の飛翔から魔力を奪ってしまうとも考えられていた。」(中略)私から見ますと、このような一見相反するような立場は、コンピュータプログラミングにとってきわめて大切なのです。Donald E. Knuth 『文芸的プログラミング』 p.26
8サイエンスアートDonald E. Knuth 『文芸的プログラミング』 p.22~27 参照
9サイエンスアート論理的に整理・系統化するDonald E. Knuth 『文芸的プログラミング』 p.22~27 参照
10サイエンスアート論理的に整理・系統化する個々の場合についての考慮を省き、より高水準の概念へ考えを向けられるようになるDonald E. Knuth 『文芸的プログラミング』 p.22~27 参照
11(自動プログラミング研究への言及から続けて)私個人としてはそのような目標は完全に達成できることはないと思いますけれども、そのような研究はきわめて重要なことであると考えます。それは、私たちがプログラミングに関して学ぶすべてのことが、私達自身の「芸術的手腕」を向上させるからです。この意味で、私達は常にすべてのアートをサイエンスに移しかえるための努力をすべきでしょう。そのプロセスで、アートが進歩するのであります。Donald E. Knuth 『文芸的プログラミング』 p.24
12(自動プログラミング研究への言及から続けて)私個人としてはそのような目標は完全に達成できることはないと思いますけれども、そのような研究はきわめて重要なことであると考えます。それは、私たちがプログラミングに関して学ぶすべてのことが、私達自身の「芸術的手腕」を向上させるからです。この意味で、私達は常にすべてのアートをサイエンスに移しかえるための努力をすべきでしょう。そのプロセスで、アートが進歩するのであります。Donald E. Knuth 『文芸的プログラミング』 p.24
13「わかりやすさ」への違和感(以降は発表者の考察)
「わかりやすい」への執着● 少なくともプログラミングにおいて「わかりやすさ」は、あらゆる場面で「良い」ものとして、常に求められ、志向されているように見える。● 時として、「わかりやすい」が評価の軸そのものになっているようにすら見えることがある○ 「○○の説明はわかりやすいから、とても良いものだ!」○ 「☓☓はわかりにくいから、役に立たない」● 「わかりやすい症候群」?14
● 十分に整理され、系統化されたものだけに価値を見出すような態度が含まれていないか?● 「無文脈かつ無前提に、万人が理解可能な整理・系統の形式」が現に存在している、あるいは「良い」ものはそれを満たしていなくてはならないという、ある種の信仰が含まれていないか?● 「わかりやすさ」のみを追求する時、アートすなわち「知識の応用(Knuthp.22)」という「技術」への「熟達」を回避しようとしている瞬間が無いか?サイエンスへの偏重?15
● 「わかりやすい」という現象を再現可能にしようとする試み・取り組みには、価値があると思う● ここで問題にしているのは、「わかりやすい」ことのみを要求し、評価し、そうでないものは「わかりにくい」という理由のみで棄却あるいは誹謗しようとする態度● 常にそのような態度を取ることは稀でも、そのような態度が発生する瞬間、いわば「わかりやすい」という現象の再現に取り憑かれている瞬間は無いか?「わかりやすい」=「悪」?16
● 「わかりやすさ」は、サイエンスによる一つの成果として価値があると思う● 他方、「わかりやすさ」への偏重は、アートを回避する態度であり、ひいては技術への「熟達」を回避しようとする態度である、と言えるのではないか?● 改めて「わかりやすさ」について考えると共に、コンピュータ・プログラミングがいかなる活動であるのか、『文芸的プログラミング』1章は示唆を与えてくれると思うアート、サイエンス、「わかりやすさ」17
ご清聴ありがとうございました18