Webアプリケーション開発に必要なスキル
ネットワーク
How Domain Name Systems (DNS) work.
Registering and using domains.
Understanding TCP/IP.
Basic network debugging. (ex. why aren't I able to to connect to my new website? Hint: The port isn't open)
Understanding what a VPN is.
HTTPの動作
The anatomy of an HTTP transaction.
The HTTP request verbs and when the use them.
Recognize the main response codes and when to use which ones.
What a stateless protocol is and why it matters.
Recognize popular headers and how to add your own.
Working with HTTP outside the browser. (REST clients, curl, etc)
SSL, what it is, how it works, and why you should use it.
Unixシェル
Remote access using SSH.
Basic shell commands (cd, ls, cp, mv, mkdir, ...).
Learn how to use grep.
Get familiar with a command line text editor (vim, Emacs, nano, ...).
Understand file permissions and how to change them.
Learn what environment variables are and how/when to use them.
Learn how to use .bashrc
Learn how to use a package manager (apt, yum, ...)
Learn to find and read logs for your services.
Learn to manage services (start, stop, restart, ...)
Learn basic bash scripting.
Git
Learn the basic commands (init, add, commit, status, checkout, ...)
Learn to configure remote repositories.
Learn to use fetch, pull, push.
Learn to work with branches. (create, merge, ...)
Learn what rebase is and how to use it.
Learn how to resolve conflicts.
Learn how to use stash.
ブラウザの開発ツール
Learn to use the console to find errors and debug your code.
Learn to use the inspection tool to view/change your markup and CSS in the browser.
Learn how to debug Javascript (call stack, breakpoints, object inspection, ...)
Learn to inspect and debug HTTP transactions.
Learn to profile websites to identify performance issues.