Skip to main content

Syllabus

Course Details​

Course name: Introduction to Full-Stack Development

Course number: CS 198-099

Course term: Spring 2022

Faculty Sponsor: Josh Hug

Course Number: 33156

Course Catalog Link: https://classes.berkeley.edu/content/2022-spring-compsci-198-099-grp-099

Time: There are 2 lectures every week. Students are expected to attend both lectures every week.

  • Lecture 1: Tuesday @ 6:30pm - 8:00pm pacific time
  • Lecture 2: Thursday @ 6:30pm - 8:00pm pacific time

Location: Physics 1

Course Overview​

Course Description​

Welcome to CS 198-099! This is Introduction to Full Stack Web Development, presented by Web Development at Berkeley.

In this course we cover the basics of web development. This includes everything from the fundamental frameworks that ground web development, the inner workings of the Internet itself, and many of the frameworks, technologies, and best practices that are used in the industry today.

No prior CS experience is required to participate and succeed in this course, but we do acknowledge that we cover a fairly large amount of material and that makes this course fairly heavy, even for those with prior CS experience.

In the spirit of full-stack development, we cover the three main pillars of modern web development: backend development, frontend development, and design.

Teaching Plan​

Every week you will attend 2 lectures that are held in the Physics 1 classroom, each of which are 1.5 hours long. Each week we will have either a homework assignment or a project due. Course staff will be holding office hours regularly throughout the week to provide guidance and feedback on the assignments. Towards the end of the semester your work in this class will culminate in a final project with a project group whom we will assign.

Learning goals​

By going through this DeCal, you’ll learn

  • Full-stack web development
  • Software engineering principles
  • The basics of the internet and cloud technologies
  • How to create large software projects from scratch
  • How to navigate and use popular web design software
  • How to work in a team of cross-functional engineers and much more!

Student Support​

Office Hours​

We hope you take advantage of the office hours we have scheduled this term, and we will support both in-person and remote office hours. When coming to office hours for homework or project help, there are some policies you'll need to abide by.

Please do not expect TAs to debug your code. This is not a good use of their time, and part of the goal of this course is to turn you into a great tester and debugger. However, the TAs can help you find bugs and offer you the proper approach to resolving them.

Discussion Forum​

All communication this semester will be centralized on Piazza. Please ask all questions there, and feel free to make private posts if you need to communicate with course staff directly.

Piazza Etiquette​

  • Search before posting. Your question may have already been answered by us or other students in the past. Reading other students' posts will let you refine your question, and gives us more time to answer new questions.
  • Link and screenshot any external resources you are referring to (exams, discussion, StackOverflow, lecture slides + webcast time/video). It is more convenient for us and other students to look at the screenshot and follow the link if we need more context on the question. It will also substantially decrease the time it takes for us to answer your question.
  • Try to avoid open-ended or vague questions such as: "How does JavaScript work?" or "How come the solution to a discussion problem is this?". If you walk us through your thoughts and reference specific lines that you find confusing, we can better address the problem you are facing. Being specific helps us uncover any misunderstandings that you may have.
  • Post questions about assignments as public follow-ups on the corresponding assignment post. For example, post your questions about Homework 1 on the Homework 1 post. If your question is too detailed or revealing to fit as a follow-up, your question would be better answered during office hours.
  • Only post in the "Student Answer" box if you are fairly certain about your answer. Do not post follow-up questions or +1 in the student answer. Posting in the "Student Answer" section marks a post as resolved and will likely be missed. Use follow-ups to follow-up while leaving the overall post unresolved.
  • No follow-up +1's. Instead, you should use the Helpful! button on a question/follow-up. We do not allow +1's because they clutter the post and make it more difficult to get to the unresolved follow-ups.
  • If you want a reply on a follow-up, mark it as unresolved, or we may not see it.
  • If you reply to a follow-up answering the question at hand, mark the follow-up as resolved, since it no longer requires attention.

Grading​

