CS100J,
Spring 2003. Home page
|
||||||||||||||||||||||||||||||||||||||||||||||
Discussion of the grades for the course BEFORE YOU EMAIL dgries@charter.net ABOUT YOUR GRADE, please read the complete discussion of grades. Also, if you email gries, mention that you actually read this discussion thoroughly. He will not reply to any discussion about your grade unless you mention this (other than to say that you should read this discussion first). The table below shows the distribution of letter grades for the course (not taking into account that some people took the course pass/fail).
Notes: 1. We said that if people did better on prelim 2 than the prelim 1, we would take that into account. We did this by changing the weights of prelims 1 and 2 from 15% and 15% to 10% and 20%. 2. We made a list of students who did better on prelim 1 than on prelim 2. The final letter grades reflect looking at each of these students individually and changing their grades to make sure they were not penalized because of step 1. 3. The grade distribution in the table above shows that 25% of the students got A or better and 75% got B or better. We don't think that anyone can honestly claim that grades were given unfairly. Many students in the first few programming courses think that if they do quite well on the programming assignments, then they deserve a high grade. Well, most students do very well on the programming assignments, because they have the chance to work and work and work until finally the program seems to be right (as opposed to homeworks in, say, a math course, where one is not always sure). But doing those homeworks is not the real test. The real test is that they know the material so well that they get high marks on the prelims and final. If everyone got As on the prelims and final, we would be most happy to give everyone an A. But if the tests are not A quality, why should one deserve an A? An A should mean that you have mastered the material, and you should be able to demonstrate that on tests. 4. About changes in prelim statistics. As the course progressed, the mean for prelim 1 and then prelim 2 rose considerably. This was not, as many students thought, because of regrades. In fact, the amount of points added for regrading was rather small. The changes were due to two things. (a) The course statistics counted people who did not take the prelim --a blank for a grade was counted as a zero. This was actually caused by a misunderstanding by whoever coded it about statistics and what they meant --take this as a lesson in making sure you know what a progam is to do before writing it! This caused the mean to be quite low. As the semester progressed, we weeded the people who dropped the course out of the list of students. Since their blank grade was no longer counted as 0, the mean went up. Deleting 10-20 people in this manner had a drastic effect on the mean. (b) Some people (a very few) took the prelims late.
1. Review sessions for the final:
NOTE ON ASSIGNMENT 10!! Please insert ALL Matlab code, including any functions that you write, into ONE file and submit that one file. We will not run the code. We will just look at it. Assignments 9 and 10. Both assignment due dates have been pushed back to just before midnight on Thursday, 1 May. This is to give you flexiblity in working on them. You are still allowed to submit them on the old due date, 29 April, if you want. Note that both assignments are to be submtited on the course management system, not on paper. This instruction superceded what you see on some assignment handouts.
Recitations the week of 28 April. The recitations will be at their regular times and places. Topic: Input/output in Matlab. Prelim II is graded. Look at the CMS. Grades are much better than Prelim I. You can pick up your graded Prelim II in Carpenter at about noon on 16 April. Handout on preparation for prelim II. Sample questions. Assignment 9. Here's a jar file and a list of games that you can use to see what assignment 9 will be like. Double-click on the jar-file icon to run that Java program. When a dialog box asks you for a file to use for input, use the list of games. Then follow instructions in the GUI that opens. Here is assignment 9. Assignment 6 on TVShows. This assignment has not been graded yet. Assignment 8 is now available. Due 7 April. Assignment 7 is now available. Due 31 March. Prelim 1 has been graded. The grades are rather low. If we were to give letter grades to them at this point, it would be something like this: A-..A+: 80-100. B-..B+: 65-79. C-..C+: 50-64. Below 50: F. Clearly, the class as a whole did not have the same idea about what was important as Gries did. A test is meant to give feeback, both to the teacher and to the students, and it did this. And some remedial work has to be done. Gries and the TAs are willing to meet with small groups of students (say 3-4 at a time) to go over what was not learned, to talk about study habits and what one can do to learn the material as we believe it should be learned. It is not difficult; it just means learning some things by rote, memorizing them. We emailed everyone who got F to this effect, but we will meet with anyone who wants to improve. And if there is major improvement, the first prelim will count for far less than the amount we indicated in the begininning of the course. In the next lecture, we will announce how to form small groups to meet with a Gries or a TA. For now, if you are interested, email Gries. This link will always tell you what was covered in previous lectures! Look at it often. Fixing typos in assignment A6: The names of the three classes are TVShow, ThumbsUp, and ThumbsDown. An older version of the assignment said Negative and Positive instead of ThumbsUp and ThumbsDown; disregard that. Also, the getter method for notes/reviews (we use those words interchangeably) should return the value of the field. An older version of the assignment said that it should return an error message.
Synopsis CS100J and CS100M offer an introduction to elementary computer programming concepts. The courses emphasize techniques of problem analysis and the development of algorithms and programs. To enroll in CS100, you must register for either CS100J or CS100M, which both use Java and MATLAB in different amounts to teach the same concepts:
Neither course presumes previous programming experience. To take CS100M, you must have a firm background in mathematics and at least one semester of calculus. Refer to http://www.cs.cornell.edu/ugrad/FirstCourse.html#CS100 for more information about both courses. Alternatives If you are shopping around for a "first course" to take in computer science, the CS department offers both programming and non-programming courses. Refer to http://www.cs.cornell.edu/ugrad/FirstCourse.html for more information about the courses that may suit your needs better than CS100. You might be interested in CS/ENGRI 172: Computation, Information, and Intelligence, which is a non-programming introduction to computer science through the lens of artificial intelligence (fall only). Exams The two prelims are 7:30--9:00PM, on 13 March and 15 April. |
||||||||||||||||||||||||||||||||||||||||||||||
![]() |
![]() |