- Developer,Advocate!
- Geertjan Wielenga
- 1041字
- 2021-06-11 12:59:29
Empathy when advocating
Laurence Moroney: I have had death threats on social media from people who felt like they had been left high and dry. I think it was an emotional reaction in that case, but it did help me to realize that I have to be careful to have empathy for the people that I'm advocating to and not just be very salesy about my job. I have to help developers to navigate through things and as a result, be more authentic as I'm advocating tech.
Geertjan Wielenga: One part of the message could be that this is something that we recommend right now, but who knows where we will be 35 years from now. However, there's a strong possibility that someone listening to that might decide to stick with whatever they're doing right now and skip this particular thing, and five years from now pick up whatever is there at that point. Is that a valid response?
Laurence Moroney: It is a valid response, but that risks missing the boat for five years. You've got to make sure that you're not throwing the baby out with the bathwater. Sometimes, people think they've got to throw out the tech and start again.
I've never encountered a situation with a person having to start again from step zero.
When Java 2 Platform, Enterprise Edition (J2EE) was at fever pitch, a lot of people designed their architectural systems to work with it. But when I was working as a Microsoft advocate and helping them to move to ASP.NET, it wasn't a complete rip and replace. They'd made all these architectural decisions, designed databases, and designed authentication systems. Much of that thinking was still valid. When you look at the software development life cycle, that's probably 80% of the work. People often have a knee-jerk reaction when there's a tech change.
Geertjan Wielenga: What I've picked up from listening to you is the diversity of activities that you're involved in. How do you manage all that?
Laurence Moroney: Have you ever been really hungry at a buffet? That's what it's like. There are so many ways that you can advocate. Do you go to meetups? Do you speak at conferences? Do you write blogs? Do you write books? Do you make videos? Do you brief customers? The answer is all of the above.
The question then becomes, which tasks are best for Google? Which tasks are best for me? Which tasks are best for my audience? It becomes a balancing act between those. Fortunately, in a big company, there are different people with different skills. There are some people who are much better at writing and there are some people who are much better at speaking. Every one of those gaps is going to get filled; I don't have to fill all of them at any moment in time.
If I broke my time into slices, I'd say I'm probably spending 30% of my time making videos because they scale really well. We have a channel on YouTube that I run. If I'm not making the videos myself, I'm guiding other people in making them and I'm scripting them. 20% of my time is spent focusing on the product itself and understanding how it works, as well as trying to drive and shape how it works. Giving feedback is the final 50% of my time or speaking at meetups and conferences.
At Google, we've got two types of advocates: scalable advocates and partner advocates. A scalable advocate goes outbound with their message at scale. That means working with hundreds or thousands of people. A partner advocate is the one who goes into depth. I'm a scalable advocate. When I'm talking about slicing my time, it's really about the scalable things.
At the TensorFlow Developer Summit next week, we have 20 people speaking at the conference, many of whom are not advocates or speakers: they're product managers or engineers. It's my job to craft how they speak to the public, what their decks look like, and what their demos look like so that it can be less ivory tower and more developer-friendly. Guiding others to be part-time advocates is how I look at that side of my role.
Geertjan Wielenga: Is there a danger of burnout with all of these different activities?
Laurence Moroney: I think everybody's different in this space. When you're working as a developer advocate, you're generally passionate about what you're advocating. I tend to work extremely hard and my managers will always come to me concerned about burnout.
Hard work has never burned me out, though. If you're pushing me into things that are pointless or if I'm doing something for political reasons, then that could lead to burnout.
I have suffered burnout at times and almost every time it was because of some internal political issues. I think that applies to most developer advocates. Fortunately, the company I work for now is not very political. It's very technically oriented and if you focus on your tech, you can tune everything else out. I really love that. That hasn't been the same everywhere I've worked.
Geertjan Wielenga: Let's say you travel to a conference somewhere far away and then your laptop doesn't connect or there's some technical glitch; do you have some horror stories of that kind?
Laurence Moroney: Not quite as dramatic as that, but whenever I would go to another country, I used to learn a child's nursery rhyme or song from that country. I would tell people before I did a complex demo that if that demo failed, I was going to sing the song. That became a win-win situation. There were always people in the audience who were waiting for the demo to fail so they could hear me sing! I've sung nursery rhymes in Hebrew, Chinese, Japanese, and some other languages.
I have had a catastrophic failure where I required a network connection to be able to do my demo on my talk and no network connection existed. The authentic thing to do was to be vulnerable. If you're good at your tech and you know what you're working on, then you can talk about it, without slides.
- Python自動化運維快速入門(第2版)
- C#程序設計教程
- 假如C語言是我發明的:講給孩子聽的大師編程課
- The Data Visualization Workshop
- 嚴密系統設計:方法、趨勢與挑戰
- Getting Started with Laravel 4
- Service Mesh實戰:基于Linkerd和Kubernetes的微服務實踐
- ServiceNow:Building Powerful Workflows
- Oracle GoldenGate 12c Implementer's Guide
- Learning JavaScript Data Structures and Algorithms(Second Edition)
- Python趣味編程與精彩實例
- 愛上C語言:C KISS
- Elasticsearch搜索引擎構建入門與實戰
- Java程序設計(項目教學版)
- 新手學ASP動態網頁開發