When I see a novice programmer doing complex substring matches instead of using regular expressions, my first thought these days isn't, "They're stupid," it's, "I should have taught or explained something sooner or more clearly." 1/5
Similarly, when someone in tech whom I think has good intentions says something naive about computing education (or about poverty or intellectual property or whatever), my first question these days is, "OK, so where I reasonably expect them to have learned about that?" 2/5
That's why @swcarpentry and why "Teaching Tech Together": it's not fair to diss people for not knowing things they can't reasonably be expected to know, any more than it's fair to make fun of someone for mispronouncing a word they've only ever read, not heard. 3/5
In the late 1990s and early 2000s, I was convinced that all of our tools were fundamentally wrong, and that we'd only make real progress in computing if we rethought them. 1/4
I now realize this was displacement: I focused on tools because I knew how to fix them (or at least change them), and because if the problem was tools, I wouldn't have to worry about fuzzy sociological stuff that made me very uncomfortable. 2/4
Putting it another way, if the problem was tools, I could change them; if the problem was community, I'd have to change me, so I really, really wanted the problem to be tools. 3/4
Again: the single most useful training you can give an adult is how to run a meeting and how to participate in someone else's. The world is mostly run by lawyers, MBAs, and military officers because they're taught this as a first-class skill.
1. Decide if there actually needs to be a meeting. If the only purpose is to share information, send a brief email instead.
2. Write and circulate an agenda. If nobody cares enough to do this, the meeting doesn't need to happen.