意外とたくさんの人に見られているので内容が古くなっている箇所を徐々に修正していきます、お待ち下さい!
未経験者が0からWebサービスを開発しリリース、運用まで出来るだけの技術を身につける為、必要な学習内容をまとめます。
以下のアカウントの準備が必要です。
Qiita はGoogleアカウントやGitHubアカウントがあれば簡単に作る事が出来ます。
今後、様々なサービスのアカウントが出てきますが、なるべくGoogleアカウントやGitHubアカウントで登録するようにするとアカウントの管理が楽になるのでオススメです。
反面不正利用された時のダメージが大きいので、各アカウントには二段階認証の設定を行っておきましょう。
特にAWSが不正アクセスされると、身に覚えのない金額を請求されたりするリスクがあるので必ず設定を行っておく事をオススメします。
参考までに役に立ちそうなリンクを載せておきます。
個人的にはMacをオススメします。 理由としては、以下の点が挙げられます。
4に関してはWindows 10からBashシェルが使えるようになったらしいので、ともかくとしても、3に関しては今後もサポートされる可能性は低いでしょう。
これは個人の主観ですが、Web開発においてはまだまだ Windows < Mac
だと筆者は感じています。
新たに購入する際のスペックの選び方ですが、CPU、SSDは低めに抑えても、メモリは最低でも16GB積んでおく事をオススメします。
下記の通りです。
全ての項目に言えますが座学よりも手を動かす事を重視します。
よって無理に暗記したりする必要はありません。記憶する事は最小限に、手を動かしながら自然と身につくそんなカリキュラムの作成を目指します。
各学習内容はディレクトリごとに分かれてマークダウン形式にまとめてあります。
task.md
というファイルがその項目における課題でここに載っている成果物を提出し、メンターのレビューを終えたら、その項目は終了となります。
以下の資料を見て、HTML、CSSの概要を理解します。
その後 Progate や ドットインストール で実際に手を動かします。
最終的に自身の自己紹介ページを作成して完了とします。
この時点ではあまり拘らずに概要を理解したら速やかに次のステップに進みましょう。
linux 配下の資料を見てLinuxの概要とコマンドに慣れます。
ここには載っていませんが、Git と呼ばれるバージョン管理システムに対する理解も重要です。
以下のサイトを参考にGitやGitHubの使い方を理解しましょう。
環境構築したサーバサイド言語を使って基本的なアルゴリズムとデータ構造を理解します。
MySQLを使う予定です。 インストール方法やコマンド操作の方法、index等の用語を理解する、サーバサイド向け言語からMySQLを利用する方法。
簡単なアプリケーションを作りながら設計全般について学びます。
実際に使えるWebサービスとして公開します。
PR大歓迎です。(誤字、脱字が結構多いので修正大歓迎です)
もしくは こちら からissueを作成して頂いても問題ありません。
issueの内容は「こういう観点も必要」等の内容も大歓迎です。(ただし筆者の力量不足でそれが叶えられない可能性はあります…)
PRを作成する前に、textlint
による文書校正を行って下さい。
以下のコマンドで実行が可能です。
yarn run lint [実行対象のファイル名、もしくはディレクトリ名]
yarn run lint:fix [実行対象のファイル名、もしくはディレクトリ名]
yarn run lint:all:fix
を実行すると全てのファイルに対して自動修正が行われます。
最低限こちらのコマンドを実行してからコミットをお願いします。
校正ルールに関しては以下の内容を利用しております。
Atomを使っている場合、linter-textlint をインストールするとリアルタイムで校正を行ってくれるのでオススメです。
既存文書でもtextlintに違反しまくっている文書が多々あります。
この辺は時間があれば徐々に修正していきますのでご了承下さい。(それよりもカリキュラムを最後まで作り上げる事を優先したいので)
※ textlintの導入に関しては 快適なMarkdown編集環境 という記事を参考にさせて頂きました。