九州の高校生が台湾のデジタル大臣と白熱議論 唐鳳氏にぶつけた「デジタル社会で生きること」
工学は機械に近いですが、デザインは人間に近いものです。したがって、大切なのは「デザインシンキング」(デザイン思考)という能力を身につけることです。つまり、あるプログラミングをデザインしてほしいという依頼があれば、プログラムを書き始める前に、多くの異なるタイプのユーザーの意見を聞き、できる限りさまざまな人たちをサポートできるように考えることから始めます。
そして、異なる見方の中から共通の価値に集約することで、一つ目のダイヤモンドを仕上げます。その後、この共通の価値観からさらにさまざまな方法を試し、再度実行可能な解決策に集約します。これを繰り返すこと(ダブルダイヤモンド)でわかるのは、初めに出した自分の考えが最善な策ではないということです。台湾華語には「抛磚引玉」(レンガを投げ捨てて、玉を引き出す)という言葉がありますが、これはすなわち自分の意見を述べて、他人の優れた見解を引き出そうとしながら、多くの不特定多数の人と一緒に協働することが大切だということです。
日常生活の中でデザインシンキングを養うために、簡単にできる方法があります。自分の学校にあるイベントや毎日やらなければならない物事を、いつもとは異なる方法でやってみることです。
コミュニケーション能力を高めることが重要
文句を言いたくなったり、面倒くさいと思うことでも、方法を変えてみるととても面白く意味のあるものになると思います。ですから、皆さんもいつでも「職務再設計」や「経験デザイン」と呼ばれる方法で、毎日の通学経験を再設計のテーマにすることができるのです。
――プログラミングにはデザインが必要だとのことですが、プログラミングは論理性を鍛えるのに最適なものであり、数学などで論理性を身につけるなどして対応できるのではないでしょうか。基礎科目とプログラミング教育とはどのようにつながっていくとお考えですか(熊本高校)
面白い見方ですね。使用するプログラミング言語の違いにより、プログラムデザインとは何かという点においては、まったく異なる見解があるはずです。それは他のデザイン業界でも同じことだと思います。ファッションデザイン、空間デザイン、飛行機などをつくる工業デザインなどでは、当然「デザイン・設計」について異なる見方があります。
プログラムデザインの特徴は、例えば数学が好きな人は、世界を一連の関数にして説明すればよいですし、編曲が好きで多くの人と一緒に演奏したいと思う人には、自分が指揮者になってオーケストラの演奏家と一緒に演奏しているような想像をしてもよいということです。あるいは司令官のように指令を発するのが好きであれば、1つの指令でパソコンが1つの動作を進めるように考えても問題はありません。
プログラムデザインには、自分の世界観をパソコンの世界観に変えるための各種さまざまな方法があります。これらの共通点についてはオランダ人のコンピュータ科学者でプログラミング言語の基礎研究に貢献したエドガー・ダイクストラ教授(Edsger Wybe Dijkstra, 1930~2002)の説明が非常にわかりやすい。同氏がいうには、どんな観点でも共通しているのは、最終的には言語と文学を通じて他のプログラマーやパソコンとコミュニケーションをするという点です。
一人の人間が作ったプログラムデザインの成果がどれほど大きいか、あるいは限界はどこなのかは、自分の母語レベルがどれほど高いかに影響されます。したがって、何はともあれコミュニケーション能力を高めるということが重要なのです。
記事をマイページに保存
できます。
無料会員登録はこちら
ログインはこちら
印刷ページの表示はログインが必要です。
無料会員登録はこちら
ログインはこちら
無料会員登録はこちら
ログインはこちら