dredison のすべての投稿

Scratchに写経は効く?

写経、いったい何のこと?

プログラミング経験のない人には、訳の分からない話ですが、
プログラミングでの写経とは、
人が書いたプログラム(コード)を、
一字一句真似て書く(キーボードを打つ)、
ということを意味しています。

プログラミング技術を習得するうえで
優れた人のコードを写経する作業は
学ぶところが多く、私も未だにやります。

キーボードで文字を打ち込む、というところが大事で、
コードに目を通しただけでは、記憶に残りにくく、
自分の血肉とも なりにくいんですね。
特に、 for や if などの制御文の構造が、
手を動かすと頭に入りやすく感じます。

人間の脳は、目から得た情報だけよりも、
五感を活用して得た情報の方が
記憶に残りやすい、とは昔から言われており、
私も受験勉強で文章とイメージを
組み合わせたりして覚えていました。
(昔から物覚えが悪く、
 ただ文字だけ見せられても
 なかなか覚えられませんでした。。)

写経に限らず自分自身のコーディングでも、
似たようなところだからと思って
コピー&ペーストで修正したところは
何をやったか忘れやすいです。

そうやって考えると、この写経、
Scratchでも、効果があるのだろうか?
ということを、ふと思いました。

見本をそのまま写す、という意味では
他のプログラミング言語と一緒ですが、
他がキーボードで文字を打ち込む作業であるのに対して
Scratchは、ブロックをドラッグ&ドロップするだけ!

教室を始めてしばらく試行錯誤していたとき
生徒にScratchで見本のプログラムを写経させると、
その場では説明を理解してくれても、
後日、自分で再現できない、
というケースが間間ありました。

実はScratchのようなブロック型ツールにおいては、
写経による学習効果が、他の言語より弱いかも、
と感じています。
写経の後でいろいろアレンジしてくれれば
いいのですが、特に学び始めは
出来ることが限られていることもあり
自分から積極的にアレンジしたい
という子は多くないです。

このような経緯もあり、「Dr.+エジソン」では、
Scratchの写経は基本的に、させていません。
初めに見本の動きを見せますが、
そのプログラムを見せる前には
必ず本人の考えを聞いて
仮説を持たせてからいろいろ試してもらい、
どうしても分からない状態になって初めて
ヒントを出したり、正解パターンを見せたりします。
理解が足りていないな、と思う生徒には
コピー&ペーストで済むところも
わざと教えずに同じプログラムを作らせたり
ということもします。

これは、言われたままに進ませるのではなく、
自分で何をやったのか、すると、どうなったのか、
ということを、しっかりと意識してもらいたいからです。

そうやって、人から与えられた言葉でなく
自分自身の経験として身につけた知識だから
本質的なところから深く理解してもらえる、
と考えています。
これはプログラミングに限らず
何か新しいことをやるときには役立つ考え方なので
ぜひ身につけてもらいたいです。

ちょっと言葉では理解しづらいと思いますが、
現在公開中の動画教材:走り回るネコを見て頂ければ
どんな感じで指導しているか
感じて頂けると思います。
(動画だけだと、対面授業よりも
 かったるい感じになってしまいますが。)

なお、当然ながら
キーボードで文字を打ち込むにしても、
内容を考えずにただ記号を打ち込むようでは、
上達は見込めませんね!

要は、
どれだけ考えながら手を動かしているか、
に尽きると思います。

夏休みにぴったりの作品公開

こんにちは、『Dr.+エジソン』の渡邊です。

いよいよ梅雨も明けそうで、夏休みを満喫できるようになりましたね。
この夏を全力で遊び、全力で学んでほしいと思います。

さて、教室もプライベートレッスンの形で続いておりますが、
その中で生徒の希望から新しい教材作品が生まれました。
その名も「夏休み課題チャレンジ・マシーン」。

あらかじめ、どの科目を何日間やるかを設定しておくと
毎日、「今日は算数をやろう!」などと
コンピュータが科目を選んでくれる作品です。
選んだとおりに進めていけば、期日内に課題が全て完成する、
というものです。
乱数を使っているので、どれが出るかは誰にも分からないところが
ワクワク感があっていいかな、と思います。
これを使って、やることやって楽しく夏休みを過ごしましょう!

この教材の完成作品を、下記サイトにて公開しました:
https://scratch.mit.edu/studios/24939533/

まずは動かしてみて、どんな感じの作品か試して見てください。
面白そうだな、と思ったら、
この見本の動きやプログラムを見ながら、
ぜひ自分で作ってみてくださいね。
と言っても、力をつけるためには、できるだけ見本は見ずに、
が原則です!

