|Office Location:||MacQuarrie Hall 217|
|Telephone:||Please use email|
|Email:||firstname.lastname@example.org Or contact me through Piazza Or with Canvas messaging|
|Office Hours:||TR 2:45 - 3:15 or on Piazza anytime|
|Class Days/Time:||TR 1:30 - 2:45|
|Prerequisites:||Eligibility for college level mathematics; Computer Science, Software Engineering, or Undeclared major; or instructor's consent.|
Final: Tuesday Dec 19, 2017 1215 - 1430 (regular classroom)
Tentative Exam dates: Oct 5 and Nov 14
Basic skills and concepts of computer programming in an object-oriented approach using Java. Classes, methods and argument passing, control structures, iteration. Basic graphical user interface programming. Problem solving, class discovery and stepwise refinement. Programming and documentation style. Weekly hands-on activity.
For the official catalog description, please visit the online catalog at http://info.sjsu.edu/web-dbgen/catalog/courses/CS046A.html
Upon successful completion of this course, students should be able to:
This is a 4-unit/15-week class, so you should expect to spend at least 180 hours per semester or 12 hours per week on this class. Many students need to spend much more time.
We are fortunate this semester to have Supplemental Instruction made available to us through Peer Connections. Supplemental Instruction is an academic assistance program which provides peer-led group study sessions to assist students in traditionally difficult courses. And it is free! Students who attended last semester found it very helpful.
The sessions are led by a SI leader who has already mastered the course material and has been trained to facilitate group sessions where students can meet to improve their understanding of course material, review and discuss important concepts, develop study strategies and prepare for exams. SI is for everyone, and open to all students enrolled in this class. Attendance at SI sessions is free and voluntary. Students, who attend SI sessions weekly, typically earn higher final course and exam grades than students who do not participate in SI. Please bring your lecture notes, computers, and questions with you.
SI study sessions meeting times will be determined by taking a poll of interested students and finding the most convenient time. The location will be determined once the time has been set.
|Your SI Leader|
Yen will be attending all classes with you and will facilitate the class activities.
SI sessions meet two times a week, throughout the semester.
Note that these sessions are not tutorial sessions for doing homework. They are sessions to help you understand the material. Please do not ask Quoc or Yen specifically how to do a homework problem. But if the homework requires a loop, it would be an excellent idea to ask them how to write a loop.
You earn 2 participation points for each session you attend. (That is about 60 points)
You can read the Lab rules here (http://cs46labs.bitbucket.io/lab-rules.html)
Your grade for the course is based on each of the exams, the finals, the total homework, the labs, the quizzes, and participation. Grades are calculated by weighting the scores as defined above. I do not curve grades.
This class use to be graded ABC/NC. But the University has changed its policy and the class is now graded with a traditional letter grade. See the scale below
|At least||Letter Grade|
You must earn at least a C (73) to be eligible to table CS/SE 46B
Note that “All students have the right, within a reasonable time, to know their academic scores, to review their grade-dependent work, and to be provided with explanations for the determination of their course grades.” See University Policy F13-1 at http://www.sjsu.edu/senate/docs/F13-1.pdf for more details."
All homework and exams must be your own individual work. It is OK to have general discussions about homework assignments, or read other material for inspiration. You may never copy anything from anyone without attribution. This means if you find code on Stackoverflow or another web site, you need to give the URL where you found the code in a comment at the top of your class so that I can look at it if necessary. You may copy from the textbook, the labs, or anything we do in class without attribution. For homeworks and exams, you may not copy anything from any other student at all, and you may not collaborative produce results in pairs or teams. Your work must be entirely your own.
It is never okay to give your completed code to another student before the due date. It the other person submits your work, I have to give you both a 0. Please do not risk this by giving your code to your friends.
A first incident of cheating will result in a 0 on that assignment or exam. A second incident will result in a failure for the class.
(a) An ability to apply knowledge of computing and mathematics to solve problems
(b) An ability to analyze a problem, and identify and define the computing requirements appropriate to its solution
(c) An ability to design, implement, and evaluate a computer-based system, process, component, or program to meet desired needs
(i) An ability to use current techniques, skills, and tools necessary for computing practice
(j) An ability to apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the trade-offs involved in design choices
(k) An ability to apply design and development principles in the construction of software systems of varying complexity
Add Policy: I will not give out any add codes this semester.
Publicly Viewable Work: Your class work (including homework, exam, and project work) may be viewable by other students of this course. Your grades will not be viewable by others.
Copyright of Materials: All materials created by the instructor for this course, including lectures, handouts, homeworks, exams, solutions, projects, and so on, are copyrighted property of the instructor. You may transcribe lectures or copy course materials for the use of yourself and other students registered in this course. You may not sell or give transcriptions of lectures or copies of course materials to others without the prior written consent of the instructor.
|Quiz#||To read in the text||To watch on Udacity||Homework
|1||29-Aug||Lab 2||Quiz 1||1.3 – 1.6||Lesson 1 video
Through Kylie's Advice
|2||31-Aug||Quiz 2||1.7, 2.1 – 2.2||rest of Lesson 1 and Lesson 2
Video through "How many days"
|3||5-Sep||Lab 2_5||Quiz 3||2.3 – 2.4||Lesson 2 throughToUpperCase||Hw1 final|
|4||7-Sep||Quiz 4||2.5 – 2.8||rest of Lesson 2||Hw2 draft|
|5||12-Sep||Lab 3||Quiz 5||3.1 – 3.3
||Lesson 3 through
Improving the documentation
|6||14-Sep||Quiz 6||3.4 – 3.7||rest of Lesson 3||Hw3 draft|
|7||19-Sep||Lab 4||Quiz 7||4.1 – 4.2||Lesson 4 through Magic Number||Hw3 final|
|8||21-Sep||Quiz 8||4.3 - 4.5||rest of Lesson 4||Hw4 draft|
|9||26-Sep||Lab 5||Quiz 9||5.1 - 5.3||All of Lesson 5.1||Hw4 final|
|10||28-Sep||Quiz 10||5.4 - 5.8||All of Lesson 5.2||Hw5 draft|
|3-Oct||Lab 6||review||Hw5 final|
|11||10-Oct||Lab 7||Quiz 11||6.1 - 6.3||All of Lesson 6.1|
|12||12-Oct||Quiz 12||6.4 - 6.5||Lesson 6.2 through Most
|13||17-Oct||Lab 8||Quiz 13||6.6 - 6.7||Lesson 6.2 through Finding
|14||19-Oct||Quiz 14||6.8 - 6.10||Rest of Lesson 6.2||hw7 draft|
|15||24-Oct||Lab 9||Quiz 15||7.7-||Lesson 7.1 video through Lost
In a Good Book 2
|Hw 7 final|
|16||26-Oct||Quiz 16||7.7-||Rest of Lesson 7.1||hw8 draft|
|17||31-Oct||Lab 10||Quiz 17||7.1 -7.5||Lesson 7.2||hw8 final|
|18||2-Nov||Quiz 18||7.6 & 7.8||Video Lesson 7.3||hw9 draft|
|19||7-Nov||Lab 11||Quiz 19||8.4 - 8.6||Video Lesson 8 (static methods, etc)||hw9 final|
|20||9-Nov||Quiz 20||8.1 - 8.3||design patterns
|14-Nov||Lab 11||Exam2||hw10 final|
|21||16-Nov||Quiz 21||10.1 – 10.2||Video Lesson 9 up to Implementing
|22||21-Nov||No Lab||Quiz 22||10.3 -||Video Lesson 9 Implementing
|24||30-Nov||Quiz 23||9.1 – 9.3||rest of Video Lesson 9 (inheritance)||hw11 final|
|5-Dec||Lab 13||Quiz 24||9.4-||inheritance||hw12 draft|
Final: Tuedasy Dec 19, 2017 1215 - 1430