COMMONWAELTH OF MASSACHUSETTS

advertisement
Bunker Hill Community College
Computer Technology Department
CIT125
Python Programming
Course Packet
Professor <Jefferson Fernandes>
Email Address: <jtfernan@bhcc.mass.edu>
1
COMMONWEALTH OF MASSACHUSETTS
BUNKER HILL COMMUNITY COLLEGE
CHARLESTOWN, MASSACHUSETTS
COMPUTER INFORMATION TECHNOLOGY DEPARTMENT
CIT125 Python Programming
COURSE OUTLINE & REQUIREMENTS
COURSE DESCRIPTION: This is an introductory course designed for any student interested in learning computer
programming concepts and hands on computational thinking, all in the context of the Python programming language.
No prior experience in programming is necessary. Students will use their own problem solving abilities to implement
programs in Python. This course will show the student how to create basic programming structures including
decisions and loops. Further, students will explore unique Python data structures such as tuples and dictionaries.
Students will also learn to perform basic debugging techniques. At the end of this course, the student will have
learned enough concepts in computer science and programming to be able to write Python programs to solve
problems on their own. This course will prepare the student to move on to the Advanced Python Programming
course. Pre-requisite: Applications and Concepts (CIT110) or IT Problem Solving (CIT113) or Intro to Computer
Science and Object Oriented Programming (CIT 120) or Maya Foundations (CMT121) or permission of the
Department Chair. For addition information and/or a course syllabus contact CITDepartment@bhcc.mass.edu. All
prerequisites must be completed with a C or better.
Prerequisite: Pre-requisite: Applications and Concepts (CIT110) or IT Problem Solving (CIT113) or Intro to
Computer Science and Object Oriented Programming (CIT 120) or Maya Foundations (CMT121) or permission of the
Department Chair. For addition information and/or a course syllabus contact CITDepartment@bhcc.mass.edu. All
prerequisites must be completed with a C or better.
COURSE OBJECTIVES: The objectives of this course are:
 To make each student more competent in virtualization
 To familiarize each student with
GNU/Linux (Linux) or Microsoft Operating System
 To make each student more competent in research and learn/use of various technologies
 To make each student more competent in technical knowledge of key programming skills.
 To familiarize each student with
Linux or MS DOS commands
 To familiarize each student with
perform a clean installation of the OS






Demonstrate how to use
Establish proficiency in
Demonstrate Python scripting components
Demonstrate how to use
Demonstrate how to use
Demonstrate how to write
Canopy (or other IDE) for the Python programming language
fundamentals of writing Python scripts
such as variables and flow control structures
iteration control structures such as For, and While loops
conditional control structures such if and elif statements
iterative and recursive programs
2








