Course Syllabus

C S 1B INTERMEDIATE SOFTWARE DESIGN IN JAVA 4.5 Unit(s)
Prerequisites: Prerequisite: C S 1A or 1AH.
Advisory: Advisory: Demonstrated proficiency in English by placement as determined by score on the English placement test OR through an equivalent placement process OR completion of ESLL 125 & ESLL 249.
Grade Type: Letter Grade, the student may select Pass/No Pass
Not Repeatable.
FHGE: Communication & Analytical Thinking Transferable: CSU/UC
4 hours lecture, 2 hours laboratory. (72 hours total per quarter)
Tuesdays & Thursdays, 10:00 AM-11:50 AM, in room 4308

Student Learning Outcomes -

  • A successful student will be able to use the Java environment to define the basic abstract data types (stacks, queues, lists) and iterators of those types to effectively manipulate the data in his or her program.
  • A successful student will be able to define and use Java generics to make their data and algorithms work with a variety of data types.
  • A successful student will be able to write and debug Java programs which make use of inheritance, i.e., the "is a" relationship, common to all OOP languages. Specifically, the student will define base and derived classes and use common techniques such as method chaining in his or her programs.

 

Description -

Systematic treatment of intermediate concepts in computer science through the study of Java object-oriented programming (OOP). Coding topics include Java interfaces, class extension, generics, the Java collections framework, multi-dimensional arrays and file I/O. Concept topics include OOP project design, inheritance, polymorphism, method chaining, functional programming, linked-lists, FIFOs, LIFOs, event-driven programming and guarded code.

S.1 Course Description and Prerequisite

CS 1B is an in-depth study of essential intermediate computer programming techniques using the Java language. Class inheritance, generics, elementary data structures and the Java Collections Framework are among the many topics that will be covered in depth.   Successful completion of CS 1B is required in order to continue with CS 1C, which is the study of algorithmic analysis and data structures, the centerpiece of all Java-based CS degree programs and vocations.

A working facility with simple algebra as well as good written English comprehension skills are both strong advisories.

S.2 Instructor

Profile of Dr. Weusijana

My name is Dr. Baba Kofi Weusijana
Pronounced: Bah-bah Co-fee Way-ou-see-jah-nah
Please call me "Dr. Weusijana" or "Baba"
Office Hours: 
Mondays 1:20PM-3:20PM in FH 4131.
I can also meet students by appointment in room FH 4131 or via Canvas Conferences or ConferZoom. I'm often online Saturday afternoons and Sunday mornings.

Contact Info:
The best way to contact me is through Canvas from the relevant assignment. Otherwise you should ask questions through the Discussions forums or the private Canvas Inbox and only use email if you have trouble logging in. If you use the Canvas Inbox, or e-mail, I might miss your message and might not have the proper context for it. I might take 3 business days to respond to Canvas Inbox and e-mail messages.

S.3 Text and References

All of the important concepts will be covered in my modules. The text for the course is recommended, not required. It is Java: A Beginner's Tutorial (4th Edition) : A Beginner's Tutorial and is available for FREE online from the library. You must have some reference, however, you can use any Java textbook that fits your style and budget.

You can also order that book through the Foothill Bookstore at http://books.foothill.edu/, phone: (650) 949-7305.

 

Optional References:

Vermeulen, A. (2000). The Elements of Java™ Style. Cambridge: Cambridge University Press.
It is available online through De Anza College with this link.

 

S.4 Integrated Development Environment (IDE)

You will need a (free) software package called an Integrated Development Environment (IDE).  In this class we will be using a product that runs on both Windows PCs and Macs called Eclipse.  If you are facile on another IDE, you are welcome to use that, instead.  However, my assistance in the forums regarding compiler specifics will be limited to Eclipse.

S.5 Communication

Public Forums

Questions and comments should be posted to the Discussions Tool (DT) which you can reach by clicking on Discussions on the left menu.   I will usually reply within a few hours. Unless a question is of a private nature (i.e. grades, registration issues), please use the public Discussions.   Also, feel free to answer your fellow student questions even if you only have a guess as to what the answer is.  It's great to engage in conversation with each other in this manner.

Steps needed to post your public questions and comments for this course can be found on the Canvas Discussion Instructions Page.

First Week Required, Afterwards Recommended

No points are awarded for contributions, and there are no weekly requirements, but it's good collegial form to participate, inquire and assist. Also, you must post an introduction in the first week of class or you will be dropped as a "no show" according to the college requirements.

