N予備校のプログラミング入門アプリコースが5月31日まで無料でしたので受講しました。

受講した感想

体系的に学べる
Webアプリを作るのに必要な知識が網羅されている
この内容が1000円/月だなんて安い(1000円じゃ1冊も本が買えない)
まったくの初心者にはお勧めできない(映像授業を利用すればいけるのかも…)
うまくググれない方にはお勧めできない(フォーラムを使って質問すれば大丈夫かも…)


最初に

N予備校のプログラミング入門アプリコースを修了すると「一般的なWeb企業でプログラマとしてアルバイトをできるだけの知識が身につきます。場合によっては就職も可能かもしれません。」と、@sifueさんが書いています。
20年くらいPHPを趣味で書いて、ErogameScapeを運用しているので、自分はWeb企業でアルバイトできるのだろうか…と思って、受講しました。
結果は、ぎりぎりアルバイトできるかな…という感じでした。
入門アプリコースの想定学習時間は以下の通りと「約980名の生徒に行われたN高等学校のプログラミング教育の現状と課題」に書いてあります。

概要 テキスト教材の場合 映像授業を利用した場合
1 章 Web プログラミング入門
(HTML / CSS / JavaScript)
10 時間 34 時間
2 章 Linux 開発環境構築
(Linux / Git / GitHub)
8 時間 32 時間
3 章 サーバーサイドプログラミング入門
(Node.js / Hubot / Heroku /
XSS 対策 / CSRF 対策)
17 時間 68 時間
4 章 実践サーバーサイドプログラミング
(Express.js / OAuth / PostgreSQL /
テスト / 継続的インテグレーション)
12 時間 48 時間

自分のスペックは以下のとおりです。
  • そこそこ使える
    • PHP(ErogameScapeはPHPで書いています)
    • SQL(毎日なにかしら実行しています)
    • CentOS(最近CentOS8にしました)
  • ErogameScapeを構成する主なソフト
    • Apache
    • PostgreSQL
  • 触ったことがある
    • Javascript
    • Git /GitHub
  • 資格
    • ネットワークスペシャリスト試験
    • CCNP Routing and Switching
    • LPIC301,303,304

1章はサクサクすすみました。
2章は何か本を読んだときにインストールしたvagrantを流用したのでサクサクすすみました。
3章は想定学習時間どおりでした。
4章は想定学習時間を超えました。どのくらい超えたのか計測していないのですが…1週間かかっています。1日2時間程度取り組んだとすると14時間はかかっています。
4章はSQLの項目があるのですが、自分はSQLの項目は知っていたので飛ばしています。それでも1週間かかっていますので、SQLが初見だとかなり時間がかかります。

各項目について、だいぶ丁寧に解説が書いてありますが、それでも足りなくて、ぐぐったり試したりしているとだいぶ時間を食うので、完全な初心者がテキスト教材のみを使って想定時間内に終わるのはほぼ無理だと思います(※でも、C言語を初見ですごいスピードで習得していった方を見ているので…絶対無理とは書けないです。)
映像授業は見ていないのでコメントできないです。

このコースは必要なプログラム等をProgramming Education (progedu)からForkしてくるので、Forkされた回数で最初から最後までたどり着けた人の割合を見ることができます。
3章の最初の課題のFork数が2.9k、4章の最後の課題のForkが356なので、最後までたどり着けているのは2020年6月1日時点で12%くらいです。


内容について

2017年の資料なので、使ってるライブラリがかわっているところもありますが、高校生にWeb上でプログラミングを教え始めたエンジニアがこの8ヶ月間で得た気づきになります。
もう少しざっくりですと、N予備校プログラミング入門コースの難易度がおかしいになります。

Git cloneして、ポチポチ書いて(または教科書のソースをコピペして)、動かしてみる、の繰り返しで、学んでいきます。
書籍と違って内容がちゃんと年に1回更新されるので、コピペして動きますし、教科書の画面のイメージも実際の画面とあっています。
最近は書籍がすぐに古くなる(ソフトがすぐに新しくなってしまう)ので、コピペしても動かない…のはよくあることです。

Webサイト作成に必要な知識等を広く浅くすくっている印象です。
すべてを学ぼうとすると…おそらく何冊も本を読まないといけないです。
ただ、浅いので…自分で調べて理解を深める必要があります。

このコースを一通り修了すると、自分で分からないことを調べて解決する力も身についているはずので、ErogameScapeと同じサイトを作れます。
もちろんこのコースに出ていた知識だけでは作れないですが、必要な知識を習得していけば作れます。
学んだ知識(Express、Pug、Bootstrap、Heroku)でOOpartsゲーム一覧を作ってみました。


N高等学校でN予備校のプログラミング入門アプリコースを修了された方々へ

自分が以前勤めていた会社はWeb企業ではなかったですが、このコースを修了し、自分でなんらかのアプリを作っている方が自分の担当に配属されたら、歓んで一緒に業務改善に勤しんだと思います。
主にExcel、Accessを使っていたので、何か自動化できることがあれば、VBAで自動化していったと思います。
プログラミングができると何がプログラミングでできるかが分かるようになります。
これはとても重要で例えば事務作業において「これって自分には出来ないけど自動化できそう」と思ったら、自動化できる人を社内で探したり外注できたりするんですが、プログラミングを知らないと現状維持です。
プログラミングができる人が事務作業がたくさんある担当に異動になって、その人が「これ自動ができますよ」って自動化した結果、月末付近は全員が深夜まで残業していたのに、残業自体がなくなった…、ということがありました。
それくらいインパクトがあることがあります。
N予備校のプログラミングコースはWebに特化していますが、Web企業でなくても、このコースで学んだ知識や技術や経験が役に立つ職はいっぱいあります。
未来の皆さんに期待しております!