605.101.81 - Introduction to Python

Computer Science
Spring 2024

Description

Not for a letter grade. Offered pass/fail only. This is a six-week course. The withdrawal deadline is the end of the fourth week. Students must pass each module to pass the course. Course Note(s): Not for graduate credit. This course does not satisfy any admission requirements. Instructor(s): Non-facilitated

Expanded Course Description

This course is aimed at training students with prior software development education or experience in other languages in the Python programming language. It will involve learning the basic aspects common to all languages and Python-specific implementations of software engineering principles, along with advanced aspects of this language related to developing of advanced algorithms, data visualizations, and long-term storage and retrieval systems.

Instructor

Profile photo of Tony Johnson.

Tony Johnson

ajohn260@jhu.edu

Course Structure

The course content is divided into modules. Course Modules can be accessed from Course Content on the left menu. A module will have at least three sections: Overview, Content, and Assignments. Students are encouraged to preview all sections of the module before starting. Because this course is self-paced and non-facilitated, students may complete modules at their own pace as long as all six modules are completed within the six-week timeframe. A new module will become available to you as you successfully complete the module prior to it.

Course Topics

Course Goals

To provide students with the knowledge and ability to independently program applications in the Python programming language. To enable students to create programs that follow sound programming principles and interact with data and retrieve information from unstructured data, such as connecting to NoSQL databases and information retrieval techniques and measures quality.

Course Learning Outcomes (CLOs)

Textbooks

Downey, Allen B. Think Python: How to Think Like a Computer Scientist. Sebastpol, CA: O’Reilly Media, 2012. PDF and HTML e-book (available at no cost at http://www.greenteapress.com/thinkpython/)

Required Software

Python Programming Language
The programming language installer including the IDLE integrated development environment, which is downloadable here (http://www.python.org/getit/releases/2.7.5/). You will need to have a means of programming in the Python programming language (version 2.7). However, if you’d like to try another IDE you’re interested in, or use an online Python IDE, as long as you use the correct version of Python, please feel free.

Student Coursework Requirements

It is expected that each class will take approximately 4–8 hours to complete. Here is an approximate breakdown: reading the assigned sections of the text as well as some supplemental reading content (approximately 1–2 hours per week); watching audiovisual demonstrations of programming in the Python programming language (approximately 1–2 hours per week); participation in discussion; and completing programming assignments and module assessments (approximately 1–2 hours per week).

This course will consist of three basic components:

1. Preparation and Participation
Each student is responsible for carefully reading all assigned material and being prepared for discussion. The majority of readings are based on the assigned text, as well as official Python documentation and internet resources.

2. Assignments
In each module, students will be given a series of independent programming exercises. These exercises require the use of the software program mentioned above in the “Required Software” section. You will enter your program into the software and it will give you feedback through a verification script informing you of your success or failure and any errors that were encountered. The purpose of these non-graded independent exercises is to give you practical hands-on experience with the Python programming language prior to attempting the module assessments.

3. Assessments (100% of Final Grade Calculation)
Each module will culminate in an assessment that will test your knowledge of, and ability to apply,
the components of the Python programming language presented in the respective module. quiz
will be available throughout the time period of a module, but will be due by 11:59pm each Tuesday. Generally, assessments will consist of the following types of questions:

Grading Policy

As this course will be graded Pass/Fail, students must achieve a cumulative percentage for all assessments of 70% or greater to achieve a passing grade.

Academic Policies

Deadlines for Adding, Dropping and Withdrawing from Courses

Students may add a course up to one week after the start of the term for that particular course. Students may drop courses according to the drop deadlines outlined in the EP academic calendar (https://ep.jhu.edu/student-services/academic-calendar/). Between the 6th week of the class and prior to the final withdrawal deadline, a student may withdraw from a course with a W on their academic record. A record of the course will remain on the academic record with a W appearing in the grade column to indicate that the student registered and withdrew from the course.

Academic Misconduct Policy

All students are required to read, know, and comply with the Johns Hopkins University Krieger School of Arts and Sciences (KSAS) / Whiting School of Engineering (WSE) Procedures for Handling Allegations of Misconduct by Full-Time and Part-Time Graduate Students.

This policy prohibits academic misconduct, including but not limited to the following: cheating or facilitating cheating; plagiarism; reuse of assignments; unauthorized collaboration; alteration of graded assignments; and unfair competition. Course materials (old assignments, texts, or examinations, etc.) should not be shared unless authorized by the course instructor. Any questions related to this policy should be directed to EP’s academic integrity officer at ep-academic-integrity@jhu.edu.

Students with Disabilities - Accommodations and Accessibility

Johns Hopkins University values diversity and inclusion. We are committed to providing welcoming, equitable, and accessible educational experiences for all students. Students with disabilities (including those with psychological conditions, medical conditions and temporary disabilities) can request accommodations for this course by providing an Accommodation Letter issued by Student Disability Services (SDS). Please request accommodations for this course as early as possible to provide time for effective communication and arrangements.

For further information or to start the process of requesting accommodations, please contact Student Disability Services at Engineering for Professionals, ep-disability-svcs@jhu.edu.

Student Conduct Code

The fundamental purpose of the JHU regulation of student conduct is to promote and to protect the health, safety, welfare, property, and rights of all members of the University community as well as to promote the orderly operation of the University and to safeguard its property and facilities. As members of the University community, students accept certain responsibilities which support the educational mission and create an environment in which all students are afforded the same opportunity to succeed academically. 

For a full description of the code please visit the following website: https://studentaffairs.jhu.edu/policies-guidelines/student-code/

Classroom Climate

JHU is committed to creating a classroom environment that values the diversity of experiences and perspectives that all students bring. Everyone has the right to be treated with dignity and respect. Fostering an inclusive climate is important. Research and experience show that students who interact with peers who are different from themselves learn new things and experience tangible educational outcomes. At no time in this learning process should someone be singled out or treated unequally on the basis of any seen or unseen part of their identity. 
 
If you have concerns in this course about harassment, discrimination, or any unequal treatment, or if you seek accommodations or resources, please reach out to the course instructor directly. Reporting will never impact your course grade. You may also share concerns with your program chair, the Assistant Dean for Diversity and Inclusion, or the Office of Institutional Equity. In handling reports, people will protect your privacy as much as possible, but faculty and staff are required to officially report information for some cases (e.g. sexual harassment).

Course Auditing

When a student enrolls in an EP course with “audit” status, the student must reach an understanding with the instructor as to what is required to earn the “audit.” If the student does not meet those expectations, the instructor must notify the EP Registration Team [EP-Registration@exchange.johnshopkins.edu] in order for the student to be retroactively dropped or withdrawn from the course (depending on when the "audit" was requested and in accordance with EP registration deadlines). All lecture content will remain accessible to auditing students, but access to all other course material is left to the discretion of the instructor.