なんでここはこうなっているんだろう、と思うところは
自分が思うように変えて作ってみてください。
それがうまくいかなければ、なぜなのかを考えると
プログラミング思考が身に付いてきますよ!

動きはシンプルなものなので、どんどんアレンジして
自分だけの楽しい作品を作ってみてください!

なお、すみませんが
本作品は現在も有償で指導している教材のため、
使い方、作り方に関しての
メール、電話等での質問はご遠慮ください。
ファイルの開き方などは、書店に出回っている教本に
たいていは説明があります。

もちろん、作り方を指導してほしいというご希望がありましたら
家庭訪問型プライベートレッスンは1回でも受講できますので
ご連絡ください。
ただ見本を写すだけでなく、
プログラミングの考え方を織り交ぜながら
自分で考えることに重点をおいた指導をさせて頂きます。

では、充実した夏休みをお過ごしください。

寺子屋式プログラミング:テラプロ@mamacafe

気軽にプログラミングしてみたい子、集まれ!

対象:小学生、中学生

利用料金:1時間 1,000 円(税込)と、気軽にご参加頂けます。
※ エニシア有料会員は1時間 500 円(税込)となります

予約不要!

このG.W.に、プログラミング・デビューさせてみませんか?

最近は、Scratch などのプログラミング用テキストも、書店で数多く並ぶようになりました。

丁寧に解説してあるものも増え、興味のあるお子さんであれば、テキストを読みながら自力で進めることも十分に可能です。

Scratch の場合、テキストがなくとも、インターネット接続できれば、Scratch のチュートリアルで基本操作を学ぶこともできます。

でも最初の一歩は結構ハードルが高いので、それを乗り越えるお手伝いをさせて頂きます!

ここは自分から学ぶ力を養って頂くことを目的とするため、授業から始まるのではなく、ご持参頂いたテキストを各自で進め、分からないところの質問を受け付ける形でプログラミングを学ぶ場です。ただし全くの未経験者には、最低限の操作方法は指導します

経験者だけど、アドバイスがもらえなくて困っている、という子も歓迎します!

※ プライベートレッスンではありませんので、
・お子さんが自分で作成した複雑なプログラム、
・自分で説明ができないプログラム、
・整理されていないプログラム、
など対応に時間がかかると思われる相談内容に関しては、対応をお断りさせて頂く場合があります。

__________

開催日時:
・4/29(月)11-17時
・5/06(月)11-17時

※ 好評であれば、G.W.以降も開催を予定しています。

本教室は、基本的に入れ替え制(定時00分で区切り)です。
※ 混雑なければ、延長可

__________
持ち物:パソコン、テキスト

※ パソコンは、Windows-XP(インターネット接続する場合はWindows-7)か、それより新しいウインドウズPCが必要です。パソコンの状況によってはご利用いただけない可能性もあります。

※ ご家庭に持ち出せるパソコンがないなど、希望者にはパソコン貸出も行いますので、当日お申し込みください: 1台1,000-2,000円(台数限定)

※ テキストは、お子さんが自分で学んでみたい書籍等を、ご用意ください。 漢字の読み方など一部フォローはしますが、一人に付きっ切りの指導はできませんのでご了承ください。

※ 無線インターネット接続できるPCを持参頂ければ、テキストがなくとも、Scratch のチュートリアルを利用することもできます。

__________
使用ソフト:Scratch, python

※ パソコン持ち込みの場合、
  前もってソフトのインストールがされていることが望ましいです。

※ ソフトのインストールを希望される方には、
  無料でサポートします。
  (ただしPC不具合に関する後日のサポートはできません)

※ Scratch につきましては、Win-7以降の、
  無線インターネット接続できるパソコンであれば、
  ソフトをインストールしなくともご利用できます。
__________
定員:6名(定員になり次第、締め切り)

※ 事前予約できません。
  混雑時など、当日現地にてのみ予約受付します。(要・電話番号)

※ 開始時間5分前に受付します。
  予約されていてもその場にいなければキャンセル待ちの方を優先し、
  参加頂けないことがありますのでご注意ください。

__________
ご利用条件: 以下の条件に同意頂ける方のみ、参加頂けます。

1.持参したテキストが読めること
※ 読めない漢字を教えるなど、一部サポートはします。

2.周りのお子さんに迷惑をかけないこと
※ 大声で騒ぐなど、周りのお子さんに迷惑をかける行動をとり続け、当方の指示に従わないお子さんの場合、連絡して途中退場頂くことがあります。

