What's the point of teaching XP/Agile techniques if people don't know the basics, what are those basics, and how are people supposed to lean them?
The best option (and the most traditional) is to find a mentor, but that doesn't always scale.
What skills are we looking for: ability to write code that is testable and readable, to be able to refactor, to be able to pair.
But these look like higher-level skills, what comes before that: having an open mind, to be able to write English, humility, to make trade-offs, to have courage, to have passion/pride in work, analytic skills, perseverance, reflective practice.
This quite a mix of stuff, some of which are intrinsic (values) and some teachable (traits). At a middle level, we want engineering skills: clear concepts, ability to measure, and principles (ask Tom Gilb for more detail). Other points were the ability to model (at some level), basic computing concepts (how does the machine actually work), debugging, general engineering skills. A couple of people recommended "Discussion of the Method", Koen, Billy.
There was also a lot of moaning discussion about the state of the industry and how we should develop the people in it. There wasn't much faith in universities, except that they ought to provide kids with theory and fundamental practices. There was some discussion about how effective apprenticeships could be, whether they would learn everything they need to know.
games for girls