Do Not Post Homework Code

Whether you have a question or suggested answer, never post exact homework code to forums. Create a separate small program to display your issue or illustration.

Private Messages

Please use public Discussions forums for any question or comment that involves understanding the modules, tests or assignments.  If you have a confidential question (grades or registration) use the Canvas Inbox by first clicking on Inbox at the far left, then selecting this course and your intended recipient (usually me.)

Posting Program Code

You can post code to the public discussions that is not directly from your assignment. If you have an assignment question, translate that into a piece of code that does not reveal your answer or submission, exactly.

When posting code fragments (i.e., portions of your program) into questions, make sure these code fragments are perfectly indented and that they are properly formatted.  For details see the required resource module Pasting Code into Questions.

Do not post entire programs and ask "what's wrong?" or "is this good?" That's frivolous and indicates you have not tried to narrow down the problem. Find exactly what you want to know about and post only that part of the code.

STEM Success Center

If the online forums here are not enough, please visit the STEM Success Center page and click Tutoring Scheduled by Subject. These experts are qualified to help you with assignments or modules without giving you an answer that will short-circuit your discovery process. Let them know that you are not to receive actual assignment solution code or even fragments. They probably know this already, but it's your responsibility to avoid submitting something that was written by a tutor or another person.

S.6 Where Everything Happens

Access the various areas of your course by first selecting this course through the Canvas Courses choice in the far left ...

private message

... then exam our course navigation menu, also on the left side of the screen, but slightly to the right of Courses, the Home link is the most important so it is at the top while the rest are listed in alphabetical order.

S.7 Grades

Your grades are based on programming lab assignments (about 75%), exams (about 20%), and quizzes (about 5%).

Please make an A grade your goal, it is totally possible and common in my course.

Foothill's Default Grading Scheme
Current grading scheme for this course
Name:
Range:
A
100 %
to 94.0%
A-
< 94.0 %
to 90.0%
B+
< 90.0 %
to 87.0%
B
< 87.0 %
to 84.0%
B-
< 84.0 %
to 80.0%
C+
< 80.0 %
to 77.0%
C
< 77.0 %
to 74.0%
D+
< 74.0 %
to 67.0%
D
< 67.0 %
to 64.0%
D-
< 64.0 %
to 61.0%
F
< 61.0 %
to 0.0%

Please note that the grades of A+ and C- are NOT available.

S.8 Drops and Withdrawal

For a complete reference of all withdrawal dates and deadlines refer to the Foothill College registration page at the college web site here:
https://foothill.edu/calendar/winter2018.html

To stay enrolled in this class, you must participate regularly in your lab assignments and exams. This is part of the class participation that online classes must possess in order to maintain their transferability and accreditation.

You will be dropped by me for any of the following:

  • Missing a scheduled test without prior notice will result in an automatic drop.
  • If you do not login for nine (9) consecutive days I will drop you.  (See exception below.)
  • If you receive a zero on any two lab assignments, I will drop you. (See exception below.)
  • If you do not post an introduction in the first week, you will be dropped for non-participation.
  • If you do not completely attend 4 or more classes you will be dropped for non-participation or you will receive a failing (F) grade (See exceptions below).

Exception to Above Policies: 

If the non-participation that has just been described occurs partially beyond the last date to drop, I may not be able to drop you, and you may receive whatever grade that your points dictate.  Therefore don't assume that you can simply stop participating late in the quarter and you will be dropped.  If you intend to drop please do so yourself, so you don't accidentally end up with an unintended "F."

If you decide to drop the class, please let me know.  I cannot allow anyone who has dropped to continue to have access to the material.

