15
CIS*1500 Introduction to Programming CIS*1500 Learning to program The basic constructs of programming Programming in the C language Solving real problems Not just about coding!

lec 1 - WordPress.com · Daily Practice • Each chapter of the textbook contains activities and challenges • You are graded on your completion and success with those activities

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: lec 1 - WordPress.com · Daily Practice • Each chapter of the textbook contains activities and challenges • You are graded on your completion and success with those activities

CIS*1500Introduction to Programming

CIS*1500

• Learning to program

• The basic constructs of programming

• Programming in the C language

• Solving real problems

• Not just about coding!

Page 2: lec 1 - WordPress.com · Daily Practice • Each chapter of the textbook contains activities and challenges • You are graded on your completion and success with those activities

About me

• ???

Some basic things...

• Online textbook is required for this class

• You need access to a Raspberry Pi computer for this class

• You do not need a clicker for this class

• Textbook activities are due 9am every lecture day

• Labs start Monday

Page 3: lec 1 - WordPress.com · Daily Practice • Each chapter of the textbook contains activities and challenges • You are graded on your completion and success with those activities

The textbook

• zybooks.com• Register and log in

• Enter zyBook code UOGuelphCIS1500Fall2015• Click Subscribe

Do you want a SOCS t-shirt?

• Only available to CIS*1500 students.

• You have to attend the BBQ (5pm)... in front of the Reynolds building.

• Find the people who are handing out the t-shirts

• Passphrase for the T-shirt is “These aren’t the droids you’re looking for.”

• No quote, no t-shirt.

Page 4: lec 1 - WordPress.com · Daily Practice • Each chapter of the textbook contains activities and challenges • You are graded on your completion and success with those activities

The Basics

• Instructors:

• Justin Carvalho’s office: Reynolds 322A

• Judi McCuaig’s office: Reynolds 311

• Dr. Wirth’s office: Reynolds 211

• Contact info

• email: [email protected]

• Course Website: http://bucky.socs.uoguelph.ca

The Basics

• TA support

• approximately 20 TAs

• lab help

• tutorial sessions (announced on bucky)

• one on one help sessions

Page 5: lec 1 - WordPress.com · Daily Practice • Each chapter of the textbook contains activities and challenges • You are graded on your completion and success with those activities

Communication

• Read the course forums. Ask questions there.

• Announcements that are critical will be emailed (rare)

• Email questions to [email protected]

• Office hours and appointment times on course website.

• Ask questions early and often. If you have a question, so do at least 10 others. Someone has to be brave enough to ask it.

Getting Help

• Extra tutorial sessions will be available for sign up after second week of class.

• Your TA will be happy to help you during lab time.

• TAs will be available outside of lab times.

• You can attend office hours for help.

• Be on time for appointments and have specific questions ready.

• You may bring up to 3 classmates with you to appointments. More than that overfills the offices.

Page 6: lec 1 - WordPress.com · Daily Practice • Each chapter of the textbook contains activities and challenges • You are graded on your completion and success with those activities

Getting Help

• Course forums:forum.socs.uoguelph.ca

• Course website:bucky.socs.uoguelph.ca

course key is slowcheetah62

• If you've already logged into the course website you don't need the course key.

• Log in using your gryphmail username and password.

Getting started

• Labs start Monday.

• You need a Raspberry Pi computer for this course.

• Textbooks are optional.

Page 7: lec 1 - WordPress.com · Daily Practice • Each chapter of the textbook contains activities and challenges • You are graded on your completion and success with those activities

Assessment

• Practical (45%)

• Daily practice from textbook (20%)

• Assignments (25%)

• Exam (55%)

• Lab Exams (20%)

• Final Exam (35%)

Due dates

• Assignment 1 is due October 18 at 11:55 pm (10%)

• Lab Exam 1 is the week of October 26 (10%)

• Lab Exam 2 is the week of November 16 (10%)

• Assignment 2 is due November 22 at 11:55 pm (15%)

Page 8: lec 1 - WordPress.com · Daily Practice • Each chapter of the textbook contains activities and challenges • You are graded on your completion and success with those activities

Daily Practice

• Each chapter of the textbook contains activities and challenges

• You are graded on your completion and success with those activities

• Due at 9:00 AM every Tuesday/Thursday.

• One chapter per lecture

Assignment Grading• Assignments are graded in-person, by appointment. If

you forget to make an appointment, you won't get a grade.

• The mark breakdown is available with the assignment. The actual rubric will be available shortly before the due date.

• Assignments that compile with errors or warnings get a grade of zero.

• All assignments and labs must compile with:-Wall -std=c99 -pedantic

• Assignments that do not run will get a grade of zero. But they don’t have to run perfectly.

Page 9: lec 1 - WordPress.com · Daily Practice • Each chapter of the textbook contains activities and challenges • You are graded on your completion and success with those activities

