初めに

このサイトは中学生以上でプログラミングに興味がある方に、プログラミングの学び方を解説しています。

2021年現在、小学校からプログラミングの授業が必修となって1年が経とうとしています。
少しプログラミングに興味を覚えた方もいるのではないでしょうか。
それはとても素晴らしいことです。
たいていのプログラマーは、自分が初めて書いたプログラムが動いた時の感動を忘れていません。
そして、職業としてプログラマーを選択すると、「ちゃんと動いた!」という喜びが毎日続いていきます。
ですから、悩むことも勉強することも多い職業ですが、ずっと続けることができます。

プログラマーという職業は、好奇心旺盛な性格の人が向いています。
少しでも分からないことがあったら先輩や周りの人に聞いてみる。自分でインターネットで調べる。
そういうことが出来る人はどんどん成長できます。
このサイトを見ている人は、少なくとも何らかの興味を持って自分の意思でこのページを開いたのですから、
プログラマーになる十分な素質を持っています。

少し余談ですが、プログラマーになると安定してお金を稼ぐことができます。
1日8時間、エアコンの効いた社内で必要な人とコミュニケーションと取りながら、
ちゃんとしたオフィスチェアに座って手と頭を動かす仕事なので、仕事中の事故などに遭遇するリスクは極めて低いです。
経済的にも安定していて、身体的にもう働けなくなるといったことも少ないというのもプログラマーという職業の魅力の一つでしょう。

さて、中学、高校と学習を進めて行くと、高校卒業時点でプログラマーになることはできるでしょうか?

次のプログラムを見てください。
これは1から100までの素数を画面に表示するJava言語のプログラムで、実際に動かしてみることもできます。
(Javaとは世界中の多くのシステムで利用されているプログラム言語です)

IntStream.rangeClosed(1, 100).filter(Primes::isPrime).forEach(System.out::println)
java言語

我々のようなJava言語のプログラマーにとっては、すぐに書くことが出来るわりと簡単なプログラムです。

しかし、この1行のプログラムを書くまでには一定の経験、知識が必要なことは言うまでもなく、
おそらくですが、学校の授業ではカバーすることも、高校卒業時点で書くことも、なかなか難しいのではないでしょうか。
学校の授業でJava言語を教わるかどうかはともかく、上記の一例には他のプログラム言語にも通用する幾つかの重要なエッセンスが含まれています。

それでは、以下ならどうでしょうか?

print('hello world')
python言語

これはpythonというプログラム言語で、pythonを学習したことがあれば、誰もが一度は書いたことがあるプログラムです。
より簡単な例ですが、もしかするとこの1行をソラで書くのも難しいかもしれません。
せっかく学習しても、実際に人々にサービスを提供するプログラムを書けるようにはならないのは悲しいことです。
ですが、興味を持って自己学習を続けられる人であれば、どんなに若くても、例であげたプログラムの1行をひねり出すことはできます。

一番大事なことは、「考えて、書いて、動かす」そして「ちゃんと動いた」という喜びを感じることです。
そして、ちゃんと動かない時は「どうして動かないのか?」自分で納得が行くまで調べられるということです。

このサイトでは、課題を解く形でプログラムを自分で書き、楽しくプログラミングを学ぶということをテーマに解説を進めていきます。