IST256: Applications Programming for Information Systems
This course is for students who are new to programming yet desire to learn how programming applies to our everyday lives.
Structured program design, development testing, implementation, and documentation of common information system applications using structured programming languages. Lectures and laboratory.
Due to the prevalence of technology in our lives, learning to program has become the critical skill of the 21st century. Students will learn practical applications of computer programming such as how to automate tasks, manipulate data and solve problems applicable to almost any academic discipline.
At the end of the course, students will be able to:
- Analyze complex problems by thinking computationally and systematically.
- Solve practical, real-world problems using a modern computer programming language..
- Demonstrate the ability to read, write, discuss and code confidently.
- Understand how to code in teams, collaborate with others and manage source code.
- Acquire new programming knowledge independently.
Spring 2019 Sections
Every student in IST256 is assigned to the main section M001, then one of the recitation sections. You are required to attend both sections every week.
|Section||Class #||Type||Instructor||Meeting Day/Time||Location|
|M001||37499||Main Section||Michael Fudgeemail@example.com||Mondays 3:45pm - 5:05pm||Whitman 007|
|M002||42537||Recitation Section||Deborah Noskyfirstname.lastname@example.org||Wednesdays 12:45pm - 2:05pm||Hinds Hall 011|
|M003||37537||Recitation Section||Angela Ramnarine-Rieksemail@example.com||Wednesdays 3:45pm - 5:05 pm||Crouse Hinds 101|
|M004||37538||Recitation Section||Angela Ramnarine-Rieksfirstname.lastname@example.org||Thursdays 12:30pm - 1:50pm||Link 200|
|M005||37539||Recitation Section||Wade Stringeremail@example.com||Thursdays 5:00pm - 6:20pm||Hinds Hall 117|
|M006||37540||Recitation Section||Wade Stringerfirstname.lastname@example.org||Wednesdays 9:30am - 10:50am||Hinds Hall 111|
|M007||37546||Recitation Section||Nick Lygaemail@example.com||Thursdays 11:00am - 12:20pm||Hinds Hall 111|
|M008||37583||Recitation Section||Avinash Kadajifirstname.lastname@example.org||Wednesdays 8:00am - 9:20am||Hinds Hall 011|
|M009||37664||Recitation Section||Laurie Fergeremail@example.com||Wednesdays 3:45pm - 5:05pm||Hinds Hall 011|
You are welcome to come to our office hours without an appointment. You may visit any professor’s office hours. If you require a meeting outside of office hours, please contact us for an appointment. Office hours are for asking questions, clearing up doubts and misunderstandings in the the coursework and getting advice / guidance on labs and homework. Please to not expect to be tutored during office hours, and please do not work on your homework during our office hours.
|Michael Fudge||Wednesdays 12:30pm - 2:30pm in Hinds Hall 314 or by Appointment|
|Laurie Ferger||Wednesdays 11am - 12pm in Huntington Hall 030 or by Appointment|
|Avinash Kadaji Siddappa||Thursdays 5pm - 6pm in Hinds Hall 239|
|Nick Lyga||Tuesdays 1pm - 2pm in Hinds Hall 239|
|Deborah Nosky||Thursdays 2pm - 3pm in Hinds Hall 230 or by Appointment|
|Angela Ramnarine-Rieks||Mondays and Thursdays 6pm - 7pm in Hinds Hall 216 or by Appointment|
|Wade Stringer||Tuesdays 4:30pm - 5:30pm in Hinds Hall 239|
The following texts are required:
- Programming in Python 3 an Interactive Textbook https://zybooks.zyante.com. Must be purchased online or through the SU bookstore.
- Python for Everybody: Exploring Data In Python 3 by Charles Severance. http://www.pythonlearn.com/book.php. Free.
Here are some additional free textbook recommendations. Consider these supplemental resources:
- Automate the Boring Stuff with Python: Practical Programming for Total Beginners by Al Sweigert https://automatetheboringstuff.com/.
- A Byte of Python, https://www.gitbook.com/book/swaroopch/byte-of-python/details
- Dive into Python , Mark Pilgrim http://getpython3.com/diveintopython3/
- Learn python the hard way, Zed Shaw http://learnpythonthehardway.org/book/
- Python Practice Book, Anad Chitpothu http://anandology.com/python-practice-book/index.html
Activating Your Zybook
- Go to: https://learn.zybooks.com/
- Create Your Account. Make sure to sign up with your @syr.edu email address.
- When prompted for the Zybook code, enter SYRIST256FudgeSpring2019
- You can purchase the Zybook online with a credit card, or purchase through the bookstore and receive an access code. The cost is $58.
Course Technology Requirements
The following course technology requirements are mandatory. You must install open source software and sign up for free services as part of the course. Instructions can be found at: http://ist256.syr.edu/content/setup/overview/
Bring Your Own Device
This course uses the BYOD (Bring Your Own Device) model. The expectations are that you own a notebook computer and you will bring it to every class fully charged. Your notebook computer must have 4GB of RAM and 500MB of free disk space to satisfy the software requirements.
Accounts and Services
This course will use GitHub Classroom https://classroom.github.com/ for exchanging source code from teacher to student, the Gitter.im https://gitter.im/IST256/Fudge chat service for asking questions during lecture or outside of class, and SU Google Apps for Education http://g.syr.edu for recording attendance and measuring class participation. All services are offered at no charge to the student.
Methods of Evaluation
This course uses a well thought out mix of individual, group, in-class and out-of-class instruments to assess your knowledge acquisition. A variety of techniques are used to cater to students of different learning styles and assess the course learning outcomes.
|Exams||E1 - E3||2,3||3 (2 best count)||120||240|
|Project||P1 - P3||1,2,3,4,5||1 (Split in 3 Phases)||120||120|
|Diagnostic Quizzes||Q01 - Q13||1,2,3||13 (12 best count)||5||60|
|Class Coding Labs||L01 - L13||1,2,3,4||13 (12 best count)||5||60|
|Homework||H01 - H13||1,2,3,4,5||13 (12 best count)||10||120|
- Exams evaluate your recall and understanding of the course material, as well as your ability to apply it to new situations.
- There will be three exams in the course. Your best two exam scores count towards your final grade, offering you an opportunity to achieve mastery over the material.
- Due to the nature of the subject matter, examinations are naturally cumulative.
- Exams dates are posted on the syllabus class schedule.
- It is your responsibility to be present for each exam on the date posted.
- There are no re-issues or make-ups, as this is logistically difficult to accomplish fairly.
- Exams are issued on paper as multiple choice and short answer questions.
- Exams are closed-book. You may not use notes, a computer or any aids (calculator, phone, etc…)
- Exam dates are posted on the course schedule.
Specific Exam Policies:
- Exam dates posted on the class schedule.
- Exams are issued at the beginning of class and are 30 minutes long. If you show up late you will receive less time to complete the exam. If you show up after the exam completes, you’ve missed the exam.
- In general there are NO MAKE UP EXAMS without university-approved reason. These are limited to illness or family emergencies, and must be documented by the university.
- We do drop one of your exam scores, so consider that your make-up should you miss your exam.
- You may request to take the exam at a different time at least 1 week in advance of the exam date. You must have a legitimate reason for this request AND prof. Fudge must approve it. If your exam is approved you will suffer a 50% penalty for not taking the exam on the scheduled date. This is out of inconvenience of scheduling a proctor for the exam.
- The goal of the project is to demonstrate your ability to program something novel, useful and innovative in Python.
- The project is divided into 3 phases; due dates are posted on the course schedule. Late submissions are accepted but will receive a grade of zero.
- The project is a group assignment, teams of no more than 3 people.
- Details for the project can be found under the Project heading on the course website.
- Diagnostic quizzes are designed to ensure you are keeping pace with the required reading assignments. They are an instrument to ensure you are studying the required material from the assigned readings. If you keep pace with your studies you should not have difficulty completing the diagnostic.
- Diagnostic quizzes are issued online in Blackboard. They are open book, but individual assignments.
- There is a diagnostic quiz for each weekly lesson. You are issued a subset of questions from a pool of question in the lesson.
- Diagnostic quizzes are due by the end of the day (11:59 PM) on the day before lecture.
- If you start the quiz, you must complete it in one session. If you close the browser your answers will be submitted.
- Diagnostic quizzes are graded out of 5 points.
- You are given two attempts, each attempt could have different questions.
- The higher of your two attempts counts as your grade.
- You are given one “Free Pass” which means your lowest score will be dropped.
Class Coding Labs
- Each week there will be an lab programming activity.
- This activity must be completed between the lecture and recitation sections. It will be discussed in the recitation. Complete means you must have the code committed and pushed to GitHub by 11:59pm the day before your scheduled recitation.
- You may work alone, but are encouraged to work alongside a partner as you complete the lab. If you work with another, you should both complete the lab individually.
- If you are not in attendance at recitation you will not receive full credit for the class coding lab.
- You are awarded up to 5 points for the lab.
- You are given one “Free Pass”, meaning you have one incomplete lab without penalty.
- Practice makes perfect. Each week you will be assigned several homework to complete outside of class.
- These homework assignments will take several hours to complete. This is by design. Practice makes perfect.
- Homework are individual assignments. You can collaborate on strategy but you must must work alone on the assignment. You must be able to explain the code you write, or it will be considered an academic integrity violation.
- The homework is due by the end of the week’s lesson. Saturday by 11:59pm.
- You must commit your code and push it to GitHub before the due date.
Homework is evaluated based on the following criteria:
- What the problem attempted? Effort made to start the homework assignment.
- Was the problem analysis thought out? Identified inputs and outputs, including sources and targets. Outlined a process which explains code flow in pseudo code – not python.
- Does the written code execute? Program runs without error.
- Does the code solve the problem? In addition does it handle edge cases and bad input when explicitly directed to do so?
- Is the code well written? Easy to understand, modular uses functions for code reuse and readability? Are python objects aptly named? No unnecessary code, or code not pertinent to the problem at hand?
You must satisfy all 5 criteria to receive a full 10 points for the homework.
- Late homework or homework edited after the due date receives a 0.
- You are given one “Free Pass”, meaning your lowest homework score is dropped.
No extra credit is offered in this course. There are enough opportunities to improve your grade through dropped exams, homework, diagnostics and labs. Make the most of these opportunities.
We use the following grading scale for translating your total points earned into a letter grade to be submitted to the University registrar.
|Student Achievement||Total Points Earned||Registrar Grade|
|Mastery||570 - 600||A|
|540 - 569||A-|
|Satisfactory||510 - 539||B+|
|480 - 509||B|
|450 - 479||B-|
|Low Passing||420 - 449||C+|
|390 - 419||C|
|360 - 389||C-|
|Unsatisfactory||300 - 359||D|
|0 - 299||F|
Effort, Class Participation and Attendance
- Attendance, class participation and your overall effort may factor into your final grade.
- While these factors are not actively graded, they are monitored. We notice students who are attending, being helpful to others, putting in effort, actively participating and those who do not.
- The course instructors have a final say as to whether your final grade will be altered based on your efforts.
- Students with exemplary effort, attendance or participation may be moved UP one letter grade. For example if you finish with a 565/600 or an A- you might be moved up to an A. Reasons for being moved up are solely at the instructor’s discretion. Examples include but are not limited to: perfect attendance, noticeable improvement in grades throughout the semester, being a good mentor / coach to other students by helping in recitations and answering student questions on gitter.
- Students with poor effort, attendance or participation may be moved DOWN one letter grade. For example if you finish with a 565/600, or an A-, you might be moved down to a B+. Reasons for being moved down is usually poor attendance (3 or more absences in the semester), but is not limited to only attendance.
- If your final grade is adjusted UP or DOWN, you will receive a written notification of justification from an instructor.
- Requests to have your grade adjusted will be ignored. Please let your actions speak for themselves.
Course Specific Policies
- Due dates for all assessments are posted in Blackboard https://blackboard.syr.edu. Please consider these dates the official due dates.
- Due dates are also posted to the IST256 website for reference.
- In general late work is not accepted. Please get your work in on time so we can get is back to you in a timely manner.
Course Honor Code
The course honor code represents our commitment to Academic Integrity in a programming course. I drafted the class honor code to avoid academic negligence - situations where students are unaware that their actions are actually a form of cheating. Our honor code remedies this problem by clearly stating the expectations of Academic Integrity for this course. It states:
- All work is my own. Answers on all student work, assignments (problem sets, projects, papers, homework, etc…) and assessments (quizzes, exams, tests, etc…) are my own individual work (except where collaboration is explicitly permitted). In the case where collaboration is permitted I will only collaborate within my team.
- I will not share answers. I will not make answers (either my own or the professor’s) to work, assignments (problem sets, projects, papers, homework, etc…) and assessments (quizzes, exams, tests, etc…) available to anyone else in or out of class. This includes posting them on the web or sharing them in test banks.
- I will not misrepresent my ability. I will not engage in any activity which misrepresents or falsifies my knowledge of the subject matter and therefore improves my grade dishonestly. This includes unsanctioned test aids and copying homework.
- I will give credit. I will always pay attribution to my sources, and not misrepresent the works of others as my own. If you get code from the web, you must cite it like you would any source in an academic paper.
- I accept the honor code and its consequences. I understand and accept that that all work I submit is subject to the honor code, and if I violate this honor code I my instructor is obligated to report me to the University’s office of Academic Integrity.
Sanctions for Violators of Academic Integrity
We take academic integrity very seriously. You should too.
- All violations, even the most minor such as copying a homework assignment or lab, will be reported to the University’s Office of Academic Integrity. You don’t want that on your record, so don’t do it.
- In addition, cheating on an exam or plagiarism the final project with result in an automatic grade of F in the course.
We encourage you to attend the free small-group tutoring sessions for IST256 available through the Center for Learning and Student Success (CLASS). Several tutoring sessions for IST256 will be offered each week. The tutors will be trained undergraduate and graduate students who have access to our course information and can help you study efficiently and effectively. Tutoring sessions will be geared to each week’s lessons. Visit http://class.syr.edu to learn when and where sessions meet and how to reserve a spot. You may also drop in if space is available.
University-Mandated Course Policies
Academic Integrity Policy
Syracuse University’s academic integrity policy reflects the high value that we, as a university community, place on honesty in academic work. The policy defines our expectations for academic honesty and holds students accountable for the integrity of all work they submit. Students should understand that it is their responsibility to learn about course-specific expectations, as well as about university-wide academic integrity expectations. The university policy governs appropriate citation and use of sources, the integrity of work submitted in exams and assignments, and the veracity of signatures on attendance sheets and other verification of participation in class activities. The policy also prohibits students from submitting the same written work in more than one class without receiving written authorization in advance from both instructors. The presumptive penalty for a first instance of academic dishonesty by an undergraduate student is course failure, accompanied by a transcript notation indicating that the failure resulted from a violation of academic integrity policy. The presumptive penalty for a first instance of academic dishonesty by a graduate student is suspension or expulsion. SU students are required to read an online summary of the university’s academic integrity expectations and provide an electronic signature agreeing to abide by them twice a year during pre-term check-in on MySlice. For more information and the complete policy, see http://academicintegrity.syr.edu/.
If you believe that you need accommodations for a disability, please contact the Office of Disability Services (ODS), http://disabilityservices.syr.edu, located in Room 309 of 804 University Avenue, or call (315) 443-4498, TDD: (315) 443-1371 for an appointment to discuss your needs and the process for requesting accommodations. ODS is responsible for coordinating disability-related accommodations and will issue students with documented Disabilities Accommodation Authorization Letters, as appropriate. Since accommodations may require early planning and generally are not provided retroactively, please contact ODS as soon as possible.
Religious Observances Notification and Policy
SU religious observances notification and policy, found at http://hendricks.syr.edu/spiritual-life/index.html, recognizes the diversity of faiths represented among the campus community and protects the rights of students, faculty, and staff to observe religious holidays according to their tradition. Under the policy, students are provided an opportunity to make up any examination, study, or work requirements that may be missed due to a religious observance provided they notify their instructors before the end of the second week of classes for regular session classes and by the submission deadline for flexibly formatted classes.
For fall and spring semesters, an online notification process is available for students in My Slice / StudentServices / Enrollment / MyReligiousObservances / Add a Notification.
Student Academic Work Policy
SU policy on student academic work may be found at: http://coursecatalog.syr.edu/content.php?catoid=3&navoid=270#Student_Academic_Work Student work prepared for University courses in any media may be used for educational purposes, if the course syllabus makes clear that such use may occur. You grant permission to have your work used in this manner by registering for, and by continuing to be enrolled in, courses where such use of student work is announced in the course syllabus. If you use students’ work for educational purposes, University policy requires that you notify students in your syllabus (Academic Rules, Student Academic Work). The Curricula Committee suggests the following language:
Educational use of student work: I intend to use academic work that you complete this semester in subsequent semesters for educational purposes. Before using your work for that purpose, I will either get your written permission or render the work anonymous by removing all your personal identification.
|Dates||Topic||Details / What’s Due?|
|1/13 - 1/19||Lesson 00: Course Introduction||Lecture: Course Introduction
Recitation: Introductions and the Course Setup Checklist
|1/20 - 1/26||Lesson 01: Introduction to Programming||Lecture: No Class - MLK Day
Recitation: Review Programming Walkthrough
|1/27 - 2/2||Lesson 02: Introduction to Python|
|2/3 - 2/9||Lesson 03: Variables and Types|
|2/10 - 2/16||Lesson 04: Conditionals|
|2/17 - 2/23||Lesson 05: Iterations||E1: Exam 1
Wed 2/20 - Thu 2/21 (In Recitation)
|2/24 - 3/2||Lesson 06: Functions|
|3/3 - 3/9||Lesson 07: Strings|
|3/10 - 3/16||Spring Break||Spring Break|
|3/17 - 3/23||Lesson 08: Files|
|3/24 - 3/30||Lesson 09: Lists||E2: Exam 2
Wed 3/27 - Thu 3/28 (In Recitation)
|3/31 - 4/6||Lesson 10: Dictionaries|
|4/7 - 4/13||Lesson 11: Web Services and API’s|
|4/14 - 4/20||Lesson 12: Data Analysis||P1: Project Proposals Due
Fri Apr 19 (In Blackboard)
|4/21 - 4/27||Lesson 13: Visualization||P2: Project Plans Due
Fri Apr 26 (In Blackboard)
|4/29||Last day of class.||E3: Exam 3
Monday 4/29 (In Large Group)
|5/7||Project Demo Day!
Tue May 7th 5:15pm - 7:15pm Hinds Hall
|P3: Project Due
Tue May 7 (Submission In Blackboard)
Due Every week:
- Diagnostic is due the day before large group meeting on Monday
- Lab is due before your recitation
- Homework is due Saturday