個別指導塾、学習塾のヒーローズ。植田(名古屋市天白区)、赤池(日進市)の口コミで評判!成績が上がる勉強方法が身につく!振替、自習も便利!
// 条件1に該当しない場合の処理

JavaScript

高校生プログラミング「情報1」の教科書を徹底比較

情報1の教科書を並べた写真

塾長です。

今年の高校1年生から教科書と指導要領が新しくなりました。
その目玉の1つが「情報1」です。

情報1とは

端的に言うと、こんな教科です。

  • 必須科目です。
  • プログラミングを含んでいます。
  • 大学入学共通テストの受験科目です。
  • 情報処理について学びます。
  • 問題解決やプレゼンの手法も学びます。

実はこの教科書、ビジネスマンからも「欲しい」と話題なんです・・・

2022年11月9日に試作問題が発表されています。
出題傾向について知りたい方は、それをご覧いただくか、以下のブログYouTubeをご参照くださいませ。

【大学入試】情報1の試作問題2022を超解説

社会人も欲しがる教科書だった

もしも内容がコンピューターの仕組みや情報処理だけだったら、ビジネスマンの間でここまでパズらなかったでしょう。

この情報1の教科書は、めっちゃ実用的なんです。
読んでためになるだけでなく、仕事のスキル向上も期待できそうです。

大企業の新人研修みたいな内容

と言えば、分かりやすいでしょうか。
例えば「〇〇が問題だ」と言うときの「問題」の定義もしっかり載ってます。

「問題」=「理想と現実のギャップ」

この定義がいかに重大か。

「うん、めっちゃ大事だよねぇ。」

などと実感したフリをして、意識の高さをアピールするのがビジネスマンのたしなみというものです。
それが、学校の授業でも重視される時代になりましたよ。

さらに「ブレーンストーミング」や「KJ法」、「ペルソナ分析」やプレゼンテーション手法など、およそビジネスマンが体得したいものが載っています。これ読んだら意識の高い会話が得意になりそうです。

それだけ実用的な内容で、まさに「今日から使える」的な内容に仕上がっています。

もちろんプログラミングについても一通り載っています。

事前調査

情報1の教科書の比較について、興味深いサイトがあったので、事前に読んでみました。
こちらの2つのサイトがおすすめです。

  1. 「情報Ⅰ」の教科書とプログラミング言語に関するアンケート結果Monaca Education 2021/10/7)
  2. 情報Iの教科書におけるプログラミング分野の比較と分析河合塾 わくわく★キャッチ! 愛知県立小牧高校 井手広康先生)

上の1から、実教出版や東京都書の教科書に人気がありそうだと分かりました。

また2から、実践的でレベルの高い教科書は実教出版と日本文教出版だと分かりました。
数研出版は1冊の中で多くのプログラミング言語を紹介していることから、個人的に興味が湧きました。

実物を買って読んでみたくなりました。

本屋さんへGO!

新しくできた教科書であるため、3月までは入手が困難でした。高校への配布が優先ですからね。
4月になって購入しやすくなり、本屋さんでも在庫がそろってきました。
そこで、さっそく買いに行って来ました。

名古屋で教科書を買おうと思ったら、正文館本店ですよね。

名古屋市東片端町の通りの写真

実物を見て買いたいときは、リアルな本屋さんに限ります。こんな本屋さんが家の近くにあったら幸せでしょうね。

事前調査で興味のあった実教出版、日本文教出版、東京書籍の教科書は在庫がありました。
しかし数研出版のはありませんでした。

比較してみた!

ということで、この4冊を買ってきました。
それらを読んだ塾長の感想をまとめると・・・こうです!

比較表(あくまでも塾長の主観)

出版社名
教科書名
教科書コード
実教出版
最新情報1
情Ⅰ705
実教出版
高校情報1 Python
情Ⅰ703
日本文教出版
情報1
情Ⅰ710
東京書籍
-新編-情報1
情Ⅰ701
主なプログラミング言語 VBA Python Python
JavaScript (*2)
Python
Scratch3.0
問題解決の概念
問題解決の手法
モデル化の概念
モデル化の手法 ×
シミュレーション技法 ×
アルゴリズムと
プログラミングの基本
プログラムの設計手法 × × ×
オブジェクト指向 × × ×
統計や検定の技法
文章の読みやすさ
図解の分かりやすさ
資料ページの充実
総合点 (*1) 20

教科書の王道

23

実践的で技術者志向

20

ジェネラリスト志向

17

教養を深める用語集

(*1) ◎:3点、〇:2点、△:1点、×:0点
(*2) JavaScript の説明は3ページ程度です

 

全体的によかったところ

どの教科書も共通してよかった点は次の通りです。

  • 目次が見やすく、タイトルの意味が明確
  • プログラミングの説明が丁寧
    どの教科書もフローチャートを併記し、なおかつ1行1行の意味も載せてありました。
  • 全ページがカラー印刷で、とても図表が豊富
  • メインで取り扱わないプログラミング言語についても少し言及
  • 教科書のページ番号を10進数と2進数で併記

 

教科書ごとの感想

今回は教科書ごとに、とても個性を感じました。同じ出版社でもタイトルが変わると雰囲気が変わりました。

実教出版「最新情報1」

言葉の定義や使い方がとても丁寧で、教科書の王道という感じでした。
網羅度が高く、難易度も適切です。

文章と図表のバランスが良く、とても読みやすく仕上がっていました。
実教出版さんは、情報処理資格の書籍を多く取り扱っているだけに流石です。手慣れている感じがしました。

プログラミングは少し物足りなさを感じました。

実教出版「情報1 Python」

タイトルに「Python」と冠しているだけのことはあります。4冊の中でもっともプログラミングを専門的に学べる内容でした。

ただし問題解決や情報デザインについては、網羅はしているものの記述があっさり。他の教科書よりも内容が薄く感じました。
その代わり、モデル化やデータ解析、シミュレーション、ソフトウェア設計については肉厚でした。
タイトルのコンセプトどおり、章構成に強弱がついています。

特に「オブジェクト指向」や「データの分布と検定」についてしっかり載せていたのは、この教科書だけでした。
4冊の中で最もプログラミングを実践的に学べる教科書です。

問題解決やプレゼンテーションの実践については、自分でググりながら進める必要があります。

日本文教出版「情報1」

問題解決の取り組み方やプレゼンテーションの方法について、かなり詳しく取り扱っています。

またプログラミングは浅すぎず深すぎず、全体的にバランスよく学べるようになっていました。

全てを把握したうえで最終的にコンピューターのことは専門家に任せる・・・そんなジェネラリスト志向の教科書です。

バランスの良さで実教出版の「最新情報1」と迷いますが、こちらの方が難易度が高めです。
実際に手を動かしてプログラミングを実践できます。
JavaScriptやHTML、CSSについても説明があります。

すこし図がごちゃごちゃしている印象です。
「官僚が作るパワーポイントみたい」と言えば、雰囲気が伝わるでしょうか。

東京書籍「新編 情報1」

読みやすさで言えば、ダントツでこの1冊です。

多くの概念や知識を驚くほどコンパクトに分かりやすく説明しています。
しかも、ほとんどの用語にルビ(ふりがな)をつけています。それでいて内容は薄くありません。
巻末には、Python、JavaScript、VBA、Swift、ドリトル、Scratch3.0 といった6種類ものプログラミング言語について説明しています。

ほんとうに、よくこれだけキレイにまとめたものです。
一家に一冊は欲しいです。

コンピューターや理系科目に苦手意識のある人は、まず、この1冊から始めたらよいかと思います。

ただし「モデル化とは,対象を単純化して表現したものである。」としてしまうなど、用語の説明が雑に感じる所がありました。

おわりに

一般の書籍に比べると、教科書の組版の品質はとてもレベルが高いなぁ、とあらためて実感しました

