Future Codersのコースマップ

プログラミング習得を目指す人のゴールはそれぞれです。

  • アプリが作れるようになりたい
  • Webシステムを構築したい
  • ホームページを作りたい
  • 会社の面倒な作業を自動化したい
  • 特に明確なゴールはないけどプログラミングができるようになりたい
  • ...

Future Codersでは受講者の希望に沿ってレッスンを進めてゆきます。最初は地味な作業が続くことも少なくありません。そんなときにもゴールを見失わないようコースマップを作成してみました。

コースマップ

少々複雑な図なので順番にみてゆきます。

スタート地点

図の最下段にあるProcessing、HTML/CSSから見てゆきましょう。

プログラミング (Processing)

プログラミングを習得するといろいろなことができるようになります。ひとりでも多くの方に「自分のイメージしたものを形にできる喜び」を体験をしてほしいと思っています。

機械学習やAI、IOTやゲームといった華やかなところが注目されがちですが、いきなり実を収穫することは困難です。消化不良をおこして習得できなかったという結果になりがちです。何事もまず基礎が大切です。
自分が考えるプログラミングの基礎的な要素を列挙します。

  • 計算の基本 = 四則演算
  • データ型 = 変数、配列、二次元配列、リスト、辞書…
  • 制御構造 = if文、for文、関数…
  • オブジェクト = クラス、メソッド、プロパティ、コンストラクタ…
  • 入出力 = 画面への描画、イベント
  • ...

これらの基礎的要素はどの言語(C#、Java、Python、JavaScript…)でも必要になります。Future Codersでは基礎習得のために、Processingを推奨しており、以下のテキストを使用しています。
book9 book8
手を動かしながら試行錯誤するプロセスを通して、実際に使えるスキルを習得することを目指しました。

ProcessingはMITメディアラボでアーティストのコンテンツ制作用に開発されたこともあり、わかりやすく、最初にプログラミングに触れるにはとても良い環境だと思います。基礎の習得は地味な作業になりがちです。「IOTや機械学習をやりたいのに…」と思われる方もいるかもしれませんが、まずは一通り基礎を習得するのが、長い目で見ると最短経路になると思います。

ホームページ (HTML/CSS)

ホームページを作成するだけであれば、プログラミングに関する知識はあまり必要ありません。HTMLやCSS、さらにBootstrapなどのフレームワークを習得すれば、見栄えの良いページを作成できるようになります。

ホームページ制作・管理のデファクトとえばWordPressです。WordPressはテンプレートが充実していることもあり、プログラミングができなくてもかなりのことができます。既存の枠組みの中で情報発信するのであれば、HTML/CSSがわかって、WordPressが使えれば十分目的を達成できるでしょう。

ただ、少しでも標準と異なることをしようとすると、敷居はいきなり高くなります。PHPを使ってデータベースから情報を取得してHTMLページに埋め込んだり、jQueryを使ってページに動きをあたえたりする必要性に迫られるかもしれません。こうなるとプログラミングスキルがないと太刀打ちできません。

次のステップ

プログラミングの基礎が習得出来たら、自分の興味に適した言語・環境を選択するのが良いでしょう。

  • Unityでゲームを作りたいならC#
  • Androidでゲームを作りたいならJava
  • 機械学習やIOTをやりたいならPython
    といった具合です。

ただ、Webアプリになると必要な要素はさらに増えてきます。

  • TCP/IPやHTTPといったネットワークに関する知識
  • データベースへのアクセス
  • HTML/CSS/JavaScriptといったホームページ作成に関する知識
  • BootstrapやjQueryといったフレームワークやライブラリ
  • サーバ側の処理に関する知識(Python, node.js)
  • Vue.js/Angular/Reactといったフレームワーク
  • Web-APIの呼び出し、実装
  • 各種クラウドサービス
  • ...

中々これらすべての範囲をカバーするのは大変で、これら全てに精通する技術者は「フルスタックエンジニア」として一目置かれるほどです。全分野の達人になる必要はありませんが、だいたいどんなことをするのかは把握しておく方が望ましいでしょう。

Webアプリ実装に必要な分野を効率よく習得するためのテキストを執筆しました。通学者の方には既に使用していただいております。出版の企画がとおりましたので、今年中には何らかの出版物として公開できると思います。