Virginia Western Community College
COURSE SYLLABUS
ITP120 – Java Programming I
Summer 2024


Instructor: Diane Wolff
dwolff@virginiawestern.edu
Link for office hours:  http://vccs.zoom.us/my/vwccbaseball
Office hours:  10:00-11:00 MWF or email me and set up a meeting  

Course Description

ITP 120 Java Programming I (4 CR)   The course entails instruction in fundamentals of object-oriented programming using Java. Emphasizes program construction, algorithm development, coding, debugging, and documentation of console and graphical user interface applications. Lecture 4 hours per week.

ITP 120 is the first semester of Java programming.  The Java programming language is one of the most important computer languages for both client-side and server-side applications. Java allows you write intranet applications and other e-business solutions that are the foundation of corporate computing. It also is integral to the development of client-side applications for everything from games to Droid applications.

This course introduces the fundamentals of general computer programming and specifically, Java.  Topics include decisions, loops, and method calls.  Collections are introduced and include arrays and ArrayLists.

Getting Registered  - Use the following instructions for applying, registering, and paying.

  1. Apply at https://www.apply.vccs.edu/applications/vccs/apply.html?application_id=4098 (Links to an external site.)    If you have any problems with applying, call the Admissions Office at 540-857-7231. NOTE: Do not declare a major.  Indicate that you are a transient (non-degree seeking) student.
  2. At the end of the process, you will be assigned a seven digit ID.  Make certain to copy that down.
  3. Send the id to dwolff@virginiawestern.edu and we will help you finish the process of registration. You cannot register yourself.

 

Course Prerequisites

Knowledge of the basic use of computers. 

Contact Methods and Response Time

I am teaching totally distance learning so the fastest contact method is through email at dwolff@virginiawestern.edu.  I read email just about 24/7 and generally respond within 24 hours if it is not within two days of the due date. This includes weekends.   As due dates get closer, email load increases dramatically so response may be slower (you can prevent this being a problem for you by starting early). Discord postings will usually be answered within 24 hours.  I will be grading right after you submit, and grades will usually be posted within 24 hours of the due date.  See more details below.

Attendance / Lateness Policy

This is a summer distance learning class with assignments due in one-week to two-week increments (see schedule).  There will also be YouTube videos that you will be expected to watch.  “Attendance” will be determined by submission of your assignments on the due dates.

Student Evaluation

Introductory survey                                                         10 points                 
Lab assignments 7 @ 50 points each                            350 points
Weekly Coding quizzes@10 points each                      140 points
Bi-weekly Mult Choice Quizzes @20 points each       140 points
Project @ 50 points                                                         50 points
Final Exam @ 100 points                                              100 points
TOTAL                                                                         790 points

           90%=A   80-89% = B   70-79% = C   60-69% = D 

NOTE: the final exam will be a comprehensive multiple-choice exam giving during finals week.

Due Dates – both Our Lab in Canvas and the multiple choice quiz (8:00 am Sundays)

Mod 1 – May 26th

Mod 2 – Jun 2nd  

Mod 3 – June 16th  (two weeks)

Mod 4 – June 23rd   

Mod 5 – June 30th     

Mod 6 – July 14th (two weeks)

Mod 7 – July 21st  

Project – July 30th  (2 extra days) 

 

Weekly Modules - there is a coding module due every Sunday at 8AM (two are two week modules – see above). 

Module Multiple Choice Quizzes - It is critical that you understand the concepts and terminology in the class. A multiple-choice quiz is due every Sunday that a module is due at 8AM along with the assignment. This is to test your knowledge of the concepts.  You can have multiple attempts at this (open book/notes/Web) but no late quizzes are allowed. 

Make-up / Late Work Policy

The schedule lists the due dates for each module.  You may progress faster than the schedule but not slower without instructor permission.  This is for your good and mine since I must have all grades in right after the semester is over and I will be reviewing the answers in the Zoom sessions. Any submissions after the due date without instructor permission will be docked 30% if turned in within 24 hours of the due date/time. With previous instructor permission, only 20% off. For EXTREME circumstances, contact me.  No late quizzes will be allowed.  

Academic Integrity – I expect every one of you to abide by this!!

I understand that Virginia Western Community College fosters a culture of academic integrity and respect and that this integrity is the foundation of our academic system. As a member of this academic community, I pledge to support this culture. I affirm that I will not give or receive any unauthorized assistance, and that all work will be my own. I further affirm that I understand that if I have knowledge of academic misconduct, I am obligated to notify my instructor.

