アカウント名:
パスワード:
中学生なら英語も読めるし、思考能力もほぼ成人レベル
大学とか実社会で使われている言語はC/C++とかpythonなのに中学生を子ども扱いして日本語プログラミング言語を押し付けたり教育用とのたまってるだけで実際には誰も使ってない言語を押し付けるのは自称教育者のエゴでしかないとおもう
生徒が可哀想こんな教科書を採用する学校があったらPTA(保護者)はクレームを入れるべき
pythonでもなんでもいいから、とにかくメジャーな言語を選んで、プログラムと同時に英単語とか英文法を教える方がよっぽど教育になる
教員は、専門に拘らず、分野をまたぐ知識(この場合だと英語とプログラミング)を説明できるぐらいには勉強しておくべきそれが教育ってもんだと思う
こういうこと言うから、大概の子はプログラム嫌いになるのよね。別に皆がプログラマーを目指してるんじゃないから、言語は何だっていいのよ。
大事なのはブログラミングの能力じゃなくて、アルゴリズム(というものの考え方)。別にscratchでもN88-BASICでも構わないから、例えば5分たったらアラームがなるようにするにはどうするかとか、テストの成績順に名簿を並び替えるはどうすればいいかとか、そういう身近なものの制御がどういう仕組みなら実現できるかを考えるような授業になるといいな。
無限ループで現在時刻もしくは経過時間の取得を繰り返し、時間が来たらループから脱出して、アラームを鳴らす感じ?
今どきの言語でやると、ある意味、面白い。
実用的な言語に拘る必要はないという点には同意ですが、なでしこだと変に日本語に引きずられてむしろ混乱しないかなという心配はあります。
リンゴ値段=300リンゴ個数=5(リンゴ値段×リンゴ個数)を表示。
は通るのに
リンゴの値段=300リンゴの個数=5(リンゴの値段×リンゴの個数)を表示。
は通らなかったりとか。
中二の子供の別の出版社の教科書を見てみたけど、まさにその通りで、ロジックを考えさせる内容でした。歩行者用信号機のロジックを考えろってな事で、書かれているのはフローチャートの例だけでしたね。準備物としてプログラム作成ソフトとかロボットカーとか書かれているので、プログラミング環境は好きなの選べって感じ。
大学や実社会で使われる言語と同じである必要なんて無いと思うがなあ。手続き型言語というものがどんなものかが分かればいいと思う。なでしこが最適かどうかは大いに異論があるけど、最初の一歩として他分野(英語とか)の余計な知識を使わずに済むなら良いのかも。#個人で使う言語は主にC++だけど、業務ではC++なんてSimulinkモデルから自動生成される中間言語でしかないのでAC
手続き型言語というものがどんなものかが分かればいいと思う。
学校教育で概念が学べる。。だと!?
# そんな質の良い教師に出会えたらいいなぁ
自分たちが社会人になってプログラミング言語を勉強して、その言語がすたれるまでの期間を思い出せば小中学生が社会人になる頃には、今使われているからという理由で憶えた言語が実践時には廃れている可能性が極めて高いので、そのあたりは特に問題ない気がする。
確かにその頃使ってたZ80機械語(当時アセンブラなんて持ってなかった)は最近だとエミュレータ上でしか使うことがない言語になっているような…
# 決してコレ [amazon.co.jp]に手を出そうとしてるわけでは…
数学や論理代数の専門的な知識がある人は学校教育になんか関わらない必然的に教員や教科書編集者はプログラマ適性の低い人が多くなりがちでプログラミングには論理的思考が重要で文法は瑣末な問題ですと言っても伝わらないんだろうな未知の文字列が理解できない原因が自分の論理的思考の弱さだとは普通は考えない
なでしこってさっと勉強してさっと使うには良い言語だよ最初のとっかかりとして、後につなげる思考の基礎を培うにはもってこいだと思うけどね。
そりゃあ英語がネイティブのように使えればそれにこしたことはないけれども忘れてないか?
教員の英語力の程度を!
目的が論理思考の訓練であるなら言語は既存のものでなくて良いはず
現にプログラムを作成している身からは日本語の並びがプログラムに見えないってのは同意する
中学生を英語のできる成人扱いして英語の実用プログラミング言語を押し付けたりするのはエゴでしかないとおもう
自分が大学生の頃、C言語を勉強しているとき、C言語の本か何かでstrcatという関数を覚えた。catの意味は知らないがそういうシグネチャの関数として覚えた。より後になって、英語を勉強でconcataneteという単語を知った時、strcatの名前の意味を理解した。
英語圏の中学生はstrcatからconcataneteを連想するのは簡単そうだが、日本人でもそうなのだろうか。そもそも関数名が「文字列連結」なら、理解するのに追加のコストを支払う必要がなくその分プログラミングの学習ができる気がするが。
# なでしこだと「追加」らしい
追記:concatenateのつづりは未だに習熟できていなかったことを理解した。
英語圏だからといって、concatenate から cat は連想しにくいでしょうね。しかし、CはUnixな文化の中心に近いところで作られたわけです。なので、concatenate が cat に略されるのは、とても日常的なものですね。(当時プログラム組まない人がUnix触ることがあったかはわかりませんが)プログラム組まない人でも親しんでる略語です。strからstringを連想するよりも、Unix文化的には当たり前感が強いでしょう。
中学生がUNIX文化に親しんでいたらもはやLinuxで習熟した先生より先輩じゃないのか。
Excelの関数にもあります。
CONCATENATE 関数https://support.microsoft.com/ja-jp/office/concatenate-%E9%96%A2%E6%95... [microsoft.com]
データベースだとCONCAT関数ですね、これはSQL9xかなにかで標準化されてるらしいので、SQL ServerでもOracleでも使うことができます。
そして文字列連結関数「接続猫」が出来上がった
プログラムと同時に英単語とか英文法を教える方がよっぽど教育になる
またそういう無茶をいう。それって現役SEが手弁当で出張授業やってくれないかなというのと同レベルのブラック発言だよ。
プログラミングを教えるのではなく、プログラミングを通して論理的な思考を身に着けさせることが目的ですから勘違いなさらないように。学習指導要領でも、もともとは「プログラミング的思考」として提案し、準備もしてきたのに、理解できない馬鹿な人々が「プログラミング」としか理解できずに書き直させられただけで、内容としては「プログラミング的思考」のままです。
プログラミングを教えようとすると、対象の子供たちがプログラミングで使われる母国語を理解しているかどうかで差が出てきます。一般的なプログラム言語は英語ですので、英語を理解している生徒はかな
プログラミングを教えるのではなく、プログラミングを通して論理的な思考を身に着けさせることが目的
そういう事だよね。(その後の愚痴は略)
論理思考の教材としては数学が最適のはずだけど、数式アレルギー量産機と化している現状を鑑みて、他の道を探っているのかな。あるいは、身近な題材を教材として使うことで効果が上がる期待をしているのか。
つまり、スマホが身近になっている現状を前提として、「あれの中身はどうなってるんだろう」をとっかかりとするってこと。音楽の教材にヒット曲を使うのと同じ
現役公立中学技術科教員です。
>英語も読めるし、思考能力もほぼ成人レベルではありません。英語は、アルファベットの羅列としては読めますが、中学生では、まともに「意味を成す」言語としては扱えません。テキストベースのプログラミングではなくビジュアルプログラミングでアルゴリズムを教えても、クラスの半分以上はまともなプログラムになりません。また、キーボード入力も、遅い生徒と早い生徒がいます。タッチタイピングができる生徒と雨だれ式の生徒とが混在します。加えて、中学技術科は週1時間(年間35時間)、中3は週0.5時間(年間17.5時間)が標準の時
追記です。
あと、外国人生徒も増加しており、「日本語が母語」ではない生徒もクラスにいたりします。逆にこういった生徒は日本語プログラミングがハードルになりかねません。ビジュアルプログラミングにせざるを得ない理由の一つです。
また、現在、中学技術科では4つの分野「A材料と加工」「Bエネルギー変換」「C生物育成」「D情報」を前述の時間数3年間文で教えることになっており、「D情報」だけに時間をとることもできない上、「D情報」もプログラミングにとどまらず、情報の基礎的な内容や、情報モラル、プログラムによる計測・制御まで教えなければなりま
職業病でプログラミングに強くこだわりすぎている人の意見だと教育現場を混乱させるだけですね。
私の場合、数学をしっかり学ばせるほうが大切だと思います。そのうえでプログラミング的思考(手続き型)を学ばせたいのならscratchのようなビジュアルプログラミングで十分すぎると思います。
それよりもセキュリティ(例えば短いパスワードだと総当りでも短時間にクラックされるなど)を教えたほうが役に立ちそうです。
余談ですが、私が中学生のころ、プログラミングの本を読んでいてA=A+1にとても違和感を覚えました。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
私は悩みをリストアップし始めたが、そのあまりの長さにいやけがさし、何も考えないことにした。-- Robert C. Pike
生徒が可哀想 (スコア:1)
中学生なら英語も読めるし、思考能力もほぼ成人レベル
大学とか実社会で使われている言語はC/C++とかpythonなのに
中学生を子ども扱いして日本語プログラミング言語を押し付けたり
教育用とのたまってるだけで実際には誰も使ってない言語を押し付けるのは
自称教育者のエゴでしかないとおもう
生徒が可哀想
こんな教科書を採用する学校があったらPTA(保護者)はクレームを入れるべき
pythonでもなんでもいいから、とにかくメジャーな言語を選んで、
プログラムと同時に英単語とか英文法を教える方がよっぽど教育になる
教員は、専門に拘らず、分野をまたぐ知識(この場合だと英語とプログラミング)を説明できるぐらいには勉強しておくべき
それが教育ってもんだと思う
Re:生徒が可哀想 (スコア:5, すばらしい洞察)
こういうこと言うから、大概の子はプログラム嫌いになるのよね。別に皆がプログラマーを目指してるんじゃないから、言語は何だっていいのよ。
大事なのはブログラミングの能力じゃなくて、アルゴリズム(というものの考え方)。別にscratchでもN88-BASICでも構わないから、例えば5分たったらアラームがなるようにするにはどうするかとか、テストの成績順に名簿を並び替えるはどうすればいいかとか、そういう身近なものの制御がどういう仕組みなら実現できるかを考えるような授業になるといいな。
Re: (スコア:0)
無限ループで現在時刻もしくは経過時間の取得を繰り返し、時間が来たらループから脱出して、アラームを鳴らす感じ?
今どきの言語でやると、ある意味、面白い。
Re: (スコア:0)
実用的な言語に拘る必要はないという点には同意ですが、なでしこだと変に日本語に引きずられてむしろ混乱しないかなという心配はあります。
は通るのに
は通らなかったりとか。
Re: (スコア:0)
中二の子供の別の出版社の教科書を見てみたけど、まさにその通りで、ロジックを考えさせる内容でした。
歩行者用信号機のロジックを考えろってな事で、書かれているのはフローチャートの例だけでしたね。
準備物としてプログラム作成ソフトとかロボットカーとか書かれているので、プログラミング環境は
好きなの選べって感じ。
Re:生徒が可哀想 (スコア:2, 興味深い)
大学や実社会で使われる言語と同じである必要なんて無いと思うがなあ。
手続き型言語というものがどんなものかが分かればいいと思う。なでしこが最適かどうかは大いに異論があるけど、最初の一歩として他分野(英語とか)の余計な知識を使わずに済むなら良いのかも。
#個人で使う言語は主にC++だけど、業務ではC++なんてSimulinkモデルから自動生成される中間言語でしかないのでAC
Re: (スコア:0)
手続き型言語というものがどんなものかが分かればいいと思う。
学校教育で概念が学べる。。だと!?
# そんな質の良い教師に出会えたらいいなぁ
Re: (スコア:0)
自分たちが社会人になってプログラミング言語を勉強して、その言語がすたれるまでの期間を思い出せば
小中学生が社会人になる頃には、今使われているからという理由で憶えた言語が実践時には廃れている可能性が極めて高いので、そのあたりは特に問題ない気がする。
Re: (スコア:0)
確かにその頃使ってたZ80機械語(当時アセンブラなんて持ってなかった)は
最近だとエミュレータ上でしか使うことがない言語になっているような…
# 決してコレ [amazon.co.jp]に手を出そうとしてるわけでは…
Re: (スコア:0)
数学や論理代数の専門的な知識がある人は学校教育になんか関わらない
必然的に教員や教科書編集者はプログラマ適性の低い人が多くなりがちで
プログラミングには論理的思考が重要で文法は瑣末な問題ですと言っても伝わらないんだろうな
未知の文字列が理解できない原因が自分の論理的思考の弱さだとは普通は考えない
Re: (スコア:0)
なでしこってさっと勉強してさっと使うには良い言語だよ
最初のとっかかりとして、後につなげる思考の基礎を培うにはもってこいだと思うけどね。
そりゃあ英語がネイティブのように使えればそれにこしたことはないけれども忘れてないか?
教員の英語力の程度を!
Re: (スコア:0)
目的が論理思考の訓練であるなら言語は既存のものでなくて良いはず
現にプログラムを作成している身からは日本語の並びがプログラムに見えないってのは同意する
Re: (スコア:0)
中学生を英語のできる成人扱いして英語の実用プログラミング言語を押し付けたりするのはエゴでしかないとおもう
Re: (スコア:0)
自分が大学生の頃、C言語を勉強しているとき、C言語の本か何かでstrcatという関数を覚えた。
catの意味は知らないがそういうシグネチャの関数として覚えた。
より後になって、英語を勉強でconcataneteという単語を知った時、strcatの名前の意味を理解した。
英語圏の中学生はstrcatからconcataneteを連想するのは簡単そうだが、日本人でもそうなのだろうか。
そもそも関数名が「文字列連結」なら、理解するのに追加のコストを支払う必要がなく
その分プログラミングの学習ができる気がするが。
# なでしこだと「追加」らしい
Re: (スコア:0)
追記:concatenateのつづりは未だに習熟できていなかったことを理解した。
Re: (スコア:0)
英語圏だからといって、concatenate から cat は連想しにくいでしょうね。
しかし、CはUnixな文化の中心に近いところで作られたわけです。
なので、concatenate が cat に略されるのは、とても日常的なものですね。
(当時プログラム組まない人がUnix触ることがあったかはわかりませんが)プログラム組まない人でも親しんでる略語です。
strからstringを連想するよりも、Unix文化的には当たり前感が強いでしょう。
Re: (スコア:0)
中学生がUNIX文化に親しんでいたらもはやLinuxで習熟した先生より先輩じゃないのか。
Re: (スコア:0)
Excelの関数にもあります。
CONCATENATE 関数
https://support.microsoft.com/ja-jp/office/concatenate-%E9%96%A2%E6%95... [microsoft.com]
データベースだとCONCAT関数ですね、これはSQL9xかなにかで標準化されてるらしいので、
SQL ServerでもOracleでも使うことができます。
Re: (スコア:0)
そして文字列連結関数「接続猫」が出来上がった
Re: (スコア:0)
プログラムと同時に英単語とか英文法を教える方がよっぽど教育になる
教員は、専門に拘らず、分野をまたぐ知識(この場合だと英語とプログラミング)を説明できるぐらいには勉強しておくべき
それが教育ってもんだと思う
またそういう無茶をいう。それって現役SEが手弁当で出張授業やってくれないかなというのと同レベルのブラック発言だよ。
Re: (スコア:0)
プログラミングを教えるのではなく、プログラミングを通して論理的な思考を身に着けさせることが目的ですから勘違いなさらないように。
学習指導要領でも、もともとは「プログラミング的思考」として提案し、準備もしてきたのに、理解できない馬鹿な人々が「プログラミング」としか理解できずに書き直させられただけで、内容としては「プログラミング的思考」のままです。
プログラミングを教えようとすると、対象の子供たちがプログラミングで使われる母国語を理解しているかどうかで差が出てきます。一般的なプログラム言語は英語ですので、英語を理解している生徒はかな
Re: (スコア:0)
そういう事だよね。(その後の愚痴は略)
論理思考の教材としては数学が最適のはずだけど、数式アレルギー量産機と化している現状を鑑みて、他の道を探っているのかな。
あるいは、身近な題材を教材として使うことで効果が上がる期待をしているのか。
つまり、スマホが身近になっている現状を前提として、「あれの中身はどうなってるんだろう」をとっかかりとするってこと。
音楽の教材にヒット曲を使うのと同じ
Re: (スコア:0)
現役公立中学技術科教員です。
>英語も読めるし、思考能力もほぼ成人レベル
ではありません。
英語は、アルファベットの羅列としては読めますが、中学生では、まともに「意味を成す」言語としては扱えません。
テキストベースのプログラミングではなくビジュアルプログラミングでアルゴリズムを教えても、クラスの半分以上はまともなプログラムになりません。
また、キーボード入力も、遅い生徒と早い生徒がいます。タッチタイピングができる生徒と雨だれ式の生徒とが混在します。
加えて、中学技術科は週1時間(年間35時間)、中3は週0.5時間(年間17.5時間)が標準の時
Re: (スコア:0)
追記です。
あと、外国人生徒も増加しており、「日本語が母語」ではない生徒もクラスにいたりします。
逆にこういった生徒は日本語プログラミングがハードルになりかねません。
ビジュアルプログラミングにせざるを得ない理由の一つです。
また、現在、中学技術科では4つの分野「A材料と加工」「Bエネルギー変換」「C生物育成」「D情報」を前述の時間数3年間文で教えることになっており、「D情報」だけに時間をとることもできない上、「D情報」もプログラミングにとどまらず、情報の基礎的な内容や、情報モラル、プログラムによる計測・制御まで教えなければなりま
Re: (スコア:0)
職業病でプログラミングに強くこだわりすぎている人の意見だと教育現場を混乱させるだけですね。
私の場合、数学をしっかり学ばせるほうが大切だと思います。
そのうえでプログラミング的思考(手続き型)を学ばせたいのならscratchのようなビジュアルプログラミングで十分すぎると思います。
それよりもセキュリティ(例えば短いパスワードだと総当りでも短時間にクラックされるなど)を教えたほうが役に立ちそうです。
余談ですが、
私が中学生のころ、プログラミングの本を読んでいてA=A+1にとても違和感を覚えました。