数学の問題集を計算機に解かせるのは情報の授業としてありだと思うが・・・

大昔、未履修問題が発覚したとき「プリンタで印刷して入試問題を解かせているから情報だ」という強弁があったことがある。当然、認められず補習をするはめになっていたはずである。

最近、真面目な教材開発モードになったときにやろうと考えていることは、数Aの教科書の問題やセットの問題集を計算機で解かせる教材の開発である。

この問題って情報と数学のどちらで扱う?

問題

最近、愛読している某サイトで、某有名工業大学の場合の数の過去問を、全て書き出すことで解くという話を見た。問題の一部はこんな感じ。

3個のサイコロ(1から6の目を持つものとする)を振って、その積が10の倍数になるパターンの数を求めよ(順番は区別する。(1,1,2)と(1,2,1)は違うものとカウントするということ。)

(元の問題は確率)当然、落とせない問題である(大数でもそうされていたはず。)。

とりあえずRubyで1行ではあるが

教育的なコードを書く、という制約を外せばRubyで3秒で終了である。Rubyの1.9系で加わったメソッドは便利便利。

a = (1..6).to_a
a.repeated_permutation(3).select{|elem| (elem[0]*elem[1]*elem[2]) %10 ==0}.length

こうすると72通りが得られる。(JavaScriptPythonで本当はやるべきなんだろうな。。。一般人に教えるときは。)

まあ、selectの中身をinject使ってきれいにしてもよかったけど、3つぐらいならベタ書きでも良いでしょう。

どう授業に落とし込むかは色々ありますよね

私が自分の情報の授業でこの話を扱うなら、Excelとの比較で扱うというのが第一候補。Excelの手作業で216通りは作ろうと思えば作れる。

手作業で216通りを作れるといっても、頭を少しは使う必要がある。例えば、最初に1を36個作って2を36個作って、次に6個ずつを刻んでコピーしていって、などと要領よくやっていかないと泥沼にはまる。36通りの2個のサイコロなら行き当たりばったりでもどうにかなるが、216通りとなると少し要領が必要である。

1個目の1から6を36個ずつ作っておいて、あとは1から6のサイコロ2つのペアを6回コピーすれば終わり、という見通しなどを持てない人もけっこういそうので、遊びがいがある問題である。

教えてやらせるか、教えずにやらせて痛い目を見せるかは対象によってわけると思う。だいたい、私の場合は、コイン投げ4回の表裏のパターンを全部列挙せよ、でも怪しいのが多いのを相手にしていますからね・・・(2進数のときにこの話をすることが時々ある)

こんな感じでExcelでひとしきりやっておいて、その後で「大人はずるい」と言いながら上のコードをみせるかな。Rubyのコードをオンライン実行して見せる。

Rubyは身近に感じられる対象ではないので教育として良くない、と言われ、かつ時間があれば、VBAで列挙の部分をやらせてみるというのも考えたい。高々3重なので、VBAでforを3回書いて(a,b,c)のパターンを並べたセルをざーっと作らせてしまえば良い。これは、あっさりと書けそうである。

PowerShellで変態的にやるというのも考えたい(これはデフォルトでどのパソコンにも入っているので言い訳はできない)。

もう少し意識を高く持つなら

自分で問題文の条件を変えて、手と計算機で比較してみるということをさせるというのもありそうである。「手では解きにくいが計算機だと一瞬な問題を作れ」という指示を出して作らせるかな。それをやると、いかに数学の時間が手でとけるように出題者側が手加減しているかということがわかってくると思う。そして、これは手と計算機の比較なので立派な情報の授業である。

数学の問題は説明を半分省略できるので授業しやすい

この手の数学の問題の良いところは、問題の意味を実感できないとか理解できないということがないことである。数学の時間で問題がどういうものかは全て説明済みで、だいたい手で解くとこまでやっている。

したがって、手作業の部分をこっちが教える必要はない。コンピュータで解くところから始めることができる。これは大きい。2単位って忙しいんですよ・・・それでも無理やり情報用に人工的な問題を作って扱わないとならないのだろうか・・・

でも、理系っぽくない情報の人は「これは数学だ」とか言いだすんですよね。。きっと。あと、情報教育の意識高い系の人もそう言いそう。

ピュアな数学の授業でやるには合法だが

そんなことやってる暇ないですよね。数学の時間に計算機を活用してはならないとは書いてないので、数学の時間でやる分は完全合法なのは明らかなんですけどね。

結局、数学だろうが情報だろうが扱い人が扱いたい時に扱えば良いというのが私の個人的な考えではある。しかし、世間は許してくれないんだろうな・・・・

教科横断的なので総合でも合法?(余談)

まあそこまでやる人はいませんよね。。。普通。

教科横断という言葉を耳にするが・・・(余談)

最近、新指導要領がらみで「教科横断」をやたらに強調する人が多い。しかし、そもそもの教科の割り方が不適切なことが多く見られる。割ってはいけないものを割って横断というのも変な話である。

個人的には、政経と倫理で公民科とか、水と油を混ぜているような組み合わせにしか見えない。混ぜるなら、政経と地理と倫理の心理学っぽい部分で一括りにして(論理・データ・モデルの色合いが強い分野)と、残りを一括り(文献読解で考えていく)の2つに割るのが適切な割り方だといつも追っている。

情報も特にそんなとこがたくさんあるんですよね・・・

数Iのデータの分析では統計量の数学的な理解は求められていないような

数Bの統計推測実質必修化の批判のついでに、数Iのデータの分析を批判する言説をみかけた。さすがにこれはどうかと思った。

