Another IRC conversation. alaric is Alaric Snell-Pym.
20:27 <@alaric> I am a dark master at taking a bespoke requirement, and coming up with a generic yet easily-implemented solution to it, that can be resold in future
20:27 <@DRMacIver> Teach me your ways, master alaric
20:27 <@alaric> I’ve been wondering how to do that, actually
20:28 <@alaric> Most of my software design-fu is intuition, but I know it should be extractable into a series of principles
20:28 <@alaric> So I’ve been wondering what they are…
20:29 <@DRMacIver> Extracting things into a set of principles is the wrong way to teach something anyway.
20:30 <@DRMacIver> You’re taking a thought process, creating a set of steps that you don’t actually use in that thought process, and then expecting people on the other end to somehow recreate the original process
20:31 <@alaric> Agreed, but in order to teach something, you need to know what it is
20:31 <@DRMacIver> Disagreed.
20:31 <@alaric> And my issue right now is that I have these Intuitions, which aren’t very communicable
20:31 <@DRMacIver> Knowledge is a very overrated feature for teaching and learning.
20:31 <@alaric> The best I could do right now is to set people a design exercise, look at their solutions, and point out how they could be done better
20:32 <@alaric> Which would get the point across eventually, but it’d take a while
20:32 <@alaric> Or I could list examples from my past
20:34 <@DRMacIver> Both of those sound more useful than a set of principles.
20:35 <@DRMacIver> I think interactive learning is really the best way though. Either set someone a problem or have them work on their own ones and interact with them as they do – ask and answer questions, point out alternatives, etc.
20:35 <@DRMacIver> Of course this is very time consuming.
20:36 <@DRMacIver> Which is why no one is never taught anything properly and has to learn it for themselves.
20:37 <@DRMacIver> There might be good ways to parallelise this though: e.g. give twopeople two different lessons, stick them in a room together and tell them to solve the problem together.
20:38 <@DRMacIver> This of course only works on motivated students.
20:38 <@DRMacIver> But unmotivated students can fuck off as far as I’m concerned :)
21:39 <@alaric> I’d like to figure out what principles I use, though, even if only to make sure that exercises I set end up covering them all
21:42 <@DRMacIver> Teaching people is also a good way to codify your knowledge I think.
21:42 <@DRMacIver> i have a friend who refers to my rules of interviewing.
21:42 <@DRMacIver> Thing is… I don’t *have* any rules of interviewing. I have a general body of advice and knowledge, which upon relating has become slightly more formalised.
21:43 <@alaric> Yes
21:43 <@alaric> That is a valid process, IMHO
21:43 <@DRMacIver> Agreed.