ブログ

ぼくのかんがえたさいきょうのプログラミングのはじめかた(げきやす)

そこのきみーーーーーーーー!!!!!

ガチで

プログラミング

やりたいかー??????!!!!!!!!!

 

そう、きみだ。

君は僕の小学生の時みたいに、なんとなくプログラミングという言葉の響きに憧れて

「プログラミングやりたいっ!!!!!!」

ってうずうずしてる奴かい?

それならぜびこの文章を読んでくれ!

僕も一切手加減無しで全力で書いたから思いが伝わると嬉しい!

大体の流れはこんな感じだ

 

【プログラミング教材は高い】

【最安でプログラミングを始める】

【おとうさん、おかあさんへ】

 

 

【プログラミング教材は高い】

紹介が遅れた、自分はMakershipという会社ではたらく、”天翔”だ。よろしく

これから色々語っていきたいと思う

はっきり言わせてもらおう、君たちがいろいろ探して見つけたであろうプログラミング教材は高い

しかもできることは少ない。すぐに飽きるかもしれない

こういう子供だましの商品はおとうさん、おかあさんに買ってもらっても、ちょろっと遊んでおもちゃ箱の隅行きだ

全く楽しめないわけではない、十分子供用に考えられていてすごいと思う

しかしだ

これを読んでくれているのは子供の時の僕みたいな人だ

大人がわざわざ子供っぽく作ったおもちゃで遊びたいか?

君はそんなおもちゃで満足するようなちっぽけな人間なのか?

いや、ちがうだろう!

君はそんなちっぽけな人間ではないはずだ

おそらく僕が君たちと同じ、小学生くらいのときに触ったとしても満足しなかっただろう

そこで僕は君たちに紹介したい

ガチのプログラミングの世界を!

 

ここで少しだけ僕の子供のときのエピソードを語らせてくれ

僕がプログラミングに興味を持ったきっかけは本屋さんだ

そこに置いてあったのは

大人の科学 4ビットマイコン」

 

いや〜、ガチだろ!マジだろ!

なんたって大人だからな!

このときの僕は、本の紹介にあるプログラミングという文字を見て「なんかスゴそう!」

という気持ちだけで親にねだった

普段ねだるようなことは全然なかったがこれはどうしても欲しかった

そしてとうとう親も折れて買ってくれた

これがプログラミングの入り口だった

手にした後で、これはプログラミングというものを使いアイデアを形に出来るものだということが分かった

そして分からないなりにも自分でプログラムを作って動かせたときには、今までに体験したことのない喜びを感じた

そう、ガチなものは全く新しい価値観を与えてくれる

プログラミングおもちゃだと、おそらくただおもちゃの延長線上で遊んでいただけだろう

だから僕は君たちにガチなものを教えたい

そしてその喜びを体験してもらいたい

そのために自分はガチで調査してプログラミングを始める方法をまとめた

ぜひ見ていってほしい

 

【最安でプログラミングを始める】

最初の方で言ったようにプログラミング教材は高い

言うなれば3dsとかスイッチとかと同じくらいの値段だ

そんな誕生日にもらえるような金額の物を親にねだったとしても買ってもらえるはずがない

しかもすぐ飽きてしまったら色々かわいそうだ

そこで自分はなるべく安くガチのプログラミングを始める方法を紹介しようと思う

…とその前になぜプログラミングを学ぶ必要があるのかということを教えておこう

もちろん君がプログラミングやりたい!という気持ちを持っているのは知っている

しかし、プログラミング自体は手段であって目的ではないということを知ってほしい

そうプログラミングの目的はアイデアを形にすることである

そのためにプログラミングを学ぶのである

そしてプログラミング的考え方は色々な場面で役に立つ

プログラミング的考え方とは

・目的を達成するために逆算して道筋を考える方法

である

これは生きる上でかなり重要な考え方だ

スポーツだと、次の試合に勝つためにどういった練習をしていけばいいのか

会話だと、納得いってもらうためにどう話したらいいのか

といったことに使われる

とりあえずこの話をまとめると

 

[なぜプログラミングを学ぶ必要があるのか]

1.アイデアを形にするため

2.プログラミング的思考を身につけるため

 

こんな感じだ

