Week 2

Things to know & do in week 2.

  • The total workload for this course is 140 hours. In week 2, we expect you to spend 4 hours on lectures, 4 hours in the lab and 7 hours on a mix of things (quiz, required readings, peer reviews, additional lab work, etc.).

  • If you want to gain 0.25 bonus grade points, take a look at the peer-review assignment (P1). This assignment is in addition to the usual lab assignment. As in this assignment you are asked to judge the TODO app designs created by others, we enable this assignment at the end of this week (Friday evening). It is due on November 29, 11.59pm.

  • Get started on this week's lab assignment (A2) and quiz.

  • Groups in cluster C1 are assessed this week on Assignment A1. Make sure you reserve yourself an assessment spot and don't forget to upload your solution via the "Lab Submissions" link here on Blackboard.

    Groups in cluster C1 are assessed this week on Assignment A1. Make sure you reserve yourself an assessment spot and don't forget to upload your solution via the "Lab Submissions" link here on Blackboard. We use Doodle to arrange assessment spots (use your group name as participant name):

Lecture 3

  • js-lecture3.pdf

The PDF slides cover the introduction to OO-based JavaScript. The last part of the lecture slides, covering the DOM and events can be found online (the link points to slide 54; that is your starting point, ignore all earlier slides).

Required reading: Work through chapter 4 of the Web course book (ignore the contents related to CSS, focus on the JavaScript) before the Monday lecture.

Recommended activities if you are a complete beginner to JavaScript:

If you are new to all of this, do not only read the course book chapter but also work through some of the many online tutorials available - this will make you more confident when it comes to actually using JavaScript in Assignment A2.

Here are two interactive courses we recommend for learning JavaScript and jQuery basics:

Note that learning JavaScript takes time (a reason for introducing it so early in the course). Take your time. You do not have to be an expert in JavaScript to start Assignment A2.

Recommended reading:

Learning JavaScript design patterns by Addy Osmani (2014), in particular the sections on the constructor patterns (both basic and prototype) and the module pattern, i.e. those covered in the lecture.

Advanced JavaScript:

If you want to deepen your existing knowledge in JavaScript, have a look atDouglas Crockford's lectures (one of THE experts on JavaScript), available on YouTube.

Or become a JavaScript Ninja by working through John Resig's interactive Advanced JavaScript tutorial (John Resig is the creator of jQuery).

Note, that none of the advanced material will appear in the midterm/final exam, these sources are purely provided for your own advancement.

Lecture 4

  • intro-DB-RelationalModel.pdf

Required reading: Work through chapter 1,2 and 3 of the Database course book before the Friday lecture.

Recommended activities:

Watch the following video which provides you with an introduction to the history of databases.

Follow the instructions to install a simplified version of the IMDB database in your virtual machine. The database will be used during lecture and for quizzes.

Recommended reading:

*Web Resources*

SQL For Web Nerds. Section 1: Introduction - A down-to-earth introduction to DBMS and RDBMS

SQL For Web Nerds. Section 2: Data Modeling - A simple description of a relational database modeling experience

Cache is the new RAM - We will see again this piece later during the NoSQL databases lectures

Papers

An overview on relational database systems and their architecture (Hellerstein, Stonebraker, Hamilton. 2007) [PDF]

Seminal paper on relational data model (E.F. Codd. 1970) [PDF]

A summary of 35 years of datamodel proposal (Stonebraker, Hellerstein. 2005) [PDF]

Quiz W2

The quiz can be attempted once. Its content covers the lectures of week 2.

Quizzes are individual work!

Deadline: November 23, 2pm.

Lab assignment A2

Labs are team work. Make sure both team members can answer the questions of the lab assignment(s) during the assessment session - it is not the team that passes/fails the assessment, but individual team members!

The first part of the assignment asks you to write JavaScript code - if you don't know where to start, read Chapter 4 of the Web course book again: while your TODO app may be quite different from the one designed in the course book, the interactions you need to add to your TODO app are similar. You should be able to use the book's code as a blueprint for your own.

Peer-review assignment P1

This assignment is abonus assignment, worth +0.25 bonus grade points if done well. This assignment is an individual assignment, not team work. The deadline is November 29, 11.59pm. Reviews created after the deadline will not be taken into account during grading.

Video recordings: Client-side JavaScript

The two recordings cover the introduction to JavaScript and the JavaScript design patterns. Not recorded were the slides covering the DOM and events.

https://youtu.be/krvxeCDO1Yc

https://youtu.be/c2uED31mOns

Video Recordings: Introduction to Database Systems

To help you studying, we pre-recorded the core lecture content; the recordings slightly differ from the actual lecture material presented in class. Make sure to check the actual lecture slides of the class, do not only rely on the video recordings!

Why Databases

Abstractions and Languages in Database Systems

The Relational Model - Part 1

The Relational Model - Part 2