3.教室風景を撮影し、ホームページ、SNSに掲載します。お子さんが参加されている写真を掲載できない方はご利用頂けません。

4.後のパソコンの不具合などお問合せ頂いてもアフターサポートはできません。ご了承下さい。

__________
場所: ママカフェ
〒467-0861 名古屋市瑞穂区二野町3番34号 ネクストステージ7F
※ 雁道交差点の、「茶源ホール」看板のビルの七階です

お手数ですが入館には、ママカフェの会員登録が必要です(無料)。

https://www.enicia.net/facility/mamacafe/
※ 駐車場あり(20台)

医師を目指すお子さま向けプログラミング講座・準備中

一期生募集は終了しました。
医師を目指すお子様向けプログラミング講座『プログラミング・ドクター』

今後の開催につきましては、お問合せ下さい。
~~~~~~~~~~~~~~~~~~~~

医師となるまでに学んでおくべき、データ解析や画像処理の基本を、医師の勉強が本格的に始まって忙しくなる前に、楽しくプログラミングで学んでおきませんか?

いままであった職業が、AIに取って代わられる、そんな話が数年前からニュースを賑わしてきました。

正確には、職業自体が奪われる、ということではなく、その仕事の中の、AIが得意とする内容はAIが代わって処理してくれるようになる、ということになると思いますが、職業によっては、やるべき仕事が大きく様変わりするはずです。

例えば医師。
医療分野では正確な情報が多くあるほど、診断、処置も適切に行えるようになります。ベテラン医師は長年の経験を積み重ねて名医となっていくわけですが、それでも一人の人間が経験できる情報には限度があります。自分ひとりの経験で足りない部分は、学会で情報交換したり、論文を読んだりするわけですが、論文も膨大な数が発行され続けており、全て網羅することは不可能です。そこで、診察、手術、画像情報などをデータベースとしてAIに解析させ、ある患者の問診情報、画像情報を入力すると、可能性のある病気を推定してくれる、そんな技術の開発が進められています。この技術が発達すれば、より適切な診断治療が行えるようになるはずです。

ただしAIも万能ではありません。経験となる入力データに誤りや偏りがあれば、間違った答えを出す可能性も十分にあります。
医師は、AIの答えを鵜呑みにするのではなく、その答えに問題がないか、データを読み取れる技能=データ解析技術を持つことで、より上手にAIを使いこなすことになるでしょう。そのためには、AIのもとであるコンピュータ・プログラムと、AIのエサとも言えるデータというものに対する理解を深めることが重要です。

ただ、医師を目指す人は受験勉強をクリアした後でも大学で猛勉強し、国家試験をパスする必要があります。そして社会に出ればさらに忙しく、上記のようなコンピュータの勉強をじっくりしている暇はどこにもありません。受験勉強で忙しくなる前に、気分転換の感覚でプログラミングを学び、統計データ処理や画像解析のバックグランドが身についていたら、本当にその知識が必要となったときも余裕をもってマスターしていけますよね。

そこで今回、将来医師を目指すお子さま向けに、個人レッスンの形でプログラミング講座をスタートします。
ただゲームを作るのではなく、AIを理解することを目的とし、医師として仕事をするときに役立つ分野、画像処理(コンピュータビジョン)とデータ解析、機械学習(AI)について、深く学んでいただきます。
プログラミング言語(Python)も大人が使う本格的なもので、内容も難しくなるため、対象は中学生以上となります。小学生高学年でも、プログラミングに強い興味を持たれるお子さまであれば、ご相談ください。

現在準備中ですが、興味のある方はご一報ください。優先的にご案内させていただきます。
また準備中のため、まだ内容に自由度があります。こんな内容を、こんな形でできないか、などのご相談もお待ちしております。

「お問い合わせ」より、お気軽に問い合わせください。
( ↑ この赤文字をクリックすると、問い合わせフォームが開きます)

ロボットプログラミング体験@ママカフェ(2019/3/3)

