【N高校】プログラミングコースって実際どうなの?

皆さんはN高校をご存知でしょうか。

N高校は、2016年に開校した、ネットで好きなことが好きなだけ学べる新しい通信制の高校です。

N高校設立より早くも4年が経過するわけですが、中でもプログラミングコースは、ドワンゴのエンジニアから学べるということで評判がよく、企業のインターシップにもよく活用されている人気のコースです。

今回は、そんな話題のN高校プログラミングコースについて徹底解説していきたいと思います!

N高校プログラミングコースとは

通学コースとネットコース

N高校プログラミングコースは通学コースとネットコースに分かれており、それぞれ取り組みが少し異なりますので、順番に紹介していきたいと思います。

通学コース

最初は生徒全員がMacBookを購入し、興味のある分野を探すところから始まります。

各人がWeb開発、デザイン、ゲーム、映像、音楽、ロボットなど、自分が興味のあるジャンルを探し、それに沿った学習を始めていきます。

導入として、どのジャンルにも共通する『ICT基礎』の学習から大半の生徒は始めるようです。

ICT基礎では、Macの使い方やタイピング、Adobe製品の使い方などを学べます。

それと併せて、数学・英語も学習していきます。機械学習・3Dには数学、最先端の技術情報は英文で書かれているため英文読解力が必要となるからです。

たくさんジャンルがある中で特に人気があるのはWeb開発やゲーム開発だそうです。

導入が終われば、実際にプログラミングを学習していきます。

授業のベースは、集団授業で、N予備校というアプリを使ってドワンゴの新人研修にも使われているレッスンを受けながら、対面でも講師が解説していく形です。

ネットコース

ネットコースでも、通学コースと同様、N予備校というアプリを使って授業を受けていきます。

こちらは生徒が好きな時に受けられるスタイルとなっています。

学んだことをSlackのコミュニティで共有したり、Zoomをつかってプログラマーからコーチングを受けることもできます。

学習スタイルがこのように通学とネットでは少し異なりますが、N予備校で学習するという点では同じですね。

N予備校でのプログラミング授業~入門コース~

N予備校ではまず、入門コースを180時間かけてじっくり学びます。

主にJavaScriptというプログラミング言語を使って、小規模なWebサービスをひとりで企画、開発、運用までできることを実感することが目的です。開発を目的としていない人にとっても、すべてのプログラミングに共通する基本的な考え方やコンピューターの知識、考え方や調べ方を学べるので、最初に取り組むコースとしては最適だといえます。

よくプログラミングを身に着けるのには”写経”が必要だといいますが、まさに最初はよく読み、書き、改変するという取り組みを繰り返すのが一番の近道です。

通学コースの生徒にはコーチがすぐそばにいることはもちろん、ネットコースの生徒にとってもライブ授業下におけるコメントや質問掲示板も用意されているため、サポート体制はしっかりしています。安心して取り組むことができます。

この生放送は週2回放送されており、リアルタイムで質問をして答えてもらうことが可能です。放送が終わった後も、後に授業動画として利用可能です。

入門コースのカリキュラム

1.Webプログラミング入門(HTML/CSS/JavaScript)

まず、webページを作成する基礎となるHTML/CSSを学びます。次にJavaScriptを学ぶことで動きのあるwebページを作成します。

授業で作成するアプリ

  • YouTubeやGoogleMapを埋め込んだ自己紹介ページ
  • 時間あてゲーム
  • CSSを使ったアニメーション
2.Linux開発環境構築

Linuxとは、WindowsやMacと同じOSの種類の一つです。Linuxを使って、プロのエンジニアが使っているものと同じ開発環境を構築しながらコンピューターの仕組みを学びます。

また、最近よく耳にするかもしれませんがGitやGitHubという、エンジニア同士でバージョン管理したりソースコードを共有したりする方法も学習します。

授業で作成するアプリ

  • ニコニコ動画のランキングを自動収集するプログラム
  • チャットサーバー
3.サーバーサイドプログラミング入門&実践

Node.jsを使ってWebアプリの開発を行い、実際にインターネット上に公開します。それにあたり、アプリのセキュリティー強化の方法も学びます。

授業で作成するアプリ

  • 都道府県の各年度の人口を集計するプログラム
  • Slackのチャットボット
  • 匿名掲示板

大まかな流れは上記のとおりです。

これを終えると、Web企業でアルバイトやインターンが可能になり、実際にこれをきっかけに就職する生徒は数多くいるようです。

