Upgrade to Pro — share decks privately, control downloads, hide ads and more …

アート、サイエンス、「わかりやすさ」 / art, science, "easy to understand"

アート、サイエンス、「わかりやすさ」 / art, science, "easy to understand"

文芸的プログラミング
https://www.amazon.co.jp/dp/4756101909

本文中の「わかりやすい症候群」(という造語)について
https://twitter.com/Philomagi/status/1364546479445004288

philomagi

March 24, 2021
Tweet

More Decks by philomagi

Other Decks in Programming

Transcript

  1. アート、サイエンス、「わかりやすさ」
    1
    @Philomagi
    2021/03/[email protected]おすすめの技術書 LT会
    #itbookslt

    View Slide

  2. 発表者
    @Philomagi
    ● WEB系プログラマ
    ● 自称フロントエンド寄り
    ○ 最近のマイブームは SelfとSmalltalk
    ○ Haskell と Golang にも最近手を出し始めた
    ● たまにtwitterで怪電波を垂れ流してます
    2

    View Slide

  3. 今回のテーマ
    3
    ● Donald E. Knuth 『文芸的プログラミング』の紹介
    ● 「わかりやすさ」に対する違和感を、本文中のアートとサイエ
    ンスの関係に対する議論から説明できないか

    View Slide

  4. 4

    View Slide

  5. 5
    第1章
    『芸術としてのプログラミング』

    View Slide

  6. 6
    「昔は、芸術家の想像的(訳文ママ)な見解は、科学者に
    とっては死であると考えられていた。そしてまた、サイエン
    スの論理はすべての芸術的な空想の飛翔から魔力を奪っ
    てしまうとも考えられていた。」
    (中略)
    私から見ますと、このような一見相反するような立場は、コ
    ンピュータプログラミングにとってきわめて大切なのです。
    Donald E. Knuth 『文芸的プログラミング』 p.26

    View Slide

  7. 7
    「昔は、芸術家の想像的(訳文ママ)な見解は、科学者に
    とっては死であると考えられていた。そしてまた、サイエン
    スの論理はすべての芸術的な空想の飛翔から魔力を奪っ
    てしまうとも考えられていた。」
    (中略)
    私から見ますと、このような一見相反するような立場は、コ
    ンピュータプログラミングにとってきわめて大切なのです。
    Donald E. Knuth 『文芸的プログラミング』 p.26

    View Slide

  8. 8
    サイエンス
    アート
    Donald E. Knuth 『文芸的プログラミング』 p.22~27 参照

    View Slide

  9. 9
    サイエンス
    アート
    論理的に整理・系統化する
    Donald E. Knuth 『文芸的プログラミング』 p.22~27 参照

    View Slide

  10. 10
    サイエンス
    アート
    論理的に整理・系統化する
    個々の場合についての考慮を省き、
    より高水準の概念へ
    考えを向けられるようになる
    Donald E. Knuth 『文芸的プログラミング』 p.22~27 参照

    View Slide

  11. 11
    (自動プログラミング研究への言及から続けて)
    私個人としてはそのような目標は完全に達成できることは
    ないと思いますけれども、そのような研究はきわめて重要
    なことであると考えます。それは、私たちがプログラミング
    に関して学ぶすべてのことが、私達自身の「芸術的手腕」を
    向上させるからです。この意味で、私達は常にすべての
    アートをサイエンスに移しかえるための努力をすべきでしょ
    う。そのプロセスで、アートが進歩するのであります。
    Donald E. Knuth 『文芸的プログラミング』 p.24

    View Slide

  12. 12
    (自動プログラミング研究への言及から続けて)
    私個人としてはそのような目標は完全に達成できることは
    ないと思いますけれども、そのような研究はきわめて重要
    なことであると考えます。それは、私たちがプログラミング
    に関して学ぶすべてのことが、私達自身の「芸術的手腕」を
    向上させるからです。この意味で、私達は常にすべての
    アートをサイエンスに移しかえるための努力をすべきでしょ
    う。そのプロセスで、アートが進歩するのであります。
    Donald E. Knuth 『文芸的プログラミング』 p.24

    View Slide

  13. 13
    「わかりやすさ」への違和感
    (以降は発表者の考察)

    View Slide

  14. 「わかりやすい」への執着
    ● 少なくともプログラミングにおいて「わかりやすさ」は、あらゆる場面で「良
    い」ものとして、常に求められ、志向されているように見える。
    ● 時として、「わかりやすい」が評価の軸そのものになっているようにすら
    見えることがある
    ○ 「○○の説明はわかりやすいから、とても良いものだ!」
    ○ 「☓☓はわかりにくいから、役に立たない」
    ● 「わかりやすい症候群」?
    14

    View Slide

  15. ● 十分に整理され、系統化されたものだけに価値を見出すような態度が
    含まれていないか?
    ● 「無文脈かつ無前提に、万人が理解可能な整理・系統の形式」が現に存
    在している、あるいは「良い」ものはそれを満たしていなくてはならないと
    いう、ある種の信仰が含まれていないか?
    ● 「わかりやすさ」のみを追求する時、アートすなわち「知識の応用(Knuth
    p.22)」という「技術」への「熟達」を回避しようとしている瞬間が無いか?
    サイエンスへの偏重?
    15

    View Slide

  16. ● 「わかりやすい」という現象を再現可能にしようとする試み・取り組みに
    は、価値があると思う
    ● ここで問題にしているのは、「わかりやすい」ことのみを要求し、評価し、
    そうでないものは「わかりにくい」という理由のみで棄却あるいは誹謗し
    ようとする態度
    ● 常にそのような態度を取ることは稀でも、そのような態度が発生する瞬
    間、いわば「わかりやすい」という現象の再現に取り憑かれている瞬間
    は無いか?
    「わかりやすい」=「悪」?
    16

    View Slide

  17. ● 「わかりやすさ」は、サイエンスによる一つの成果として価値があると思

    ● 他方、「わかりやすさ」への偏重は、アートを回避する態度であり、ひい
    ては技術への「熟達」を回避しようとする態度である、と言えるのではな
    いか?
    ● 改めて「わかりやすさ」について考えると共に、コンピュータ・プログラミン
    グがいかなる活動であるのか、『文芸的プログラミング』1章は示唆を与
    えてくれると思う
    アート、サイエンス、「わかりやすさ」
    17

    View Slide

  18. ご清聴ありがとうございました
    18

    View Slide