Categories
Career Programming What I’m Up To

My upcoming “Learn Python” course for Computer Coach

Computer Coach’s “Learn Python” course banner: “Live, online, instructor-led / Starting Sept 7th 2022”

The TL;DR

Here’s a quick summary of the course:

  • What: An introductory Python course! I’m teaching it on behalf of Computer Coach, a Tampa-based training company and friends of mine.
  • Where: Online, via Zoom.
  • When: Monday and Wednesday evenings, from 6 p.m. to 10 p.m., starting this Wednesday, September 7th.
  • How to enroll or find out more: Contact Computer Coach’s Kasandra Perez at kasandra@computercoach.com or (813)-254-6459 to find out more about the course or register.

You’ll need the following to participate in the course:

The state of Python

Selection of headlines showing how in-demand Python is.

All you have to do is look at the current developer surveys and tech news headlines to know that right now, Python is having its “moment”:

Graph showing most in-demand programming languages 2021-2022. Python is in the #1 position with almost 150K job openings in the U.S. and almost 100K job openings in Europe.
Found via SiliconRepublic.

CodingNomads, a coding school in California, looked at thousands of job postings in North America and Europe and declared Python as the most in-demand coding language for 2022.

As for salaries…

Map showing Python salaries around the world (US: $111K, Canada $95K, UK $84K, Germany $97K, Australia $103K, India $14K).
These are salaries from 2020, found at CareerFoundry.

…you can say that the pay is decent. Pair Python with another tech skill (for instance, JavaScript) or a people skill (say, managing developers), and you can make even more.

The schedule

This is the course schedule for Learn Python. It’s flexible — if there’s a need spend more time on a specific topic, we’ll do that. The point isn’t to cover every topic on the list; it’s to give you the necessary grounding in Python and programming to continue after the course is over!

Sessions will take place via Zoom, which means that you can take the course from wherever you happen to be. There will be ten sessions, and each will run from 6:00 p.m. to 10:00 p.m., with ten-minute breaks at the end of the first, second, and third hour.

  • Day 1 : Hello, Python!
    Wednesday, September 7, 6:00 p.m. – 10 p.m.
    • Setting up the programming environment
    • Introducing Jupyter Notebook
    • Variables and simple data types
    • Programming in sequence
  • Day 2: Algorithms aren’t just for Facebook
    Monday, September 12, 6:00 p.m. – 10 p.m.
    • Branching (a.k.a. “If” / “elif” / “else”)
    • Lists
    • Looping
  • Day 3: Organizing data and code, and listening to the user
    Wednesday, September 14, 6:00 p.m. – 10 p.m.
    • Dictionaries
    • Functions
    • Getting input from the user
  • Day 4: Getting serious
    Monday, September 19, 6:00 p.m. – 10 p.m.
    • Object-oriented programming
    • Working with files
    • Handling exceptions
  • Day 5: When the going gets weird, the weird turn pro
    Wednesday, September 21, 6:00 p.m. – 10 p.m.
    • Running Python programs from the command line
    • Importing Python modules
    • Organizing files
  • Day 6: The web and data
    Monday, September 26, 6:00 p.m. – 10 p.m.
    • Web programming with Flask
    • SQLite: The database built into Python
  • Day 7: Just enough data science to be dangerous
    Wednesday, September 28, 6:00 p.m. – 10 p.m.
    • Introduction to data science and Python’s data science libraries
  • Days 8 – 9: Using your Python powers for good
    Monday, October 3, 6:00 p.m. – 10 p.m.
    Wednesday, October 5, 6:00 p.m. – 10 p.m.
    • Using Python to handle all sorts of programming tasks, which could include:
    • Building the scripts that generate the Tampa Bay Tech Events list
    • Automating email and spreadsheets
    • Building a weather app
  • Day 10: Just the beginning
    Monday, October 10, 6:00 p.m. – 10 p.m.
    • Review of everything covered
    • What you should cover next
    • Programming interview questions

What happens in the course?

Photo: Woman’s hands typing on Mac laptop.

This is not a passive course! This isn’t the kind of course where the instructor lectures over slides while you take notes (or pretend to take notes while surfing the web or checking your social media feeds). In this course, you’ll follow along as I write code on my screen. You’ll actively take part in the learning process, entering code, experimenting, making mistakes, correcting those mistakes, and producing working applications. You will learn by doing. At the end of each session, you’ll have a collection of little Python programs that you wrote, and which you can use as the basis for your own work.

The course will start at the most basic level by walking you through the process of downloading and installing the necessary tools to start Python programming. From there, you’ll learn the building blocks of the Python programming language:

  • Control structures that determine what your programs do,
  • Data structures to store the information that your programs act on,
  • Functions and objects to organize your code, and
  • Using libraries as building blocks for your applications.

Better still, you’ll learn how to think like a programmer. You’ll learn how to look at a goal and learn how you could write a program to meet it, and how that program could be improved or enhanced. You’ll learn skills that will serve you well as you take up other programming languages, and even learn a little bit about the inner workings of computers, operating systems, and the internet.

What kind of apps will you build?

We’ll build as many applications as we can, based on your suggestions or needs. These include (and aren’t limited to):

  • CoverTron: My generator for cover letters for job applications. I actually used it in my last job search!
  • Tampa Bay Tech Events Transmogrifier: Every week, I put together a list of tech events for Tampa Bay, culled from Eventbrite and Meetup. It would take me hours to do it by hand, but it’s so much quicker with the automated help of a couple of Python scripts.
  • Find out when and where a digital photo was taken: When you take a picture with your phone or a present-day digital camera, that picture has EXIF data embedded in it, with the date, time, and location where the photo was taken. I’ll show you how to extract that info!
  • Editing photos: If you were assigned the task of shrinking a set of 100 photos by 25% (or any other similar basic photo editing task), you could do it manually, or you could make Python do it.
  • Creating interactive documents with Jupyter Notebook: It’s more than just a Python tool used by data scientists, Nobel Prize winners, and Netflix, but a useful programming environment and operations platform for everyday tasks!
  • Writing web applications with Flask: Just as Python makes programming much easier, the Python-powered Flask framework makes programming web applications much easier.
  • Passing interview coding tests: Learn how to deal with the most dreaded part of the interview for a programming job, and why Python is a key part of my coding interview strategy.
  • Using databases: Using databases is a key part of programming, and luckily, Python comes with a built-in database!
  • Data science: This is a giant topic and could easily take up the time to do this course three times, but I’d be happy to go over the basics.
  • Interactive storytelling and games: Python’s quite good at this, and I can walk you through the PyGame framework and Ren’Py interactive story system.
  • Mobile app development: Yes, there are ways to do mobile app development in Python.

How do you sign up for the course or find out more?

Once again, you’ll want to contact Computer Coach’s Kasandra Perez at Contact Kasandra Perez at kasandra@computercoach.com or (813)-254-6459 to find out more about the course or register.