Hacker News new | past | comments | ask | show | jobs | submit login

pattern 9: starting out abstract

That's the most important one for me. I've always thought it was the difference between a good and bad teacher. If you don't start with concrete examples then the listener has no where to map the abstraction. If you start with a couple of examples the listener will start to abstract by themselves.

Experts forget that they themselves started with examples.




Curiously, I find this isn't necessarily true for me. I often prefer hearing an abstract explanation first and I have no problem with keeping several abstract terms and relationships between them in mind without having anything "real" to map them to.


It's definitely an individual preference, but it also relates (IME) to the base knowledge the person has of the domain. If I want to explain a novel programming concept to a colleague and they've been programming for 20 years and understand multiple language paradigms I can often start out very abstract. They'll fill in the concrete use or example themselves. On the other hand, with a new hire or a non-CS major (I've worked with a lot of EEs who worked as programmers but weren't trained as programmers) a concrete example which is then generalized or made more abstract works better.

Which is another example of "know your audience". Of course, even with the more advanced person I still have a preference to start with the concrete. I'll just move through it more quickly (easier in person, where you can read your audience, Zoom classes with muted participants have been an awful experience for me).




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: