lauerz: (Default)
[personal profile] lauerz

Lucy interviewed Eugene, who is a lead instructor in out Python 1 Sunday course. This course meets at 11AM Berlin time (10AM in London, 12:00 in Moscow). This course is taught in English, and instructors are from UK, Germany and Russia.  

Lucy: Tell me a bit about your Python 1 course.

Eugene: Our course is designed to get people to start programming from the very beginning.  It will give them the basic tools and building blocks that are required when doing any sort of software engineering.  A lot of the things students will learn in this class will be very similar to other languages. Not only is the syntax somewhat similar between multiple languages, what’s even more important, is that students will learn some of the key principles and concepts of computer science that are widely applicable. These are the kinds of things that will be useful no matter what kind of software engineering they might be doing in future.

One example I like to give is about two concepts in computer science, called “abstraction” and “decomposition.”  “Abstraction” refers to removing the unnecessary parts of the problem you are trying to solve, so that you can focus on the core concepts. And decomposition refers to breaking a problem down into smaller pieces, and then breaking those pieces down into even smaller pieces and ideas, and solving them one by one to solve the bigger problem.

So to sum it up, we will learn Python specific syntax, but we will also cover concepts that will be useful in CS no matter what language you are working in.

Lucy:  What will the students learn at the beginning of your class?

Eugene: At the beginning we will go over the basic concepts, like different data types, and how to store data in variables, as well as some basic functions and operations we can do with data, for example, basic mathematical operations.

Lucy: what about the middle and the end?

Eugene: Closer to the middle and the end, students will learn more advanced data types, such as lists. They will also learn about functions - how to create and use their own functions and procedures, and why we use them. And this is another very important building block and tool that is essentially required for most software development.

We will finish with a project that’s an exploration of Turtle Module, that will add some excitement and give the students an opportunity to put everything they learned together. Turtle is a simple graphics module that allows students to control a turtle on the screen to draw graphics and texts. 

Lucy: Tell me a little bit about your teaching style and why you like teaching.

Eugene: What I like to do in class is to prepare a presentation that has a summary of what we are covering. The idea is that the presentation has all the key concepts, so that it can be used for studying alone, without the recording. But in the class itself, I use the presentation only as a reference, and I like life-coding all the code we are going over. 

My preference is to use this life coding, instead of showing pre-typed code. I believe this is pretty important, because, as I code, I talk through my thought process and why I’m writing what I’m writing, so that students understand why each line of code exists, and what it does, and what are the alternatives.

The reason I like to teach is because I find CS very cool and fascinating, and I like to share that knowledge with people and to show them that CS is not scary. I like show people that they can do it as well.

Lucy: How old are you, and how long have you programmed?

Eugene: I’m 17, and I’ve been programming for about four years. I started programming originally when we were taught Python at school, so Python was my first language.  I then became fascinated with Python and self taught myself way ahead of what we did in school. The way I like to learn is that I think of projects I’d like to do, and then I go on to learn things I need to be able to do it.

One of the first projects I did was writing a program that could read a Shakespeare text, and then replace certain words with other words.  It was a fun, one day project at the time. I also tried to solve some problems I had in my everyday life with code. For example, I wrote a program to download the content I wanted to save from the web. I then decided that I wanted to write my own blog, but I didn’t want to use Word Press. So I started learning about web development, and started learning other languages as well. So since then, I’ve also learned JavaScript, CSS and HTML.

I also know some C++ and, more specifically, I write programs for microcontrollers like Arduino.  For example, I write firmware for payloads that are launched on weather balloons. 

Lucy: That sounds pretty cool.  What will your students know after they finish the course?

Eugene: After the course, the students will know some of the key concepts of programming, which they will use everywhere, no matter what program they will write in the future.  They will learn how to write code with conditions, they will learn how to use loops and write functions, etc.  And all of the other courses will build up on this.  Essentially any program such as a game, a website, word processing software etc, will use these basic programming tools and concepts.

If you are interested, you may sign up for this course here:

https://www.thepythonclub.com/courses

 

Profile

lauerz: (Default)
lauerz

December 2024

S M T W T F S
1234567
8910 11121314
15161718192021
2223 2425262728
293031    

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 9th, 2025 10:11 pm
Powered by Dreamwidth Studios