だいたい、データの分析をいわゆる「演繹的な数学」(といっても大学の数学科数学からすると高校数学は全部数学的でないんだろうけど)として扱う準備がない状況で、データの分析を数学で扱うのはおかしいという意見がある。それに関して思うことを書いておく。燃えないように注意して書いたつもりではあるが・・・

学習指導要領は理論的に統計量を扱えと書いていない

現行の指導要領は次のように書かれている。

四分位偏差,分散及び標準偏差などの意味について理解し,それらを用いてデータの傾向を把握し,活用すること。

パブコメ版の指導要領の、知識・技能の部分にはこう書かれている。

(ア)分散,標準偏差,散布図及び相関係数の意味や扱い方を理解すること。
(イ) コンピュータなどの情報機器を用いるなどして,データを表やグラフに整理したり,分散や標準偏差などの基本的な統計量を求めたりすること。

統計量の定義を正確に書き下せるようにしろとか、手計算で数学的に分散・標準偏差相関係数を理解しろとは一言も書いていない。だいたい、(データの傾向を把握し活用する前提としての)統計量の意味や扱い方を理解するのに、統計量の数学的な理解は絶対に必要というわけではない。ましてや、ベクトルの内積相関係数の関係などを理解することなども必要ない。

せいぜい次のように適当(厳密でないの意味)な定性的な話などをすれば良いだけである。(以下、説明は超適当。主観と余談もかなり入れている。)。

  • 分散・標準偏差は散らばりを表す統計量である。散らばりがないときは0。散らばっていれば散らばっているほど分散や標準偏差は大きくなる。
  • 分散・標準偏差の大小によって、極端なことの起こりやすさの推測ができることがある(この視点がないと、現実の面白い話ができないので。)。
  • 相関係数は1から-1の値を取る統計量である。データがだいたい右上がりの直線状になっていれば1、右下がりの直線状にそうでなければ-1。0の場合はあまり関係ない。
  • 1次関数に類する単調に増加や単調に減少っぽい関数以外では相関係数はあてにならないケースがありえる。とりあえず散布図は必ず描いて眺めとけ。
  • 相関は因果を意味しない。
  • 極端な分布になってなければ、だいたい分散・標準偏差相関係数で何かを判断しても大火傷はしない。
  • 世の中例外も色々あるから必ずヒストグラムや散布図は描けるなら描け(元データが手元にあるならということ)。重要な意思決定をするときには、統計量の大小だけでいい加減には判断するな。
  • 図を複数枚・複数回微妙に条件を変えながら描くのはExcelではだるい。データのからむ意思決定で生活変わる人はRなどの統計ツールを学べ。

K社の教科書は、指導要領の趣旨をかなりふまえた扱いになっていると個人的には思う。上の話も、K社の教科書に書かれていることにかなり影響されて書いている。なお、S社の教科書はその真逆であると思う。センターも、基本的には指導要領の趣旨に合っている出題であると感じている。

この程度の話を1年のときに5時間程度割いてするのに反対するって何なの?と思わないでもない。

変な扱いをする人は確かにいる

問題は、高校の中途半端な授業である。延々と手計算の練習や意味不明のパズルを(これは、前課程の数Bがベクトル・数列と選択になっていた関係で点数調整せざるをえなかった影響を受けている。)させたり、データの傾向と統計量の関係を理解してるか?と称して、(現実のデータ分析とは何も関係ない)暗号解読のような図の解読をさせる問題も定期試験ではみかける。(まあセンターもそうだと言えないこともないが。ただし、現実のセンターはデータはちゃんと面白い物を使っている。)

そういう問題をみると「現実社会で、そんなに細かい関係が必要なら、元データを使ってそれを調べるか、それに適した図に書き換えれば良いだけだよな。まあデータ触らない人はそういう感覚ないから仕方がないか。」という感想を抱く。

しかし、高校側の気持ちもわかる。教科書や問題集にあってインスタントに使える、という現実のデータの分析の例や演習問題があまりになさすぎるというのが現状としてあるのでね。。。

現状も用語知ってますか?程度の扱いですよね

これらを踏まえて、まあ、入試で出して小問1問程度、用語知ってますか?ぐらいの扱いでやれば良いのでは?と思う。そして、それは入試の現状に近いのではないかと思う。

センターは(わりと題材自体は)良い問題を出して、それなりに配点も取っている。しかし、あの問題に対策時間を割いている人もあまりいないと思う。センターの問題は差をつけるために不自然な扱いもあるが、結果として、そんなに差はついていないはずである(数年前の報告書でそう読んだような気する)。ということで、これも小問実質1問扱いのようなものである。何も問題ない。

この程度の用語ぐらいを大学進学者に知ってますか?と聞くのに何の問題があるのだろうか。勉強時間をそんなに割かしているわけでもないし。普通の歴史上の有名人物をちょっと聞いて見ました、程度の話ですよ。こんなもの。

これが数学か?には議論の余地があるが

数Iのデータの指導要領のこの扱いは、演繹的な数学か?と言われると微妙である。「数的リテラシー」とラベリングするのが適切であると思う。では、高校までで終わる人々にこの程度の話を誰も教えなくて良いんですか?特に「大学で教えるから問題ない」と行っている人々。

数IAの持つ政治的性質

数I・数Aというのは、大学進学ルート以外の人に強制できる最後の数学である。よって、ここでどう完結させるのか?という視点からもこの問題は考えられなければならない。これを意識してるのか、数Iは中学4年生的になっている。そうなると、簡単なデータリテラシーは数Iに入れざるをえないと思う。。

だいたい、少しおまけでデータの分析をやるぐらい(進学校で時間数を大量に強制させる枠組みであれば私もまずいと思いますよ)、なんでこんなにまで文句を言われなければならないのだろうか。わからない。

1年の数学はあとで学ぶための基礎的なことを、と理科の人が発言しているのも見た。それをしたいんだったら、大学進学数1と非大学進学数1の2つを作れば良いだけの話である。ただ、その路線は失敗したけどね。2つ前の課程で。数学基礎ってどうなりましたか?

数的リテラシーを誰が教えるの?と言われて数学以外と言える?

高校は大学進学の人だけのためのものではない。そういう人たちに対して、高校で誰が数的リテラシーを教えるのだろうか。単位数とスタッフの揃い方を考えると、数学の時間に数学教師が教えるしかないでしょう。良いか悪いかは別にして。だから文科も数学にねじこんできてるわけでしょ?数学でないと生徒にいろんな意味で強制できないので。情報の教師にそれができるとは思えない。

数学でデータの話を扱うのが嫌なら他に居場所を作る運動をおこしてください

個人的には、データ絡みのあれこれは、情報の教師が情報の時間に全て教えてしまうのが適切だとは思う。情報のIの最初の単元の社会っぽいことを公共に追い出して、情報デザインの単元を中学美術に追い出して、の時間は捻出できる。

そうして、情報をかっちりと理系っぽくしておいて、情報をセンターあたりで入試科目に入れて(そうしないと実効性が担保されないから文科は納得しないので)、情報教員もそれなりにまともなのをそれなりの人数採用させることにすれば数学から統計追い出せますよ?どうですか?

情報で全部データを見るとなると、個人的には気分が良くなる。今回の課程は「データに関して情報と数学で連携を深める」とかお上は言っているが、力関係の差をふまえるとこれは「数学に気を使う」になることが目に見えている。一般的に、他に気を使って何かをやるのは非効率である。それなら、情報で完結して全部自分の好きにやってしまえるほうがスッキリする。

いきなり全員必修の入試科目として情報をいれるのは大変だと思う。よって、まずは理科の選択科目として情報を入れてくれないかな、とか思っている(化学はいやだけど物理と情報で受験ができるなら理系にしたかったという個人の願望でもるが・・・・)。数学科とか情報学科は理科2科目は変だと思いますよ。特に化学。だったら化学の代わりに情報で良いと思うのですが。

あとは経済学部とかの社会科学の学部も国語(古典)の代わりに情報の試験で良いと思うんですけどね。モデル化なんて、社会科学系の学問でやることそのものですから、それをダイレクトに試験するで良いと思うのですが。

色々書いたが燃えないことを祈りたい・・・・

最近やっと上段の数値キーをタッチタイピングできるようになった

少し前に、Excelをやるならタッチタイピングできて当然、みたいなことを言われた。私はこのとき?となった。(事務屋さんでない)私からすると、大量の数値データはファイルから読み込むものである。決して、タイピングするものではないという認識であった。しかし、商業高校的な発想ではこれは正しいものだと思う。

ただ、自分がテンキーの練習をする気分にはなれない。自分の使ってるキーボードにはテンキーがないからである。Happy HackingのJPを使っているからである。自分がキーボードに求める条件、親指シフトがやりやすい・キータッチがまとも・Macでもトラブりにくい、という条件でキーボードを選ぶと、これ以外の選択肢がないのである。

さらに、机も乱れがちなので、キーボードはコンパクトな方が良い。したがって、今後もできればテンキーはなし生きていきたい。

上段数値キーの練習をやる意味はあると思う

ホームポジションから意識的に手を動かす打ち方の習得

ホームポジションの段以外を打つときには、指を無理やり伸ばすのではなく、手のひらごと移動してしまってから打つ方が自然である、というのをとあるサイトで発見した。

上段の数値キーのみを動かして打つときは、さすがに手ごと動かして打つのが自然である。そこで、今回、上段数値キーを練習するにあたって、アルファベットを打った直後に数値キーを打つときも、手を意識的に上に動かしてからキーを打ってみることにした。

手を大きく上にシフトさせて打ってみると、それはそれで問題なく打てることがわかった。よって、このような打ち方もバリエーションに加えておく方が良いと思った。確かに、自分だってどんなときでもホームポジションから指を伸ばして打っているか?と聞かれたら?であるわけですしね・・・(もっとも、メインは親指シフトだからそもそも独特な動きをするわけですが。)。

また、この経験以後は、初期指導の段階でPなどを打ちにくそうにしていたら、わざと0.5段ぐらい動かしてからキーを叩いて見たら?などということにもするようになった。

Excelの数式中の数値を打つ程度でテンキーに指が行くのは無駄

Excelで関数を打ち込むときには、アルファベットキーと数値キーを組み合わせて打つ。そうなると、テンキーと通常キーを往復するのがうっとおしい。よって、上段数値キーも使えた方が良いと思う。

また、プログラミング等をするのであれば、上段の記号キーを使うことはそれなりにある。よって、最上段のキーも叩けたほうが何かと便利である。最上段の記号キーを自然に叩けるようにする準備段階として、上段の数値キーはそれなりに使えるのではないかと思われる。

さらに、簡単な数式を打つ場合も上段の数値キーを使いたい。a_1とかx+1>5ぐらいを打つ時にいちいちテンキーに手が行っていたら時間が無駄で仕方がない。

次は記号を叩き込みたいが・・・(余談)

次は記号のタッチタイピングを体に叩き込みたい(だいたいは覚えているのだがときどき?となる。)。このサイトで記号を叩き込ませようとすると、USキーで叩き込むことになっているので、あまりうまくいかなかったのである。

このサイトの記号を自分がやったがあまり効果はあがらなかった。また、プログラミングが必要そうな人にやらせてみたが、やはり効果があがらない。US配列前提の練習順なので効果が薄いと思われる。

何を目的にタイピングサイトを探していたかというと・・・(余談)

