I love watching talks on technical subjects. However, I often find myself in a position where I understand the topic but am far more hesitant when it comes to the importance of the conclusion. As someone who tends to learn the most from practical experience, this lack of confidence often stems from the fact that I haven’t faced similar challenges to the speaker. This presents hurdles when self-learning, as it can be difficult to create complex technical setups required.
Most recently, I’ve noticed this with my attempts to learn Go. I’d completed the Go Tour but found that I lacked the confidence to write my own applications. More importantly, I struggled to identify scenarios where headline features of the language would really set it apart. I wanted to change that and so started to look for excuses to write Go.
Last Wednesday I gave a talk at the London Gophers meet-up: Beyond the Tour. This is the story of my journey to becoming a more confident Go developer. It was great fun to pull together. Feedback most welcome.
“So you’ve completed the Go Tour, mastered the syntax and are unsure where to turn next? In this talk Bill takes you through a series of projects on his journey to being a more confident Go developer.”
Feedback or Questions: email, Twitter
Unfortunately, my slides don’t include references mentioned during the talk. These are linked below.
- The Go Tour
- Scheduling In Go, Bill Kennedy
- EXIF Specification
- Designing a self-directed learning network, Winnie Lim
- On concurrency in Go HTTP servers , Eli Bendersky
- The Importance of Beginners (slides), Natalie Pistunovich
I had several lingering doubts in the run-up to this talk. A couple of these still remain. I’m sharing these, not because I believe I managed to address them, but because I’m sure there are others who feel uneasy about speaking because of their doubts. If you find yourself in a similar position, and you’d like help working through it, I’ll make time to talk.
Am I fraudulently badging myself as a #newbie?
I’ve been working in technology for over a decade. On more occasions than I feel comfortable admitting, I’ve found a room full of people turning to me for technical advice only to realise that they were looking to me because I was able to speak from experience. That doesn’t sound like someone who can legitimately lay claim to the #newbie badge. So why was I pitching this as someone who was new to Go? Am I a newbie or just another Architect who can’t code? While I’m still learning and continue to make mistakes, I am comfortable with being a #newbie. I would consider myself bordering on conversational but definitely not fluent.
Is this talk too much about me?
We all have our own approaches to learning, so how would a talk focussed on my specific journey benefit others? More importantly, would this only benefit those also in a position of privilege? There is no denying that I picked a lucky slip in the Ovarian Lottery. I wanted to show that learning could be fun and that it was OK to make mistakes. I wanted to say that there is no right way to learn and to encourage those with experience to pay more attention to the journey and less about the destination. I’ll leave it up to others to decide whether I achieved this.
Despite the doubts, I really enjoyed both preparing and giving this talk. I continue to write Go and am in the early stages of adding a couple more nodes to that graph of projects. If you are open to sharing, I’d love to hear more about your journey to learn a technical topic, it doesn’t have to be about Go. Email me, or consider speaking at a local meet-up.