Note: Back-end has concluded for 2019/2020. Next year will be a new, changed, curriculum. Back-end scores an
7.6
in the student survey! Have a look at the/examples
folder to see some results from this year.
The course Backend is given at @CMDA in 2020 between February 3 and June 26.
- Course: Backend Development (
2000BAD_16
) - Coordinator: Danny de Vries - d.de.vries4@hva.nl
- Lecturers: Danny de Vries (@dandevri), Laurens Aarnoudse (@razpudding) and Randy Huls (@randyhuls)
- Credit: 3 ECTS
- Academic year: 2019-2020
- Period: Quarter 3 (spring)
- University: Amsterdam University of Applied Sciences
- Programme: Communication and Multimedia Design (full time bachelor CROHO:
34092
) - Faculty: Digital Media and Creative Industries
- Language: Dutch instructions and English resources
- Entry requirements: N/A
In Backend we peek behind the curtains and inspect what’s behind the web. You build web apps with Node.js, communicate with HTTP, and store data in a database with MongoDB. In this course you’ll advance your web dev skills. You’ll learn to use computers to actually make what you design work: people can actually fill in forms, like things, and upload files.
Backend is an elective course given in Quarter 3 (spring) after the core curriculum of our programme, building further on knowledge acquired in Internetstandaarden, Inleiding Programmeren, and Blok Web.
This course is chosen alongside Frontend 2 and Project Tech, together making up Block Tech. If you’d like to continue with web development after this course, do a tech internship, choose the Tech Track for the fall semester next year, and pick Minor Everything Web in the spring semester after that.
Back-end is part of the CMD Amsterdam design & build space (technical course) that focusses on Conceptualizing (2), Imagining and creating (3), Multidisciplinary collaboration (5) & Research (9) competences.
- GitHub — Main source of information, slides, assignments and more
- Slack — General chatter and Q&A
- Brightspace — Schedulers, rubrics and grading
Read more about privacy, personal health, teamwork or inclusivity in the
/docs
folder.
If you have questions:
- Read the manual for the technology in question (Git, GitHub, Node, npm, express, MongoDB)
- Browse examples
- Search StackOverflow
- Use a search engine like DuckDuckGo
- Ask questions on Slack
- Ask a student-assistant on Slack
Frequently asked questions can be found in Brightspace under
Administration > FAQ
.
This course doesn't have office hours. Teachers have limited time to help you outside of class. Attendance to class is not compulsory. 80% of success in this course is showing up, so show up and come prepared with your questions. Don't hesitate to ask questions or feedback during class.
The main goals in this course:
- You can build web apps with Node
- You can use packages from npm
- You can communicate over http
- You can render data server-side with templating
- You can store data in a database
In practice you’ll learn to:
- Understand Node principles (week 1)
- Use packages from npm (week 1)
- Use web frameworks like express (week 1)
- Communicate over HTTP (week 2)
- Render data server-side with templating (week 2)
- Upload data and files to servers (week 3)
- Request data from clients (week 3)
- Store data in a MongoDB database (week 4)
- Use localStorage to store data client-side (week 4)
- Deploy your application for production (week 6)
- Error handling and security enhancements (week 7)
The below table breaks down the general time needed per week.
Week | Effort | Topic | Activities |
---|---|---|---|
0 | NaN | getting started | getting started |
1 | 9:20h | node & express | lab, lecture, assignments |
2 | 9:20h | query & template | lab, lecture, assignments |
3 | 9:20h | http | lab, lecture, assignments |
4 | 9:20h | database | lab, lecture, assignments |
5 | NaN | assessment 1 | a1 (oral test) |
6 | 13:20h | deploy | lab, work on prototype |
7 | 13:20h | prototype | lab, work on prototype |
8 | NaN | assessment 2 | a2 (oral test) |
Check
rooster.hva.nl
for exact class dates
Task | Weight |
---|---|
Assessment 1 (individual) | 60% |
Assessment 2 (team) | 40% |
Total | 100% |
if (!a1 && !a2) {
grade = 'GR'
} else if (a1 < 5.5 || a2 < 5.5) {
grade = 1
} else {
grade = (a1 * 0.6) + (a2 * 0.4)
}
This course is given at Communication and Multimedia Design, a design bachelor focused on interactive digital products and services. CMD is part of the Faculty of Digital Media and Creative Industries at the Amsterdam University of Applied Sciences.
This course has a Code of Conduct. Anyone interacting with this repository, organisation, or community is bound by it.
Staff and students of the Amsterdam University of Applied Sciences (Hogeschool van Amsterdam) are additionally bound by the Regulation Undesirable Conduct (Regeling Ongewenst Gedrag).
MIT © Danny de Vries, docs and images are CC-BY-4.0.