値段は一律で、どれも1冊¥1100円くらいでした(細かい数字は忘れました)。

ちなみに、店頭では教科書を現金でしか販売していませんでした。カードは使えませんでした。
おそらく出版社から買い取りで在庫を置くのでしょう。
在庫は課税されますから、カード決済で在庫処分が遅れるのはお店としてはリスクが大きいです。

教科書は誰でも購入できるはずですが、いざ買うとなると不便です。
取扱店が限られている上に、一般向けにお店を構えるところが少ないです。

日本は教科書の購入が少し面倒ですよね。
良いものが多いだけに、もっと気軽に購入できるようにして欲しいものです。

 


進学実績

卒塾生(進路が確定するまで在籍していた生徒)が入学した学校の一覧です。
ちなみに合格実績だけであれば更に多岐・多数にわたります。生徒が入学しなかった学校名は公開しておりません。

国公立大学

名古屋大学、千葉大学、滋賀大学、愛知県立大学、鹿児島大学

私立大学

中央大学、南山大学、名城大学、中京大学、中部大学、愛知淑徳大学、椙山女学園大学、愛知大学、愛知学院大学、愛知東邦大学、同朋大学、帝京大学、藤田保健衛生大学、日本福祉大学

公立高校

菊里高校、名東高校、昭和高校、松陰高校、天白高校、名古屋西高校、熱田高校、緑高校、日進西高校、豊明高校、東郷高校、山田高校、鳴海高校、三好高校、惟信高校、日進高校、守山高校、愛知総合工科高校、愛知商業高校、名古屋商業高校、若宮商業高校、名古屋市工芸高校、桜台高校、名南工業高校、菰野高校(三重)

私立高校

愛知高校、中京大中京高校、愛工大名電高校、星城高校、東邦高校、桜花学園高校、東海学園高校、名経高蔵高校、栄徳高校、名古屋女子高校、中部第一高校、名古屋大谷高校、至学館高校、聖カピタニオ高校、享栄高校、菊華高校、黎明高校、愛知みずほ高校、豊田大谷高校、杜若高校、大同高校、愛産大工業高校、愛知工業高校、名古屋工業高校、黎明高校、岡崎城西高校、大垣日大高校

(番外編)学年1位または成績優秀者を輩出した高校

天白高校、日進西高校、愛工大名電高校、名古屋大谷高校

※ 成績優秀者・・・成績が学年トップクラスで、なおかつ卒業生代表などに選ばれた生徒

 


生徒・保護者様のお友達登録はこちら

LINE登録するとプレゼントがもらえます!
【会員限定】お子様の成績と可能性を伸ばす18個のノウハウ

友だち追加


塾関係者様のお友達登録はこちら

LINE登録するとプレゼントがもらえます!
「zoomで簡単。オンライン授業移行の教科書」
または個別対談も可

友だち追加

 


名古屋市天白区の植田で塾を探すなら個別指導のヒーローズ!!

★ 直接のお問い合わせ ★
――――――――――――――――――――――
個別指導ヒーローズ 植田一本松校
〒468-0009
名古屋市天白区元植田1-202 金光ビル2F
TEL:052-893-9759
教室の様子(360度カメラ) http://urx.blue/HCgL

プログラミング教育 なぜパイソンが人気でオススメなのか?

pythonって知ってる?

宇宙とコンピューターが大好きな塾長です。

学校の先生や塾の先生が知っておくべき3大プログラミング言語といえば、

  1. Scratch(スクラッチ)
  2. python(パイソン)
  3. JavaScript(ジャバスクリプト)

ですね!(塾長の偏見です)。

冗談を抜きにしても名前くらいは知っておくべきで、けっこう重要なキーワードだとは思います。

中でもpythonの人気はずっと上昇傾向ですね。

先日はプロコースの生徒たちを指導しましたが、python(パイソン)を使っています。プログラミング教室「マイクラミング」の話です。
そして先週、新規面談をした中学生も独学でpythonを学び始めたと言っていました。なぜかドヤ顔。最近は単に「プログラミングを勉強している」というより「pythonをやっている」という方がマウントをとれるのでしょうか。
また別の会議では、とあるプロバイダーのとある技術者さんが「python本格的にやりたいなー」とおっしゃってました。

そんな感じで私の身の回りでもpythonが盛り上がってきています。

ということで、今回は

  • なぜ、python は人気上昇中なのか?
  • なぜ、python がおすすめなのか?

について書きます。

ただし、どうしても塾長の感想を含んでしまうので、そこはごめんなさい。

pythonの対象年齢(対象レベル)とは

人気があるとはいえ、pythonは「テキストプログラム」のプログラミング言語です。そのため、どうしても次のハードルが出てきます。

  • 英単語をたくさん使う
  • 1文字でもタイプミスをしたら動かない

確かにpythonの文法はシンプルですが、それでも直ちに「小学生にもわかりやすい」とはなりません。少なくとも上の2つのハードルをクリアできる精神年齢が必要です。

もしも上の2点が心配ならば、スクラッチ(Scratch)から始めるのが無難だと思います。

例えば、1文字でもタイプミスをすれば動きません。カンマとピリオドを間違えただけでもエラーです。次の2つの例を見比べてみてください。

name = "太郎"
print( "私の名前は{}です。",format( name ) )
name = "太郎"
print( "私の名前は{}です。".format( name ) )

上のプログラムは間違っていて動きませんが、下のは正しいです。

たったの1文字の差です。

こうした1文字の間違えでも冷静かつ前向きに対処できる精神年齢(IQ的な能力)が必要です。

学年や年齢ではなく、次のような感覚で判断した方が無難だと思います。

プログラミングが初めての場合

  • 学力が平均点くらいの中学1年生
  • ミスに対して前向きで、ミスの原因を調べたり予想したりするのが得意な小学5年生
  • 英語で作文が得意な小学3年生

くらいが対象の下限になると思います。

プログラミング経験がある場合

  • マイクラミングのハイコース卒業者
  • スクラッチで「自分で考えて」一通りのプログラミングができる人
  • 他のテキストプログラミング言語で「自分で考えて」一通りの制御構文をプログラミングできる人

必ずしも文法の詳細を暗記している必要はなく、調べながらでも良いですが、「自分で考えて」プログラミングしてきたことが必須です。

考えなしに教科書やネットからコピー&ペーストしただけでは、たとえそれが動いたとしても、プログラミングを経験したことにはなりません。
たまにそういう人がいるので注意してください。

pythonが人気の理由

ネット上でpythonが人気だーと話題になるのは主に2つです。

  1. 人気ランキングでpythonが上位
  2. pythonの求人は年収が高い

ランキング上位について

人気ランキングというのは、プログラマーからの人気投票の結果です。どんな理由でも1票は1票ですから「なんとなく人気があって上位」ということです。
とにかく大雑把に「pythonが好き」という人の割合が高いよ、ということくらいしか分かりません。

後半で塾長がpythonを使ってみた感想を書いておきますので、参考にしてみてください。

年収が高い件について

これは人材の人数が少ないという意味で、確かに高収入になりやすいです。

pythonの求人内容は、主に情報解析や人工知能を使ったプログラミングです。

  • 情報処理や人工知能を扱える高度な数学を身に着けている!
    なおかつ、
  • pythonでプログラミングができる!

そんな高い能力を持った人なんて、そもそも人数が少ないです。
人にできないことができるのですから給料が高くなります。

今のところ、その種の仕事は数が少ないです。
しかし今後は増えていくと見込まれていますから、学生の皆さんは希望を持って良いと思います。

とはいえ、3年後、5年後にどうなるかは分かりません。
工業的なニーズや商業的なニーズは、就職する時が来たら、その時に流行っているもので考えた方が実用的です。

もしも就職がずっと先であるならば、

「できるだけ学校の勉強をプログラミングに生かす」

という姿勢で「基礎」をしっかり鍛えておくのが良いと思います。
そういう意味では業界色の薄いpythonやScratchが無難ですね。

プログラミング言語 python の特徴

次にプログラミング言語としての特徴を挙げてみました。

pythonの特長

  1. 文法がシンプルかつ十分(短い文で済む、カッコ不要など)
  2. 高機能(高度な技術、トレンドば技術にすぐ対応)
  3. マルチプラットフォーム(WindowsでもMacでもLinuxでも富岳でも)
  4. 書いたらすぐ実行できる(コンパイル不要)
  5. 基本的に全て無料
  6. すぐに調べられる(解説ページやサンプルプログラムが多い)

pythonの得意分野

  1. 統計の全般
  2. 科学シミュレーション
  3. 人工知能の利用や開発
  4. 画像処理
  5. Webサーバー
  6. ゲーム(遅くても良い分野)

およそ何でもOKです。
日本のスーパーコンピューター「富岳」でも、ちゃんとpythonでプログラミングができますよ。

pythonの苦手分野

  1. 高速処理が必要なゲームプログラム
  2. 高速で高スループットな処理が必要なサーバープログラム

書いたらすぐに実行できる「インタープリター言語」であるため、どうしても計算スピードが犠牲になります。
そのため極端に計算スピードを要求されてしまうような処理には向きません。

フォートナイトやファイナルファンタジーのような本格的なCGのゲーム開発は無理です。
また動画編集ソフトや高度な画像編集ソフトも、pythonで開発するには無理があるでしょう。
pythonでは性能不足です。

CPUやGPUの性能を限界まで使いきるような超高速処理のプログラムを作るなら、C言語やC++、あるいはそのWindows版であるC#がおすすめです。
ほんの少しだけ性能を妥協する代わりに、マルチプラットフォームで動くアプリを作るならJavaがおすすめです。マルチプラットフォームの中ではJavaが最速です。

ただし、そのようなアプりの中で「作業を自動化するためのプログラミング言語」としてpythonが採用されている場合もあります。例えばBlenderというCGを作るアプリです。

性能を抜きにすれば、pythonはトップレベルに強力なプログラミング言語と言えます。

実際にpythonを使ってみた感想

塾長はこれまで、仕事やバイトなどで、C言語、C++、Objective C、Visual C++、Visual Basic、BASIC、Java、JavaScript、PHP、python、SQL(どこまでプログラミング言語とみなすか悩ましいですが)などを使ってきました。

結論から言えば、それらの中で pythonがダントツに良かったです。

書きやすいし、読みやすいし、思ったことがすぐできる!

という意味で、とにかく使いやすいです。初めてpythonを使ってみたときは、本当に衝撃でしたよ。

プログラマーの視点で優れていること

まず「プログラマーの視点」から見て、使いやすいです。

簡潔で読みやすくて無駄がない。それなのに、奥が深い!

そんな文法です。

きっと、プログラミングに関する「先人の知恵」が、ふんだんに組み込まれているから、そんなエレガントな文法になったのでしょう。

例えば「デザインパターン」研究されてきた知恵の一部が、言語の仕様として最初から組み込まれています。デコレーターやイテレーションなどです。
他にも、標準で用意されているオブジェクトの型の種類がちょうど良いです。細かすぎず、粗すぎず、それでいて、順序付けできるか否か、イテレーティブか否か、変更できるか否か、というカテゴライズの全てを網羅しているラインナップです。

ちょっと細かい話になってしまいましたが、要するに、本当によく考えこまれた言語だなぁと思います。

こうした言語仕様の何がすごいかと言えば、pythonで良いプログラムを書くだけで、良い設計をしたのと同じ価値が生まれるということです。
コーディングと設計の区別が、もはや無くなってきたということです。
優れた言語仕様と読みやすさが相まって、pythonのプログラムは仕様書としての価値も高いと言えます。

実際 pythonには、プログラムから仕様書を自動生成してしまうツールがいくつか用意されています。

とはいえ、こうした「プログラマーの視点」から見たエレガントさは、他の新しいプログラミング言語も負けてはいません。いろいろなプログラミング言語がタケノコのように、あちこちで生まれている時代です。

しかし、それでもなお、pythonが凄いと言いたいです。その理由は次の通りです。

科学技術の視点で優れていること

pythonは、なんと「数学や物理の視点」から見ても使いやすいのです!

他のプログラミング言語と一線を画す理由が、正にこれだと塾長は思います。

これまでのプログラミング言語は、数学や物理を取るか、アプリを取るか、のどちらかでした。
数学や物理が得意になれば、アプリを作るのが苦手になります。
アプリを作るのが得意になれば、数学や物理が苦手になります。

ところがpythonは最初から両方できます。

数学や物理が使いやすいので、pythonは大学の研究室や企業の研究開発で、よく使われています。

かつて理系の研究室ではC言語やC++(以降、まとめて単にCと略記します)を使って、研究に使う数学や物理の公式をプログラミングしていました。Cは何でも作ることができて、しかもプログラムが爆速で動作する、という最強のプログラミング言語ですが、その代わりに、何でも自分たちで用意する必要があります。先輩から後輩へプログラムを引き継いで、改良したり機能を拡張したりして、多くのコストと時間をかけてプログラムをメンテナンスしていく必要がありました。

しかし今は pythonのおかげで、そんな苦労の大部分が不要になってしまいました。pythonではたいていのことが最初からできるからです。

よっぽど計算スピードが重要になる研究でもしない限り、もう研究室でCをやる必要はありません。Pythonのお手軽さを1度でも味わってしまったら、もうCには戻れないでしょう。

そして実は、pythonはCと仲良しです。python自身がCで作られているからです。そのためスピードが重要な部分だけCで作り、残りをpythonでつくる、というハイブリッドな開発もできてしまいます。実際に高速なライブラリーも多く提供されています。

さて、数学や物理のプログラミングがしやすいということは、数学や理科の教科書の延長線上でpythonが利用しやすい、ということです。つまり、これからは高校生や大学1年生の教育でもPytnonの利用が増えると思います。

Pytnonのプログラミングに慣れてしまうと、もう他の言語が「めんどう」「ムダが多い」などと思えてしまいます。

人気の秘密はこうしたエレガントさにあるのだろうと勝手に想像しています。

忘れても問題ない文法とは?

誤解をしてほしくないので、最後にテキストプログラムの文法について補足しておきます。

今回のブログでは、pythonのメリットを語るために、文法や言語仕様について多く書きました。

でも誤解をしないでください。実際には文法を細かく「暗記」する必要はありません。しかも、これはpythonに限ったことではありません。

プロの世界でさえも、細かい文法は調べながらプログラミングしています。

意外でしょうか?

でも、これは常識です。例えば、

「C言語で仕事するのは2年ぶりだな。if 文の書き方はJavaとどう違うんだっけ?」

「PHPひさしぶり。文字と文字を連結する演算子は何だっけ?」

みたいなことは、プロでもよくあります。

プロの世界では1人が7~8種類のプログラミング言語を扱うのが普通です。C言語だけ、pythonだけ、というプログラマーなんて新人くらいです。
とはいえ1つのプロジェクトに使うプログラム言語は1~3種類くらいで済みます。ですから1つのプロジェクトに従事している間は、残りの使っていないプログラミング言語の細かいことは、忘れてしまいます。

たいていのプログラミング言語は似ていますが、細かいところで違います。そのような

プログラミング言語によって異なる部分

については、いちいち細かく覚えていられませんし、そこの暗記にこだわる必要もありません。
代わりに、

  • 標準で使えるオブジェクトの型は言語によって違う
  • 変数の初期化、参照、代入の作法が言語によって違う
  • 分岐は if – else が基本だが、細かいルールや switch を使えるかなどは言語によって違う
  • 繰り返しは for や while が基本だが、細かいルールは言語によって違う
    ・・・

みたいな勘所が、経験とともに蓄積していくものです。

「何を暗記しなければならないか」という項目は十分に知っておく必要はあります。
だからと言って、今すぐに暗記している必要があるか否かは別問題です。

細かいことは、必要になったら調べて暗記します。そしてプロジェクトが完了するまでは暗記の状態を保ちます。
しかしプロジェクトが終わって使わなくなれば、また忘れてしまうでしょう。

そんな感じで良いです。その方が、

「今回、また新しいプログラミング言語を使うことになった。」

と言われても、びっくりせずに済みます。
ほかの言語との違いを調べて使いこなすことには、変わりがないからです。

逆に、少しでも記憶があいまいなら、じゃんじゃん調べて確認します。
不確かな記憶のままプログラミングを進めてしまう人の方が信用できません。

プログラミングで大切なのは、

× 文法の知識が完璧であること
○ 全て説明できること

です。

プログラムの1行1行について、

「なぜ、そう書いたのか」

を1文字も漏らさず説明できる必要があります。
1文字でもあいまいだったら、すぐに調べる必要があります。

不明なことは、すぐ調べて確かめる!

これ、大切です。

勉強も同じ

細かい知識を忘れても、大した問題ではない。

これは数学や国語でも同じなのではないでしょうか?

社会や理科は、もっとそうですよね!

例えば歴史。

細かいことは、レポートを書いているときは覚えているかもしれません。
しかし、それが終われば忘れてしまいます。
相変わらず社会の定期テストや入試問題の多くは「暗記の詰込み」ですが、受験が終わったら忘れます(※)。

それでも、歴史の流れや国際関係の背景は、いつでも語ることができるだけの素養が身につくでしょう。

・・・みたいな感じですね。

よく、カリスマ的な人がプログラミングの実況動画を出しています。

すらすらと軽快にプログラムを書いて見せています。
そんな風にできるのは、たまたま業務でよく使っているか、リハーサルを十分にしているからです。

そういう人でも、違うプログラミング言語で同じものを作れと言われたり、違うジャンルのアプリを作れと言われたら、しばらくの間は、調べながらプログラミングしていくことになります。

だからといって、その人の能力が低いことにはなりません。

すらすらプログラムを書ける場面は、自分にとって、ある程度プロジェクトが乗ってきた時期です。

プログラミングの経験が蓄積できていれば、たとえ最初の数百行が遅くても、残りの数千行から数万行のプログラムはすらすら書けます。

逆にコンピューターを使いこなせるはずのプログラマーが、文法の暗記で消耗しているようでは先が思いやられます。
暗記で苦労する「暇」があったら、どんどん調べまくって仕事を先に進めましょう。そうするうちに勝手に頭に入ります。

※ 最近の入試問題は、理科や社会でも暗記の詰込み要素が無くなってきました。
多くの資料でヒントがたくさん与えられている問題形式が多くなってきました。そのため暗記がうろ覚えだとしても、今まで調べたり学んだりしてきた経験が十分にあれば、ちゃんと解けるように工夫されています。

まとめ

今回はpythonの魅力について書きました。

そのためにpythonの文法や言語仕様について少し詳しく書いたところもありました。だからと言って文法の詳細を覚えてほしいと言っているのではありません。

1つのプログラミング言語について、特徴をよく調べて使いこなすことが大切です。

そして少し時間がたって細かい文法を忘れたとしても、気にすることはありませ。細かい文法は、使う時に調べて確認すればよいです。

大切なことは、

「なぜ、そう書いたのか」

を1文字も漏らさず説明できることです。

あいまいなことや不明なことを放置せず、すぐに調べて確認する姿勢が大切です。

このことは勉強も同じだと思います。

 


ヒーローズ植田一本松校の進学実績

卒塾生(進路が確定するまで在籍していた生徒)が入学した学校の一覧です。
ちなみに合格実績だけであれば更に多岐・多数にわたりますが、当塾の理念に反するので生徒が入学しなかった学校名は公開しておりません。

国公立大学

名古屋大学、千葉大学、滋賀大学、愛知県立大学、鹿児島大学

私立大学

中央大学、南山大学、名城大学、中京大学、中部大学、愛知淑徳大学、椙山女学園大学、愛知大学、愛知学院大学、愛知東邦大学、同朋大学、帝京大学、藤田保健衛生大学、日本福祉大学

公立高校

菊里高校、名東高校、昭和高校、松陰高校、天白高校、名古屋西高校、熱田高校、緑高校、日進西高校、豊明高校、東郷高校、山田高校、鳴海高校、三好高校、惟信高校、日進高校、守山高校、愛知総合工科高校、愛知商業高校、名古屋商業高校、若宮商業高校、名古屋市工芸高校、桜台高校、名南工業高校

私立高校

中京大中京高校、愛工大名電高校、星城高校、東邦高校、桜花学園高校、東海学園高校、名経高蔵高校、栄徳高校、名古屋女子高校、中部第一高校、名古屋大谷高校、至学館高校、聖カピタニオ高校、享栄高校、菊華高校、黎明高校、愛知みずほ高校、豊田大谷高校、杜若高校、大同高校、愛産大工業高校、愛知工業高校、名古屋工業高校、黎明高校、岡崎城西高校、大垣日大高校

(番外編)学年1位または成績優秀者を輩出した高校

天白高校、日進西高校、愛工大名電高校、名古屋大谷高校

※ 成績優秀者・・・成績が学年トップクラスで、なおかつ卒業生代表などに選ばれた生徒

 


生徒・保護者様のお友達登録はこちら

LINE登録するとプレゼントがもらえます!
【会員限定】お子様の成績と可能性を伸ばす18個のノウハウ

友だち追加


塾関係者様のお友達登録はこちら

LINE登録するとプレゼントがもらえます!
「zoomで簡単。オンライン授業移行の教科書」
または個別対談も可

友だち追加

 


名古屋市天白区の植田で塾を探すなら個別指導のヒーローズ!!

★ 直接のお問い合わせ ★
――――――――――――――――――――――
個別指導ヒーローズ 植田一本松校
〒468-0009
名古屋市天白区元植田1-202 金光ビル2F
TEL:052-893-9759
教室の様子(360度カメラ) http://urx.blue/HCgL

プログラミングが不要になる? 噂のウソとホント

プログラミングが無くなる?

コンピューターと宇宙が大好きな塾長です。

今回は「もう少しすると教育業界でも騒がれそうな話題」について、一足先にお届けしてみようと思います。
個人的には、騒がれずにやり過ごして欲しいと期待したいのですが・・・

プログラミングが不要になる!?というウワサ

昨年(2020年)の秋くらいから、どうも日本のIT業界では

「もうすぐ、プログラミングをしない時代になる」

などと騒がれているようです。

「ノーコード」

というキーワードが、どうも日本でバズり出したようです。

どういうことでしょう?

ちょっと端的に説明します。

これまで「プログラミング」と言えば、こんなイメージでした・・・

プログラミングのイメージ

今後、それがこんなイメージに変わっていきます・・・

bubbleの画面イメージ

実は、どちらもアプリを開発している画面です。
でも、ぱっとした見た目から違いますよね。それで、

「おお、なんと画期的!!」

と騒がれているのです。

ひょっとして、デジャブ?

実は、みなさんも似たような変化を経験しています。

パソコンやタブレット。
今はとても使いやすいですよね。

昔と今ではコンピューターの操作が

  • 昔: コマンド
  • 今: クリック(タップ)

というふうに変わりました。
昔は難しかったコンピューターの操作が今では簡単です。

クリックで済む!

という変化です。

例えば、Windows10でお絵かきソフト「ペイント」を起動させる方法は、このように変わりました・・・

昔:コンピューターの操作が、黒い画面にコマンドを打つ操作

コマンドでペイント起動

から、

今:マウスでクリックする操作

