Skip to content
This repository has been archived by the owner on Nov 27, 2022. It is now read-only.

Latest commit

 

History

History
98 lines (67 loc) · 4.72 KB

overview.md

File metadata and controls

98 lines (67 loc) · 4.72 KB

Course Overview

Book for the Node.js course, that was held in the Metropolia University of Applied Sciences, Helsinki, Finland, during Autumn 2014.

It should be noted that throughout this course, the Node.js version in question is 4.2.x.

Lectures

Lectures were held in Bulevard Campus, class room U423, every Tuesday at 16:40 - 20:45.

Any questions that might come up during or between the lectures, please open an issue if you feel that the subject would be useful for everyone.

  1. Introduction to Node.js and JavaScript
  2. GitHub forks and pull requests
  3. Modules and npm
  4. Code validation, conventions, linting
  5. HTTP, Connect, Express
  6. Common task runners
  7. Unit testing, Jasmine, PhantomJS
  8. Automation and continuous integration
  9. Package dependencies
  10. Front end third party dependencies and Code coverage
  11. Web performance
  12. More about unit testing and code coverage
  13. Security
  14. Database
  15. Heroku and other free hosting services
  16. Examples for previous tasks
  17. Feedback on the projects

Assignments

The course contains four assignments, which are given in three weeks cycles. Each assignment should be returned in two weeks when it has been given, preferably via GitHub.

  1. First assignment
  2. Second assignment
  3. Third assignment
  4. Fourth assignment

The projects which are used for completing the assignments, are listed here.

Presentations

Each lecture contains two presentations made by student. Each presentation can last about ~15 minutes.

Presentation subjects are divided according to the themes of each lesson and assigned to the given students according to their own wishes. Please open a pull request for marking your presentation.

Subjects, presenters and dates.

Once a presentation has been held, the material should be linked in the above list.

Pre-recorded presentations

Each lecture contains one or two relevant presentations that are presented by inspiring people around the Node.js community.

Based on the contents of the presentations, each subject has quizzes and exercises.

Targets defined as course delivery

  • The student is able to recognise the possibilities available via Node.js in a user interface development.
  • The student can understand the meaning and reasoning for tools such as Grunt, Gulp, Bower and Jasmine in order to reduce the time used for repetitive tasks and to increase code quality.
  • The student can create small scripts and plugins that can be used via command line.
  • The student can publish their own tools and keep them up to date via version control systems.
  • The student learns how to use GitHub service for group work.

Evaluation criteria

Each student is evaluated according to the following criteria, based on their returned assignments, presentations and other studying activities during the lessons.

Modest

  • The student can install Node.js and its related tools and applications
  • The student can run existing Node.js tools from the commandline
  • The student can create simple applications and to use them
  • The student can understand how modules properties and methods are shown to third party scripts
  • The student can understand the basics of unit testing

Good

  • The student can publish their own tool to the npm registry
  • The student can create tests for their own tools/plugins
  • The student can use the Node.js API efficiently and find methods that work for the given task

Brilliant

  • The tools that the student has published have continuous automated testing
  • The student is able to update their own tools via version control system
  • The student can grasp what third party plugins can achieve and can use them efficiently in their own project
  • The student is able to take part in the development of other tools via pull requests