👋 Hi, I'm Wei 👩🏻🌾
- front end developer based in Singapore
- @wgao19 twitter + github
Hello everyone, my name is Wei. I work at an e-commerce platform in Singapore.
I have a topic with me today about something that I built for the past year which, for a large part of the year I found to be quite unreasonable. And let me take this chance to share a bit of thoughts with you and I'll leave it for you to decide whether it makes sense or not.
What is "React Knowledgeable" a.k.a. "RK"
- internal sharing podium in our React team
- every Friday in the last working hour, 30-min 🌟 + 7-min ⚡️
- week #45, counting 70+ talks by ~30 speakers
Throughout the past year we've been building a podium. It was born as an internal sharing podium in our React team, and we wanted to become knowledgeable, giving it an apparent name.
It happens every Friday in the last working hour. Most of the time, we'll have a 30-minute talk and a 7-minute lightning talk.
We're at week #45 now, counting more than 70 talks by nearly 30 speakers.
how do you find so many speakers 🙈
it's grrrrrrrrrilling to speak
Our recent new joiners start to find RK quite spectacular, and I started getting asked – how do you manage to find two talks per week 😂
we're run on proposals 😲
Adding on to the unreasonableness – we're run on proposals (managed by GitHub issues), so people propose to speak instead of taking turns.
proposals v.s. lucky draw
Initially it wasn't so clear whether we wanted to run proposals or lucky draws to decide who to speak. We had a predecessor weekly sharing where we ran a lucky draw. We were pretty proud of this repo btw. It connects to a true random generator from a quantum physics lab somewhere in the United States, and it prints out the winner in an obscure font and you'd need to squint to see who wins the lucky draw.
But our then sharing was falling apart. Not because of the lucky draw I think, but because the team was expanding rapidly and new joiners didn't know what to talk about, and we didn't provide any support neither. It's like we'll grill you but we're not there with you. Also we had a tradition to let new joiners skip the lucky draw, so you win by default. It's like the first thing you get joining our team is getting grilled by public speaking.
But luckily the people grilling tradition didn't work out :P The quality and time varied too much and I proposed that we try something else.
how to encourage people to speak?
Then of course since we no longer take turns, we immediately face the question where to find talks.
reaching out
So to start off, we reached out. Earlier this year what I've mainly been doing was I regularly grab people for lunches, talk about things they've been working on, and subtly be like "this seems really interesting, would you like to develop it into a talk???"
In retrospect, this has some interesting effect that I really want to share with you today
sideEffect: proposed talks come from people who are genuinely interested in the topic
Because the speakers have to go through all the preparation of the talk, the grilling feeling of public speaking, there must be something about the topics that the speakers are truly passionate about.
Intereting fact, we no longer have the "introduction to X" kind of talks we used to have a lot when speaking was a task shared by everybody. And I'd say that most of the talks we have are pretty rad. We had multiple talks on combinators, for instance. We had very geeky talks such as steeling wifi with a raspberry pi, building a nintendo gameboy emulator, etc. I cannot finish all within the 10 mins I got but you get the idea.
Also, anybody heard of the concept "#learnInPublic"? As junior developers, once we prepare a talk, chances are we ourselves are the ones who learned the most. A lot of us have then followed up with more talks on the same topic, and have then become the go-to persons in our team on certain areas. That's how you grow little domain experts I think.
be the perpetual idea generator 😉
Instead of not providing any support, with RK we provided a lot of support. One of the most fun thing was running a brainstorm workshop to develop vague ideas into more organized storylines that may form a talk. Speaking essentially is a social action so we made this very relaxing, like a board game. Anybody can participate, you can chill and relax, and toss out ideas.
be consistent
Going back to the topic how to dig more talks, consistency is another critical factor here.
It doesn't matter whether you do it weekly, or fortnightly, the podium must have its own consistent pace. If you gather people only when a talk comes up, the speakers would have to bear the psychological burden to gather people to hear what they have to say. That's not helping. Our company has other tech teams as well, and many that run ad-hoc sharings are struggling to keep it up and over time people get busy and the sharing is completely forgotten. If you are to organize a podium and you want to encourage people to speak, the podium must bear such responsibilities.
"how can i give a talk about this topic?" becomes a normal line of thought
Thanks to how consistently and loudly we remind people that we want to hear them talk about things, "giving a talk at RK" now has become a normal thought whenever we encounter interesting topics.
then how do you make sure the content is good?
Then you may wonder, since we're so outwardly pushing people to speak, how do we make sure the quality is good?
you can't be sure, you can only hope
but we do sth to help
connect the podium to bigger scope
The general idea is to bring our developers out and to bring friends outside in.
encourage peers to speak at local meetups
We encourage our developers to go to local meetups. We remind people of what's happening in town, and we encourage them to speak there.
conference recap talks
Our company has decent support for us to go to conferences. And if we do, we'll nearly always have a recap talk about what happened in the conference, what we learned and things you cannot see from the videos, etc.
host local meetups in our office
We try to hold local meetups within our available resources. Btw if your company has the space to host meetups, I strongly encourage you to help make it happen. It brings people in, it showcases your team. And it's great support to your local communities.
invite friends and guests
Albeit we're internal we invite friends to visit. Huijing our MC for yesterday has been there multiple times, she has even given a talk there, thank you for all the support. By the way, if you visit singapore, be sure to drop us a visit. Speaking is welcome but not mandatory.
Shawn also gave talk at RK about learning in public. That talk spawned many blogs and talks to my knowledge alone.
And throughout this year we've met many amazing developers. It is truly humbling experience for myself and I can never be too grateful about it.
we'd like to have faith that our team consists of very smart people and over time we'd match the standard of the bigger scope we put ourselves in
what do we get out of it
Our team has 40 developers now, we're on weekly basis that means 2000 hours per year. i only have so many working hours per year. So we better have created something more than what I can achieve in a year.
At this one year mark I'm also seeing very big numbers. For example, we didn't have any experienced speaker to begin with, but now together we have given some more than 10 talks at our local meetups by 5 ~ 6 of our speakers and we'll have two conference talks later this year. But I don't think numbers matter unless there are some true virtues bound to the podium itself.
Looking back, the true gems from my eyes about RK is that it is FUN, and it is FAIR.
fun & friendly
Getting better at things takes a lot of persistence. If we are having fun, it makes it easier for us to keep coming back. I think many more initiatives on the same spirit, we have super silly hackathon in singapore where we build silly things, and earlier this year I heard a talk at JSConf Asia by Monica about why she building silly things that I truly love.
and fair podium for everyone
And another true virtue I see is that by having this podium where everybody has a fair share of access to, many previously less outspoken developers, especially girls in my team, have found a podium for our voice. This includes myself and so I genuinely resemble a lot with this.
a lot of things seemed unreasonable
- weekly? podium
- proposal? based
- it has a name?
- "ugly baby by a hungry beast?"
So, looking back, a lot of things seemed unreasonable to me for the upper half of the year. Running this weekly once was very intense for myself, that we run proposals had a long struggle, and it even has a name, what kind of precense issit?!?! There's also one topic I didn't talk about today which is the corporate limit that we actually have to deal with. But it seems that our ugly baby has found some space to grow and I am truly very grateful about it.
but i believe every cool FE team deserves a cool podium :))))
I believe that eventually some of our developers are going to become very good. They may even be speaking at a conference like those who we hear from today. Till then they're going to need to share their ideas in front of a HUGE community. And it'll take non-trivial effort for them to practice presenting their ideas well. And with RK, we're not even that ambitious. I think RK's value now is to get us started and get us keep going.
outro
- 🧙🏻♀️ build one in your team
- 👩🏻💻 start speaking at your local podiums
- 👩🏻🌾 find us in 🇸🇬 @reknowledgeable @wgao19
That's all what I have to share with you today. If you find it slightly inspiring, maybe you can take some actions back home? If you are an engineer manager or a team lead, you can try building this podium within your team. If you are a junior developer like I am and have yet to speak at a local meetup, start doing it because it's great experience. And if you are visiting Singapore, do drop us a visit. You can find us on twitter via @reknowledgeable. We're building a meetup in Singapore now and we really hope to hear from you.