GUIでペイント起動

に変わりました。

マウス操作の方が楽ですよね。
コマンドを覚えなくても良いし、とりあえずマウスだけカチカチしてたら操作できます。

こうした変化のおかげで、コンピューターを使う人が爆発的に増えました。1990年代のことです。

これと同じような変革が、いま、プログラミングの世界でも起こっています。

かつて、難しい「命令(関数)」や文法を駆使してプログラミングしていた作業。
これが画面上のマウス操作に置き換わっていく、という変化です。

そう、時代は繰り返すのです!

そう考えると、これは90年代のデジャブなんですよね。

もっと言えば、その90年代には、マウスでプログラミングできる機能エクセルやアクセスにすでに組み込まれていました。

例えば、エクセルの「マクロの記録」という機能を使ったことがありますか?

ビデオ録画の要領で人間の操作手順をエクセルに覚えさせる機能です。エクセルが裏でプログラミングを自動でしてくれるのです(少しプログラミングの編集作業が必要です)。
また、エクセルやアクセスには、入力画面(フォーム)をマウス操作で組み立てる機能があります。
これらの機能を使えば、ちょっとしたアプリの開発が、マウス操作メインでできるのです。

このような機能が25年くらい前からエクセルやアクセスにずっと備わっていました。知らない人は大きな損をしていたと思います。
エクセルのマクロは今ではほとんど使われず、新しい技術に置き換えられてしまいましたが。

塾長が大学生だった頃、紙のデータをひたすらエクセルに入力するアルバイトがありました。1束で20万円の稼ぎになったので貧乏学生だった塾長にはありがたい仕事だったのです(※)。ただ1つ、入力の作業が大変なのが難点でした。
まず紙の枚数が多くて1枚あたりの入力項目が多いのです。1束で2500枚くらいでした。次に指定されたエクセルの表が横に長いのです。入力項目が多ければ表が横に長くなるのは当然です。それで画面を横にスクロールさせる操作と、紙の値を読み取って入力する操作の両方を行う必要がありました。
そんなこんなで、1枚あたりの作業に時間がかかりました。

そこでエクセルの「マクロの記録」や「フォーム」を使って入力専用の画面をつくりました。入力画面に数字を入力するだけで、自動的にエクセルの表にそれらを割り振ってくれるようにしたのです。それでかなり作業の効率が上がりました。1997年とか1998年とか、そのくらいの時代です。

まさにデジャブなんですよ。

(※)当時は紙のデータをコンピューターが読み取るOCR技術がまだ実用的ではありませんでした。そこで人間がコンピューターにデータを入力する作業が必要でした。コンピューターが安くなってIT化が加速するのと並行して、紙の資料をコンピューターに入力する仕事も増えたのでした。

つまり何が変わったの?

さて、

「プログラミングが不要になる?」

というウワサの話しに戻します。こうしたウワサによって塾長は

「じゃぁ、プログラミング教育なんて意味ないじゃん!」

という風評被害、もとい「早とちり」が出てくるだろうと心配しております。

鋭いみなさんなら、もうお判りでしょう。

  • 前: 命令を文法に従って組み立てる
  • 後: 部品をマウス操作で組み立てる

どちらも方法が違うだけで、やっていること(作業の目的)は同じです。

つまり、

  • 目的は変わらない!
  • 方法が変わっただけ!

ということです。
プログラミングを「組み立てる」という作業はあいかわらず残っています。

作業の「スタイル」が変わったに過ぎません。

ちなみに、上の事例で挙げた画像は、.bubble というプログラミング環境の画面です。
.bubble ではプログラムのことを「ワークフロー」と呼ぶそうです。
プログラムの流れを「コンピューターの作業手順」に見立てて組み立てるスタイルです。

変わったのはプログラムを組み立てる「スタイル」です。
相変わらずプログラミングしていることには変わりがありません。

プログラミング教育はどうなる?

このように見てくると、プログラミング教育の「あるべき姿」が理解しやすくなります。

特定のプログラミング言語の命令や文法を覚えさせても、あまり意味がないことが分かるでしょう。
プログラミングの「文法」や「スタイル」は将来のどこかで変わってしまうからです。

しかしコンピューターに「作業の手順を伝える」という作業そのものは、相変わらず残ります。
「コンピューターができる小さな仕事」を組み合わせて「より大きな仕事」を組み立てていく作業は、今後も必要です。
つまり、手段は変わっても「考え方」は残るというワケです。

こうしたプログラミングの「考え方」を、ちゃんと教えることがプログラミング教育のあるべき姿ということになります。
専門学校や高等教育なら直近の技術を教えても良いでしょうが、小中学校の生徒を捕まえて教えても仕方がないというワケです。
教えるなら、時代が変わっても残る部分、つまり「考え方」でしょう。

ところで「プログラミング教育」と言ってしまうと、専門学校のような授業を想像してしまう人がいて誤解されがちです。

実のところ「プログラミング教育の必須化」という言葉も、本当は、

「プログラミング的思考の教育の必須化」

という言い方なんですよね。文部科学省の正式な言い方はこっちの方です。
要するに、

手段や環境に依存しないように、プログラミングの「考え方」を指導してね。

という教育が義務教育で必須化されたものです。

その考え方の中で、もっとも大切なところが「最適解を見つける試行錯誤」です。
大人の世界では「問題解決」とか「カイゼン」などと呼ばれています。

模範解答が用意されていないような問題にチャレンジする訓練です。

こうした取り組みの中に出てくる「考え方」はプログラミングの考え方そのものです。

これが文部科学省が声を大にして「必須化だ」と主張したいことなんです。

ここをしっかり理解できている人は、騒がずに済むというワケです。

ただ「プログラミング的思考」という言葉が、回りくどいし、逆に分かりにくいと不評でした。
残念ながら、なかなかこの本当の言い方が広まらなかったのです。

今日では、たいてい省略して

「プログラミング教育」

と呼ぶようになっています。

ということで、いくら日本のIT業界で「ノーコード」がバズっても、プログラミング教育にはほとんど影響がないでしょう。

逆に大きな影響を受けてしまったとしたら、それだけ教育業界が腐っているということになります。

プログラミング教育に新しい知識はほとんど不要

とうことで、義務教育で必須化されたプログラミング教育。
ここで、そのあるべき姿をまとめておきます。

  • できるだけプログラミング言語の文法や用語を覚えなくても済むようにする
  • できるだけ目的を達成できる「最適解」を「試行錯誤」で見つけさせる
  • そのために失敗を次に活かすチャレンジ精神を育む
  • コンピューターの色々な使い方を実践させる

また、よくある勘違いについても、まとめておきます。

  • 特定のプログラミング言語や機械の特性を覚えさせる
  • 教師の用意した答えを模倣させる、作り方を全て解説してしまう
  • 失敗しないことを評価の最高点にしてしまう
  • 指導事例は事例でしかないのに手順書のように運用してしまう

人によっては大きな大きな価値観の変更が迫られます。

小中学生におけるプログラミング教育の理想を一言でまとめるとすれば、きっと次のようなものになるでしょう。

できるだけ、今まで学校の教科書で学んできた言葉だけを使ってプログラミングする

プログラミングの「考え方」を子供たちに要領よく伝えるには、こうするのが一番だと思います。
中には、

「1つのプログラミング言語をマスターすれば、根柢の”考え方”も身に着くはずだ。」

と主張される人もいます。
それも一理あります。

しかし、それは遠回り過ぎます。子供たちにも学校の先生にもストレスが大きすぎるでしょう。

限られた時間と成績評価制度の中で運用されることを考えますと、プログラミング言語の詳細を覚えさせるのは現実的ではありません。
プログラミング教育の必須化によって、新しく覚える知識が増大してしまえば、漢字書き取りや計算ドリルに取り組む時間が無くなってしまい、学校現場や子供たちの学びが破綻してしまいます。