Missing Days and Make Ups:
If you notify the instructor at least one week prior to an exam or quiz, it may be possible to take the exam or quiz at a different time than the scheduled date – this different time will be on the same day if possible, or typically on a day prior to the exam otherwise.  No make-ups will be given for exams, presentations, or other such graded events, that were missed without prior notification to the instructor.  In any case, the notification of absence must be given at least 2 days before the exam/quiz/event. The only exceptions are documented medical and other emergencies (you can forward text messages to the professor's email). Detailed information about Foothill's Health Services are available at the Health Services website.

S.9 Collaboration

decorative picWorking together on individual homework = ZERO + Dean of Student's Office. 

Spouses, roommates, and friends taking the course together: don't discuss ungraded individual homework with each other outside the public forums.  Instead, direct all of your questions to the public forums where everyone can comment and I can moderate the discussion. Do not look for answers on cheater web sites or pay-for-help web sites.

Any variation of collaborating or copying individual programming lab assignments is prohibited. The general rule of thumb is to type your own code! An individual assignment must be 100% your own work. Changing a few variables around to make them look different won't fool me.  And if it does fool me, you probably had to change so many things that you knew enough to do it yourself in the first place.

You can talk about the modules all day long off-line if you wish.  This rule only applies to individual lab assignments. There is a place to ask for help with homework: the Public Discussions labeled for that purpose or the STEM Success Center.  I will spend hours helping you each week, both individually, and in groups. You can even answer each other's questions in the Public Discussions.  If I think you are giving too much information away, I'll edit your post.  So there is no reason to ask your fiancée or your cousin's neighbor's lead guitarist.

If you accept help from someone who is not trained to teach without giving away the answer, it will short-circuit your learning process -- you will actually become a worse programmer.  Now, you don't have to agree with me - but you do have to follow the rule.  In this class we do some assignments in groups, but for individual assignments, you are agreeing to do them on your own or with help from us, here, in this course's public forum.

For those of you wishing to give help, please do not give away the answer.  Either tell the person where they can look to find the solution, give them a general idea or ask them to ask me.  Don't post actual assignment code.

S.10 How to Ask a Question

All relevant questions are welcome, just make sure your question is asked well in a good format:  Make it specific.  An example of a badly asked question is, "My program doesn't work.  Here it is.  Would you please see if you can tell me what I am doing wrong?"  An example of a asking a question well is, "My program doesn't work.  Through trial and error I have determined that the problem lies in the following five lines, but I can't seem to narrow it down any further.  Can you help?"  The second students' question made an attempt to organize and isolate the problem prior to asking for help.  When they get my answer, they are sure to remember it because they are prepared to hear exactly what they need to know.

Another example:  BAD: "I don't understand the assignment.  I'm lost.  Please help.  Jackie."  The reason this is a bad question is that there are a million things I might say to get Jackie on the right track, but I can't know which ones to focus on because I don't know where Jackie's misunderstanding lies.  Jackie hasn't helped be help Jackie.   GOOD: I understand the homework description up until you say 'XYZ'.  But I'm not sure what you mean by 'XYZ'.   In the lectures 'XYZ' seems to be ... but here it seems to mean something different.  From that point on, things get hazy because of this mismatch.  Would you resolve this apparent difference for me?  Jackie."  Here, Jackie has told me exactly the first point at which Jackie is confused so I know what to tell Jackie.

I am not discouraging questions:  I want you to ask.  Through them, I get a chance to communicate with you.  But narrow down the question.  Show me you have tried to answer it and have made some progress.  Show me exactly where you seem to be faltering so I can know how to help you.  The same holds true if you are posing your question to a fellow student or to the whole class.

S.11 To Obtain Disability-Related Accommodations ...

Please contact Disability Resource Center (DRC) at the start of the quarter or as soon as you become disabled. To contact DRC, you may:

  • Visit DRC in Room 5400

  • Email DRC at adaptivelearningdrc@foothill.edu

  • Call DRC at 650-949-7017 to make an appointment

More information is available at https://foothill.edu/drc/ .
If you already have an accommodation notification from DRC, please contact me privately to discuss your needs.

 

S.12 Expanded Content

  • Week 1 - Review of OOP, Strings, Eclipse, static, instance methods, the this reference.
  • Week 2 - Review of arrays, sorting, recursion, binary search.
  • Week 3 - Binary, hex, bit operators, Cellular Automata, multi-dimensional arrays, stacks, multi-file projects.
  • Week 4 - Inheritance, method overriding, constructor chaining, inner classes.
  • Week 5 - Java GUI programming, Swing, events, listener classes, RPN calculator.
  • Week 6 - Applets, JPanels, guarded code, exception throwing and catching.
  • Week 7 - Abstract classes and interfaces, the cloneable interface and deep copies.
  • Week 8 - Abstract data types (ADTs), Java collections framework, ArrayLists, Dequeues, PriorityQueues, iterators.
  • Week 9 - Java generics, File I/O.
  • Week 10 - The tree ADT, traversals, multi-threaded programming
  • Week 11 - GIT repositories, review.
  • Week 12 - Final exam.

You can access the official course outline of record for all CS courses here:

From that page, select Dept: Computer Science → Search, and from there, select any CS course whose official outline you want to review.

Student learning outcomes for this and other CS courses can be found

S.13 Tentative Course Calendar, Activities, and Due Dates

Your professor reserves the right to change the assignments, activities, and their due dates.

S.14 Weekly Activities

Every week you have two lessons, or Modules, to study and one Lab Assignment to turn in. There are exceptions (see calendar, below), but this is the basic format. This course is a lot of fun, and a lot of work. To pass it you have to make time to do all of these activities.

This course includes 2 “hybrid” hour(s) per week. These “hybrid” hours are conducted via the Internet and not in a face-to-face class session on campus. In order to fulfill the participation requirements for these “hybrid” hours, students are expected to complete the following online activities each week:

  • Discuss course topics in the relevant Canvas discussion forums.
  • Complete any left over work for the Lab Assignments, including group work than can be done online via the Canvas Conferences or ConferZoom.

Weekly Time Estimate (outside of classroom meetings)

  • Module Reading - about five hours. This includes pasting code into your IDE and trying it out.
  • Lab Assignment - about six - 10 hours. This varies greatly with individuals. Some students take one hour, some take 20 hours.

 

Typical Week

Here is the day-by-day breakdown of a typical week. Some weeks differ, but this will help you understand approximately what you are facing on a weekly basis.

Typical Week
Monday (first 2 or 3 weeks only) Read resource module R
Before Tuesday's Class Read module A
Before Thursday's Class Read module B
Friday Lab Assignment due

S.15 Other Activities: Discussions, Announcements, Tests

Discussions

You can ask me or other students questions in the Discussion area.  I hope you will be active in this area.  Read through the recent Discussions posts every time you log in to make sure you gain the benefit of other students' questions.

Weekly Posts Recommended (Not Required)

Other than the first week's introduction, you are not required to post every week. However, if you are having difficulty, you should reach out and ask questions.

No Exact Homework Code Allowed

Please phrase questions in plain English or use non-homework code examples to demonstrate you question or suggested answer when posting.

Follow Module 3R When Posting

Code fragments must be formatted according Module 3R to receive an answer. Otherwise, we'll ask you to fix the formatting and we'll check back to answer the question once the formatting is achieved.

You must also post an introduction in the first week to avoid being dropped as a no-show.

Announcements

You will see an Announcement area in the Canvas course tools menu on the left. Check that area every time you login for late-breaking news.

Tests

There is a midterm exam on Friday of the sixth week, and there is a Final Exam on Thursday of finals week (usually the 12th week).  The midterm exam will be available for 18 hours starting 6 AM on the due date and will be due by midnight.  You must take the midterm exam in that 18 hour period. You must take the final exam in our classroom during finals week. I will not accept late midterms or final exams. You are to take the midterm in a single one-hour sitting and the final in a single two-hour sitting. The test will automatically submit and lock-you-out when the designated time runs out after you begin it. If your network connection fails the timer will continue by when you log back in you will resume where Canvas "thinks" you left off.

Optional Modules

There is an occasional Module C in some weeks.  I did not put this on the calendar. These modules constitute optional reading meant for advanced and ambitious students.

Assignments / Homework:

The terms “homework” and “assignment” are interchangeable, and everything that I say here that applies to one, applies to the other.

Once homework has been graded, I’ll return it to the class, either electronically or in print (usually via the Java Code Critic).  You might then have the opportunity to revise your work (in whole or in part), and re-submit your work for a re-grade.  
This approach to re-grades is sometimes referred to the “mastery approach”.  The higher grade of the two will be your final grade for that homework assignment.  
There are a couple of caveats: when you resubmit your work in this way, I reserve the right to not just re-grade the work, but also check to make sure that the work is correct, and may then follow up with email or verbal questioning of you. I might contact you via your email or phone number to setup an appointment to meet with you.
I reserve the right to assign you additional problems, if I feel that your grasp of the concept is shaky.  This will be to your benefit, since the best way to learn how to program is to do it.   You have approximately 1 week (sometimes longer) from the time the class gets the graded assignment returned to submit your revision.  This means that if you are absent on the day that an assignment is returned to you, and haven't made prior arrangements with the instructor, then you will still only have 1 week after the rest of the class got their grades to do your revision. 
If you miss too many classes, you might end up not having the chance to do a revision.  You may only submit in one revision per assignment.
If you haven't submitted the initial version of the homework assignment by the time that the instructor goes to grade it, then you can still submit it on or before the deadline for the revision, and it will be graded without penalty but you will NOT BE ALLOWED TO REVISE that assignment.
If you haven't submitted a revision to a homework assignment by the time that the instructor goes to grade it then you will keep the initial grade for the homework (if you didn't submit the initial version either, this means that you will receive a zero for that particular assignment, and the Instructor HATES to assign zeroes).
Late Policy:
Any work that is not submitted to the instructor for grading will be assigned a grade of "0".
The general policy for work that is submitted electronically is that work is not late until the instructor goes to grade the work and finds it to be missing.
In practical terms this means that if the instructor hasn’t graded something yet you can (typically) still upload the work and have it be graded as if the work had been handed in on-time (i.e., penalty-free).  The instructor will wait until the work is due to grade it (of course), but makes no guarantees about waiting any longer than that.
In other words: for work that the instructor has not yet graded you can take your chances that the instructor will be back-logged enough for you to get the work done and submitted but if the instructor grades it before you can finish (including submitting) the work then you will get the zero for not having it in on time. I recommend you don't take such chances!