See below for information on what is allowed.

First offense = report to Maxient - zero for the assignment
Second Offense = F for the class

Utilization of Gen AI Tools

No Gen AI Usage Permitted:  For the duration of this course, the use of Gen AI in assignments is strictly prohibited.  Assignments are opportunities for personal growth, critical thinking, and applying your acquired knowledge.  Your individual effort and creativity are essential in demonstrating your understanding of the course material.  Dependence on AI undermines these objectives and compromises the integrity of the learning process.  We appreciate your commitment to academic honesty and dedication to upholding the course’s principles by refraining from using Gen AI in your assignments.   Usage of AI will result in academic consequences.

Plagiarism and Academic Dishonesty

Students will be expected to follow the Gen AI Notification for the class. 

Cheating is the actual or attempted practice of fraudulent or deceptive acts for the purpose of improving one's grade or obtaining course credit; such acts also include assisting another student to do so.

Plagiarism is a specific form of cheating which consists of the misuse of the published and/or unpublished works of others by misrepresenting the material so used as one's own work. Student’s submissions will be tested for Plagiarism.  Plagiarism can include submitting a paper or computer program written by someone else as your own; written by means of inappropriate collaboration; written by you for another course, submitted without the permission of both instructors; failing to cite words, programs or ideas that are not yours originally.

In this course, penalties for cheating and plagiarism range from a 0 or F on a particular assignment, through an F for the course, to expulsion from the college.

Plagiarism DOES include using programming code that you find on the Internet in your program. Plagiarism DOES include code written by a tutor (even if you typed the code), written by another student or written by anyone other than yourself. Plagiarism does include code written by Gen AI that does not follow the listed notification for the class.

Sometimes, plagiarism happens because students aren’t completely clear on what it is. Review this site: http://www.plagiarism.org/ for lots more information. Not knowing you are plagiarizing will not result in a lighter punishment!

 Academic Responsibilities

The materials on this site are only for the use of students enrolled in this course for purposes associated with the course and may not be retained or further disseminated. It is the student’s responsibility to comply with the full Honor Code and Conduct requirements which are described in the Student Handbook

Inclement Weather Policy (not a problem for this section since we are DL)

Additional Information Virginia Western policies, the course outline, and course syllabus along with additional student resources are available in Canvas.

Important Dates

First Day to Register – Monday February 26th
First Day of Classes – Monday May 20th
Last Day to Register/Add a Class – Friday May 24th  
Last Day to Drop and Receive Refund – Thursday May 30th
Last Day to Withdraw Without Grade Penalty – Monday July 1st
Last Day of Classes Wednesday July 31st        

Method of Instruction

All materials will be served from Canvas. This is also where you will submit all of your work.  There are many useful documents and tools on the portal.  We can have some synchronous online sessions if you like. But in general, due to the shortened time for summer session, most of the content provided will be asynchronous prerecorded movies.

Textbook

Java, How to Program, 11th edition, Paul and Harvey Deitel.  There is a paperback version and a loose-leaf version (I hear this falls apart easy).  You can probably find the book used online at a reasonable price, or an eversion of it. 

          ISBN paperback    978-0134743356  
          ISBN loose leaf printed text 978-0134751856           

Software

We will be using a version of Eclipse that you can download from Canvas. You can go to https://apps.virginiawestern.edu/faculty/vwwolfd/EclipseJP.zip

Links to an external site. to get the 64 bit download. Instructions for unzipping and use can be found at https://apps.virginiawestern.edu/faculty/vwwolfd/EclipseJP_JavaInstructions.doc

Macintosh folks: You will need to download the software from https://www.eclipse.org/downloads/packages/.  The document for use above is still applicable.

Incompletes

Please contact me immediately if you need to discuss an incomplete. A student will receive an incomplete only under serious mitigating circumstances as determined by the instructor.  The student must have an overall average in the course of at least 80% and already completed all work up to the point that an incomplete is requested. This can only be done near the end of the class, where there is just an assignment or two left and/or the final. An incomplete grade will give the student additional time beyond the end of the semester to complete the course requirements. The instructor will decide on an appropriate deadline. Any outstanding work not completed by this agreed upon deadline will result in the Incomplete being changed to an F.  All incomplete grades need to be discussed and approved before the first day of the exam week for the course.

