Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Take a look at the life of a developer advocate working at facebook's open-source team, taking a dive into a few tips, tips to be a great advocate and what does it take to be an advocate.
A developer advocate is a mix of an evangelist, an engineer and a tech expert who loves creating content and also is an inclusive community builder.
Qualities that make a great developer advocate
Enjoys learning
Embraces changes
Likes building
Empowers others
Are creative
Like to share their work
Embrace diversity
A typical day of dev advocates usually/arguably revolves around two things
Content
Community
They can go by many names -- the closest would be, evangelist, an engineer and a tech expert who loves creating content and also is an inclusive community builder.
Developer advocates like the name suggest, advocate for/to developers.
They help developers/users, use the product better and make it easier to understand the tech.
Facilitator who empower you to engineer products with ease.
Learning never stops, especially in this job. There might be frequent switching of the tech stack.
Always looking out for new tech and ways to solve problems.
Dev advocates are engineers who are aware of how fast the tech advances.
They are ready to embrace the change.
Enthusiastic about ramping up each time a new tech is released.
Developer advocates know what they are advocating for developers who use their products.
They always find ways to build and improve the dev experience.
Finding their success in other's is something that comes naturally for them.
Empowering developers to create great products.
Developer advocates look for creative ways to challenge the existing product to make it better.
Try to deep-dive into how it works and learn the underlying technology so that they can answer the "why".
Sharing information is a great way to advocate, or let's just say it is necessary for an advocate. How else are they supposed to be connected with the users?
Strongs communication is the key.
Work with a large developer audience, which includes people from diverse backgrounds.
Diversity brings various ideas due to the various backgrounds of different individuals.
Developer advocates need to work with various teams and need to communicate the needs of different teams.
Working closely with the product teams as well as the community.
Now, this is something that can vary so much, especially based on the dev advocate's goals and choices. But, rest assured community and content are still the main part of their goal among a few others.
Without a community, there is not product.
Community is not just a group of users/developers/customers interested in your product but a group of like-minded individuals who believe in the product and its success.
Building a community is all about-- a group of people with common passion, who share a sense to achieve together.
Check the linked scribble below to know more about few well-known community builders out there and how they started building their communities.
Being a part of the community helps in identifying who is contributing to the community, their passions.
Helps in building trust and facilitating collaboration.
Dev advocates need to make sure there is a constant engagement in the community and providing them with the content.
Community engagement is continuous work.
A typical day of an advocate may go by in deciding the type of content that should be provided with the product.
A large portion of the product's success boils down to the content that goes with it.
Without the right content, it gets difficult to for developers to know what the product does, how does one get started with it, what can one build with it.
What content to make? Should be among the first questions you ask.
Who is the content for? Which users are we targeting?
What do we want to achieve with this content? -- metrics attached with it.
Once all the questions are answers, one can have a better understanding and a clear bias on what content their team wants to create.
The story behind why the product is beneficial for the users, along with other similar products out there and giving an honest comparison.
In this session from DevRelCon London 2019, Max Kahan talks about the importance of play in developer education.
Understand the problem with your product’s current interactivity and creative initiatives that let developers be creative.
Understand how you can help them using your product.
Test creative initiatives and get feedback.
If you want people to see that value, it’s really important to get it to a way that people can explore and be curious and let them play and be creative.
Understand the outcomes and measure how it has impacted the experience of your developers.
This product does not feel intuitive.
It doesn’t feel intuitive and natural.
Hard to use.
Not the coolest thing in the world.
Make it easier to see the value, easier for us to understand, and show developers why they should be using messaging and why they should care.
Make it easy to try out.
Give people opportunities to play because right now, it’s pretty hard to get going, so they want to give them that chance.
They really made sure that they would appeal to them.
So they decided to use Scratch.
Scratch is an open-source project developed at MIT.
Basically, it’s a visual programming style.
It lets people click and drag things together like little blocks, and that shows the syntax of the program without worrying about the syntax of the program.
Max (speaker) decided to go away and try to make some things so that they could use messaging with Scratch.
“Where does my 9-year-old come in?”
They wanted the kids to be able to see the value.
They decided to find a real test subject.
His team lead has a 9-year-old son.
Using this and using this program, he was actually able to create a little game in Scratch.
But he was also able to save his score by putting it onto a messaging queue.
He was able to understand why he was doing that and why he was able to see his high scores again.
Program runs in a browser and communicates with a Raspberry Pi.
Basically, they’re allowing that to actually send messages and give them instructions.
Then, they're taking the score from here and they're putting it back to the program.
Gives a sequence of lights to be played on here, and the user then has to try and remember that sequence and play it back.
This has allowed them to actually go and talk to developers -- developer conferences.
It meant that they can actually now have a conversation with their developers, and with people who maybe want to understand why they should use messaging and what the value is.
Developers can see that value.
They found that their developers really do understand what’s going on here.
People actually get to have a play with something and they get to have some fun.
Here is the list of different talks we've covered so far. This repository will be regularly updated with more content so make sure to check it out again!
Technical keynotes should be captivating, right? But too many are dull and pitchy. Avery Rosen shares practical tips for pulling off a keynote people will talk about.
Melinda Seckington shares how some simple design element tweaks can magnify the impact of your presentation.
Drawing on her extensive experience of conference speaking, Mel shared insights that are a must-see for anyone working in developer relations.
Melinda Seckington completes her three-part series on how to create great conference talks.
Various well-known developer event organisers discuss what they see as being the future of gathering, talking about how events will look like in 2021 and beyond!
Tanay from n8n, talks about the power of great content, including its ability to shape the culture of a developer community, and how to approach creating a meaningful content strategy from scratch.
Listen to Laura Cowen as she goes around talking about how she developed a community and DevRel culture in IBM making the organisation understand the needs and expectations of the developers.
Jamie Wittenberg talks about great ways you can incorporate to make your documentation better and more accessible to new developers.
Explaining your role and function comes with the territory of working in this space, but why is that? It’s tricky to define, describe what developer relations is, and why it even exists?
Mike Stowe takes a look at the Hierarchy of Developer Needs, and how you can use it to balance your efforts and ensure your users are successful.
Lorna Mitchell covers what it takes to create a README that engages and informs developers.
Cristiano Betta shares the practicalities of how they have taken an engineering approach to their API documentation.
Can you make good release notes by collating your commit messages? Eva Parish argues not. Eva Parish explains the different purposes of commit messages and releases notes.
Google’s Sangeetha Alagappan talks about making your docs inclusive, what accessibility means in the context of documentation, and common pitfalls you might encounter.
In this talk from DevRelCon London 2019, Jo Cook talks about The Good Docs Project and Google’s Season of Docs are working to make it easier to create excellent open-source documentation.
Gary Niemen share their story of how their approach to documentation has changed at Spotify, drawing parallels with Joseph Campbell’s Hero’s Journey framework.
Let's take a dive into learning what flywheels are and how to make them, eventually using them to build better communities.
Developer relations and community management often look like two sides of the same coin, but taking a step back it becomes clear that they are distinct yet related.
Gerard runs through the key elements in growing a successful tech community around meet-ups and events.
Twitter Spaces fireside chat as we discuss growing healthy open-source communities with Brian Douglas, Developer Advocate at GitHub.
Orbit CEO Patrick Woods and Community Lead Rosie Sherry, discuss how you manage a community at scale and the lessons learned scaling up along the way with Ben Lang, Community Lead at Notion.
How you drive business growth with Community and why you need a Go-to-Community strategy, not just Go-to-Market.
How experienced community leaders from various backgrounds started building community and what worked for them.
Brandon West from Amazon AWS talks about how to manage a distributed developer relations team, especially where each person on the team tends to travel a lot.
Whenever it has come asking as to "what is the main role of DevRel team"? The answer-- "It totally depends", which definitely raises more doubt in the mind of the person asking it.
What's the ROI -- the metrics to measure them -- explaining it to an employee. With DevRel Qualified Leads you first set your own metrics that truly reflect the value of the work that you do.
Scribble from Mary Thengvall's amazing blog "The DevRel Path To Success: Awareness, Enablement, Engagement", which talks about what are the key elements of a developer relations team.
How does one move up in their organization as a DevRel? What does that "up" even look like if it even exists! Let's take notes from Chris Noring who is a Developer Advocate at Microsoft.
To devise a DevRel strategy, one must understand their company's needs and the tactics that can be used to meet them. Let's take a look at the four pillars to understand all of this in a better way.
Let's take a look into knowing the key elements required to make a "DevRel dream team".
A research-based framework for recognising and managing overwork.
David G Simmons shares the reality, including potential upsides, of making mistakes.
How do you know whether moving into developer relations or DevRel is right for you?
Christiano Betta talks about the importance of creating different tools and collecting metrics, especially for startups helping them grow more with a small team!
What is the career path in developer relations and how can you build a long-term plan for your own DevRel career?
DevRel Scribbles is a collection of notes from different DevRel Talks, Podcasts or anything that covers the best practices around DevRel. This can be exceptionally useful for someone trying to find out a specific topic, a specific thing they might have heard at a conference or just exploring different talks and do not have the time to listen to it wholly. Just read the notes and you're good to go on most parts!
As this repository grows, we will have a curated list of DevRel talks, segmented in different groups. Using the great search features of GitBook one can easily find out the best practices related to a specific field within minutes, skim through the notes and know what might be the best thing to do for a specific case!
Our aim is to keep this repository open source and free to use for anyone in the community. The support and contributions here would be the thing driving it forward. Let us know if you're willing to help!
DevRelCon London 2019, Caroline Lewko discusses setting values and culture in organisations, and Adelina Chalmers provides practical examples of how developers can influence upstream.
Ask questions based on ethics before creating a tool.
So, maybe collectively, again, we don’t have all the answers, we’re kind of here to pose some more questions.
Personal communication techniques
Somebody wants to be that whistleblower, at least feel comfortable.
They know that a community has their back.
What drives developers?
What do we do about it?
Take a look at what the root cause is.
Causation and root cause
What can we do about it?
Understanding Culture
Psychological safety?
How would you report on a violation of ethics?
How can DevRel’s solve the problem?
It’s pride.
“I made that. Have you seen how cool that is? I made that.”
That’s really what drives people to build things and to keep growing.
It’s pride being able to say you did something that was really wonderful.
If we’re not thinking thoughtfully about what we’re building, what could possibly go wrong?
There’s a ton of fraud that’s in the industry.
Issues happen when we’re not being thoughtful or thinking about ethics in what we’re building.
Oh, crap. I made that. I’m part of that responsibility. Or for those of us in dev rel, it’s like, Holy crap, they made that with our tools. How does that make you feel? That’s when it starts to become really personal.
Take a look at what the root cause is.
There’s a number of different root causes for tech not being thoughtful and ethics not being followed.
There’s a lot of complex undertakings, a lot of projects are getting more complex.
Developers as a whole, and even dev rel as a whole, tends to be quite immature, lacking experience.
Survey results that came from Stack Overflow
One-third learned to code in the last nine years and a lot of them don’t have a lot of business experience either,
There’s a lack of context and a lack of just knowing how to interact, especially within a big corporate environment.
Most don’t know how to report it and they don’t know how to handle it.
“Developers can actually be the last line of defence against unethical code.” Wow
Inexperience
Unreasonable deadlines
Shareholder expectations
Incomplete information.
Culture lacking in psychological safety
Feeling very uncomfortable speaking up.
One of the biggest characteristics of being good in dev rel is empathy.
DevRel’s belong to a group that sits in the middle of everything and talks to everybody, so we’re in a good position to be able to bring some of those issues forward.
Culture is not created from top-down.
“Here’s what our culture is. It’s written on the walls and everybody follows it.”
Culture is really about what happens every day, day-to-day in business, and culture can change from the bottom-up.
If you’re in a meeting with your boss and you worry about reprisal for speaking your mind or telling them, “This is not OK. “This is not ethical,” then it means you don’t have psychological safety within your team, or with your boss, or with your peers.
Start doing it yourself, even if leadership isn't doing it yet.
Moment someone says something you don’t want to hear, or even if they bring a personal attack, instead of defending or having a fight reaction, try to become curious about what it is.
The depth of that feedback.
Where do they come from with this?
What’s going on there?
Key part of psychological safety is being able to listen and understand.
Not just listen to respond.
Understanding takes a willingness and curiosity to get in the shoes of the other person who’s trying to tell you something.
Talk about times when they failed and times when they were wrong.
People often feel that they have to show that they’re right.
DevRel can act as a safe channel to leadership.
Think of it this way, if some engineers of GitHub didn’t feel safe within their departments to speak up, dev rel could have gathered all of those numbers and all of that feedback.
It comes down to how we can empower our own teams
How we can empower the developers that we work with.
With information/training/ guidelines
Personal communication techniques
A community that has their back
Joe Schram talks us through the process of putting developers back in the spotlight. You’ll hear how Red Hat have brought together their developer materials out of silos and into a single experience.
Evaluating your existing program.
Keywords
Shoe - People
Pyramid - Principals
Truck - Signals
Map - Placemaking
Hallway - Journey
Flywheel - Publishing
Know who you’re actually serving.
Defining core principles.
Signal change
Make a place
Journeys
Publishing
Keywords
Shoe
Pyramid
Truck
Map
Hallway
Flywheel
⬆️ They’ll make some sense by the end of the scribble
Maker is an interesting concept to discuss.
A maker is someone who puts their hands on the products to solve their personal and professional challenges.
An emphasis is required to keep telling the story of who the maker is. What we’re doing, why we’re doing it, is for the people who actually put their hands on the product.
Personal -- these folks want to advance their own skills and abilities.
Professionals, they have goals that they want to meet in their own career.
Maker is someone who builds.
The goal of doing DevRel is to try to join them on that building journey.
Because they’re going to build with lots of different tools and technologies.
Your hope, your aspiration is to be able to join them in that building process.
Enterprise developer -- security, scalability, and legacy.
Why does your program exist?
Why does it really exist?
Not just to drive sales, you have to go deeper than that.
Programs should exist to empower developers along their journey.
Tools to solve the problem
Providing solutions that are easy to find and simple to use.
Knowledge to grow expertise
Delivering insights in areas where we have something to say.
Community to share progress
Uniting developers to lead their work and careers forward.
You have to give outwards signals, especially when you’re in a turnaround or a reboot, that something has changed.
You have to back that up with visible outward signs.
The visible outward signs had to be backed up with real behind the scenes change.
Show, don’t tell
Demonstrate ability to deliver value; serve first.
Every page is the homepage
Far more traffic enters through the rest of the website
Creating focused opportunities for discoverability is critical
Navigation is brand
Educate visitors about your opinionated worldview with opinionated navigation.
Lead with fresh, a topical structure that aligns with the user journey.
Best content first, presented in the best way
Videos, Blogs Learning paths
Every grouping of content is not the same, each group must be allowed to be different.
Question/Challenge
Developer program content
Implementation
Solution Achieved
What stories across the top do they tell themselves about themselves, about their work, about their world?
What content are we going to create?
Awareness journey.
There are moments of truth along this journey, where someone is moving from left to right, and they have a moment of proof that tells them, holy cow, I think I’m on the right track.
DevRel program at scale across many locations, the digital, online, grip is everything.
Your job is to fix the broken gears and teeth, even if you can’t see the immediate result.
Mobile layouts.
Small compounding changes
Seo optimizing titles
Cross-linking to other assets(votes)
Mobile-first
Tone and voice (brand rep.)
Functional content/ tutorials
Videos
Working gates (SSO)
Talk to your audience (weekly newsletter + social media)
Shoe - People
Pyramid - Principals
Truck - Signals
Map - Placemaking
Hallway - Journey
Flywheel - Publishing
Melinda Seckington shares how some simple design element tweaks can magnify the impact of your presentation.
How do you design effective slides?
How do you create slides that are compelling and help your audience understand what you’re trying to say?
Principles for slide design
Principles for slide design
Maximise Signal, Minimise Noise
Maximise relevant information rather than irrelevant information.
Make Important Information Stand out
Use contrast in your slides to make things memorable.
Show and Tell
Information recall is better when combining text and images.
Be consistent
Use consistent designs for slides with the same purpose.
Maximise Signal, Minimise Noise
Focus on one purpose per slide.
Slides are not your teleprompter.
Your slides are not meant as notes or references for people after your talk.
Make important information stand out
Colours
Shapes
Size
Show and tell
Photos
Icons
Shapes
Animations
Be Consistent
Use consistent designs for slides with the same purpose.
There are endless motivations for giving a presentation and no two presentations will ever really be the same.
Yet, at the heart of it, they all have one thing in common.
No matter what your presentation is about, your number one goal as a presenter is to allow your audience to absorb your information
This is the amount of mental activity required to accomplish a goal.
So, mental activity being things like perception, memory, and problem-solving.
Slides that help reduce that cognitive load.
Slides that help effective help your audience consume your information.
How do you create slides that are compelling and help your audience understand what you’re trying to say?
Maximise Signal, Minimise Noise
Make Important Information Stand out
Show and Tell
Be consistent
So this principle comes from the theory of signal-to-noise ratio.
The concept is that in every type of communication we have, there is a certain amount of relevant information, the signal, and there is a certain amount of irrelevant information, the noise.
We want to maximise relevant information rather than irrelevant information.
Focus on one purpose per slide.
So this is about maximising the signal.
The moment a slide has multiple purposes, it dilutes the relevant information.
So rather than having a single slide -- split them out over several slides.
Slides are not your teleprompter.
You’re using your slides to get a point across to your audience and you’re using your slides as reminders to yourself.
If you really need something to help you remember what to say, use your presenter notes for that because that’s what they’re there for.
Your slides are not meant as notes or references for people after your talk.
Your slides are meant for the audience that is there in the room with you.
If you need to share something with people afterwards, use a format that actually makes sense for that.
So a blog post or a video of a talk or anything other than the slides that are meant for your audience.
We’re trying to minimise noise.
Ensuring that we don’t have any irrelevant information.
Try to use common sense and just make your slides clean and simple.
Too much text on one slide.
So the moment you have a slide like this (one with lots of texts), people stop listening to you.
Too much going on them.
So keep your slides simple and clean so that they’re not visually distracting.
So this is exactly the same images as before, but because there’s no overlapping and because there’s no text over it it’s much easier for the audience to process.
Contrast the state of being strikingly different from something else in juxtaposition or close association.
Use contrast in your slides to make things memorable.
Colours
Choose a colour palette that has contrasting colours.
Besides using contrast within slides, you can also use the contrast between slides.
Shapes
Circles, squares, triangles.
Fonts
The way of achieving contrast is through using different types of fonts within your presentation.
Using different fonts within the same phrase or sentence. So the contrast is used to highlight specific words.
Using different fonts for different elements on the slide.
Size
grabbing an element and making it bigger.
This principle comes from the picture superiority effect -- information recall is better when combining text and images.
Photos
Makes your slides more lively, more memorable.
Maximise signal, minimise noise -- make sure it’s relevant.
Completely fill-up the slide and then pair it in some way with text over it.
The audience will have a much more visceral reaction, which, again, makes it more memorable.
Icons
So the easiest resource for icons is the Noun Project. This website offers a ton of royalty-free icons of all different topics. And you’re bound to find icons in there that you can use. I even found one for Synergy once. And I’m really annoyed with myself for looking that up.
Shapes
Simple pie charts.
Building diagrams that are much clearer than relying on text alone.
Animations
Don’t misuse them.
Keep it as relevant as possible
“The usability of a system is improved when similar parts are expressed in similar ways.”
Use consistent designs for slides with the same purpose.
Identifying patterns
So this is all about identifying your slide patterns.
What are the types of slides within your presentation?
Helps as your audience has reference points.
They become easier to process even though it, kind of, might happen subconsciously.
“I don’t believe that there is one true way of creating slides. So this whole talk isn’t about getting you all to create the same type of slides that I do, but rather it’s helping you to get a basic understanding of design and applying it to your own style and presentations.”
Joe Nash, who has done an excellent job at building student communities, talks about how and why you should targeting students, making them an invaluable asset for your organisation in the long term.
Students are a fantastic audience to get your brand message out, testing out your product and everything else at a very high engagement rate.
You need to empower students in your ways, helping them learn and understand how to become better developers.
Student trust other students, talking to each other about the feedback.
Students even become advocates for your brand
Although they might not generate revenue instantly, students provide a long term outreach for your business.
Students graduate much before you think, work in startups, internships increasing your product reach everywhere.
Your documentation does not work until a first-year computer science student reads it and successfully integrate your product.
Students active in the community are great for recruitment!
Reaching universities directly is not fruitful. You should reach the societies through the departments.
Explore different Facebook groups and interact with them
Participate in their events both online and offline.
Communicate with them
Be fun and interact with them, sharing your knowledge in every aspect and not just talking about your product
18-22 year old students from UK & Scotland students are focused here
Typically study a fixed degree
Found out that students in the UK and EU are more Tech Savvy than the US because of the major mind system but less prepared in other ways
Found out that students in the UK struggled with Pitches and Presentations and may struggle in cultural interviews more than the US Students.
This talk primarily focused on students who study CS and also the ones who are not related to CS in any way in their education but met evangelists and people from the industry experiencing this world of CS.
Belong to the Students' Union and more specifically societies that are meant to empower students in a particular subdomain.
Students are fantastic to get your brand message out there.
They're fantastic in testing out your product
Very very good for the students' enrichment in education
Recruitment is a great part of this as well - not being touched in detail in this talk.
We're looking to make connections with developers and to enable them to build cool things, enable them to use our products in fantastic ways.
Students generally do not have an idea about the Software development world, their degrees do not teach them about real-world things.
They know the fundamentals of building a product but do not have the real-world tools to make them in the first place. Our role is to enable them to do that.
Another thing about students is that they converse a lot. This enables a culture within the student community of trusting senior students.
Here the example of Heroku was given that students 2.5 years ago learnt about Heroku at a hackathon and till date, their juniors are using it because of the praise they have heard from their seniors about it.
You do not just evangelise your product but tell the best practices here. It should not sound like marketing but a talk where they're learning something new about development in general. You can include your product as an innovative way inside it.
Students are extremely vocal outside of their community as well
Student advocates, many times, are the first people to deal with company-related issues within the community
They redirect people who are facing issues to the right person - the evangelist of the company.
Many times they stand themselves as evangelists as well for the company.
Students are incredibly loyal.
They get excited about the events within the community and even fly over long distances just to attend them.
They become advocates for these products ultimately.
Your documentation does not work until a first-year computer science student reads it and successfully integrate your product.
They're extremely great to talk to about the product.
Although students are a great market, they cannot generate profit for you instantly. Their metrics will be very low comparatively because of that.
The example of Dell: Just by engaging in different hackathons over the course of 2 years with comparatively minimal expense, Dell's brand awareness increased by 5 times, increasing the sales by that number as well.
Another brand saw 40% of the targetted students using the credits provided by the company. They were given to 40k students and 14k actually used it.
Students love free stuff.
They graduate sooner than you realise, most of them are in the 2nd and 3rd year.
Since they know how to use their platforms easily they'll prefer that.
A lot of times they can influence the companies decision to use a certain system they're already aware of.
Students have vast capacities to learn about technologies just by interacting with the evangelists and also the evangelist get to learn a lot of new things by interacting with the students
There are great repercussions on what you do on their career as well in a huge way.
You just don't need to give them technical skills, you can give them any kind of advice that is relevant to them - give them presenting advice, give them public speaking advice, etc.
Recruitment
Students who come to technical events are high performing students, they are self-motivated, they're talented.
The requirement of experience in hiring is something that makes a lot of problems
Recruitment becomes very easy at hackathons. If someone's there you can see them work for 24hrs to put together a project, you can see them working in stress, you can see them at crunch time, you can see their teamwork, their pitch. They are people who have the capability to become leaders in the future!
Reaching universities directly is not directly fruitful. You should reach the societies through the departments.
If you reach out to universities directly, it might look like an advertisement to them.
Societies are student-run special interest groups. They have some forward officers who are elected and are well trained in different aspects, having their independent stand. Societies even have bank accounts in many places.
These societies are constantly organising events, bringing external speakers etc where people can just go a speak for free addressing students.
If this goes through the society students are more excited. Students trust other students.
Be mindful of the key times like the University Exams or holidays which are highly inconsistent times.
On the flip side, every summer for example students get ready for internships and this can be a nice time for certain outreach.
Once you give a talk, expect tons of Facebook requests from students all over. Adjust your privacy features to handle that.
Explore groups like Hackathon Hackers, Hackathon Hackers Europe, be active in those groups. There are niche groups where you can find your audience and interact with them.
Don't worry about being old! Students will love to interact with you.
Do fun and games with students - they're great people to have fun with and interact!
Students are going to assume you are superheroes! Be chill and interact freely. Don't behave like a business penguin, have fun with them
How do you give a technical keynote that is exciting, informative, and runs smoothly?
Technical keynotes should be captivating, right? But too many are dull and pitchy. Avery Rosen shares practical tips for pulling off a keynote people will talk about.
Big annual developer conference
Bunch of announcements
Lots of software demos
Following a 5-step agile process
Ideation
Setting up work that has to happen before sorting the tasks.
Making sure you have parts that are interconnected with each other throughout.
Composition
Build working demos
Sketch slide wireframes
Side-craft
The process of making sure that things go from those wireframes to really nice looking stuff.
Rehearsal
Production
Place where you need to start finalizing and dropping the things that aren't adding up.
Engineering communications is applied thought, leadership, in presentations, in media and in application design, an adjacent of DevRel.
Big annual developer conference
Bunch of announcements
Lots of software demos
Sets the tone and gives purpose to the whole event
Collects the exposure, product roll-outs and features along with competitive analysis.
Helps in understanding the technical aspect.
Breaking down the keynote into a five-part agile process
Applying those ⬆️ to keynotiest presentation
If you aren't preparing for a presentation, you might wanna change that.
Get a "village" of people ready. (A lot)
100 - 150 hours worth of time
People resources to invest in...
Comms engineer
Speaking coach
Engineers building software demos, more the merrier.
Product managers
Setting up work that has to happen before sorting the tasks.
Making sure you have parts that are interconnected with each other throughout.
Hashing out all the possibilities.
Something that eventually leads to good storytelling.
Identify the audience you are presenting to.
Set a specific outline for the team.
Goals:
** Testify to the truth of the claims you make in the talk track
** Show a use case an audience member can connect with their own experience
** Show how the software solves the use-case
Anti-goals:
* You are NOT demonstrating how to use* your software or product
** Audience members do not need to learn enough detail to perform tasks
Software demo specifications (example below)
Say real words
Build working demos
Sketch slide wireframes
Practice strong transitions
Insert session callouts
Weekly demos
This helps us make sure that everything is set up early -- the one in charge should be checking with the assigned engineers weekly
Midpoint demo
Sets up review panel where everyone working on the demo, make sure they are progressing from software development pov.
Make sure everyone's hitting the messages/ comments that were outlined in the goals.
The presenter can track and evolve even before the graphics are done.
Defer work on slides that might change
These are links to previous talks or sessions that you mentioned in the current keynote. Induces interaction and makes sure everything is interconnected.
The process of making sure that things go from those wireframes to really nice looking stuff.
Beauty the slides
Create interactive elements.
Graphics are always better than bulleted words.
The main difference between amateurs and professionals.
What more to say...? You are going on stage after so much hard work...what's stopping you from a little rehearsal.
🤘🏼rock bands rehearse whenever they get time.
Place where you need to start finalising and dropping the things that aren't adding up.
Making sure engineers aren't using their real id's as it will be a live demo.
Making sure the person in charge has all access to the keys
Spare laptops, using bookmark where everyone behind the scene in sync.
But I will tell you how I wrap it up, which is that if you do all this right, then you’ve got yourself an amazing keynote and you can talk to the people in your audience later and find that they’re ready to tell your story for you.
As one of the initiatives in , we thought it might be helpful to have different DevRel Talks documented in one place, sharing the notes, which have been extremely useful for us learning best practices to the core.
For eg.: Someone is making a student community plan and looking for some best practices around it, they'll go and enter the things they're looking for in the search and that covered it all mostly appears! Combining multiple talks, their notes and just reading the summary will save so much time for folks here.
Reach out to or ! Questions/ Comments/ Feedbacks are always appreciated!
The example of Capital One given at is a fantastic example of implementing this.
Melinda Seckington completes her three-part series on how to create great conference talks.
Structure of a usual story
Beginning
Middle
End
Needed Story Structure
Context
Action
Result
Context
The Hook
The Goal
Action
The Protagonist
The Journey
The Conflict
Result
The Recap
The Kick
Stories are the way humans convey concepts and ideas, memories, events, and emotions to one another.
Learning how to do so in a way that is memorable, relatable, and impactful is really, really, really valuable.
Once you know what you want to talk about.
!{insert link of talk design scribble}
How do you design the story in such a way that it has the best impact it could have?
!{insert link of design scribble}
How do you structure your talks so that the audience gets the most out of it?
Structure of a usual story
Beginning
Middle
End
Start of the talk will be in that what-is phase. By the end of the talk -- what-could-be phase.
Understand what that goal is before knowing what story to tell.
Context
Introducing the main character, setting the scene, giving the background.
Giving the right background, setting the scene, giving enough information to start.
Action
About what happens to the main character.
Exciting middle bit, where you don’t want the audience to get bored and you give lots of information
Result
How the story ends.
What you’re trying to achieve with the audience.
Context
The Hook
The Goal
Action
The Protagonist
The Journey
The Conflict
Result
The Recap
The Kick
Grabbing their attention
Memorable
Impactful
Visceral
Emotional
Something that immediately has the audience wanting to know more.
Types of Intros
Statement
Make a statement about something that might be a little bit controversial or surprising to some people.
Anecdote or story
Something a little bit emotional just to grab the audience in.
Metaphor
Quote
Question
Make it relevant.
Convince them to listen to you.
What is the current state?
What’s the background?
What’s the starting point of the audience?
Why is it important to them? What’s in it for them if they listen to you?
Understanding your protagonist is all about making sure that you’re telling the story with the right hero in mind
Since the action, the middle part, has the bulk of the story, that is where it’s really important that you define your hero.
Allow the audience to be the hero in their own story.
The audience doesn't really care about you and you being cool. They care about how they can be cool themselves.
Flipping it around and tuning the story to the audience, so how can you get the audience to do that cool thing that you did?
Middle of a story, there are multiple moments, multiple events, where the main character runs into an obstacle to progress to the end goal.
Throughout the middle section, there will be these ebbs and flows of rising tension. So just think about random action movies.
How many of these action sequences will you have?
How many sections does your story have?
What this also means is that you need to figure out what info belongs together and put those into the same section, so don’t jump around.
Depth versus breadth.
Will you cover a few points in deep detail?
Or will you cover lots of points but each only in shallow detail?
“You can almost always tell the same story in different ways. So there’s no right or wrong way of doing this, but be aware of how structure changes the impact of a story.”
Understanding what is stopping people from getting from A to B.
Going back to the idea of going from the what-is phase to the what-could-be phase,
Understanding why they aren't there yet.
It’s your job to acknowledge that conflict and make it part of the narrative.
You need to figure out how to make it relevant to the audience and make it easier for them to relate to and understand
If you make it relevant, it also makes it more impactful and more memorable.
Remind people what they’ve learnt.
For shorter presentations, this might be a single line, but for long presentations,
you want to remind people all the things that you’ve covered.
This is also a moment to celebrate what people know now.
Finally, the kick, so end with a bang.
The audience will remember the final minutes the most so in a way, it pretty much echoes the beginning.
Make it memorable, impactful, visceral, emotional, so do something that will stick with the audience.
Drawing on her extensive experience of conference speaking, Mel shared insights that are a must-see for anyone working in developer relations.
5 Phases of Design thinking
Empathise
Define
Ideate
Prototype
Test
Empathise
Understand who our users are and what our user needs are.
Define
Observations that we’ve made so far and defining core issues
Ideate
Generating as many ideas as possible.
Prototype
Creating a scaled-down version of the end products.
Test
Getting deliberate feedback about your product and then making sure that you ask the right questions
Designing an effective talk, it’s the same process as designing an effective product.
Company launches a product after doing the research of figuring out whether it’s a product that people want, yet, it’s something that happens all the time in our talks.
Apply design thinking when creating a new talk?
Design thinking is a way of thinking deliberately about what you’re creating and constantly reacting and reflecting on that.
Empathise
Define
Ideate
Prototype
Test
When building a product, we first try to understand who our users are and what our user needs are.
It’s all about doing the research beforehand
Researching our users, who will be listening to it, who is the target audience?
Know about the events, the organizers and most importantly, the attendees.
What the background is, what prior knowledge they already might have.
Figure out what other speakers there are and also what they are talking about because that also influences people’s prior knowledge.
Understand what the logistical constraints are.
How long is your time slot?
What time will you be speaking at?
What type of stage are you speaking on?
Whether you’ll have access to Wi-Fi or audio?
Write down what you already know about the content of your talk.
What’s the title, the abstract, the key takeaways?
Analyze all the observations that we’ve made so far and define what our core issues are.
So what are the problems that we’re trying to address with this new product?
it will always be about convincing the audience of whatever message you’re trying to get across but the angle of that message can be quite different.
It might be about teaching a new skill, it might be to convince people to use a specific product,
it might be to inspire or motivate or frighten people to do or change something.
Filling up columns of as many ideas as possible with the following questions.
Think
What do you want your audience thinking about?
What mindset do you want to change?
What will the audience learn’
Feel
How do you want the audience to feel?
Inspired, motivated, scared?
Do
What actions do you want the audience to take?
What should they do after the talk?
About generating as many ideas as possible and then limiting and choosing.
Diverge
Try to generate as many ideas as possible while keeping the goals and the audience outcomes in the back of your mind.
Write down all the possible ideas that will help achieve those goals and those outcomes.
Converge
Distilling all that information into something more usable.
Three techniques - prioritize, filter and cluster.
Prioritize
Putting the ideas that you have in order of importance, highlighting which ideas are the most important ones.
Makes it easier to see which ones you might need to drop if you need to.
Filtering
Dropping off the talk, so which ones just don’t fit in, or things that aren’t as important as the rest, or that you know that you won’t get around to.
Clustering
Which ideas go naturally together?
Can help you identify maybe the three topics that you can cover in a 20-minute talk and maybe you can know from…you can find out from it which topics you might need to ask for a 50-minute talk.
Creating a scaled-down version of the end products, which you can then put in front of users and test with.
It’s about creating the bare minimum that will get you useful and valuable feedback without really wasting too much time.
Prototype your talk structure.
Before even creating any slides-- Create an outline first.
Beginning, middle, and end.
Beginning
Start of the talk will be in that “what is” phase.
The Hook
Grad their attention.
The Goal
Convince them why they should listen.
Middle
Everything in b/w “what is” and “what could be”.
The Main Ideas & Journey
Focus on what will bring the audience close to your goal.
End
“What could be” phase.
The Summary
Recap the main ideas
The Kick
Give them something to remember
The testing phase is all about getting deliberate feedback about your product and then making sure that you ask the right questions to get that feedback.
Prepare your feedback givers.
Prepare actual feedback questions.
What areas do you want feedback on?
Is it about the timing of your talk, specific sections that you don’t feel are quite right?
“Good presentations, good blog posts, good documentation, they’re all about understanding your audience and building the right message for them.”
Tanay from n8n, talks about the power of great content, including its ability to shape the culture of a developer community, and how to approach creating a meaningful content strategy from scratch.
Content is one of the essential pieces of the puzzle when it comes to creating a great developer experience.
Focus on creating an inclusive environment for the community.
Like companies and products, developer communities are unique as well.
There might be an overlap between different communities, there usually isn’t a one-size-fits-all.
Questions answered ..
How important is content to creating a great developer experience?
How does content help in shaping the community culture?
What are those first couple of things that companies should do to go about building a great community?
Words of wisdom for other teams starting this DX function or DevRel?
We’ve got to accept the fact that it’s a living thing, it needs attention and will never be finished. - Tanay’s view on documentation.
Content is one of the essential pieces of the puzzle when it comes to creating a great developer experience.
From a developer relations perspective, it’s the base of a lot of activities that they do.
Content can -
Help in building awareness about a product.
Help people get onboarded and inspire them to build something that makes an impact in their lives.
Helps nurture the community.
Stories that are shared by the community are often the most powerful ones to inspire other community members as well.
Focus on creating an inclusive environment for the community.
Every question should be treated with the same degree of respect.
Encourage people to ask questions, no matter how elementary they think that their question might be.
After all, if people are having issues and they’re asking basic questions, that could mean either their product’s usability can be improved or that they can provide better content or documentation for education.
The tone of writing reflects their approach to community management.
“Simply,” “easily,” “just” - don’t make it past their editorial review.
If not done correctly -- a great way to lose people.
Community adapts to things like this.
Like companies and products, developer communities are unique as well.
There might be an overlap between different communities, there usually isn’t a one-size-fits-all.
Companies make the mistake of going all-in to build a community.
Ask them why they’re doing that.
Communities can not be built with such a transactional agenda or without knowing why you’re doing that.
Building an audience is not the same as building a community.
Daily content gets a bit too much if it’s just one person working on content.
Roles like developer experience or developer relations, you’ve got to do a lot of learning.
Especially as part of early-stage companies, product matures really quickly, new things get added, you’ve got to learn them.
You’ve also got to read a lot of content to get some good inspiration for things to do.
I think like daily content, if it’s just one person handling, is unfortunately a quick way to burn out.
Treat the documentation like a product.
We’ve got to accept the fact that it’s a living thing, it needs attention and will never be finished.
Do usability testing.
Can really bring out shortcomings in your docs that as an expert one might have never thought of.
They learned about this practice of doing usability testing from the folks at Twilio.
There is no one correct way of doing this.
Do what works best for the community.
Don’t be afraid to try out something radically different because it takes time to get insights into what is working and isn’t.
Don’t underestimate the value of such collaborations because partnerships can give rise to content that’s very interesting and helpful for both communities.
Content will help you reach out to folks who might not have heard of your product before.
Great organic way to grow developer communities.
n8n’s community initially were made from fans who tried out the product, found out that it created value for them.
They wanted to create a place where people can discuss automation, ask questions about n8n and get value out of it.
For them, the number of followers is really just a vanity metric.
They don’t really do traditional marketing on their social media channels but try to provide high-quality content and share things that might be helpful for their community.
At n8n, they have three loosely defined focuses for the content they create.
Onboarding
This helps solve the blank canvas problem.
Helps in solving the “what do I do next?”
Education
Talks about what powerful things you can do with certain tools or platforms, but it also covers more conceptual topics.
Community interviews
Stories that are shared by the community about how they use n8n.
They started off with onboarding
n8n has a blank canvas when you open it.
Editor UI where you can add notes
Create your workflow
How can I actually connect these different apps or integrations to create something meaningful? - Tanay
It was challenging because they have a very diverse community.
Feedback is really important from the perspective of what they are doing in the developer relations team.
They really keep an eye on this kind of feedback because it depends on that, and that correlates to basically what their content strategy would look like.
It doesn’t do anyone much good if they create content that nobody wants.
They synergise between different functions in the company to find out what is most valuable for their community.
Common threads around certain topics, which makes it clear what topics they need content on.
If they already have content on it, it gives them insights into what needs to be better.
They chat with their users.
Take part in user onboarding to give them a deeper understanding of what is the most valuable type of thing for their community.
If somebody wants a certain integration to be a part of n8n, they can open a feature request and other community members can vote on it.
Helps in understanding which kind of features or certain notes would be most useful for the community.
They also try to take more qualitative feedback when talking to the users.
They had great documentation on the core part of the product.
A great base to build on top of.
Taking notes on the go about the product.
Ping team members to get an explanation on something.
Cross-posting on Dev.to and Hackernoon.
They realized that they were taking SEO hits by not having the blog on their domain
They are in the process of doing a migration away from Medium.
For n8n it was Hackernoon.
One can easily run into challenges with Hackernoon.
It needs to be really developer-focused content that performs well, their content is educational rather than marketing-focused.
Dev.to works really well for some companies but it really depends on how much of an audience you already have.
TechLadies founder, Elisha Tan, describes how to apply design thinking to creating developer programmes in this opening keynote from DevRelCon London 2019.
Design thinking - Programme Design Thinking
Vision
Understanding
Knowing why you are doing something.
Understand what problem you are solving
What context in which the problem exists.
Define
Who is the target audience?
Ideate
Finding the best idea.
Test
Testing the idea.
Leverage
How can we maximise benefits?
This process helps in becoming a better organizer, and helps to be a better leader then eventually leads to the creation of something meaningful.
Brings you through to integrate the needs of the users, understand the possibilities of technology, and the requirements of business need to come to a solution that can meet all of that.
How can we use this, how can we copy this, and apply it to the programs?
Mistakes many people make is to jump straight from ideation straight to execution.
Without a very mindful approach to understanding why we are doing this and what problem we are solving, it is very easy to be pulled in a different direction like I was.
Questions to ask …
Why are you doing this?
What are your goals?
What are the desired outcomes?
Vision helps with understanding if we’re solving the right problem.
DevRels can solve a lot of all the problems - not all problems are the right problems to solve.
Having a strong vision sets the foundation, helps set the right direction
Understand what sort of metrics will be important for you.
Questions to ask…
What is the problem?
How are people solving the problem now?
Why are the current solutions inadequate?
Not everyone learns how to code to become a software engineer. Some of them just want to learn because it’s fun.
Some of them want to learn to enhance their current role.
It's between the more abstract research and vision with the very tangible execution strategy.
Define is understanding who our audience is, what are their hopes and dreams and fears, and how can we reach out to them.
Helps in focusing on who exactly I’m helping.
User Persona
User Persona is related to your vision and also what problem you’re solving.
Questions to ask
What are all the possible ideas?
Which is the “best” idea?
What idea gives you the shortest feedback loop?
Find out what is the best idea to pursue given the constraints and the resources you have.
Learning is to prioritize ideas before a short feedback loop.
A feedback loop is a time taken to plan, execute and learn from that experience.
So ideas for a short feedback loop helps you learn more faster.
Talk to different people to help me refine the idea.
Questions to ask..
What is the best way to test this?
What are the risks involved?
What did you learn?
Testing Methods
Feedback from users
Run a small event
Creating prototype
Leverage is simply to squeeze any ounce of, in fact, other things that you are already doing.
What are some other goals that you can achieve?
What are some of the momentum that you can create from the things that you are already doing?
Can you make good release notes by collating your commit messages? Eva Parish argues not. Eva Parish explains the different purposes of commit messages and release notes.
Why don’t we just scrape a list of all the commits that went into the last release, and boom, instant release notes?”
Having well written and consistent commit messages are important and having great release notes is also important, the two are not interchangeable.
Commit messages are terse technical descriptions of what you’ve changed in a unit of work and why, for an audience of developers.
Commit messages are a chance to capture the context around what you’ve done in a way that will make things easier for your future self and your coworkers.
It only takes a few extra seconds of brainpower to write a commit message that’s useful
Release notes are a list of the important user-facing changes in a release, generally written at a less technical level of detail and focusing more on behaviour.
Release notes are an excellent opportunity to tell your users about the awesome thing you’ve built and why they should use it.
Commit messages to record brief technical details of what you’ve changed in a unit of work.
Be brief but still complete enough that someone can get a sense of what happened.
Why are you making this change?
It’s less important to focus on the details of how you accomplish something.
You can assume that your reader is pretty technical but they don’t have all the context.
This is why it’s important to include the reasoning.
On my team, we like to say that good documentation is like a love letter to your future self.
A high-level and less technical summary of what’s changed about a product or a feature or an API in a release.
Your release notes should be written at a less technical level than your commit messages.
Focus on the resulting behaviour and not how you did it.
Release notes should be framed from the perspective of the end-user.
Your users and there’s a wide range, depending on what your product is.
Your users might be super non-technical or they might be developers just like you.
Think about what information they need to know.
Did you make some kind of improvement?
Did you change how something existing works?
Will they need to refactor code to remove an API you deprecated?
What will look or feel different to them when they’re using the product?
There’s a ticket number, it starts with a verb in the imperative.
It briefly mentions all the pertinent details,
The library name
The version number
Efficiently states “why”, which is -- support for gifs.
You have a bit more room for information in a release note.
Starts by talking about what the change enables the user to do.
Links out to further reading, where they can get help if needed.
And it ends with inspiration for what the user can do to get started using this new thing.
Don't recycle wholesale.
You can look back through your Git history to remind yourself of what you’ve done,
Pick out the changes that are most interesting or impactful to a user.
And feel free to leave things out because there are plenty of things in your Git history that a user doesn’t care about.
Take each one and imagine it from your user’s perspective.
How will this affect them?
What differences will they notice in the product?
Are there any breaking changes or actions that they have to take?
Adjust the level of technical detail as appropriate, based on what you know about your users.
“Good release notes get users excited about the hard work that you’ve put in to building your product. So use both commit messages and release notes appropriately and don’t waste these opportunities.”
Mike Stowe takes a look at the Hierarchy of Developer Needs, and how you can use it to balance your efforts and ensure your users are successful.
Understanding the basic needs of developers
Understanding AIDA model
Digging deeper into company and developer needs.
Putting it together
Audit
Any hierarchy needs to be audited.
Plan
Understanding where in the funnel you need to focus
Are the funnels actually working and driving developers
How is the audit affecting the strategy
Measure
Applying metrics at each stage to measure success, blockers, tactics.
Focus
On needs of developers
Building a self-sustaining community
Helping developers become advocates and empower them
Guiding developers through the hierarchy or funnel without friction
Focusing on their psychological and self-fulfilment needs
Where & how do we focus our efforts and energy
How much money to build a strong program.
How do you actually build a developer relations program?
Should you be focused on the community?
Should you be focused on events?
Should you be focused on evangelism or education,
Should you be focused on open source?
What is it that makes a good developer relations program?
Where do you invest for maximum impact?
How do you grow and expand your program in a scalable manner?
How do you grow it without having to hire 40 developer evangelists on a daily basis?
How do you grow it without having to hire 10 community managers to try to manage your forums or your community?
How do you go a step further and take your developers and convert them into advocates?
Understand where you’re at today, and what steps you need to take to get to where you want to be tomorrow.
2 different frameworks for answering the above questions and how to measure them
This is the same tool Mike has used going from stealth startups to public companies
If you were asked to start a global meetup program, what would you need to do in order to accomplish that?”
The answer will differ for different people
For an established company like SalesForce,
A global meetup program is already there.
For a program like MuleSoft, where the community is built first,
Able to launch a meetup program with 40 meetups in about 12 months.
For a brand new startup
A global program is uncertain, starting with one meetup will be the key to find out if it is something they need.
Developer Relations is a symbiotic program designed to help both the developers and the company. At the same time, DevRel needs to be an advocate for the developers.
They need to make sure they’re putting the developer’s success first,
Helping the developers in everything that they do
Not just trying to sell them technology, but help them grow their careers
Bringing new technology to the developers,
Helping developers utilize, adopt the technology
Helping them evangelize the company’s tech.
Ultimately, you want them to be so happy with the technology that they’re talking about it to others - see the value in the technology that you see in the technology.
Your company has to be successful
Your developers have to be successful
Use the standard AIDA (Awareness, Interest, Desire, Action) model marketing funnel
DevRel is really responsible for the developer journey from raising awareness to all the way to adoption advocacy.
Awareness
Without awareness, developers can’t find the technology
They can’t learn about the technology or use it and certainly can’t advocate for it
Consideration (Interest), ie: “Okay, I’m interested. I’m thinking about using this.”
Giving them the tools to understand, like developer documentation, sandbox environment, etc.
Adoption (Desire)
Assist them through the adoption process of becoming a customer.
That may be,
Free APIs: Using the freemium model.
Paid APIs: Adopting the paid or premium model.
Advocacy (Action)
Taking the developer who’s using the technology
Change them from being someone who loves technology, to someone who’s willing to tell others about the technology.
Devs are people, they have basic needs
Basic needs fulfilled
survival
Psychological fulfilled
purpose
Ability to become self-fulfilled
happiness
Basic Needs
Basic Enablement
Documentation and onboarding -- without this, you are losing developers on the very first step of the process.
Community
Slacks, forums, social media to connect similar people sharing same the same process and so that they don't feel lost or alone.
Education
Making sure developers grow -- you don't want them to be stuck with your product, you should make them grow.
Self-fulfilment
Expanded Enablement
Online workshops and webinars, where they can watch and practice the product and various test cases.
In-person events
One of the main 🔑 elements in the whole process is to build a community of developers and who don't feel they are alone and want to grow.
If your program is not meeting the basic needs, it dosen't matter how great your other programs are.
Messaging
Is your website clear in conveying the message?
Your messaging should be clear enough and to-point for developers to understand what exactly your product does and brings to the table
Navigation
The website should be easy to navigate to areas that are always needed by the developers.
Account creation
Should be a low-step process.
Lesser the steps the better
Access to credentials
Access to documentation
Important step to achieve developer retention.
If a developer is interested in the product, they want to dive right in, there might be existing tutorials from 3rd part sources, but documentation from the organization to make the onboarding of devs easier is a must.
Usability and searchability
Getting started guides
Tutorials and examples
Error reporting
If a developer cannot create an account and build their first basic app with 5 minutes, your platform is too difficult to use.
A way for developers to obtain support, network with each other and be recognized by the organization.
Internal
Forum
Team messaging
MVP program/ambassadors
External
StackOverflow
Social Channels
GitHub
Making sure developers become experts in their field
Blogs
Videos
Podcasts
Open-source
Training programs
Taking education up a notch.
Webinars
White-papers
Case studies
Online workshops
Virtual events
Certification
Great way for creating connections with your developers, recognizing potential DevRel qualified leads and rewarding them. (Not sure about DevRel qualified leads? Here's a link that should help you out)
Meetups
Summits
Hackathons
Conferences
Jamie Wittenberg talks about great ways you can incorporate to make your documentation better and more accessible to new developers.
It is the right thing to do for developers but also for the business
The documentation is someone's first experience with your product
Your documentation is the best marketing material you might have!
New devs aren't familiar with code conventions
Developer environments are hard
New devs lack context
Test your docs on different operating systems and have someone with low development experience try it
Create a legend & glossary for your documentation
Add context to your tutorials
Users should be able to simulate the development environment
Users should not be entering their personal information, email addresses or use any credit cards for accessing the documentation
Users should be able to save their work and return to it.
Assume that users might not have written a single line of code before
Users should be able to access everything with even tablets or cell phones
Problem:
$ sudo apt update
- Newbies might not understand what a simple $
here might represent
Similarly,
Using >>>
for interactive shell
Using [ ]
around values where you want people to substitute their API credentials
You cannot avoid conventions generally because they increase inclusivity generally
Solution
Include a legend in your documentation that defines any conventions used.
Problem:
New developers aren't familiar with developer workflows, such as when to use the command line vs a text editor.
Eg: Newbies might get confused what part of documentation represents shellcode and what represents javascript code.
Solution
Use visual differentiation to indicate different parts of the developer workflow
Use syntax formatting, number lines, etc,
Different parts to indicate output vs input files, code vs shell etc.
Problem:
Even with the best explanations, some of the things might get lost.
Solution
Use screencast or gifs to make developers aware of the process.
Don't assume the operating system one might be using for accessing your code.
Eg.: A lot of documentation assume people using UNIX/ Linux systems and Windows users might get discluded.
Solution 1
Link to someone else's explanation of how to use different operating systems.
Write your own detailed solution for these specific cases: More involved and yields greater benefits by keeping developer on your platform
Solution 2
Explain command and environmental differences, using a different platform, shells and respective commands for that
Solution 3
Set up examples on Codepen, Glitch or repl.it, where they can run and test your documented example code.
Solution 4
If a browser-based development environment does not work for your product, use a VPS/ VM solution for that.
New Developers don't know what your product does
Solution: Add a few sentences at the beginning of the quickstart and tutorials. Include key activities.
Your docs are expansive and hard for a new dev to navigate
Solution: Provide use cases for your product and use them to guide developers through your documentation
Your docs are hard to find or your product requires signing up to test
Solution: Create a sandbox
Have a friend with less development experience try one of your tutorials and document every confusing point
Test your docs on different operating systems
Create a legend for your documentation
Add a glossary to your documentation
Add context to your tutorials
Cristiano Betta shares the practicalities of how they have taken an engineering approach to their API documentation.
Store your documentation in GitHub or SVN, or whatever you want to use, but these days a lot of it is in Git.
Build the documentation automatically.
Review the documentation as you write it.
Publish the documentation without much user intervention.
Test anything that can be tested.
Making sure that your documentation quality is gonna remain good going forward.
That kind of thing.
Modularize to prevent duplication,
So that we can reuse our documentation.
Reuse -- All of that will allow us to maximize value.
Using a pipeline to tie it all together.
README allows you to make a backup, you export it.
Turns out when you do import and export and import kind of thing, you’d expect it to be symmetrical. If I create export and I just import it over here again and should be getting the same system at the end. Not how it worked at ReadMe.
Hard to translate
No audit trail l
No review process
No modularity
Hard to refactor
Hard to ensure quality
Store your documentation in GitHub or SVN, or whatever you want to use, but these days a lot of it is in Git.
Build the documentation automatically.
Review the documentation as you write it.
Publish the documentation without much user intervention.
Necessarily not covering architecture -- but software engineering.
Software engineering, we’ve got a lot of principles that we’re all familiar with.
Modularity: Writing modular code, and that we should
KISS: Keep things simple, and that we
DRY: Shouldn’t repeat ourselves, and that we should
Anticipate change
Do one thing well: The Unix principle of doing things well.
To test early
Testing early,
Testing often,
Testing the parts
Testing the whole.
Validate internal links
Test at the source.
For documentation, that means that if you test early, you want to There’s a couple of things you can do there.
Test the unit.
Spell-checking.
It’s the idea that you should break things into their components to make sure that they do one thing well, that they allow for easy inclusion.
Do one thing well
Allow for easy inclusion
Composition over configurations
And you allow composition over configuration.
So rather than configuring things, you can take multiple components that you’ve written, combine them together into some nice, new bits of software
Apply that same thing to our documentation.
Ensure quality.
So within the pipeline, we do our testing, we do our validation that our code still does what it’s supposed to do.
It maximizes our value
It allows us to ship to multiple locations quickly, faster, in parallel.
It speeds up delivery
Encourages responsibility.
Because it basically says, hey anybody who documents, anybody who writes software, if you manage to merge this into master, it will ship, it will go live, it will be part of the product, it will go out there almost instantly.
Let’s look at the pipeline Cristiano’s team created to automate literally everything!
Microcopy and guides
This stuff is mostly markdown and a couple of YML files, as well as their open API specification, which is mostly YML.
Travis
Pick it up, do the spellchecks, do all the validation, etc. And then it writes it back to an English branch(English version).
Every time the on branches get updated, or any time their SDK’s or Gatsby kind of source, which is the static site generator that they use.
Netlify
The serverless function basically determines which of our stages to trigger.
Staging environment, master environment, and translation environment for their upcoming Japanese full translation.
Netlify will pull all those sources in, build the site.
Netlify -- also as a hosting provider.
They took it a step further and they were not just building documentation at that point because.
We have great source materials now that we are validating and we’re sanitizing.
Different build servers -- at the bottom, we have our in-house build server. So every time our English sources change, it creates a snapshot, translates it in house, sends it off to our translation teams, and then writes back to the Japanese file to a Japanese branch.
Netlify will pick up any of these sources and build them out as documentation. But every time these sources change, Travis will also put it up and currently it’s pushing a postman collection.
And it’s not just pushing it out in English, it’s also pushing it out in Japanese!!
Explaining your role and function comes with the territory of working in this space, but why is that? It’s tricky to define, describe what developer relations is, and why it even exists?
“Let’s start with a round of introductions. Sean, why don’t you go first?”, says the organizer of the meeting.
“Sure thing.
Hey there, my name is Zeus and I work in developer relations.”
At the heart, DevRel is a people business
Building real relationships with internal and external engineers
3C's of DevRel
Community
Coding
Content
Developer relations -- a variety of tasks and responsibilities that can vary from company to company.
Now, like mentioned above ⬆️ can be a variety of tasks that can vary according to which category DevRel is focused on in an organization.
But below ⬇️ are a few tasks that are almost done by every DevRel.
Besides product management, DevRel is the only role that might be a part of various kinds of meetings.
Building personal connections with developers
Growing awareness of the platform
Creation of resources to be used by developers
Great way to build trust
Forms the foundation for demonstrations of your platform
Creating reference materials like documentation, guides, blogs and videos
Helps in extending the reach and educating the community
Large breadth of tasks and responsibilities comes within developer relations.
Responsibilities change within every company.
DevRel might be in different parts within the organization
Engineering
Product
Marketing
DevRel is still a relatively new function for companies to have.
Applicable to companies with developer-facing products.
Somewhat niche, makes it harder to define to people outside of the tech industry.
The art of developer relations is to actually build authetic relationships within your community without selling or marketing to them.
The purpose of developer relations is to build relationships with and enable our technical communities.
One of the ways to put it would be that it "always exists".
Having a product where users are developers, you are already into developer relations then, even if you have a dedicated team or not.
So, even if your organization doesn't have a DevRel, there must be someone writing technical documentation, code samples, connecting with developers to solve an issue.
While developing a product, one of the first steps as a developer is to create documentation, samples, uses cases to get started.
If you want to learn more about community flywheels you can check the scribble below
Various well-known developer event organisers discuss what they see as being the future of gathering, talking about how events will look like in 2021 and beyond!
One of the main things to always remember is that each event -- online, hybrid, or physical, it's those little decisions made by the core team that can eventually make the event successful and now it depends on how you set the metrics for success.
In an online world - if someone is online and present —they're likely willing to be approached.
Reaching out to speakers is hard for in-person events.
Try to think more about reach than attendance as a metric.
Having a global staff helps to reach global audiences.
It's really difficult to know who to approach IRL (in real life), online events make this easier, especially for introverts.
People were left with less time during COVID, not more time.
In an online world - if someones is online and present —they're likely willing to be approached.
People from niche interests can come together, overcoming geographical limitations.
Letting people who wanted to attend but couldn't due to cost issues.
Long-tail of talks being available on Youtube long after the event.
Online events are driving up the quality of the talks, giving speakers more confidence, helping them overcome stage fright, etc.
Online brings more diversity on how to deliver talks, it is more accessible, and being able to educate/teach/talk in so many different formats
Noticed a trend of online communities (Slacks, Discords) staying more active after events, Kevin's communities have noticed the opposite, ie, less or no activity after events.
There is more organic engagement in the community in between events. People stay connected because they remain on the platform, instead of physically going to a different space and disconnecting from the community. -- @Jonathan Gottfried from MLH
Now that events have transcended geographical limitations, it would be really useful to think across timezones, languages, etc to expand the potential audience to the whole world.
Think about accessibility in demographics where people might have limitations for example connectivity speed.
Having a global staff helps to reach global audiences.
Recording stuff for later reference.
People have been making more meaningful connections because everyone seems more 'equal'.
People are more receptive to being approached.
People took respite in online events due to the disruption in their lives due to COVID.
COVID forced us to pivot, put resources to best use.
Hybrid events are hard, just like hybrid workplaces!
Going to have to get really really creative.
Events are social experiences, talks are important but not the main thing.
Harder to bridge the gap between in-person and online.
Depends on the nature of the event. Easy for hackathons, harder for conferences.
Serendipity online vs in-person may not have a lot of overlap.
We need to know what part of an in-person event will get value from having an online component, taking the whole event online may not make perfect sense or be feasible.
Challenges of covering in-person events via video and taking them online fully.
Reaching out to speakers is hard for in-person events.
Issues finding accessible and inclusive venues - some people can't go to bars for example.
Inclusive timings are still a challenge. Everyone's being cautious about hybrid events!
Try to think more about reach than attendance as a metric.
Reusing assets from events afterwards.
Online events might have greater reach post-event, youtube videos for example. - Low attendance could be because of Zoom fatigue.
Rethink online event as not just a Zoom call, but maybe say as a Youtube playlist.
People look for social aspects in events, if that can be replicated online, then it might be helpful.
An event needs to offer high-quality social contact.
Content is a hook, not the full reason to attend.
Often there's not a real good engagement strategy for IRL events.
We need to rethink the success metric. In the past an event's success used to be measured by "how many people attended" there is a real opportunity here and now to go beyond that. You can have low attendance numbers and still be considered a success because you can now measure other things now, like engagement. - @Kevin
Lorna Mitchell covers what it takes to create a README that engages and informs developers.
If you are a technical writer by profession then you’ve spent a lot of time perfecting your landing page. You have designed an information architecture.
You have worked extremely hard on understanding the user journey and
The users need it when they arrive on that page.
Your landing page is the home page. It’s the front door of your documentation.
Setting repo standards.
How to begin a readme?
Fill out the information -- title, short description, etc.
Understanding the purpose of the repo.
Provide links.
Type of Repositories
Library code
Tool or demo app
Supporting code.
Doc-as-code
Giving your project a title and a short explanation of what this is is surprisingly rare on the internet.
What’s the purpose of the repo? What’s the scope? Is it supported? Is this something we actively want people to work on? Did we make this once just to show how to do a particular thing? What’s it here for?
“Click here to see what we do, click here to signup”
gives us a sense of what’s happening where that data is present, so we find that useful. And you may want to do something similar to try and understand the journeys that your users are taking when they’re on a place like GitHub, that you don’t control and maybe can’t get a lot of stats back from.
"And it’s really important to try to spell things out, especially where you have similar repos. If there is the documentation for this project, link to it."
What are the various types of repos already available and do their standards differ from one another?
Library code
This is an installable thing for you to include in your own applications, that will be helpful.
It is intended to be stable enough for you to use it in production, so it needs really good documentation, really good test coverage, generally absolutely first class everything you can imagine, that’s what we have.
Tool or demo app
Something that’s standalone, you can spin it up, play with it, maybe use it as a basis for something else that you could move on and adapt it to do.
Supporting code
Not the whole code but the little snippets of code
Helps in understanding the context of its application as seeing the full, working copy and how that plugs together can be incredibly helpful.
Doc-as-code
When the whole developer portal is an open-source project, it’s on GitHub. It has a readme.
Prerequisites
What version do you need? What programming language is this for? What version do you need to be running? Are there any extra complicated installations?
Like any system libraries, or anything that you need? Are there any operating systems that are not supported? Spell it out.
Installation instructions
Really experienced developers don’t need really detailed instructions. But really experienced developers are really experienced skip-readers.
More is great too.
So just write down what you need to type, make it easy. And that includes everybody, it’s appropriate for everybody.
Usage instructions You’ve installed it. You’ve told me how to run the server, now tell me what port it’s on. Tell me what path to append to the URL.
Give folks a clue. “How do I, yes I have installed it, how do I do the thing? I want to do the thing, I’m ready to do a thing, now tell me how to do the thing.”
Every project benefits from every example that you write.
How do I do it, I need to change this thing, how do I do it with that plugin that you advertised that you support, right?
"I need an example and then I need some more examples, as well as straight-up library documentation, generated code, whatever is working in your local space."
Requirements
Installation instructions,
Usage instructions.
“Click to deploy -- Heroku, now you have a public URL, use it here, has worked really well for us. And allows users to use tools that we’ve made, or try approaches that we’ve put together for them really, really easily.”
Deployment instruction,
More than just running it locally. For something that is supposed to be a standalone project, it’s really important, this is often completely missing as well.
“For us, this is proven to be the hardest step, because we’re in dev rel, so we don’t have a lot of our Obs engineers hanging around, so this can be a bit of a challenge. And it’s one that we’re just going to keep on working on. It’s not the easy thing, but it’s the right thing.”
Don’t have a lot of rules about what must be in the readme for this. In fact, the focus should be to link to the thing it is for.
So you make the sample code, you write the blog post.
The linking thing, where you make one thing and then you make another thing and you link to it? It’s really hard to link back to the first thing, but there are lots of places where it’s really important.
“We discovered that if you landed on our reference pages, either rendered on our docs portal, or you just grab the spec because that’s what you do with open API specs. There was no link to the actual documentation for this. So look out for traps like that, it’s super easy to do between artifacts. Between your blog posts and your repo, or whatever. So, look out for it.”
How to get help?
How would you like people to ask for help? Should they open an issue on GitHub?
Would you like a particular tag to have an overflow? Does your organization run an online forum?
Giving the next steps.
Readme is really important, it’s a great place to start, but there are other things that we can do to make our repositories both more welcoming but also more discoverable.
Getting the metadata right on your repository
Please give your project a clear name.
It’s super important to use the tags, GitHub calls them topics
Don’t skimp on the description.
It’s shown here and it’ll be shown in search results.
People might not be seeing the whole page. It’s not the bit that goes before the files and people are reading it there and then the readme.
License
If you want people to interact and use your open source stuff, it needs to have one.
There’s no point in creating a thing without documentation and there’s no point in publishing open-source code without a license. “A real one, an OSI approved on, not something you made up.”
Giving permission and then actually welcoming use are two different things.
codeOfConduct.md
contributingFile.md
….are two things that really enable users to have confidence in being part of your project as users, as contributors.
Think about what this means to you and your team.
If you have a violation, who’s going to deal with that? Who’s going to support that user? And who’s gonna, like, what’s the outcome? Write that down, make sure that exists.
“Don’t let users engage with your project and then tell them no thanks. We have a couple where our contributing file just says “We don’t accept patches.” “ Be clear if you don’t want the users involved."
As you can see, developer relations is highly cross-functional, dynamic, and includes a wide breadth of skills and responsibilities. According to , Director of Developer Relations at Slack, developer relations is “an interdisciplinary role that sits in a border space between product, engineering, and marketing”.
In this talk from DevRelCon London 2019, Jo Cook talks about The Good Docs Project and Google’s Season of Docs are working to make it easier to create excellent open-source documentation.
Find out the Problem.
Restate the problem
Finding more resources
Developers to miss out steps
Developers are familiar with the technical terminologies that they use.
Users that really know what their own expectations and needs are.
Users that are actually going to be using the documentation.
Figure out what puts people off?
Figure out a new solution.
Encouraging help with documentation for your project encourages empathy and improves diversity, both of which I think are very good things.
Good Docs Project
Identify all of the elements of good documentation that a project needs.
Establish a minimum viable docset.
Create a community of writers, users, and techies
Open source projects are dying. I
On GitHub, 64% of those projects rely on just one or two developers to survive.
We then take into account that these people are really often doing day jobs and running these projects in their spare time, or in a very under-resourced way.
They’re not very diverse!
The ratio of women in IT is between 17 and 25%, but in open source, it’s between 0.1 and 5%.
What that means is that there’s a big pooling of talent, which could be being mined for participation in projects.
It’s seen as being a big barrier to participation, adoption, and contribution.
An open-source survey from a few years ago said that “Incomplete or outdated documentation is a big problem.
“93% of respondents spotted problems with documentation
60% of those people say they rarely or never contribute.”
Open source projects, they’re not dying, but they are under-resourced, not very well-documented, and they don’t attract diverse contributions.
Finding more resources
It is about creating more time for developers. It’s not about money.
How can we give developers more time to do what they want to do?
Whilst also improving project documentation
The GitHub Open Source Survey from 2017 identified that documentation is a really, really.….
Good way of getting people involved in projects,
Good way of establishing more inclusive and accessible communities.
brings in people from different communities, and encouraging contributions to more than just the code makes the project a lot more resilient in the long run.
Developers miss out on steps
Users are the best people to write documentation.
Easy for developers to miss out on steps because they’re very, very close to their software.
Developers are familiar with the technical terminologies that they use.
Users that really know what their own expectations and needs are.
Users that are actually going to be using the documentation.
When you’re writing documentation, or when you’re trying to get them to help you when you’re trying to get them to contribute.
High barriers to entry.
What we’re talking about here is, is it easy for people to contribute to your documentation?
Users are more likely to help you ensure that your documentation covers these early, painful setup stages.
They’re actually not all that focused on the endgame.
They just want to get things done.
Forms to make a pull request to make grammatical changes... really?
Preferably so they don’t need to install additional software.
Get their contribution live as quickly as possible.
These contributions, small contributions, lead to bigger contributions.
Acknowledge contributions, no matter how small they are, because they are important to the people that made them, and they’re important to your project.
There are lots of technical writers out there with huge amounts of subject matter expertise.
They’re not secretaries.
As developers, your best bet is to really make friends with those technical writing people.
Provide workflows that make it easier to write good documentation, and find all of those existing good practices.
Identify all of the elements of good documentation that a project needs.
Tutorials, how-tos, references, technical documentation.
Providing best practice resources and templates for each of them.
Establish a minimum viable docset
Designed to help you create a baseline set of docs.
Create a community of writers, users, and techies
Get practical tips and advice, and help for all parts of this project, of your process.
Aim of increasing quality and consistency.
Gerard runs through the key elements in growing a successful tech community around meet-ups and events.
Creating a community from scratch
Initially, you will be doing everything :) marketing, sales, design, etc.
Format
Top speakers
Top venue
Prizes
Drinks and Food
Recordings
Recruiters
You need to give boundaries/rules so folks don't abuse the meeting.
Secret formula, how the community is made.
Venue → contact speakers → start promotion → run event
Venue
Location!
Need to make it easy for people
Check-in and security
Are people going to need to wait outside? How will they get in?
Technical set up
Audio/video
Catering details
Space setup and cleaning
Setting chairs up, etc.
Speakers
Book developer advocates
Conference speaker snitcher
contact speakers from local conferences happening at the same time.
Networking
Use your sponsors networks!
Don't compromise the content
Promotion
A lot of people perceive this as annoying, but it's not actually that hard
Speaker update, sponsor updates (we have food, etc.)
Reminder - people will forget, so send a reminder
day-after message - this is important
Event
Pre checks:
RSVP/Security, speakers, catering
Hosting + schedule keeping
Making sure everything stays on track
Socials, etc.
Passion
A talk can be rubbish but if it gets people excited, it's good
Have FUN!
Planning is a lot of work, if you're not having a good time, you might need to change it up.
You will be doing, like, literally everything.
You will be doing marketing,
You will be doing sales (almost), like closing sponsorships for the long term, so you don’t have to do the research every single meetup.
Meetups every 2 months
Recordings available
If you're putting in the work, you want to have a recording
Great speakers
Passion shows through
Great atmosphere and hospitality
-Dedicated teams for welcoming guests
You have audio, you have video.
They will record every single meetup.
They will give you people that you can call.
There’s also a desk walk-in that they will hand these name badges.
It’s like a proper meetup.
Of course, you don’t have to go for this level, but that’s something nice when you have been doing community for a few years.
There’s a lot of opportunities when you are doing this kind of activity, use every single one.
You don’t want to be messing around,
You want to share a really strong message, so people when they go to your meetup, they know what they are going to get. And in this meetup, people, we’re going to get awesome.
And why? Well, because in my experience, passion is what makes things succeed. “This sounds, I mean, if I was a salesperson, this would be like, “Oh, my God, what are you saying, Gerard? This is like total BS.” No, I totally believe it, and I stand by it.”
Make sure you draw a line and make sure your organizers understand how you want the meeting to be carried out and things you don’t want.
Set clear goals.
RSVPs can be very misleading. There’s a lot of people using, like, big numbers of RSVPs. When you go to the vendors, like, 15 people, like, where are the other people? What happened there?
Top speakers
Top venue
Prizes and raffles
Can be used in promotions, you can use them to just share contacts that you have with conference organizers.
Treats and drinks and share them in the meetups
Of course, this is to create some kind of hype.
Recordings
“If you are building your meetup, you want to match your own style. You don’t have to match mine.”
Venue
Location, location, location.
This is obvious. If you want to get people, you need to make it easy for them.
You don’t want to make it, like, in them, I don’t know, in zone 5 in London, you need to do it, like, in City Center, at least.
Check-in on security
Technical setup.
You want to host your event with a third party because they are going to take care of that. Taking care of that takes a lot of effort.
Catering details
Space, setup and cleaning,
Who put the chairs there? Who took the chairs out afterwards? Who cleaned your mess?
Top speakers
Developer advocates
Why? -- They are paid for it. The company’s going to fund the travelling. They usually have, like, really good content.
Conference speaker snitcher
If there’s a conference in your city that you know about, contact these speakers and invite them, and most of the time, they will come.
Network
Of course, use any opportunity. Use the venue, the context that you need to reach for new venues. Use the networks for sponsors.
They have business contacts, reach them. Of course, don’t compromise the quality of the event,
Check about the content that they are planning to show.
General Announcements
Speaker update
Sponsor update.
Reminders
Day after message
Social media -- Just make a lot of noise.
If you are a developer advocate for a big enterprise company, you need to align with the strategy, etc.
If you are an independent developer, then you're quite free.
Pre-checks, RSVPs/security, speakers and catering
There’s a lot of, like, admin work. Maybe you can leave it to someone at the venue. That’s the best option.
Hosting and schedule-keeping.
This is the people saying like, “Okay, one minute, two minutes.” This is important because at ten in the evening they kick you out, and they are very rude, and you don’t want that to fall into your attendees.
Prizes
You want prizes, you want to give away tickets. You want to contact organizers, you want to contact vendors, you want to give discounts. You want to give these to the people that are coming to your events and also anyone.
Socializing and pictures
Part of a promotion.
You need to be sensible about how you decide this and probably, you don’t want to use like stock pictures.
Ambition
Bigger venue, bigger speakers, silly things happening during the event. Raffles, prizes, conference tickets to GraphQL Europe to GraphQL people. It’s awesome.
Passion
Why it’s important? Why it doesn’t matter if the talk is completely rubbish if it gets the people excited?
Have fun
Of course, this is a lot of work. If you are not enjoying having a good time, maybe there are changes that you need to make.
"Yeah. I mean, this is myself. This is my personality. Just don’t listen to me, I’m a little bit crazy, but totally go and create a community that will benefit everyone in that community" -- Gerad
Developer relations and community management often look like two sides of the same coin, but taking a step back it becomes clear that they are distinct yet related.
DevRel and community management share many similarities.
When it comes to all three categories -- DX, DevRel and CM, the lines are blurred. There are roles and actions that can be performed by either or both. But it still makes sense of us to think of them as distinct practises.
DevRel of community management -- neither arrived fully formed.
DevRel and community management even though from the same root, have taken a different direction.
Difference between the two -- their end goals.
Community and community management is everywhere!
Genuine communities can be built even where there is no coding involved.
DevRel can too happen without any attempt at building or managing communities.
Developer Relations - DevRel
Developer Experience - DX
Community Management CM
How does one define the various roles/task under developer relations/experience and community management? -- Bands on a spectrum, the high school, em spectrum something like that.
Bands on the spectrum help us to understand their characteristics.
When it comes to all three categories -- DX, DevRel and CM, the lines are blurred. There are roles and actions that can be performed by either or both. But it still makes sense of us to think of them as distinct practises.
The diagram clearly helps in breaking any hierarchy, if at all. It helps in giving a clear-er approach from an implementation choice for an organization.
Wait! Wasn't it mentioned ⬆️ that there is no hierarchy? But now there is! Which can help us understand the interplay between developer relations and community management.
DevRel of community management -- neither arrived fully formed.
DevRel
Open source projects built awareness and attracted contributors with a mix of developer programs.
DX (Developer Experience)
Evolution of tech writing, User experience and more.
Community
Open source, PR, various forms of marketing and customer service.
DevRel and community management even though from the same root, have taken a different direction.
In the late 1990s and early 2000s, it was rare for companies to involve themselves in open source.
Sun, Red Hat and Canonical are a few examples of open-source communities which borrowed methods from academia, special interest groups, and clubs, these were communities that developed their own ways to manage their development of software, attracting users and contributors.
Matthew (Author of the blog) thinks that it was Ubuntu's broader community focus was the point where community management and developer relations began to take separate paths.
Much of what everyone does in DevRel and community was pioneered by open-source communities.
Difference between the two -- their end goals.
DevRel
Building sustainable awareness, adoption, and community around developer-targeted products.
Community management is one of the techniques DevRel relies on.
CM
Creating and maintaining a process that enables people to comes together for a common goal.
Community and community management is everywhere!
Part of community management is called customer service, usually delivered through social media and forum software.
Genuine communities can be built even where there is no coding involved.
DevRel can too happen without any attempt at building or managing communities.
Take the example of the banks releasing open banking APIs. They have developer portals, many are starting to go out and talk at events, some publish content. Few, if any, are building genuine communities around their offerings. Perhaps within time some will have thriving communities but many will meet their goals without doing so.
Like it was mentioned earlier there is no hierarchy as such and both CM and DevRel can be essential in particular cases for growing a community of developers.
But they are not the same thing.
Google’s Sangeetha Alagappan talks about making your docs inclusive, what accessibility means in the context of documentation, and common pitfalls you might encounter.
Accessible solution delights when it blends into the product ecosystem, and it provides the user with all that they need but is still personalized to their particular abilities.
You should be cognizant of how you create things. You should think outside the box.
Accessibility is all about being creative and being surprised and just being human.
Write style guides.
Where when you set up a style guide for how you want your documentation to be,
It’s not only a mission statement where you tell others what you want your documentation to be, but it’s also a roadmap to show people how to get there and hold them accountable.
Disabilities and docs
Low vision
Colour vision deficiency
Blindness
Motor disabilities
Common problems
Lack of alternate text and or equivalents.
Colour contrast
Unnavigable by keyboard
Let’s talk about accessibility and what that means for documentation. It might be a noble cause to invest in accessibility, but it’s also an incredibly selfish one because it’s an investment in your own future,
Because everyone will be temporarily or permanently impaired at some point in their life, and that’s according to the World Health Organization, who are very sprightly people.
Accessibility Isn't a zero-sum game.
Everybody wins when you invest in accessibility.
If national well-being and prosperity and societal harmony is not enough for you, accessibility also reaps economic benefits.
Example - Over 15% of the world have a disability. 71% of them leave an inaccessible site immediately, and very recently it’s also been a great pot for lawsuits because there’s a lot of money in that.
When we talk about documentation, we talk about a narrow scope of disabilities because it is a very particular interaction that users have with documentation and product interfaces.
Users with low vision, so moderate to severe impairments, colour vision deficiency, mostly red-green colour blindness.
Users with blindness, who are more likely to use screen readers.
But we also talk about temporary disabilities, like changes in the device, age, situation, technical infrastructure, and temporary situations, which are not necessarily disabilities,
Noisy train,
You’re always one-handed and you’re trying to use a device with the other. And
On the rare sunny day in London, that one day where it’s too bright to see your screen.
What we see in the documentation that makes it inaccessible is the lack of alternate text or text equivalents.
If a user can’t depend on visual stimuli, you need to give them an alternate text, because it gives them context
Or alternatively, if you don’t use all text, you can prepend an image with all of this information so that it sets the context nicely.
Use correct colour contrasts.
Having every part of your documentation navigable by keyboard.
Everything has to be reachable with tabs.
Your left and right and bottom keys, your enter key. It’s always important to check if it can be navigated by the keyboard.
State indicators.
If this were an error message, you wouldn’t be able to tell if it was red or green if you had red-green colour blindness.
So, the idea is to not rely on just one visual cue.
You should have multiple different cues, like an image with alt text that tells you that’s an error or an error text message.
You also shouldn’t obscure information when you’re asking a user to input something.
A couple of years ago, BBC looked at their iPlayer, the home of all your favourite shows that everybody seems to have watched and can’t stop talking about.
They realized that there were a lot of accessibility problems with the current interface.
Mostly, that TV and radio are such broad categories, but that’s what’s on the top bar.
Anybody who’s navigating it by keyboard had to go through everything to get to that.
If you’ve ever actually used a screen reader, it’s incredibly infuriating because it reads out everything.
Unless the page is structured minimally and optimized for a user workflow, it’s going to read out every single thing on this page.
The keyboard behaviour was not intuitive, so just pressing right or left, you couldn’t tell predictably where the cursor would go.
So they took all of that information and all of the insights from their user studies, and they realized that users require three things.
They need to be able to search for what they’re looking for.
They made it easier to scan a page and they added search functionality.
Broader categories that people could go to the right on the top, like channels, categories, A to Z, TV guides, so you could format how you wanted to consume this information.
Saving favourites.
If you use any sort of project management tool, like Canva and all of these things, it’s essentially the ability to put things into to-do lists.
Trello realized that when you have coloured labels, it’s kind of hard to tell if you don’t have colour.
They added a colour-blind friendly mode
You can add patterns to the edges of your labels so that you can differentiate it even if there’s no colour.
The response to this on Twitter was actually incredibly positive, which if you’ve ever been on Twitter, is almost a miracle.
Public radio, NPR.
They’ve gone and looked at all of their podcasts, and they’ve transcribed all of them so that there’s a text equivalent for all of their podcasts.
And then they went and looked at their metrics as all good engineers and designers do, and they realized that their search traffic increased by 6.86%.
Their unique visitors increased by 7.23%.
There was an increase in inbound links and search visibility.
They had increased SEO and keyword visibility.
Visitors who were in sound-sensitive environments or noisy environments were able to still consume podcasts.
As a result, they had a wider reach.
They have a bigger market when you’re able to because now they can easily translate their content to other languages.
They were able to enable search on all of their podcasts.
You could search text and it would reference a specific section of the audio on a podcast.
How should that affect how you write and create documentation and products as a whole?
You should respect the semantics because of native HTML tags like image, caption, table.
Always prefer the native HTML tags over custom ones that you build yourself. Don’t bury context.
Be upfront, summarize your intent.
Have multiple cues, don’t rely just on one visual cue, like colour or geographical location.
Most importantly, write with empathy.
You should approach the experience as a user.
You should create personas.
You should test edge cases.
Quote “accessibility’s an incredibly human discipline. You should also approach it in an incredibly human way.”
Navigation tree tells you what your journey is going to look like.
That’s very important for screen reader users because they just need to know where to go to get what they need.
Always make sure that the way you use headings is consistent because that also helps screen reader users because they don’t have the visual context.
You should always set rules like H1 should be top-level tags, H2 should be subheadings, and you should have a guide of how you use elements.
You should label with context and care.
You should label it in a way that is sufficiently descriptive.
Sometimes when you write alt text for images, it doesn’t sufficiently convey what the image is.
You should also test a common workflow because that’s the only way you know how a product works.
You should go and replicate the user workflow.
If you see something, you should say something.
To iterate once again, you should write with empathy.
Josh Brown shares Spotify’s experience of using internal hackathons to learn about the APIs they’ve developed, in this talk from DevRelCon London 2019.
Stay out of the way during hack week.
Hackers are eager to dive into products!
Learn as much as possible from the developer experience of hack teams that were building on our API and SDK products during Hack Week, of which there were many.
Studying DX from employed developers can be tough.
Avoid collecting feedback on your entire platform.
Be super aware of which resources your internal developers use when they build their hacks.
Take some time at the end of your internal hackathon to interview developers.
One was to stay out of the way during hack week.
Learn as much as possible from the developer experience of hack teams that were building on our API and SDK products during Hack Week, of which there were many.
They are very different from external developers who use your SDK or API and
They often bring background knowledge about a product that an external developer would not have access to.
Avoid collecting feedback on your entire platform.
Pick really specific topics that I wanted to study and do a deep dive on those.
Focusing on a small area can make it actionable for the product team.
Be super aware of which resources your internal developers use when they build their hacks.
Employees at a company tend to have extra access to resources like log files, source code, and other developers who may have worked on the developer tools that they’re going to use.
When hack teams’ internal hack teams stray away from using your public documentation, that decision can be really insightful and could indicate a gap or problem with what’s publicly available on your website for developers.
Take some time at the end of your internal hackathon to interview developers.
One-on-one about their experience with your chosen process or product area.
It helps to bring pre-planned questions and to be really specific in these interviews.
As part of the interview, it’s also really important to take time to understand their day job, the team that they worked with on their hack,
The project goals of the hack
This context really helps place the feedback, makes it actionable and gives you context that can help turn that into something you could bring back to your product team.
All the fun stuff happens with shiny new tech, right? Nah. You can get audiences excited about older tech if you serve them well.
“Your developer advocacy might not look like anyone else’s, and that’s okay. Ours was messaging.” -- Olja
Their developer advocacy structure
Messaging
Enterprise design thinking
Developer essentials badge
Sample in five languages using 3 APIs
Loop
Restless Reinvention
Diverse Empowered Teams
Observe
Reflect
Make
Hills
Playbacks
Sponsor Users
We don’t look after just devs.
The way their product works, they have multiple users, they have application developers and administrators.
If developers came out of university or they were starting in the ’90s,
They were used to having to learn and spend a lot of time finding out about technology, and they had time and they were measured on how well the stuff that they created worked.
The developers that are coming out of universities are used to trying things out for a little while, and then things working.
They don’t want to spend three months learning about something and then building something.
They want to find it, try it, and it then works straight away. And they were having a few problems with this.
For existing developers who like their product, they would support them with new functions.
New developers, who needed a bit of help, needed to accelerate their progress.
Being measured on Time to working code, and so they felt quite sympathetic to their problems.
Your developer advocacy might not look like anyone else’s.
Messaging
Enterprise design thinking
Developer essentials badge
Sample in five languages using 3 APIs
What is MQ and how does it work?
Mainly, they have a server component that is installed and configured, and then they have applications that interact with the server.
And basically what this is for is moving data in messages between systems and applications; in a very low-level explanation.
Two types of users -- admins and developers.
The admins are looking after the server-side of things, and application developers are developing applications.
How they’re interacting, and how things have developed over the years that aren't quite working anymore.
In terms of what it does for business, it connects the pieces and makes everything work together.
Loop
Drive business by helping users achieve their goals.
Restless Reinvention
They observe, reflect, make.
They try to work with diverse teams because at that point -- get the best information and different points of view.
Diverse Empowered Teams
Move faster by empowering diverse teams to act.
Observe
Immerse yourself in the real world.
Reflect
Come together and look within.
Make
Give concrete form to abstract ideas.
Hills
Aligns teams in meaningful user outcomes to achieve.
Playbacks
Stay aligned by regularly exchanging feedback.
Sponsor Users
Invite Users into the work to stay true to real-world needs.
It is the first stage of design thinking.
Putting yourself in the shoes of your user.
Imagine how things work for them, and understand what their problems are.
They work with empathy maps. they try and figure out what their users say, think, do and feel.
Helps them understand when they start building solutions for their users, how best to go about it.
These are statements that they set to themselves after we’ve been through design thinking processes
Have shared understanding between different stakeholders so that everyone knows what it is that we’re working on, what we’re working towards, and what the mission is.
And so from the very starting point, when they were trying to figure out what they wanted to improve
They wanted a developer to be able to understand a little bit about MQ and start a sandbox environment and start a sample application.
They created a platform that wasn’t anything very complicated.
What did they help them to understand?
Just the very basics about what their message is, what MQ is.
How they can stand up and setup, without understanding everything that admins have to understand.
They gave it to them in Docker, with some default configuration in there so that they didn’t have to learn everything.
They were getting good feedback through the websites and through some events.
Admins -- they came in for a user-group meeting,
Try and tell them about everything new that’s happening.
Asked them some questions, what they thought problems were when developers deliver codes.
They tried to get them to empathize with developers.
Why would they deliver such bad codes, that they wouldn’t work? And they didn’t think they were going to engage with the process but they went all out.
They created a badge.
They didn’t start from scratch. They had some materials from the LearnMQ platform that I started with before.
They started really simply, which sounded quite weird. they started with questions, they went around their team and asked everyone what they thought the questions would be for developers to learn.
They created a challenge for developers to actually go and look at some codes. they did it in such a way that they would have some backup and troubleshooting.
They put those samples in GitHub in three ways, so that if they didn’t really want to get their hands dirty and code it from scratch, they could fix some bugs.
Quote - “People are taking this up, and they are now talking to students, taking it to universities, and possibly doing customer workshops.”
MQ Verbs tell you how to interact with the server. And they often say it’s a very elegant API.
Only has 26 verbs, and then you can do everything with those.
Behind each of those, there is a library of material that you have to go through, in order to understand what you need to do.
Admins, they understand all of this, they know how it works. But for developers, they see this, and they tend to move on to something else.
But they came up with all their samples and all the patterns, in different languages. And they’re consistent.
They picked some of the basic patterns, and obviously, they started with Java.
They wrote a lot of their initial material for JMS.
They also touched their MQI, which is the native API. And they have thin wrapper libraries for Go and Node.
They would start with Java, they thought we’d finished, test it, and put out Java.
They went and worked on Go and Node.
Their teams were surrounded by experts, and developers who developed MQ
They wanted to go through the pain that their developers go through, and not ask too many questions.
They tried to look for pointers and tried to solve their problem on their own
They wouldn’t actually ask for more help until they would spend two or three days not being able to do it.
How you drive business growth with Community and why you need a Go-to-Community strategy, not just Go-to-Market.
Organizations realizing the importance of go-to-community rather than go-to-market for driving business growth.
Understanding the existing metrics from go-to-market.
Explaining how metrics for go-to-community has more impact on the community than go-to-market.
Sharing your story is a must when trying to grow.
Treat communities are ongoing research and development function.
Leverage community members and advocates to do the marketing for you!
Marketing does help you grow, but only up to a certain point, every organization depends on the community to drive growth from there.
Making opportunities where no one loses knowledge — everyone gains knowledge.
Language itself can create a sense of hostility in some ways — and something that we should really take seriously.
Expanding the term 'developer' opens up more opportunities for all.
In order to get Go-To-Community integrated into the culture, you need to explain the metrics of community in terms of the known and functioning Go-To-Market strategy.
Tracking sentiment among developers — how did developers feel about the product and how did this influence the company strategy as a whole?
Community + DevRel =. how you listen to your people!
Market side vs Community side: Old way of thinking -- Better Culture: Synthesis of Market and Community.
Sharing stories is one of the most important things we can do as community builders.
The community team is in ways an R+D function
"I dont think there is developer market, there is a developer community, and we need a community team to reach that"
DevRel, Community, Marketing = all diff teams...or is DevRel & community manager = same team.
Let the community do the marketing for you.
Product growth
R&D
Marketing!
Marketing will help you grow, but there will be a ceiling to that growth. If you want to grow beyond that, you will need community. The scale possible with the community can never be possible with marketing.
Marketing is not community building
"Stories we share are tools for driving change" - Sam Ramji
Andreia shares how the OutSystems team worked with their developer community to create apps that would help in the response to COVID-19.
How to mobilize the community?
Communicate the value, internally and externally
Offer the right incentives
Continuously engage with your community.
Promote, promote, and promote a little more.
Over-communicate.
Showing the real value of what you’re offering.
Making sure that people understand why they’re associating themselves.
Set hard criteria on how you can help and what you’re expecting to get back.
There's “so much” volunteers can do and “so much” that a company can do.
Set realistic goals and expectations.
Consistent, transparent, and be as crystal clear as you can.
Be really present.
So many teams-- all remote, never forget to check in.
One size does not fit all.
Some things just don’t work if you scale.
Don’t be afraid to fail.
Quickly get up and make sure that you rally back up again.
Communicate the value, internally and externally
Make sure that the value proposition of what we are communicating to the community is very clear and people see the impact and what it means to be a part of that initiative.
Important to communicate this externally to the community.
Also essential that internally you get that alignment and communication with all the different teams that are being part of that project.
Need to offer the right incentives.
To build a bilateral relationship, you need to give in order to receive.
People are doing the best they can with what they have.
Offering the right incentives to reward them and recognize them for all their hard work is essential.
Continuously engage with your community.
They know that you’re there for them and supporting them when they really need them.
Promote, promote, and promote a little more.
Word of mouth is real. A powerful tool.
So, the more you promote, the more people you’re going to be able to inspire.
More people you’re going to be able to mobilize to be part of the global movement.
Make sure that you’re aligning with all the different teams in terms of communication.
There’s nothing you can do on your own that will create a huge impact.
Working together to make sure to communicate this
Create a major impact because everyone was being communicated and reached by the right channels, by the right people, in the right way.
Give that extra motivation of, “We can do this as a team and that we can leverage our technology for better.”
Have a dedicated communication channel, so, in our case, it was a Slack channel, where we posted multiple daily updates on what we were doing, what the community was doing, and how our internal teams could help participate and collaborate on top of what we were doing.
Probably the most important -- where you actually get the community’s attention.
Leverage the community.
Directors and VPs sending out emails to customers and partners to make sure that they were volunteering and they knew exactly what they could do.
Doing daily posts to the community.
Communicate all the different projects that we were selecting
All the different statuses that the projects were going through.
Official landing page.
Place that had all the information regarding the program.
Be as clear, as consistent, and as transparent as possible.
In a bilateral relationship, you need to give in order to receive.
Support from our developer advocates.
Expert people that we have in the company.
Not only do they know I think anything and everything about the platform and the product but they know everyone internally.
Bridges between the projects and the internal experts.
Visibility in the ecosystem.
Developers from partners and customers participating.
Business synergies.
Look at all the different networks to bridge between the projects that were happening, to scale the projects even more.
External collaboration.
Multiple technology partners wanting to be a part of your project.
Adds extra value to the project.
Opens the door to strategic opportunities.
Always in constant communication with these community members.
Dedicated communication channel where they could talk, not only to members of the organisation but amongst themselves.
Daily syncs, calls with the teams.
Weekly updates on the channels.
Monthly councils
Get together community members from all the different regions.
Talk about the different projects that they were working on.
Figuring out how we could help each other and, basically, getting to know each other.
Social media posts for every project.
Dedicated blog post -- of how everything began.
Press releases for projects
Highlighting projects at events.
Ana Jimenez Santamaria of Bitergia shares metrics and KPIs for dev rel programs that focus on developer engagement, developer acquisition, and developer satisfaction.
Ways to measure your developer programs in terms of acquisition, engagement and satisfaction, but far away from marketing.
More focused on a community perspective.
Dev rel is about building relationships.
Department you came from but always have in mind the real mission and why you were hired as a dev rel and not as a marketing specialist.
‘Cause dev rel is about building relationships, and it’s about community.
It’s really really nice that you track things related to marketing but don’t only do that.
Be near your developers and go to the same places with them.
Try to get the whole picture.
Understanding metrics take a lot of time.
Needs to get the domain knowledge
DevRels need to interpret numbers to get insight for your community.
A dev rel can be hired by a soft foundation.
They can be hired by a company.
They can be hired because they want to manage open source projects.
Or just proprietary software.
Makes it really, really difficult to bring up a standard way of metrics.
Dev rel roles can report to many different departments and those departments have different ways, and different KPIs to measure success.
They’re hired by a foundation.
They're hired for a company.
They report to marketing
They report to engineering.
Mission of a dev rel is always to build relationships with developers.
Developers can be seen in many different profiles or personas.
At the end, everything is related to community issues and ways to measure community.
We can measure the developer growth by software product/project.
Real examples from the CHAOSS community.
Try to analyze the developer retention rate or the developer bounce rate.
Example - Software GrimoireLab, Open source
Activity -> community -> Attraction and retention.
Measure Git, ’cause we are fond of our community, it’s really engaged, it does a lot of Git code, for instance, and that’s a lot of Git commits.
You can see the attracted developers and the last committed developers over a period of time.
Take a look at the data sources about all the different challenges the developer community faces.
All the different data sources are aggregated, all the different channels where our community is.
We can define if my community is a contributors community, is a user community, is a maintainer community, or any other type of community you would like to profile.
Depends on a lot of domain knowledge.
Define a personas pattern.
See the most active community and the most engaged community project among the other ones.
Identify which projects had at some point some activity and then were left like the one on the prospect.
What happened then?
What did we do wrong?
Or what can we do better in order to improve that engagement with the project itself?
Uber OPSO use case
OPSO - open source program office.
Where open source and all the related activities related with open source are centralized and growing inside a company.
Uber wanted to know how efficient they were in answering, enclosing, and merging pull requests.
They wanted to measure GitHub in this case.
They wanted to know how fast they were when measuring Uber developers versus non-Uber developers.
Turns out that they tend to merge non-Uber developers took them more time when, rather than when, they wanted to merit a Uber developer pull request.
What's the ROI -- the metrics to measure them -- explaining it to an employee. With DevRel Qualified Leads, you first set your own metrics that truly reflect the value of the work that you do.
Marketing Qualified Leads
Anything that allows a company to have your information, you are now in their system.
MQ Lead
A lead who has indicated an interest in what a brand has to offer based on marketing efforts.
DevRel Qualified Leads - Business Metric To Prove Value
IT’S AN ACCEPTED TERM IN THE BUSINESS WORLD.
What is DevRel Qualified Leads?
It is an accepted term in the business world.
It highlights our unique value.
The need for a single metric that can be used across the industry.
DQL Cases
Marketing: Case Study or Guest Content
Product: Feedback or Beta Testing
Engineering: Hard-to-solve Bugs
Business Development / Partnerships: Integrations
Recruiting: Potential New Hires
Sales: Potential Customers
Anything that allows a company to have your information, you are now in their system.
And whether or not you qualify as a qualified lead depends on your company,
it depends on your role, it depends on your geographic location, all of those things.
A lead who has indicated an interest in what a brand has to offer based on marketing efforts.
More likely to become a customer than other leads.
Lead is anyone who can provide value to the company.
DevRel Qualified Leads (DQL) - metrics that reflect the talents that we have, metrics that truly reflect the value of the work that we can uniquely do.
Initially, people might link it to the sales aspect of it, but it's better to refactor the term a little than rebranding it because we’re speaking the same language but is also respected by stakeholders and executives throughout the industry.
Metrics to not lose out on potential leads that can be an asset to the organization. (. Who knows whether the person you met at the most recent conference will even apply for the job, let alone whether the hiring manager will hire them. Maybe their application won’t make it through the system because of the one quirky thing about their education, or perhaps they don’t click with the hiring manager.
DevRel has no say in whether that individual gets hired or not, it's totally circumstantial, but DevRel can pass along those connections to the right team in hopes that together, they will be able to accomplish a task that furthers the overarching company goals.
It isn't magic that makes community managers turn into DevRels
all the things that they already have been doing that makes them stumble upon that job in the first place.
The talent of connecting people, bringing people together and making people feeling comfortable and confident and empowered
The need for a single metric that can be used across the industry
“What are your metrics of success?... "It depends" ... that’s not a bad or wrong answer.
DevRel initiative is not going to look exactly the same in every company.
Able to point to a known value, which, as we all know, is an important piece of maintaining a sustainable community team.
Marketing: Case Study or Guest Content
It's someone who might bring value to the marketing team.
They might be someone that has written an awesome article in your forum
Might be a great person to write a case study
Give a customer testimonial
What kinds of questions are you looking for us to answer?
What type of information might be helpful for your efforts?
Product: Feedback or Beta Testing
A particular community member who continues to come back with more and more feedback.
They’re really invested in giving back to our products
pass them directly off to someone on the team who can have that in-depth conversation and really benefit from the community.
They could also be beta testers.
Engineering: Hard-to-solve Bugs
Hard-to-solve bug or someone who’s posted an issue in an open-source repo.
Engineering teams’ willingness to sit down and help them figure out what’s going.
Connecting those two to help them actually solve the problem together.
Business Development / Partnerships: Integrations
Build out that integration with other partner developers.
Recruiting: Potential New Hires
In open-source projects a lot, you’ll find someone who loves your product and is super passionate about it -- might be a fantastic hire.
Sales: Potential Customers
Someone who walks up and we have a five-minute conversation with them at a conference booth, and they wind up being a customer.
The definitive way to attribute value to the activities.
A valuable way to see which activities overall are more effective.
Making introductions between community members and your coworkers
Making introductions between community members.
Foundations of communities are built on relationships.
Empowerment is beneficial for both the community and the company.
Being able to formalize gives a way to show that you are valuable because of the connections,
You’ve assisted in this many people getting hired across the company.
You've been directly involved in getting this much guest content posted
You've been a huge part of these sales because we had a conversation with those people upfront.
Making those connections is the first step in getting a valuable person hired.
The more connections we’re able to make, the more we’re enabling those developers, the less likely they are to churn.
Brandon West from Amazon AWS talks about how to manage a distributed developer relations team, especially where each person on the team tends to travel a lot.
A distributed team that also travels a lot is a double whammy when it comes to potential burn out.
It's better to use the word "distributed" rather than "remote".
Although there are a lot of upsides of distributed work, it affects the peer to peer relationships within the workplace. It is interesting to note that the supervisor to report relationship is not that affected.
Travel, though is great for a lot of people, it can lead to burnout and lower health overall.
As a manager you can follow these few tricks:
Create Logical Groups that reduce the scope of travel and the scope of remote communication that's necessary.
Use your PTO and make sure everyone else in the team is actually doing the same.
Finds other channels to affectively fulfil your targets with minimum travel required.
Make sure you set up clear paths and processes for enabling the types of communication you need.
Make sure everyone closes the loop of conversation and is on the same page when it comes to communication style.
Face to face conversations cannot be replaced. Try to get as much team conversation times as possible.
Don't overcommit yourself and try to make sure no one else on the team is working more than required. The more exciting an opportunity is, the slower or more considerate you should be about accepting that thing
Tell everyone the best things to do somewhere besides work.
You might picture a place far away, expensive, hard to get to, with limited resources, lack of autonomy
You will think about something redundant, resilient, close to the end-user, able to be interconnected but all the nodes can work autonomously as well.
When you have these communications with your team, consider it from their perspective - for them, you're the remote person
Grads are 68% more likely to be interested in remote jobs
This is because that's where the majority of the new jobs are going and there's an uptick in the number of people who want to work remotely.
39% of the employees spend some time working remotely
Working from home has grown by 140% since 2005, 10x faster than office work
If you're someone who's making hiring decisions for managers, you need to be looking for someone who can effectively manage a distributed team.
It's lower stress and you get higher engagement from the people who are based outside of the office
On average, they tend to work about 4 hours more per week while maintaining the same amount of happiness.
You get to be closer to your family
The regular commute and traffic time is saved
Correlated strongly with a deterioration in peer to peer relationships
However, it does not have that same effect on the supervisor to report relationships
This is largely because, for communication, your manager always has to speak with you, having consistent meetings helps to stay up to date, understanding the status of tasks, blockers etc.
But the same communication line between team members are not as necessary or not dictated as a process of being part of the organisation.
When you travel to a new country, these experiences can bond people who travel together. It creates certain emotional bonds and experiences worth cherishing later!
It is correlated with a lower body mass index and a lower blood pressure.
You feel more overwhelmed because of the inability to keep up with work, while it piles up.
It might lead to sleep deprivation, eating poorly, everything else related to your bodily health.
Travelling a lot can strain your personal & coworker relationships.
If teammates that are not necessarily the best match, are travelling, it might lead to arguments/ stress and cause burnout to accelerate.
Distribute the things you're doing into logical groups that reduce the scope of travel and the scope of remote communication that's necessary
These groups can be built
Around geography, like making regional teams.
Around channels, you do not have to travel always to do devrel work. A lot of it can be done via
live streaming on twitch
writing awesome blogs posts
creating technical content
going through open source SDKs, clearing out a few issues.
If you notice people are getting close to a burnout point, you can have rotation within the team for responsibilities.
Make sure that everyone you talk to is actually using their PTO.
Review that and if someone's not using it, make them use it, they need to.
Make sure you have some vacation planned that you're looking forward to.
Find ways for people to do their work without the necessity of travelling
Make sure you have clear paths and guardrails in place for enabling the types of communication that you need.
All the important things need to be in an asynchronous system with a central source of truth that people can refer back to, update on their schedule and know how things are going.
Example:
Brandon's team's weekly standup meeting usually has a 40% attendance because of travel, schedule conflicts, talks etc.
So for this, there's a structure defined for that team meeting, where there's a rolling document where everyone goes and puts their update.
In case you are not able to make the meeting, you can still review what other people are up to, comment/ collaborate on that document and it's totally fine.
Make certain processes for travel-related things that suck, like expense reports, as painless as possible.
It's also very important to make sure everyone's on the same page when it comes to communication style.
Everyone needs to close the loop:
When an instruction is given, it is repeated back to the person who gave the instruction.
This makes sure that the person executing the task and the person signing the task both understand exactly what's happening
It also means that the status must be delivered at the end of the event.
Example:
Someone asks you to do a certain task when they're gone and you agree to it. This is an open loop.
It becomes a closed-loop when you revert back to them, maybe in an email, telling them the status of the work and any action items there further.
If you don't close the loop, if people don't have that teamwide expectation, it leads to a lot of strife and conflict that starts to make those personal relationships within the team degrade.
Face to face
Face to face conversations cannot be replaced.
There's a lot of room to misinterpret things over chat/ email.
Words mean things to different people, especially in a distributed team when language barriers are also there.
Suggestion:
At least once per quarter, get everyone in the same room and talk about all the work you're doing.
Make sure that you make time within that for emergent conversations.
As someone who loves to help, devrel people tend to be willing to do all kinds of different tasks.
But that also leads to a tendency to overcommit yourself, even as a manager.
It is important to ask people to take time to think about the things they commit to.
The more exciting an opportunity is, the slower or more considerate you should be about accepting that thing because we tend to get blinded by that emotion.
As a manager, if you look that someone might have overcommitted themselves or they look on the path of burnout, you should move forward to say that and try to find someone else on the team that might be able to help.
Tell everyone the best things to do somewhere besides work.
As a manager, it might be helpful to put a process in place for that like writing a guide to the city that you've been to the most.
Adding in highlights about a nice hotel which is well positioned, reasonably priced, a transport preference, awesome restaurants to check out or something special for a day trip!
As a manager, you should encourage and help people to take the time to enjoy things that they do.
A nice thing can be to allow someone to bring their family along at some events so that after work they might be able to enjoy and get their time to do things they would love to do.
In this session from DevRelCon London 2019, Josh Dzielak introduces the orbit model, an alternative way of thinking about developer roles within communities.
Software is adopted not sold in the year, 2020.
If you work in dev rel, you work on adoption and adoption requires a different way of thinking.
As the funnel is to conversion, the orbit is to adoption.
Identify your developers with the highest gravity and make a plan for extending their love and reach even further.
Developers have enormous power to choose the tools that they work with from amongst a vast amount of proprietary and open source options.
Developers are drawn to tools that do a difficult job well that have great documentation, complete SDKs and very importantly have a welcoming and knowledgeable community.
Developers adopt software first, and often long before they buy it.
Happens slowly over time.
It can take a developer months to truly adopt new technology.
People expect to get value out of a product, out of new technology for a long time before they actually go and buy it.
Discovery happens with word of mouth and community is really the engine at the centre of all this.
Providing both resources for people to learn how to adopt the thing.
DevRels work on adoption, we also work closely with marketing and sales teams who are a lot more established.
And as a result -- DevRels are forced to think about adoption with that 122-year-old lens, the funnel.
And this leads to problems.
Applied to adoption, the funnel turns into a downward spiral.
Why is it so painful?
From a meet-up even a really successful one, the number of leads that you can say you got is low.
Could be because you didn’t feel comfortable making every attendee give you their email address just to get in the door.
You don’t feel like leads are the right way to judge the success of a meet-up.
These awkward questions come from the funnel mentality, so they’re going to be hard to answer by people like us who work on adoption.
The Orbit Model is an alternative to the funnel that's designed specifically for community-driven adoption.
The goal of the funnel is conversion but the goal of the Orbit is adoption.
The Orbit Model helps you explain what you’re actually trying to do as a dev rel.
Helps you identify and prioritize the developers who should be working with.
“Who’s in my community, and who matters?”
Help you measure and communicate your impact.
Gravity equals love x reach.
Everyone in your community has some amount of gravity, some ability to attract others.
And the gravity that that person has is a product of two things, love and reach.
Love is their love for what you do.
Expert Knowle
High Satisfaction
Part of the thrive
Reach is a measure of how well they can help spread love.
Well-connected
Respected by peers
Passion for teaching
Reserved for ambassadors.
Communicate with them via one-on-one, email, even WhatsApp or texting or DMs on Twitter and Slack
Don’t need many of them, but because each Ambassador counts for quite a bit like their own little community because of the love and the reach that they have.
Folks are passionate about our technology.
Can easily explain what it does and how to use it.
Are connected to some kind of work community or local community.
Might not have the love or the reach of the ambassadors, but can do so, someday.
Folks who have some kind of working integration. some kind of sustained activity.
Most customers fall into this level, and there can be thousands of them.
Helps drive adoption for the community,
Find the ones that can be promoted to fans and learn how to motivate them.
Folks who have read our blog posts watched our talks, kick the tires with one of our sample apps or just followed us on Twitter.
“At some point in the future, many of these observers might need our technology for something.”
Scribble from Mary Thengvall's amazing blog "The DevRel Path To Success: Awareness, Enablement, Engagement", which talks about what are the key elements of a developer relations team.
Foundational Categories- Awareness, Enablement and Engagement
Functions of DevRel - Developer Advocacy, Experience and Community Management
Understanding the balance b/w the three functional categories
Awareness
Making sure that developers know about the product, making them aware of the targetted product's existence.
Enablement
Documentations, guides, tutorials, existing libraries, use-cases, etc. to enable the developers to use your product.
Making developers understand that using your product solves their problems can be a huge plus point for them to adopt the product.
Engagement
Engaging with the community.
Developer Advocacy
Developer Experience
Community management
Responsible for making sure the community is aware
Producing content like blog posts, live streaming, public speaking/talks, etc.
Building relations ships in the tech industry.
Making sure the team is aware of relevant feedback from the community.
Responsible for standardization, accessibility of documentation for developers.
^ allows the team to put a finishing touch after a fantastic talk from the developer advocate at a tech conference.
Gives people the confidence to know that the product can solve their problems with the help of fantastic guides and resources available.
Working with the most engaged community members.
^ those who run meetups, speak at events on the company's behalf.
Goal is to build a stronger community of people as well as connections.
Awareness OF
team's existence
the feedback that the community is willing to provide
types of processes that can be provided
DevRel qualified leads
Enabling to
serve the community better
better communicate with customers
write, speak and code in public.
Engaging co-workers with the community with conferences, social media, forums, etc.
Awareness OF
existence of various products and projects
team and mission
resources
Enabling THEM
get up and running quickly and easily
successful in their role
try new things along with amplification of work
Engaging
using forums, slack, social media, conferences, meetups
contributing and collaborating to move members up the pyramid of engagement
Understand company goals
Find allies in your company
Awareness in the marketing dept.
Enablement in product and engineering.
Engagement in support and customer success team.
Prioritizing your task and working across teams to accomplish goals.
Whenever it has come asking as to "what is the main role of DevRel team"? The answer-- "It totally depends", which definitely raises more doubt in the mind of the person asking it.
Importance of understanding the main role of DevRel.
Empowerment of developer community should be a priority, always.
It is important to understand the difference between metrics and vanity metrics.
Work output might not measure impact but does give short-term numbers to assess the situation.
To successfully prove the value of our work, we need to attach the main goals of the Developer Relations department to the goals that are shared by the company as a whole.
Libby boxes for DevRel team ensure they’re working toward common company goals while still serving the community.
No matter what company you're at -- is to support the company's empowerment of the developer community
A stable Developer Relations team that can easily point to the value they're bringing to the community as well as the company.
Metrics should prove the value and impact of the work
Understanding the difference between metrics and vanity metrics is a must
Items that are easy to track but don’t often speak to the larger business value of the work you’re doing.
Examples:
Social Media Statistics
Number of Downloads
Number of Talks Given or Tutorials Written
What Gaps You’ve Filled (e.g. Technical Support Staff for the Community Forum, Events Management, Social Media Management, Project Manager for Product or Engineering Teams, etc.)
Second category of metrics that are tracked
Example would be like tracking the output of the tasks you have done over a span of time which can give you short term numbers.
These might not be able to measure the impact of the work on your community or company.
Filling gaps
One of the most debated questions -- "Which team or space does DevRel fit in"?
There is no such space or team that can truly define the unique qualities that DevRel brings to the table.
In order to successfully prove the value of our work in a way that the company understands and sees as beneficial, we need to attach the main goals of the Developer Relations department to the goals that are shared by the company as a whole.
This work has to be done in a way the company understands
This work needs to be seen as beneficial
The work that we’re doing needs to be attached to the team goals -> pointing to broader company goals
How can we help our colleagues, using our own unique talents to support their goals, while still providing value to the community?
Gather community opinions and translate them into actionable feedback.
Connect with community members one-on-one and start a relationship
Make introductions between community members and our coworkers
Helps the DevRel team ensure they’re working toward common company goals while still serving the community.
Gives senior leadership a way to see the direct impact the DevRel team
The top row of boxes is for the concepts or ideas that you’re working toward
Lower boxes can be utilized once general ideas are identified for various initiatives one wants to follow.
Gives way to easily trace your day-to-day work back to the company goals as a whole
Yes! Even if you aren't working on DevRel strategies or work for an organization that doesn't reply on proving your values derived from communities. You should!
Attaching our day-to-day work to the broader company goals is how we ensure the longevity of our role.
In order to successfully prove the value of our work in a way that the company understands and sees as beneficial, we need to attach the main goals of the Developer Relations department to the goals that are shared by the company as a whole.
Developer Relations goals are attached to the broader company goals.
Listen to Laura Cowen as she goes around talking about how she developed a community and DevRel culture in IBM making the organisation understand the needs and expectations of the developers.
Define your community
Challenge the status quo to reach where you want
Fund the work properly
Build the internal sub-community within the organization as well
Understand the development and marketing relationship
Defend the target audience, understanding their needs and advocating them
Were more focused on Developer Experience but developers expected community support.
Wanted Java EE Developers to love their product (Liberty) so much that they tell their friends to use it too
Created articles, resources, GitHub codes, YouTube videos, etc.
Created shared expertise within the community
Openness within the community - meeting developers at conferences, talking to people generally, sharing experiences
Whiteboard session at Devoxx 2008 (Belgium) - comparing Java application servers - everyone complained about difficulties starting/ fixing errors and consulting fees.
Wanted to create resources for Liberty to get around this problem.
Realised that they need to create a more developer-focused website for their community.
Frequent updates, adding new articles regularly created engagement, people were coming to the website and interacting
But this became difficult for them with a day job
One developer made in charge of maintaining fresh content, working a day a week dedicated to this.
As it grew, one person was hired full time for regulating this.
Made a strict weekly publishing schedule to maintain a regularity (Made a pipeline)
Executive director motivated developers to contribute to content around Liberty - it worked!
Mentoring them to use the handles
Letting them know the use of hashtags
Creating guidelines around attending conferences
This cannot be forced - social media is genuine and if forced to post/ tweet, it reflects
Developer Advocates were hugely protected by the marketing team
Marketing is good at awareness and hooking people to the product
Marketing helps the product to shine but developers need details as well
Added a trial for developers to try out the product
If registration was added to trial download, 60% of the developers turned away, if not the marketing couldn't collect leads.
Cold calls attracted negative reactions from developers.
Building a developer community is organic and long term.
Marketing needs to work on short term campaign
Quantitative Measures: Numbers of downloads, visits to the website
Qualitative Measures: Quotes from people, their thoughts on the product
Most difficult thing: Keep the focus on who is the end-user & who is the target.
UX Terms: Primary users, secondary users, tertiary users
Developers are the main users
It is difficult to say no, but things should be relevant to the target audience
Having a clear definition of what is needed, helps in this regard.
Yes - Metrics are going up!
More people are talking about the product - getting feedback
Biggest challenges in DevRel is determining which among the numerous possible activities is the most leveraged. Jeff schnieder answers how he and his team solved their challenges at Asana.
“I encourage everyone who hasn’t to see the value and actually connecting with your developers one-on-one so you can learn from their stories and feel their pain.”
It doesn’t really matter if it’s on the phone or through video or in-person,
as long as you’re kind of connecting one-on-one and asking them open-ended questions.
Don’t Assume your developers
Want what you do
Are all the same
Know your product
Put on your researcher Hat
Make your finding in researchable format
Include your stakeholders --
don’t get overprotective by the process.
Frame your findings to support your customers and business.
It’s important to tailor your DevRel initiatives to your company’s business model and your team structure.
Set up objectives for your team.
Determining which of the numerous activities is the most leveraged,
How should the docs be improved
Move to the OpenAPI spec
Writing code examples
Creating SDKs
Speaking at conferences
Fostering a dev community
Answering technical questions
integrating with partners
Quote Our initial thought was, you know, we’re developers so we know what developers want. We’ll just choose the things that seemed useful to us. Wrong.
Generalize developers of your platform
1st Party Developers - Engineers that build integrations on our API.
2nd Party Developers - Work on/for customers.
3rd Party Developers - Build apps for many asana customers to use.
It can be difficult to actually track down the developers and get that first handful of meetings.
Really hard to understand the behaviour of your users until you have one-on-one conversations and meet with them and listen in person.
Not everyone loves your product as much as you do.
Reevaluate our developer experience.
Writing an object hierarchy doc to explain the elements of your product.
Create distinct personas and expand each a bit more.
Creating different developer tracks for each group.
Packaging all of these developer interviews into case studies and presenting them to numerous teams across your organisation.
Cultivating a thriving developer ecosystem is difficult if you can’t get your internal teams excited about the product.
Choose your research methods and goals before you start talking to users.
Ask open-ended questions.
Give people the space to speak their minds.
Get out of your own way, let your developers tell you what they experience.
Come in with an open mind.
If you come in with an opinion, you risk only hearing the evidence that supports that hypothesis.
Interviewing developers.
Developer survey.
Developer community
Feedback form
Documentation
Meeting and researching with 1st party, 2nd part and 3rd party developers.
Organize the feedback into themes
Each section was a different theme
Custom fields to track user stories by dev personas.
Start reframing some of the developers needs to encompass some of the broader customer and business needs.
Represent developers at company planning.
, a predictive framework popularized by Cornell Accounting Professor Robert Libby, allow us to draw directly from the company objectives all the way down to the specific work output we’re working toward during a specific sprint (monthly, quarterly, yearly, etc.)
Let's take a look into knowing the key elements required to make a "DevRel dream team".
Understanding the key roles of DevRel team
What each and every key role does
One of them is the facilitator
Community managers and organizers are often involved in outreach and community events alongside evangelists, both online and offline.
Evangelists are involved in the community events, however, they need to be very familiar with the product being the first point of contact for new developers and businesses.
They (evangelists) also are responsible for getting back to the community with answers from the product teams.
Developer educators, or facilitators end up working mostly online and behind the scenes for the event, offline interactions and technical workshops are their forte'.
Seeing how to structure the DevRel teams as well as knowing how each role fits into core pillars of developer relations is important.
Building a team around those ⬆️ helps in setting the right metrics for each team.
The Evangelist
The Facilitator/ Educator
The Organiser
Those ⬆️ key elements will make sure you have the right mix to pull off great DevRel adventures.
If you are starting out as the sole DevRel, then you might need to fill that very spot yourself.
Once you are expanding, you will have to find out great people to fill in your weak spots.
Person who will stand on the stage and preach to the thousands of developers.
Attends various conferences and meetups to share info about the product
Collecting feedbacks
Showing off the killer presentation with a pinch of memes
Provides the support/acts as a backbone for developers
Documentation
Quick start guides
Running technical training events
Speaking at workshops
Helps in making complex topics digestible
Community folks who bring developers together
Fuel to the community
Helps in maintaining peace and prosperity in the community
Making sure any issues raised are sorted out ASAP
Having the right mix of people always helps brings a balance to the team
Leads to kinds of activities that the developer relations often participates in
Outreach
Community
Product
Education and Support
The real key to building a great team is finding people who understand one another. It might go too far to say that this is the golden ratio of building the ultimate dev rel team but it’s a place to start.
David G Simmons shares the reality, including potential upsides, of making mistakes.
Words used frequently in DevRel
Endeavour
Empathy
Sympathy
Understanding
What is imposter syndrome --
Feeling where we don’t know enough.
We don’t have the answers. So what are we doing here?
This talk is about mistakes and making massive mistakes.
How do we develop empathy and understanding for our users and for our communities and the people around us?
Do it by making mistakes and we do it by making mistakes in public
You don’t have to make a massive mistake like the one you’re about to hear about in public. You can make small ones.
Larger DevRel lessons
Your users are embarrassed to ask stupid questions.
Bringing a sense of compassion and empathy into the community.
Spending Privilege
Few common words used in/part of every day--DevRel
Endeavour
Empathy
Ability to understand and share the feelings of another
From DevRel perspective -- understanding where our developers are coming from, what they are going through.
Sympathy
Feelings of pity and sorrow for someone else’s misfortune.
Understanding
Fails to come without empathy -- one needs empathy to understand someone
From DevRel perspective -- empathize with our users, we understand what they’re going through.
This talk is about mistakes and making massive mistakes.
Even small mistakes can reinforce invalid Imposter Syndrome.
I don’t know what I’m doing here. I just made this massive mistake. I have no idea what I’m doing.
And if I hide that mistake, then I get stuck with it, I’m embarrassed and I have shame about it. And now I feel like somebody’s going to find out about it. And when they find out about it,
Then they’re going to know I’m an imposter and it feeds on itself.
We make it okay for others to make mistakes around us.
You don’t have to make a massive mistake like the one you’re about to hear about in public. You can make small ones.
When you make your mistakes and you admit your mistakes than other people around,
“He’s supposed to know what he’s doing and he did that stupid thing -- So must be okay for me to do that stupid thing or to ask this stupid question.”
Our community and our users don’t make mistakes like this every day but they take this kind of risk every day.
Every time they ask a question in our community.
They’re taking a risk.
They’re saying, “I don’t know this, and maybe I should.”
How we react to that, and how the rest of the community reacts to that is really important in how that community functions.
“You got this”
“We’re here for you”
“Thank you for sharing this, this was amazing”.
“I couldn’t help but cringe or I couldn’t help but laugh, but this helped me in some way”.
Feel what they feel -
Your users are embarrassed to ask stupid questions
Everybody is embarrassed to ask a stupid question.
People will preface the question by saying, “this is a really stupid question” but no question’s stupid. Everybody starts somewhere.
And they feel like imposters for not already knowing the answer.
And so making it okay to ask those questions is really important for the health of our community.
Bringing the sense of compassion and empathy into the community
“I have no idea, but I can go find out for you”. I can connect you to somebody that does. That’s not as somebody says, this is a stupid question. But, that’s not a stupid question. Here’s an answer. Or here’s a person that could answer."
-- by you making mistakes and sharing in public, people feeling the imposter syndrome start feeling, it’s okay for them to make mistakes too.
Your community will support you
Your users will respect you
They start feeling empowered to do the same
“The courage to share your vulnerabilities and mistakes often prompts more people to do the same magnifies your impact.”-- Laura Santamaria
Some of us have more than others. And it’s important to remember that some of us have more than others.
Not everybody can do this.
Underrepresented minorities, women, people of colour, make this a mistake in public, they may end up getting fired for it.
And the ones who have the privilege…. Need to start spending it, hoping to be able to make it easier and less career-ending for other people.
Use this pie analogy because it’s not a pie that there’s only a certain amount of.
Get a pie every day. And your job with that pie is to go home at the end of the day to end my day with no more pie.
You need to get rid of it. Because guess what, tomorrow you’ll get another one.
So, live-tweet your mistakes. Live, if you’re going to do it, do it all. Don’t just tweet the good parts. Don’t just leave, live the good parts out loud. Live the whole thing out loud. -- David G Simmons
Wowza Media’s Director of Developer Relations Amara Graham describes the use of narratives before, during, and after events to get a complete picture of dev rel event success.
Numbers aren’t effective storytellers
Numbers are open to interpretation and they especially have connotations.
Numbers lack context and situational awareness
Numbers are open to interpretation
Numbers have connotations.
Numbers, even in the hands of the well-intended, can become dangerous.
Language
Start adding some of that language together with your numbers
Understand a little bit better about your developer relations activities, especially when we start talking to your different folks within your teams
Happening* is any sort of DevRel activity - blogs, conference talks, workshops, etc.
Before the Happening*
Make sure that you’re evaluating previous iterations.
Setting expectations and setting an event-specific goal.
Ask - Does this align with your target developer persona?
During the Happening*
“How are you feeling about the expectations and goals?”
Do you need to reset anything?
Ask - Where is everyone?
Getting great technical questions
Setting up for job seekers
After he Happening
Did you meet the expectations and goals that you set at the beginning?
Would you do it again?
Stop letting other people, organizations, teams, what have you, define your success.
Success looks different as you’re going across your DevRel activities.
So, if you’re doing a conference, it’s going to be very different from a meetup. If you’re doing a conference talk, it’s going to be very different from the conversations and engagement that you have at booths.
It’s unrealistic to assume that numbers have denotations.
That’s your dictionary definition, even though they’re well regarded as fact.
If we don’t present it with context and we don’t present it with that situational awareness, numbers are not going to gain that themselves.
Numbers are open to interpretation and they especially have connotations.
100%, or you have nothing, 0% -- not really true.
In some cases, you may be working on improving a particular percentage to be within 20% or 30%.
Numbers lack context and situational awareness
Numbers are open to interpretation
Numbers have connotations.
Numbers, even in the hands of the well-intended, can become dangerous.
Start adding some of that language together with your numbers
Understand a little bit better about your developer relations activities, especially when we start talking to your different folks within your teams
Get their perspective about a particular event or activity
See how they describe it.
See how it was impactful for them
The engagements or the connections that they made.
*Happening
the happening for you could be any sort of DevRel activity.
Writing a blog
Conference talk
Hosting a virtual workshop.
All of the things that you don’t have to travel to do.
Make sure that you’re evaluating previous iterations.
“Did it make sense for us to attend this function, or did it make sense for us to be involved with this activity”?
Go back and evaluate
What you did in that particular happening.
Does it make sense to continue doing that?
Setting expectations and setting an event-specific goal.
Ask- Does this align with your target developer persona?
or does it align with some sort of new functionality that we’re releasing?
or a new programming language functionality that’s coming on board.
We live in a very agile world, going back and iterating on these things is really important and it keeps your developer audience engaged.
This is where you need to start shaping your idea of success or your idea of failure.
“How are you feeling about the expectations and goals?”
Internal monologue if you’re there by yourself.
Questions to your team on the day, you know, two or three of the particular things happening as you’re setting up or as you’re getting ready to continue going.
Do you need to reset anything?
But for workshops and conferences, this works really well.
You’re able to level set with your crowd
Ask - Where is everyone?
If they are splitting their time between your webinar and your competitor’s webinar.
Getting great technical questions
Setting up for job seekers
Did you meet the expectations and goals that you set at the beginning?
Would you do it again?
This is where those numbers start to creep in.
I want the best use of time for my developer relations folks. And if we’re not getting those technical questions or we’re not seeing the right developer audience, we’re going to just move on.
Using words and evaluating at every stage is incredibly important.
Check-in with you or with your team, combine it into one comprehensive look so that you can evaluate the entire happening.
If you have a large team or you’re sending a large team to an event
you can collect feedback and run it through sentiment analysis.
If everybody’s responding in kind of a negative manner
worth digging into and understanding.
If it’s things like technical difficulties -- understandable.
You want to share your goals and expectations
Make sure that you’re gathering baselines.
Stop letting other people, organizations, teams, what have you, define your success.
In this talk from DevRelCon London 2016, Phil Leggetter describes his AAARRRP framework for developer relations strategy.
What is the AAARRRP, developer relations framework
The basic steps to use that framework
Dave McClure’s AARRR pirate metricsAcquisition
Activation
Retention.
Referral.
Revenue.
A..AARRR..P
Awareness
AARRR
Product
Using AAARRRP
Define your goals
Identify the activities to achieve those goals.
Plan to execute.
Steps
Define your goals
Mapping of the goals that your company has to the activities that you should undertake to achieve those.
Define activities to meet your goals
Look at the activities, what activities will achieve those goals and how can you undertake them?
Planning the execution -- finding activities that help meet more than one goal.
Complimentary activities
Can you find the complementary nature of one activity meeting more than one goal and feeding into the next?
Execute
Really just taking the output of that and taking the resources, your thoughts about team well-being
Acquisition
What these specifically mean will vary depending on what you’re doing and the company you’re working for.
Activation?
Using your product
Making that first API call or making a number of API calls that you deem as being activated.
Retention.
Can you keep them on the product?
Are they making a few calls and they’re never coming back?
Referral.
Do you get enough people using your product and it’s so good that they start to invite other people to it?
Do you have a referral mechanism?
Revenue.
You need to get paid. So, it is an obvious metric.
Raising awareness about your product
Not pushing folks to sign up but letting them know that you exist.
Building the libraries
Writing documentation
Providing feedback on the product.
Define your goals
So, do I want to acquire new users?
Do I want to activate users?
Do I want to get users to refer?
Do I want product feedback?
Identify the activities to achieve those goals.
Plan to execute.
Framework itself doesn’t talk about how you plan your execution.
You need to take the output of this and ultimately take in a number of other factors.
Define your goals with AAARRP
Define activities to meet your goals
Identify what the activities are that achieve goals.
Can you find these activities that meet more than one goal?
That’s a good way of utilizing your time well.
And can you find complementary activities, something that feeds into the next?
Planning the execution -- finding activities that help meet more than one goal.
Some weighting.
Need to put some additional effort into certain things such as documentation, so we’ve added a weighting column.
Complimentary activities
Can you find complementary activities?
An efficiency measure
It’s a natural flow in how you work.
“If we can improve the product and then we can create content demonstrating about how we can improve the product”
We can define how we attempt our developer relations, strategy and then do a talk on it, it naturally feeds into the next thing.
So, we’re creating content. And in creating the content, we increase awareness.
Execute
Guided by your company and team’s values.
Team headcount.
Budgets.
Team well beings
Managing Burnouts
Taking feedbacks
Communication
Evangelism Or Advocacy
Team member responsibilities
You look at the activities that you’re doing and it defines the type of work you’re doing. Whether you’re an evangelist or an advocate.
Advocacy is a two-way conversation between the customers and the product and engineering teams.
Evangelist is more you’re given the product as the first customer, and then you take that to market, the developer market.
Many organizations group their teams and the activities that they do by function.
Building products, writing documentation, doing API tools, SDKs and libraries. Community, -- startup or general community activities.
Developer relations point of view, you probably sit in the outreach marketing.
As creative individuals -- It’s very difficult to pigeon into doing just one function.
Allow individuals to work from end to end, through involvement in the product, involvement in documentation, the API tools libraries, community involvement and outreach.
Christiano Betta talks about the importance of creating different tools and collecting metrics, especially for startups helping them grow more with a small team!
Understanding different programs at Paypal
There were developed gradually over time and not at once
Internal tools help the Developer Advocates be in sync with the latest technology by getting them to build projects
Building tools is especially beneficial for startups - do more with fewer people
Collecting metrics is a great way to increase the efficiency
Someone from the team should be in charge of what data needs to be collected and what tools need to be built around it.
Did not start at once, created all these overtime
"We should create internal tools and services, and external-facing properties, in order to help the team deliver more, faster, and better than before."
To stay sharp your skills need training
Going and meeting tons of developers every day, you need to keep up with the technology.
You can't stay up to date if you don't have some projects to work on.
Get to play with a lot of new tech
As the team grows, you need to do more with the same people every year - increasing efficiency.
Eliminate the repetitive tasks and simplify the process
It is important especially for startups to build side projects - tools that simplify the process to do more
Slack - It was a side project build to help people at Flikr communicate effectively
Made a whole ticketing system with metrics that helped effectively to get the engagement rates of the audience.
This was extremely useful for the operations team that ran hackathons
Knew metrics for each city to target catering necessary stuff to avoid overselling or underselling the event
Check-in system was very useful to know how many actually attended the event
Eg.: For the first year had customized badges for everyone but 50% badges were never picked up
These were expensive
So came up with a solution of printing with transparent labels
Saved a lot of cost for the event!
Started collecting information about each Hack being developed at the hackathon.
Analysed which product was being used in which hack.
Got to know how many people were interested in the technology.
Shared the information with the partners as well and it was extremely useful.
Clock, twitter wall etc were developed to encourage participants getting engaged with social media
Developed a customised CRM tool to keep track of everything
Initially used a spreadsheet which became messy to converted it into a simple tool for everyone to use
Made a ton of sample code repositories to standardize the experience of the tech talks
URL Shorteners
Sharktank apps
Metrics for iOS and Android
Hubot
Code of Conduct for the hackathon
If you're a startup, increasing the workforce is not the best way to increase efficiency
With the same number of people in the team, they noticed
195% increase in tickets
223% increase in attendance
~115% of confirmed attendance
~65% of attendance presented
934 hacks being presented
487 of them were unique
Got to know the most popular languages and tools being used at the hackathons
Doubled the number of events each year, with not so significant increase in hires
This is because they were able to do more with the same people each year.
Someone from the team should be in charge of strategising how to collect this data and how to build tools to help collect this data effectively.
Bear Douglas highlights the best ways to use that feedback to support your company’s product roadmap and broader strategy.
Communicate Consistently
Finding channels that work
Assigning somebody from the DevRel team to show up to stand-ups.
You’ll always have people’s ear when you’re there with them in person.
Giving context in the moment
Bring good or neutral news as often as bad news.
Get your developers to come and do a brown bag with people who are building your platform.
Be both Filter and Funnel
Dig deeper on customer requests
Communication is key
People might want things fixed now.
They think that you might have infinite engineering capacity.
Communicating back with customers.
Close the loop
Be transparent about the feature status
Show internal teams their impact
It’s always an ongoing process and it’s different as teams grow.
It’s different as you get new leadership.
Every company you’re going to be working at is slightly different.
Be consistent about your communication, and that means finding new channels always, that work, the more that you can be what they consider an effective filter and funnel of information.
Make sure that you’re closing the loop with both your end customers and your product managers, that’s when people will really understand what dev advocacy is and how it fits into the production process.
You are the reliable transmitter of information feedback at scale, qualitative feedback at scale.
One of the key differentiators is what you’re doing to bring back developer feedback into your product.
How are you really advocating for their needs, their requests as it gets baked into your product process?
James Ward called out in a great talk called “The Seven Deadly Sins of Developer Evangelism” is a bridge to nowhere.
Evangelists talk to a lot of people day in and day out.
Can be really hard to take the time and consolidate that feedback and make sure that it gets heard, but that is the crux of what we do.
You have to establish with people what you do and what exactly your role is.
There’s a lot of work to be done especially as you’re in a larger company just establishing who on earth you are and why you have any credibility talking about what your customers and what your developers want.
Secret step one – is the legwork of giving people inside your company context on who you are and why you’re saying all these things.
Creating a consistent cadence of feedback so the product teams know that you’re going to be coming to them and they know that you’re going to have something valuable to say.
Finding channels that work
These will change as your company grows.
They’ll change as teams grow
they’ll change based on team preference.
Assigning somebody from the DevRel team to show up to stand-ups.
You can weigh in on feedback because you’re there in person.
You’ll always have people’s ear when you’re there with them in person.
Giving context in the moment
It’s easy to engage in that conversation rather than it just being a one-line piece of non-contextualized feedback.
Bring good or neutral news as often as bad news.
Don’t have to be happy sunshine all the time especially if it’s a lie, but ….
Positive to neutral news is just as important as bad news and information about what’s broken.
Get your developers to come and do a brown bag with people who are building your platform.
Make the first one good, vet that first speaker because if you gather an engineering team together and they come and they get great insight from this developer, they’re much more likely to come back in the future.
How do you be both a good filter and a funnel?
Why do you want feature x? What are you trying to do with it?
And once you get past the solution that they’re asking for and to the need -- share with the product manager.
People might want things fixed now.
They always want things fixed now because they don’t have to face the trade-offs.
They think that you might have infinite engineering capacity.
Like you’re a big company, you’re a big name, so how many people are working on your API, like 50, 60?
You can probably fix this in a matter of days.
Communicating back with customers.
Being transparent about what your trade-offs are will give them much more leeway to be patient with you.
Important, both the people who are giving you feedback and the people to who you’re sending feedback to.
Be transparent about the feature status
Have conversations transparently with your developers.
Incredibly valuable both for your product team and for your devs getting an understanding of markets and problems being addressed.
Show internal teams their impact
Happy news for people to see the impact that they’ve had on other people.
One or two slides at the beginning of meetups that talked about how we were keeping customers happy and excited.
How are we keeping customers both happy and excited?
- Themed Hackathon (Winners go to San Jose!)
- Meetup Series of tech-focused talks on commerce
- Startups get free processing for the first 18 months
- Free office space to 6 startups for 6 months
- Talks series
Jessica West, who heads up developer relations for LaunchDarkly, lays out the importance to any developer relations programme of having the support and commitment of the company’s leadership.
Three types of executives
They get it.
Middle ground.
No clue.
Implement Strategy
Program your initiatives
Creating measurements
Communication
The key is that you need to understand your value to the executive team.
Then you need to use that to measure against their priorities.
Defining executive buy-in
Looks different for a lot of places.
For the purpose of this talk, executive buy-in is an executive that understands your goals at a high level and advocates for you.
Not only defends you but advocates for you and says yes I understand what this person is doing, here’s the value they bring in, and I am behind it 100%.
Questions to ask executives
Overall value.
Success Factors
Teamwork
Communication
They get it.
They’re on your page.
They have a clear plan, there’s no question on budget or initiatives.
They’re all in.
Middle ground.
Understand developer relations.
They think it’s a cool thing, I’ve heard it and they’re “bought-in” and I do quotes and we’ll talk about that in a minute.
No clue.
They’re not quite sure what they need
“Dev rel” and they’re like “Yeah I don’t know. I don’t need to talk about that”.
How do you maintain buy-in and make sure there is no single point of failure?
Because yes they bought in but it doesn’t mean they’re always going to be bought in.
How can you maintain it?
Communication
Internal evangelism
Create a Roadbook for your future advocates so they know when they come in.
What does it mean to be an onboarding developer advocate at your specific company?
Ultimately you’re going to be fighting an uphill battle, and if your executive doesn’t have that buy-in, there’s not a lot of point for anything else. -- look for another job. ~ Speaker’s opinion.
Where a lot of developer relations departments and teams are right now.
The executive is there, they’ve heard of it.
How do we measure and execute? Not sure, kind of in-between space.
Ask more questions.
Make a clear path to align company values with yours.
Discussing what success factors look like for that department.
Communication, Teamwork, and ultimately, some strategy questions.
“Why do you think developer relations are important?
What value do you think it brings?
What are you looking to get out of dev rel?”
If the answer’s “I don’t know”. --- maybe it’s time for another job search.
If you have that question and they say they saw another company doing it and that’s the only reason they have, that’s a warning sign.
What does a successful dev rel person or team look like?
“How are you measuring success?”
And not just in developer relations but in the whole company.
How are they measuring success for Engineering? For Marketing? For Sales?
What does success look like to the board?
How is that divided amongst the whole company?
What does Marketing do, what do Sales do, what does BizDev, do you even have a BizDev?
Do you have a Customer Success team?
Do you have an Education team?
Changes in scale from companies from 0 to 50, 50 onwards and that could look different at one 50 person company to another, or even 1,000 person company.
How is the goal distributed?
And are stakeholders goals being represented around the team?
What goals are associated with them?
Are those goals then represented in your team?
How are they being found?
Communication
How do you currently communicate?
Are there newsletters that go internally? Externally? Is it all in a forum?
You can see how they communicate within departments and how you can communicate as a developer relations department.
How is communication handled between other departments?
Looks different for a lot of places.
For the purpose of this talk, executive buy-in is an executive that understands your goals at a high level and advocates for you.
Not only defends you but advocates for you and says yes I understand what this person is doing, here’s the value they bring in, and I am behind it 100%.
It is a tough place where people say “I believe in developer relations but I’m not quite sure how to measure and execute it”.
You might be going back and forth but you have a path and it may not always be clear.
Digging in and going back to those questions you have to ask the executive team.
Help start lining up your strategy and your goals.
Program your initiatives
Setting up programs for what you’re working on.
Creating measurements
What is it that you are measuring?
You need to set that measurement up. And with that reporting ideally. And then
Communication
Segmenting your developer relations teams or your developer relations initiatives into programs is really beneficial.
It May look like an ambassador program or a hackathon program,
Different types of events.
Education initiative.
Segment into programs and then you can have clear outcomes.
Developer Engagements
How many people were in your audience?
I’m giving a talk here so I can report back that x many people showed up and heard me speak.
Example - Goal as a company and we want to be in this forum, and we want to measure how many users are on there, and how many active users are there.
Communicate internally.
Because then nobody in your company knows what you did.
They think you’re doing work.
But you have to communicate that. And that may look different in a lot of different places.
Letting the company know what you’re working on is really key.
Important because they may not know and maybe they missed the email because we get a lot of them.
That’s really big and it won’t take much of your time.
Doing an internal wiki to showcase your work.
Have a homepage page that shows what we’re up to, here’s what we’re working on, and come talk to us about it.
Sitting in on other department meetings.
Coming into your partner department and going and asking what they’re up to.
Learning about what they are working on once a month or whatever that cadence looks like is really important.
Doing event recap internally and externally.
Do a quick recap on why you thought it was important for the developer community.
Team meetings
Having an open invitation for any department to come to join your teams.
Let's take a dive into learning what flywheels are and how to make them, eventually using them to build better communities.
Every community builder out there has felt like this at some point -- finding that initial traction with ongoing discussions can be hard.
Start with easy discussions, like introduction posts.
Experiment with writing posts
Creating a regular or ritual post
The point with all of these mini flywheels is you can’t write stuff and expect magic to happen, you need to find actions to elevate your content.
Great communities are built on great ethics, kindness, and human behavior.
Build all that ⬆️ into your community, one small flywheel at a time.
Community guidelines do not make a great culture, actions do.
Having a flywheel that encourages great community culture not only encourages others to copy your ‘good actions, but featuring selected community activities also indicates things you want to see within the community.
Giving and helping are at the heart of great communities.
Community culture does not happen overnight.
Flywheels take practice, lots and lots of practice. Failing is a part of the process.
Flywheels are the things you do, the process, the daily tasks.
The main challenge faced by a community builder -- trying to achieve a constant flow of activity.
A thriving community is one that feels like there is the right balance of activity.
more discussions
more members
creating more value
events that matter
more connection
Consider funnels in terms of flywheels.
Effective flywheel creates energy
Energy leads to growth 📈
Instead of funnels, we are using flywheels
An effective flywheel creates energy or traction, which then naturally leads to growth.
The key is to figure out a set of actions that support each other and keep doing them
bring energy and traction, usually in the form of more or higher quality activity
add value to the community
align with your goals and vision
A flywheel or multiple connected flywheels have grown and evolved there will be a time it comes to a natural end.
What worked 5 or 10 years ago most certainly won’t work today.
flywheel actions like this will help you get where you want to be
people will naturally gravitate towards you when you come to launch a blog, a newsletter, podcast or a community.
when you have that gravity = people join your community!
Knowing your people
Conversing with them
Creating something of value
“I want more members” flywheels
Think about what it is members need
How you can align that to your community vision
Start by getting to know your people.
Instead of subscribing to their newsletter, you follow them. Bonus points for building trust by participating in the conversation.
The above are a few examples of creating flywheels and how it evolves further using Twitter as a real-life example can be seen below.
Gary Niemen share their story of how their approach to documentation has changed at Spotify, drawing parallels with Joseph Campbell’s Hero’s Journey framework.
The Hero’s Journey and how they are solving technical documentation at Spotify.
treating docs like code.
What have we learned?
Keep focused on the key problem
Keep the solution simple so it just works?
Fiercely optimize for the engineer.
Enable others to build on the platform
Standardize and centralize.
What’s next?
They need to work more on trust and maintenance.
Open-sourcing TechDocs
They haven't yet solved in-code documentation. (They may have by now -- given its 2 years from the conference)
At Spotify, they have about 1,500 engineers and a lot of the engineers are making tours or platforms for other engineers at Spotify.
There’s a great need for technical documentation.
Spotify’s culture of the teams can work in the way they want, it happened over time that when teams realized they wanted to do some technical documentation
they would do it sometimes in Confluence
they would do it sometimes in Google Docs
There was tons of technical documentation spread everywhere.
And of course, then other engineers looking for this documentation, couldn’t find it when they needed it.
They had a search engine, but it didn’t work that well. And it broke after a while, so it was a sort of chaotic situation.
Not finding the information that you need -- number three blocker. So yes, it’s a problem worth solving.
Their technical writers were spread around the infrastructure teams and they were solving smaller problems within the individual groups.
They weren’t solving the big problem for Spotify at all, they were solving individual problems.
Their call to adventure started when one of their writers spotted a talk that Google had done about three years ago, at the docs conference.
Google had exactly the same problems that had been spotted in Spotify's organization
Coincidentally, they were about a week away from Hack Week at Spotify.
they decided to try and just do something like what they saw Google had done.
And they did that and it worked out quite well, and they showed it off to people.
What would it take to do this really well here at Spotify?
Docs Like Code approach.
Could I give up my craft, in a way, that I’ve been working with for years? And of course the answer is yes, otherwise I wouldn’t be here today.
There were three technical writers in a team.
And they had a hypothesis.
They did some user research to validate the hypothesis that they had, not only for the solution but for mainly the problem.
They got started,
They had their team
They were gonna build something like what they had done in Hack Week and something like the Google thing.
And so they spent weeks and weeks with complex designs and processes, complicated architectural design and this was it.
Within a couple of weeks, they got out an alpha version of what they called TechDocs.
Discoverability and findability
Findability, you know what you’re looking for, that’s search.
Discoverability, you don’t know what you’re looking for, but you want to discover it, that’s a problem of technical documentation.
Trust, how can you trust…
How can you trust what you find?
Maintenance
It’s very easy to create documents, but or documentation, but how do you maintain it afterwards. That often gets forgotten.
Feedback loop
That is about somebody making comments on a piece of documentation, that those comments would get to the one who, or the team who owns that documentation and they will correct it and then you get a feedback loop.
Hidden knowledge
That's many engineers having lots of knowledge that’s in their heads and it’s not shared.
Ownership
is a bit connected to no handover process.
Documentation has to be owned. If it’s not owned, it will absolutely decay over time.
And then a handover process needs to be in place otherwise you won’t have ownership eventually.
Used and useful
Teams who create documentation really wanna know that it’s used and that it’s useful for their own, you know, they put a lot of work into putting some documentation up and they need to know.
Adoption and engagement
There are often different use cases, and different needs, you have to think about that you can’t just ignore that.
Engineers get stuck and they want to use documentation to get unstuck,
Then you wanna help them fast.
They want to get unstuck fast, so that really is the key problem underneath all this.
Basic how-to-do tech documentation at scale.
Enabling the engineers so just make it super easy, the documentation is as close to the code as possible.
It’s in markdown, so it’s super easy and they provide navigation.
Super easy for engineers, in line with their workflow completely in the tools that they’re using every day.
Information card (trust card eventually)
For each documentation site, you’ve got the owner, they get that from GitHub, the doc was last updated, they get that from GitHub, the open issues again.
Feedback loop,
Users click that and they go directly into GitHub and they can submit a PR
Users create and highlight a piece of text and select that for opening a GitHub issue.
Doc home page
Addressing discoverability and findability.
Reward is the impact that they’re having in the organization and the love that they get for TechDocs.
Docs Like Code plus -- they’re really having an impact on the organization.
Lots of positive feedback.
What’s their success factors?
A cross-functional team
Was absolutely essential.
They were solving a real problem in the organization.
Embraced Docs Like Code
Quick development of a minimum, lovable product.
Good adoption
Collaboration
They had a clear and inspiring vision.
This is convincing other technical writers that Docs Like Code is the way to go! Okay, no one got that.
So this is return, the elixir is the Holy Grail
Docs Like Code has been the Holy Grail.
How experienced community leaders from various backgrounds started building community and what worked for them.
The difficulty for developer relations has always been how to collect quantitative data to demonstrate value, and most teams approach this in different ways based on team size and company stage.
In the talk, we examine what tales you can tell to assist leadership to understand what you do, which ones are beneficial, and why data presentation is so important.
The first thing you will hear from any experienced person about metrics is "It depends" -- "It totally depends", plus they also might give a smirk or say "okay! -- cutting right to the chase, are we!?", cause this is one of the hardest questions out there.
Metrics depends on the questions we're asking. We need to ask why first. Why do we need metrics? Where we are? What are the problems we are trying to solve?
It depends, where you are, what state you are at
If you go down the metrics you want to have, you are missing the point.
What answers are you trying to solve?
Start Small
Ask: What your community is capable of?
Keep challenging yourself.
Establish a baseline
Build from there
Find areas of growth.
Establish a focus on where to grow.
Use vanity metrics as an exploration point, investigate and dig deeper.
Provide context to each metric.
"Why is this metric important?"
"How does it align with business goals"
"What decisions will this metric help us make?"
Here's what we are doing.
Here's the success.
Here's the impact on the company.
Here's the impact it had on the community.
When it comes to community designing-think of it as system-owned feedback loops. -- @joenash
Community members want to get some value, a useful way to look at engagement would be tracking activities that provide that value to the members.
Instead of building up a huge infrastructure — how can you run smaller, more mindful tests to test out if your metrics are measuring the right things.[02:08]How do you know if a metric isn't working? How do you know if a metric isn't working? Look at the type of community we want to serve, and how is it compared to the community that we're actively serving.
There is a lifecycle of community and members, and that's ok. "Once you solve their problem, they will drop out and may never come back. That is just the natural lifecycle and it is important to understand that."
@Mary
Dev-rel Qualified Leads
Listen to the community first before your sales pitch.
@Matthew: Leads.
@Joe: Number of commits made by GitHub student users.
Not marketing
Not sales
Not an audience
Twitter Spaces fireside chat as we discuss growing healthy open-source communities with Brian Douglas, Developer Advocate at GitHub.
Structuring the project with promotion paths
Hierarchy of advancement in open source projects
Holding yourself accountable for the communities and making sure you start initiatives to stay interested.
Setting clear paths for learning and advancement.
Establishing your intentions, boundaries, and interests — and communicating that (or being open to hearing this is so important!
structure
knowing who to talk to
documentation
steps how to contribute
the architecture
structuring the project with promotion paths
hierarchy of advancement in open source projects
allows for buying and learning
setting clear paths for learning and advancement
Have your readme at the bare minimum. Make it easier for the newbies!
Holding yourself accountable for the communities and making sure you start initiatives to stay interested.
Make sure your community shares the same goal as you.
Not accepting contributions in open-source == respectfully drawing a line about how much and what kind of engagement you want from the community,
Documentation (blog posts, guides, etc) and paying attention to the little details including down to social cards is super helpful especially in telling stories and intention.
Intentionally you're going to have a solution written in the issue, provide an easy win.
Providing mentorship and help.
Giving credit where you can.
How does one move up in their organization as a DevRel? What does that "up" even look like if it even exists! Let's take notes from Chris Noring who is a Developer Advocate at Microsoft.
Promotions don't just happen by hard work, it's a mental shfit, it's a promotional comapaign, it's a ton of work. But for the right company for the right mission, it will be worth it.
If you already have a career in DevRel, you must've already done all/most of the following-
Created written content
Created video content
Spoken at meetups and conferences
Working with the product team to advocate for user's feedback
Okay, so that's all done, what comes next? How does one move up in their organization and what does this "up" look like?
Managing various functions or teams.
Genuine interest in people and wanting to see them grow is important if you choose this path.
This is a great option if you want to continue what you are already doing.
It's all about the impact and choosing your time wisely.
Time being a finite resource, make sure you make it count.
List of did I questions --
Improve the product?
DevRel was hired to grow the product in some way or another.
Change the way we work?
Finding a way your team and you perform tasks more efficiently.
Suggesting ways to do the job, better.
Are people aware of the work?
Making sure that people are aware of the work that you do.
Internal communities shouldn't be left out. Let the people you are working with know what you are up to.
Helps in increasing trust once people start seeing you as someone who brings about changes and comes with valuable input.
Measuring Impacts?
The aim should be to constantly measure the impacts of almost everything. But can all activities be measured in terms of impact? Arguably, yes and no, but that at least gives you a little push to measure activities you do.
If you can't put in terms of numbers, become a storyteller. Stories are way easier to explain than numbers.
One definitely needs to keep growing their skills. If you are a great content creator and struggle to strategize or talk to management -- learn how to.
Write a strategy doc
Missions, Visions and the impacts of the work that you are doing.
Put yourself in a manager's position
Whatever position you are aiming for-- put yourself in their shoes and think about how they would their jobs and how they formulate their strategies for such a massive crowd under them.
Looks at their way of communicating -- their style of email writing.
Basically, watch 👀 and learn.
Be brave
Opportunities come knocking? Take it!
Fire, passion, courage, Rambo it!
Things will be outside your comfort zone -- adopt a growth mindset.
Laugh in the face of hardship
Times might get tough, high-level management, politics
Get a mentor
There's always someone who has taken the same path before as you. Even though their journey might not be your journey, listen, there's something to be learnt about human behaviour.
Tell people you want up
Tell people you work with/around you that you want to "up".
Align yourself to the mission.
Committing publicly pushes you harder.
Having/Making the manager believe in you
The blog mentioned about "having" a manager that believes in you, will make you deliver above your ability. It's true, but if you don't "have" one, "make" them believe in you by working hard.
It's sometimes very hard to navigate being a manager or mange things at a high-level cause it's all about politics. Sometimes you need to circle the problem and listen and just live to fight another day.
Orbit CEO Patrick Woods and Community Lead Rosie Sherry, discuss how you manage a community at scale and the lessons learned scaling up along the way with Ben Lang, Community Lead at Notion.
Notion really focused on the top of the funnel i.e. user acquisition.
From there, the Ambassador program proved useful in building community.
Educating the community.
Identifying power users, and making the power users feel valued.
Investing early in communities helps in the long run.
The biggest pieces initially starting up the community were templates and the ambassador program.
Two things they focused on: Top of funnel sign-ups, helping users understand how to use notion better.
Lessons learned from empowering ambassadors -- work to make sure they're feeling as supported as possible and helping them tap into what they manage most
Fostering better relationships with core users - making people who already value your product feel valued.
Word of mouth is still a very reliable and trustworthy tool that can be leveraged by building genuine community leads.
Notion employee's favourite Notion tool? -- keyboard shortcuts, callouts, toggles,
Notion's unique artwork has helped achieve a unique branding of its own. It has also become a huge marketplace for templates, logos, characters, and all sorts of artwork inspired by existing Notion's theme.
No like for real, there are always people out there who genuinely believe in the product and do not look for any monetary value.
For folks likes these, being part of the community, contributing toward's the growth of the product is more satisfying than the monetary value to compensate for their time invested in the process.
Systemize things faster.
Build systems and processes.
Document everything whenever possible.
A research-based framework for recognising and managing overwork.
Burnout is a recurring point of discussion amongst dev rel practitioners. What can we do to recognise and avoid burnout before it’s too late? Anjuan Simmons shares practical advice in this talk from DevRelCon London 2019.
The emotional cost in the form of burnout in the software industry is unaccounted for.
Burnout leads to three major consequences
Exhaustion
Cynicism and detachment
Sense of ineffectiveness and lack of accomplishment
Taking a break from social media helps. If you can't do it permanently, restrict it to whatever's important.
Health -- burnout takes a physical toll on the body.
Staying hydrated.
Getting enough sleep.
Physical activity to keep your body moving.
The emotional cost in the software industry is unaccounted for.
A lot of people forget about this emotional cost which is caused by burnout.
There's always new technologies and new tools and new frameworks that need to be learnt.
To always keep shipping -- always shipping code, values to customers and proving worth to the business.
Increased workload.
Psychological syndrome leads to three major consequences
Exhaustion
Cynicism and detachment
Sense of ineffectiveness and lack of accomplishment
The ongoing feelings that today's resources aren't enough to meet tomorrow's demands.
Emotional Exhaustion
Depersonalisation
Reduced personal accomplishment
Research by Gallup shows -- out of 7.5K employees, 23% reported feeling burned out at least sometimes.
Another 20% reported feeling burnout very often or always.
40% felt burned out sometimes.
Around 2/3rd of full-time workers experience burnout on the job, i.e 66%
Feelings tired and having stress, elevated blood pressure and increased heart rate.
Progression of mood from being sad, to being terrified to having outbursts of anger.
Bedridden or end up in emergency rooms cause they are "too tired" and "exhauster" from burnout.
Hiring coaches to tackle burnout in employees
Escapism
Nice vacation -- make sure you don't make vacation into work -- trying to click best pictures everywhere.
We try to do so much work to show we are not working.
50 in the image is 50 units of work, units can be anything based on your work.
The ideal line would be a straight line where every day an equal amount of work is done and by day 10 we get it down to zero.
If you are working under the line, then you are burning out.
Relationships
Developing connections
Engagement between coworkers
Get-togethers
Having a gift card that requires two people to use them.
Getting out and meeting in person and working together.
Microsoft’s Sarah Thiam spoke at DevRelCon London 2019 about tracking community metrics without crossing the line into creepiness.
3 Step Process
Listening
When push comes to shove and everything is happening really, really quickly, it’s hard to remember to listen.
Function as a team, don’t function as individuals.
Acting on feedback
If you create something, you have a responsibility to listen, but you also have an accountability to act on the feedback that you will receive.
Optimising
How do you optimize it a step further so that you can not only just meet requirements but also lead the conversation?
Anything in the developer ecosystem, things are always gonna change, things always need to refresh, and this is the only way that will keep relevant, and to keep improving.
It’s around the business value that
As dev rel professionals, we are paid to do a job.
And at the end of the day, those stakeholders, in order to continue their investment, will continue to ask us
“What is it exactly that you’re doing?
What is the business impact you’re bringing back to our business?
Continue to invest in your travel, your budget, your swag, and your stickers?”
How exactly are we gonna format this?
How do we avoid commoditizing community connections?
Listening
Acting on feedback
Optimising
Listening is something that is easily forgotten.
When push comes to shove and everything is happening really, really quickly, it’s hard to remember to listen.
It’s hard to remember when you are being tasked with a certain thing and expected to deliver, it’s hard to remember to listen to your teammates around as well.
Function as a team, don’t function as individuals.
Lots of feedback questions
What is it that you’re not comfortable about?
What do you think the reporting needs to entail, and what do you want to be able to put down into a form so that we can record what you’re doing?
So, two things that we heard, and these are my learnings, I’m gonna do both at the same time.
How far can someone go to violate privacy in order to do well at their job, or to be able to prove their impact?
Have a reporting program that you can fall back on that is able to respect people’s privacy.
Only trusted people will be more open with their feedback.
Be more invested to give you better engagement and better feedback for you to improve that technology
It’s a symbiotic relationship
Oh, I’ve done 10 community connections, “I’ve done 10 trips, duh, duh, duh, duh, duh” it becomes a number. And, by making these things a number, are we dumbing it down to something that is so much less than the meaningful relationships that we make?
If you create something, you have a responsibility to listen, but you also have an accountability to act on the feedback that you will receive.
It’s gonna be really redundant if you just leave that aside, or you don’t demonstrate how that has directly connected to you building your program.
So, acting on feedback was really important.
Put in a baseline requirement of how privacy is key.
Only focus on publicly available information.
Example --
Only things that people have posted up on their public Twitter sites if it’s not privatized.
They posted it on a public Facebook group and not a closed Facebook group.
Use the GDPR standards.
European standard for privacy.
Use this as a building foundation for you to build up additional requirements that you wanna add to privacy filters.
Keep the reporting process a bit more open, and encourage more authentic dev rea behaviour.
Let people continue doing as they are doing without feeling pigeonholed.
Acting on that feedback
Really important to defend authentic DevRel behaviour.
Being able to provide the right metrics.
Metrics drive behaviour
If something is celebrated in your company or your team, it’s going to influence the way that people act moving forward -- make sure that you have the right metrics in place.
Authentic dev rea behaviour, we have metrics that are qualitative and quantitative at the same time.
Defend authentic dev rel behaviour
Come up with something really creative and new to engage the developer community.
Open-ended to be able to celebrate things that are new and creative as well.
How do you know you’re going in the right direction?
How do you know your reporting program’s going in the right direction?
How do you optimize it a step further so that you can not only just meet requirements but also lead the conversation?
Optimizing the reporting process in a sense of being more community-focused.
But what if we also moved away from individuals as a whole?
Reporting -- focusing on the community only.
The community is the thing that matters, not the individual.
Individuals in the community keep changing, it's natural it's fine.
Encouragement to become more inclusive in the developer environment and not the potentially toxic behaviour of focusing on a few exclusive individuals.
Authenticity
Focus not just on what you did but the learnings that came out of it.
You’re centred more on the objective of improving developer engagement.
You’re not actually changing the way that they behave at all, zero.
Reporting mechanism to feed into what they are focused on, which is improving developer engagement.
And, not just for them, but also how do you share these learnings with the rest of your business to say, “Hey, as a whole company, “this is how we can better engage developers”?
And, it’s not just what we did, but it’s more important than the learnings and the best practices that came out of it.
To devise a DevRel strategy, one must understand their company's needs and the tactics that can be used to meet them. Let's take a look at the four pillars to understand all of this in a better way.
DevRel programme usually/arguably revolves around fours pillars.
Outreach
Community
Product
Education and support
Pillar define what exactly is done in the programme.
Pillar can be further divide based on the tasks performed by DevRel and Dev Experience.
Offers a handy way to think about tactics to pursue a DevRel strategy.
Outreach
Community
Product
Education and support
Pillars are about what you will do in your DevRel programme.
The strategic initiatives to meet the program's initiative are usually chosen from one or more of the given pillars
Once you take a close look at the four pillars, it's visible there are two halves -- outreach and community which is usually covered by developer relations, then we have product and education/support which is covered by developer experience.
DevRel programme needs to consider all four.
A mix of tactics chosen will depend on the broader strategy. This brings us to the AAARRRP funnel, which you can take a deeper look at in the scribble linked below.
[link the scribble]
One can have a great outreach program, arguably DevRel, to drive people from awareness to acquisition -- a better approach would be to have high-quality documentation, which arguably falls under developer experience.
Broadly, covered in two ways
Online
In-person
Activities are done in order to drive customers.
Makes people aware of the products and helps them get a better overall understanding.
Helps people to overcome initial objections and push through to some commitment to using it.
Community is about creating a framework that enables developers to be successful with your product.
Having an active community around the product is 🔑 for many developers.
Provides the evidence that people, other than the organization selling it are using it for various use-cases.
Helps in amplifying efforts of DevRel programme.
Community has a role to play in each stage but it’s most focused on moving developers from the acquisition through to the product stages. The social proof, additional support, and supplemental activities that a community delivers are all crucial in helping developers to feel comfortable about committing to your product.
DevRel teams can find themselves in marketing, engineering or anywhere based on the organization's goals.
Now, DevRel in the product might sound a little unconventional for beginners as to what role can they have in shaping the product -- right?
Developer advocacy is more talked about than developer evangelism, partly because advocacy is a two-way thing.
Dev advocates, advocate the products to developers but also advocate on the behalf of developers in product discussions and ensure that developer needs are heard.
DevRel teams should focus on ensuring that developer needs are hears and should represent the voice of developers in product discussions.
In terms of dev funnel - DevRel's role in the product should focus on moving someone from activation to becoming a committed user.
This domain can likely be covered by several different teams.
Dedicated support team
Developer success team
Developer education team
DevRel itself.
Whether or not DevRel is directly involved in it, they should take account of activities necessary to educate developers and support them outside of the company's formal/dedicated channels
DevRel team's role should be to support developers who aren't yet customers, to provide them with educational materials that the company's tech writes wouldn't cover.
To ensure that developers are more productive -- strong education and support is a must.
Google’s Uttam Tripathi shares practical advice on how to scale a developer relations team to meet your programme’s growing needs.
Principles for building developer programs and strategy.
Feedback.
Community first.
Diversity and inclusion.
Four Pillars to scale your DevRel Teams
Team
Personas
Type of Role
Expanding Globally and Scaling
Pipeline for DevRel Hires
Org your DevRel is a part of.
Outreach
Know what are developers that are most relevant for you.
Online channels.
Influencers and community managers.
Operations
Vendor partners as an extended team
Swag
Feedback
If you get unlimited resources and a budget...
Probably bad news for your company because they’re not being thoughtful about how they are investing and the floodgates are literally open.
Doesn’t really focus one to innovate as it should be.
What is really scaling?
Preparing the ground for the next wave of growth.
Feedback.
Dev rel traditionally has been an outward-focus function.
There needs to be two-way advocacy.
Need to be able to take the developer feedback and bring it back to the Product & Eng Team.
Community first.
If you’re able to do it the majority of the time, that itself is good news.
Did you have influence in your Product & Eng Teams to block a product launch if you think that launch is not going to be beneficial for your developers?
If you have strong signals and feedback that the product is not ready, are you able to make that call?
When you are sharing content for meet-ups or events among your developer community, is that the content that you and your Product & Eng Team want to push out?
Focusing on the needs of the developer community really helps you win their trust in the long run and that really pays back also in business value.
Diversity and inclusion.
Important -- developer community that we’ve worked with and engage are also representative of these developers that we want to eventually engage with.
What kind of personas exists in the DevRel world?
What kind of roles exists?
Developer Advocate is a much more common word being used now.
Folks who go on stage.
The ones that go at events.
At meet-ups and talks.
Go behind the camera and record talks -- share more scalably
Public face for your developer programs and your platform.
Community Manager.
Very quickly, if your product is starting to get traction, there will be a community that will build around it.
Folks who are helping swags for meet-ups, helping buy pizza for the hackathon.
Helping run events if your company has to run those first-party events themselves.
Other roles -- Developer Program Engineers, Developer Advocates are going and talking about the vision of the platform, getting people excited.
Specialized roles like Developer Program Engineers exist.
In many companies, especially if the dev rel team is fairly small, Developer Advocates will be doing the same responsibility.
Tech Writers.
Call-to-action.
Inspiring someone with a key message.
Experience that that developer website has is key.
Having a really solid technical writer team is important.
Dev rel teams typically get started wherever the host organization is based but then very quickly realize.
The challenge is hiring leaders in these key hubs who can really grow your dev rel presence over there.
Focusing on hubs.
Figuring out the demographic that works best for your program and needs.
Where do we hire for Dev rel?
Traditional interview formats of either hiring for a software engineer role doesn’t really help.
You look at people with dev rel titles, that pool is growing.
Software engineers in your company who are keen
Offer them a rotation opportunity or a short-term project for them to explore dev rel as a practice.
Hiring some of the community managers from the broader developer community that your org. works with.
Doesn't matter which organization your dev rel team is part of.
The obvious ones are marketing.
Irrespective of where you are, you can be successful if your dev rel organization.
Use your influence to land your dev rel team where you would be most comfortable with.
If you strongly think that your dev rel team should be part of marketing, make that pitch early on.
That number around 20 million has not shifted in the last five years.
Know what are developers that are most relevant for you.
Are you really engaging with developers that are relevant for your platform?
Online channels.
Events are very expensive, expensive on time, expensive on resources.
Don’t give you a channel to constantly engage with your developers.
Explore online channels.
Helps you get a lot more traction.
Influencers and community managers.
Identify key influencers and community leaders in those markets and build relationships with them.
Reach a lot more developers than a traditional channel will probably offer you.
Dev rel is a job that requires a lot of travel for example.
Vendor partners as an extended team
Are you booking all your travel yourself or is there someone, a vendor or an agency who can help you?
There are organizations that can help you.
Swag.
Procblem when we have swags being produced centrally, not headquarters. And we’re trying to ship it worldwide.
Way too expensive if your developers are in emerging markets.
Shipping cost.
Producing locally.
Has a positive impact on the environmental footprint.
A key part of the developer ecosystem, the work that we do is gathering developer feedback.
This is an area where sometimes it’s okay to not focus on scale.
Face-to-face conversations where the developers were sharing their pain points.
What is the career path in developer relations and how can you build a long-term plan for your own DevRel career?
Jessica Rose has built a reputation for championing and mentoring people through their developer relations careers. In this talk from DevRelCon London 2019, she shares practical advice on how to plan and manage your own dev rel career.
Tips to work on for breaking into DevRel
Presentation skills
Your code skills
Your documentation
Running events
Teaching
A major tip for folks already in DevRel -- avoid burning out.
Whenever you see a job listing that looks exciting to you, go ahead and take a screenshot.
Fan-shaped goals? A way to track and build towards multiple goals at the same time.
Interactivity -- one of the first steps towards DevRel, interacting with people in general, taking part in conversations, helps build relationships -- builds up your resume for community skills -- part of DevRel.
Presentations
On stage presentations/talks
Speaking at local meet-ups
Podcasts is a very scalable
Not all folks who work in developer relations do write code or even can write code.
But if you want to get started in writing code
Start a side project - learn to code
Made a tutorial and post it online
Working on open source projects or reviewing pull requests.
Writing or reviewing documentation
Writing a tutorial
demonstrates the kind of teaching and communication skills I think are really valuable for developer relations.
Organizing/volunteering for local events
Demonstrate some level of teaching
Give workshops
Mentor low-code/code/no-code meetups/workshops
Whenever you see a job listing that looks exciting to you, go ahead and take a screenshot.
If you are breaking into the field -- helps you keep a track of various descriptions to asses where you currently stand.
If you are already into the field -- helps you keep a track of what your current goals stand.
Tracks the job description, lower or higher than your current job -- helps to determine what your goals at that point of time were, looking back after 6 months, you'll have a much clear head as to where and where your goals lied at that point of time.
Make a resume and keep it updated.
The first thing is just stay as okay as you can.
Avoid burning out
decent chance you’re getting on a lot of planes, you’re eating a lot of pizza, you’re being offered a lot of free beer can get to you.
If you can, you avoiding burn-out should really be your manager’s responsibility, but at the end of the day, it's your responsibility.
Best thing you can do for your future career is, firstly, just not destroy yourself for a job!
Acting like the adult that you are at most situations definitely helps!
Networking is fine but...
Can be "Magical and exhausting"!
Networking meaningfully can be hard.
It's easy to spam a certain number of people with "Hey! We are working on this project", here's the signup link.
Developing a meaningful conversation, actually asking them about "Adding value to whatever they are already doing" is difficult.
Use personal CRM
Never write anything that you wouldn't want others to see.
Example of noting it correctly - this person works for this company. I met them at this thing. They’re working on this stuff.
Creating a "Do not work" list
"Oh, you know I’m only around for the next six months and then I’d love to be doing what you’re doing" -- gets fired. 🥲
If you have plans to do so, doing it in subtle ways is the 🔑
Write blogs posts about your upcoming interests
Talk openly with folks already in the field
Continue updating your CV with your work in the field that you are interested in.
Doesn't have to be a live version on LinkedIn, put notes to yourself can help you track your progress.
A way to track and build towards multiple goals at the same time.
Helps when there are multiple fields you are interested in, for your future career.
Mapping out things you would learn along the way for each goal helps you understand the whole outcome in a better way.
Map 3 or 4 paths, not 12!
No model is perfect, but this will definitely help you sum your areas of interest and your work in it.
Matthew Revell talks about almost everything around developer relations and fundamental stages in creating a developer outreach strategy.
Three stages of building a developer relations strategy
Understand where you are.
Know what the situation is right now.
What it is in the world that you want to change
Know where you are, where you want to be.
Create a plan of action to make that happen.
DevRel specialised marketing.
Developers aren’t just another audience.
Developer-targeted tools aren’t just another product.
Maybe the audience knows more about the product than you do.
DevRel - AAARRRP Framework
Four pillars of DevReL
Outreach
Community
Developer experience
Development and support
DevRel Situational Analysis
Product
Competition
Company
Target
Developer relations is a specialised form of marketing that’s aimed at software developers.
When you think of it in other terms, then it’s very easy to get lost and detached from some of the things that are important to measure.
Developer relations are very long term.
Developers are experts in the thing that you’re selling.
They build a career on having an understanding of some very in-depth, technical subjects.
Developers will correct you in public.
They will not be embarrassed about telling you that you’re wrong, and so that means that you have to be right.
U can’t fudge this -- They’re betting their careers and their credibility on the choice of tool that they make.
They believe you, and they test it
At production, it goes ahead and it fails massively and they lose their job, then the stakes are higher.
People really need to be able to trust that what you’re saying is true.
You’re selling something very specialized, then they can probably, very easily tell when you’re fudging things.
Traditional marketing is a great deal about storytelling. It’s about selling a dream.
When you’re selling something very technical, you can’t fudge that detail.
Long-term relationships build trust.
They build credibility.
Build a one-on-one relationship with developers.
AAARP DevRel Strategy
Meet-ups.
About creating something online.
Blogs or other resources that bring people into your sphere.
Creating a process that enables people to feel recognised.
Feel like they’re contributing to something worthwhile.
Brings them from that aware developer to someone who is contributing back to your product.
MVP program or just something where you are actively encouraging and supporting people who are on your side.
API and SDK design, the documentation, the onboarding process.
Development where you provide excellent support to people.
If you plan well, then you’ve already won the battle.
A lot of developer relations is done off the cuff, is done without planning.
It’s done without thinking about strategy.
We need to understand where we are before we can plan on where to go.
What does your product change the world?
Quote If you’re not building something that makes the world different somehow, even if it’s a very small part of the world, then it’s probably not worth doing.
What is good about the tech?
What do we need to be honest about with our product?
What are the core use cases of your product?
What are people gonna be using it for?
“What are they good at?
What are they bad at, and how will people use it?
What are the core use cases for those products?”
And you’re your company. Your company, obviously, has a very big influence. Your product doesn’t exist in a vacuum. So what is your company’s role in the market? How your company interacts with the other competitors is going to influence how people see you.
Market leader.
Challenger.
Companies who are probably doing things that challenge the market leader, do more interesting things in some ways, but they’re not quite at the top yet.
Niche Player
Companies who are doing their own thing.
They’re quite happily bobbing along.
They’re carving out small businesses for themselves in a particular area.
Shooting star.
A company that’s got far too much venture money.
It’s spending it like crazy.
Survive probably till the end of the year unless they get another funding round, but the problem is they’re stealing all the oxygen because they’re spending loads of money.
Different drivers that send people towards and away from your product.
Understand these drivers by asking a bunch of questions.
Technical Drivers
You know, does it only run on Windows?
Does it require one or another particular language?
Does it require a particular platform?
Which technical use cases does it best suit?
Where does it sit in the development lifecycle?
Will greatly influence how we approach the market.
Developer Drivers
Questions about the developer themselves, the individual who you’re talking to.
How much commitment does our product require of developers?
What languages are they interested in?
What languages are they using?
Organisation Drivers
What sorts of organisations have a need for this?
What sorts of companies should we be approaching?
Where will they be earning their living or building their software?
Market Drivers
Competition
What’s happening in the industry currently?
Locations that might suit your needs.
Create segments in the market or amongst developers.
Once you have a bunch of segments that you’ve listed out, you can start to decide who to target.
Is it relevant to our business?
Are they actually gonna have a use for it?
Do they take those drivers that we had earlier?
Is it large enough?
Can enough money be made?
How do you know whether moving into developer relations or DevRel is right for you?
Differences between being a product-based software engineer
Pros and cons of this move
Signals in your own life are strong indicators that you might be successful in DevRel
What the DevRel mindset is
The main focus of the blog is to focus on the engineering side of developer relations.
Difference between being a software engineer on a product and a software engineer in developer relations
Product-based software engineer the majority of your time is spent working on
features
fixing bugs
writing tests
eliminating technical debt
writing design documents
Engineer in developer relations, there’s simply a lot less time to do all of this
developer relations teams are the connective tissue between 3rd party developers and the internal product and engineering teams
time spent on creating, building, and connecting with communities.
collecting feedback and working with your internal stakeholders to make sure the product is evolving to better serve the developer community
not always be the case, but generally speaking, the size of the coding projects in DevRel is smaller.
building a proof of concept, a demo, a code snippet, or perhaps a client library
your code itself is to be used by other developers within their own projects
building a community, overhauling documentation, amplifying knowledge about a product through videos and speaking engagements -- less coding.
part engineer, part product manager, part marketer, and part business development.
encounter a lot of different stacks
have to be flexible and learning new stacks on the go.
DevRel at its’ core is about people
software engineering is often more about the code you produce
a mix of a great engineer who connects with other engineers and has the respect of the internal teams at the same time caring about people (developers) and making them successful.
software engineer’s impact is likely focused largely on technical contributions
For DevRel
community growth/support
growth of product awareness
product influence
communication regarding product launches
delivery of technical content
Requires being good at a different set of skills.
You have a chance to see the world.
You’ll be closer to the people who use the product.
There are less DevRel jobs than software engineering jobs.
Most people understand the value a software engineer brings to a company, it’s not as clear in developer relations.
There's a lot of explaining to do.
Actively participated in or organized programming events, contests, hackathons, or workshops.
Spoke at technical conferences or meetups.
Have a mixed background of engineering and product or project management.
Academic background or teaching experience of technical subjects.
Travel has been a significant part of the life of many dev rel practitioners. In this talk from DevRelCon London 2019, Alyss Noland shares her advice on how to stay healthy and happy while travelling.
Make sure you are finding a suitable flight that fits in your schedule.
For more organised packing -- use packing cubes.
Sleep is important.
Use time shifter apps to track time and schedule in a more efficient way.
Planes
Have a neck pillow.
Have a scarf.
Earplugs
Do whatever it takes in order to sleep. You know how you sleep best.
Hydration
Make sure you keep hydrated.
Planes are very dehydrating.
Carry an extra bottle of water.
What happens when you have a cancelled and delayed flight?
Within the EU, if you land here if you get delayed here, you end up getting the compensation of some kind.
In the U.S
Regulations aren’t as good.
Using packing cubes.
Can take them out of my bag and set them out.
Easy way to keep track of what’s dirty, what’s clean. and you can even get some that are more specific for dress wear.
Makes us feel functional.
We’re in events a lot where we may be expected to drink.
There may be a lot of coffee.
Sleep deprivation is literally torture.
It is not allowed under the Geneva Convention.
Doctor if for some reason you need additional assistance.
Time shifter apps
When you should get some sun.
When you should wear sunglasses.
When you should avoid sunlight.
When you should avoid caffeine.
Planes.
Have a neck pillow.
Have a scarf.
Earplugs
Do whatever it takes in order to sleep. You know how you sleep best.
Most planes have humidity levels of around 20%.
Staying hydrated on planes.
Bring a water bottle and refill it.
Amelia teaches how to connect with your audience, communicate clearly, and embrace your fear as a form of energy that will enhance your performance.
What are the various types of performances?
What are those “tips and tricks” for each kind?
Live stage performance
You may need to memorize a script.
Warming up or cooling down before going on stage.
Connect with the audience.
Practise tongue twisters.
Drink water.
Try out different registers.
Performance for camera
That could be TV, a tutorial , a pre-recorded talk.
Live camera with a teleprompter.
Get help from a friend.
Performance for a camera with a live audience
Important to know your cameras are
Make eye contact with the audience and look at them but you really got to keep an eye on your cameras.
Other types of performance
For an audience that’s non-technical -- avoid a lot of buzzwords.
There’s performing through a translator.
Performing with an interpreter for the deaf community.
Performing on camera live, like for TV for interviews.
Performing on the radio live.
You may need to memorize a script.
Very frequently we perform using improvisation, bullet points, notes.
Take a tape recorder and say your entire script into the tape recorder, and then you can play that back almost like hypnotism to learn the script over time.
Take out chunks from that so that you almost have prompt words.
Speak back to the tape recorder.
Helps you get a way of rehearsing your lines with yourself and a tape recorder.
Warming up or cooling down before going on stage.
Some people need to warm up
Getting really hyped, doing push-ups, jumping jacks, yelling with your teammates, screaming backstage in the green room.
Other people need to cool down
They need to take a deep breath, they need to have a little bit of yoga or meditation.
Connect with the audience.
It really helps you calm your nerves and it also helps your audience feel more connected to you.
Making eye contact with an audience member
Asking a question seeing those hands raised in the back.
Any time you get stuck or you get trapped or you start like, “I forgot what I was going to say,” look out into the audience, make eye contact, smile at someone.
Podcast, voiceovers for tutorials, calls, sale calls, pitching over a deck, studio recordings.
Practise tongue twisters.
Helps you not stumble on your words as much.
Exercises those vocal muscles.
If you need to do a quick introduction, you can make sure that you know about how long that takes.
Drink water.
Try out different registers.
Experiment with what voice you want to give your audience with pre-recording.
You could try something really high energy, or you could go down to something that is very calming and a question that is very slow.
That could be TV, a tutorial , a pre-recorded talk.
Live camera with a teleprompter.
LED screens that can actually sit over a camera.
You can actually see the words and not break contact with the direct lens.
Might be something you want to invest in.
Helpful for things with live data.
Get help from a friend.
Some people feel a lot more comfortable, it can be read as more realistic, can feel more connected to the audience if there’s a person on the other side of the camera.
It’s a webinar, a TED Talk.
Sometimes where your primary audience may or may not be the audience that’s sitting physically in the room with you today.
Important to know your cameras.
Giving a TED Talk -- they generally have two cameras.
Rehearse it with the studio ahead of time, so you know exactly which one to switch to.
Make eye contact with the audience and look at them but you really got to keep an eye on your cameras.
For an audience that’s non-technical -- avoid a lot of buzzwords.
If you do have acronyms, contextualize them rather than just say what this means.
There’s performing through a translator.
Speaking in your own native language and then you kind of have to wait for the translator to speak for the audience and then it’s your turn to speak again.
Rehearsing with that translator can be really important.
Performing with an interpreter for the deaf community.
Performing on camera live, like for TV for interviews.
Performing on the radio live.
Everyone should get a little bit of stage fright.
Embrace that fear as a type of excitement and energy because at the end of the day, that is what keeps us connected.
Nerves can really be a fire that drives us. .