What to Expect at Your First Coding Lesson

If you haven’t had a programming tutor before, and especially if you haven’t studied programming before, you might wonder what a coding lesson with a tutor looks like.

Learning programming language is actually not too dissimilar to learning a new human language: There are both concepts to learn and skills to practice. As a result lessons can be very hands-on, more focused on theory, or somewhere in between.

It’s important that your tutor works in a way that fits your personal learning style. As you go through your lesson, even your first lesson, feel free to ask the tutor to work differently.

Before the Lesson

Once you find a tutor, you’ll have to schedule your lesson and figure out how and where you’re meeting, as with any subject.

If you’re meeting online, you’ll want to choose between Wyzant’s built-in tool or another online meeting tool.

In times when social distancing isn’t necessary and you’re meeting in person, you could choose to meet at a public place. Libraries tend to work well as long as there’s a space that you can work without bothering others; coffee shops can be good as long as you can work without others bothering you.

It’s good to clarify your goals and the context in which you’re learning. Are you enrolled in a course? Taking a self-guided course? Teaching yourself from a textbook? Just trying to figure something out for a project?

Besides these universal requirements, it’s good to communicate some coding-specific things to your tutor:

  • Do you need help learning or setting up the programming environment or editor?
  • What programming language are you using?
  • Are you working with any other technologies? These can include libraries, frameworks, APIs, databases, among others.

It’s helpful to include these things in your initial message, but don’t worry about being comprehensive. Your tutor can ask for more detail or prompt you for something you forgot if it’s important to them.

In the day or so before your lesson, consider doing a test call to familiarize yourself and verify there aren’t technical issues. It’s not an absolute must but can save five or ten minutes from your first meeting.


While online meeting tools usually work seamlessly, it’s not uncommon to have a technical issue. When they do happen, these typically resolve themselves quickly and you can often get troubleshooting help from your tutor, who maybe has even seen your exact problem before from tutoring others.

Because of this, consider entering your online session five minutes early as a precaution if your meeting software allows you to join without placing a call.

If you’re having extended problems or can’t reach your tutor because of the issue, you can also contact Wyzant Support.

Even if it goes smoothly, it might take a couple minutes to figure out the online meeting tool if you haven’t used it before or haven’t used it for tutoring. You’ll be more comfortable with the tool in subsequent lessons.

What Happens in A Coding Lesson

The actual meat of any programming lesson will vary based on what kind of help you need – is it having a concept explained, learning a coding technique, help getting started with an assignment, getting yourself unstuck? Something else?

Before jumping in, your tutor might ask further questions to get a sense of what level you’re at, especially if you’re self-taught. They might ask if you’re familiar with specific language features or techniques, or inquire about prior programming experience.

Exploring concepts

If you need something more conceptual explained, say how encryption works, the session likely will proceed like a one-on-one lesson, with the tutor doing a majority of the talking. There will be opportunities for you to ask questions and the tutor might ask you questions to check your understanding.

Getting help with a specific technique

If you need help with a specific feature or technique, like classes or object-oriented programming, the session probably will still be in a lesson format, but with more demonstration. You and the tutor may switch off with screen sharing as they demonstrate, and you practice doing it yourself.

Finding clarity in your new language

If you need clarification on an initial assignment that’s opaque or maybe just feels overwhelming, the lesson will resemble a conceptual lesson in some ways, but there’s more back and forth as the tutor helps you design your program and come up with possible algorithms to solve the problem.

Often it’s good to come prepared with some ideas of how you want to approach it, but it’s okay if you are totally lost. This kind of explanation is especially important if your requirement dictates that you use a specific technique to structure your program, like RESTful API, or if you’re being specifically graded on the design of your program.

Debugging other technical help

While your instructor, teacher, or teaching assistant is your best bet for actual clarifications, your tutor can still help with the technical aspects. If your instructor is hard to reach, the tutor can also help you refine your questions to get a quick answer and figure out how to work around the parts of the assignment you do not yet understand.

If you’ve gotten stuck on an assignment and need help, your tutor will likely ask you to share your screen, so they can see both your code and the results of you running it. While they can’t solve the problem for you, they can help you interpret errors, walk you through debugging, and suggest alternative approaches.If you need help troubleshooting your programming environment, the session resembles technical support, except with your tutor explaining what they’re doing so you can do it yourself in the future.

Getting a programming tool up and running

Some tutors might be able to provide support just getting a programming tool up and running. Unfortunately, this is often more difficult than installing most programs, as the creators of programming tools often assume existing expertise. This expertise is partly specific to the tool and the operating system you’re using, which means the tutor might not be able to help you even if they’re experts in the kind of programming you want to do with the tool, at least not without a lot of trial and error.

For example, an experienced C# tutor used to using Visual Studio on Windows may not be familiar enough with how programs are installed on macOS or how Atom is configured if your choice of tool, limiting their ability to hel you if you’re using Atom on macOS. However if you do find a promising tutor unfamiliar with your operating system and editor, you can still work with them if you find another source of help to you get you over that initial hurdle.

Sometimes getting your program up and running has its own technical challenges as well—for example, if you want to create a web app, there are extra steps to transfer your program and get it running on a server that can communicate over the web. Often the tutor can recommend a way of doing this that they know and is a good fit for what you’re trying to accomplish. But if you’ve already chosen a tool or are mandated to use one by your instructor, you might run into the same problem of them lacking the specific expertise, despite their overall experience.Regardless of the lesson type, be sure to let your tutor know if their approach isn’t working for you.

Remember: It’s not rude to say that an explanation didn’t help you or to stop a tutor to ask questions.

It’s also okay to ask for the lesson to take an entirely different direction. If you had hoped for help on problem 9, but you realize you don’t understand several key terms, you might need to spend the rest of the session getting those terms defined and clarified. This might require some improvisation on the tutor’s part, but it’s more important to get the help you need rather than struggle through your initial plan.

Wrapping up

Depending on how the lesson went, it might wrap up early, if you finished everything sooner than expected, or later, if both you and the tutor are available after the end of your scheduled time.Often there will be some time at the end for questions about what you covered. If you have some topics unrelated to your lesson you are curious about, you can also ask about them now.

Schedule your next lesson

If you need further help and want to work with your tutor again, this can be a good time to talk about what’s next and, if you like, actually schedule the next lesson. At minimum, you’ll want to make sure you have everything you need to continue learning, practicing, or experimenting after the session.

For example, if this is your very first day learning Python, you might feel confident on the topic you discussed, variables, but have no idea what might be a good thing to try learning on your own.

As with any meeting, the wrap-up is also a good time to restate anything the participants need to do as a reminder. This might be a resource the tutor promised to send you or the next homework assignment you want help on. Often the tutor does this (and if they don’t, you can certainly ask them to) but you can, too.


Once the lesson is over, the tutor will record it, and enter the time the lesson took, and you’ll receive the information by email. See How do I pay my tutor for a lesson? for details.

If you’ve found a good fit and want to meet again, future lessons will be more streamlined. However, if you’re asking for help in a different class or a different project, you may want to send that information to the tutor, possibly following the questions above, to keep your tutor up-to-date and to verify they have the expertise. Your tutor may be available to answer some questions over messaging later.

Above all, communicate well and often with your tutor, and keep progressing toward your coding goals.

Latest Posts


Making educational experiences better for everyone.

Scroll to Top