Specific Classroom Policies:

  1. Spend 80% of your time coding – not reading! You cannot learn a computer language by reading a book.  SKIM the material in the book, watch the movies, and start on the assignment.  Use the text as a reference and guide.
  2. If you need to drop the class (hopefully no one will have to do so!) you must do it yourself online (I can help you find the link).  The last day to drop this class without an F grade for fall semester is Monday July 1st.
  3. Do NOT just download everything from the portal on day 1!! As the faster people work through the material and may have questions, Imay add more examples, etc.  I certainly will not make any changes to submission requirements after the start date above and will not significantly change requirements ever (only maybe clarify them).   I will post an announcement with a heads up that the instructions or jar file has changed.  
  4. There will be Zoom online session for every module.  There will be good information during these --- and it is highly suggested that you listen to the recording of them. 
  5. Keep up with the Discord discussion forums since you are responsible for clarifications posted there (hopefully---there will not be too many of them…)
  6. I will be grading all submissions right after the due date of that module, even if you submit early. It is critical that you make your final submission through Canvas only!
  7. As you are working through the material and have questions, you need to do one of two things.  If the question is about a general concept or topics where you would like to see more examples, submit this through the Discord discussion forum.  Do not post large chunks of your code there. If you want us to look at your specific problems (that is what I am here for!) jar up your file (include ONLY those files needed to make the program where your questions are run!!!) and send it through email to one of the email addresses above.  Make certain to explain the problem in the text of the email.  I will response VERY quickly to both types of postings.
  8. I will also have online tutors that can help.  Details during class.
  9. Start early on each module if you can. I am very receptive to helping all I can, especially early in the module sequence.   However- on the few days before the due date, I may not be able to answer as quickly due to high traffic.
  10. PLEASE CHECK THE PORTAL RIGHT AFTER THE DUE DATE FOR YOUR GRADE!!!    Open up the assignment and you will see my comments. If you have omitted something or misunderstood an instruction, I may put comments here and let you make changes with no penalty for the first module and a five-point penalty after that.  I will not be looking at your submissions until the due date, no matter how early you submit.  You cannot resubmit and correct normal errors. I am only allowing resubmissions if you (for instance) include the .class files instead of the .javas, etc.   You will have the 24 hours to get it back in with changes.  If you do not see our comments within this time, you will not be allowed to resubmit.
  11.  I also want to improve this course for future semester offerings.  For 5 points each module (required), use the textbox on the laboratory submission to give me comments about the module.    Please include positive comments as well as constructive suggested changes for each module.  Noted typos or suggested rewording would be appreciated.  And please include an approximate number of hours spent totally (reading, writing, coding) for the module so I can judge the assignment requirements.  I appreciate your help in this matter. 

 Campus Safety
Evacuation procedures: Posted near each classroom entry.  To report an emergency, call 911 or Campus security at 857-7979.  The college has created a campus safety video that each student is required to view. A link to this “Critical Safety Video” is located on one of the links under Syllabus on our Canvas course.  Students are encouraged to register for VW Alert Text Messaging System. To register for the text alerts, go to https://alert.virginiawestern.edu.

 Suggestions for Progressing Through a Module

  1. Download the appropriate jar file from the lab assignment. It will always be named itp120modx_23_24.jar where x is the module number.  Import the jar file into Eclipse.
  2. Go to the syllabus and see what chapters the module covers.  Skim/read those chapters and watch the power point movies.  Do not spend a lot of reading. But as you skim, look at the examples from the text (they will always be found in the jar file downloaded above in packages named after the associated chapters).
  3. Get the lab instructions from the assignment in Canvas. It will always be named ITP120modx_23_24.doc where x is the module number. Work on these.  Refer to your text as needed.
  4. See if there are auxiliary readings and if so, download them and look them over.
  5. Finish the lab and return the assignment back to me with the completed jar file.
  6. Remember to include your comments about the assignment in the textbox.

Jar File Instructions

  1. Assignments will be turned in as jar files (similar to zip files).  The instructions will indicate how to create these.
  2. Jar files must have the .java files in it (after you jar the file, open it up in an unzipping software and verify this).
  3. Jar files must have only the programs that make the programs that are listed at the bottom of the lab instructions run (delete any that were just my examples).  In some cases you will delete entire extra packages that have just my examples in them.
  4. Make certain there are no stray import statements (to test this, create a new project and re-import your jar file and see if it runs).
  5.  Jar files must have the name of both the package and the actual jar file changed.  For example, if your name is Mike Miller, you will need to change the package name to mmilermod3 and send it to me as mmilermod3.jar.

            If you have comments about what I can do to better serve you, please let me know.  Let’s have a great semester!!!!!