CS400D1 MEAN Application Development

CS400D1 MEAN Application Development is a hands-ons course teaching the basics of full-stack development in JavaScript and Typescript. The course provides an introduction to the architecture, development, testing, and deployment of full-stack web-based applications, primarily in the MEAN stack. Included are technologies such as non-relational data stores (i.e. mongoDB), RESTful, decoupled applications using JSON as a data transport, and web sockets. Front-end work is done in Angular, React, and back-end work is primarily in Node and Express. You’ll end up learning two languages: JavaScript and Typescript.

The stack introduces several interesting concepts that you might not have been exposed to yet in the CS curriculum, including:

  • Non-relational, document-oriented data stores
    Asynchronous, non-blocking programming using Promises and thenables
    Architectures using internal application programming interfaces (APIs)
    Use of chained and lambda functions
    Working with third-party data sources via JSON APIs
    Deploying applications in a serverless (cloud) environment such as AWS EC2 and Lambda
    Testing decoupled, API-based applications using frameworks such as Mocha/Chai and Postman

Stackoverflow’s annual developer surveys (n=100,000 in 2018) shows that JavaScript continues to be a dominant language in the industry, with Python and Javascript in the #1 and #2
position in the ‘technology I most want to learn’ category. There is strong industry
demand for full-stack developers. In this context, the course will help prepare you for this evolving workplace.

Here are the syllabus and schedule from a recent semester to give you a feel for what we cover:

CS400D1 Fall 2019 Schedule v1.0
CS400D1 Fall 2019 Syllabus v.1.0

To be placed on the wait list for Fall 2019, please use this form.