N予備校でのプログラミング授業~入門コース終了後~

入門コースを学習後も、多様な学習ツールが用意されています。

大規模Webアプリコース

入門コースで身につけた知識を使って、より本格的なWebサービスの開発をするためにScalaというプログラミング言語を学習します。

ScalaはJavaScriptより高度なプログラミング技法が使われているため、この言語を学ぶと、より便利で保守性も高い大規模なアプリを開発できるようになるのです。

わかりやすく説明すると、Scalaには

  • オブジェクト指向プログラミング…複雑な機能を大人数で開発できる
  • 関数型プログラミング…複雑な処理をより簡潔に表現できる
  • 並行処理プログラミング…サーバーの台数を減らすことができる

この3つの技法が使われています。これらの技術により画像変換サービスや、ニコニコ動画のような投稿型のサービスを作ることが可能になります。

スマホアプリコース

このコースも入門コースを受講前提での学習となっています。スマホアプリは私たちにとって非常に身近な存在です。日常的に使っている、生活に直結しているソフトウェアです。スマホアプリの開発を学ぶことにより、自分たちが望むものを実際に形にするための知識が身に付きます。

スマホはソフトウェアでありながらハードウェアやOSの機能と密接につながっているため、開発においてはWebアプリとはまた違った技術が必要になってきます。

AndroidではJAVA,iOSではSwiftというようにプラットフォームによって使用言語が異なります。自分の手持ちのスマホまたは得意な言語で選択するといいでしょう。

どちらにしても、開発用のIDEの使い方、画面の作り方、UIの工夫の仕方などスマホ特有の開発手法について学んでいき、まずは簡単なアプリを完成させます。

次に、Webサービスと連動できる本格的なアプリを作っていきます。これにより通信やデータの永続化などの実践的な開発手法を学ぶことができます。

最終的にアプリを公開して一般ユーザーに届ける方法も学べます。

機械学習コース

機械学習コースとは、読んで字のごとく、機械に人間のような学習機能を持たせることを目的としています。

最近”人工知能”や”AI”という言葉をよく耳にするかと思いますが、人工知能とは人間の知能をコンピューター上で表現したものを指します。この人工知能を作るうえで必要な技術の一つに、機械学習が挙げられるわけです。

大まかに説明するとこのコースでは、以下の2つをまず学びます。

  • Python
  • 数学

Python(パイソン)とはプログラミング言語のひとつで、科学計算を効率的に行うライブラリが充実しています。コードが読みやすいのが特徴で、機械学習を学ぶにあたって初学者でも取り組みやすいということで人気があります。当コースではPythonの基本文法や、科学計算のためのライブラリ使用方法まで学べます。

機械学習を理解するにあたり、基礎的な数学の知識が必要になります。数学といっても機械学習に必要な知識はそれほど多くはないため、最低限必要である”行列”や”偏微分”の考え方を身につけます。

この2つを学んだ後、様々な問題を機械学習で解決していきます。

機械学習は大きく分けて3つの学習に分けることができます。

  1. 教師あり学習ー分類・回帰
  2. 教師なし学習ークラスタリング
  3. 強化学習ーディープラーニング

これらの方法を使って用意されたタスクの解決を試みていきます。機械学習において、前もって学んだPythonを使うことで、よりシンプルに問題解決に取り組むことができます。

ここまでくると専門的過ぎて難しく感じるかもしれませんが、まずは全体像を掴むことが大切なので頑張って取り組んでみてください。

講師はどんな人?

N高校プログラミングコースの講師は、主にドワンゴで活躍しているトップクリエイターです。

有名どころとしては、ニコニコ動画の開発に携わった吉村総一郎氏や、技術系コミュニティ『Node.js』を立ち上げた清水俊博氏などが挙げられます。

N予備校のメリット・デメリット

ここでは、通学コース・ネットコース共通で使用するN予備校のアプリについて、メリット及びデメリットを紹介していきます。

メリット

実践的な知識が身につく

プログラミングの基礎を学べるサービスは数多く存在しますが、現場で実際に使えるほどの知識が身につくほどの実力はなかなか難しいところがほとんどです。

その中でもN予備校では、実際に現場で使える濃い知識が身に付くため、就職時にも役に立ちます。

例えば、高校生がNode.jsやScalaを使っていたと聞けば面接担当者もおそらくびっくりするでしょう。

端末を選ばないで済むから復習に便利

N予備校はアプリなので、パソコンだけでなくスマホやタブレットでも学習可能です。