私はタッチタイピングの初期指導はmikatypeを使う人である。苦行はまあ耐えろ、ということで耐えさせるのである。しかし、その苦行すら耐えられないというタイプが出始めたので、色々と練習メニューの幅を広げるために色々とサイトを探していたのである。

このサイト、スモールステップでよろしいと紹介されていて、現にそういう意味ではよろしかった。即座に実践投入をしても良いのだが、試せるときは自分が人体実験をしてから試すのがポリシーである。そこで、人体実験を兼ねて数値・アルファベット混じりのブラインドタッチの練習に取り組んだわけである。

タイピングが使い物になるまでにかかる時間を知りたい(広い学力層で)

キーボードによる文字入力は1時間ぐらい練習すれば、あとは慣れでなんとかなるという言説が世間では横行している。その影響で、文字ぐらい打てるようにできて当然だろ?という空気を、私の半径3m以内では感じる。

しかし、インターネット上の言説は、PCが得意な人が書いているものと思われる。まさか、タイピングを身につけられなかった人が、インターネット上にタイピングについての情報を発信するわけがない。そういう意味で、少し楽観が過ぎる方向に偏っていると思わないでもない。

練習時間を取ってくるにはまずどれぐらいでタイピングがマスターできるのかのデータが必要

キーボードタイピングが1時間で身につけられるのであれば、時間のやりくりなどというものは必要ない。しかし、問題はそうでない場合である。この場合は、それなりの時間の調達が必要になってくる。

参考となるデータが古すぎる

親指シフトwikipediaの項目からリンクされている、日本能率協会総合研究所の独自の調査(1983年)では、ローマ字入力を2時間で1分13文字(グラフを目で読み取ってるため確実なことが言えない)ぐらい打てるようになる、と書いてある。しかし、まずこれからして本当か?と言いたい。

私の脳内には、世間でみかけるものとは違うデータがある。ただ、きちんと記録化していないためなんとも言えない。表に出す合意を取って取っているデータなので表にも出せない。

もし、仮にかなり古い調査が正しい傾向を表すものであったとしても、ローマ字入力のとき練習時間30時間で1分40文字、すなわち手書きとイーブンになるということである。1分30文字で妥協するとしても練習時間が20時間はかかる。

30時間はだいたい1単位

1単位30時間と仮定すると、1単位分を差し出してやっと手書きとキーボードが同じになるということである。しかし、常識的に考えてこの時間数は差し出せない。この時間を学校のどこかから差し出そうとすると、何らかのやりくりが必要である。

このやりくりをするためには、まずそもそもの時間の見積もりが必要になってくる。そのための基礎データがどこにもないのは困るのである。そのデータがないと、何時間練習時間くれとか言えないので困るんですよね。。。

上流階級を見ている方の言動の平和さがうらやましい(余談)

世間の優雅さにときどきいやになることあれこれをつらつらと書いてみる・・・・

中学技術でパソコン教室レベルのことは身につくらしい

最近、中学校の技術でパソコン教室レベルのことは済んでいるはずだ、という言説をみかけた。しかし、技術の時間数何時間かわかってる?と言いたい。3年間で技術は2.5単位で、さらにその1/4がコンピュータであるとすると、中学校でコンピュータに触れるのは0.6単位である。大雑把でいうと20時間である。それで何ができるというんですか?どんなにとっても30時間でしょう。

PowerPointで作ったスライドの原稿が手書きというのは良くある

教科書は、手書きで構想メモを作り込ませておいてプレゼンの作成ということになっている。それも一つのやり方としてはありとしておこう。それしか作り方を許さないなら許せないが。

しかし、私が何度も見た恐ろしい光景は、プレゼンのスライドはPowerPointで作って、発表原稿は手書きで書くというものである。再利用って何かわかってる?と思わず罵声を浴びせたくなる気分である。手書きでどうやって共有するの?とか。こんなことするぐらいなら、PowerPointでプレゼンをやらせないほうがましというのが私の個人的な思いである。

ペーパー学力が低いほど眼鏡としてのPCの効果は大きいと思うのですが

「別にキーボードぐらい使えなくてもなんとかなる。漢字や計算の方が大事。」といって、まずPCの前に学力という言説を取る人々の存在もどうなのかなと思わないでもない。

だいたい、PCなしで生きていける高スペックな学力のある人はそれで良いんですよ。それを言っている人は、手書きができる器用さと脳内で全てを考えられる脳をお持ちだから良いのでしょうと。じゃ、そのスペックがない人はどうするの?って話ですよ。

手書きと素の脳でなんとかならない人こそ、PCという補助脳の使い方を教えないとならないんじゃないでしょうか?と言いたい。PCなんて眼鏡みたいなものですよ。手書きと脳内暗記が苦手な人の能力を補助してくれるのだから。

センター試験を受けない層で、どうやっても漢字・計算・暗記ができないのであるならば、そういう層にそれ以上同じことを繰り返させても勝算は薄い。

素でできないなら、せめてPCを使って何かはできるようにはさせたい。 手で分数計算できなくても、PCを使って計算はできるようにはしておきたい。手で漢字が書けないとしても、PCで漢字は書けるようにはしておきたい。スマホでもという説もあるが、まだ仕事はPCが多い。手でできなくてもPCでできればしのげるシーンはかなりある。

また、現状の学校の設備を考えると、PCを使った国語や算数をやろうとしたら、キーボードが使えないどうしようもない。よって、キーボードタイピングは基礎学力と同等だと私はみなしているんですけどね・・・

「GUIはCUIより優れてる」だけ説明しているだけではね・・・

