Register for Summer 2022 Computer Science Classes

Summer Computer Science Courses

Course 1: Programming in Java – AP Computer Science & Programming in Java.

InstructorDr. Karpoor Shashidhar, karpoor@gmail.com

Class Schedule: Sunday at 2:00 PM Central Time

Location: Online via Zoom – meeting room information will be sent to students.

Dates: June 5, 12, 19, 26, July 10, 17, 24, 31, August 7, 14

Tuition : $550

In this course, we will explore the foundational principles of programming in the Java language. This course should prepare you for the AP Computer Science A exam. Some topics we will study include Variables and Operators, Input and Output, Methods, Conditionals and Logic, Loops, Arrays, Strings, brief Overview of Objects and Classes etc. We will also immerse ourselves in the mechanics of programming – running, testing, and debugging. The book we will be using for the course is “Think Java, How to Think Like a Computer Scientist” by Allen Downey and Chris Mayfield. This class is suitable for students in grades 7-11. Previous experience in computer science is not required.

Objectives

Our course for middle school and high school students exposes them to introductory and intermediate computer science concepts to build a foundation for further studies and exploration of computer science.

  • This course will prepare you for the AP Computer Science A exam.
  • This course will prepare you with essential programming tools and data analysis techniques that can be applied to individual research projects. This will strengthen your application to highly selective academic enrichment programs.
  • Students who are interested in preparing for local and national competitions, including the USA Computing Olympiad. Students who gain the ability and knowledge to succeed in these competitions are successful in applications to selective universities and are well prepared for internships at leading technology companies.

Items you will need for this class:

  1. Laptop/Desktop (PC or Mac) and access to this computer for at least 3 hours per week to complete the weekly assignment