授業の復習を電車で移動中に行うなど、効率的に学べるスタイルが魅力です。

デメリット

人によっては内容が難しい

もともとN高校プログラミングコースは、ドワンゴがエンジニアとして採用したいと思えるほどのレベルに育てるために作られているので、入門コースからであっても、難易度が高いと思う人はいるようです。

難易度は高い分、知識が身につくと企業ですぐに働けるほどの実力が身につくため、わからないところは面倒くさがらずに講師に聞いて、根気よく続けることが大事ですね。

N高校プログラミングコース|通学コースのメリット・デメリット

メリット

コーチが手厚くサポートしてくれる

通学コースだと、予備校アプリを使っていたとしても、そばで教えてくれる存在があるため、勉強で詰まってしまってもしっかりフォローしてくれるので、素晴らしい環境だといえます。

学習に必要な器具や専門書が用意されている

前述したように、N高校では自分の学びたいことを学べるため、様々な学習ツールが用意されています。

例えば3Dプリンター、はんだコテ、レーザーカッター、その他電子部品、たくさんの専門書、貸出PCなど、あらかじめ用意されている中での勉強は非常にはかどります。

デメリット

ネットコースに比べ費用が高額

プログラミングの通学コースは、授業料が年間100万円以上するため、ネックに感じる場合もあるかもしれません。高額ですが品質はかなり高いので、よく検討することが必要です。

N高校プログラミングコース|ネットコースのメリット・デメリット

メリット

時間や場所を選ばず学習できる

これはプログラミングコースに限らず、すべての通信教育においていえることですが、一番の魅力だといえます。ただN高校はネットコースであっても、ウェブ上で講師や他生徒とコミュニケーションをたくさん図れるので、孤独を感じることも少ないでしょう。

学費が安い

ネットコースは3年間で65万円なので、通学コースに比べると非常にリーズナブルです。

デメリット

主体的に取り組める自己管理能力が必要

N高校に限らず、どの通信教育においてもいえることですが、時間も場所も自由な分、自主的に取り組むことが必要です。N高校は通信制といっても年5回登校日があるので、実際にほかの生徒と顔を合わすことができます。普段は、Slackをマメに活用してコミュニケーションをとることが必要ですね。

N高校プログラミングコース|卒業後の進路は?

N高校プログラミングコース卒業後は、難関大学合格者が多数輩出されています。

大学合格実績

2019年
  • 筑波大学…2名
  • 慶應義塾大学…8名
  • 立教大学3名
  • カリフォルニア大学サンタバーバラ校1名
  • その他多数
プログラミングコース インターン実績
  • ・株式会社メルカリ
  • ・クックパッド株式会社
  • ・JRCエンジニアリング株式会社
プログラミングコース 内定実績
  • ピクシブ株式会社
  • 株式会社ZOZOテクノロジーズ
  • 株式会社インターファクトリー
  • JR東日本メカトロニクス
  • 株式会社アイスタイル

まとめ

いかがでしたでしょうか。N高校プログラミングコースでの学習はかなり専門的な知識が身につくということがお分かりいただけたかと思います。通学コース・ネットコースから選べるということからも、それぞれのメリット・デメリットを参考にしながら検討してみてください。

 

関連記事

[blogcard url=”https://webhack.jp/web-service/%e4%b8%ad%e5%ad%a6%e7%94%9f%e3%83%bb%e9%ab%98%e6%a0%a1%e7%94%9f%e5%90%91%e3%81%91%e3%81%a9%e3%82%93%e3%81%aa%e6%95%99%e5%ae%a4%e3%82%92%e9%81%b8%e3%81%b9%e3%81%b0%e3%81%84%e3%81%84%ef%bc%9f%e3%81%8a/?preview_id=6210&preview_nonce=9cf840b4a0&post_format=standard&_thumbnail_id=6254&preview=true”] [blogcard url=”https://webhack.jp/programming/%e3%83%97%e3%83%ad%e3%82%b0%e3%83%a9%e3%83%9f%e3%83%b3%e3%82%b0%e3%82%b9%e3%82%ad%e3%83%ab%e3%82%92%e8%ba%ab%e3%81%ab%e3%81%a4%e3%81%91%e3%81%a6%e5%89%af%e6%a5%ad%e3%81%ab%e6%b4%bb%e3%81%8b%e3%81%99/?preview_id=6445&preview_nonce=0f99db4bf7&post_format=standard&_thumbnail_id=6867&preview=true”]