Demonstrate how to work with
Write Python functions that will facilitate
Teach robust code techniques such as
Use Python to
Explore Python's OO features with
Explore Python’s usage as it relates to
Provide a solid foundation in programming
Provide the student with an
lists and sequence data
code reuse
errors handling and process exceptions properly
read and write external files
emphasis on properties and methods
Game Design applications
that will easily adapt to other programming languages
in-demand workplace skill
3
INSTRUCTOR: The instructor for this course is:
E.Mail Address:
Desk Location:
Telephone:
Professor <Jefferson Fernandes>
<jtfernan@bhcc.mass.edu>
<D123F>
<617.228.3228>
Any content or schedule may change at any time at the discretion of the instructor.
REQUIRED COURSE MATERIAL: The following is required of all students enrolled in this course:
Bring Your Own Device (BYOD):
Note: BYOD is required only if you are not planning to use the institution’s resources (Computer Labs)
1.
Modern-day computer; Laptop, Desktop or Tower
a. Modern-day computer must have at least
i. 2 Cores, Hyper Threading, 2GHz+
ii. 3G Ram Free
iii. 50G Hard Disk Drive Free
iv. VTx; Processor must support virtualization
v. wNIC; Wireless Network Adaptor
b. Host Operating Systems
i. MAC OSX or MS Windows or Linux
c. Guest (Virtual Machine)
i. Microsoft Windows or Linux
d. Virtualization technology
i. Oracle VirtualBox (Preferred)
ii. VMware; Player, Fusion or Workstation
2. An Earphone Headset, Speakers, Ear Buds or other Private
Listening Device For Course Multi-Media Podcasts,
Demonstration Documents and YouTube Videos.
3. On-line storage, either
a. MS OneDrive
b. Google Drive
c. DropBox
d. These are some options you can use to save your work for your future reference
4. Web Browser, either (implies an internet connection)
a. Google Chrome
b. Firefox
5. OFFICE 2010 Professional, Office Libre, or Open Office to save captured images to PDF
*****************************************************************************************************
THERE IS NO BOOK ASSIGNED TO THIS COURSE
FOR THESE SECTIONS: CIT-125-01HB WE WILL USE ENTHOUGHT’S ONLINE CONTENT WHICH YOU
WILL HAVE TO CREATE AN ACADEMIC ACCOUNT “CREATE ACCOUNT” ON THEIR TRAINING SITE.
THIS COURSE IS PAPERLESS
*****************************************************************************************************
4
STUDENT REQUIREMENTS: To complete this course, receive a final grade and full credit each student must:
1.
2.
3.
4.
Read all Power Point material
Watch all assigned videos
Study and practice with all given samples
Complete all assignments, tasks, projects and quizzes
STUDENT EVALUATION: Letter grade will be awarded at the completion of the course according to the
following weighted average (this is a tentative list, BHCC-ONLINE Moodle Gradebook will always have the
correct list and your points-to-letter-grade progress):
Enthought Scientific Computing Solutions .............................. 100
Enthought Training Catalog ........................................................ 100
Oracle VirtualBox ......................................................................... 100
VMware Player/Fusion/Workstation ........................................ 100
Installed Virtual Machine ............................................................ 100
Enthought Canopy.......................................................................... 100
Part 1 & 2: Tools to Learn and Develop in Python ................. 200
LinkedIn Take 1 & 2 ..................................................................... 200
Resume Take 1 & 2 ....................................................................... 200
Part 1-13: Python Essentials ..................................................... 1300
Career Connect Take 1 & 2......................................................... 200
Mock Job Interview Take 1 ........................................................ 100
TOTAL ...................................................................... 2,800 POINTS
5
The point to Letter Grade equivalency is roughly (BHCC Online grade book has the exact values):
2632 2800 Points
A Letter Grade
2631 2520 “
A- “
“
2519 2436 “
B+ “
“
2435 2324 “
B
“
“
2323 2240 “
B“
“
2239 2156 “
C+ “
“
2155 1960 “
C
“
“
1959 1680 “
D
“
“
Less Than
1680 “
F
“
“
No student will be given a final grade in this course until all requirements have been completed.
EXAMINATIONS (Quizzes): Examinations are administered using the BHCC On-line Internet Based Testing
System . Students are reminded of the College’s policies relative to working independently (see College Catalogue)
and are required to complete all Assignments, Examinations and other projects individually, except for assignments
specifically designated as group projects.
THERE IS NO FINAL EXAMINATION IN THIS COURSE.
ATTENDANCE POLICY: Each student is required to attend all class sessions. The Student Services Office
(617.228.2000) should be notified if a student would be absent for an extended period of time. See the Student
Handbook for more details. For Web Classes attendance to a physical room is not required. For Web Classes should
instructor indicate an online conference schedule, students are required to attend.
TEACHING PROCEDURES: Class lectures on the assigned material will be followed by lab time to be used for drill
& practice exams or group project work. However, much of the work for this course is to be done outside of class
time and students are urged to plan accordingly. The amount of out of class time required to complete the course
will vary based on individual students’ skill sets, BUT IN GENERAL STUDENTS SHOULD PLAN TO SPEND SIX
(9) TO NINE (12) HOURS PER WEEK outside of regularly scheduled classes to complete this course
successfully.
COURSE GROUP/TEAM WORK: Each class participant may join a team of from 3-4 students to complete certain
assignments in the course.
Participation points earned by each member of the Group/Team will be at the discretion of the course instructor.
COMPUTER LAB TIME: The College’s Computer Lab is open seven (7) days per week according to the posted
schedule. Students may use the Lab or another PC configured with the following hardware/software described in
the REQUIRED COURSE MATERIAL section of this syllabus.
PC’s:
o Personal Computer MS WINDOWS XP, VISTA, 7, or 8
o Microsoft Internet Explorer 8,9, 10, Firefox, Google Chrome
o Microsoft OFFICE 2010 Professional, Open Office or Office Libre
o Internet Access
o Virtualization
MAC’s :
o OS 10.6, 10.7, 10.8.2
o Safari 5.1-6, Firefox, Google Chrome
6
o
o
o
Microsoft OFFICE 2010 Professional, or Open Office or Office Libre
Internet Access
Virtualization
ASSOCIATION OF COMPUTER MACHINERY (ACM) SPECIAL INTEREST GROUP FOR INFORMATION
TECHNOLOGY EDUCATION (SIGITE) OUTCOMES & KEY COMPETENCIES: The Learner Program Outcomes
contained herein are statements that describe what students Must Know and/or Be Able To Do by the end of this
course. The Key Competencies are specific, observable behaviors, knowledge, abilities and skills that detail and
support the Learner Program Outcomes. These outcomes and competencies are published by the Association of
Computer machinery, Special Interest Group For Information Technology Standards (SIGITE).
Visit http://www.sigite.org For More Details
The competencies in this course are validated through the BHCC on-line interactive assessment system as well as
completed Assignments, Tasks and Quizzes.
***************************************************************************************************
STUDENT CODE OF BEHAVIOR: All students at BHCC are reminded of their expected Code of Behavior
especially regarding the creation, completion, and submission of the course’s INDIVIDUALLY assigned projects.
As stated in the BHCC College Catalog:
“If it is proven that a student in any course in which he or she is enrolled has knowingly cheated or
plagiarized, this may result in a failing grade for an exam or assignment, withdrawal from the course or a
failing grade for the course. The student would also be subject to disciplinary proceedings as outlined in the
Student Handbook for violation of the Student Code of Conduct.”
Under no circumstance should a student give any of their electronic assignment files to any other student for
ANY reason unless the assignment is designated as a “GROUP” project. All students involved in file sharing
are subject to disciplinary action as specified in the BHCC College Catalog.
DISABILITY SUPPORT SERVICES: Policy for Individuals with a Disability: Bunker Hill Community College is
committed to providing equal access to the educational experience of all students in compliance with Section 504
of the Rehabilitation Act of 1973 and the Americans with Disabilities Act of 199. Any student with a documented
disability requiring an accommodation should immediately speak to the professor. Students with disabilities, who
have not already done so, should schedule an appointment at the Office for Students with Disabilities (Room E222
–LIFEMAP Commons) in order to obtain appropriate services.
7
SCHEDULE
COVERAGE/TOPICS
Virtualization
Unit I
Employability
COURSE OUTCOMES &
COMPETENCIES
ASSOCIATION OF COMPUTER MACHINERY (ACM)
SPECIAL INTEREST GROUP FOR INFORMATION
TECHNOLOGY EDUCATION (SIGITE) OUTCOMES &
KEY COMPETENCIES
Tools to Learn and Develop
Visit http://www.sigite.org For More Details
SCHEDULE
Unit II
COVERAGE/TOPICS
Python Essentials
COURSE OUTCOMES &
COMPETENCIES
ASSOCIATION OF COMPUTER MACHINERY (ACM)
SPECIAL INTEREST GROUP FOR INFORMATION
TECHNOLOGY EDUCATION (SIGITE) OUTCOMES &
KEY COMPETENCIES
Employability
Visit http://www.sigite.org For More Details
8
CIT 125 Python Programming
COURSE OUTLINE & REQUIREMENTS
This course uses BHCC Academic Calendar for dates:
START “Classes Begin”
END “Classes End/Web Late Start Classes (WBL) End”
Please use BHCC website to check these dates
Unit
UNIT Schedule
Due
I
II
Expected completion: 3 week/s
Expected completion: Remainder of semester
<8/11/15>
<8/14/15>
 All Assignments MUST Be Submitted and Quizzes Taken By The Above