本日は新しい試みとして、ママカフェさん(名古屋市瑞穂区 二野町3番34号 ネクストステージ7F)(https://mamacafe.net/)にて、ロボットプログラミング体験を実施させて頂きました。ちょっと年齢が低めでしたが、一生懸命遊んでくれました! お母さんもプログラミング教育に関心があり、熱心に話を聞いて頂けました。

次回は、3/9(土)午後1-5時に実施します。幼児、小学生低学年のお子さんのいらっしゃる方は、ぜひ遊びに来てください!

こどもの個性に合わせた成長のために

当教室のテーマは、「自ら学び、考え、行動する子に」。

教室に来るすべての子供たちが、このサイクルを自分で回して、新しい世界を創り上げていく人間に成長していってもらいたい、そう考えています。

でも、この3つの要素をバランスよく備えた子など、滅多にいるものではありません。
たいていはどれかが強くてどれかは弱い。例えば、学ぶことは得意で、言われたことはどんどん吸収するのだけど、ちょっと間違えるともう何をしていいか分からない、教わったことからちょっと外れると頭が回らなくなる、そんな傾向を持つ子もいれば、自分でどんどん新しいものを生み出そうとするのだけれども、学ぶことが苦手で説明、指導を受けるのが好きじゃない、そんな傾向の強い子もいます。

それは何が良い、というわけではなく、全てこどもたちの個性です。そんな個性を認めながら、それに合わせて成長をサポートしていくことが、教室の役割と考えています。(ただ残念ながら現状では、極端すぎる子は指導の限界もあります。。)

そのような考えから、当教室の授業は、完成作品を観察することから始まります。じっくりと観察して、どうしたらプログラミングで再現できるかを考えてもらいます。

自分で進めるのが好きな子には最初は指導せず、自分が思うとおりに進めてもらい、詰まって動けなくなってしまったり、この方向で進むと修正が大きくなって子供のやる気が続かなくなると思われるときには、ガイドしています。といっても指導者がそのまま答えや修正方向を指示してしまうと、生徒は意味も分からず正解に進んでしまい、自ら考えることになりません。生徒には少し困ってもらうことで、実際に問題があってこのままではうまくいかないということを理解してもらったうえで、指導者が遠回しにヒントを出すことで、できるだけ生徒が自力で解決できるように指導しています。

学ぶのが得意な子には、少しづつヒントを出し、出来るだけ自分で解決策を見出すプロセスを重視しています。吸収力の高い子が陥りがちな、上っ面の理解に終わらないよう、わざと間違ったやり方に誘導して失敗させたりすることもあります。一見、遠回りのように見えますが、自分ひとりの力でプログラミングができるようになるためには落とし穴がいくつもあり、それを早く体験させることによって自力でプログラミングできる力を養っています。プログラミングに限らず、「教わることを鵜呑みにせず、物事の本質を理解しようとする」とはどういうものか、ということを学んでもらいたいと考えています。

このように、生徒一人一人の個性に合わせた指導をするため、教材は当教室でオリジナルに開発した動画を使用しています。動画と言っても、ただ指示通りに作業すれば完成する、という内容ではなく、頻繁に「問い」が入り、それを解決しながら進めていく形となっていますので、自分で考えなければ先に進めません。授業内容と生徒の状況にもよりますが、基本的な説明は動画に任せ、指導者は生徒の状態を見ながら、生徒が自力で解決策を見出していくよう、その都度最適と思われるガイドをします。

このような体制で、様々な個性を持つこどもたち全てに、「自ら学び、考え、行動する子に」なってもらえるよう、教育を進めています。

意外とシンプルなAI?

現在、不定期ですが大人向けにAI(人工知能)、特にディープラーニング、ニューラルネットワーク(NN)を題材としたプログラミング授業を進めています。

昨日の授業は、手書き文字(0-9)認識用の2層NNの学習機能についてでしたが、動かした結果を見て「こんなに簡単なプログラムで、コンピュータが学習できちゃうんですか?」という質問が出ました。
実際にソースコードを読んだうえで動かし、コンピュータが賢くなっていく結果が出てくると、このように感じるのも無理はないと思います。まだ誤差逆伝播法に入っていませんが、ディープラーニング、NNの本質的な理屈の部分は、これまでの授業で理解して頂いている状態です。
Pythonだと行列計算がシンプルな形で記述できるので、ディープラーニング、NN専用のライブラリを利用しなくても、本質的な部分だけなら意外とすっきりした形で表現できます。(実利用となると話は別ですが)ディープラーニング、NNも本質的なところはこんなにシンプルなんだ、ということが理解してもらえて良かったと思います。

AIってこんなものなんだ、と感じてもらえる人を、老若男女問わず、もっと増やしたいですね。

大人向け教室も展開中

ここ3ヶ月ほど、大人向けにPython入門~ディープラーニング講義を進めています。写真の書籍をベースにしていますが、やはりライブラリに極力頼らずにコードをたどっていくと曖昧さがなく、納得感があります。良書ですので興味ある方はぜひ!(一部コードに誤植があるのでソースファイルをDLして眺めるのがおススメです)

ちょっと一人で読むのは大変、、という方はぜひご相談を! 大人向け教室も展開中です。詳細は、下記リンクをご参照ください:
大人向けAI/プログラミング教室について
大人のためのプログラミング講座・募集開始!

目標は、子供たちにディープラーニングのエッセンスだけでも伝えたいところ。。

プログラミング学習=地雷迷路の脱出ゲーム?

いよいよ8月になりました。夏も真っ盛りですね!

プログラミング、特にScratchのようなビジュアル開発環境の場合、言われた通りに作業をしていけば、何も考えなくても結構複雑なゲームなりができてしまいます。学んだことをどれだけ自分の力に変えられるか、は本人のやる気と個性、指導方法に大きく影響されます。

ふと、プログラミング学習って、地雷の埋まった迷路を脱出するゲームに似ているな、と思いました。先生や教科書の指示のまま作業を進めれば、何事もなくゴールにたどりつけます。もう一回やらせてみて全く再現できない、というのも課題がありますが、正解ルートだけ覚えてしまって満足してしまうのも、問題です。そういう子は、少し新しい形に変えると、対応できなくなるんですね。
一方で、先生(本)はこう言っているけど、こうしたらどうなるんだろう、とあえて脇道にそれる子がいます。そういう子は、正解コースを学ぶのではなく、こういうことをするとこんな問題が発生する、といった地雷地図を手に入れることになります。失敗パターンが頭の中で整理されていくので、学んだことを深く理解し、どんどん応用、発展させることができるようになります。プログラミングはモノづくりと比べて、学習中に間違ったことをしても損をするわけではありません。どんどん、間違ってもらいたいと思います。

当教室では、「自ら学び、考え、行動する」子を育てるため、できるだけ自分で考えないと先に進めない形の指導をしています。例えば、わざと間違った方向に進むようにして、問題を起こさせ、なぜそうなるのか、どうすればいいのか、などを考えてもらうようにしています。ただ、勘のいい子だとこちらの思惑を感じ取って、どうして意地悪なことをするのか、すぐに正解を教えてくれればいいのに、と思ってしまう子もいるようですね。
意地悪な先生と思われても構いません。誰も正解を知らない課題が山積みの21世紀、書いてあること、言われたことを鵜呑みにせず、自分で考え新しい未来を切り開く力を身につけていってもらいたいと思います。

お母さんもプログラミング!

大人だって、プログラミングを体験したい!

わが子に教えようと思い、子供向けプログラミングの書籍を買ってみたけれど、自分でも意味が分からないから、書いてある通りに組み立てさせるだけで終わってしまっている・・・

もしわが子にプログラミングの初歩を教えられたら、楽しそう!

先日、大人のためのプログラミング講座のご案内をさせて頂きました:
https://wp.me/p8FziI-ge

この一環として、「プログラミング未経験のお母さん向け」教室を開講します。
・授業時間:50分間
・プログラミング環境:子供向けソフトのScratch
・内容:ブロックの使い方からプログラミングの基本
      (逐次処理・繰り返し・条件分岐)

小学生向けよりも少し理論的に、でも分かりやすく丁寧に解説します。

授業日等の詳細につきましては、下記リンクをご参照ください:
https://wp.me/p8FziI-ge

実際にパソコンを触りながらの実習形式で、1回のみの体験でも、プログラミングの基本が学べます! 子供はともかく、プログラミングの何が楽しいのか知ってみたい、という方にもおススメです。
3回程度受講して頂くと、計算や漢字の読み方、3択問題といったクイズ・ゲームが作れるような題材を用意しています。 近いうちに子供と一緒にプログラミングで遊んでみたいな、という方はぜひ一度、お問い合わせください。

通常1回:¥5,000(税抜き)ですが、本教室初回に限り、¥3,000(税抜き)とさせて頂きます。
※ 小学生のお子さんをお持ちでない方でも受講できます
※ 初回はご家族やご友人と一緒に来られても割引はありませんが、
  それでもグループでの受講料金よりお得です!

すでに6/11、園児のお母さんに授業を実施させて頂いておりますが、授業後、「プログラミングって文字と数字だらけで訳が分からないもの、と思っていたけれど、今日の授業でプログラミングってこんなものなんだ、というイメージが得られた。画面のキャラクターが動くので楽しいし、自分が何をやっているのかが理解しやすかった」とのコメントを頂きました。

「お問い合わせ」より下記内容をご記入の上、お気軽に問い合わせください。
( ↑ この赤文字をクリックすると、問い合わせフォームが開きます)
・件名:「お母さん向けプログラミング」とご記入ください
・氏名
・メールアドレス
・希望日時(複数提示してください)
・その他、疑問点、相談(別の曜日、時間に受けたい、など)

ご連絡、お待ちしております!