GUICUIについて、たいていの情報の教科書はGUIがわかりやすくて優れている、みたいな書き回しになっている。そして、そういう説明を踏襲して、試験にそのまま穴埋めという人が多くのパターンであろう。

教科書は、使用機会が減りつつある回線交換方式とパケット交換方式のメリット・デメリットのような、今時もうそんなの比較しないでいいだろう的なことにはページ数を割されていることが多い。ひどい場合は「メリットとデメリットを考えてみよう」という、いやそんなの考えられるわけないだろうという課題になっていたりもする。しかし、いまだに滅びることのないCUIのメリットは書かれていないのである。

したがって、ほとんどの場合、CUIの良さを体験させる実習などはされていないはずである。

こんな簡単な問題一つとっても自分で用意して話さないとならない

実際に説明するかどうかは別にして、私はExcelとRの比較・PowerShellでファイルをごにょごにょするなどあたりで、なんとなくCUI的なものの良さをデモしながら説明できるネタは持っている。ネタの質はともかくとして。ただ、それがないとGUICUIの比較を話していて納得できないから、考えておいているだけである。

情報の授業の質が上がらないのは、こんな単純な問題を考えること一つ取っても、受験参考書ほどのお手軽な資料が存在しないからであると考えている。実習ネタを一つ作るにしても、自分で一から全部書いてしまわないとならない。

自分は仕事を片付けるためにスクリプトを書くようになったわけで

私がちょっとしたスクリプトの書き方を学んだのは、そのほうがシンプルに仕事が早く片付くことがわかったからである。

学部のときは、プログラムらしきものは基本的には一切書かずにになんとかしようとがんばっていた。そういう行為は、情報ができる人と競争することになるのでやめとこうとも思っていた。エディタとか正規表現ワイルドカードに毛が生えた態度)はうまく使ったりとかもしていた。

しかし、学部の終わり頃に、Rの本に書かれたサンプルをみて、自分がExcelでひねりにひねって考えたものが1行で終わることがわかった。それを見て、これは脳みそ使うより、さくっと一行で何かが書いてしまったほうが楽だわ、ということで改宗して、多少のスクリプトは書くようになったのである。

それまで、プログラムというのはごちゃごちゃ書くものだと思っていた。しかし、さくっと書けるものも世間には存在することを知った。それならまあやってやるかということでやり始めたわけである。今の情報の科学の教科書見ていても、javascriptでごてごてとか、いや、やる気にならないよって感じである。

一般人にはアルゴリズムやゲームよりまずスクリプト

プログラミングでコンピュータの面白さや仕組みなどどうこうは一般ぴーぷるの教育にとってはどうでも良いことである。まずは、呪文がいかに生活を簡単に便利にするかを示すのが先でしょう。

簡単なスクリプト書いて色々とやっつけだすと、楽に書けるようにデータの側や制約を入れて置いたほうが良いとかいう習慣もついてくる。データをコンピュータに優しい形にしろ、とかいうことも自然と身についてくるはずである。

だいたい、コンピュータを使いこなせると楽ができると教えないと、物好き以外やる気にならないと思っている。そして、楽が素晴らしいはこの業界としてはまともな価値観であるので、この価値観は教えて良い。

こういう考え方ゆえ私はExcelは基本しか教えない

複雑な集計は、Excel以外の道具でやるべきである。そういう発想は、自力では思いつかない。教育として他人が教えるに値する。

奥村先生のリテラシー本のExcel集計の例みたいなのがたくさんある

奥村先生の学部一回生向けのリテラシー本の最後には、複数ExcelをRのパッケージでまとめて集計する例がある。

ああいうのがたくさんあるとね・・・

私はPowerShell開いてcat *.txtで、ざっと全員分の入力テキストファイルを開いたりしてみせたことも多いが・・・・

情報の図による表現の例に確率漸化式を素材に求めてみる

今の課程になって、期待値が出題不可になった。よって、確率の出題傾向も変化してくると思っていた。

私の予想は、条件付き確率の問題、特に原因の確率のタイプの問題が頻出になると思っていた。しかし、予想は外れた。原因の確率のタイプの問題はあまり出てこない。去年は確率漸化式の問題が続出したように見受けられた。

この確率漸化式は、情報の授業の素材として扱えると個人的には考えている。特に、問題の図による整理の部分である。社会と情報ですら図解による情報の整理は立派なテーマの一つである。

情報の時間であれば、この問題が解けるかどうかはあまり扱わなくて良い。よって、一番大切な「図による整理」の部分だけ時間をかけて扱えるのが良い点である。

特に、2年で情報をやる場合はこれが有効である。同時期に数列を履修しているので。

ここのところ毎年出している某京都の有名国立大学は今年も確率漸化式を出題した。今年の4の問題などは、情報の授業で扱うのに良い素材かもね、と思った。少し見ていってみる。

問題

問題を複素数平面でない形で書いておくと以下の通り。tは1以上の整数、みたいな細かいことはいちいち断らずに書く。

半径1上の正三角形の三頂点を点が動く。点1を偏角0の点、点2を偏角2/3\pi の点・点3を偏角4/3 \pi の点としておく。 t=1で点1にいる確率は1/2, Bにいる確率は1/2である。t>=2以降は次のルールに従う。

  • t-1で点1にいた場合、点1に止まる確率と点2に行く確率はそれぞれ1/2。
  • t-1で点2にいた場合、点2から点3にいく確率は1
  • t-1で点3にいた場合、点1と点3にいく確率はそれぞれ1/2

(注 : 点Aとかとするのが普通だが、手書きの図を数字で書いてしまったのでそれに合わせる)

なお、元の形は移動のルールが複素数平面の形で書かれている。それを翻訳すると上記のようになる。

いきなり式は立てないですよね・・・