Attendance​

Attendance at lectures is mandatory. If you cannot make it to the lecture for any reason, please fill out the excused absence form for each lecture. If you neglect to fill out this form within 24 hours of the missed lecture, it will be marked as an unexcused absence. If you are more than 15 minutes late to a lecture or leave a lecture more than 15 minutes early, this will count as an absence. You are allowed up to 3 unexcused absences before receiving a NP in the class. If you miss a lecture, watch the recorded lecture as soon as possible so that you don't fall behind. Our curriculum moves fairly quickly in order to cover everything you need in order to become a full-fledged developer, so it's imperative that you stay up-to-date with each lesson.

Grading Overview​

All Decal's are taken pass-no-pass, this one is no exception. Your final grade will be based primarily upon completion of Homework and the 3 projects. Attendance is required to pass the course - more than 3 unexplained abcenses will result in a grade of NP. See the above "Attendance" section for more detail on the attendance policy. A "pass" is a 70% in the class.

Grading Breakdown​

ItemPercent
Homework50%
Project 110%
Project 210%
Final Project Proposal10%
Final Project Presentation20%

Deadlines​

Any assignment which is due by the end of the day is due by 11:59:59PM Pacific Time.

Homework​

Homework is designed to let you practice the week's material. We encourage you to work on the homework problems in small groups, but each student is required to turn in a solution that they have written themselves.

Every day homework is late, your grade will decrease by 10%.

Projects​

Projects are designed to give you heavy-duty experience with the application of course content. Projects are graded on correctness. You must work on your own for each project with the exception of the final project.

Collaboration​

Collaboration is allowed and encouraged for all assignments and projects unless explicitly specified otherwise. That being said, please try to make sure you understand what we're trying to teach you through the assignments and the projects! One of the biggest pitfalls of collaboration is the possibility of you having to lean on somebody to essentially do your homework for you, not learning anything in the process.

UC Berkeley Code of Ethics​

"Neither this school, its students, nor its professional associations will condone cheating, lying, or any other misrepresentations. Moreover, anyone who willingly conceals these activities will be considered accomplices and equally culpable. Violations of the code of ethics will be referred to the University of California, Berkeley's Center for Student Conduct and Community Standards.”

Accommodations and Extensions​

Some forms:

  • Extension Requests: This is to request extensions on deadlines for any assignments. Requests will be reviewed approximately every two business days. Note that approved lab extensions are rounded up to a week so you can attend your assigned section. Extensions will not be visible on Gradescope and PrairieLearn, but they will show up on grading reports.
  • Extenuating Circumstances: This form is for any circumstances that can't be resolved with extensions or lab section changes. Don't be afraid to reach out! We're here to help you succeed in our course. Extenuating Circumstances and Inclusion

We recognize that our students come from varied backgrounds and have widely-varying experiences. If you encounter extenuating circumstances, please do not hesitate to let us know. The sooner we are made aware, the more options we have available to us to help.

Inclusion​

If something is said in class (by anyone) that makes you feel uncomfortable, disrespected, or excluded by a staff member or fellow student, please report the incident to our instructors, head TA, or another member of staff you're comfortable with so that we may address the issue to create a more supportive and inclusive learning environment. You may also contact the department's Faculty Equity Advisors (CS) Prof. Josh Hug hug@cs.berkeley.edu or (EE) Prof. Robert Pilawa-Podgurski pilawa@berkeley.edu, the Campus Ombuds Office or the ASUC Student Advocate's Office (SAO). You may also use the department's Student Climate and Incident Reporting Form.

Campus Resources​

Your mental health is more important than this course. Seriously. If you're feeling overwhelmed or not in control, talk to us and we'll try to help. Counselling and Psychological Services (CAPS) has multiple free, confidential services:

Also check out UHS's mental health resources

Support is also available for survivors of sexual violence or harassment. While course staff are mandatory reporters for such incidents, we do have free, confidential services available on campus: