Lily Gentner

Kids' coding lessons that focus on the essentials.

Problem Solving Robust Mental Models Managing Complexity



Overview and Offerings

Introduction to Coding and Game Development: An 8-week course designed to introduce kids (ages 7+) to coding, problem solving, and formal logic. Students will start with the basics and progress towards developing their own game. Includes weekly 1:1, online lessons and self-guided practice exercises.

Coding and Game Development, Part 2: An 8-week course that builds on the ideas taught in the introduction course. Students will solidify their understanding of the fundamentals by applying them to puzzles, problems, and their own game. Includes weekly 1:1, online lessons and self-guided practice exercises.

Personalized Lessons: Totally individualized, 1:1 coding lessons for students at any level. Lessons will focus on solidifying students' understanding of the fundamentals, developing critical thinking and problem solving skills, and applying this knowledge to a student-directed project.

Why Learn to Code?

Learning to code comes with a lot of wonderful, highly-emphasized, economic opportunities. These get the most attention, but they shouldn't be the top priority for kids. More important, but relatively ignored, are the ways that coding teaches you how to think and therefore how to learn.

My goal isn't to generate job-ready kids or to fill up their future resumes. It's to develop habits and confidence that will lead to a lifetime of clear thinking, curiosity, and enthusiasm about learning. I've written more about these habits, and why coding is a good way to practice them, here: [Why Learn to Code?] .

In short, coding is especially powerful because it wraps the crucial skills of experimentation, debugging, precision, and systematic thinking in something that's also fun and empowering.

About Me

I studied Statistics and Computer Science at Harvard University, and then spent 4+ years working as a software engineer at Square and Uber. Last year, I shifted my focus to teaching because I really believe that the skills outlined above are critically important and too often ignored, but, more personally, because I wish that I had learned them much earlier in life.

I left my first computer science class feeling like it was too challenging for me. At 18, I could carry out formulaic solutions pretty well, but I had almost no experence actually generating them. This made the open-ended problems in computer science extremely intimidating and discouraging.

Systematically approaching hard problems makes them less stressful and more interesting. I eventually developed this skill and applied it to the classes I'd once thought were too hard for me, but I really wish I had started that process 10 years sooner.

What language will you use?

With the right amount of guidance and a thoughtful structure, "real code" can be accessible from a surprisingly early age (I've had a lot of success teaching kids as young as 7). Skipping the typical "coding for kids" tools sets the tone that students are fully capable of solving the hard problems that they'll inevitably encounter. This also allows us to work on a wider array of projects, tailored to students' interests.

To avoid the setup challenges that often deter beginners, lessons are taught in JavaScript by default. But as much as possible, I'll present concepts in a language-agnostic way and only use the essential features. If your student has experience with another language, we can easily use that instead.

Contact

If you have any additional questions, or if you're interested in setting up a trial lesson, please reach out via email at: lfgentner@gmail.com.