It seems to me that your post is missing something: what specifically do you want people to learn?
I am an educator—currently teaching CS research and Python for a general audience—and I find it’s easy to get people to learn… and surprisingly hard to have everyone learn the same specific thing (to a degree they can use, not just repeat on a test <=2 weeks later). Circumstances to discover and apply the ideas for themselves are best, followed by a variety of communications strategies like the videos, diagrams, and docs you mention.
For code-quality I think you’re asking “how do I help colleagues with different expertise work with this code”, and to me that calls for thinking about communication rather than education. Education includes communication, but it’s larger, slower, harder, and fortunately not necessary here :-)
It seems to me that your post is missing something: what specifically do you want people to learn?
Hm, I’m not sure I’m following. It sounds like you’re asking this from the perspective of “I’m a developer. What specifically do I want to teach the other developers about how this code works?” The answer to that totally depends on what the code is for. I do think it would have been better if I had a running, concrete example to reference throughout the post though.
For code-quality I think you’re asking “how do I help colleagues with different expertise work with this code”
Or is this specific enough to count as an answer? If so, yes, that’s what I’m going for.
to me that calls for thinking about communication rather than education
That’s an interesting perspective. I don’t have a good enough grasp of what each term really means, but to me education is a type of communication that has a connotation of being about something that is harder to grasp. Ie. if I’m teaching you calculus, that’s education, but if I’m figuring out a time for us to meet for coffee, that’s communication. With that, education seems like a better term for what I’m going for than communication, but it’s very possible I’m using the terms improperly.
It seems to me that your post is missing something: what specifically do you want people to learn?
I am an educator—currently teaching CS research and Python for a general audience—and I find it’s easy to get people to learn… and surprisingly hard to have everyone learn the same specific thing (to a degree they can use, not just repeat on a test <=2 weeks later). Circumstances to discover and apply the ideas for themselves are best, followed by a variety of communications strategies like the videos, diagrams, and docs you mention.
For code-quality I think you’re asking “how do I help colleagues with different expertise work with this code”, and to me that calls for thinking about communication rather than education. Education includes communication, but it’s larger, slower, harder, and fortunately not necessary here :-)
Hm, I’m not sure I’m following. It sounds like you’re asking this from the perspective of “I’m a developer. What specifically do I want to teach the other developers about how this code works?” The answer to that totally depends on what the code is for. I do think it would have been better if I had a running, concrete example to reference throughout the post though.
Or is this specific enough to count as an answer? If so, yes, that’s what I’m going for.
That’s an interesting perspective. I don’t have a good enough grasp of what each term really means, but to me education is a type of communication that has a connotation of being about something that is harder to grasp. Ie. if I’m teaching you calculus, that’s education, but if I’m figuring out a time for us to meet for coffee, that’s communication. With that, education seems like a better term for what I’m going for than communication, but it’s very possible I’m using the terms improperly.