290 likes | 455 Views
情報教育と日本の教育問題. 大岩 元 慶応大学環境情報学部 ohiwa@sfc.keio.ac.jp. 概要. 情報化社会 日本のソフトウェア技術者の問題 コンピュータの有能さ 情報処理能力のブートストラッピング タッチタイピング プログラミング 図解力. 情報化社会. IT が社会の在り方を変えた 日本の教育は工業化社会向き 情報化社会移行の弱点となる 情報技術と社会の観点から見た人材育成 技術者教育は組織・文化の理解にかける 文系教育は情報技術の理解が不足 情報の技術と応用のどちらかに軸足を置き、他方の人間と意志疎通が可能な人材を育てる. 人材像.
E N D
情報教育と日本の教育問題 大岩 元 慶応大学環境情報学部 ohiwa@sfc.keio.ac.jp
概要 • 情報化社会 • 日本のソフトウェア技術者の問題 • コンピュータの有能さ • 情報処理能力のブートストラッピング • タッチタイピング • プログラミング • 図解力
情報化社会 • ITが社会の在り方を変えた • 日本の教育は工業化社会向き • 情報化社会移行の弱点となる • 情報技術と社会の観点から見た人材育成 • 技術者教育は組織・文化の理解にかける • 文系教育は情報技術の理解が不足 • 情報の技術と応用のどちらかに軸足を置き、他方の人間と意志疎通が可能な人材を育てる
人材像 • 企業家、社会改革者 • 社会の目指す方向づけを行ないながら、それを実現する情報技術の基礎的素養を持ち、実現可能な社会システムを作り出せる • 情報システム技術者 • 人々の要求を正確に理解できる教養を持ち、情報システムを構築できる
リテラシーとは何か • ことばの使用 • 文字の使用 • 人間が解釈する • 学校教育が始まる • プログラム(=ことばによる仕組)の使用 • コンピュータが解釈する • 学校教育が変わる
プロジェクト依頼者の考えていたこと プロジェクト要求書に書かれていたこと システム分析者が設計したもの プログラマが作ったプログラム 利用者側に導入されたプログラム 利用者が要求していたもの ソフトウエア開発の問題点 University of London Computer Centre Newsletter No.53,March 1973
“日本のソフト技術者“- 大岩 元 -(日経経済教室(1992年6月6日) • ソフト技術者不足は量でなく質の問題 • 情報工学科でもコンピュータ科学が教えられていない場合が多い • 技術者の質のために生産性が問題 • 産学双方にコンピュータ科学の専門教育が必要 • 達成されれば、人が余る
インド人、中国人IT技術者 • 日本人技術者は年収4-500万円のプログラマーしかいない • インド人、中国人のIT技術者を雇ってみたら、彼らの方が有能で、給料は1/10以下 • 外国人技術者確保が現在の至上命令に • 日本語教育が問題 • 岩崎式日本語教育(MISJ)なら400時間の教育で十分可能
ACMプログラミングコンテスト • 過去4回国内予選の優勝校は日本以外 • 2001年函館予選 • 1位 復旦大 2位 東大 3位東工大 • 2001年世界大会(ハワイ) • 1位 上海交通大 2位 マサチューセッツ工科大 3位 ウォータールー大 ……… 18位 東大
コンピュータは超有能 • パソコンのクロックが1GHz • 時間単位が10億分の1秒 • 1億倍以上の情報処理能力 • ジェット機の速度は歩く速度の250倍
ソフト技術者の問題 • いい加減な仕事でも、コンピュータでやれば役に立つ • 役に立つソフトだからと金を払う人がいる • かせげるからプロだと思うソフト技術者 • 仕事をたのむ人がしっかりする必要がある
日本の教育問題 • 入試にコンピュータを導入した(1979) • コンピュータで測れる物だけで競争しだした • データベースの充実と正確な計算 • 即ち、人間をコンピュータにする教育 • 覚えるだけで、考えない人間が育つ • 分数が計算できなくても困らない
情報化社会における教育 • 決断ができる人間を育てる • 計算できない選択肢から決定できる • 価値観の確立が必要 • 何が自分にとって重要なのかを知る
学習におけるストックとフロー 知識 フロー(取り込んだ知識) ストック(知識の体系) 時間
日本の教育の問題 • 初等幾何学が教えられなくなった • 公理と定理の違いが分らない • 覚える数学しか教えられない • 入試が考えること禁止する • 哲学が教えられていない • フランスでは理系でも必習
大学入試の数学 • 解法を約1000覚える • 問題を見たら、どの解法を使うか決める • データベースの充実 • 素早く正確な計算を行なう • 文字通りコンピュータ • 人間をコンピュータにする • 情報化時代には不要な人材
ブートストラッピングコンピュータに最初のプログラムをどうやって書きこむか?ブートストラッピングコンピュータに最初のプログラムをどうやって書きこむか? • 小さなブーターが次々と大きなプログラムを読みこんでいく • ブートストラッピングは汎用概念 • 言語学、素粒子物理、ベンチャー起業 • 情報処理能力のブーターは何か • タイピング、プログラミング、図解力
情報処理能力のブーター • 身体軸 • タッチタイピング • 論理軸 • プログラミング • 感性軸 • 図解力(発想力)
情報教育のブーターとしてのプログラミング • 情報教育において「プログラミング」の学習は、「ブーターの読み込み」の過程に相当する • 「ブーター」とは、コンピュータが起動(ブート)する際に一番最初に読み込まれる最小限の命令群 • ブーターは、その後に読み込まれる、より複雑なプログラム(ひいてはシステム全体)の基礎となる • ここでは、「応用的な知識を生み出すために必要な最小限の基盤」を表す比喩
コンピュータの本質 • コンピュータの本質はプログラム • コンピュータのあらゆる動作はプログラムによって規定される • 「コンピュータの何たるか」を理解するためには、「プログラムの何たるか」を学ばなければならない
プログラムとは • プログラムは「仕事の手順」を書いたもの • プログラムが書けないことを、コンピュータは実行できない • 人間は手順が書けなくてもいろいろなことを実行できる • 人の顔を見分ける、声を聞き分ける、字を読む
プログラムの基本構造(1) • プログラムの基本は命令文の連続 1: fd(100); 2: rt(90); 3: fd(100); .……… ………. ………. • 命令は上から順に実行される→逐次構造
プログラムの基本構造(2) • 同じ命令の繰り返しをひとまとめにして記述できる →繰り返し for( i=0; i<4; i++){ fd(100); rt(90); }
プログラムの基本構造(3) • あらかじめ設定した条件に応じて複数の命令を選択的に実行できる →条件分岐 if( i==2 ){ fd(100); } else{ fd(50); }
プログラムの基本構造(4) • 逐次、繰り返し、条件分岐は、仕事の手順を記述する際のもっとも基本となる構造 • これら三つをまとめて「制御構造」と呼ぶ
プログラムの基本構造(5) • 逐次、繰り返し、条件分岐は「入り口1つ、出口1つ」の構造を持つ点で共通している • 一つの構造の中に別の構造を埋め込んで(=入れ子構造)、複雑な手順を実現できる