I'm lucky. Very lucky.
I get to teach.
It's my calling.
I also get to teach adults, many of whom have plunked down a large amount of cash to have me coach them through a rigorous six-month job training program that requires them to completely re-wire their brains, and change how they look at the world.
They're highly motivated.
That's the biggest difference between teaching adults for a non-profit company, and teaching kids in K-12. Everyone in my classroom fought to get that seat, and works hard every day in order to change their life for the better.
The prize is a coveted one: a lucrative job working on a team of professional software developers that will continue the student's growth in the craft.
Starting from Scratch
Free of the bureaucracy, clumsy oversight, politics, ignorant guidelines & standards, and egos that plague K-12, and university, education systems (Was that too honest? It might have been.) our team has been able to build a course based off of cognitive science findings, educational research, and our own observations of experimental results.
Question Everything is one part of our mantra.
Students First is the other part.
We put our students, their success, and comprehension at the forefront of every daily activity while at work. We've run innumerable experiments since the beginning of 2015. Luckily, we spend significant time discussing, planning, and designing an experiment before we run it, so most have been successful.
There's been a handful of loser ideas, too. I'm looking at you, "Let the Student Teams Pick Their Own Projects," idea.
Ok, that was my idea, and it was a HUGE loser.
I've had students provide feedback that they had their best educational experience of their lives, or close to it, at NSS. Over the last three years, I think I've discovered the two things that contribute to that assessment.
- We work very hard to eliminate ego from the classroom. It's not about the instructors at all. It's about the students, and how they feel as they progress through the content, and then transition into professionals themselves.
- We've had the liberty to question absolutely everything about how to teach.
Many people make large assumptions about teaching because we all get indoctrinated when we go through traditional schooling about How It Should Be Done. Let's look at 10 of those assumptions that we've questioned.
- Students need to be graded and ranked.
- Students need to be tested frequently.
- Instructor talking, and students passively listening, is an effective learning tool.
- Not everyone is cut out to do this.
- Students can't teach.
- Homework is important.
- Students must learn independently, by themselves.
- Learning is time-constrained. Everyone must learn the same thing at the same time.
- Only "smart" people can be software developers.
- This is how everyone else does it, so it must work.
Through constant experimentation, observing results, and getting honest, anonymous student feedback, we have learned that each of those assumptions is not applicable to our learning environment (perhaps in any learning environment).
I've discarded them from the course and our collective psyche, one by one, until what we're left with is a Learner Experience that is tailored to teaching team-based software development, and ensuring that students are given the opportunity to make themselves hireable upon completion of the course.