Ayende @ Rahien

My name is Oren Eini
Founder of Hibernating Rhinos LTD and RavenDB.
You can reach me by phone or email:


+972 52-548-6969

, @ Q c

Posts: 6,128 | Comments: 45,550

filter by tags archive

Teaching and Speaking

time to read 2 min | 339 words

D'Arcy has a post about teachers vs. speakers, which is a topic that came up a few times during DevTeach. My thoughts about this are fairly complex, but let me see if I can express them in a coherent fashion.

There is a definite difference between teaching and speaking. I like to think about speaking as a show that is targeted at increasing the knowledge of the audience on the subject at hand. Teaching is imparting that knowledge in an actionable form.

To take a concrete example, after my MonoRail talk, I don't expect anyone to be able to build a site using MonoRail. Certainly not with additional resources to go through. After my MonoRail course, however, I would consider this a personal failure if any of the participants wasn't able to build a site using MonoRail.

A success criteria for the MonoRail talk is that the audience groks the gestalt of MonoRail. They understand the tradeoffs in choosing it, what it would bring them and the overall model that is used.

Frankly, in the space of 60 to 75 minutes, I do not believe that you could do more.

Given those constraints, I do not think that you could do more than introduce a subject and open the mind of the people in the audience to why they should learn more about it.

Imparting knowledge takes time, far lower level of granularity when talking about how to do things, and a more gradual build up of the subject material. It takes much longer, since it is also requires a channel with much higher bandwidth for communication.

Unless the topic that I am talking about can be covered in a short span of time, when faced with the timing constraints of a typical speaking engagement, there is no other option than reverting to a lower-bandwidth, hit-the-high-notes, give-an-impression-not-complete-picture approach.

I like teaching, and I enjoy speaking, and I don't think that there should be a value judgement between them.


Scott Bellware

In my commentary on teaching, I'm specifically and explicitly saying "teaching" rather than "teaching everything there is to know about a subject."

I'm calling out a pattern where even in an hour, someone can teach - as I saw you do a pretty good job of at DevTeach last week.

I'm constantly impressed by your frequent ability to fill an hour with teaching. Considering that you often struggle with English, you often out-perform native English speakers in addressing the imperative to use whatever time you have to teach rather than merely speak (although your sessions could benefit with a more stragic rather than emotional triggering and use of personal war stories).

There are an amazing number of speakers who squander the opportunity to fill their hour with teaching and instead fill it with self-aggrandizing platitude.

When all we get is an hour, it's incumbent upon us to fill that hour with teaching - not just a glut of information - but teaching.

Thanks for your talk at DevTeach. It was engaging and helped refresh the concepts and the framework after some months on Monorail hiatus.

Ayende Rahien

I think that I need a more clearly defined separation between teaching & speaking, because I don't think we have the same mental model when we are talking about this.

Jon Skeet

@Ayende: Absolutely on the "clearly defined separation" requirement.

I've given a few presentations on C# which I probably wouldn't personally call "teaching". Just as you say, I wouldn't expect people to be able to immediately use the new features I showed them - but I'd expect them to have an understanding of how C# has been evolving and why it's worth them investing significant time (i.e. more than just the presentation) in learning more.

Compare that the two screencasts I've done so far, on automatic properties and object/collection initializers - I'd really hope that someone could immediately take and use that knowledge.

Interestingly enough, one of the presentations I gave did turn into a teaching session to some extent - because we had few enough people and enough time to dive into all kinds of interesting nooks and crannies. It was a definite hybrid.

But yes, I suspect it's another case of different people meaning different things.

D'Arcy from Winnipeg

In my mind, the difference between teaching and presenting is that presenting focusses on the presenters skill, adding the "sizzle" to the talk, ensuring that they do the right things to get the best eval scores (Hey, come to my session and win ), etc.

Teaching is when the presenter makes the subject matter the star. Everything discussed within a session, even if its only an hour, is about that one thing and with the purpose of educating the audience, not entertaining.

It's a mindset change. I think we do alot of intro-style sessions at conferences and code camps, but we're not really giving the audience meat...we're just feeding them milk. At some point, we have to ween them off and challenge them. Alt.NET was a great example of that, with topics and discussion that were well beyond intro-level stuff, and yet still was restricted to just over an hour per session...and yet there was great learning and teaching going on.

Obviously having a set amount of time in a classroom type setting over x number of days will give a different experience, but why can't we deliver as close to that experience at a conference session? What about if we altered our code camp schedules to allow for fewer sessions, but more deeper dives in those sessions?

I think conferences and code camps can be a venue for teaching, and that there are those that already do this without being conscious of it (Oren, your talk at Dev Teach that Scott mentioned is a good example). There are others that still rely on novelty prize draws to try and get their scores up though.


Tim Scott

I view this as a spectrum that goes like this:

Awareness -> Knowledge -> Skill

"Speaking" is to the left side and "teaching" should move towards the right side.

W. Kevin Hazzard

I've been teaching technology courses in various colleges for the past eight years. I started doing this because I enjoyed speaking at conferences and at user groups. Becoming a teacher was very hard at first, much more difficult than I had imagined. Teaching requires you to sustain the delivery of a fluid lesson plan for days, weeks or months on end, carefully matching your pace and delivery to the needs of the students. Speaking of gestalt, teaching has a rhythm that's totally different from attempting to establish emergence in an audience during a 75-minute presentation. Using Gestalt Psychology terminology, the precept of teaching is about building new prototypes in the minds of the students. Presentations and public speaking, on the other hand, are about drawing on existing prototypes to make as much understanding emerge as possible in a short period of time.

Comment preview

Comments have been closed on this topic.


  1. The worker pattern - about one day from now

There are posts all the way to May 30, 2016


  1. The design of RavenDB 4.0 (14):
    26 May 2016 - The client side
  2. RavenDB 3.5 whirl wind tour (14):
    25 May 2016 - Got anything to declare, ya smuggler?
  3. Tasks for the new comer (2):
    15 Apr 2016 - Quartz.NET with RavenDB
  4. Code through the looking glass (5):
    18 Mar 2016 - And a linear search to rule them
  5. Find the bug (8):
    29 Feb 2016 - When you can't rely on your own identity
View all series


Main feed Feed Stats
Comments feed   Comments Feed Stats