また新しい知識の暗記が負担やストレスになってしまえば、肝心の「答えのない問題にチャレンジする」という取り組みがおろそかになりかねません。

プログラミング教育の為だけに、わざわざ新しい用語をたくさん用意してしまうのは、本末転倒と言えます。
何より、せっかく覚えても、おそらくその知識の多くは10年後に無駄になります。

良い意味での影響を期待

さて「いくら日本のIT業界で「ノーコード」がバズってもプログラミング教育にはほとんど影響がない」と書きました。

ただし、良い意味での影響は、むしろ期待しています。

人工知能の発達に伴って、すでに人々の意識は変わってきています。

  • 漢字のトメ・ハネ・ハライのちょっとした違いで×にされる
  • かけ算の順序を逆にしたら×にされる

とか、そのような炎上ネタがよくありますよね。
昔とちがって、今は「覚えなくてもよいこと」が広がりつつあります。

これと似たような意識の変化がプログラミング教育にも起こってくると思います。
つまり、

  • 小学生や中学生にプログラミング言語の文法を覚えさせる
  • 小学生や中学生に機械や電子基板の仕様を覚えさせる

という「勘違いした指導」が無くなっていくだろうと思います。

プログラミング教育の世界でも、関数名を覚えさせるテストとか、細かい文法テストとか、そういうのが今後は炎上ネタにはなってくるでしょうね。

時代によってすぐに変わってしまうような知識は、仕事や趣味で必要になってから覚えればよいのです。
もっと言えば、わざわざ覚えなくても、必要な時に必要な人が調べながら使っていれば、必要な分だけ勝手に覚えます。

義務教育でテストするようなことじゃありません。

日本と海外で異なる「プログラミング」の意味

そもそも日本で「プログラミングが必要なくなる!」というウワサが広まってしまった原因は何でしょうか?

海外ではぜんぜんバズっていないようです。

日本では実際にそう言っている人たちがいます。
彼らの名誉のために言っておきますが、もちろん決してウソを言っているワケではありません。ホントのことを言ってます。

実は、そういう人が言っている「プログラミング」と、世界で一般的に言われている「プログラミング」とでは、そもそも言葉の意味が違うのです。

プログラミングの意味が「日本と海外では違う」ということは、業界ではよく話題になります。
ざっくり説明すれば、次のような感じで意味が変わります。

  • 日本: プログラミング = コーディング(設計どおりにプログラムを書くこと、若手の力仕事)
  • 海外: プログラミング = コンピューターで世の中の仕組みを変えていくこと

ですから正確に言えば

「コーディング作業が不要になる!」

と言いたかったわけです。

確かに、プログラミングのほとんどは、過去の誰かが作ったノウハウの再利用です。
例えば、

「商品の個数を入力してクリックすると注文数が1つ増える」

みたいに、どこかで見たことがあるような処理があります。
よくある処理ですから、だれかがプログラミングして部品にしておけば、後の人はそれを再利用するだけで済みます。
このように、ありがちな処理をすべて「プログラミング済みの部品」にして用意していくと、最終的には、そういう部品の組み合わせだけで開発できてしまうようになります。

つまりテンプレート的な機能の寄せ集めだけで作れるようなアプリやシステムだったら、確かにコーディング作業は無くなりますね。マウス操作がその代わりになりますから。
上の写真のように、マウスで部品を持ってきて貼り付けていくだけで開発ができそうです。

なるほど、ホントだ!

そういうワケです。

しかし反対に、テンプレートの部品そのものを開発する人にとっては、相変わらずコーディングが必要です。テンプレートはどんどん新しく進化していくでしょうから、コーディングの仕事もなくならないでしょう。もちろん全く新しいサービスやアプリを開発する場合もそうです。

そう考えれば、ウソだ!

ということになるワケです。

ちなみに日本で「プログラマー」と言えば、どちらかというと「安月給」とか「辛い仕事」というイメージです。
最近は変わってきているかもしれませんが、塾長が技術者だった時はそうでした。
コーディングしか作業しないとすれば、そりゃ給料は上がらないでしょう。

一方、海外ではどちらかというと「中流階級以上の仕事」とか「高給取り」、「スマートな仕事」というイメージです。
世の中の仕組みを変えるのですから、色々な役割をこなします。その分だけ、そりゃ給料が上がるでしょう。
海外の方が夢があって華やかなイメージになります。

さて、日本と海外で「プログラミング」の意味が違うのは、どうしてでしょうか?

つまり、どうして日本では

プログラミング = コーディング

なのでしょうか?

それは日本が「超縦割り社会」だということに原因があります。「ピラミッド型の組織」だからと言っても良いでしょう。
誤解を恐れずに表現すると、

  • 設計する人(エライ、給料が高い)
  • コーディングする人(下っ端、給料が安い)

という身分制度が日本にあります。
大企業になればなるほど、この身分の壁が厚くなります。

「大量生産」の時代には、こうしたピラミッド型の組織が最も効率的とされていました。
そして多くの日本企業は今でもその体制が良いと信じられています。

「プログラミング」の意味を変えていくべき!

日本のピラミッド型組織の問題は、役割が「縦割り」になり過ぎていた、ということです。
「設計する人」と「コーディングする人」(プログラミングする人)が別という組織は、とても非効率なのです。
それに技術者の能力もたいして上がりません。

もちろん昔は良かったのですが、今でもそんなことをしていたら、企業も日本も発展しません。
どんどん海外に追い抜かれていきます。

なぜなら、昔とは違って、今どきのプログラミング言語や開発の環境は、とても高機能だからです。
開発がものすごく効率的にできるようになっています。

例えば、今どきのコーディングは、プログラムを見れば「設計の考え方が分かる」ようになっています。わざわざ細かい設計書を別に書く必要がありません。
つまり、設計すると同時にプログラミングが完成していく、という状況です。
こうなると「設計する人」と「コーディングする人」は同じ人で良くなります。

他にもいろいろあります

例えば、昔はサーバー側(大型のコンピューター側)と、ブラウザ側(スマートフォンやパソコンなど)とでは、設計やコーディングをする人が違っていました。
それぞれに使われている技術が違っていたからです。サーバー側はPHPやPythonで、ブラウザ側はJavaScriptで、という具合です。
ところが今はサーバー側もブラウザ側も同じ技術でプログラミングできてしまいます。例えばNode.JSという環境では、JavaScriptでサーバーもプログラミングできてしまいます。
実際、スクラッチ3.0はこの技術を使って開発されました。塾長もマイクラミングの開発で使いました。
こうなると「サーバー側」と「ブラウザ側」も同じ人で良くなります。

このように、どんどん1人でできることが多くなってきています。

ですから余計に1人が多くの役割を同時にこなした方が良いのです。
その方が開発が速いし、画期的なアイデアが採用されやすいのです。

海外に比べると日本の組織は、意思決定も開発のスピードも圧倒的に遅いです。
もうそろそろピラミッド型の組織では飯を食っていけなくなるでしょう。

よって「プログラミング」には、問題の設定や設計からコーディングまで、すべての意味を含めるべきでしょう。
つまり1人が色々な役割を同時にこなすことを、誰にも邪魔されないようにすべきです。

これから日本も「プログラマーが世界を変える」ような姿になっていくべきだと思います。

ピラミッド型の組織の中で「プログラミング」を「下っ端がコーディングだけすること」などと決めつけているようでは、日本は成長しません。

ちなみに「1人でできることが増えてくる」ことは、プログラミングに限った話ではありません。
例えば放送の世界でもそうでしょう。

YouTuber は1人で企画、取材、撮影や録音、編集、放送や広告宣伝の全てをこなしています。
コンピューター技術の発達で、放送のあり方が急速に変わっています。
YouTubeに乗り遅れた有名人たちがclubhouseに殺到している、なんて揶揄されているほどです。

私たちを取り巻くコンピューター技術が、それだけ目まぐるしく変わっているということです。

このような変化に伴って、すでに組織の潮流は、ピラミッド型の組織からネットワーク型の組織に変わっています。
1つの大きな組織が大きなモノを生み出す形態から、1人ひとりが独立して何かを生み出しつつ、連携して大きなモノを生み出す、そういう形態に変わってきたのです。

他にも色々な変化が発生しています。

  • 秘密主義からオープン主義へ
  • 所有からシェアへ
  • 一握りの天才から集合知へ
  • 大型顧客からロングテールへ
    ・・・

しかも急速な変化です。

ピラミッド型の組織では、こうした変化に対応できないのです。

ですから、これまで優秀なプログラマーや企業は、みんな海外へ出て行ってしまいました。
日本に残るのが、変化を察知できない人や組織だけ、となってしまっては悲しすぎます。

これから日本も「プログラミング」の意味を海外のように変えていく必要があります。
そのためには組織もネットワーク型に変えていくべきでしょう。
日本の内部から「世の中の仕組みを変える」ような国に変えていく必要があります。

このようにプログラミングの意味を変えることと、組織を変えることは、切っても切り離せません。
日本も早く変わっていくべきでしょう。

もちろん、新しいプログラミングの教育、つまり色々な役割を同時にこなしたり、一連の作業の流れを一通りこなしたりするような人材を育成していくことが前提になります。

だからプログラミング教育の必須化が待ったなしになったのです。

コロナ禍でテレワークが増え、並行してGIGAスクールが加速しています。
これらが起爆剤の1つになる可能性も有ります。

「プログラミング教育」を「モノづくり教育」にしてはならない!

せっかく必須化されたプログラミング教育。
これを

「モノづくり教育」

だと勘違いしてしまったら、悲しい失敗に終わってしまうでしょう。
過去に何度も繰り返してきた失敗です。

趣味でやるのはかまいませんが「義務教育としてやるのは間違い」といことです。

上で述べたように、モノづくりの現場で使われている技術は日進月歩です。
技術は10年もたたないうちに変わります。

ですから、いま日本で使われているトレンドの技術を子供たちに覚えさせても、あまり意味がありません。
次のことは全て間違った教育です。

  • 小学生に今からプログラミング言語の文法を覚えさせる
  • パソコンのコマンドを覚えさえさせる
  • 中学生にエクセルの関数名を暗記させ、書き取りテストをする
  • モーターやLEDの特性や制御の手法を細かく覚えさせる

まったく英才教育にはなりません。

何度も書きますが、趣味でやるのはかまいませんが「義務教育としてやるのは間違い」という意味です。

プログラミング教育でやるべきことは、モノづくりの技術などではありませんよ。
新しくトレンドの技術を覚えさせる必要なんて、全くないですからね。

最適解を見つける訓練ですよ。

技術が変わっても残る「考え方」の部分。
要するに「世の中の仕組みを変える方法」を教えていくことです。

それがプログラミング教育のあるべき姿です。

間違っても技術者の早期育成などと矮小化してはいけません。
そんな目先の小さなものに注目していると、大きな目的を見失ってしまいます。

もしも学校の予算が無くてLEDやロボットが買えないなら、買わなくてもよいです。困りません。
最低限、コンピューターだけあればよいです。
あるものを組み合わせてできる範囲で最適解を考えさせれば良いだけです。

有るもので間に合わせて指導した方が、むしろトレンドの技術に依存しないプログラミング教育ができると思いますよ。
そう考えると、本当はもっと早くプログラミング教育ができたはずでした。

これからの時代、プログラマーの仕事は「世の中の仕組みを変えること」です。
人間の欲求の姿はあまり変わらなくても、社会の仕組みは、どんどん変わるでしょう。

日本人がやらなければ海外の人がやってしまいます。
海外の人がやってしまったら、日本人は、それをお金を出して買うしかありません。
日本人も新しい仕組みを作って海外に売らなければ、日本からお金が出ていくだけですよ。

YouTuberの中には「プログラミングスクールに通っても稼げない」などと主張する人がいますね。

その「プログラミング」の意味、そろそろ卒業した方が良いですよ。

 


ヒーローズ植田一本松校の進学実績

卒塾生(進路が確定するまで在籍していた生徒)が入学した学校の一覧です。
ちなみに合格実績だけであれば更に多岐・多数にわたりますが、当塾の理念に反するので生徒が入学しなかった学校名は公開しておりません。

国公立大学

名古屋大学、千葉大学、滋賀大学、愛知県立大学、鹿児島大学

私立大学

中央大学、南山大学、名城大学、中京大学、中部大学、愛知淑徳大学、椙山女学園大学、愛知大学、愛知学院大学、愛知東邦大学、同朋大学、帝京大学、藤田保健衛生大学、日本福祉大学

公立高校

菊里高校、名東高校、昭和高校、松陰高校、天白高校、名古屋西高校、熱田高校、緑高校、日進西高校、豊明高校、東郷高校、山田高校、鳴海高校、三好高校、惟信高校、日進高校、守山高校、愛知総合工科高校、愛知商業高校、名古屋商業高校、若宮商業高校、名古屋市工芸高校、桜台高校、名南工業高校

私立高校

中京大中京高校、愛工大名電高校、星城高校、東邦高校、桜花学園高校、東海学園高校、名経高蔵高校、栄徳高校、名古屋女子高校、中部第一高校、名古屋大谷高校、至学館高校、聖カピタニオ高校、享栄高校、菊華高校、黎明高校、愛知みずほ高校、豊田大谷高校、杜若高校、大同高校、愛産大工業高校、愛知工業高校、名古屋工業高校、黎明高校、岡崎城西高校、大垣日大高校

(番外編)学年1位または成績優秀者を輩出した高校

天白高校、日進西高校、愛工大名電高校、名古屋大谷高校

※ 成績優秀者・・・成績が学年トップクラスで、なおかつ卒業生代表などに選ばれた生徒

 


生徒・保護者様のお友達登録はこちら

LINE登録するとプレゼントがもらえます!
【会員限定】お子様の成績と可能性を伸ばす18個のノウハウ

友だち追加


塾関係者様のお友達登録はこちら

LINE登録するとプレゼントがもらえます!
「zoomで簡単。オンライン授業移行の教科書」
または個別対談も可

友だち追加

 


名古屋市天白区の植田で塾を探すなら個別指導のヒーローズ!!

★ 直接のお問い合わせ ★
――――――――――――――――――――――
個別指導ヒーローズ 植田一本松校
〒468-0009
名古屋市天白区元植田1-202 金光ビル2F
TEL:052-893-9759
教室の様子(360度カメラ) http://urx.blue/HCgL

プログラミング言語って何? お勧めはどれ?

プログラミングに夢中な生徒の写真

こんにちは!塾長の松下です。

昨日の午前中は、ヒーローズ西春校に行ってきました!

この夏から西春校さんもプログラミング教室を始めます。その準備を手伝ってきました。いよいよ北名古屋市のみなさんもマインクラフトでプログラミングを学べるようになりますよ!
乞うご期待です!!

午後からは植田一本松校でいつも通りプログラミング教室をしました。生徒がミッションを早くクリアしたので、残り時間を自由にしました。やっぱり子供たちは溶岩とかTNTが大好き。「数千個のTNTを爆発させる」というプログラムを作って遊んでいました。

プログラミングに関係する国家資格

IT系の国家資格と言えば、次の3つを押さえておく必要があります。この順番にレベルアップします。

  1. ITパスポート
  2. 基本情報技術者
  3. 応用情報技術者

中でもプログラミングの技能を問われるのが「基本情報技術者」です。毎年多くの人が受験します。

基本情報技術者とは?

主にプログラムの設計、開発を行う技術者の知識や技量を証明する資格です。国家試験に合格するともらえます。英検で言えば2級くらいに相当します。

