Skip to content

TEJA831/WA

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

301 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Course Syllabus - Web Applications

Basic Information

Course ID: COSC 335

Term: Spring 2023

Professor: Todd Dobbs, dobbsbt@wofford.edu

Class Schedule: Tuesday and Thursday from 9:30 am to 10:50 am in Olin 213

Office Hours: Please make a formal request (i.e. starfish)

Optional Textbook: None (more on this in project 0)

Learning Outcomes

After successful completion of the course, a student will demonstrate knowledge of the following:

  • An understanding of client side web applications
    • Express an undestanding of the browser
    • Express an undestanding of HTML
    • Express an undestanding of CSS
    • Express an undestanding of client side programming
    • Express an undestanding of the DOM
    • Express an undestanding of SPA
    • Express an undestanding of application state
    • Express an undestanding of security
  • An understanding of server side web applications
    • Express an undestanding of the server
    • Express an undestanding of server side programming
    • Express an undestanding of application state
    • Express an undestanding of security
    • Express an undestanding of data persistence

Teaching Philosophy1

Computer Science is not specific to learning a specific programming language or software package. While such things exist, they are ancillary to the core of computer science, which is above all concerned with reflecting critically and persistently on automation, computation, and information. I teach with the goal of serving our community to determine how computer science can be integrated into their lives in the future. Everything to do with this course is influenced by this goal. This includes the way the course is designed, my teaching style, and the assessments and practice I offer. If it is ever unclear to you why we are doing something, or why we’re doing it the way we are, I encourage you to ask me about it. I will be happy to explain my reasons for doing what I do and for asking of you what I ask of you. To experience learning, everyone must feel free to express any question or state any view in a way that respects all members of our community. We all benefit when our inquiries include a diversity of viewpoints, experiences, and backgrounds, and I hope you will contribute your authentic voice throughout the course.

Course Etiquette

Be Prepared

A central component of education is small class sizes that enable high-quality interaction among students and between students and faculty in class. For this high-quality interaction to occur, all of us must come to class prepared. This means carefully reviewing the assigned materials, reflecting on them, and coming up with questions or insights that you would like to discuss. We will all learn together, by coming up with valuable questions and working together to make progress in answering those questions. As a general guideline, if you come to class without a question or topic that you’re eager to discuss, you’re probably underprepared for class.

Be Present

In order to get the most out of class, you need to be a participant in the activities and not merely an observer. This means that mere physical presence in class is not enough; your psychological presence is also expected. This means listening and contributing positively to class discussions and refraining from distracting or disrespectful behavior. Psychological presence also means not being distracted by technological devices that are designed to capture your attention. Please silence your phone and put it away for the duration of class. If you have a smart watch, please put it in “do not disturb” mode.

Course Policies

Attendance and Participation

Whenever you are not in class, you are unable to participate and contribute to our community. Your attendance is thus encouraged at every class session. Please arrive to class on time and plan to stay for the whole class period. Arriving to class late, or missing an extended period during a class session, will count as half of an absence for grading purposes. That said, you’re an adult. You don’t need to ask permission to use the restroom. But please plan accordingly so that you don’t have to do so frequently. If you will have multiple absences, please communicate with me or the Wellness Center about your situation. If you miss five class sessions in a row, and I don’t hear from you or receive a formal notification regarding the absences, I will infer that you do not intend to continue attending and you will be administratively withdrawn from the course.

Email

I may communicate with my classes via email. I expect you to check your email regularly, and I will accordingly assume that you have received any email I send to you or to the class within 24 hours of my having sent it, regardless of whether you have responded to it. If you email me during the week, I will do my best to respond to you within 24 hours. I normally check my email during office hours, so emails sent after that time will typically not be received until the following day.

Academic Integrity

All students are expected to maintain the highest standard of academic honesty and are bound by the Honor Code. A major component of your responsibility for academic integrity is to know what constitutes academic dishonesty. If you have any questions regarding whether something constitutes a breach of academic honesty, I expect you to ask me about it before it becomes an issue. Any suspected incidents of academic dishonesty will be referred to the Academic Integrity Committee for review.

Accommodations

You are entitled to a meaningful and effective learning experience, and I will do my best to help you have such an experience in this course. I have strived in designing this course to make it accessible to everyone, but I recognize that I may not have succeeded. I am happy to provide whatever accommodations are warranted for you to be able to succeed in this course. In order for me to provide you with the appropriate accommodations, the required paperwork needs to be completed and on file. If there is anything else that you want me to know that will help me improve your experience in this class, please do share it with me.

Confidentiality

I want you to feel comfortable sharing information with me directly and through class assignments, but there are some instances in which I am required to share information with the College and some instances in which I will feel obligated to share information with appropriate College staff. If I receive information related to sexual or gender-based harassment, violence, or discrimination, I will keep the information private, but I am required to share that information with the Title IX Coordinator. Contact information for the Title IX Coordinator and for confidential resources can be found on the Title IX webpage. Additionally, if I am aware that you are struggling with something that may be traumatic or if I am concerned about your mental health or behavior, I may raise a formal flag or reach out to appropriate College staff for resources and assistance. Students may speak confidentially with the counselors in the Wellness Center.

Evaluation

I encourage you to try to be less worried about grades than you are. If you focus on grades, learning will always be a struggle. If you focus on learning, grades tend to take care of themselves. Your grade in this class will be determined by the following components:

  • Projects (70%)
  • Assessment (30%)

Class Schedule2

Week Day Date Topic Project
1 1 Tue Feb 7 Introduction
2 Thu Feb 9 HTML 0 Due
2 3 Tue Feb 14 CSS
4 Thu Feb 16 URL
3 5 Tue Feb 21 JavaScript
6 Thu Feb 23 JavaScript Programming 1 Due
4 7 Tue Feb 28 DOM
8 Thu Mar 2 DOM Events 2 Due
5 9 Tue Mar 7 UI Programming
10 Thu Mar 9 ReactJS 3 Due
6 11 Tue Mar 14 SPA
12 Thu Mar 16 RWD
7 13 Tue Mar 21 Web Application Construction
14 Thu Mar 23 Browser-Server Communcation 4 Due
8 15 Tue Mar 28 Web Server
16 Thu Mar 30 Node.js 5 Due
Tue Apr 4 Spring Holiday
Thu Apr 6
9 17 Tue Apr 11 ExpressJS
18 Thu Apr 13 Data Persistence
10 19 Tue Apr 18 Cookies and Session 6 Due
20 Thu Apr 20 Input and Validation
11 21 Tue Apr 25 State Management
22 Thu Apr 27 Security
12 23 Tue May 2 Network/Session Attacks 7 Due
24 Thu May 4 Other Attacks
13 25 Tue May 9 Large Scale Applications
26 Thu May 11 Data Centers 8 Due
Mon May 15 Assessment

This syllabus is subject to change based on the needs of the class. I will communicate changes in class or email.

Footnotes

  1. Thanks to Jeremy Henkel for inspiration.

  2. Stanford Computer Science

About

Web Applications

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • JavaScript 86.7%
  • HTML 11.7%
  • CSS 1.6%