これを知っておくことでプログラミングのやる気や上達速度も上がるはずだ

ではおまたせ、話を戻そう

下になるべく安くプログラミングを始めるおすすめの方法をまとめておいた

ねだったり、貯金やお年玉で買える範囲のものを選んだのでよろしく(お年玉はこういうものに使うとすごくいいぞ!)

 

<1.プチコン>

<2.nintendo labo>

<3.minecraft>

<4.ZK-80>

<5.ORANGE-4>

<6.中古のノートパソコンを買う>

<7.microbit>

<8.raspberrypi>

<9.安いノートパソコンを買う>

<10.M5Stack>

<11.Arduboy>

 

 

<1.プチコン>500円~

君は3DS、もしくは2DSを持っているかな?だったらプチコンがかなりおすすめだ!!

プチコンとは何か、詳しくはホームページを見てほしいと言いたいところだが

http://smilebasic.com/

簡単に説明すると

・BASICというプログラミング言語を使う

・いろいろな素材が付属

・3DS、2DSを持っていれば500円で始められるという安さ

という特徴がある

 

それぞれ説明すると、BASICというプログラミング言語は非常にシンプルなプログラミング言語だ

最近の言語みたいに何でもかんでも備えているというわけではないが、それゆえ“小さな構成要素から大きなものを構成する”というプログラミングにおいてかなり重要となる考え方を育成できる

~以下、別に読まなくてもいい説明~

たとえば足し算しかできないマシンがあったとしよう

このマシンが掛け算をできるようにするにはどうすればいいだろうか

答えはその回数分数値を足せばいい

2×3なら2を3回足すといった感じだ

これが“小さな構成要素から大きなものを構成する”ということの1例だ

また、これは前に述べた“目的を達成するために逆算して道筋を考える方法”だと言うこともできる

今回の例でいうと

掛け算をしたい!→足し算しかできない!→足し算を複数回やって掛け算を再現しよう!

こんな感じだ

逆に、“目的を達成するために逆算して道筋を考える方法”“小さな構成要素から大きなものを構成する”という例としては、

難しい数学の問題を解く場合、その過程は意外にも基本的なことの積み重ねである

といった感じだろうか

そして、実はプログラミングというものは<順次・分岐・反復>という3つの構成要素で全て書き表せるということが数学的に証明されている

なので最初のうちはどうやってプログラムするかつまづいたときには(BASICに備えられている命令)+(順次・分岐・反復)でプログラムを作成するということを意識するといいかもしれない

~~~~~~~~~~~~~

 

次にいろいろな素材が付属だということだが、これ大事

ゲームを作ったとしても、自分の下手くそな絵だとやる気がなくなってしまったり、そもそも絵を書くのに時間を取られすぎてプログラミングが進まなかったりする

なのでいろいろなキャラクターとかが、元から入っているというのはモチベーション維持のためにも非常に重要だ

 

最後に500円で始められるという安さだが、低価格で始められるというのはすごくいいと思う

しかし3DS、2DSを持っていないとそれを買う代金も含まれてしまうので、それなら後述するノートPCを買うという選択肢も入れてほしい

 

<2.Nintendo Labo>7000円~

今どきはむしろ3DSよりswitchなのかもしれない

ということでNintendo Laboという選択肢もありだ

どうやら「Toy-Conガレージ」というモードがあり、自分で自由に作品が作れるみたいだ

https://www.nintendo.co.jp/labo/invention/index.html

 

<3.Minecraft>3000円~

実はMinecraftにはレッドストーン回路というものがあり、プログラミングのようなものができる

けど、他の要素も楽しすぎるからプログラミングそっちのけにならないように気をつけろっ!

 

<4.ZK-80>3500円

いや、しかしこれらはゲーム機を使うからお母さんから「ゲームばっかりしとらんと!」って怒られることを自分は知っている!

そこで自分はついに見つけた!

それがZK-80だっ

http://www.picosoft.co.jp/ZK-80/index.html

https://store.shopping.yahoo.co.jp/orangepicoshop/pico-b-001.html?sc_i=shp_pc_search_itemlist_shsrg_title

これは大人の科学 4ビットマイコンみたいに単体で動作するのでお母さんからうるさく言われる心配がない

