Seattle Central College
Course Title/ Number: ITC240 – Web Applications I
Instructor: Bill Newman
Office Hours: By appointment only
Course Description: ITC240 is a hands-on, practical course introducing techniques for the creation of database-driven web applications. Students will work with the leading open source development platform, PHP & MySQL. Students will progress from building largely static web pages to full fledged web applications, allowing their customers to declare administrative and public areas of their websites, and to update pages and upload site images and manage content through an administrative interface.
Course Keyword & Context: The keyword for this course is fundamentals. This course uses PHP & MySQL as the tools of choice, but our goal is to learn the fundamentals of web development. In this class the students utilize fundamental building blocks such breaking up web applications into include files and utilizing data transmitted via POST & GET and use of sessions to control access.
This course is designed to be a stand alone class to teach students who are going to be front end web developers on how web applications work, but is also the first of three web application development classes for those who wish to go further and learn more about back end web development. The other two classes are as follows:
ITC250, Web Applications II: Keyword, Workflow. This class continues from where ITC240 left off and helps students learn the process pieces involved in building programs. Students work together in groups on “micro” projects that involve industry standard skills such as branching code, whiteboarding and documentation while designing programs from scratch.
Students also work individually on a project that places the student as a junior developer to interview and build a custom web application for a mock client, requiring the student to learn Object Oriented design principles in the process.
Finally the student will learn applied techniques designed to increase their skills and ultimately make the student more "in demand" in industry.
ITC260 Web Applications III: Keyword, Collaboration. This class focusses on the tools and techniques used to forecast and collaborate on iterative web development projects. The heart of this class includes study of a web framework and a group project utilizing scrum and agile collaboration strategies.
ITC240 Competencies: After completing this class a student will be able to:
Class Canvas Home Page: This class uses the learning management system named Canvas to provide access to class materials, quizzes and grades. The front page of the class Canvas website identifies all resources and deliverables and should be studied as the gateway to this class. This syllabus covers similar material and should be viewed in conjunction with the Canvas front page. One difference between the material on the Syllabus and the class Canvas home page is the syllabus will usually not change during the quarter, while the home page will be updated regularly.
Grading (all approximate, and subject to change):
Assignments: Assignments will usually consist of building PHP enabled web pages exhibiting specific requirements. Frequently you will adapt existing examples to achieve effects described on the class website.
Participation/Effort: I reserve 5% of your grade for your demonstrated participation or effort. Please participate with pertinent questions & comments in class, helping others in class as appropriate and by emailing questions or concerns on a timely basis.
Reading/Study Materials: The relationship of the videos and online class materials are chiefly an addendum to the class website. For our purposes, the information on the class website will always take precedence over internet material.
Student Needs: If you need accommodations due to a disability or any other reason, please contact me by email or otherwise, as soon as possible. Every effort will be made to meet your needs. Also let me know of emergency medical information or if you need special arrangements in case the building must be evacuated, etc.
Role of The Instructor
As your instructor, I make every effort to facilitate your education and help with strategies, materials and requirements. However you are responsible for your education, and I recommend speaking up early and often if you have questions or concerns. Open communication is important if we are to succeed!
Communicate via Inbox: Always use the Canvas Inbox (at top right corner of your Canvas screen) to contact me with timely questions. Don't use the comment field on the assignments or my personal email to ensure a timely response.
Assignment Questions: I will respond to questions about any assignment up until the afternoon before it is due, if available, via the Canvas Inbox. Answering questions and helping with troubleshooting are my highest priorities.
Assignment Assistance/Troubleshooting: If you need help with an assignment, please send a link to problem page, attach a word or google doc revealing code from all involved, pages, just as I do when I build an assignment for you.
Grading Assignments: To get 100% on an assignment, the expectation is the assignment is functionally complete, accurate, and finished on time. I reserve the right to take points off for any late or incomplete assignment. I attempt to grade assignments within a week after the due date. I will notify you via email when an assignment has been graded. Please respond promptly when work has been overlooked, graded improperly, etc.
Re-grading on Select Assignments: As a courtesy, I frequently allow ONE repeat submission (re-grade) per assignment. For an assignment to be allowed a re-grade it must not have a hard due date! View the front page of the class Canvas website for details on hard due dates.
Re-grading is time consuming and done as a courtesy, therefore re-grade requests receive the lowest priority when I respond to email. Expect a week to hear back regarding your re-grade request. Re-grades may incur a lower grade due to being completed late.
To avoid delays and lower grades, get your assignments done on time and per all requirements on the homework page. I will accept a up re-grade request up to two weeks beyond the due date of the assignment.
Attendance: Attendance is not mandatory, but concerted effort is. You may elect to miss any class without penalty, but all work should be completed on time. For many people it is more difficult to skip a class, as you may spend more time and effort keeping up. If you are struggling in class, I recommend spending time on the material daily, regular class attendance, preparation of good questions and maximizing the provided lab time.
Follow the homework requirements accurately and completely. Ask questions of the assignments and tests within 24 hours of being posted. If you are unsure of what is required and you decide to proceed, any negative impact on your grade will stand.
Improving Your Grade: Want to improve your grade? Email for possible extra credit work.
Role of The Student
As a student, you are responsible for your education and for speaking up when you are in need. If you have a question, please email me, as soon as possible. If you are having trouble in class, be sure to stay for the full length of the lab times that will be available. Many folks leave early giving lots of time for those who are patient. If you are attending lab and still need help outside of class become familiar with our tutoring center.
Working Assignments: When working on the assignments start early and study the homework page to be sure you have all important details correct. If you have questions, ask them during class time. If you are working at home and run into an error you can't resolve, document the problem and send me an email. Include a link to the broken page and a copy of relevant code as an attached document so I can take a look. Don't wait until class time to troubleshoot if class is three or more days away!
Context for Quizzes: Quizzes are based primarily on our class website, provided handouts, recorded daily lectures, pages on the class website and other resources available via the class website, unless otherwise stated. This means to be best able to take a quiz you should be familiar with all the materials, and have listened to all the lectures. The context of the quiz is usually from the point of view of a beginning to junior programmer and does not ascribe to being absolute or even entirely correct. These are tests of class materials, not absolute truths.
Some of the tests & assignments will be easier if you try code samples to see what happens. Don't guess, test instead!
Quiz questions or answers will not be addressed during class time, only via Canvas Inbox inquiry.
Incomplete Policy: Here is the official policy on Incompletes:
Incompletes are for "the student performed at a passing level, completed most of the course requirements, and intends to make up the missing work. An Incomplete is given only at the discretion of the instructor when the student has attended regularly, done satisfactory work, and furnished satisfactory proof to the instructor that the work cannot be completed because of illness or other circumstances beyond the student’s control."
Incompletes are for students who are nearly done with all assignment work as we reach the end of the quarter. Test scores will stand, regardless. If you wish to pursue an incomplete, contact me as soon as possible via Canvas Inbox with your circumstances so we can talk about it.
You may also wish to make an appointment with workforce training or the school counselor as incompletes and dropped classes can affect your funding. If all systems are go (and your request for an incomplete gets approved) you will be required to get an incomplete form from the IT office and fill out your portion. Leave the form for me and email that the form is ready for me to fill out. I'll then fill out my part of the form and let you know what to do next. I'll give you 60 days from the end of the quarter to finish your work, maximum. Get the work done during the quarter, if at all possible.
There is more info about incompletes and other items in the Student Handbook.
Student Strategies for Success
Programming Takes Time: This is a programming class, and it requires time and attention to succeed. This is a 5 credit class college class, and therefore could require 12-15 hours, per week of work outside of class. It’s not my goal to burden you with countless hours of work, but programming takes longer than you expect at times, so be prepared to put in hours outside of class, every week!
Get A Jump On The Class: Those who succeed most easily start early, work every day, and therefore have the time to stop when they are tired. When you run into a big problem, document it, and then push away from the computer for a break. 'Cramming' code leads to excessive errors, frustration and more time spent! Programming requires precision, and continuing to work when you are tired or off track can compound errors.
Keep Up With The Material: Read ahead, do the exercises in the book & in class by hand, and start your assignments early. These assignments require troubleshooting and patience. If you get a jump on the homework, you can come to class prepared to ask questions before the assignments are due.
Try Examples/Type Code: 90% of the population are kinesthetic learners, meaning they learn by doing, instead of reading, listening or watching. While programming, many people find typing out and testing lots of examples help abstract programming material to sink in. Give it a try!
Pay Close Attention: Be aware of any changes by attending class and viewing the class website frequently, especially the homework page. Checking the website daily is a requirement. This usually refers to pop quizzes you may have missed. Pay close attention to the details for each assignment. Email if you have questions about the assignment right away. Points can be taken off, and work can be done on the wrong things if this is not given proper attention.
Participate: Maximize the provided lab time, and prepare good questions for class. Everyone benefits from good questions and suggestions. No one one knows everything, and there are many ways things can be done. Be an active participant in our education!
Assistance/Tutoring: If you are having trouble in this class, you are expected to stay to the end of each class. We have lab time and if you are behind or having trouble you need to stay for the full class as we have lab nearly every day. Getting assistance is immediate in person and difficult otherwise. Before you ask for assistance outside of the class (tutoring, etc.) you must be using all of your available resources.
Help Others/Work With Others: Good employees help those around them, and are not afraid to ask for help. Work with others, and pay attention to the questions (and solutions) of those around you. Students are encouraged to work and problem-solve together but MUST turn in their own work. Students found cheating will receive no credit and will be subject to college disciplinary action, as well. For more information, refer to your Academic Dishonesty policy in the college catalog or student handbook.
SCCollege Polices: http://seattlecentral.edu/policy/index.php