Software Requirement:

  1. On our first class, we will discuss installation of the Java Platform, Standard Edition JDK 15 (Java SE 15.0.1) (https://www.oracle.com/technetwork/java/javase/downloads/index.html)
  2. We will install TextPad, a lightweight Java IDE designed for students and beginners in Java. (https://www.textpad.com/) – we can also work using online Java compilers.

 Books and Related Reference Materials:

  1. Textbook: Think Java, How to Think Like a Computer Scientist is an introduction to computer science and programming intended for people with little or no experience. The book presents each new idea in a logical progression. Larger topics, like recursion and object-oriented programming, are divided into smaller examples and introduced over the course of several chapters. This book is well suited to prepare students for the AP Computer Science A exam, which includes object-oriented design and implementation. The book is available here:
    1. https://greenteapress.com/wp/think-java/
    2. http://greenteapress.com/thinkjava6/thinkjava.pdf (PDF Version)
    3. http://greenteapress.com/thinkjava6/html/index.html (HTML Version)
    4. https://books.trinket.io/thinkjava/ (Interactive Trinket Version with a Java compiler in your browser)
    5. https://github.com/AllenDowney/ThinkJavaCode (Accompanying code for the book)
    6. https://greenteapress.com/wp/wp-content/uploads/2016/01/AP.pdf (Mapping of Computer Science A to Think Java Textbook)
  2. CollegeBoard AP Computer Science A Description:
    1. https://secure-media.collegeboard.org/digitalServices/pdf/ap/ap-computer-science-a-course-description.pdf
    2. https://apcentral.collegeboard.org/courses/ap-computer-science-a?course=ap-computer-science-a
  3. Create an account at codingbat.com. There are some interesting problems we can work on as the course progresses.
  4. Barron’s AP Computer Science (only if you are interested). This is an optional and supplemental book but will help you prepare for the exam. It usually costs about $20 but you may find used copies for less online. Barron’s online AP Computer Science sample test is here: http://barronsbooks.com/AP/compsci/

Some Questions: I would like you to email me the answers to these questions before our first class.

  1. What is the single most important skill for a computer scientist? Please explain.
  2. Java is a high-level language. What is the difference between a high-level language and a low-level language? What other high-level languages have you heard of?
  3. What are your goals for this course?
  4. Tell me something interesting about yourself.

 

Course 2: Programming in Python

InstructorDr. Karpoor Shashidhar, karpoor@gmail.com

Class Schedule: Sunday at 3:30 PM Central Time

Location: Online via Zoom – meeting room information will be sent to students.

Dates: June 5, 12, 19, 26, July 10, 17, 24, 31, August 7, 14

Tuition : $550

Course Description: In this course, we will explore the foundational principles of programming, algorithm design and programming concepts in the Python language. Python is an interpreted, high-level, general-purpose, object-oriented programming language. Created by Guido van Rossum and first released in 1991, Python’s design philosophy emphasizes code readability and is a fun and awesome first language to learn. We start off with some fundamental concepts of programming including Variables and Operators, Input and Output, Functions, Conditionals and Logic, Loops, Strings, brief Overview of Objects and Classes etc. We will also immerse ourselves in the mechanics of programming – running, testing, and debugging.

Some advanced topics we may study, if time permits, include:  

  • Objects and Classes
  • Comprehension (Multiple and Nested)
  • Extended Keyword Arguments (*args, **kwargs)
  • Closures and Decorators
  • Generators and Iterators
  • @staticmethod and @classmethod
  • Inheritance and Encapsulation
  • Operator Overloading
  • Python Packages

The book we will be using for the course is “Think Python: How to Think Like a Computer Scientist” by Allen Downey. This class is suitable for students in grades 7-11. Previous experience in computer science is not required.

 

Objectives

Our course for middle school and high school students exposes them to introductory and intermediate computer science concepts to build a foundation for further studies and exploration of computer science.

  • This course will prepare you with essential programming tools and data analysis techniques that can be applied to individual research projects. This will strengthen your application to highly selective academic enrichment programs.
  • Students who are interested in automating mundane tasks can do so effectively with Python, which is a fast, scripting, prototyping language.
  • Students who are interested in preparing for local and national competitions.
  • Students who gain the ability and knowledge to succeed in these competitions are successful in applications to selective universities and are well prepared for internships at leading technology companies.

Items you will need for this class:

  1. Laptop/Desktop (PC or Mac) and access to this computer for at least 3 hours per week to complete the weekly assignment

Software Requirement:

  1. On our first class, we will discuss installation of Python 3 including IDLE, the IDE. (https://www.python.org/)
  2. We will look into alternate IDEs and optional online Python interpreters.

 Books and Related Reference Materials:

  1. Textbook: Think Python 2nd Editionby Allen B. Downey is a wonderful book and serves as an introduction to computer science and Python programming. The book presents each new idea in a logical progression. Larger topics, like recursion and object-oriented programming, are divided into smaller examples and introduced over the course of several chapters. This book is well suited for Python and programming in general. The book is available here:
    1. https://greenteapress.com/wp/think-python-2e/
    2. This is the second edition of Think Python, which uses Python 3. We will NOT be using Python 2, which is covered in the first edition, which is here.
    3. http://greenteapress.com/thinkpython2/thinkpython2.pdf(PDF Version)
    4. http://greenteapress.com/thinkpython2/html/index.html(HTML Version)
    5. https://github.com/AllenDowney/ThinkPython2/tree/master/code(Accompanying code for the book)
  2. Create an account at com. There are some interesting problems we can work on as the course progresses.

Some Questions: I would like you to email me the answers to these questions before our first class.

  1. What is the single most important skill for a computer scientist? Please explain.
  2. Python is a high-level language. What is the difference between a high-level language and a low-level language?
  3. What other high-level languages have you heard of?
  4. What are your goals for this course?
  5. Tell me something interesting about yourself

Payment Details:

Payment should be made by Zelle Quick Pay to ivyclimbers@gmail.com

Payment may also be made via Zellid to @ivyclimbers828

Please include your student’s name on the payment memo!

Refund policy – A full refund is offered if the class student cancels before the beginning of classes. After the first day of classes no refund is offered.