What should I talk about?
That is probably the main blocking point for new speakers. If you are not a renowned world expert about any given subject, you might have a hard time coming up with an idea about what to talk about because you don’t feel legitimate to give a presentation.
We need more people explaining things than just the few topmost experts. And talk attendees just need someone who knows more about a subject than them and who can help them fill this knowledge gap with correct and well explained information. And it is very probable that you know some subjects more than many of the attendees, you just need to identify these subjects.
Something you created
Did you write a library? Did you create a tool? Did you design a programming language? Then congratulation, you might be the world leading expert about it!
If you think what you created is universally needed and you can show it, you can propose a talk that presents it.
Even if it is only useful for a very limited number of people, if it doesn’t work outside of your company, or if you don’t have the rights to show it outside of your company, you can still find content for a good presentation. Your approach of the problem, the programming challenges you dealt with, the patterns and techniques you used to overcome these challenges, the workflow you used, all of these can be generalized and give interesting presentations.
I rarely deal with compile time regular expressions, yet I watch and love Hana Dusíková’s talks about her library CTRE (https://github.com/hanickadot/compile-time-regular-expressions), because what is being shown are compile time techniques that go way beyond a single application and can influence how you approach a whole category of problems.
Do people come and ask you questions about a specific subject in your job / project? Are you “the CI person” or “the tests guru”? That means you are already considered an expert on this subject. You might feel otherwise and think that there are many experts who know more than you do about it. And you might be right! But consider that if in your limited circle there are many people who want to learn from you, there are even more people outside of your circle who could benefit from a talk about this specific subject from somebody with your knowledge.
Your New Experiences
If you just learned about a subject, you are in a very favorable position to give a talk about it. Did you just finish reading a book about Machine Learning? Have you been tutoring someone for the last two months? Have you tried a new tool or technique? That is one of the best times to give a talk about it.
First because it is very fresh in your mind and you’ve already been thinking about it a lot. We tend to consider expertise as something that we accumulate throughout our life, but that is not completely true. There have been moment in my life where I’ve known a lot more about some subjects than I do now. I’ve seen many seasoned developers saying that they found a blog post or a Stack Overflow answer for a problem they were having, only to realize they were the author of said answer. Present talks while the subject is still warm in your thought!
But the other reason that makes it a good moment to give a presentation is because you are in a state of “Conscious Competency” at this point. Which means you understand the subject, but you also still see how you came to understand it and what were the difficulties you had to overcome. Some experts have reached a state of “Unconscious Competency” where they no longer understand what could possibly be complex about said subject and why it is not immediately clear to everybody around them.
Many talks of this kind are very appreciated by the conference attendees. For example Tina Ulbrich, Niel Waldren’s talk about testing legacy code through fuzzing at Meeting C++ 2019 was a return on experience and it was very informative and well received. So was Clare Macrae’s talk at the same conference, about Quickly Testing Legacy Qt code.
Your Experiences to Come
Are you feeling lucky?
Some people propose talks about subject they are about to learn!
Did you just bought a book about Functional Programming? You can give yourself a real incentive to read it quickly by proposing a talk about that!
I would not actually recommend to do that for your first talk, unless you are the kind of person who likes working under intense pressure. But some people do it and it can also work very well.
These are just a few leads you can follow to find your talk idea. There are probably many other kind of prompts you could use to find your talk idea. Don’t limit yourself!