COP 1500

Introduction to Computer Science featuring Python

Computer Science / Computing Foundations

Web pages with more information in SWEBOK menu under Computing Foundations

Programming

Web pages with more information in Programming -> Languages -> Python

Class Expectations

  • Attend every class meeting (live or online) and / or watch all lesson videos

  • Contact me for assistance / clarification

  • Productively spend 2-3 hours on classwork outside of class (6-9 / week) for every hour in class (3 / week)

    • If you cannot dedicate at least 6 hours outside of class on this course per week, do not expect to do very well.

    • If you are able to meet the requirements for assignments in less time, challenge yourself and go above and beyond. There will be varying levels of experience and ability in the class. Your goal should be improvement.

    • If you find that you need more than 9 hours per week outside of class to understand and complete assignments you probably need a different approach. Please speak to the professor and / or instructional support.

Workload for most weeks

  • Actively read SWEBOK section and answer CS/SE Questions (1-1.5 hours)

  • Actively read Python book and answer chapter questions (1-1.5 hours)

  • Complete Activity / POGIL assignments (2-3 hours)

  • Watch lesson videos and / or join live lessons (3 hours)

  • Complete programming exercises (1-1.5 hours)

  • Complete other assignments / work on project (1-1.5 hours)

Orientation, Purpose, and Structure

Catalog Course Description

COP 1500 Introduction to Computer Science

Introducing basic concept of computing: discrete models, computer architecture and organization, operating systems, programming languages, software design and construction, performance evaluation, with a focus on programming.

About this course

This course is an introduction to computer science, software engineering, and programming.

Design Influence

  • My general course design philosophy

  • This course:

    • SEEK 4.8 Computing essentials (CMP)

      • Computer science foundations (cf)

        1. Programming fundamentals (control and data, typing, recursion)

        2. Algorithms, data structures, and complexity

        3. Problem solving techniques

        4. Abstraction, use and support for (encapsulation, hierarchy, etc.)

        5. Computer organization

        6. Basic user human factors (I/O, error messages, and robustness)

        7. Basic developer human factors (comments, structure, and readability)

        8. Programming language basics

        9. Operating system basics

        10. Database fundamentals

        11. Network protocols

    • SWEBOK Chapter 13: Computing Foundations

      1. Problem Solving Techniques

      2. Abstraction

      3. Programming Fundamentals

      4. Programming Language Basics

      5. Debugging Tools and Techniques

      6. Data Structure and Representation (at an introductory level as a preview of Data Structures course)

      7. Algorithms and Complexity (at an introductory level as a preview of Algorithms course)

      8. Basic Concept of a System

      9. Computer Organization (at an introductory level as a preview of Computer Organization course)

      10. Compiler Basics

      11. Operating Systems Basics (at an introductory level as a preview of Operating Systems course)

      12. Database Basics and Data Management (at an introductory level as a preview of Database course)

      13. Network Communication Basics

      14. Parallel and Distributed Computing

      15. Basic User Human Factors

      16. Basic Developer Human Factors

      17. Secure Software Development and Maintenance (at an introductory level as a preview of Security course)

    • IEEE/ACM CS Curriculum Guidelines

      • Thoroughly:

        • Software Development Fundamentals (SDF) / Fundamental Programming Concepts

      • Partially:

        • Network Communication (NC) / Introduction

        • Architecture and Organization (AR) / Machine Level Representation of Data

        • Discrete Structures (DS) / Basic Logic

Preparation for:

  • COP 2006 Introduction to Programming

  • Computer Information Systems

  • Programming in Math

Technology Requirements

Hardware

You should have your own, modern computer or be able to spend significant time at a computer lab.

Software

The Canvas learning management system is utilized heavily for assignments, grades, announcement, and more. Practice using and learn more about Canvas through the FGCU Student Demonstration Course.

This class will utilize the following applications (all are available for free and work on multiple operating systems):

Additionally, the following apps are recommended for your smartphone or tablet:

  • Canvas Student

  • OneNote

  • Outlook

  • Microsoft Teams

  • OneDrive

Computer / Digital Literacy Skills Expected

  • install applications

  • zip and unzip files

  • All of the skills in the Basic Computer Operations and Concepts, Internet, and Canvas sections of the FGCU Academic and Curriculum Technology Skills Self-Assessment