Steve Smith blogged a while back about how one of the best times to teach something is while you are learning the topic or right after. You will still remember the steps it took to reach your conclusions and the hardships you found along the way. These are important for those who are also learning and easily forgotten when you’ve been involved in the subject matter for a while. I don’t plan to re-blog his blog, but rather share an experience.
In recent months I have been giving user group style talks at work to share things that I have been learning. I’ve been using the Lunch & Learn style format as to not take too much away from our work day. The first I did was a brief talk to just go over the Solid Principles, but relating it to code we had been writing. Where we were practicing them well and where we could use them to better structure our code. Most of this wasn’t news for people, but it was nice to put a spotlight on some areas and it sparked some good conversation around improving the code.
The second one I did this month was on the topic of Swagger and Identity Server. I essentially took my recent blog posts and put it into Demo form. The demo took about 30 min to run through all the steps I had in the blog posts and then I finished with demonstrating how Swagger could make for a mini-UI for an internal tool for developers that we later could throw a real UI around if we cared enough to. This topic also sparked conversation around where we could leverage the API docs that Swagger could generate for us. It was a good session even though I have only scratched the surface on Swagger.
Speaking well takes practice and it is something I’d like to learn to do better. This is one of the reasons I’ve decided to do these internal talks at work. I also have been regularly attending a .NET User group near me and hope to do a short talk there in the near future so this practice is valuable to me. The talk I’m planning for that group is the Swagger one I mentioned above so having a dry run at work to test length of the talk with a group and get a sense for the value people got from it helped me get perspective for how I’d change it up for the User Group version. I definitely have to shorten it up as I went into much more detail at work.
Just Do It!
People like to learn and I find it helps to do it in a setting people can ask clarifying questions. Sometimes you’ll know the answer, other times you wont. That’s OK! The things you don’t know the answer to provides potential topics for more learning! Embrace it.
Don’t go off and organize this without getting some approval first. Get the OK from your boss as you will be sapping some time away from those that attend if you end up going a little longer. If your topics are on point with sharing knowledge around the direction your boss wants the team to start heading then I doubt you’ll run into problems. I’d lean more towards they’ll appreciate the initiative.