Skip to content

Latest commit

 

History

History
108 lines (71 loc) · 4.87 KB

index.md

File metadata and controls

108 lines (71 loc) · 4.87 KB
layout title comment_term
page
main
![cs52 logo](assets/imgs/CS52-logo-official.png){: .medium}

Course Overview

The Web is a powerful delivery tool for complex real-time applications. This is a new hands-on course that will introduce the state of the art of full-stack web development. You will learn to build not only interactive web applications, but also chatbots, and mobile apps. This class will be an adventure and requires active participation both inside and outside of class. There will be lab projects, exercises in class, and a collaborative final project.

By the end of term, you will:

  • use your knowledge of the fundamental concepts and best practices of web application development to design web systems from the ground up
  • utilize state of the art tools and frameworks used to build web technologies
  • build your own web applications with front-end UIs and server-side APIs

Topics include: static pages, Internet protocols, layout, markup, event-driven asynchronous programming, deployment, security, scalability, and user experience.

Prerequisites: CS10 or permission of instructor

Here's a silly video of me introducing the class (wait for it):

<iframe scrolling='no' frameborder='0' style='width: 800px; height: 525px; border:0;' src='https://dartmouth.techsmithrelay.com/connector/embed/index/tqVy' webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>

Coursework:

Will be challenging and rewarding.

See assignments.

Schedule:

Class:

  • 2A Classes will meet via Zoom Tuesday and Thursday (2:25-4:15pm). Zoom recordings will be available for those with timezone differences.
  • X-hours are 4:35-5:25pm on Wednesday and will be used as TA/Lab hours and some Workshops. Only class sessions will be recorded, see logistics for recording consent information.
  • Location: ZOOM permalink on canvas.

{: .fancy .small}

Office Hours and Contact:

  • We'll be using Slack for course communication. Find us there!

  • Open Help Hours via Zoom/Remo:
    Most 2A periods and Fridays 1-3pm.

  • Instructor:
    Fri 2:30pm-4pm or by appointment, (zoom link on slack)

Tim Tregubov
@tim

Half of each class will be hands-on demonstrations, code and project discussions, and exercises. See schedule.

Lectures:

Will be hands-on and interactive. See lectures.

Unfortunately due to the projects based nature of the class, auditing the class will not be permitted. All class slides, notes, and assignments will be posted here online though!

Logistics:

See logistics

The Archives

Prior archived versions of this course website are available: 16x, 17s, 18s, 19s, 20s

Also check out previous projects.

Contributing

Interested in contributing to the course? There are several opportunites:

  • Want to file a bug report? All the presentations, and assignments on this website are on github.
  • Want to pass on your knowledge, and help the next generation of webdevs? Future TA's apply here!. You don't really know something until you've tried explaining it to others. Ask me about the opportunity if you want to learn more.
  • Want to build cool interactive webdev learning games like boomsync? There's some funding available to help with that, slack me about it.