Class motto: What’s this button for? 1 CMSC104 Problem Solving and Computer Programming Fall 2011 Section 4 Richard Chang 2 Contact Information Who am I? Richard Chang Associate Professor 20th year at UMBC BS in Mathematics/Computer Science PhD in Computer Science Computational Complexity 3 Contact Information Best way to contact me? Email! chang@umbc.edu Office hours: Where? ITE 326 When? Tues & Thurs: 2:30 – 3:30pm 4 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. Physics, Financial Economics CMSC 201 Assumes some programming experience First CMSC course for CS majors MUCH more challenging 5 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. 6 What Will We Cover? 1. General computer hardware and software concepts 2. Basic computer use 3. Problem solving 4. Basic computer programming in the C programming language 7 1. General Hardware and Software Concepts Introduction to computer architecture Data representation and memory usage Introduction to operating systems Linux 8 2. Basic Computer Use Basic use of an operating system (Linux) e-mail (pine) a text editor 9 3. Problem Solving Problem solving and algorithm development learn problem solving by solving problems use of top-down design lots of practice 10 4. Basic Computer Programming in the C Programming Language Compiling, linking, and executing a computer program Testing and debugging a computer program C programming language basics 11 Course Web Page Location: http://umbc.edu/~chang/cs104 Announcements Course Syllabus Homework Assignments Lecture Notes 12 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. 13 Computer Science at UMBC CSEE Student Services Office (Advising) CSHC (Computer Science Help Center) ITE 203 - 206 ITE 201E Linux Users Group (LUG) http://lug.umbc.edu 14 OIT Labs The Office 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 OIT will post outside of labs or go to: https://wiki.umbc.edu/display/doit/Computing+Labs+and+Facilities 15 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) 16 Consultants vs. Tutors (con’t) CSHC is staffed by student tutors Help with homework and projects xemacs and Linux questions ITE 201E – Hours TBA 17 Hardware and Software Needs Do I need my own computer? If I have my own computer, can I use it? No, but it is more convenient for you. 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. 18 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... 19 Class motto: What’s this button for? 20 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 21 Simple UNIX commands ls lists files in the current directory cat filename displays content of specified file mkdir dirname makes a new directory (a.k.a. folder) cat > newfile stores console input to file. end using ctrl-D 22 Classwork #1 ① ② ③ ④ use cat > filename to store your best(clean) joke or personal motto in a file. use cat filename to check that your joke or motto was correctly saved. have neighbor check if joke is funny. If not, rm filename and try another joke/motto. submit using submit cs104_chang cw01 filename ⑤ check your submission with submitls cs104_chang cw01 23