These resources are good for people who have had some experience in programming. The list of resources has a strong focus on the client-side (browser) programming but some bits cover the server-side (NodeJS) programming too.
These resources can be used concurrently. There is no need to do the online course first or start with the books only.
All modern browsers have built-in debuggers that show currently loaded resources (scripts, css, images, cookies fonts, etc), network requests, console output, script errors etc. It is essential to learn to use the debugger as soon as possible so you can inspect script errors and not waste time trying to guess them (as it was in the development process on IE7 in the darker times). Further references for Chrome can be found from here and for Firefox from here.
The resources above do not cover everything. For the following you need to do your own research with Google/Wikipedia/MDN:
- various browser APIs
- external libraries and frameworks
- external APIs
- structuring large programs
- build tools
- version control
- project management
- automated testing
Where to get help
If you happen to get stuck with a problem where references and Googling does not help then it might be possible to get help in IRC. There is a large
guideline of Getting help on IRC.