「京大生でもx=x+1が分からない」、喜多教授が明かすPython教育の実態
大森 敏行
プログラミング言語「Python」の大規模イベント「PyCon APAC 2023」が2023年10月27日と28日の2日間にわたって開催された。
1日目に行われた京都大学国際高等教育院の喜多一教授による基調講演を中心に、イベントの内容をリポートする。
PyCon APAC 2023は、1日目の基調講演「Why University Teachers Wrote a Python Textbook?」で幕を開けた。
京都大学でPythonを使ったプログラミング教育を担当している喜多教授が、その実態について英語で講演した。
(以下略、続きはソースでご確認ください)
日経クロステック 2023.11.07
https://xtech.nikkei.com/atcl/nxt/column/18/02629/110200002/
探検
【プログラミング言語】「京大生でもx=x+1が分からない」、喜多教授が明かすPython教育の実態 [すらいむ★]
■ このスレッドは過去ログ倉庫に格納されています
1すらいむ ★
2023/11/08(水) 21:52:07.00ID:52l6jXYO2023/11/08(水) 21:55:32.78ID:+UcoFPAS
pascalやdelphyなら:=
Rなら<-
Rなら<-
2023/11/09(木) 09:10:49.00ID:aTiiFw9I
プログラミング言語は、もうちょっと
数学的な記号の使い方や一般的な数学的概念に寄せる努力をした方が良いんじゃ無いかな?
と思う時はある
数学的な記号の使い方や一般的な数学的概念に寄せる努力をした方が良いんじゃ無いかな?
と思う時はある
2023/11/09(木) 10:29:07.68ID:aTiiFw9I
for文も、reptitionとかrepeatとか略してrepとかに…と思わなくもない
x86アセンブラの繰り返しはrepだし
そこら辺を変えようってならないのは
過去からの慣れと言うか惰性な気がしなくも…
英語苦手にしてみりゃ、どっちでも良いわ…ってなる…
x86アセンブラの繰り返しはrepだし
そこら辺を変えようってならないのは
過去からの慣れと言うか惰性な気がしなくも…
英語苦手にしてみりゃ、どっちでも良いわ…ってなる…
5名無しのひみつ
2023/11/09(木) 12:42:44.20ID:zw37vaFX >>3
Mathematicaを使うんだ
Mathematicaを使うんだ
2023/11/09(木) 12:55:48.26ID:iRKujXN2
言語の違いで演算子自体の動きが違ったりすんの地味にめんどくさいよな
演算子は一番基本的な部分なんだから、言語によっての違いはなくしてほしい
演算子は一番基本的な部分なんだから、言語によっての違いはなくしてほしい
7名無しのひみつ
2023/11/09(木) 13:08:33.19ID:poUPLu16 >>2
Go!
Go!
8名無しのひみつ
2023/11/09(木) 13:17:49.35ID:U48jVYjT代入が「=」なのはFORTRANのせいか?
9名無しのひみつ
2023/11/09(木) 13:39:18.61ID:2DaiNKCZ C言語のポインターの習得には時間を取った。
しかし、考えてみると、ポインターの使い方を
憶えることがプログラミングの理解を深めるには
最適だと思うようになった。
単なる変数はユーザーには便利でも本質からは遠い。
ポインターは覚えにくいが機械の本質に近い。
しかし、考えてみると、ポインターの使い方を
憶えることがプログラミングの理解を深めるには
最適だと思うようになった。
単なる変数はユーザーには便利でも本質からは遠い。
ポインターは覚えにくいが機械の本質に近い。
10名無しのひみつ
2023/11/09(木) 13:40:32.77ID:xgZLAW7a 特定のプログラミング言語に於いては等号ではなくて代入記号なんだ、と教育しても理解できない学生がいるってことか?
もうそれだったら知能の問題じゃないのかな・・・
もうそれだったら知能の問題じゃないのかな・・・
11名無しのひみつ
2023/11/09(木) 13:47:58.54ID:xgZLAW7a12名無しのひみつ
2023/11/09(木) 14:10:29.54ID:8+rLeA9z 教え方が下手なだけだろう
13名無しのひみつ
2023/11/09(木) 14:14:10.82ID:4qYWEpZC アセンブラがわかると高級言語のわかりにくい概念でも結構自明なものは多いぞ。
問題は最初に教える言語がアセンブラというわけにはいかないところだが。
問題は最初に教える言語がアセンブラというわけにはいかないところだが。
14名無しのひみつ
2023/11/09(木) 14:54:02.12ID:NP1dsE0f (問題:間違いを見つけなさい。)
2の2乗を、2^2とする。
即ち2^2=2×2=4
3^2なら、3×3=9
4^2なら、4×4=16となる。
これを足し算で表すと、
2^2=2+2=4
3^2=3+3+3=9
4^2=4+4+4+4=16となる。
つまり2^2なら2を2個足し、3^2なら3を3個足し、4^2なら4を4個足す。
ならば一般化し、n^2とはn×nであり、nをn個足すということになる。
(ここで、n≠0とする。・・・条件@ )
即ちn^2=n+n+n+…+n(←nがn個足されてる。)
ではここで上式の、n^2=n+n+n+…+nを、A式と置き。
A式の左辺をnで微分すると、2nとなる。
同じくA式の右辺をnで微分すると、
1+1+1+…+1(←1がn個足されてる。)=nとなる。
まとめると、A式の両辺をnで微分した時の左辺=2n、右辺=n。
つまり2n=n
条件@よりn≠0だったので、上式の両辺をnで割ると
2=1
2の2乗を、2^2とする。
即ち2^2=2×2=4
3^2なら、3×3=9
4^2なら、4×4=16となる。
これを足し算で表すと、
2^2=2+2=4
3^2=3+3+3=9
4^2=4+4+4+4=16となる。
つまり2^2なら2を2個足し、3^2なら3を3個足し、4^2なら4を4個足す。
ならば一般化し、n^2とはn×nであり、nをn個足すということになる。
(ここで、n≠0とする。・・・条件@ )
即ちn^2=n+n+n+…+n(←nがn個足されてる。)
ではここで上式の、n^2=n+n+n+…+nを、A式と置き。
A式の左辺をnで微分すると、2nとなる。
同じくA式の右辺をnで微分すると、
1+1+1+…+1(←1がn個足されてる。)=nとなる。
まとめると、A式の両辺をnで微分した時の左辺=2n、右辺=n。
つまり2n=n
条件@よりn≠0だったので、上式の両辺をnで割ると
2=1
15名無しのひみつ
2023/11/09(木) 15:08:47.44ID:lDZsfeCk 数学もプログラミング言語もそれぞれのルールがあって
=の役割が違うだけ
関数だって数学的な関数とは違う
=の役割が違うだけ
関数だって数学的な関数とは違う
16名無しのひみつ
2023/11/09(木) 15:12:16.46ID:lDZsfeCk17名無しのひみつ
2023/11/09(木) 15:27:30.73ID:9+frA986 x++ ならわかるんじゃね
大学生さんなんだし
大学生さんなんだし
18名無しのひみつ
2023/11/09(木) 15:34:57.30ID:xSwzDD+H x++にしろx=x+1にしろ何の説明なしに解れと言う方が無理
出題者の心の中を読む超能力テストかよと
出題者の心の中を読む超能力テストかよと
19名無しのひみつ
2023/11/09(木) 15:54:21.49ID:2DaiNKCZ20名無しのひみつ
2023/11/09(木) 16:14:45.28ID:2DaiNKCZ >>19 の補足。
同じくA式の右辺をnで微分すると、
1+1+1+…+1(←1がn個足されてる。)=nとなる。
ここが、n=1 の場合には、1が1個足されるのだから
n^2=n 両辺をn(=1)で割ると n=1
同じくA式の右辺をnで微分すると、
1+1+1+…+1(←1がn個足されてる。)=nとなる。
ここが、n=1 の場合には、1が1個足されるのだから
n^2=n 両辺をn(=1)で割ると n=1
21名無しのひみつ
2023/11/09(木) 16:16:04.97ID:4qYWEpZC >>16
さらにデジタル回路論もやっておいた方が良い。学生時代は若くて頭が柔らかいから半年もやれば回路図がスラスラ読めるようになる。
さらにデジタル回路論もやっておいた方が良い。学生時代は若くて頭が柔らかいから半年もやれば回路図がスラスラ読めるようになる。
23名無しのひみつ
2023/11/09(木) 18:32:35.22ID:1Mg1JPQi プログラミング未経験者がプログラム中のx=x+1を数式だと思ってしまうのは仕方ないでしょ
24名無しのひみつ
2023/11/09(木) 18:37:23.86ID:jxX546vZ 根拠はないがアセンブラ、アセンブリ、アセンブルの違いもわからん奴が
雰囲気だけでアセンブルと言ってそう
雰囲気だけでアセンブルと言ってそう
25名無しのひみつ
2023/11/09(木) 19:05:31.96ID:zmpPPtzB 普通に論理的思考が出来るならchatgptにコメント付きでコード書いて貰えば演算子の意味なんかいちいち覚えんでもなんとかなりそう
26名無しのひみつ
2023/11/09(木) 19:08:13.94ID:UQ8BTH1R chatgptが作ったバグの改修はむずかしいよ
27名無しのひみつ
2023/11/09(木) 19:11:36.20ID:Ip2BuB03 「x=x+1」はそらプログラミング知らんヤツが
いきなり見ても理解できなくて当然だと思うが
数学的にはありえないもん
いきなり見ても理解できなくて当然だと思うが
数学的にはありえないもん
29名無しのひみつ
2023/11/09(木) 20:18:53.18ID:zw37vaFX >>21
verilog覚えるのも良いぞ
verilog覚えるのも良いぞ
30名無しのひみつ
2023/11/09(木) 20:32:50.34ID:U48jVYjT31名無しのひみつ
2023/11/10(金) 07:27:42.20ID:SyoawrmA 初学者がいきなりPythonから学ぶのはやめたほうが……
32名無しのひみつ
2023/11/10(金) 08:07:27.64ID:BstjwAsR 今は亡きハイパートークだとadd 1 to x又はput x+1 into x
33名無しのひみつ
2023/11/10(金) 08:25:32.54ID:utTgl5k3 数学者でもε-δ論法を最初は理解できなかったというのは珍しくない
それと同じようなもんだろ
それと同じようなもんだろ
34名無しのひみつ
2023/11/10(金) 08:29:16.49ID:dMAV9hNc 代入を教えるのがそんなに難しいことなのか?
35名無しのひみつ
2023/11/10(金) 08:47:12.99ID:xXtcH8pg プログラミングの=は代入だからな
等価は==
等価は==
36名無しのひみつ
2023/11/10(金) 08:52:36.67ID:4slATY6A 数学的にはy=x+1と書くべきなんでしょうが
コンピューターの記憶容量は有限で
変数を使い回して節約する手法なのでしょう
特にレジスタは数える程、キャッシュも
メインメモリに比べたら少ない
コンピューターの記憶容量は有限で
変数を使い回して節約する手法なのでしょう
特にレジスタは数える程、キャッシュも
メインメモリに比べたら少ない
37名無しのひみつ
2023/11/10(金) 09:02:59.83ID:Zexq3dVt 笑わない数学面白いよなあ~
1+1=2の回を何べんも見返してるがいまだによくわからん
1+1=2の回を何べんも見返してるがいまだによくわからん
38名無しのひみつ
2023/11/10(金) 09:20:11.62ID:axqfmrxp 5 x=0
10 for y=1 to 100
20 x=x+1
30 next y
40 print “x=“;x
run
x=5050
10 for y=1 to 100
20 x=x+1
30 next y
40 print “x=“;x
run
x=5050
39名無しのひみつ
2023/11/10(金) 09:30:54.10ID:zeQqVsCh >>36
違う
数学じゃない
数学ならxとか文字は特定の数字自体を表すんだろーが
プログラミングはxという入れ物を指してるだけで
中身がどうなろうとも入れ物自体は変わらない
これはレジスタというハード的な入れ物を指してたのがソフト的にメモリを差しても同じ発想だからだ
だから入れ物(お皿でも受け皿でもいいが)そのxという入れ物の中身に1加えるだけだ
x+=1
でもいいんだよ そういう書き方もある
入れ物xの中身に1たしてもxはxだからな
違う
数学じゃない
数学ならxとか文字は特定の数字自体を表すんだろーが
プログラミングはxという入れ物を指してるだけで
中身がどうなろうとも入れ物自体は変わらない
これはレジスタというハード的な入れ物を指してたのがソフト的にメモリを差しても同じ発想だからだ
だから入れ物(お皿でも受け皿でもいいが)そのxという入れ物の中身に1加えるだけだ
x+=1
でもいいんだよ そういう書き方もある
入れ物xの中身に1たしてもxはxだからな
40名無しのひみつ
2023/11/10(金) 09:37:39.22ID:zeQqVsCh いいか
プログラミングは数学とイコールじゃない
数学的な問題を解決するときは数学を使う時もあるくらいってなもんだ
奥底では数学的に動いてるといえるところもおおい
がー
そんなことは忘れろ
1番大切なのは
コンピュータで扱えるように定義をすることだ
定義がうまいやつらはコンピュータをうまく使えてる
人がいちいち動いて時と場合によって対応が違うような日本では定義があってなきもの
だからパッケージもうまく使えなけりゃ
プロトコルも合意できない
んで世界の標準化団体が作った決まりにひれ伏してしまう
ノーベル賞をありがたがってばかりで
日本国内の優秀な奴らは貶してばかりってのが日本
何も決められずそして諸外国に対してこれでやりましょうなんて説得なんて全くできない
プログラミングは数学とイコールじゃない
数学的な問題を解決するときは数学を使う時もあるくらいってなもんだ
奥底では数学的に動いてるといえるところもおおい
がー
そんなことは忘れろ
1番大切なのは
コンピュータで扱えるように定義をすることだ
定義がうまいやつらはコンピュータをうまく使えてる
人がいちいち動いて時と場合によって対応が違うような日本では定義があってなきもの
だからパッケージもうまく使えなけりゃ
プロトコルも合意できない
んで世界の標準化団体が作った決まりにひれ伏してしまう
ノーベル賞をありがたがってばかりで
日本国内の優秀な奴らは貶してばかりってのが日本
何も決められずそして諸外国に対してこれでやりましょうなんて説得なんて全くできない
41名無しのひみつ
2023/11/10(金) 09:39:32.39ID:zeQqVsCh42名無しのひみつ
2023/11/10(金) 09:43:06.74ID:zeQqVsCh 生成AIでも「文脈」を設定するのが最初にやること
どこに行っても敬語使って
生成AIにまで敬語とか丁寧語使うのがバカなの
敬語ってのは使う場所がわかってこそな
それと同じで
x=x+1
の表現の使われている場面を考えろよ
どこでも数学のあたまなのか?
そんなわけないだろ
>>1の話こそ作り話だ
どこに行っても敬語使って
生成AIにまで敬語とか丁寧語使うのがバカなの
敬語ってのは使う場所がわかってこそな
それと同じで
x=x+1
の表現の使われている場面を考えろよ
どこでも数学のあたまなのか?
そんなわけないだろ
>>1の話こそ作り話だ
43名無しのひみつ
2023/11/10(金) 09:54:11.59ID:zeQqVsCh そもそもxなんて文字を使うのが古典的すぎる
いまは
goulei
とか
saifu_no_nakami
とか
中身がわかるように具体的な名前を使うように最初からおしえろよ
昔はメモリ小さいから少ないバイト数だったが今はわかりやすさ優先だ
saifu_no_naka = saifu_no_naka + kyo_no_okozukai
だ
財布の
いまは
goulei
とか
saifu_no_nakami
とか
中身がわかるように具体的な名前を使うように最初からおしえろよ
昔はメモリ小さいから少ないバイト数だったが今はわかりやすさ優先だ
saifu_no_naka = saifu_no_naka + kyo_no_okozukai
だ
財布の
44名無しのひみつ
2023/11/10(金) 09:58:37.02ID:axqfmrxp ハニリイト
ok
ok
45名無しのひみつ
2023/11/10(金) 10:01:23.05ID:zeQqVsCh46名無しのひみつ
2023/11/10(金) 10:02:39.34ID:zeQqVsCh >>25
なりませんぜ
なりませんぜ
47名無しのひみつ
2023/11/10(金) 10:07:55.87ID:gU6s0kLd x <= x+1
みたいな言語をつくればいいんじゃねえの
変に数学っぽい書式なのが問題なんでしょ
みたいな言語をつくればいいんじゃねえの
変に数学っぽい書式なのが問題なんでしょ
48名無しのひみつ
2023/11/10(金) 10:12:44.87ID:zeQqVsCh 数学じゃねーからそんなの必要ないつーことでこれなんだなあ
そこだけ取り出して文句つけてるのが
この辺でよくいう切り取りな
前後左右プログラミングお作法なんだからそこだけ変えても意味ねーんだよ
そこだけ取り出して文句つけてるのが
この辺でよくいう切り取りな
前後左右プログラミングお作法なんだからそこだけ変えても意味ねーんだよ
49名無しのひみつ
2023/11/10(金) 10:13:30.46ID:o/PpbYDh50名無しのひみつ
2023/11/10(金) 10:17:00.80ID:zeQqVsCh そもそも言語違えば違うし
言語だけじゃプログラミングできないし
いろんな決まりごとをそのときそのときで使いこなすわけで
今覚えたやつも明日変わるかもしれない世の中だぜ
LangChainなんて繋ぎだからもーあっちこっち
そういう対応能力こそ必須だ
こんな話世界からバカにされるぜ
言語だけじゃプログラミングできないし
いろんな決まりごとをそのときそのときで使いこなすわけで
今覚えたやつも明日変わるかもしれない世の中だぜ
LangChainなんて繋ぎだからもーあっちこっち
そういう対応能力こそ必須だ
こんな話世界からバカにされるぜ
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 高市首相「憲法改正やらせてほしい」 自衛隊の明記に意欲 [少考さん★]
- 【障害】飲食店の「ノー」で入店断念…流動食の子、必死の頼みも届かず 外食は大切なチャンス、レトルトやミキサーの持ち込み認めて [nita★]
- 【日本政府】「2年間限定」食料品の消費税率ゼロ→元に戻す→全体の消費税を2%引き上げ合計12%にする案が浮上 ★7 [Hitzeschleier★]
- 探査船「ちきゅう」、レアアース泥の試掘成功、国産化へ前進 2028年3月までに採算性報告 ★2 [Hitzeschleier★]
- 日本バスケ協会がトム・ホーバス監督との契約終了を発表「代表チームのヘッドコーチとしての私の旅がここで終わりを迎えた」 [征夷大将軍★]
- 与党300議席超獲得か…自民単独で過半数大きく超える勢い 中道は半減の可能性で参政は10議席前後か【衆院選中盤情勢調査】|FNN ★2 [少考さん★]
- 維新の会「憲法9条削除すべき」高市早苗「9条改正します」 [961870172]
- 【悲報】 カルビー「じゃがビー」の値上げ、凄まじ過ぎる [303493227]
- 高市早苗のYouTube、不自然に再生され7400万再生 [884040186]
- 【実況】博衣こよりのえちえちnosh辛さレベル調査🧪★2
- 【笑】中道10議席予想wwwwwwwwwwwwwwwwwwwwwwwww [595118796]
- 【高市助けて】30歳超えてからの失恋、ガチでダメージがデカすぎて狂うwvw [369521721]
