490 likes | 500 Views
Class motto: What ’ s this button for?. CMSC104. Problem Solving and Computer Programming Section 4, Spring 2012 Prof. Richard Chang. Contact Information. Email: chang@umbc.edu Office hours: ITE 326 Tues & Thurs: 2:00 – 3:00pm. Am I in the Right Class?. CMSC 104
E N D
CMSC104 Problem Solving and Computer Programming Section 4, Spring 2012 Prof. Richard Chang
Contact Information • Email: chang@umbc.edu • Office hours: • ITE 326 • Tues & Thurs: 2:00 – 3:00pm
Am I in the Right Class? • CMSC 104 • Assumes NO programming experience • Prepares you for CMSC 201 • Does NOT count towards the CS major • Meets a requirement for other majors: i.e. Biology, Physics, Financial Economics • CMSC 201 • Assumes some programming experience • First CMSC course for CS majors • More challenging
CMSC100 vs CMSC104 • CMSC100: less technical, less programming, more overview of computer science. • CMSC104: concentrates on programming, you have to learn programming to pass this class.
This is an ELECTIVE class Main Objective: Learn Programming in C Strategy: Classwork ⇒ Homework 1 ⇒ Homework 2 ⇒ Quiz ⇒ Final
Command Line Interface • Basic use of • an operating system (Linux) • a text editor
Levels of Programming • typing: copy a program verbatim • coding: convert high-level solution (pseudo-code?) into syntactically correct program • design: producing a high-level solution to original problem • debugging: oops!
Debugging • bugs: mistakes in your program • debugging: removing bugs • Almost no one writes bug-free programs on the first attempt • Programming is mostly recovering from a series of bugs • Be resilient!
Course Web Page • Location: http://umbc.edu/~chang/cs104 • Announcements • Course Syllabus • Homework Assignments • Powerpoint? I hate Powerpoint
Why do I hate Powerpoint? The next slide never has what I want to say.
Why do I hate Powerpoint? Besides, I’m not going to just stand up here and read the slides to you verbatim.
Grading • 14 Classwork: 14%, 1% each • 13 Homework: 26%, 2% each • 5 Quizzes: 30%, 6% each • 1 Final Exam: 30%
No Late Homework • Assigned on Tuesday • Due next Tuesday, 11:59pm • 2 class meetings to ask questions
How hard is the homework? • 10 minutes for C programmer • 30-60 min for “good” student • ??? for “less good” student
Classwork • Must be done in class • Can “finish up” by next class for 10% improvement • Miss class ⇒ miss classwork
Extra Credit • Must be “mostly” correct • Can only replace classwork and homework scores • 110% HW+CW & 80% Quiz+Final = 100% x 40 + 80% x 60 = 40 + 48 = 88 = Bnot = 110% x 40 + 80% x 60 = 44 + 48 = 92 = A
Do No Classwork? Classwork 0% x 14 = 0 Homework 100% x 26 = 26 Quizzes 100% x 30 = 30 Final Exam 100% x 30 = 30 Total = 86 = B
“Outsource” Homework? Classwork 100% x 14 = 14 Homework 100% x 26 = 26 Quizzes 50% x 30 = 15 Final Exam 50% x 30 = 15 Total = 70 = C
Fall 2011 Grade Distribution • 8 A’s • 8 B’s • 9 C’s • 2 D’s • 7 F’s (includes 3 final exam no shows)
Academic Integrity • Do your own work= nice, hard-working, diligent student • Do no work= lazy / over-committed / forgetful student • Cheat= pond scum
Allowed • Help from Help Center & instructor • Help from other sources (incl. classmates) • Discuss assignment • Identify syntax errors • Identify simple logic errors
Not Allowed (not exhaustive) • Someone else typing code in your program • Cut & paste more than 1 line of code • Looking at someone else’s program while typing in your code • Receive someone else’s program by email, text message, hard copy, … • Send program to another student …
General Philosophy This policy recognizes that students can learn productively from many sources including from other students in the class. Thus, this policy allows small amounts of help but prohibits outright copying. Although, this leaves a gray area between "small amounts of help" and "outright copying", it is better that we live with some ambiguity than to have a clear-cut policy that deprives the students of productive learning opportunities. Students who have doubts about the propriety of an activity should consult the instructor.
Academic Integrity • Do your own work= nice, hard-working, diligent student • Do no work= lazy / over-committed / forgetful student • Cheat= pond scum
Scenario #1 Classmate: “My program won’t compile. It says ‘missing semi-colon’ !”
Scenario #1 Classmate: “My program won’t compile! It says ‘missing semi-colon’ !” OK to help point out location of missing semi-colon. (Yes, you can look at his/her program to find it.)
Scenario #2 Classmate: “Why won’t this print statement execute??? #@!#$!# !”
Scenario #2 Classmate: “Why won’t this print statement execute??? #@!#$!# !” OK to look at his/her program to help find logic error. NOT OK to tell him/her how to rewrite the program.
Scenario #3 Classmate: “I don’t know how to get started on this homework. Can I see what you did?”
Scenario #3 Classmate: “I don’t know how to get started on this homework. Can I see what you did?” NOT OK to show him your program. “Good thing you started the program when it was assigned. Ask Chang in class tomorrow, he’ll give us some hints.”
Cheat “legally”?? How can one student show his completed program to another student “legally”?? Still won’t learn much, still pond scum.
This is an ELECTIVE class Manage your own learning experience! Remember: Classwork ⇒ Homework 1 ⇒ Homework 2 ⇒ Quiz ⇒ Final
“Outsource” Homework? Classwork 100% x 14 = 14 Homework 100% x 26 = 26 Quizzes 50% x 30 = 15 Final Exam 50% x 30 = 15 Total = 70 = C
Scenario #4 It is one hour before homework is due. You can’t get homework finished in time.
Scenario #4 It is one hour before homework is due. You can’t get homework finished in time. NOT OK to have your CS major boyfriend/girlfriend/roommate/parent/sibling do it for you in 10 minutes.
Scenario #4 • It is one hour before homework is due. • You can’t get homework finished in time. • You won’t die, HW is only 2%. • Do as much as you can in one hour and submit it for partial credit. • Start on next week’s HW so this won’t happen again. • Do extra credit to make up the points.
Academic Integrity • Do your own work= nice, hard-working, diligent student • Do no work= lazy / over-committed / forgetful student= at least he/she didn’t CHEAT! • Cheat= pond scum
How to make this class harder • Skip class • Come to class but spend the whole time checking email, facebook, shopping, ... • Come to class late all the time • Come to class, don’t ask any questions • Ignore the textbook • Wait until the last minute to start HW
Computer Science at UMBC • CSEE Student Services Office (Advising) • ITE 203 - 206 • CSHC (Computer Science Help Center) • ITE 201E • Linux Users Group (LUG) • http://lug.umbc.edu
DoIT Labs • The Dept of Information Technology is responsible for all lab computers. • On Web at: http://www.umbc.edu/doit • Labs with PCs: • ENG021, ENG104, ENG122, ENG122A, ENG333 • Labs may be on reserve for classes, so plan ahead! • Print Dispatch -- ENG 019 (10? cents/page) • Hours of Operations • DoIT will post outside of labs or go to: https://wiki.umbc.edu/display/doit/Computing+Labs+and+Facilities
Consultants vs. Tutors • OIT labs are staffed by consultants • using software (pine, Internet Explorer, etc.) • some text editors (xemacs) • operating system commands (Linux) • communicating with UMBC computers (TeraTerm)
Consultants vs. Tutors (con’t) • CSHC is staffed by student tutors • Help with homework and projects • xemacs and Linux questions • ITE 201E – Hours TBA
Hardware and Software Needs • Do I need my own computer? • No, but it is more convenient for you. • If I have my own computer, can I use it? • Yes, but there’s limited help for using your own. • Do I need a C Compiler? • Don’t buy one, the GNU C compiler is free.
Hardware and Software Needs • Windows: TeraTerm (from OIT), WinSCP, NotePad++ • Mac: Developer Tools (free), Terminal + Unix commands, TextWrangler • Linux: Installation is on your own • More later...
Getting a myUMBC Account • You MUST have a myUMBC account • You can get one by going to: http://accounts.umbc.edu (NO www.) • Your account can be used in ~½ hour • Grades, etc.
Booting into Linux Modify instructions posted on the walls: • press CTRL-ALT-DEL • select “Restart” from pop-up menu next to the shutdown button on bottom right • select “Linux” using arrow key • log in using usual password
Reduce Firefox Cache Size You have a disk quota of 100MB. Set Firefox cache size to be 5-10MB.