Exams:
The exams will be cumulative: any topic covered from the beginning of class till the time of the exam is fair game for questions.  The exams will include and will emphasize problem solving, and utilization of what you’ve learned in class. 
For written (on paper) exams, fewer points will be deducted for conceptually unimportant syntax errors (e.g., incorrectly capitalizing the word "if"), while more points will be deducted for important syntax errors (e.g., leaving the "extends Robot" off of a new class declaration).
Students must take both the Midterm Exam and the Final Exam in order to pass this course. Students who do not take both exams will receive a failing (F) or not passed grade.
In general, the final exam in this class will NOT be returned to students.  You may request to view your completed, graded exam for a reasonable, short amount of time in the instructor’s presence, but you will not be given the final, nor may you make copies of the final exam.
Class Time:
Class time will be used not just for lecture time, but also for various in-class activities that you will be expected to participate in.  Thus, you should consider attendance to be mandatory; roll call will be done at the start of each class.  If you show up on time for all classes, stay for the entire class, and actively participate in the in-class activities and do well on the quizzes, you should receive the full points allotted to this category. 
Class participation will be assessed in the following manner: at the beginning of class there will be a short quiz on the contents of the previous lecture. If you do a reasonable job of correctly completing the In Class Exercises(ICEs), you will get points for that ICE. The two most important aspects of doing the ICEs are that you are doing a reasonable job for your ability level, and that you are learning the material. If you are late for class you will also usually lose 20% of that day's attendance points. Attendance is usually taken while the quiz is given.
Missing Days and Make Ups:
If you notify the instructor at least one week prior to an exam or quiz, it may be possible to take the exam or quiz at a different time than the scheduled date – this different time will be on the same day if possible, or typically on a day prior to the exam otherwise.  No make-ups will be given for exams, presentations, or other such graded events, that were missed without prior notification to the instructor.  In any case, the notification of absence must be given at least 2 days before the exam/quiz/event. The only exceptions are documented medical and school emergencies (you can forward text messages to the professor's email.
Grading Disagreements:
Any disagreements about your grade should be brought to the instructor's attention immediately (waiting is always a sad mistake). 
Unless stated otherwise, all work should represent your own original, independent thinking.  Unless stated otherwise, all out-of-class assignments are not meant to be group projects. While in the classroom working on exercises, you are encouraged to either seek help or to offer help from those around you. It’s a programming party!
It is okay to talk with classmates to clarify conceptual understanding necessary to complete assignments.  However, copying another person’s work in whole or in part, either manually or electronically, it not acceptable; nor is copying and slightly modifying another person’s work acceptable. Type your own code! You are here to increase your own knowledge and understanding and your exams' scores will be based only on your own knowledge and understanding, so type your own code. In the event copying should occur: all participants in the plagiarism (both the person plagiarizing, and the person whose work was taken) will receive:
1. A 20% penalty on the first offense
2. A grade of zero for the second offense, and
3. For a third (and final) offense, all parties will be given the option of either withdrawing (if the drop deadline hasn't been passed) or taking a "0.0" for the term.
Second (and third) offenses include offenses from prior terms. A description of all such incidents shall be forwarded to the Dean of Students office, where a file of such occurrences will be maintained.
Group projects are learning exercises like individual projects: every individual in the group is expected to understand all the material as if each person had done the entire assignment individually.  Therefore, it is fair game to ask any person in a group to explain any aspect of the assignment that the group has done.

If you accept help from someone who is not trained to teach without giving away the answer, it will short-circuit your learning process -- you will actually learn less. For those of you wishing to give help, please do not give away the answer.  Either tell the person where they can look to find the solution, give them a general idea or ask them to ask me.  Don't post actual assignment code. Do not look for answers on cheater web sites or pay-for-help web sites.

Electronic Submission:
I would like you to electronically submit all assignments.  You should type all assignments & homework answers into the computer (including essay questions), make sure it runs correctly, and submit the files for any given assignment. Usually this will be done using the Java Code Critic. More details will be given in class how to submit assignments.
Today’s technology is inherently unstable: Your network might go down, your Internet Service Provider might be down, the public library might not be open, you might be unable to get Microsoft Word to do exactly what you want. While you might have this happen to you, it’s not an excuse for handing in an assignment late! Knowing this, you should include time in your schedule to compensate for possible technological snafus. For assignments having a hard deadline, no leeway will be given for failing to hand in work because of technological problems.
Attendance:
You are responsible for what goes on in class whether present or not. You are responsible for making up any work, assignments, quizzes, etc., for missed classes.
Attendance is very important, since the course is structured to require active involvement and participation on the part of the student. Missing a class means missing material that is difficult to make up. Daily attendance records will be kept.
If you must miss a class, you will have to arrange to get the class notes and any other information from another person. Get to know some people in the class and stay in contact via the Canvas Inbox so if you do miss a class you can obtain assignments, quiz information, etc., for the following class.  
Other Notes:

The number of projects and the points possible for exams, projects and activities are subject to change depending on the circumstances of the class. I reserve the right to modify any and all aspects of the course, any time, without prior notice, including this syllabus.

Classroom Conduct and Courtesies

Following these simple guidelines will help me to offer an enjoyable teaching environment for you. You are expected to come prepared to class and on time as scheduled. Coming late and/or unprepared is disrespectful and disruptive both to me and the other students in class, and may result in point deductions. If you must come in late, take out your supplies or notes before coming into the classroom and quietly enter the room without speaking to anyone. If you have any personal concerns, please feel free to talk to me at the end of class.

Please remember to respect the following list for me and the students around you.

* Please remember to respect other students and your instructor by not using inappropriate language.
* Please silence your mobile devices such as cell phones.
* Do not play computer games or visit gaming websites during class times.
* No chat or messenger programs during class times.
* Do not use personal audio devices such as MP3 players or cell phones during class times.
* No Internet surfing, texting, or other mobile device activity that will distract students or the instructor.

Withdrawals: If you decide to drop, it is your responsibility to submit an official drop to the Admissions Office. Do not assume that you will be dropped automatically.

Proactivity and Self-Starting

Rule #1: If you want to learn programming you MUST do the reading and you MUST do the exercises and you MUST take advantage of whatever resources and sources are available in order for you to deeply understand it. Programming does not come magically or trickle into your head by osmosis. You cannot skate. It takes work. You must dedicate hours each day reading about code, writing code, researching code, puzzling out code, working the code again and again, and wrestling it into place. Eventually you might even find yourself dreaming about code, and then waking up in the morning with a “solution” to the problem you went to bed with. There is no other way to learn it.
Rule #2: Google it! Answers from Stackoverflow.com are usually great if you read the whole page.
Rule #3: Be resourceful, energetic, proactive, flexible, a self-starter, self-reliant, self-disciplined, and show drive and initiative! Show a friend (they don't even need to know how to program) how your program works and often you will realize the cause of your problem before you even finish your explanation! You are expected to do this in class.
Rule #4: Don’t get frustrated. Take breaks. Walk away from your code for an hour or two, and then come back to it refreshed and rejuvenated. It works!
Rule #5: Search for it again! And again! And again! Maybe you are in a Filter Bubble, so try another search service like StartPage.com or DuckDuckGo!

 

Undocumented Students

The Foothill-De Anza Community College District Board of Trustees unanimously adopted this Resolution in Support of Undocumented Students and this Resolution in Support of DACA, the Deferred Action for Childhood Arrivals program. Resources for the undocumented can be found at:

 

Tentative Course Schedule:

The complete schedule is found in the course Modules page. What follows is a summary of those items that have a due date. I reserve the right to change anything in the schedule.

Course Summary:

Course Summary
Date Details Due