Introduction

INFO 153B/253B: Backend Web Architecture

Kay Ashaolu

Introductions - Lecturer + GSI

Course Goals

  • Demystify the power of the cloud
  • Learn what is powering the web behind the scenes
  • Be able to have intelligent conversations about web applications
  • Know the challenges of building "magic"
  • Understand the trade-offs made when building "magic"
  • Learn the basics of backend web development

Course Layout

Friday Lecture 9 am - 11 am (in person)

Monday Lab 11 am - 12 pm (in person)

 

 

  • INFO 153B - Undergraduates
  • INFO 253B - Graduates
  • Both courses have the same lecturer and lab time as well as learn the same material
  • Course work differs for each class 

Course Materials

  • Bcourses - Main Information Hub
  • Discord - For announcements and communication within the class
  • Github - Where you will submit assignments, labs, and projects

Course Schedule

  • Part I of class (~10 weeks, until Spring break)
    • ​Lecture + Labs and Assignments
    • Learn the foundation of backend API
  • Part II of class (~5 weeks)
    • ​153B: Labs and Take Home Project
    • 253B: Group Project work in Labs
    • Lecture: ~ Guest speakers or live project done in class

Course Work

  • Short multiple choice quiz at lecture

  • "On-call" for lecturer

  • 2 major homework assignments building a web application

  • 5 Labs (253A), 8 Labs (153A)

  • Group project (253A), Take home exam (153A)

Grade Breakdown

INFO 253A INFO 153A
Quizzes: 10% Quizzes: 10%
On-call: 10% On-call: 10%
Labs: 20% Labs: 30%
Assignment: 30% Assignment: 30%
Group Project 30% Take Home Exam: 20%

Readings?

  • After some thought and research, we are moving away from textbook readings in the class
  • In this day, it's a bit rare for software engineers to learn new technologies by reading a book from beginning to end
  • We will use one main courses from all of our readings

 

More on Quizzes

 

  • There will be a short three question multiple choice quiz at every lecture
  • The quiz is designed to test basic knowledge of the reading 
  • This will be conducted in person via BCourses

More on "Oncall"

 

  • Starting next week, every lecture around 6-10 students will be "on call"
  • You will be assigned 1-3 videos from the class prep
  • You will also be given access to a slide presentation 
  • It would be your job before the next lecture to:
    • Write 2-3 main points for each video you are assigned
    • During lecture, being able to speak to your slides and answer question
  • Grading consists of filling out the lecture and being present to answer questions in class

Note: Lecture Schedule

 

  • 9:00 am - 10:00 am - Lecture (using slide deck populated by "on-call" students)
  • 10:00 am - 10:15 am - Quiz
  • 10:15 am - 11:00 am - Assignment in class

Assignment in class is a semester long assignment that is designed to be done in class. After every lecture there will be suggestions on what to do to move forward with your assignment. This assignment is not graded but an in-class activity

More on Labs

 

  • They will be assigned on Monday and are due Friday before lecture
  • The lab section will be dedicated in introducing these labs and giving you the chance to work on them during class and have support

More on Labs

  • Labs provide opportunity to try out what you learned
  • Labs will be graded on a simplified basis out of 10:
    • Correct: 10/10
    • Not correct, but shows significant effort: 8.5/10
    • Not correct, low to no effort: 7/10
    • No submission: 0/10
  • You will be given a github classroom link to generate your own git repository where you will save your work
  • You will submit your work submitting the link to your repo in BCourses

More on Assignments

  • Assignments must be done individually, but you can ask others for help
  • Assignments are due at before Lecture on Monday when indicated
  • The lab section before when labs are due will be dedicated for assignment help
  • Every day it is late after that we will deduct 5 points from the final score
  • You will be given a github classroom link to generate your own git repository where you will save your work
  • You will submit your work submitting the link to your repo in BCourses
  • Please contact me if you run into any issues

More on the Group Project

  • INFO 253B only
  • The group project is an opportunity to build a project you come with other students
  • Must be in groups of 4-5. There are no exceptions to this rule
  • We will form teams and ask you to draft up a proposal of what you would like to build, and we will give you feedback. Then you will build your proposal
  • There will be presentations on the last week of class before RRR week

More on the Take Home Exam

  • INFO 153B only
  • During RRR week, will be given a take home practical
  • Will be similar to an assignment, but meant to be done in 2 hours or less
  • Will have seven days to complete

Languages / Frameworks

  • Python
  • Flask
  • SQL/SQLAlchemy

Tools

  • Git and GitHub
  • Terminal
  • Docker
  • Visual Studio Code (IDE)

Technologies you will use

But Don't Worry

  • This is not primarily a programming class
  • Grades are based on the demonstration of understanding the base concepts
  • Grades are not based on extra bells and whistles, but are reserved for extra credit
  • We are here to help

Office Hours and Wait List

  • Kay's Office Hours: TBD
  • Our GSI Office hours: TBD
  • Wait list has already been resolved
  • 153B and 253B share the same 50 spots in the classroom, so even if you see that there is room in CalCentral, there may not be room
  • Depending on 253B enrollment, we could expand 153B
  • Concurrent Students if I can ask to hold until end of next week to determine space in the class

Wait List

  • Apologies, but there will be no auditing this class this year

  • Course materials will be publicly available if you ultimately are not able to enroll into the class

Questions?

Made with Slides.com