Unit Closing Dates To Receive FULL Credit.
 No Assignment Will Be Accepted After the Unit block is Closed.
 No Quizzes May Be Taken After the Unit block is Closed.
 All Unit blocks Will Be Closed On The SUNDAY After the Unit Closing
Date.
9
NAME: ________________________
BHCC Major: ________________________
E.MAIL ADDRESS: ________________________
CIT 125 Python Programming
COURSE ASSIGNMENTS
Unit I ASSESSMENTS
This is a tentative list, BHCC-ONLINE Moodle Gradebook will always have the correct list and your pointsto-letter-grade progress
Syllabus & Pre-Req & Virtualization & Employability & Tools to Learn and Develop
Read, Watch and DO all videos provided in or indicated on the BHCC on-line Unit Block and other
written instructions:
Enthought Scientific Computing Solutions FOLDER
Enthought Training Catalog FOLDER
Virtualization FOLDER
Virtual Machine MS Windows FOLDER
Virtual Machine Linux FOLDER
Part 1 & 2: Tools to learn and Develop in Python FOLDER
Enthought Scientific Computing Solutions
100
Enthought Training Catalog
Oracle VirtualBox
VMware Player/Fusion/Workstation
Installed Virtual Machine
Enthought Canopy
Part 1 & 2: Tools to learn and Develop in Python
Resume Take 1
TOTAL POINTS Unit 1
900
10
Points
“
“
“
“
“
“
“
“
Unit II ASSESSMENTS
This is a tentative list, BHCC-ONLINE Moodle Gradebook will always have the correct list and your pointsto-letter-grade progress
Python Essentials & Employability
Read, Watch and DO all videos provided in or indicated on the BHCC on-line Unit Block and other
written instructions:
LinkedIn Take 1 & 2 FOLDER
Part 1 - 13: Python Essentials FOLDERS
Mock Job Interview FOLDER
Mock Job Interview FORUM
Resume Take 2 FOLDER
Career Connect Take 1 & 2 FOLDER
LinkedIn Take 1
Part 1: Python Essentials
Part 2: Python Essentials
Career Connect Take 1
Part 3: Python Essentials
Part 4: Python Essentials
Mock Job Interview Take 1
Part 5: Python Essentials
Part 6: Python Essentials
Part 7: Python Essentials
Part 8: Python Essentials
Part 9: Python Essentials
Part 10: Python Essentials
Part 11: Python Essentials
Part 12: Python Essentials
Part 13: Python Essentials
Resume Take 2
Career Connect Take 2
LinkedIn Take 2
TOTAL POINTS Unit 2
100
Points
“
“
“
“
“
“
“
“
“
“
“
“
“
“
“
“
“
“
1,900 “
11
TOTAL ALL COURSE QUIZ & Assignments
3900 POINTS
This is a tentative list, BHCC-ONLINE Moodle Gradebook will always have the correct list and your pointsto-letter-grade progress
The Point to Letter Grade Equivalency is roughly (BHCC Online has the exact values):
2632 2800 Points
A Letter Grade
2631 2520 “
A- “
“
2519 2436 “
B+ “
“
2435 2324 “
B
“
“
2323 2240 “
B“
“
2239 2156 “
C+ “
“
2155 1960 “
C
“
“
1959 1680 “
D
“
“
Less Than
1680 “
F
“
“
12
Your completed project
is Approaching
Professional Quality if
you:
Your completed project
Needs Quality
Improvements if you:
1-Software Mastery
Choose and apply the
most appropriate skills,
tools, and features and
identify efficient
methods to solve the
problem.
Choose and apply some
appropriate skills, tools,
and features, but not in
the most efficient
manner.
Choose inappropriate
skills, tools, or features,
or are inefficient in
solving the problem.
2-Content
Construct a solution that
is clear and well
organized, contains
content that is accurate,
appropriate to the
audience and purpose,
and is complete. Provide
a solution that contains
no errors of spelling,
grammar, or style.
Construct a solution in
which some components
are unclear, poorly
organized, inconsistent,
or incomplete. Misjudge
the needs of the
audience. Have some
errors in spelling,
grammar, or style, but
the errors do not detract
from comprehension.
Construct a solution that
is unclear, incomplete, or
poorly organized,
containing some
inaccurate or
inappropriate content;
and contains many errors
of spelling, grammar, or
style. Do not solve the
problem.
3-Format and Layout
Format and arrange all
elements to
communicate
information and ideas,
clarify function,
illustrate relationships,
and indicate relative
importance.
Apply appropriate
format and layout
features to some
elements, but not others.
Overuse features,
causing minor
distraction.
Apply format and layout
that does not
communicate
information or ideas
clearly. Do not use
format and layout
features to clarify
function, illustrate
relationships, or indicate
relative importance. Use
available features
excessively, causing
distraction.
Use an organized
approach that integrates
planning, development,
self-assessment,
revision, and reflection.
Demonstrate an
organized approach in
some areas, but not
others; or, use an
insufficient process of
organization throughout.
Do not use an organized
approach to solve the
problem.
Weight
Your completed project
is of Professional
Quality if you:
4-Process
CIT125 Python Programming Assignments Grading Rubric
13
Comments
CIT125 ASSIGNMENT CALENDAR August Week of 10th
For your convenience, use this schedule to help you coordinate yourself.
Typically (note schedule may change)
Day 1: “Classes Begin”
Day 5: “Classes End”
Day
DATES
1
Unit I BEGINS
<8/10/15>
2
3
Unit I Ends Unit II
BEGINS
<DATE>
<DATE>
4
<DATE>
5
<8/14/15>
-
-
ASSIGNMENTS/
QUIZZES

Syllabus, Pre-Reqs, Lab Procedures, become familiar with BHCC On-line site,

Enthought Scientific Computing Solutions, Enthought Training Catalog,
Virtualization, Oracle VirtualBox, VMware Player/Fusion/Workstation
Installed Virtual machine, Enthought Canopy, Part 1: Tools to Learn and Develop















Part 1: Tools to Learn and Develop, Resume Take 1
LinkedIn Take1, Part 1 & 2: Python Essentials
Career Connect Take 1, Part 3: Python Essentials
Part 4: Python Essentials
Part 5: Python Essentials
Part 6: Python Essentials
Part 7: Python Essentials
Part 8: Python Essentials
Part 9: Python Essentials
Part 10: Python Essentials
Part 11: Python Essentials
Part 12: Python Essentials, Mock Job Interview Take 1
Part 13: Python Essentials, Resume take 2, Career Connect Take 2
LinkedIn Take 2
All class requirements must be completed
End of course evaluation survey
To complete the course by the end of the semester, you must adhere to the following timetable:
Unit
I
II
COMPLETION DATE
<8/11/15>
<8/14/15>
14
Download