DEV Community


Discussion on: I teach the vocation of software development to hundreds of people each year, Ask Me Anything!

stevebrownlee profile image
Steve Brownlee Ask Me Anything

Difficult Concepts

As the abstractions get larger, the struggle becomes immediately obvious. Development is, by its very nature, an abstract craft. Once the students get the hang of the vocabulary and grasp the fundamental concepts of iteration, logical branching, functions, we start discussing asynchronous programming, event driven programming and modularization.

That's when the stress and frustration levels elevate quickly.

Difficulty for students rises as we ask them to create larger mental models. When the signal or data flow begins spreading across multiple modules, they need to keep a mental reference of multiple objects in their working memory to implement a feature or fix an issue.


This is something nearly every student needs suport and coaching on. Their fixed mindsets become very loud and ornery because the challenges are non-stop, and we spend a significant amount of time in the first 6 weeks helping them develop their growth mindset.

People are rarely challenged to this level in their lives before NSS. I've heard the same story from hundreds of students over the last 4 years that they coasted through high school and university with minimal effort. This leads to a strong self-image of "natural intelligence". When getting the icy cold splash of water in the face of NSS, their ego takes a big hit. However, we encourage them that with good strategies and high effort, they can achieve anything.

Not a message they usually get in traditional education which relies more on segmented, broadcast teaching and fact regurgitation on graded assessments.

Thread Thread
isas1 profile image

It’s great to see you’re so passionate about this!

Re: strategies — how do you help when students are struggling with larger mental models — is it a case of reassurance and practise or do you use specific memory techniques?

Re: mindset — what kind of strategies do you use in the first 6 weeks?

Thread Thread
stevebrownlee profile image
Steve Brownlee Ask Me Anything

how do you help when students are struggling with larger mental models

Practice, practice, practice

mindset — what kind of strategies do you use in the first 6 weeks?

We recently documented all of the strategies that we use, across 5 different instruction teams.

  1. Lightning exercises - Small, targeted exercises that students can complete in a few minutes, and then live coded by a member of the Learning Team. Helps them realize they know more than they think.
  2. Morning memes - Motivational memes created by the Learning Team related to something they are currently experiencing.
  3. Foundation workshops - Before class begins, junior instructors will cover foundational concepts that some students need reinforcement on since the lead instructor needs to keep moving the class forward.
  4. Being intentional about creating an environment - both for students and from instructional team - that mistakes are not to be feared, but to be seen as a learning opportunity.
  5. Personal professional stories about when shit happened and the world didn't end
  6. Have students talk at their currrent level of understand about the code and coach on how to ask questions, and empathize about their understanding