本記事はN予備校プログラミングコースアドベントカレンダーの記事です。
N予備校でプログラミングを学んでいる方や、N予備校のプログラミング教育に興味がある方に向けて書かれています。
執筆者
ドワンゴの教育事業部でプログラミング講師をしている小枝と申します。
経歴としては情報通信インフラ業界で2年、SIerで開発とコンサルを5年、ドワンゴではWeb開発を4年、エンジニア人事採用を2年を経て、現職のプログラミング講師は3年目になります。
概要
N予備校プログラミングコースでは、毎週行っているプログラミング授業のほかに毎月1回の頻度でプログラミングコース座談会という番組を行っています。
この番組では、授業中での回答が難しい質問や悩み、エンジニア就職に関する話など、授業ではメインで扱うことが難しい話題を取り扱っています。
去年の12月から始めた施策ですが満足度は継続的に高評価を維持しており、座談会の後の授業はコメントが活発になっているため、今後も継続して行っていきたい取り組みとしています。
今回はそのプログラミングコース座談会で話したことを振り返ってダイジェストでご紹介したいと思います。配信のアーカイブはN予備校で見れるほか、一部のアーカイブはN予備校のYouTubeチャンネルにて無料公開されています。
資料は Speaker Deck にて公開しています。
2020年12月
トークテーマ(回答した質問)
- 授業に追いつけていないので、コースの重要なポイントをピックアップしていただけたらうれしいです。
- yarnの使いどころ(initやらaddやらの使い分けも)がよく分からないまま写経だけしてる。
- (req , res)が引数になるやつ、だいたいよく分かってない。.on とか .endとか。
- GitHubの使い方の復習をしてほしい
- ドワンゴで働く方法を教えてください
話したこと
記念すべき第1回目ですが、受講者からの質問への回答がメインテーマになります。
12月はプログラミング入門コースの後半になり、かなり難しくなってきている頃です。「追いつけないので要所を教えてほしい」や「教材にあるわからない技術やコード」についての質問回答を行いました。
回答としては**「授業で講師が飛ばしたところは重要でない」、「過去の内容でもわからないところがあったら授業中に質問してよい」、「そもそも1年で走り切るのは難しい難易度なので、わからないところが多ければ2年目に持ち越す気持ちで良い」という話をしました。
ドワンゴで働く方法についての回答としては、コーディングテストがあるのでしっかり自分でアプリを作るなりして書く力をつけておくこと、ポートフォリオサイトを作ることなど、アウトプットの力を高めるようアドバイスしました。またエンジニアとして任される具体的な仕事の例**を、新人アルバイトレベルからベテラン社員レベルまでの段階に分けて解説しました。
2021年1月
トークテーマ(回答した質問)
- Webサービスを作っても、使われずに閑古鳥が鳴いて
います。どうすれば使われるwebサービスに育ちます
か? - intro-curriculum-3020あたりから、どのファイルが
なんの働きしてるのかよく分かってない。 - Gitを使ったGithubのリポジトリの作り方がよく分か
らないので、教えてもらいたいです - フレームワークの習得のコツを教えて下さい。
話したこと
技術的な質問への回答のほかに、自作アプリのプロモーション周りの話をしました。
アプリがウケるかどうかは正直に言ってギャンブル性が高い部分であることを前提に置きつつ、自分がユーザーになれるアプリや自分の好きな事、文化やユーザーの気持ちがわかるアプリを作ることをおススメしました。
またCSSフレームワークを使ったモバイル対応やOGPなどのSNS対応、サービスの導線やサービス名を分かりやすいものにするなどWebサービス制作に共通する最低限の対策を説明しました。
2021年2月
トークテーマ(回答した質問)
- フレームワークの習得のコツを教えて下さい。フレームワークをいくつも使いこなせる人はどうやって習得しているのでしょうか?
- 他のプログラミング言語について概説してほしい
- ライブラリを選ぶときに、都合よくライブラリを比較できるような情報源はありますか?
- 公式ドキュメントが読めるようになるヒントを教えていただきたいです。
話したこと
2月で授業も大詰めになってきて、質問のレベルも上がっています。
フレームワークの意義やフレームワークが解決する課題についての説明や、ライブラリの選び方について解説しました。
ライブラリは利用ユーザー数やStar数で評価したり、ライブラリのオーナーが大企業かどうかなどで今後しっかりメンテナンスされそうかなどを評価できると説明しました。
N予備校で教えているプログラミング以外の言語については、PYPLを見ながら言語の特徴や使われている分野などを説明しました。
2021年3月
トークテーマ(回答した質問)
- スマホ対応・レスポンシブデザインの話を何か聞きたいです!
- プログラミングを使う系の仕事・アルバイトにどのような種類があるのか知りたいです!
- Vue入門 -TODOアプリ10分チャレンジ
- エンジニアの方々の日々の休憩方法を知りたいです!
話したこと
3月はゲストにN予備校教材アルバイトの方をご招待して、レスポンシブ対応やVue入門について喋っていただきました。
プログラミングやエンジニアリングに関わる職種についての質問回答では、開発系の職種やスペシャリスト系、サポート系の職種や管理職・リーダーポジションに渡る広い範囲の職種を紹介しました。
またドワンゴの**エンジニアの働き方(裁量労働)**についても実体験ベースで紹介しました。他社についてはわかりませんが、ドワンゴのエンジニア職はうまく裁量労働制が機能しています。(コアタイムや残業の強制、8時間の拘束などはありません)
2021年4月 新入生向けオリエンテーション
トークテーマ(回答した質問)
- プログラミングの世界
- プログラミングを学ぶとできるようになること
- プログラミングができると...
- N予備校プログラミングコースとは
- N予備校プログラミングコンテストについて
- プログラミングによくある質問
話したこと
4月はプログラミング授業が1周して(N高・S高の)新入生が入ってきます。授業のカリキュラムも最初からとなり、新しくプログラミングを学ばれる方にもおすすめの時期です。この月は新入生向けオリエンテーションとして、プログラミングの世界についての解説をメインに行います。
プログラムは日常のどんなところで活躍しているのか、プログラムを学ぶと何が作れるのか、プログラミングができるとどういう仕事ができるのかなどを説明します。またN予備校プログラミングコースの概要やN予備校のアプリの使い方、授業についての説明なども行いました。よくある質問への回答コーナーでは、「英語や数学が全然できないですが大丈夫ですか?」、**「N予備校生の具体的な就職実績などはありますか?」**などの質問に回答しました。
2021年5月
トークテーマ(回答した質問)
- 講師からの質問コーナー
- 受講者アンケート: プログラミングを始めたきっかけは?
- 受講者アンケート: プログラマーと聞いて思い浮かべるイメージは?
- 自分の好きなことのサービスを考えてみよう
話したこと
この月は今までと趣向を変え、N予備校講師サイドから受講者への質問を行いました。
N予備校のシステムにはコメントやアンケート機能があるため、プログラミングを始めたきっかけやプログラミングやプログラマーに対するイメージなどを質問しました。結果が全員に共有されるため講師陣が受講者を理解するだけでなく、受講者が他の受講者を知るための機会にもなったので、面白い回でした。
また余った時間ではコメントで募集したジャンルのサービスを実際に考えてみるようなブレストやディスカッションに近いコーナーも開きました。
2021年6月
トークテーマ(回答した質問)
- リアルタイムランキングのようなものはどうやったら作れますか?どんなことを考える必要がありますか?
- 資格取るのと何か物作るのはどちらが就職で評価されますか?
- 開発における職種間の分担や、関わり方ってどうなっているのですか?
話したこと
6月は初心に戻り、質問回答コーナーをメインに行いました。
リアルタイムのランキング集計を実現するアーキテクチャやプロセスのフローをスライドベースで解説したり、実際の開発現場がどのように作業分担をしているかの解説をしました。実際の社内での作業分担、業務分担は組織構造やチームの作られ方によってバラバラであることが多く、中にはある程度過剰に関わっていかないとうまく進まないプロジェクトもあります。チームの担当範囲や責任を理解しておくことは重要ですが、それに囚われずプロジェクト・プロダクトの成功を見据えた動きをしていくのが重要であると解説しました。
資格を取ることとアウトプットをすることの重要性については、想定するキャリアや進路によって変わります。SIerなど自分の実力を客観的に評価してもらう必要がある職種の場合は資格や学歴などが重要になり、一方で自社開発など内製が多い仕事では資格などは余り重要ではなくなるので、アウトプットで評価されがちになります。
2021年7月
トークテーマ(回答した質問)
- あなたのいいところ診断アレンジしてみた
i. 装飾がんばってみた
ii. あなたのオススメの授業診断
話したこと
7月は夏のプログラミングコンテストの兼ね合いでWebアプリのアレンジ方法について紹介しました。
「あなたのいいところ診断」というプログラミング入門コース第一章で制作する課題アプリについて、2人の講師が別々のアレンジ方法でアレンジしたものを紹介および解説しました。一方はデザインやコンセプトを変えるアレンジ、もう一方は機能を変更・拡張するという別々の観点でアレンジし、アイデアが思いつかなかったり1からアプリを作ることが大変な人は是非教材のアレンジ作品でよいので積極的にコンテストに応募してほしいと案内しました。
2021年8月
トークテーマ(回答した質問)
- プログラミングのモチベーションのあげかた
- プログラミング情報収集のコツ
- なんで自力でWebサービスを作った経験が必要なの?
- 趣味サービスの新規開発を追体験してみよう!
話したこと
スタートから4ヵ月が経ち、入門コースの2章に入りプログラミング学習のモチベ維持が難しい時期に入ります。
モチベーション維持の方法として、自分の好きなもののアプリを作ってみる、プログラミングを一緒に学ぶ友人を作る、プログラミングは手段であり手段を学んだ先を想像してみる、目標を持って学習するなどのアドバイスを行いました。
プログラミング情報収集のコツとしては、コミュニティに参加する、プログラミング友達を作る、フィードを設定するなどの受動的に学べる環境づくりをお勧めしました。
またゲストのrabeneko先生より新規Webサービス開発のコーナーにて、アイデア構想から設計、実装、運用までの一連の流れの解説がありました。開発を進めていく中での仕様調整や妥協の仕方など実践的な観点についても説明しました。
2021年9月
トークテーマ(回答した質問)
プログラミング講師のプログラミングキャリア紹介
- 小枝先生編
- 津野先生編
話したこと
この回では2人のプログラミング講師のプログラミングに関する生い立ちを時系列で解説しました。
小枝先生は小学生時代にDosに触れ、プログラミングは中学3年生から始め、高校ではプログラミング漬けの日々を過ごします。就職はネットワーク系でプログラミングは使いませんでしたが、転職してSIerになりプログラマーとして仕事を始めます。その後ドワンゴに転職して開発経験と人事経験を経てプログラミング講師になっています。
津野先生は高校時代にホームページ作成に夢中になり、高校三年生で応用情報技術者試験に合格。大学時代は遊んでいたが、3年になってから心を入れ替えて制作したWebサービスが大当たりし、その実績を基にドワンゴに入社。入社直後は周りのレベルの高さに圧倒されつつも、勉強会に参加したり趣味でプログラミングを行うなどで着実に成長し、2020年よりプログラミング講師に就任。
2021年10月
トークテーマ(回答した質問)
- オブジェクトって何??
- 非同期処理とは
- JSDocってどうして必要なの?
- JSDocで「ちょっとだけ」型に触れてみよう
話したこと
この回では挫折者が多かったオブジェクトの概念や非同期処理、書く必要性がわかりにくいJSDocについての解説を行いました。
オブジェクトは言葉の意味が広く、様々な捉え方ができるので文脈に注意する必要があることを中心に解説。非同期処理については、まず非同期処理の必要性から解説し、文法とサンプルコードを元にPromiseの使い方やAsync/Awaitの用法を確認しました。
JSDocについては型についての説明から入り、TypeScriptなどの静的型付け言語の話や型定義が曖昧なコードや仕様があることによるトラブルについて解説をしました。
2021年11月
トークテーマ(回答した質問)
- 教材制作のアルバイトはどんなことをしているのか?
- コンテスト結果ページの作り方解説
話したこと
11月は教材制作アルバイトの募集を開始したこともあり、実際に教材編集アルバイトとして働いて頂いてる方をゲストスピーカーとして、教材制作や編集の作業についての解説やアルバイトの働き方について説明をしていただきました。
また夏のコンテストの発表後だったので、コンテスト発表ページ(GitHub Pages)の作り方について解説を行いました。BootStrapテンプレートを元に画像やHTMLを変更し、審査結果のjsonデータを使って自動でコードを複製しデータを埋め込むスクリプトの紹介・解説を行いました。
2021年12月
トークテーマ(回答した質問)
進路と職業から決めるプログラミング学習
話したこと
1周年ということで少しスライドのデザインを格好よく仕上げてみました(内容はいつもとあまり変わりません)。
トークテーマはN予備校のプログラミングコースの上級コースについての案内になり、プログラミング入門コースを終えた先にある進路や職種についての解説をしました。Unityコースやネットワークコース、大規模Web開発コース、スマホアプリコース、機械学習コースなど様々な上級コースがあるので、それぞれどのような進路・職種と対応しているかを説明しています。
さいごに
プログラミングコース座談会を初めて1年間が経ちましたが、まだまだ話したいテーマや回答できていない質問がたくさんあります。N予備校は現役のドワンゴエンジニアをプログラミング講師にしているという大きな強みがあるので、この強みが最大限に活かせるような実践的な話や番組を引き続き提供していければ幸いです。
ここまで読んでいただきありがとうございました。