商業高校や工業高校では、高校2年生くらいから学校で受験を勧められます。普通科でも科学部やデータサイエンス部など、IT系に興味のある人ならチェレンジすることがあるでしょう。もちろん、通信系やIT系に就職したら、会社から受験を勧めらることが多いです。

【悲報】COBOLが消えました。今後はPythonで。

これに関して、少し前、今年1月24日に衝撃的なニュースがありました。

2019年秋期の試験を最後にCOBOL(コボル)が廃止されるというのでます。代わりに2020年春期からはPython(パイソン)になるそうです。情報ソースは情報処理推進機構によるコチラの発表です。

え、コボル?、パイソン?

という人も多いでしょう。COBOLやPythonはプログラミング言語の種類です。

プログラミング言語とは?

例えば、ブログは日本語で書きます。曲は音符で書きます。計算は数式で書きます。化学変化は化学反応式で書きます。このように、何かを書き表すとき、それに合った表現方法(言語)が存在します。

コンピューターも同じで、コンピューターを使う目的ごとに表現方法や文法があります。それがプログラミング言語です。たくさんの種類があり、目的に応じて使い分けられています。

ところが国家資格で使えるプログラミング言語は、たったの4つしかありません。

国家試験で使えるプログラミング言語

基本情報技術者の資格試験では、プログラミングの技能が問われます。自分の得意なプログラム言語を選択して受験することができます。ただし、その選択肢が4つしかありません。しかも来年からそれが変わります。

これまでは次の4種類でした。

COBOL、Java、C言語、アセンブラ言語(CASL II)から1つ選択

それが2020年の春から

Python、Java、C言語、アセンブラ言語(CASL II)から1つ選択

に変更されます。国家資格を取れる4つのプログラミング言語から、COBOLが姿を消し、Pythonが登場したのです。こえれは事実上、

「COBOLはもう古い。」「Pythonがメジャーになった。」

と国が認めたに等しいです。だからニュースなんですね!

上で挙げた5つのプログラミング言語について、それぞれの特徴を簡単に説明します。

  • COBOL: 大型コンピュータで経理や成績管理といった事務処理をするのが得意
  • Python: どのパソコンでも動き、科学技術計算や人工知能による情報処理が得意
  • Java: どのパソコンでも動き、操作画面やゲームを作るのが得意
  • C言語: OSの開発、機械操作のアプリ、高機能で高速なアプリの開発が得意
  • CASL: ハードウェア本来の性能を引き出すのが得意

私が大学生のころまでは、COBOLを使えれば就職に有利でした。大企業の多くが大型コンピューターを持っていて、それを使うために必要だったからです。ところが、ここ数十年でデーターベースの技術が一般化し、同時にパソコンの性能が飛躍的に良くなってしまい、大型コンピューターが不要になってしまいました。今ではCOBOLで仕事をしている人を、ほとんど見かけません。

プログラミング言語にも栄枯盛衰があるのですね。

マイクラミングを支えるプログラミング言語たち

ちなみに、私たちのプログラミング教室「マイクラミング」を支えるプログラミング言語たちは、次のようになっています。

  • JavaScript: スクラッチの機能を拡張する部分と、生徒がログインする画面の開発に使いました
  • Python: スクラッチとマインクラフトをつなげる機能の開発に使いました
  • PHP: 生徒がログインする画面のサーバー開発に使いました
  • SQL: 生徒情報などを管理する機能の開発に使いました

JavaScriptはJavaの縮小版です。ブラウザの中だけで動作します。PHPやSQLなど国家資格には関係ないプログラム言語が出てきましたね。プログラム言語はとても種類が多いのです。私はマイクラミングを開発するために、これら全てのプログラミング言語を勉強しました。勉強は一生続くのです。

ちなみにマインクラフトそのものはJavaで作られているそうですよ。

そして生徒の皆さんが使うプログラミング言語はScratch(スクラッチ)です。

Scratchの次はPythonかJavaを学ぼう

来年度から小学校で、更に年度から中学校でプログラミング教育が必須化されます。

おそらく多くの小学校では Scratch(スクラッチ)というプログラミング言語が使われるでしょう。今まで色々な学校現場で使われてきた実績がありますし、何より無償で使えるからです。

もちろん私たちのプログラミング教室「マイクラミング」もスクラッチです。小学2年生から高校生まで通っています。

しかし、残念ながら、この Scratch(スクラッチ)では国家試験を受験できません。国家試験はプロの能力試験なので、プロが使わない言語では受験できないのです。
ただし、民間の試験ならあります。Scratchで能力を試したければ民間試験でチャレンジしましょう。

スクラッチが得意なのは、あくまでも学校教育や趣味の領域です。ですから、スクラッチでプログラミングを練習したら「次のステップ」へ進みましょう。

Scratchの次のステップとしてお勧めなのは、Python(パイソン)またはJava(ジャバ)です。

どちらも無料で始めることができます。また解説書やインターネット上の情報が豊富で調べやすいです。

どちらかというと、理系の学生はPython、ゲーム制作などクリエイターになりたい人はJavaを学んでみるとよいでしょう。

ただし就職してからPythonやJavaを使うかどうかは分かりません。しかし1つのプログラミング言語に精通しておけば、他のプログラミング言語を学ぶのが簡単になります。プログラミング言語には共通する考え方が多いからです。

C言語やCASLはお勧めじゃないの?

C言語は文法が多くて細かいです。難しいというよりは、めんどくさいです。ちょっとした処理を実現するにも、何十行ものプログラミングが必要になります。
「こういう時はこう作れ」的な定石をたくさん覚える必要があります。そして後述する「オブジェクト指向」に対応するためにC++言語という拡張版も学ぶ必要があります。
歴史の長い言語なので学びが多い一方、書籍が多すぎてピンキリです。良書を探すのに苦労します。身近に知見者がいれば、聞くのが一番でしょう。
そんなこんなで、マスターするまでの道のりが長いです。
その代わり、マスターしたら超強力なプログラミング言語になります。その道のプロになると決めたら取り組んでみてください。

CASLはマイコンなどのハードウェアを使うためのプログラミング言語です。ハードウェアの知識が必要になりますから、これも初学者にはお勧めしません。また実際に何かを作ろうとするとCASLは使えません。ハードウェアのメーカーごとにプログラミング言語が違うからです。CASLは練習用の言語と割り切った方が良いでしょう。

オブジェクト指向を学べ

それから、プログラミング言語とは別に、「オブジェクト指向」という考え方を、しっかり学んでおくことをおすすめします。

オブジェクト指向は、人間が物事の構造や関係をとらえる様子を、整理したり正確に記述したりするための技術です。

現代のプログラミング言語のほとんどは、その根底にオブジェクト指向があります。大きなプログラムや複雑なプログラムを考える時ほど、オブジェクト指向が必須になってきます。ぜに学んでみてください。きっと頭の中がすっきりするでしょう。

まとめ

国家資格の「基本情報処理技術者」を受験できるプログラミング言語は4つしかありません。そして今年でCOBOLが廃止され、来年からPythonが追加されます。

来年から小学校で必須化されるプログラミング教育ではScratchが大活躍します。

しかし仕事でScratchは使えません。ステップアップにはPythonかJavaが塾長のおすすめです。

プログラミング言語と並行して「オブジェクト指向」を学ぶと良いでしょう。頭を整理するのに役立つ技術です。

 


名古屋市天白区の植田で塾を探すなら、日進市赤池で塾を探すなら、個別指導のヒーローズ!!

★ 直接のお問い合わせ ★
――――――――――――――――――――――
個別指導ヒーローズ 植田一本松校
〒468-0009
名古屋市天白区元植田1-202 金光ビル2F
TEL:052-893-9759
教室の様子(360度カメラ) http://urx.blue/HCgL