JavaScript Language Overview highlights the important features of JavaScript. (Skip the sections on classes and asynchronous programming.)
TypeScript for JavaProgrammers highlights the key differences between TypeScript and Java, namely, structural typing and type erasure.
Mozilla Developer Network (MDN) is the definitive source for JavaScript information.
typescriptlang.org is the definite source for TypeScript information.
Effective TypeScript has more advanced tips on using TypeScript. Most are beyond what we will need in this course, but if you want to learn more about the language, this is a good source.
The Mythical Man-Month by Fred Brooks
The Rise of Worse is Better by Dick Gabriel
Some context provided in: Worse is Better
The Architecture of Complexity by Herbert Simon
Retrospective on Fred Brook's software engineering advice