複素数平面の形が書かれている問題文を、上の形の問題文の理解に落とし込むことがまず必要である。そのときに規則性を把握するのに作った図が次の図である。

問題文を見ながら、下の図に自分は書き込んでいった(注 : 実際は手書きなので「表」などはひらがな。

f:id:baruku07:20180301002221j:plain

実際の問題文では、コインが裏が出たときが共役を取る、となっている。共役を取った結果は点1・点2・点3ごとにそれぞれ色々と違う。この挙動の違いは、三角形を実際に見ながら考えないと混乱すると判断した。よって、まずは三角形を書いてそれに書き込んで考えていこう、ということで書いていったのがこの図である。

このまま式を立てても良いけど、普通の状態遷移図風に書き換えたほうが落ち着いて式が立てられるので、図を書き換えたものが次の図である。

f:id:baruku07:20180301002237j:plain

確率1/2なので、確率は書き込まずに、この図のままで式を立てても大丈夫、というところでここから式を立てた。

後から駿台の解答速報を見たら、わりと図が似ていた。。。自分がやると、なぜか河合の解答でなく駿台の解答に似る傾向がある・・・(予備校などいけるレベルではありません。私は)

なお、河合は表で整理して解答を書いている。

河合の場合は、アイデアを導くための整理というよりかは「全ての場合をちゃんとつくして説明していますよ」的な論理的な説明を重視して表にしたのだと思う。

この2社の整理の仕方の違いでも、現行の社会と情報でも立派な授業の問になる。図と表の表現の違いは?メリット・デメリットは?などとやれば良い。

この手の問題ってモデル化の単元で扱うべき思考プロセスを扱えるのでは?

かちっとした文章でまとめられている要件を図や数式に落とし込むというのは、モデル化のプロセスの一種であると考えている。図にするだけで「図によるモデル」とかいう言い方で教科書でも扱われている。

理想的な形で、この問題を情報の授業で扱えるなら次のプロセスを踏むことになると思う。

  1. 図に落とし込む
  2. 数式に落とし込む
  3. 手で解かせる
  4. 計算機でシミュレーションさせて手の結果と整合的になることを確認させる
  5. シミュレーションの様子をグラフィカルに見せる(この場合であれば、三角形上で点を動かしている絵を作るなど)
  6. 問題条件を変えて解く(手では難しい場合が多いので計算機で)

パブコメで出ている指導要領でも、手で解かせたものと計算機で解かせたものの比較はしろといっている。なので、手で解かせること自体に何も問題はない。

この問題の場合、問題条件を変えると手では解き難くなるはずである。この問題を手で解くときは、対称性を利用している(逆にそれに気づけますか?という問題でもある。図を描いていたら、向かっている線の様子で対称性に気付きやすくなる)。よって、計算機のほうが簡単に問題条件を変えて色々と試しやすいはずである。

数式処理ソフトで行列のn乗を使って解かせてみるのも面白いと思う。

地に足をついた素材で普通の人は授業をしたい

数理モデルの扱いについては、情報ワーキングが過激も、それを反映したパブコメ版の指導要領もやや過激なような気がする。ここまで過激にやられると、もはや一般人は全部無視でやるぞ、と居直られても仕方がないような気がする。

超ハイパーな指導力とゆとりがないとあれやるのは無理ですよと最近思う。この視点で、いくつか問題に関連して思うことを述べておく。

現象からモデル化の部分はハードルが高すぎる

現状、物理以外で(そして物理ですらパターン暗記)、モデルというものそのものをいじっているという実感のある生徒はほとんどいないと思う。

その状況で、情報の授業では、現実の要件をこの問題文の形に落とし込む部分から始めていこうとしているように見える(現状の情報の科学などの教科書も見ながら考えると)。しかし、そんなのは無理でしょう?と思う。

モデルを触っているという実感の無い人に、何の参考情報もなし(情報の教科書は基本的にそういうスタンス)モデルを一から作らせるということは、まんじゅうを食べたことのない人に、誰も考えたことのないオリジナルまんじゅうの作り方を考えろといっているものだと思う。

だいたい、ほぼモデル化の初期の作業が済んだこの問題文から、この図に落とし込めるレベルの生徒ですら、どれぐらいいるかわからない(自称でない進学校を除いて)。現実を見ようよと言いたい。

不自然に身近や社会に題材を求めても

問題解決では「現実の問題を扱って興味を引き出す」「身近で考えやすい問題を扱って興味を引き出す」とやたらにいっている。そういって、これ高校生からは浮世離れしてるよな、という問題を扱っているのをよく見かける(ように私は感じる)。

高校生にとっての現実の問題は、まさに目の前にある受験である。それに関連させて、情報科が扱うべき項目を扱って何が悪いと個人的には言いたい。

歴史的経緯はわかっている。情報未履修問題のときに、適当に他の教科に振り替えられた思い出があるので、そういうことはさせたくないという思いが強くなるのもわかる。しかし、もうそろそろそういのはね・・・

受験科目の教材研究の蓄積・教材の質の高さは生かしたい

受験関連の教材は質が高い。こういった、問題文の状況の整理の良い例をみたければ、受験参考書などの場合の数・確率の本を見れば良い。受験参考書の場合の数・確率の本は、図の描き方の実践集みたいなものだと思っている。

受験系の参考書のもう一つのメリットは、訓練系の問題が大量に用意されていることである。これは、授業をするほうからするとありがたい。一般人に能力を身につけさせるには、やはり一定の演習量は必要となる。このとき、一個人で問題を大量に作るというのは難しい。質の高い演習問題が揃っている教材が使えるなら使いたい。

個人的には、(ある程度の偏差値以上の)入試レベルの数学の「解く前の問題の整理」は情報のモデル化で求められているものとかなり重なっている。そして、情報で開発されている教材よりまともなものが多いと思う。

こういう題材を、情報で展開するときは、以下の点がポイントだと思っている。

  • 情報科の身につけさせたい資質の部分をうまく取り出す(情報系の技術書などをみながら考える)
  • 一般人向けにマイルドにする

理想の情報のカリキュラムでも数学の生徒実態を考えておかないと全てがぶち壊し

適当に情報の指導要領についてかきなぐっていくシリーズである。

プログラミングとそれとセットになるモデリングの部分のかき回しが、思ってたより逃げられない感じのかき回しでびびった話に関連してのことである。(指導要領の本文をPDFから持ってくると、制御文字がトラブルを引き起こすので貼らない。)

この書き回しだと、情報で数理モデルを扱わざるを得ない感じである。私は、もう少しふわっとした書き回しがくると思っていた。よって、大変な学校ではふわっとした書き回しをうまく使って逃げれば良いと思っていた。しかし、この書き回しだと逃げ方が限定されそうであるような気がしてきた。

ここまで過激にやられると、逆に工夫してどうこうしようという人はいなくなるでしょう。そうなると、結局は、超優しい教科書が出てきて、それを何も考えずになぞり「やりました」ということになるところに落ち着きそうである。ただ、大人のメンツの関係上、超優しい教科書レベルが使えないケースもありそうで。その状況では大変でしょうね・・・

2年生でやるならすばらしいカリキュラムだと思います

パブコメの案の、情報のカリキュラム自体は私は良いと思っている。どの単元も私は好きで教えたい単元である。現状でも、ネタを拾ってきて次の情報で入る話に近い話は色々としたことがある。しかし、現状では「わけのわからない高度なことをやっている」とか「これは情報ではない」などと不勉強な人々(教師も生徒も)に錯覚されることがたまにあった。その現状が解消されるだけでうれしい話である。

ただし、予備知識と能力がない段階でこれをやると最悪のカリキュラムになる。このカリキュラム、2年生で教えるのであれば素晴らしいと思う。色々とやりたいことがありすぎる。しかし、1年でやらされるケースもそれなりに出てきそうである。それがいかにあほらしいことか。特に、数学の準備なしでこれを教えさせられることはありえない。それだけは強い問題意識があるので、その点についてばかばかに批判する。

逃げ道のない書き回しなので

数学が問題になるのは、(3)のコンピュータとプログラミングの単元である。ここは、ふわっとプログラミングではなくて、アルゴリズム数理モデルという理系プログラミングをやれという指定にしか私には読めなかった。

もちろん、理系風のことをやるとはいえ、必履修で先行科目の規定や履修年次の規定がない以上は、使う数学は厳密に中学範囲に制限されるはずである。まあ算数や中学数学でも十分にしんどいということは置いておこう。

プログラミング、というだけであれば、数1Aは逃げられるプログミングはいくらでも存在した。大変な学校は、まあうまくやって逃げるか、とも考えていた。しかし、ここでは「社会や自然などにおける事象をモデル化する方法」となっている。こうなると、数理モデルを避けにくい。

数学っぽい話を工学部系の人がするときに「この程度は数学でないから難しく無い。」とよくいう。しかし、これは見ているレベルが違う。IF関数で不等号が出てくるだけでレベルでも十分に「ばりばりに数学」という環境も、世の中に存在する。

コンピュータでふわっとモデルいじるだけだから、数学関係ない、という言い訳も普通なら通る。しかし、ここでは留意事項として、手で色々とやって比べろと書いてあるのである。手で数理モデルを操作するということは、数学そのものの営みである。それも、生徒が数学の時間に大の苦手な文章題を、さらにややこしくした文章題である。

はっきりいって、理科で物理基礎を必履修にされされている気分である。

実現性を考慮せずに理想を語るのは無責任では・・・

別に数1Aの後でやって良いなら何の問題もないが

数1Aをやった後で数理モデルを扱うのであれば何の問題もない。よって、大変な学校は2年でやれ、と言いたい。数研の高等学校以上が使えない学校はそうしろと特に言いたい。大変でない学校でも、そのほうがこの内容がよく理解できると思う。

しかし、大変な学校に限って、色々と大人の事情で情報の必履修が1年にくるのである。また、数研の高等学校以上が使える学校は、理科基礎を2つ1年生でやる関係で、結果的に情報が2年生となっているので何も問題はおこらない。皮肉な話である。

過激派は生徒が文章題が苦手って知ってる?

情報の過激派な人は、1年生でこれをやらせるべきだといっている。しかし、数1Aの教科書内容と生徒の状況知ってる?と言いたい。だいたい、数学教師ですらまともに文章題を教えきれていない状況である。数学的活動もできているとはいえない状況なわけだし。それにも関わらず、家庭学習・入試・単位数・教員の質のどれについても数学より条件の悪い情報で、それより難しいことができる、というのはなぜ言えるのだろうか。

もはや、情報関係者は意地になっているとしか思えない。情報教員の地位向上のためと称して、わけのわからないことをやろうというところから話が始まっている。要は生徒にわからないことをやることで、他教科の教員や生徒になめられない状況を作り出したいと。そうとしか思えない。

実戦投入の前に自分たちの大学の文系で試せ

パブコメの案の内容、まずは、ある一定以下の水準の大学の文系学生にやらせてみろと言いたい。それでこなせることが実証されてから導入しろと言いたい。高校はそれ以上に大変な環境すらあるのだから。

はっきりいって、このカリキュラム大学入試偏差値65以上の生徒のみを集めた学校のことしか見てないだろ?と言いたい。

工夫すればできるという主張も滅びろ

数学の準備のなさを避けるための工夫は、授業時間外にやることになる。情報の非常勤にそれやらせて良いのだろうか?ワーキングで好き放題言った人々が、責任を持っていかなる層でも通用する教材を全部作成してくれるならやってくれるなら良い。しかし、そんなことは絶対にありえない。

その工夫によって生徒に何かが身についてくれるなら、百歩譲って何かやっても良い。しかし、どうせアリバイ作りにしかならないのである。そんなことを無償奉仕させて良いのか?とにかく、無茶を通すための工夫というのは、労力だけ消費して何も生み出さないのである。

指導要領を熟読していない人が色々言い出すと面倒

指導要領は、色々と逃げ道がある。「生徒の実態に応じて・・・」とか「指導の順序は入れ替えても良い」などというお助け規定もある。それをフル活用すれば、まあなんとかはごまかせる。

数1Aの進度を考えると

超大変学校でないが中堅進学校でもないケースを考える。数理モデルの単元を相手にしようと思ったら、数IAは2次関数の最大・最小、数Aは場合の数・確率は終わっていると選択肢が広がる。普通にいけば、2学期中間まででこれらの単元は終わるはずである。

数I側では、2学期期末の入りで2次関数の最大・最小をやったこともある。しかし、これは遅いケースで普通に考えれば2学期中間で2次関数の最大・最小は終わる。

数A側は現状と少し変わってくるかもしれない。というのも、今度は数Aは2単位で2単元である。内容を考えると、場合の数・確率より幾何のほうが少ないので、場合の数・確率を1.2単位から1.5単位ぐらいかけてやる進行が考えれらる。そうなると、2学期期末まで確率を持ち越す環境(特に条件付き確率)もでてきてもおかしくない。

モデル化の単元は、指導要領の順序でいけば、(3)であることと、(1)の単元は導入単元であることを考えることから、普通にやると2学期にの頭にはこの単元に突入することになる。しかし、これは避けたい。詳細はまた別途書くが、うまく(4)のネットワークやデータの活用をうまく先に消化しながら数学側の準備を待って、この単元に入りたい。

しかし、後回しにもリミットがある。というのも、アルゴリズム数理モデルの単元の筆記試験は3学期に回したくないという制約があるからである。この単元でまともに筆記試験をやった場合、どう考えても欠点が続出である。年度末の土壇場になって単位不認定が続出か?とか、追指導か?などとういうのは精神衛生に良くない。

以上をふまえると、2学期にこの単元は扱う。最低限、筆記試験もする。しかし、数学側をぎりぎりまで待って単元には入る。このせめぎ合いは、非常に微妙な調整が必要とされることになりそうである。

情報の教員は情報に専念させろと言われているが・・・

数学の授業経験なしで現地調達方式はやりにくい

情報の授業をやる上で必要な数学は、現地調達方式をやれば良いという人がいるが何も見えてない。まず、2単位で生徒も興味関心もない、さっぱりできない状況で、数学の現地調達に付き合えるほど暇はない。そして、実際に学校で(できれば情報を教える勤務校で)数学を教えたことがなければ、生徒の数学理解の肌感覚なんかわからない。そのため、適切な現地調達方式での授業ができるとは思えない。

自分の場合は数学の授業をすることは重要な教材研究です

情報教員には、他の科目を教えさせずに情報に集中させろという言説が世間にはある。しかし、自分が新課程のこの内容を持つのであれば、自分が情報を教える学校で、自分で数1か数Aの授業を1クラスぐらいは(できれば両方)情報と同時に持ちたいと思う。数学をやることで得られた生徒理解がないと、授業が組み立てにくいからである。

数学の授業をやることによる生徒理解は、何時間の机上の教材研究よりも重要な情報である。少なくとも、TTが付けられる場合は、どちらかは数1Aの担当者に入って欲しいところである。

情報の授業をやっているだけで、アルゴリズム数理モデルの授業を展開するための生徒理解ができるというのはどう考えても無理筋の主張である。問題解決の単元や情報デザインをやっているときに、どうやったら生徒の数学的な状況が把握できるのだろうか?私の能力では無理です。

理想を掲げる前に現実に対処してくれ

数学を現地調達方式で教えるときも、色々と細心の注意を払う必要がある。

まず、生徒は初期学習に縛られるので、数学に迷惑をかけないようにしないとならない。この点は、数学教師対策も含めてのことである。情報の教師は数学の教師より地位が低くみられている。その上、俺様志向のプライドの高い(かつ実力のある人もいるんだな、これが。)人も多い。その状況では、何情報で適当なことを教えてくれたのだ、と言われてしまうと面倒なことになる。相当に気を使わなければならない。まだ、数学を同じ学校で教えて入れば対等の立場で話せるのでなんとかなる。しかし、そうでなければ悲惨である。

さらに、生徒が情報を飛び越えて数学に質問しにいくケースの対処も想定しておかなければならない。情報が非常勤である場合、試験前に数学の常勤に生徒が質問しにいくケースがは想定される。そのときに生徒がぼろくそに言ったとする。このとき、数学側が情報の非常勤を守ってくれるとはとても思えない。逆に情報の教師を攻撃してくれる可能性が高い。同時に数学を同時に教えていれば、この問題もかなり緩和できるのだが。。。。

大変な学校の場合はある意味情報だけで閉じる

1年は数Iでなく学校設定科目であるケースすらありえる。数Aなど当然なし。自分の場合はこのケースは楽勝である。逆に自分で全部教えてしまえば済むだけである。開き直って、必要な数学は普通に数学の授業をして教える。そういう学校では、変なマイルールでああだこうだいう数学の人など絶対にいない。ただ、数学免許なしの人にそれやらせるのかな・・・