Labs

• Labs will be each week

• Lab times are for tutorials and help with assignments

• Lab Exams are also held during lab times (two weeks)

• During lab exam weeks you must go to your own lab time

Course Grading Policies

• Passing Grade:

• In order to pass the course, you must pass both the practical and exam categories. Students must obtain a grade of 50% or higher in the practical and exams assessment categories in order for that category to be counted towards the final grade.

Page 10: lec 1 - WordPress.com · Daily Practice • Each chapter of the textbook contains activities and challenges • You are graded on your completion and success with those activities

Course Grading Policies

• Missed Lab Exam:

• If you miss a lab exam due to documented grounds for granting academic or religious accommodation, the weight of the missed assessment will be added to the final exam. There will be no makeup lab exams.

• Late Assignments:

• Late assignments will be assigned a grade of zero. There are no makeup assignments.

Course Grading Policies• Regrades:

• Requests made within 5 business days of receiving your mark.

• emailed to [email protected]

• Must have the word regrade and the name of the assignment or exam in the subject line

• Must contain a detailed description of why you feel the assignment should be regraded

• A regrade is not a chance to redo the assignment. The original submission will be graded.

Page 11: lec 1 - WordPress.com · Daily Practice • Each chapter of the textbook contains activities and challenges • You are graded on your completion and success with those activities

ScheduleWeek Lectures Labs

Week 0 introduction no labs

Week 1 Programs; Unix fundamentals Raspberry Pi setup, command line unix

Week 2 Introduction to C syntax; Variables and Identifiers Programming practice, C compiler, Easy I/O library

Week 3 Expressions; Bugs and Defensive Programming Reading compiler output, debugging with printf

Week 4 Logic; Branches Programming practice, version control

Week 5 Algorithms Practice Lab exam- no credit

Week 6 Programming Style; Loops Style Checker, Version control practice

Week 7 Program Usability; Math in C Lab Exam

Week 8 Functions; Advanced Functions (pass by reference) Programming with functions

Week 9 Arrays; Advanced Arrays (multidimensional arrays, dynamic arrays)

Programming with arrays

Week 10 Testing; Strings Using strings and pointers

Week 11 Advanced Structures; File Input and Output Lab Exam

Week 12 Recursion and advanced problem solving; Review no labs

Academic Integrity

• Do your own work. Don’t do anyone else’s work

• Do not send/email/copy your solution to labs or assignments for anyone

• Do not write a solution on a whiteboard for others to copy

• Do not let other people use your account

• We check solutions electronically for similarity

• You will be required to agree to a statement verifying that the work you hand in is your own for each assignment and lab exam prior to submission

Page 12: lec 1 - WordPress.com · Daily Practice • Each chapter of the textbook contains activities and challenges • You are graded on your completion and success with those activities

Technology

• Raspberry Pi running Raspbian or Debian is the target platform

• Raspberry Pi 2 is preferred, B or B+ is workable

• Class 10 SD card

• Kit is $135 if you buy from our supplier

• Available next week, Wednesday PM

The Raspberry Pi

Page 13: lec 1 - WordPress.com · Daily Practice • Each chapter of the textbook contains activities and challenges • You are graded on your completion and success with those activities

The Raspberry Pi

• must have for lab exams

• may not share an SD card

• may share a computer

Technology

• C (not C++) is the language

• c99 is the version

• Raspbian (linux) is the operating system. Experienced linux users may choose to work in Debian Jessie if desired.

• You must learn how to navigate an operating system using the command line

Page 14: lec 1 - WordPress.com · Daily Practice • Each chapter of the textbook contains activities and challenges • You are graded on your completion and success with those activities

Technology in the Classroom

• Treat the classroom and the lab spaces as your workplace

• Professionalism and courtesy are required.

• Use your computing devices for notetaking and course related activities only during lecture and lab times.

• Facebook isn’t related to the course. Neither is youtube.

• Movies and games are very distracting to the people around you. Save those for times that you are not in class.

• Turn off buzzers, ringers, and alarms during lecture and lab times.

• Put away your phone. You don’t need to text people during class.

How to ace this course

• Come to class. You never know when the in-class info might be really useful.

• Be prepared for class: bring pencil, pen AND paper to class.

• Do ALL the practice activities from the textbook. Do them on time, prior to class.

• Start all assignments at least one full week prior to the due date.

Page 15: lec 1 - WordPress.com · Daily Practice • Each chapter of the textbook contains activities and challenges • You are graded on your completion and success with those activities

How to ace this course

• Try to program something every day... even if it is only for 10 or 15 minutes.

• Get involved! There are groups in SOCS that are great resources for curious students. Join one of our informal programming groups (pi-users or gcc, for example).

Finally...

• You can not learn programming through osmosis.

• To become proficient at programming you have to practice... lots.

and... be able to solve problems.