Syllabus

CT 370 Web Development 1
3 crs., 2 hrs. lab, 2 hrs. lecture.
T, TH 4M04C, 10AM-12PM

Michael Branson Smith
Site: michaelbransonsmith.net
Twitter: @mbransons
Flickr, Youtube, Soundcloud
Email: michaelbransonsmith [at] gmail [dot] com
Office Hours: M 10AM-12PM, or by appointment
Phone: 718-262-2853

Course Description

Builds on fundamental concepts of constructing web pages, expanding to generating robust, dynamic and interactive client side applications of current web technologies. Students will learn to employ scripting languages, libraries, and frameworks to construct interactive and responsive front-ends to server applications. Also considers asynchronous scripting, REST, callbacks, APIs and formatting for mobile devices.

Course Goals

Upon successful completion of this class, the student will be able to:

  • Showcase an understanding of the fundamentals of JavaScript for front-end web development
  • Write basic statements for comparisons, iterations, and evaluate these statements
  • Basics of DOM manipulation

Course Materials

  • We will employ a variety of online tutorials and readings in this class. In particular, we will use Rithm School’s Fundamentals of JavaScript classes. You will need to sign-up with an email address to receive regular access to the course materials. Also we’ll use videos from The Web Development Bootcamp and The Advanced Web Development Bootcamp (this is an unordered list of lecture slides from these two sets of tutorials). You are welcome to sign-up for these two Udemy classes, but materials can be provided.
  • You will each keep a coding journal, the first of which will be supplied in class.
  • Reclaim Hosting account to host problem set solutions and projects.
  • Any computer to which you have regular access and has a text editor(Visual Studio Code preferred, but also Brackets, Sublime, or Atom), FTP client(Filezilla & CyberDuck), and the Chrome browser installed.
  • Most text editors use Emmet for faster writing of code in a text editor, it’s either installed as an extension or added as a default extension as in VS Code. Here’s a great Emmet Cheat sheet to learn some basics.

Course Structure

Tuesday class – In the first class of the week we will be covering tutorials in the classroom on JavaScript concepts. At the start of each class I will spend 10 minutes reviewing the topics to be covered. After which you will be expected to follow along video or written tutorials. You will commit to two 45 minute periods of work with a 10 minute break in between. I will work through the classroom and check-in with your progress during this time. Assigned tutorials not completed in the classroom will be due at the start of the Wednesday class.

While following tutorials you are expected to take hand written notes on concepts that you believe are more difficult to remember. These notes will be a growing reference used to document your work on the blog as well as allowed resource for taking quizzes at the start of Thursday class.

Thursday class – At the start of each Thursday class, we will have a short ten minute quiz which reviews concepts covered in the week’s tutorials. You are allowed to use your coding journal during these quizzes but nothing else. Also, you are not allowed to take quizzes after the first ten minutes of class.

Next you will meet with a peer to discuss the work you’ve completed in the weeks’ tutorials. Questions to consider will be presented at the start of this portion of the class. Your peer will take notes and document them on the whiteboard under your name. This will be used to prompt discussion about concepts in the class. Combined this portion of the class should last for about 45 minutes.

After discussion, the problem set will be presented and discussed. You will have an opportunity to get started and possibly complete the problem set in-class. Work not completed in-class will need to be completed for the start of next Monday’s class and posted to the blog.

Hosting Accounts

Each of you should have a Reclaim Hosting account with a domain name that you used in CT 101 Digital Storytelling. Your web hosting account will be an integral part of the class and your future work as a web designer and developer. In the first meeting we’ll get your account up-to-date if needed and review the basics of the c-panel, file manager, and FTP.

All of your code and design will be hosted on your personal account, that way you can do with it what you wish at the end of the semester. But for reporting purposes, you will be using the class blog to link to work you’ve done.

Blogging

Each Tuesday by 10AM a blog post will be due with the completed problem set from the previous week. These posts are on rescuethepresent.net/webdev-spr2019/.  In these posts you should include links to the completed work as well as notes from conversation and your coding journal discussed and written in the previous week.

Keep in mind the following standards when writing posts:

  • A thoughtful title (please do not name the assignment in the post, it should reflect the personalized content of post you’re submitting)
  • Embedded code samples using the Enlighter tool  in the WordPress post editor.
  • //Some example code using Enlighter
    //Print all the numbers between -1- and 19
    console.log("all numbers between -10 and 19")
    
    for (var i = -10; i < 20; i++) {
        console.log(i)
    }
    
    //Print all even numbers between 10 and 40
    console.log("all even numbers between 10 and 40")
    
    for (var i = 10; i <= 40; i += 2) {
        console.log(i)
    }
    
    //Print all odd numbers between 300 and 333
    console.log("all odd numbers between 300 and 333")
    
    for (var i = 300; i <= 333; i++) {
        if (i % 2 !== 0) {
            console.log(i)
        }
    }
    
    //Print all numbers divisible by 5 AND 3 between 5 and 50
    console.log("all numbers divisible by 5 AND 3 between 5 and 50")
    
    for (var i = 5; i <= 50; i++) {
        if (i % 3 === 0 && i % 5 === 0) {
            console.log(i)
        }
    }
  • A clear statement of the post’s purpose.
  • Multiple contextual links to work completed. No “naked” URLs, all work should be linked to text.
  • A clear statement of reflection based on the discussion/writing from the previous week.
  • Appropriate grammar and syntax.

Grading

  • Blogging
  • Quizzes
  • Problem Sets
  • In-Class Discussion

 

We will together review the calculation of grades in the first class and agree on weights for each. After which we will post the grading practice/point model to calculate letter grades.

Decorum

Students are expected to treat the instructor and fellow students with the appropriate degree of respect, both in class (if applicable) and in online discussions. Communication, either in person or through electronic media, that is deemed abusive, threatening, or harassing in nature will not be tolerated.

Academic Integrity

York College’s Academic Integrity Policy & Procedures, developed to conform to the CUNY policy on Academic Integrity.

INC Grades

The following overview of the INC grade is condensed from York’s grading policy website

The student must be passing the course, and have work remaining to complete the course requirements. The student must request an INC grade. The instructor must approve whether the student has a valid reason for not completing course requirements and has reasonable expectation that the student can in fact successfully complete the requirements of the course within the allotted time.
Policy on Accommodations for Disable Students

CUNY York College is committed to providing access to programs and services for qualified students with disabilities. If you are a student with a disability and require accommodations to participate and complete requirements for this class, contact the STAR Program (Specialized Testing & Academic Resources), services for students with disabilities (Academic Core Building (AC), Room 1GO2, 718-262-2191/3732) for verification of eligibility and determination of specific accommodations.