子供の時の自分みたいに一週間で1時間しかゲームをさせてもらえないとかいう意味わからんルールがある人におすすめだ!!

 

<5.ORANGE-4>2500円

ZK-80について調べていたら同じ会社がORANGE-4という商品を出していた

http://www.picosoft.co.jp/ORANGE-4/

https://store.shopping.yahoo.co.jp/orangepicoshop/pico-k-004.html

なんとこれ、大人の科学 4ビットマイコンと互換があるマシンらしい!!

大人の科学 4ビットマイコンは廃盤になってしまってたので嬉しい!

これはZK-80と比べて7セグが1つしかないが想像力次第で色々な事ができるし、安いのでぜひ買ってみてほしい!

 

<6.中古のノ ートパソコンを買う>5000円~

1.でプチコンを勧めたが、3DSを持っていない人は3DSを購入することになってしまうが、正直なところ3DSを購入するお金で中古のノートパソコンなら買えてしまうのである

自分自身メルカリで中古のノートパソコンを買ったことがあるが、5000円で入手することができた

プログラミングはそこまで性能が必要に成るわけではないので10万円とかするノートパソコンでなくてもok

誕生日におねだりするとか、「この5000円が将来1000万円になるから投資だと思って買ってください」とか説得して、なんとか入手しよう!

一旦入手してしまえば、プログラミング言語は選び放題だ!!

初心者向けプログラミング言語などを調べて初めてみるといいかもしれない

というかパソコンが家にあったら使わせてもらうんだ!!

 

<7.micro:bit>3000円~

いや、そもそもだ

そもそもこのサイトを見ることができているということはパソコン、もしくはスマホを持っている可能性が高い

そこでだ、こういったものを紹介しよう!

その名も”micro:bit”だ!

https://microbit.org/ja/

これは自分も気になっているんだが、どうやらパソコンやスマホでプログラミング可能で、micro:bitに付いているLEDや出力端子が制御できるそうだ

学習や教育用に開発されたとあって、価格なども含めてしっかり考えられていると思う

ソフトウェアだけじゃなくて、ハードウェアについても学べそうなのが良さげだ

 

<8.Raspberry Pi>5000円+必要なものの金額

これが一番楽しいといっちゃ楽しいかもしれない

Raspberry Piは小さなパソコンなんだけど、OSのインストールからプログラミング環境の構築まで実に様々なことが学べる

さっき中古のノートパソコンを買う方法を紹介したけど、中古のノートパソコンは色々欠陥があることも多い

Raspberry Piは新品で購入しても5000円~くらいで入手できるので、これにmicro sdカードとキーボードとテレビもしくはモニターがあればプログラミングが始められる

色々揃える物はあるがハードウェアと絡めていろいろなこともできるし、ケースやキーボードを選ぶ楽しみもある

正直すごくおすすめである

 

<9.安いノートパソコンを買う>30000円~

実は安い価格帯のノートパソコンもあって、3万円くらいあれば購入することができる

「ノートパソコン 安い」とかで調べれば出てくると思うのでRaspberry Pi買ってもモニター置く場所が無かったり、お金に余裕があれば購入を検討してもいいと思う

こんな感じで新品でも安い物がある

 

<10.M5Stack>5000円~

最近、最高に”キてる”ハードウェアを紹介しよう

その名も”M5Stack”だ!!

この約5cm×5cmの小さなハードウェアに様々な機能が盛り込まれている

ボタンが元から備え付けられているので簡単に入力信号を送れるし、液晶が付いているのでグラフィカルなプログラムも作成可能だ

しかし、これ自体でプログラミングができるわけではなく、micro:bitと同じようにプログラムを書き込むための機械が必要だ

だが、M5Stackはmicro:bitと違って書き込みにパソコンが必須というのが難点だ

一応M5Cloudというブラウザでスマホでもプログラミングができる開発環境があるが、M5Stack自体に最初にM5Cloudと連携するためのファームウェアをパソコンを使って書き込む必要がある

だからパソコンが必須なためなるべく安く始めたいという趣旨とは少し外れるが、非常に魅力的なハードウェアなので紹介させてもらった

これはプログラミングを書くための機械というより、PlayStation 4やSwitchのようなプログラムを書いて動作させるための機械というイメージだ

もし”プログラムをパソコンの中だけでなく、小さな機械で動作させてみたい!!”って思ったなら買ってみてもいいかもしれない

できることは色々あるのだが、一例として以前作成したこれを紹介しておこう

M5Stack Mini Arcade【前半】

M5Stack Mini Arcade【後半】

このようにM5Stackに何かを絡めて形にすることができる

 

<11.Arduboy>6000円~

中には“もっと本格的にゲーム開発っぽいことやってみたーい!!”って人がいるかもしれない

確かに、いくらパソコンの中でゲームが作れると言ってもパソコンの中だけで動かすというのは、どうも味気ない

かといって個人がPlayStation 4やSwitchでゲーム開発ができるわけではない

そこでおすすめしたいのが”Arduboy”だ

これは言わば、小さなゲーム機だ

この小さなゲーム機は世界中の人が作ったゲームをインストールして楽しむことができるし、逆に自分がゲームを作って公開して世界中の人を楽しませることができる、そんなハードだ

先述のM5Stackより、よりゲーム開発に特化したハードウェアになっている

“ゲーム機を使ったゲーム開発をやってみたい”っていう君にはぜひともおすすめしたい!

 

【おとうさん、おかあさんへ】

この記事はプログラミングを始めたいお子さんをターゲットとして書いた記事です。

この記事を見て「プログラミングを子供に学ばせたい!」と思ってくださった熱心な親御さんもいらっしゃるかと思います。

しかし、プログラミングに興味のないお子さんに“ぜっっっっっったいに”買い与えてはいけません。

子供というのは自身の自主性というものに強く突き動かさせます

ですので親から子に与えて学習させよう、というスタンスだと拒絶反応を示して中々思うようにいかなかったりします。

本来興味を持つものでさえも興味が無くなったりします。

例えば本とかです。

自分がいいなと思った本は子供に勧めたくなるという気持ちはすごく分かります。

しかし親からすすめられた時点でその本は子供にとって自分が選んだものではなくなり読む気が無くなったりします。

それくらい子供は自身の自主性というものを大切にします。

ですので絶対にただ買い与えるということはしないでください

今後プログラミングをやりたくない体になります

では、どうすればいいのか

簡単です

自分たちはただその世界を見せてあげるだけです。

それ以上のことはしてはいけません

子供は知っている世界が狭いです

それゆえ選択肢も少なく間違った方向に進むことも多いです

ですので親御さんはその選択肢を増やしてあげてください

そして選ばせてあげてください、子供に。

そうすることで自然と自主的に行動するようになります

では、今回プログラミングに興味をもってもらうためにはどうしたらいいのか

一つのアイデアとしては「自分がやっている姿を見せる」とかですかね

実際に上で紹介したようなプログラミング教材を使ってみて、作ったゲームをドヤ顔で遊ばせれば、親から子に与えるというスタンスを取らずに自然に選択肢を増やすことができます

もし、これで

「やってみたい!」

ってならなかったら

 

①継続的にやっている姿を見せる

②成長した頃に見せる

③一緒にやってみる

 

などといった選択肢になるかと思います

 

①の継続的にやっている姿を見せるというのは、最初興味を持っていなくても長期間プログラミングしている姿を見せることでプログラミングが一時的な流行り廃りのものではなくて本当に面白いものなのかなと気を引くことができます

 

②成長した頃に見せるというのは、人は成長過程で価値観がコロコロ変わるものですから今興味なくても後々興味を持つかもしれませんので待ってみるというのもありです

 

③一緒にやってみるというスタンスもありです。一人では中々続かないことでも誰かと一緒にやることでちょっとした連帯感も生まれ、長続きするというのはよく聞く話です

プログラミングには子供にとって難しい概念が出てきたりします

親御さんはそういった概念の理解のサポートができますし、逆に子供が作る自由な発想の作品で刺激を受けることができ、お互いにwin-winです

 

もし子供にプログラミングを学ばせたい方はこういったスタンスで頑張ってみてはいかがでしょうか

 

 

以上がプログラミングを始めるための色々な方法です

もしこの記事が小学生の時の自分のような子供に届いたら嬉しいです

プログラミングの道は長いですが頑張っていきましょう

すばらしいプログラマになることを願っています。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください