WordCamp US 2019 – Room 230 – Saturday


big commerce term the … … ath leash ath leisure ing we ask that you please hold off
on your questions until the end. So if you’ve got an idea for a
question, please jot it down on the phone, we will get to you at the
end of the session, and if you want to speak with the presenter
at length, ask if they’re open to continuing their discussion
later somewhere at the support desk in the sponsor hall would
probably be the best place for that. And then, one more quick
reminder, I bet you didn’t hear about this yet,
but we want to encourage everyone to come to contributor
day, which is tomorrow, if you have never been to contributor
day before and want to know what it’s all about, please visit the Get
Involved table in the sponsor hall. Or attend one of the
sessions called everyone can make WordPress better, how to
contribute to WordPress. Newcomers are welcome, no
experience is necessary. So with that, everybody buckle
up, get ready for this bio. This is a big one. Dr. Sherry
Walling will be our presenter here, she’s a licensed clinical psychologist, the cohost of the
zen founder podcast. A consultancy that helps
entrepreneurs tend to their mental health. Sherry has a
Ph.D. in clinical psychology, a couple of master degrees, and
has been a researcher and a tenure-track
professor, and to round out the geek credentials, she’s been
married to a serial entrepreneur for 18 years. Though not technically a
WordPress geek she loves hanging out with the WordPress community
and sharing her unique combination of psychological
expertise and years in the trenches of
startups. Her book came out in February
2018. When she’s not in the consulting
room or hopping around in conferences, sherry can be found
on her paddle board in the yoga studio, or doing her best
not to break her own WordPress sites. Everybody please welcome
Dr. Sherry Walling. [applause] Good morning, you guys made it,
I’m super-proud of you. Also, I actually can’t see any
of you so if you want to move up closer, you are very welcome. I promise I won’t call on you
awkwardly or anything like that. There’s no penalty for sitting
up close. Otherwise I’m just going to assume you’re out there
in the lights. So I thought I would start by telling you a story about how I found
myself crying, like sobbing, in the
dentist’s chair, and we don’t know each other so you’re just
going to have to take me at my word that I am not a cryer. Like
categorically it’s not sort of the way I’m built. But I found myself having a
moment. Because I was sitting in the chair and looking up at not one, not two,
but three dentists, who were all
looking down at me. And looking in my mouth and
literally scratching their heads and being like, huh, this is strange, which is
really not what you want your medical professionals to be
saying about what’s happening with you. So I was sitting in
the dentist’s chair, because I’d had this toothache and the other
thing that you’re just going to take me at my word about is that
I have never had a cavity. Actually one time when I was 7 I
had a cavity, but it was in a baby tooth, so it doesn’t count,
so I’ve never had a cavity, but I have this toothache and so I’m
in the dentist’s chair and they’re looking in my mouth and
they’re like, wow, you need a root canal and
I’m like, how is that possible? Like, I’ve never had a cavity
and they’re like, no, you need a root canal and he says I don’t
understand it either because there’s no abrasion in your
tooth, like there’s no cavity in your tooth. So he goes to get his other
dentist friend to just check and be like, it doesn’t make sense
to me, does it make sense to you? It and he says it doesn’t make
sense to me, let’s go get another dentist. So they’re
looking at the cavity that I don’t have, but still have an
infection which necessitates a root canal.
Which is very unusual. I don’t know about you guys but
I don’t seek to be medically
interesting. I would like to be more absolutely boring. So the
doctors are looking at my tooth, scratching their heads,
I’m scratching my head and they’re like, well, this is very
unusual but it does happen sometimes when people are
experiencing a high level of stress, they’re more susceptible
to infection. So the dentist says, what do you
do for a living? And I say I’m a psychologist can, and they say,
well, what’s your field? And I say, occupational stress
and burnout. And they’re like, well … heh-heh-heh So I was — a few weeks prior to
this moment — sitting in the hospital with my brother, who
was very, very ill. And I was sitting by him, helping take
care of him, and I grabbed a cup of coffee, not unlike this one, and
I just full-on took a great big gulp
and the coffee was very hot. So I got a burn which got
infected which moved into my tooth, which
moved into the root of my tooth which necessitated me having a
rat canal without having a cavity, which is very unusual
and just pro tip if you ever find yourself in this situation
and you realize that you’re about to sob in the dentist’
chair, it’s really advisable that you take out those spacer
things that hold your mouth open, because there’s like a
deep lack of dignity in crying when your mouth is
forcibly held open. Like crying itself is difficult, but when you’re like, uh, when you
can’t even close your mouth, it’s a different level of
sadness. So what I was experiencing was a
pretty significant level of burnout. And the fact that you’re here at
9:30 in the morning on a Saturday makes me think that
either you, or someone you know, has experienced some level of
burnout before. And burnout is a tricky, tricky
beast, because it affects you in ways that are surprising. I didn’t overtly realize that I
was tired or sad or struggling. I just overtly realized that my
tooth hurt, and found myself in the dentist’s office having this
very unhappy experience. And that’s what happens with
burnout. It’s what happens when your mind and your body start to not work
together well anymore. And you start to realize that all of the
resources that go into making you the amazing, wonderful
person that you are, are no longer available to you in the
way that you wish they were, and you’re very, very tired. And you don’t quite have the
strength or the energy or the immune
system to do the things that you most need. And of course, no one is immune
from these kinds of moments. I, in all of my doctor-y glory
have a Ph.D. in this very topic, but it does
not exempt me, or you, from these moments where it all
becomes a little bit too much, and the strain of your work or
your life or whatever it is that’s on your plate can become
overwhelming and create some kind of consequence. For me, a root canal that I did
not expect and never saw coming. You’re in this room because you
make your living with your mind. You are a coder, a designer, a developer, something where you
use technology to, you know, get
money to live and do your thing. But you are a thought worker. Your ability to be amazing at
your work and at your life is very much based on the healthy
functioning of your mind. And that’s a lovely way to work,
right? None of you are sort of pushing buttons in a factory. You are using your creativity,
your ingenuity, your problem-solving ability, which
is a fantastic way to live, but it also means that you are heavily,
heavily dependent on the really healthy
functioning of that great big organ right here on the top of
your head. And when that doesn’t work well, everything begins to
fall apart. And for those of you who are
WordPress professionals, you are many things. You are a village
unto yourself. So there are lots of roles that you play. Perhaps
you’re a creator. There’s a creative nature to
what you do. Be and I think honestly,
developers don’t get quite enough credit for the level of creativity that goes
into how they solve problems using a specific medium of code,
of technology. You’re a conductor of pulling
different pieces together to get a project done. You are someone
who’s coordinating lots of different things. You’re
probably working with clients, you’re collaborating, you’re
working with other humans. So your day to day job requires
lots of different parts of your brain,
of yourself, to be active at a given time and that of course
makes your job very, very interesting, hopefully, but it
also means that it’s hard. It requires you from the the
inside out to show up as your best self, day in and day out,
moment by moment. So a lot of my work is in
talking with people who have high-intensity
jobs about their mental health, about the way
that this fantastic organ on the top of your head can be your
greatest asset or can be the thing that makes life very, very
tricky for you. And most of us live with lots
and lots of demands, and most of us live
with a lot of loneliness inside our
minds, in the sense that we are having all of these demands, all of this
pressure, all of these expectations, and we
alone bear those burdens. We alone are responsible. We alone
are the ones who are trying to do the best we can, given all of
the conditions or the challenges that are given to us. So the question isn’t when a
conversation about mental health is relevant or it’s not if a
conversation about mental health is relevant. It’s always
relevant. Because everything that you do
in your professional capacity is very much based on your ability
to be well. Well in your mind, well in your
body. And you know what it feels like
to not be well. To have moments where you feel
not quite yourself. You’ve seen people around you
struggle with moments where they’re not quite themselves. So the statistics on mental
health, if you don’t know, is that this is
very much a part of our daily lived
existence, that one in five American adults struggle with a
mental health issue in a given year, that less
than half of the people who are
experiencing significant mental health
distress don’t get treatment. They don’t talk to people who
are well trained to help solve those problems. They’re trying
to sort through those things by themselves. We know that depression is the
leading cause of disability in the
world, so if you are struggling to get work done, struggling to be effective in
this amazing mind of yours, that it’s
highly likely that something like depression is the culprit, is the thing that’s
making it difficult for you to use your particular magic in a
way that helps you to be productive in the world around
you. And it’s very, very expensive.
When we don’t talk about mental health, it costs us somewhere in
the neighborhood of $200 billion a year, just in lost wages and
productivity for people who are well, interesting, creative
humans, who are not able to do their work because of the taxing
toll that mental health concerns can take. And guys, it’s not getting
better. So you’re here at WordCampUS and
so you’re having a conversation
around burnout, around mental health, here in a very sort of
public conversation, which I’m so grateful for the
organizers for inviteing me to give this talk, not because of
me, but because this topic needs to be talked about any
time people are gathering, because it’s not getting better,
it’s getting worse. We’ve seen an almost 15% in the suicide rate. And among the people who are
having the highest increase in suicide, you guys, are children. When I trained in graduate
school, we didn’t even train about how to
talk to a 10-year-old about suicide. Because it just didn’t
happen. It was so unusual, it was so rare. I never even trained about that.
But that is the category of human that is experiencing increases in
suicidality. We can have a discussion later about how
that’s happening, but for now I just want to really — I don’t
know use a little bit of a fear tactic to help you be aware that
this is such a deeply important conversation, so whatever sphere
of influence you have, whether in your business or your family,
I would love for you to be someone who
feels really comfortable talking with people about mental
health concerns. You know, especially in
communities where we see higher risk for
suicide. So 75% of people who commit
suicide are men. We also see increased rates of
suicidal thoughts, suicidal behavior,
among lesbians, gay, by sexual
bisexual youth. So we need to think about who are the people
in our midst who are most likely to feel lonely or don’t have a
place or their particular magic doesn’t have a place to land. Those are the people who we want
to have special care for. So outside of this more
technical, more serious, I guess, conversation
about maybe not serious is not the
right word, more diagnostic conversation
about mental health, you have probably
heard the term burnout. So burnout is quite common. 30% of American and they’ve done studies in Europe, as well, so
of professionals experience burnout in some point in their
career and burnout is this popular term, especially in the tech world, like oh, I’m kind of
burnt out. Or we see it a lot in Huffington
Post, articles about burnout. And what I want to say really
clearly, burnout’s a big deal. It’s not a fad and it’s not like
a self-help trend. Burnout is a significant disruption in your ability to use that magical
brain in ways that are helpful and productive to you and to the
world around you. So when we talk about burnout,
we’re talking about technically
speaking, a state of vital exhaustion. That’s actually the technical
term for burnout when we look at the
ICD10, which is the international classification of
disorders manual. If you would like a code applied to your
psychological experience, that’s where you go. So when we look or we’re talking
about burnout, we’re talking about a state of physical and
emotional exhaustion. This is the sense in which you just don’t have that oomph-of, oomph,
you’re starting the day tired. That no matter how interesting
your to-do list might look, you just
don’t have the energy to get going. There’s not a lot of momentum
going on inside of you. And I think a lot of us know what this
feels like, where we just feel like oh, I just can’t get
started. The second part of burnout is a sense of cynicism
and detachment, and this is where we struggle with caring. We might find ourselves
sarcastic or making biting comments about our clients or
our coworkers. The people that we have
traditionally cared about, we just can’t muster the emotional
energy to care well. So this comes out in biting
comments, in sarcasm, in kind of snide
remarks, in feeling very dismissive, in
feeling irritated at the people that we serve, and feeling
distant. Feeling like we’re not as connected or close as maybe
we once were. And then the third component of
burnout is a sense of perceived — so
it’s subjective — ineffectiveness. So no matter how hard we’re
working, we cannot recognize the gains that we’re making. We
cannot recognize the wins, all we see are the negatives. We
have this sort of negative filter over our minds. And when we are living in
burnout, it’s like very, very uncomfortable. You know what I’m
talking about? You sort of see how these things
fit together? So not only do you just not have energy, you just
don’t care very much, and it feels like all of the energy
that you could potentially muster is for nothing, because
nothing is really effectively getting done. So it’s this trifecta of misery
that makes us really, really unhappy
and also really terrible at our work. Burnout is important to
talk about, because it is work-based
distress. It’s caused by our occupation. It’s built into the sort of
diagnostic criteria. And burnout is really, really
bad for our brains. So burnout has the power to
change the structure and the chemistry, of
our minds. So we can look at functional
MRIs, magnetic resonance imaging, we can look at them and
see the difference between a brain that’s burnt out and a
brain that’s not. We see different parts of the brain get
smaller or get larger, and we see changes in the chemical sort
of makeup of our minds when we live in
burnout for a long time. And one of the, I think, most problematic changes, is when
we’re living in burnout, we have an
overactive amygdala, so the amygdala, I’m sure you’ve heard about it, it’s this
almond-shaped part of our brain in the midbrain that is very active
fear or negative emotion, basically, it’s an important
part of our brain, it’s kind of part of the alarm system that
says, OK, I’m not well, I need to do
something or make changes in order to protect myself. So the
amygdala is really important. But when it’s overactive, we
live in a state where the alarm bells are going all the time. So
when you reach a level of burnout when you are solidly in burnout,
the amygdala starts to get larger, it actually grows, we
can measure the difference. And it’s overactive. And when it’s overactive, it
creates strain on other parts of the brain. So the part of the brain that’s
really helpful in talking us down, in calming us down, is the prefrontal
cortex, right up here. This is the part of us where
we’re like, OK, I gotta take a deep
breath, I gotta manage how I feel, I’m getting a little excited, I’m getting a
little overwhelmed, but I got to talk
myself through. When you’re in burnout, the amygdala is large
and overactive and the connections between the amygdala and the prefrontal cortex up here, the
neurons begin to wear and tear, so they decrease the efficiency
with which we can calm ourselves down, so that we actually see
some of the neurons begin to be disconnected and to die. And it’s kind of this like
tragic story, because the part of you that’s most helpful in
calming you down and helping you work out burnout, is now less
accessible to you, because the alarm systems are so loud and
overwhelming. And so you get this cycle where
the burnout sort of perpetuates itself, because the part of you
that’s most helpful is not very accessible. So it’s a really, really tough
cycle to be in, because all of us, right, we use our brains for our work, we’re
thought workers, we’re people who rely
on this amazing part of our brain for problem-solving, for
advanced thinking, for planning, for mapping out a project and
thinking through all the details. That all happens right here in
this prefrontal cortex and that is less and less and less
accessible the longer we persist in burnout. They really want to
come in. [laughter] And if that isn’t bad-enough
news, that your brain is getting damaged, when you live in burnout for a long time,
your heart is also getting damaged,
so people who were in the top 20% of the burnout scale, this is a really large
study that they did in Israel, something like 40,000 participants, so people
who had high levels of burnout were
almost 80% more likely to experience cardiac distress. Our bodies are not meant to live
in a constant state of elevation. We’re not meant to live in a
constant state of stress, we’re not meant to live in a constant state of
exhaustion, and so many of us, because we are
highly motivated, wonderful, creative,
thought workers, so many of us push,
push, push far past the point that we should, and we are so bad collectively —
and I’m right in here with you guys — we are so bad at taking deep, meaningful
rest, to help our brains reset. And it’s often not until we’re
in the dentist’s chair, staring up at
three dent dentists who are looking at
us scratching their heads that there’s this sort of
intervention moment that we realize, wow, why am I doing
this to myself? Why am I pushing myself so far
such that my body is breaking down, that my heart is affected,
that my mind is not functioning super well?
But this doesn’t have to be the story.
This doesn’t have to be the path for us. The burnout, some of the mental
health concerns that I talked about, those don’t have have to
be the way that we exist all the time.
That there are ways and things that we can do to actively
prevent the possibility that we will live in burnout. And that
is my end goal here. This is my game. Is that if we can prevent this
from happening in the first place, so much better for all of
us. So much better for our health care system, so much
better for our businesses, so much better for every single
human who’s sitting in this room. If we can try to figure out how
to not get fried and burnt out in the
first place. So one superpower, we’re going
to do it right now in real time, is to practice regulating the distress in our
bodies by calming ourselves down. So I know it’s early in
the morning, you’re probably already very calm, but I’ve just
given you lots of bad news about what might be happening in your
brain if you’re kind of burnt out, so let’s practice. Feet on
the floor. Back against the chair. One of our best superpowers to
help offset this pattern is the practice of regulateing our
emergency response system. And our best strategy is to take
low, deep, slow breaths. Because when you think about
what happens in your emergency response system when you’re in fight or
flight, for example, you’re breathing up here in your chest
and you’re often breathing very rapidly, hyperventilation, but
if you can move that breath down,
you’re basically — you’re sort of hacking the system. Your breath is telling your
brain, “All is well.” So the way we do this, I call it
4X4. Nice and simple. 4 seconds in, 4 seconds out,
nice slow breaths. It doesn’t take very long, just
8 seconds and you can reset what’s happening in your body.
So you are welcome can to close your eyes if you wish. If you
don’t wish to, that’s fine, too. But sit with your feet on the
floor, if you want to close your eyes, that’s an invitation and you’re simply
going to put one hand over your belly button, and see if you can breathe in a way
that moves your hand. So when you
inhale you’re experiencing your belly rounding, sort of like
there’s a little balloon inside your stomach, which I know is
not anatomically correct, but go with me, so you’re inhaling when your belly
rounds, and as you exhale, your hand
moves towards your spinal column. So inhale, one, two, three,
four. Exhale, two, three, four. in, two, three, four. Out, two, three, four. In, two, three, four. Out, two, three, four. In, two, three, four. Out, two, three, four. OK, four breaths, four seconds
in, four seconds out. Anybody notice a little bit of reset or
difference? Yeah. So when we regulate our
breathing, we are telling our brain about our
own level of calm. And so, purely shifting your
attention to take careful, calming
breaths, is one of the things that can help regulate your
body, and when you do it over and over, you don’t necessarily move
into that place of beings of exhaustion, because you’re
resetting quickly. If you reset quickly and often,
you can avoid moving into this place of deep fatigue, deep
tiredness. So more than just breathing, we
have like 50 years of research about what causes burnout. This is the area of Kristina
Mazlac at UC Berkeley. She came up with this conceptualization
of burnout and spent her career researching it. So we know what causes burnout
at work, and there are six things: One is
not enough support. It means we don’t have the right people
around us behaving in the right ways where we feel like we’re part of
an effective, healthy, warm, functional team. Where we either feel like we’re
in isolation, or we are existing in
a place where the relationships are really unhealthy and not
helpful. No. 2: A lack of clear meaningful
goals. So this is that sense of
effectiveness, where we feel like we’re showing up for work
and we got a lot of things to do, but it’s just not clear how
we win, it’s not clear what we’re after, what goals are driving
our effort. Too much work. I’m sure all of
us can relate to this. Just purely a mismatch in the
math between the things on our to-do list and the time that’s
actually really available to do those things. So it’s our own expectations, or
the expectations of people around us, that we can bend the
time and space continuum to actually do more things than
is humanly possible in a given amount of time, and a lot of us
can be really optimistic about what’s possible, which is
lovely. I love that about us as people. However, it’s really not helpful
when we think about our mental health and our level of burnout to be overly
optimistic in the amount of work that can get done in a certain
amount of time. No. 4, we don’t party well. We have few observable rewarded
successes, we don’t actively take note of oh, I set this goal, and now
I’ve accomplished it and now I’m going to have Cheetos and sit on
the floor with my dog for a while. We don’t note, we don’t
pay attention to the things that are going well and the ways that
we’re successful and then call them out and actively
celebrate them. And when we don’t do that, we
don’t let our brains complete this reward
circuitry that we all love so much. We’re all just really advanced
rats running the maze and if you’re a
rat running a maze, you really want to get to that reward at the end, but a
lot of us believe about ourselves that we don’t need that reward at the end, but
your brain wants a feedback loop in which you can say, here’s what I set out
to do, here’s what I’ve done, and now I get my little pellet
or my little token, my reward, I get to notice that I was
successful. When we don’t do that, that’s a
cause for burnout. No. 5 is limited control over
our work. This is when we work, how we
work, who we work with, the timing, the
deadlines, the structure. And then finally, and most
significantly, one driver of burnout is a mismatch between
how we spend our time and what is actually important to us.
It’s a crisis of meaning. It’s the existential part of our
work. Of how we spend our time and energy, and whether or not
we really value the projects we’re working on, the things
that we spend our time doing. When you exist for a long time,
where you have a lot of things to do,
but they’re just not that important to you, you’re not
going to be able to do that for a long time. When you have a lot
of hard things to do, but they matter a lot, you
can do that for a long time. So it’s not necessarily that the
work is easy or hard, it’s how valuable it is to you.
Does that make sense? Yeah? It doesn’t matter. I can’t
see you anyway. OK, so I’ve told you lots of
scary stuff about burnout, I’ve told
you my scary sad story about being in the dentist’ chair and
now I’ve told you what causes burnout so now let’s
flip it on its head and say how do we
prevent this from happening in the first place? How do you
personally prevent getting a root canal when you don’t even
have a cavity and there are three dentists looking down at
you crying with a thing in your mouth. I don’t want that
experience for you. So No. 1 strategies to protect burnout
is to protect your relationships.
I’m an introvert. I like to go it alone. I like quiet. Don’t
really like people that much. However! Protecting healthy, kind
relationships is the No. 1 thing that you can do for yourself as
a human. Whether we’re talking about
burnout or traumatic stress, the number one
predicter of how well you are going to do when something hard
happens to you is how connected you are to other
human beings. You do not need a lot of friends. You need like three, but they
need to be good people and you need to trust them and let them
love and trust you. So it’s not super-complicate
and my strategies are not
super-complicated or maybe inventive. This is a very old
story. All of us are social creatures,
even if we don’t like to go to parties. We need connection with
other people. And so whether we’re talking about work people
or home people, the people you went to high school with, your
kids, your significant other, that is the best investment that
you can make in your mental health is to spend that time
with those other humans, keeping those relationships strong and
connected. Hands-down, the most important intervention that you can do.
And I appreciate that that’s tricky. It doesn’t always feel
that you have the right people around you, or you have time, or
you know how to be close. I can appreciate that it’s easier said
than done, but if this is the only thing that you remember
from my talk, this is the one thing I want you to hear. It is
worth the effort to figure out how to do it. It is worth the
therapy bill. It is worth whatever you have to do to
figure out how to be well connected to a handful of folks,
because that is the thing that will make the difference when
you are starting to be in burnout or when you are
experiencing something hard in your life. Relationships are the
thing. So protect those relationships is the thing, the number one thing that
you can do to prevent burnout. And you know, sometimes that
means that you are just spending your evenings commiserating
about your crazy boss, or sometimes it means that you are,
you know, hanging out with your WordPress buddies talking about
the frustrations of the Gutenberg rollout. Whatever it
is. Just be with other people in the presence of your
frustration. No. 2 is to set clear and meaningful
goals. Lots of books about goal-setting, lots of
conversation about goals, but really the bottom line is that
you have this brain that seeks completion. So when you can let your brain
know, hey, here is what I’m asking of you, here is the task at hand, and
have that be very concrete and very
achievable, this can mean that you have one thing that you do
in a day. Two things that you do in a day.
That you have very sort of simple expectations over
yourself. But that that is known to you, that you intentionally
say, hey, this is what I’m about today. This is what I’m going
to accomplish, and that there’s a tight timeline on those goals.
Because again, when you think about burnout, you think of the
sense of like doing all of this effort for no observable benefit, for no
reason. So when you have clear goals that you’re trying to
accomplish, and sometimes this can mean breaking really large projects into smaller
bits that you set these goals for yourself, so that you are in kind of control
of the feedback loop. It’s also really helpful to stay
connected to the why of what you’re doing. So I’m working on
this site because it makes this person’s better or I’m working
on this site because it’s going to be used by teachers to better
communicate with the parents of their students. Like, keeping a
clear perspective of why it is that you’re doing the thing that you are doing, more than
oh, I got 18 things on my task list and I just have to get them
done, remembering the human side of the code, remembering the
human story behind the project, can be really helpful to you
staying connected to the reason that you are here, you know,
doing this effort in the first place. The other thing that is
increasingly difficult, but increasingly
important in protecting yourself from burnout, is really setting aside good
focused time to work. I can appreciate that we live in
a very connected age, and I am a great
fan of the internet. However, most of us have too
much, too often, with no clear time to let
our mind really go, to let ourselves
really think. So this topic is, when we think
about what creates strain on us as professionals, it’s often
this expectation that we’ll be able
to multitask or to respond to
Slack, to Twitter, to, you know, an email
from a client, and while we’re doing
that responding, also be building some really, like, elegantly designed
site. When we put too much burden on
how many things we can think about at
once, our brains don’t actually work that way.
We think we’re multitasking, but really we’re just sort of fracturing
our effort. So when we look at how human
work is changing, with technology, one of the things
that we’re seeing is that we expect our brains to divert
quickly. Like, we’ll get a little, like,
buzz or a notification and we’ll think, oh, I’m just going to check that real
quick, gonna stop what I’m doing and check that real quick. It’s not actually a real quick
check. Our brains have to stop doing one thing, shift to
another thing, and we stay in that second task much longer than we realize, and then we
shift back to the first task, and we spend
a lot of neurological time and energy
trying to keep back up to the thing that we started in. So my point here is that we want
to be really, really protective of how
we focus or minds. So Cal Newport wrote a book
called Deep Work in which he outlines this. And one of the things that you
can do to just overall protect your neurological health, is to give
yourself uninterrupted time to work. Which means turning off your
phone, turning off the internet,
turning off notifications, whatever it is that is sort of
pulling at your distraction, because the burden of shifting
is exhausting for our brains in ways that we don’t cognitively realize and
it’s become super-normal, but it shouldn’t be, because it’s really not
helpful for our brains and for the ways that we work best. So
when you think about how to prevent burnout, it means that
you are carving out chunks of time in your calendar where you’re just not available
for email, for Slack, for all of the things, so that you can work thoughtfully, you can just
focus. All right, No. 4. Party well.
Celebrate often and well. When you set those goals, that you
have ways that you like to celebrate, that you like to
play. And this means that there’s a
little bit more lighthearted playfulness to your very serious grownup job. When
we learn how to celebrate well, that can be a dance party, that
can be, like I said, a bag of Cheetos on the floor with your
dog. It doesn’t need to be highly
complicated. My friend Phil Dirkson, who is a
WordPress dude, he had some specific goals store things he for things
he wanted to accomplish with his plugin and so he got some
bottles of wine and each of them got a sticky note in terms of what goal needed to be
accomplished before he opened that bottle of wine. So whatever
it is that gets you excited, that you tie, play,
joy, fun, wine, whatever, to a specific
work goal. Again our brains love that
completion. We love the circuitry. We love winning the
maze. And so when we can rig the
system so that we A, win the maze, because
we have really easily accomplishable
goals, and then B, we have a little party about it, our
brains are really happy. You know, keep your brain happy!
All right, last one. Last way that we can really
strategically and carefully prevent burnout and we’ve talked
about this already, which is to clearly tie the why, the meaning
behind our effort to whatever it is we’re doing. I said it
already, we can really do very difficult things when they’re
important to us, but when we are constantly doing work that’s not
important to us, for outcomes that aren’t important to us, is
when we really get into trouble, so connecting the why and maybe the why is so
that you can have the freedom and flexibility of working from
home, or picking your kid up and taking him to soccer every
day. The why can be related to your life, but the why has to
drive why it is that you’re spending the time and effort in
this particular way. And to constantly articulate
that to yourself is very, very helpful. So if you’re already in burnout,
which, hey, 30% of you probably are,
there are some things that you can do to help reset your brain. And this is like a whole deep
conversation in and of itself, so we focused a lot on prevention, but
just to give you the nuggets, if you’re already in burnout, number one, you
really have to rest and reset your body. To reverse some of
that neurological damage that I talked about, we’re talking
about four weeks off from work. It’s sort of the minimum that it
takes for the brain to reset. So I know that’s not a popular
thing to say and that’s not easy to do, but if you are really
fried, if you’re really struggling, you have to have
deep breaths, you have to take time away. Burnout recovery
also involves a return to meaning. To introspection, to remembering
why it is that you’re doing this in the first place. It also involves that
reconnection of relationship. Restoring those connections,
those ties, those deep relationships that help prevent
us from feeling burnt out in the first place, and then finally
the pursuit of play and joy. This is my way of playing, which
is to do circus stuff, which is
super-fun, so having things in your life that bring you a lot of joy and delight and
are not necessarily tied to your job. So you guys, the conversation
around burnout, around mental health more globally, is one of
the most conversations that I think that you can be having with your family, with
your coworkers, because these issues affect all of us. Even
those of us that work in this field are not exempt from what
it feels like to be completely drained and overwhelmed and sit
in the dentist chair and have three dentists sit and
look at you while you cry awkwardly. So I’m glad that
you’re here and I’m glad that we’re having this conversation,
and I hope that you’ll feel a little bit better
equipped to talk about burnout with the people in your life. So
that’s all from me. I will be around and I will be happy to
talk with you or answer questions in the future, thanks,
guys. [applause] That was great, hopefully you’re
all wonderfully relaxed now. You know what to do about burnout.
Our next session in this room begins at 10:30, you have a few
minutes to get a drink. If you need the restrooms, they’re all
in the hallway. Also want to give you a quick reminder, if you have not got
your WordPress t-shirts yet, you’ll find those down in the
sponsor hall. You’ll see a table set up with blue t-shirts, just show them your
badge and they’ll give you a t-shirt. See you back here at 10:30. Becca rice welcome, welcome, Room 230
people, we’re better than those 240 people,
aren’t we? I haven’t been over there so I
can’t justify that but we’ll pretend
we are. A few announcements we need to make real quick. Please silence your cell phones
or other electronic devices that are likely to make noises. We do
want to please ask that some of the seats towards the front here
are left open for accessibility. We do have some over here so
we’re OK, plus if you do need any help in
any way, please let us know. Our volunteers will be able to
accommodate you in any way that we possibly can. There will be Q
& A after the session if we have the time. So we do ask that you hold off
on any questions until the end. If we do have time for Q & A,
then we will run microphones out to you so we can capture the
audio and the question will be easily heard. Let’s see what
else. If you want to speak with a presenter at length later,
she’ll be able to tell you where she’ll be found later
on after the presentation and we want to remind you to pick up your blue
WordPress t-shirts if you haven’t done so
yet, they are located in the sponsor
hall down on floor 1. They’ll be able to look up and see which
shirt you had placed the order for there. And finally
contributor day, I want to remind you about that. Happens
tomorrow — I’m sure you haven’t heard about this yet. It’s the
first time ever — we know it’s not the first time ever. It’s
tomorrow if you’ve never been to contributor day before, please
visit the Get Involved table in the sponsor hall or attend one
of the sessions entitled, everyone can help make WordPress
better, how to contribute to WordPress. Newcomers are welcomed, no
experience is necessary, contributor day is an excellent
way to get to know other people in the WordPress community. So those are all of my
announcements, let’s get to our featured speaker, Beka Rice is the head of product at
SkyVerge where they’ve built tools to help e-commerce brands
grow. She spends most of her time
building Jilt designed for e-commerce and e-commerce
memberships, a 23508 for purchasing clubs and one of the
most popular plugins for e-commerce. So please welcome
Beka Rice. OK, so thanks so much for coming
out today. Really appreciate all of you attending. So to
give you a little bit more background about what I’ve done,
I’ worked with SkyVerge for about 6 to 7 years, and in that time frame,
we’ve helped tens of thousands of merchants build e-commerce
stores. We’ve built over 70 different
e-commerce apps, plugins, and services, and not just in woo commerce,
we’ve also worked extensively can Shopify and with easy
digital downloads. So I’m going to go through some tools and strategies that we’ve used
to help merchants scale online stores from an initial launch
where they’ve kind of gained some validation to their
business to a point where their business
is self-sustaining and gaining 6 figures in revenue annually. So
today we’ll talk about a few things. Why you should stop
worrying and love automations. Why they can be really impactful
for e-commerce brands. How we identify the right
opportunities for automation. And the most impactful
automations that a store can use, as well as some best
practices around them. If you run an online store, this
should hopefully be pretty helpful for you, but if you’re a developer or run an
agency, we’ll look at some areas where
you can help clients improve their businesses and how you can be looking at
taking on more e-commerce projects as part of your own
business. So with that said before we
actually get into the meat and potatoes of
this talk, one thing I always hear from people is hm, I don’t
know if automations are on brand. I don’t know if that’s
going to be right for me or my store, right? And especially
merchants or founders I hear this from. They hate automations. Right?
This is not for me or this is just for large retailers and
this isn’t something that fits with my business, right? And I
really want to challenge that assumption. Automations are incredibly
impactful for micro-businesses, for solo
sole small businesses, for
solopreneurs. Automations can be a really
impactful way for businesses to grow
revenue regardless of their size. People at automations and they
this isn’t going to be for me, because we all think of things like this. (Thank you for calling Air
Canada. If you have an existing
reservation, press 3 …: Etc. etc. etc.) Right and you can’t imagine how
many times I’ve heard that in the
past few days. And people think that’s what we’re talking about
when we’re talking about automations and that’s not a
good automation, it’s not helpful for the people that it
should be helpful for, so when we’re looking at
automations, we’re not going to talk about bad automations and
there’s a difference. A bad automation is like this,
it’s impersonal. Why when I called in Air Canada,
didn’t you say we recognize your phone
number and you have an account with us, so are you this person?
Automations should be personal and they allow us to get
personal in a way that we can’t by hand or automatically. So a
bad automation is one that is impersonal. A bad automation
doesn’t consider all audiences or parties involved, so that automation may help Air Canada,
and it reduces their costs and overhead in terms of answering
the phones, but it doesn’t help me with as the customer. So if
we’re going to put a good automation in place, it should
be impactful for me, as well as the company behind it. Any
automation that focuses solely on time or costs without
delivering value is a bad automation, so everyone
involved with this automation should be getting value from it.
In fact, you probably already use several automations and so
if you’re a developer or agency and you’re getting resistance about putting
automations in place for your clients, point out to them that they’re probably using
several automations, so calendar
reminders. It look up the Slack so that
every time I start a meeting Slack changes
my timer for me. So I just don’t have to think about these
things, and most people are already using calendar
reminders. They’re already using order emails that are
automated. When you take an order on your e-commerce store, you don’t send
out a manual email saying, hey, we got
your order, but that would be ridiculous. They already
automate their order emails. They automate things like site
backups, right? You don’t log in and download all of the files
from the site and the database every single day. That would be
ludicrous. You offload that to your hosting company. You so we already recognize that
there are a ton of impactful
automations that an e-commerce store can be using
and so we should continue with that trend and build on even
more automations, not fewer. So if you get some Hess hesitancy around that, and to
scale up even further. So why are they so vital, if
there is such a thing as a good automation? And we acknowledge
that brands should be using more of them. Why do you care? Well,
I think that they’re one of the keys to growing to over $100,000
in annual revenue. So to take a business from something that’s maybe a side hustle or a
hobby to something that’s a self-sustain
self-sustaining company, automations are going to be key. There are essentially three ways
we can build, we can save time, save money or sell more and the
great thing about automation is they can cover all three of
these components. They can help you save time, they can cut
costs and save money, they can help you sell more to your
customers, they’re also going to help you scale. So one of the biggest things you
can do when you start out. Once your online store has some
initial traction and you’ve got customers validating that this
idea is a good one, now you need to think about systems, and this
is true for anyone in this room. This is a big thing that we
think about at SkyVerge, how can we build systems as a company to
help us scale past up where we are. So automations are going to
help you with investment. You’re going to organize tools, not
teams. So if you’re doing something that takes you five minutes per day when
you get ten orders a day, that’s not a big day. But what if we’re up to 10X of
that? If you can’t keep doing that at scale, then you’re doing
the wrong things and you need to think about
offloading that. So we’re going to think about tools, not just
team members. That’s going to help us manage the top expenditure for a small to
medium-size business. Right? People, head count is the
biggest cost. That’s not to say we don’t want
to hire people, we do. We want to create jobs. But we can’t do
that by paying people to do low-impact things. We need
people to do what they’re best at and let the robots do things
that they can do. We’re going to think about lowering effort
so we’re going to do less time invested in those tasks and
simplifying ongoing maintenance. Now it’s not just something that
we need to train people on constantly. That doesn’t become
part of the employee handbook that everybody has to learn,
it’s just something that’s seamless and can scale up over
time. And better personal station,
there areization. So how can we scale tasks in a way that’s not
possible by hand and how can we differentiate a brand and the
customer experience? And these are all things that we can use
automations to do. Now, the biggest caveat that I
hear from people is, oh, this is expensive, it’s for large retailer, it’s not for
me, right? It is for you, it’s exactly what you need to be
investing in when you’re not making a ton of money from your
store. Don’t throw more of your time at it, think about the way that you can
reduce your time. A lot of folks say I can’t
afford this, automation can be as simple as adding a direct
integration between two services and cutting out one step that
you might be doing manually and even if it’s indirect there are amazing tools
for this. That can connect a couple of
services just to do something that you might have done by hand
in the early days. And so even if we think about
this purely from a cost perspective, let’s assume that
you do spend 5 minutes a day on something, you should assume
that your hourly rate is at least $100 an hour if you’re
starting an e-commerce store, so if you’re a founder, let’s say your hourly rate is $100 an
hour, I spend 25 minutes a week on
something, and you should be able to spend at least $300 on
this to get rid of that task, so even if you do something for
only 5 minutes a day, it’s worth at least a few hundred dollars
to take that off your plate. You’re going to pay that off in
three months. That’s an amazing payback. So get rid of those tasks, get
them out of the way so that as your company scales you don’t
need them anymore. So is that worth a plugin? If this is a $99 plugin, hell
yeah, we should be doing that every day. Even if we’re only
thinking about as a cost perspective, I still think
that’s short sighted. You also need to think about selling more, so now let’s think about
that with those three things in mind. Potential growth is
another part of this, right? You are actually investing and
you’re going to get something back for that investment in
terms of growth. So when you think about the fact that you
might not be doing something right now to sell more that an
automation might enable you to do,ing now we’re not talking
about a few hundred dollars, we’re talking about thousands of
dollars, so as a merchant, if you’re running an e-commerce store,
this is where you should be spending your time and money and if you’re an
agency, these are the kinds of things you should be showing
your clients. So I kind of think about it in two major ways. The
first is we’re going to improve customer experience. We’re
going to automate areas that help the customer and help us,
we’re going to save time, save money, we’re going to sell more. And then we’re going to buy back
employee time or team member time for higher impact thing. s. Spend all your people time only
on high-impact things. So that’s the why.
Let’s talk about the when and the what. When do we automate
things and what automations do we look at at different stages
in the business life cycle? Right? What to automate and
when. So there’s kind of a few stages
here of online business growth, right? There’s when a business
is launching, when they’re making up to
$25,000 or so a year, this is something that’s still your
hobby, right? This is not a company yet. So you might be
getting a few orders a day. This is when you’re trying to figure
out acquisition and validate your idea. I’m not going to focus a lot to
getting 0 sales to let’s say 10, 25
thousand dollars a year. There’s a lot of great stuff
written about acquisition, I’m going to assume that we’ve
launched, that we’ve validated that this is an idea that people
care about, and now we’re going to to traction. How do I 10X this? Right? And
then how do I go even beyond that, right? So you’ll see that
most online brands, they’re not making a ton of
money from from their store, they’re making
$1500 a year, $10,000 a year, that’s
when you’re still figuring out if this is worthwhile, but if
you can get past that to 6 figures in revenue, now you’re a
self-sustaining company, and then we have to figure out how
we scale. And that’s when you stop being a small business,
right, the U.S. census has good classifications for this, that it depends on
employee head count or revenue so how do we
kind of help you through that stage of being a small business
and getting to that traction phase?
So that’s what we’re really going to focus on here. And this
is a kind of interesting graphic that I love from Shopify that
sort of validates that idea. So when you’re going from launch,
when you’re just getting started, you have no sales,
you’re focused solely on acquisition, you’re just focused
solely on getting customers in the door and saying, is this a
thing that people are going to pay for? But as soon as you
start to get from sales as you go through what I call the validating phase, as you get a
couple sales per week, right, you focus on how can I keep
those customers with my brand. As you focus on getting
consistent one sale per day, even if we assume
a really small average order slam of $30 per order, now you’re making $11,000
annually from your store. So this is us getting into that
launch phase and starting to exit that launch phase. Now
we’ve got an idea, people are willing to pay for it, now look
how quickly we’re shifting over to retention manned really reretention. Now we focus on keeping the
customers that have come to our brand and once you’ve got 10 sales per day at
$30 average per day. How do we go through those last couple
phases here? We’re going to shift from acquisition and we’re
going to think about retention. Even if you’re not Stelling a
consumeable good, right, something that people come back
for and buy again and again, we want to think about retention
and loyalty, so let’s say cars for example. I don’t buy a car very often but
when I do buy a car, that brand wants
you to tell what you bought. I bought a Volvo and I tell
hundreds ever people about it, because it was great, so that
brand wants to retain me as an advocate even if I’m not going
to spend more money with them. So we want to switch our mind
set to think about our customer base and retaining them and
keeping them loyal. That’s going to help us build a
competitive advantage. loyalty is the key to growing
from say $10,000 in revenue to $100,000 a
year in revenue. Build that customer loyalty and to build
retention. So we’re going to look at
automating a few things to do that. Automating acquisition. So all those things we learned
about getting our first customers, we’re going to take
those learnings and start to apply automations to them. We’re
going to look at how people move through our marketing, we’re
going to streamline advertising and the acquisition channels. So everything in the launch
phase and try to pass it off to robots. We’re going how do we retain
customers, how do we keep them consistently active with the
brand or the site in some way and how do we build better
relationships with personalized content and personalized
customer relationships in a way that we couldn’t necessarily do
by hand. And then also think about internal processes, so how
do we make sure that the people who work 0 for this
company are doing the most important things. Thinking about
order and inventory management and gathering feedback from
customers, let’s take all of these steps and think about how
we can automate them so that we’re building systems and we’re
ready to bring this brand to 10X. And so some of the things I
am I’m going to throw in here as we talk about how to do this is some research
that we did with Jilt. Over the past couple of months I
took a representative sample with over 10s of millions of
emails sent. And say OK, what do we do here in terms of
conventional marketing? So of the bulk of the marketing
materials we sent, how much revenue per send do we get in comparison to
the automated emails that we send to customers and engage
with them as we go through the purchasing life
cycle and automating cycle. And automations generated 12X
the revenue percent in comparison to
a marketing email. That is an insanely high
difference. So automations can help you sell more and do it
with less effort. So let’s talk about how they do
that. How do we put this into
practice, how do we put automations in place that are
going to be impactful for this business, that are going to save
time, save money and sell more, what should we be looking at?
Well, we got those three phases that we talked about. The first thing we want to
automate is acquisition. So if you’re running a store, think
about what channels you’re using. If you are an agency,
think about digging into this with your clients. These are the
things you should be talking about in discovery and the
questions you should be asking them about your business. How do
you get customers, how do they come in and how do they convert? So things that pretty much every
online brand should be doing. building email is number one and
not everyone still does it. Email is going to be your most impactful sales channel as a
growing brand. Email converts better than
social media, 4 times better than
social media. So collect marketing opt-in and
build a lead list for yourself with every single person that
comes to your store, you want to make sure you have an email so
you can communicate with them and retain them in the future. So if you download my slides off
of slideshare. net, these are tools that we use
with these. We’re about to launch a project
with Jilt so they do a fantastic job
with this. Think about shopping alerts. Right? So start to
personalize the acquisition funnel as people move through
your site. So how do I tailor messages to
muss customers? Think about things like live
chat or push notification notifications,
think about chatbots that say hey, can I help you out with
this, do you have any questions about pricing? Especially if
someone spends more than two minutes on that page, maybe you
should be reaching out and helping them and that’s something you can do
in an easy way. Cart notice is something
specific to this. That’s where you can pop up messages, like
hey, you added this thing to your cart, maybe you’d like this
other thing. Or add $5 more and you get free
shipping. Or think about tools like intercom, right, with live
chat where you can do this. We use intercom ourselves and when
someone lands on our pricing page and spends too long there, we say
hey, do you have questions about pricing? How can we help you?
How you can identify who your best customers are, so can we tag
people in some way based on what they’ve done? It right, so for
example what we do with Jilt is scoop up all the data from a
store, so what order history do people have, what customer
behavior do they have and then email based on it. Like I want to email everyone
who purchased product A so thinking about these two things
in terms of automations. These are things you should be asking clients if you run an agency. Then think about how you
advertise. So you should automatically be
syncing product data to ad networks, right? Automatically sync your
information to Facebook, to Google, to wherever you buy ads.
This is an amazing area for you to be thinking about, most
merchants struggle with things like Facebook ads or
Google ads. They might spend $100 and
nothing happens, so they lose interest. So automate that process. Make it easy to publish ads and
automate it. Every single person running a
store in here, if you have not scheduled your sale for Black Friday,/Cyber
Monday yet, I would encourage you to do that. Automate a
series of social media posts that are going to go out and
recommend products that are on sale and Buffer is a really
great tool for that. You can automate posting to all
of your social media channels in
one single tool over time. So when you get traffic and
you’re fighting and scrapping for every single visitor in the
early stages of your business, make the most of that traffic. This is what we did to start
Jilt. It was the first tool, hey, —
and this is one that again, if you’re running a store or you’re
a developer agency working with stores, this is something that
works with almost every single customer demographic and every
single person should be doing. The reason I’m I am harping on it is this is
not made up. This is a ton of data from everything we sent in
Jilt. Abandoned cart reminders make
$4.80 per send as an average across our entire customer base,
so thousands of stores using that, that is an
insane number. So every visitor you get, ever ever yes email you send out, about $5
return on investment in that email send. That’s mind-blowing,
right? Cart abandonment emails drive 4X
as much revenue per send in
comparison to use. So these are extremely powerful. When we said don’t think about
euments automation just in terms of
revenue. And in fact when we see small
brands come to us and start doing this, they’re usually bumping revenue 10, 20%.
So this is an area. Show people that these are not things that
you’re thinking about yet, but we can do with automation that you
haven’t seen before. Then let’s think about retention. How do we
build loyalty with automations? How do we keep people with this
brand for the long time to either
purchase again or refer other people to
the brand. Referred customers spend twice as much as
non-referred customers. So how do we build customer
loyalty through this? Think about sending SMS updates
the, especially if you’re working with brands that are not
in the US. In places where you might not
have great bandwidth or using cellular data isn’t as popular,
emails aren’t usually the way people communicate, send
SMS messages instead, so think about
sending text message updates for order changes, booking
changes or store revents. Twilio has a great actual for tool for this. Talk about automating opt-in and building a marketing list and an
email list. That’s not that useful if people don’t hear from
you. So you can build this email list and maybe you have tens of
thousands of people on it, that’s great. If these people don’t hear from
you, it means absolutely nothing. So welcome new
subscribers and customers regularly. Use that email to help develop a
persona that you’re going to match against in use in your
advertising. Really important out of this is
to set expectations and encourage purchase. So I’m going to send a little
bit more time on welcome emails because they are amazingly
important and incredibly underutilized. When I subscribe
to a brand and I say I want emails from you, email me. Don’t
be shy about it. I’ve told you I want to hear from you. But a lot of times we protect
our customers from that. Oh, I don’t want to annoy people, OK?
Well, what I see is much larger brands, they’re e-mailing people
every day. That might be too much. But a lot of times, small
brands they don’t ever email their customers, they might email them every couple of
months. Don’t do that. Send at least one email per
week. Here’s how often we’re going to email you, here’s the
kind of content you’re going to at the time from us, and if you
don’t want this, unsubscribe. Keep your list engaged, right,
so a welcome email is the setup. It’s the alley-oop, not the slam
dunk, right but that gets every other email you send more likely
to be read. Set up a welcome automation that emails once a
week. Keep your email list warm and
engaged, because frequency of email is a
really good component of this and most
small brands do no the do that well. And also think about
recommending products. We have a recommendation engine with Jilt
that say here are some things that you’re probably going to like
and probably should check out. Ut . Automate cross-selling and
REM. So product recommendations is
also a great plugin for this if you want to do it onsite. But do
it in your emails, as well. So a lot of this is going to help
customers find a lot more useful stuff and they’re going to
increase activity, which is our biggest thing. We want to keep
people engaged with this brand. And in fact, email is the best
way to do this. And it probably comes as no surprise from me,
since I worked for a company where one of the biggest
products is an email marketing platform. So don’t take it from
me, take it from Shopify, if purchase frequency
is the backbone of customer retention,
then email marketing is the backbone of customer engagement
and your retention kit. It’s so underutilized from many
brands and it’s one of the biggest reasons you can go from 4 or 5 figures to 6.
So some other automated emails that are going to help you build
relationships. Reward VIP customers, so
especially as you’re working with a new brand, so if you’re
an agency and someone comes to you and says hey we’ve got a
little bit of traction. This is a side hustle, though, how do we
turn this into our full-time job, right? Make the most out of
their existing customers, but reward the people who have
purchased more than once, so send a thank you email, send a gift,
send a discount, hey, you spend $200
with our store, we’re a new store, this is amazing, we’d
love to send you a free gift and also, would you mind writing us
a review, would you mind tweeting about this, if you
tweet about it, we’ll also give you ta a coupon off
your next purchase, too. Reward loyalty and turn those
into life-long customers. Think about reward followups. Welcome new customers, or
whether that’s asking for feedback so that you can improve your marketing
funnels. One brand I think did this really well that I was
actually super shocked with is a company called Frame FrameBridge and they do custom
framing and I could not find a frame that I wanted and I was
like, I don’t really want to figure this out and one of my
friends says, hey, this brand is really cool, they do this for you, they
send you send them your thing and it comes back. And they used
order follow-ups to bridge the most important gap in e-commerce, which is the gap
between when I spend money with you and
when I get the thing. That’s what retail doesn’t have.
Because I pay money and I walk out with a thing. We don’t have
that with e-commerce. So what Frame Bridge did to me
is hey, we got your thing, we’re going
to send it, get its pooed. By the way, here’s get excited. Here and here are
some tips about how to properly space artwork on a wall and so
here are some things and maybe measure it so that by the time
your thing comes, and I was like, oh, that’s helpful. Maybe I I should rearrange my
whole living room and then the day I was getting your thing, to
get this, here’s the tools you’re going to need and
remember those tips we sent you a few days ago, too, and this was so beautifully ex
executed that I now tell people about
this thing. So think about how you can educate customers, a
photo frame is not something that I would would have thought
about as an education opportunity, but they did in a
really creative way through order follow-up emails that were
super impactful and then think about reengagement, so once
someone has purchased from you, think about how you keep them
active with your brand. If that’s leaving a review, if
it’s giving feedback, sharing your products or if it’s
purchasing again, especially if you sell consumable goods, so
if you sell coffee or things like clothing where people
should be purchasing again, you should be sending them
emails to reengage them. So you send, hey, haven’t seen
you in a while here’s some new stuff. And if you’re e-mailing
once a week and making sure your emails are read you’re going to have a much greater
success rate So why am I harping on these
three? There is some really cool stuff about these automations in
particular that make them pretty great
performance. So rewarding VI Ps, VIP reward
emails are opened 68% of the time. That’s 81% higher than the
average automation. Most people think, oh, yeah, order receipts
are what everyone reads. A reward VIP email is opened
more than an order receipt. Here so they’re super-engaging
emails for your customers and you should be leveraging them.
People are going to read them and going to come back and
engage with you. Think about your post purchase
emails and replenishment emails, so
they drive 2X the revenue per send. Those
are the ones to think about. And in general, automations are
both opened and clicked about 3 times more than marketing
emails, so while it is important to send newsletters and sales
announcements and to engage your email list, just sending bulk
newsletters is not the best way to do that. You should be doing
that with automations because of how impactful they are, so a lot of that is
focused on automating your acquisition and customer
relationships and retention and the final thing we should be
thinking about is how we can automate process.
And again for the agencies and developers in the room these are
all great areas where you can add value to your clients. And processes is another one.
The world doesn’t need to be this way. It could be different.
You don’t have to do this thing. I can automate it for
you. The challenge is this is the hardest part to know where
to automate things, because every business that is so many
different workflows and so many different things they do that it
can be tough to have a one size fits
all thing. You can deliver a lot of value
in custom projects here. There are a few good areas for you to
be thinking about, though, so if you’re looking to automate
processes, one of the first things you should look at would be think about low-impact
tasks, right? So what are things that a
merchant may do frequently or every day that
doesn’t deliver a lot of value to them or their customers, but
they just do it because it has to be done, right? Especially if
that thing takes medium or high effort. So look into the workflows.
Likewise, if you’re the merchant, you don’t have to do
that. Get professional help, you can get all of that off your
plate. So the first area is product management. How do
people manage and update their product inventory, right? What
happens when you get a new package of stuff from your
supplier? What do you do with it? It ask them to walk you
through that process. How do you count inventory, how
do you make that Niv available on your inventory
available on your website, especially if you’re managing
inventory across several different web sites, use a tool like ship style station
to handle that. You get low-stock notifications,
to say there’s only 5 of these left,
send that email to whoever you get inventory from, say hey, I
need more of this thing. Send it to me now and I don’t
have to worry about placing new orders
for inventory. Right? Automate these processes. You could send an API request
out to something else using that hook, so you can automate the
whole inventory management process in a pretty cool way.
Also think about product pricing and product data. What happens
when we need to update the price or description or something like
that? Are you pulling that from an external source maybe I could be scraping
it for you. Maybe I could put it into the site automatically
for you, right? So dig deep into the product management processes
because these are already low-impact tasks. A human does
not need to do this stuff so as an agency by about how you
can automate this and if. Ship wire is another cool actual
formal verification tool for that. Next dig into order management
so again, if you are working with
merchants, this is another process where you’re going to
have to ask them a lot of questions. Fulfillment is like
the single hardest thing in e-commerce and it’s very
different and it varies widely from brand to brand. But think
about how you can help them with shipping labels. So WooCommerce
shipping has a great thing for this. They when we send out care packages
to our team and I’m standing there in line with packages waiting for UPS to
print labels for me, I’m miserable, truly miserable. You
can automate that, right? Take shipping labels and print them
automatically and we’re actually doing this now for our team when we
ship them things. So merchants doesn’t have to do that and you can automate pickups.
Think about managing tracking numbers. So can we put direct
integrations in place with UPS or FedEx so that
these get imparted into your store automatically and sent out
to your customers automatically so you don’t have to worry about
bookkeeping. How do we think about exporting
orders? We have a plugin that does that at SkyVerge that’s called CSV
export. And when your orders get placed we’ll take all the new orders and send
them off for you. Pretty neat, right? Also ask for product reviews and
feedback. So I can you can automate a lot
of that. This is one of the most challenging places for you to
automate things but it can be one of the highest impact. So
this is a really good area to focus your discovery on, as
well. And think about customer differentiation. Almost every
single e-commerce store has Google Analytics set up, you
want to know how many people actually
know what to do with anything to do with tracking analytics? I don’t know what it do with it
half the time. So if you’re a niche business
and can understand that, it’s a wonderful niche for someone to
get into. So how can you automate
analytics and reporting and identifying your
customer personas for you so you can sell more and improve your
advertising. That’s a great area to think
about automation. This is one of our top use cases
for WooCommerce memberships, right, which is one of our
biggest plugins. Wholesalers say hey, you’re a wholesale member and you can get 10% off
everything on the site. So ask people if you are a
developer or agency, how can I help you with
product management, how can I help you with order management,
what happens between customers placing an order a and that
package getting to them, tell me about that process and tell me
how you differentiate between the customers and automate that
business. And if you’re looking to help and looking to scale up, these are
all the things that can help you go from
now this is my primary thing and this is my business and this is
my company I’m going to grow it. So to recap. We want to think in
terms of automations, how do we use them to sell more, how do we
use them to save time and money and how do we get them
to sales and systems. And then we should be focusing on
acquisition, retention and loyalty, as well as internal
processes, so we’re going to automate each of those things,
we’re going to automate loyalty and retention so we have a
dedicated customer base who keeps coming back and is going
to help us build the foundation on which we’re going to scale
this business and then seek automations in internal
processes so we free up employee time and make these impactful into a merchant that’s trying to
make this grow. So with that said we’ve got a few minutes for
questions and again, if you want my slide they’re on
slideshare.net, you can download them. So yeah, I think we can
dive into some of these. I do have one rule, actually for
questions is that please make sure you think it’s valuable for
at least one other person in the room and if it’s really
specific, that’s totally fine, I’m going to stand out here in
the hallway and we’ll chat one-on-one instead.
Audience: Hi. So some of these practices do
you think they will work the same for our business is B2B, are there any special
tips you have for that? Yeah, absolutely, especially for
B2B businesses a lot of time what you’re selling them is incentive to
help them grow their business, right? Show what you’re doing is
should be sending them a lot of content that can leverage your
products to sell more. So I would say it’s even more
important for B2B businesses to build
those relationships. Audience: So a lot of times
when we’re automateing these and we’re
setting up automated emails tips for tailoring that information?
The welcome emails are a big thing so when you do that, and
you say, like, hey, you made your first purchase with us, what’s your role company and
use those email — I’m going to get
emails that tell me how to get the most out of that product but
maybe in that welcome email I ask you who’s in charge of purchasing for your your
organization, give me their email and then I’m going to send
them a different email. That one’s right in the light,
edge a he going I’m going to be blinded
trying to look at whoever is looking out there.Audience:
First, thank you, I really appreciated the presentation, it
was amazing, you mentioned in the beginning the bad experience with calling
on the airline? Poor Air Canada.
Yeah, I think a lot of us can relate to that. A lot of
websites have automated chat boxes. What is your take on that
and the customer experience with — I don’t know if that’s
automations or — Yeah, I think chat is usually
done poorly, right? So it can be amazingly impactful when you
think about how can I deliver value with, so can I use some of
the information about the customer, maybe some of their
browsing behavior and give them a targeted chat message. Context
is everything. So I don’t want to land on your site immediately
and say hey, how can I help you today? If I get a chat box popping up immediately that has no
differential, that’s when it’s bad. Because when I see you
viewed maybe our top three products or you clicked on a
particular banner or you’ve done something and engaged with our
site now I can try to make some guesses about you. For example if you visited the
refund part of the page, I can ask, how can I help you? I think chat is one that gets
much maligned because it’s not personal. The key is to make it
personal and then to deliver value with it. We had one up here.Audience:
OK, this will be the last question, because we are out of
time. Hi.
Audience: Hi, so you mentioned about the VIP email, 60% more than the
regular transactional email. What does a typical subject
headline look like in that particular email? It depends on the brand line. But a lot of times it said, hey,
we wanted to thank you for your loyalty, here’s a gift. A lot of
times you might be sending them a discount and make sure you
tell them thank you and what’s going to be in the email and it
ends up being pretty powerful because like, you
spent $500, thank you, here’s a gift, makes those tremendously engaged and opened.
OK, I think we’re good to go. Thank you very much for coming.
Really appreciate it. [applause] Air Canada air Canada Welcome WordCampers, how are
you? Welcome to Room 230US, 2019 St.
Louis. We’re pumping the cold air in
from St. Louis. Hopefully it’s warming up for you. We ask that
you’d please silence your cell phones or anything else that
might make some disturbing noises during the presentation.
We’d like to keep a few of the seats in the area up front here
open for accessibility needs and if there is anything that you need, even if
it’s not accessibility-related, please let us know, the
volunteers we’re sitting up here in the front corner, we’ll
help you with anything we possibly can. From may be Q & A
if time allows here. But please hold off your questions until
then, we will run a mic out to you so you can be recorded and
the speaker can hear your question clearly. You might want
to make a note of what your question was, either on a piece
of paper, smartphone, laptop,
tablet, whatever you’re doing if. You want to speak with a
presenter at length, ask if they’re at the
support desk in the sponsor hall or keep in mind after this we’re
going to be breaking for lunch, pick up your
WordPress t-shirt that is also in the sponsor hall downstairs,
don’t forget to get that today before you leave. And you
haven’t heard about this yet, but the contributor day thing is
going on tomorrow. First time you’ve heard about this, right?
Yeah. If you’ve never been to
contributor day before and want to know what it’s all about,
please visit the get involved table in the sponsor hall or
attend one of the sessions entitled everyone can help make
WordPress better, how to contribute to WordPress.
Newcomers are welcome, no experience is necessary,
contributor day is an excellent way to get to know others in the
WordPress community. Again, that is tomorrow. Now, on to our special event
here, Jon Quach is a principal designer at
Automattic and specializes in design systems, animations and UI. Give
it up for Jon. Yay, thank you so much. Can you
folks hear me OK? OK, cool, because I can’t hear myself.
[laughter]Alrighty. Well, hello WordCampUS so cool to be here
with all of you wonderful people. I am going to be talking about
design systems. Just a heads up, there will not
be any live coding during this talk, in fact there’s not a code snippet in
sight, but you can take notes if you wish, but also feel free to
close your laptops and relax. Any resources I refer to will be
linked to at the end. I’m very excited to be here today at this
conference and in this room filled with a diverse set of
people with a diverse set of people, designers, marketing,
branding, QA and more. A roomful of crafters, by like
myself. By the way, crafters is one I’m
borrowing from my partner. At Automattic I get to work with crafters to improve user
interfaces and experiences — I’ve only been at Automattic for
about 4 months so I’m relatively new, a new mattician
as the folks at Automattic would say. They have a lot of fun words,
but I’ve been a WordPress user for over ten years, in fact,
WordPress was the thing that inspired me to get into this
whole design and dev thing to begin with so I feel so incredibly hum and and
honored to be with you all here today sharing and talking about
the ways that we can work with and improve UI within the ecosystem and platform that has
helped me and so many people around the world. I believe
design systems are important. They dramatically transform the
ways that crafters, teams, and organizations create user interfaces and
experiences and if you’ve never worked with
one before, I can understand how
complicated they might be. So today, I’m going to introduce
you into the world of design systems. Help you understand
what they are. And share insights and tips on how you can
successfully navigate your way into working on one. Simply put, a design system is a
tool to help you create things
consistently and efficiently. Despite having design in the
title, they aren’t purely about looks and feel. They’re also
about process and having resources to help your team
design and build things. And the things that you stein
design and build make up the interfaces and experiences for
your product. Be it an application, theme,
plugin or site. And if you think about your
current design and development, can you identify any gaps? Are there any inconsistencies
when it comes to your UI? Are certain user experiences janky
or hard to use? If you can’t, then you’re in a fantastic spot. I am jealous and to be honest,
you probably don’t need a design system. Whatever you’re doing
right now works. However, if you notice that
dropdowns aren’t working quite right, inputs and buttons look
different all over the place, frontend features take
longer and longer to develop and build, your application as a
whole feels fragmented, having a design system will help resolve those issues and make your app
feel more cohesive. So I stumbled into the world of
design systems years ago, by accident, really. I was looking
for a solution to help with the pain and the frustrations I felt
with fragmented UI. I started off as a designer who didn’t
code. Maybe dabble in CSS here or there, but nothing really
substantial. I was doing a lot of designing for WordPress
themes and plugins. And because I didn’t code, I
needed to hand things off to a vertical
developer so they can build it and there was an interesting thing that it happen
in my exchange. The designers in the room have probably been
there. I know. I know. The experiences were off. Parts were a little bit janky
and oh, my goodness, why does a button turn purple when I click
it? As I progressed in my journey, I
learned how to code. Turns out, coding is neat. Coding is fun and sometimes
coding is hard, but that’s what
stackoverflow and Google is for. I transformed into the world of
products and applications where I focused on designing and
developing frontend experiences. That was a big, big change for
me. Coming into it, I didn’t know how different these two
worlds were, because at the end of the day, they deal with the same things, frontend code,
backend code, databases, designs, experiences, internetty things, I suppose,
and of course, users. The biggest difference, though, was just how staggeringly complex
systems are, at least from my experience. Many services, my
interactions, layers, APIs, files, and of course old
ancient bits of code and no, you can’t refactor any of that,
because that would take it 6 years and is Jimmy, the guy who
wrote it all, he left two years ago and no, Jimmy didn’t
document anything. So I adapted and I did my
designing both in Sketch and in the browser, a thing that wasn’t
invented yet. Still, I had to hand things off to developers.
We were using the latest and greatest tools for doing frontend UI
stuff, but by the time the engineers were done implementing
my designs, things weren’t quite right. The experiences were off.
Why did we redesign the table here, someone asked, and oh, my
goodness, why do the button turn purple when I click it? And it kept happening again and
again, feature after feature, cycle after cycle, that purple
button kept coming back. Now I’m not blaming anyone. These
suboptimal and stressful experiences weren’t because
people didn’t care. Quite the opposite. These people cared
deeply about their craft and their work, and it wasn’t
because these people were bad at their jobs. These people were
very good at what they did and I had a lot of respect for them.
There was just can something missing, many things missing.
The most important one is that we lacked a common fundamental
understanding of how our user interfaces worked. Not just with certain
micro-experiences or views or sections, but as a
whole. We didn’t have a way to clearly
communicate design or interaction concepts. We didn’t
have documentation tooling or even reusable code to construct
these interfaces and experiences. At least not in a way that made
people feel good about themselves. That’s when I
started looking into design systems and that is when it all
clicked. So prior to my talk just now, who here has heard of
the term design system? Oh, would you take a look at
that! All right, so here who is interested in using a design system, whoa,
man, that’s awesome. And who here already is using a design
system? Awesome, so here’s what we’re
going to do, me and all the folks using design systems we’re
going to help everyone else and now everyone is going to use a design system and everyone’s
gonna be happy. Cool. Let’s create a design system, but how
do we do that? So if you try researching stein researching design systems
nowadays, folks get really excited. When you dive into the
engineering world, woof!, they talk about things like
modularity, scalability, encapsulation, packaging, a
whole heck of a lot of buzzwords. It’s all very
overwhelming. Where do you start in taking a step back for a
moment, as I do this physically as well, we have to understand
why we’re building a system in the first place.
Yes, it will make your products feel more cohesive, and yes, it
will help ensure that all of the buttons in your product uses a very specific
hand-chosen shade of mystic blue that
represents your brand oh, so beautifully. But these are the
results of why you create the design system. The reason why
you create a design system is to empower the people that will
make all of this happen. Design systems aren’t meant to
be used by the end user. They don’t care what hex code your
brand is. They don’t care that your button has been implemented
17 different ways under the hood. Something they do care about is
if your app was hard to use. Interactions and flows don’t
look or work right. The people who do care about the hex codes
and other implementation details are your people and yourself,
because it affects you directly. The direct users of your design
system are you and your crafters. Look at them go slaping hands,
so happy. These people are your teammates, Stephanie from engineering,
Curtis from product. These people, these wonderful people, are the users of your system and
your design system is your product
and your product is to help these people
do your designs better. It’s to help these people kick butt and if they already kick butt, well,
then your system will help them kick
butt better, together, faster. So the key with working with
design systems is to understand the major pieces and how they
fit together. In my opinion, there are three major pieces:
Design, code, and content. It all starts with the first piece:
Design. Design represents how your product looks and feels.
This often takes the form of pattern libraries, color palettes, and
design assets. What colors do you use? What fonts do you have? How do your user interfaces
look? How do you space everything apart? How do you
combine and blend these things together? All of these things
fall into the realm of design. Design also encompasses how your
design files and assets are managed. If you use an application like
Figma, this can help how you organize your layers and design
components. By the way, design components may be called
something different depending on the app you use. For example, in Figma they’re
known as components, inside of Sketch, they’re known as sim bombs symbols. The
idea is to create a design element which can be referenced aused
across pages and documents. Previously I had worked in a
design system alongside an extremely
talented designer. I was doing the code bits. When he was creating the many,
many symbols within Sketch, he felt
like he was coding, but instead of coding he was writing shapes.
In a way he wasn’t far off. By thoughtfully organizing and
creating your symptoms, you’re defining the foundational pieces
of your UI. You’re working through the logic of what these
elements are, how they work, how they can be combined together to
create larger things and you’re also creating a library of
reusable elements. Plus, by using something like design
symbols, any updates you make will change across all of your
designs. This is extremely useful when making wide sweeping
changes like, I don’t know, dark mode. The next piece is code. Code
represents how your products are built. This often takes the form
of component libraries or CSS frameworks. How do you build all the stuff
you’ve designed? This is really important because you can have the best colors, fonts
and UI designs in the world but unless they make their way into code, unless
they make their way into the hands of the users, then they’re
basically concepts, ideas of what they might be eventually,
maybe. And remember how I talked about components in design. Code
has components, as well. Components are code components
are your UI pieces, your buttons, inputs,
cards, tables. The building blocks for your interface. Just like design components,
your code components are to be constructed in a way that allows
you to reuse code when building UI within your app.
This will save you a bunch of time as you don’t have to go
rebuilding things you’ve created already and trust me, you don’t want to go rebuilding a
dropdown every single time. I’ve been there, it’s not fun. And
speaking of components, there is an important detail in this. You
have to recognize that your components aren’t a specific
piece of code or a specific layer inside
of Figma, they are concepts, they are labels that represent
something between your designers, dev server, and
devs, and the team. But the fundamental
understanding of what these things represent, how they should look, feel, behave is
shared understanding amongst your team. That is what a
component is. As you define and create more and more of these
components, you’ll start developing a vocabulary of parts
so that when you say hey, we need to have a button group at
the very top that controls the inner tabs of the
accordion, everyone will know what you’re talking about. By
the way, did you know what I was talking about when you said
button groups and accordions and things? Look at that you’re all
design experts already. And the last piece is content.
Content represents your brand’s voice. This often takes the form
of brand guidelines. How do you apply your brand’s voice and
tone? How do you communicate actions and intent through messaging and
in-app copy? As a designer dev, I can say that this last piece is often neglected.
Which is important because in addition to providing a unified voice,
having a clear understanding of messages
helps tremendously. I’ll give you an example. Let’s say you have a flow for
canceling an account. A dialogue pops up, are you sure you want
to close your account? You have two buttons, with one
that says cancel, one that says close, which one do you pick? I
have no idea, either. It’s a little bit of a silly
example. But it’s real. Just Google cancel versus close.
Having good consistent content will reduce confusion, due to poor
messaging and labeling. Not only that, but it enables
opportunities to connect with users in a meaningful way. For
example, your app reminding you that you are awesome for
completing a flow, or wishing you happy
birthday. Friendly personalized copy can
go a long way. And now that we have our pieces, we need
something to bind them together and that binding element is
process. Process is there to help
develop, nurture, and reinforce these
best practices, it ensures your
design components are created and thoughtfully organized in
that your code components look like how they do in design and
that in in-app messaging is on brand.
It encourages your crafters to work together. It fosters and
supports ways for you to evolve your existing designs. Design,
code, content and process. Are the fundamental pieces that
make up a design system. So let’s pretend you already
have a product team plugin or app, something you’ve already
built and launched, let’s say the past six months have been a
little bit brutal. The project your team has been
working on has been delayed, frontend development is taking longer
than expected. Buggy dropdowns and are still
problematic. It’s taking your designers
loppinger to do redesigns, because there are so many
screens to redo and they don’t have anything reusable. You don’t have much time left,
but the next cycle you learn something has to change. You
learn of something called design systems. After doing some
experimentation, you decide you’re going to go for it,
you’re going to do it for realsies. Before you start
anything, though, before you write your first line of code or
create your first design asset, you must first get buy-in, and
depending on your position and your organization, this may or
may not be easy. Regardless, it’s important to
start small. By nominating an upcoming
project or something that enables you to build your system
alongside your feature. Brad Frost, author of Atomic Design writes about this.
Once you get that green light, you must then get everyone
involved in working on this feature to agree to use the
system. The system will only work if you
use it. Brad has an awesome
walk-through where he describes creating a design system in his
talk the technical side of design systems. I highly
recommend you check that out. Again, links will be at the very
end. I’m going to focus specifically
on the beginning stages of your first pilot project, because
there are a lot of important details that need to be
considered. The most important detail would
be integration. Integration is often the most difficult aspect
of a design system and I mean how will your team use your system’s
stuff with your existing stuff? Design systems are often created
and worked on separately from the main product. That’s why
starting small is so important. It allows you to focus,
identify, and resolve gaps and challenges as early as possible. Challenges like how do we ensure
that colors are used the same everywhere? Do we have coded
components for these designs yet?
I’ve experienced a scenario where a design system was created mostly
in isolation. Many crafters pouring many hours
and over many, many months of working on this thing. Code, one of the core pieces,
wasn’t something that was considered until the very end, and by that time,
unfortunately, it was much too late and the system was never
implemented. Don’t do this. Your system and your projects
have to have a strong relationship from
the very beginning. This will allow for your system to be
adapted and to grow. Cool. Let’s get started. First, create a centralized
location for your system. A place where your team has easy
access and the ability to add and edit content. To be honest, it can start off
with a simple GitHub repo with a single
README file. Second, design and document
together. Usually a project starts off with a design. They
either receive a project spec or they come up with one. As a
designer, the moment you notice anything that resembles a design pattern, add that to the README
file. It can start off with something as simple as use these
two fonts. By doing this you would have prevented a designer
from maybe accidentally adding a similar-looking font to
your designs, or better yet, preventing a developer from
adding another font to the codebase. By going through this
exercise, it forces you to think about your designs more deeply when working with
fonts and colors, look through your existing designs and see
are with and why certain sizes and colors were used. You may find that you’ve
accidentally accumulated 21 shades of blue when you only
really meant to have 3. You may have nine different
header sizes when you only really wanted to have four. By
doing this initial audit it allows you to clean up and simplify
your designs for your initial pilot project, for your system
and the rest of your application, and already with
fonts and colors, you may have already hit a little bit of a
sticking point. What the heck do we name these things? I think we
can all agree that naming things is really, really hard. I
struggle with it all the time personally. I struggled with it
he had why. The easiest way to work around this is to collaborate with your
teammates. Draw inexpiration from other design systems, how
do they do it? Is it header, heading or title? Do you spell small like SMALL or
SM? Do you call the color you use
primary or brand? It encourages your team to participate in
discussions that they otherwise would probably have no part in if they were spiel siloed. It
provides context. It allows members to contribute
to something that has massive impact on the
system. In this case, I recommend
assigning a decisionmaker, someone who can make the final
call, in case everyone has competing ideas. And as you jump into figure
Figma, start creating design components that appear more than
once. With UI it’s typically things
like headers, footers, buttons, etc. Document them down, include
screenshots that explain how they work and how they can be
combined together and you may be surprised. They come back with a
scenario that you’ve never thought of. What should the
search input look like when it’s searching? What if searching
fails? What copies would it save these scenarios? Work with your
team to figure that out. Update your designs, components, and
documentation. And continue to create an refine
these design components as you start creating and building the
larger interfaces for your feature.
Third, develop and test early. As your designer is auditing,
refining, creating and documenting, your developer can
do the same. But with code. As a developer, you can create the
code that mirrors the ideas and structures that exist within
design. Create variables or data objects that map to the font sizes and
colors, check out your existing code. See where you can audit refine
and refactor to create the code
components that match with the design components.
You’ll be working on the pieces and when it does come time to build that
feature, oh, boy, you’ll have enough UI
code to seriously kick yourself into production. And there is a
good chance that you may be duplicating some stuff, but this
is temporary and I believe the tradeoff is worth it because in
this scenario, the duplicated code is intended to replace the
older implementation. As long as you do that, the older, harder
to work with, janky code will be replaced by your carefully
crafted components from your system and at that point you can
just delete the whole stuff. Figuring out how you can develop
and test these pieces will be
essential. It is highly recommended that you develop a
dedicated development environment of some kind,
separate from your application, this will allow you to really
focus on just the pieces, it’s also easier to code, reload, and
test things. One of the more popular
solutions is Story book. A simple version of this would be
just to create a couple of HTML files with CSS and JavaScript. If you’re familiar with codepen
or code sandbox, the experience would be similar to that. Once
you have some code that you’re happy with, test how that code
will implement into your current application. How will you import
your files? Will your styles conflict? If so, how can you
work around that? How will you compile things? It’s important
to resolve these potential issues early, because
the last thing you want to do is put weeks and weeks into
something, only to realize last minute that it’s impossible to
integrate into your current application. Speaking of which, one thing I
need to touch upon is your current tech stack. If you take
a look at many design systems out there today, especially the ones published by big companies,
Polaris by Shopify, Base by uber etc.,
you will see that every single one of these design systems is
built upon a little thing called React. Maybe you’ve heard of
it. Now, don’t get me wrong. I love React. I love that it’s
driven by components. I also love WordPress. As of today, WordPress is not
built on React. Some things are. Gutenberg is one. Some
third-party plugins and themes are evolving to adapt React.
This is all fantastic, but we’re not there yet. And some of us
don’t need to use React. And that is OK. By looking at online examples,
one might assume that in order for you to create a
component-based design system, you must first adopt and use
React. This is absolutely not the case. I mean if your team is currently
using React, then great, build it in React. But some folks
aren’t. Some folks are using bootstrap, JQuery, and some home-grown solutions,
maybe all of the above. And that is absolutely OK. The main
thing is to respect your current tools and frameworks and start
designing processes and resources for what you have now
and what you can do today. Otherwise, you may run into a
situation where the technology gap between your app and the
design system is just too large, making interrogation really,
really hard. Fourth, build. As soon as you’re
ready, start building your feature. There may be a chance
that your designer has finished with all of their screens for
your project. As a designer, instead of
completely moving on to a different project, continue
building and refining your components and documentation. They may not be used right away,
but they’ll likely be used for your next feature. While you’re doing this, stay
close to your current project team, they may come back with
roadblocks, maybe an edge case that no one has thought of, or a
flow that needs to be readjusted because it’s going to take too
long, long to code. It’s important that you are
there when these things pop up. Work with your team, come up
with solutions together. There’s a huge difference between that and a “all right, I’m done, not
my problem” kind of handoff workflow. A collaborative
workflow makes all the difference in the world. And as
a developer, as things start to come together, get feed back
from your team, let them know that it’s a work in progress,
right, but mention certain things that you would like for
them to test out. In doing so, you may notice little things in
your UI that may be off. Maybe the links should actually be
buttons. Maybe interactions are causing
inforeseen accessibility issues. Don’t dismiss these issues,
because over time they’ll compound
resulting in a fragmented experience. The exact experience
that you’re trying to fix with this whole design
system stuff in the first place. Also by going through these
issues, it makes things like accessibility part of your
design and workflow, rather than an afterthought, or worse yet,
forgotten about entirely. Given time constraints, I understand
that it’s not possible to address all of these things at
once. Talk about it with your team. What can you do now? If
not now, what can you do later? And during early collaborative
testing, you may notice gaps in your workflow. Typically in
order to test things out, you have to have a dev environment
of some kind. For new features, you may have to check out
certain branches in your version control or do database
extensions. As a dev this workflow is already a little bit tedious, but for
non-Deverdevs this is absolutely a nightmare. I’ve seen this happen a lot,
it’s demoralizing and in my opinion a little bit unfair.
Making things easier to test is crucial, not just for non-devs
but for everyone. Having an easier testing workflow
increases the chance that people will actually test out your
stuff. Resulting in a feature that’s
more polished, more cohesive, and
less buggy. With that said, resolving dev
environment issues is often a huge undertaking. However, however, there are
clever work-arounds, though. Remember Storybook? Previously I experienced
Storybook become so ingrained that entire features and applications were built in
Storybook. We had a feature that upon
creation it would create a dedicated Storybook built. You can just go
in and poke at the feature and you even do it on your phone.
When development was done, we just needed to flop the now fully
built feature or app into the application, wire up some bits and bobs, and
we were done, let’s ship it. We’re done. Fifth, iterate, along your
journey, you would have already learned a hot
You would have identified many opportunities for improvement. Your teams would have gained
positive momentum in designing, building and testing UI. Keep refining, keep building,
keep this momentum going. And 6th, evangelize. Carry your momentum forward. Keep refining code components,
best practices, continue collaborating and supporting
each other, spread the word. As your system gets more and more
embedded into your product, your momentum, quality and output
will be impossible to ignore within your organization. Others
will want to get in on that action. Welcome them in with
open arms. Proudly show them your design
components that you’ve thoughtfully hand crafted. Proudly demonstrate your code
components and how you can build and test UI at speeds your org has
never talked about before. Proudly talk about how you work
with your resources, documentation, tools, and with
each other, and you should be proud. Very re very, very proud. You and your team, the original
pilot project team, have created the foundations of which future
frontend of your entire organization will be crafted. You’ve cultivated a creative
culture around collaboration, thoughtfulness, and systematic
thinking. You’ve created a system that
empowers crafters to do their best work. A system that improves the
creation and experiences for your product. A system so good that crafters
choose to use it, because they genuinely want to. Not because
they were told to. A system, a one of a kind design
system, your design system that you have created from within. Design systems are important,
they dramatically transform the ways
that crafters, teams and organizations create user enterprises and enterprise
user inter user interfaces and
experiences. That is why we do what we do, to make things
better for people. Thank you all so much. And I want to give a big
shoutout to the folks at extra credits for giving me permission
to use their art style for my slides. These are the links that
I promised and I think we have some time
for Q & A and if not, feel free to find me out in the hall. Anybody have any questions judge
Cool. It’s actually very hard to see,
because the lights are blinding me. Audience: We’re interested in
starting to work with more formal design
systems. And a roadblock in moving
forward is there is a feeling — you kind of alluded to it, about
React being kind of necessary in order to do it right. And
there’s also a kind of this assumption that if you’re going
to do this, you really, to make it worthwhile, you need to have automatic
integration where you update your design system and it
automatically updates your applications.
Jon: Yeah. Audience: How common is that?
Is that a goal worth striving for? Jon: Yeah, I would say so, so
automating things like builds and using react and all that
kind of stuff, if that is where you want to be at, that could be
an end goal thing. That’s not a barrier for entry.
You don’t start off with that stuff. You should look at what
you have right now. Because for example if you’re on something,
I don’t know what you use, J. query, Angular, something else
that’s not React, then building with React doesn’t make sense, you’re not
able to integrate with it. It’s not necessary for you to
get started. See where the biggest pain
points are, for your devs or your designers
in building your stuff. If automation and tooling and
all that stuff really is the biggest pain point, then that
could be something that could be resolved. But typically from my
experience, it’s just a communication thing. devs think differently from
designers and vice versa. Figuring out ways to communicate
and work better together, that is a
low-fi way of getting started and hopefully that helps.
Audience: I have a question. This is a newbie question. So I
work on the development side and you work more on the design, and
UX side. So just very quickly, give me your elevator speech on Storybook. I
don’t know what the product is and I would like to know. Jon: Cool, Storybook, elevator
speech. It’s a thing that lets you build a button, a table or
whatever, completely by itself, and you can look at it and you
can poke at it. You don’t need to fire up your application in
order to see your button, you can just see your button, in a
browser and when you do code updates or anything like that, it live
upitates updates. That’s what Storybook is. Yes,
something in the back. I need to stop doing this, this is not
helping me.Audience: All the way in the back there. So I was wondering if you have
any insights on design systems — I’ve worked with an agency
where we do a lot of smaller websites for a whole bunch of
clients and we had a lot of issues, I was working with like
UI, design, a lot of issues collaborating with developers
and so we were trying to build an internal design system that
kind of turned into more like sort of standards, because we
were having difficulty scaling it across a lot of clients. Do
you have any insights on that? Jon: Yeah, so the — in terms of
scaling things, that’s like a different
kind of aspect of design system stuff, and also the communication you mentioned
between designers and devs. The most effective way from my
experience to do this is to identify the lowest common thing
amongst everything. What is something that designers and it
devs fundamentally understand and also for your agency stuff,
what is something that’s common amongst all of these different
sites? And then identify the larger pieces. The larger
points. What are the gaps? What’s the thing that’s missing
from connecting between a designer and a dev, to
understand how to work with this stuff? And what’s the difference
between your design system between Site A and
Site B and you start working to build those connections. This
could be a process thing, a tooling thing, or a code thing
or whatever it is. And once you do that the gaps you’ll notice will start to shrink, but
it’s important to start at the more foundational layers and
work your way upwards. That’s what I’ve found to be the most
effective. Hopefully that helps. Audience: Thank you.
Jon: Great. Thank you. Yes, someone over there. Audience: Thank you, I, as
well, am new to design systems. Jon: Sure.Audience: The
question is, is it specifically for devs and designers for the
documentation? So full-service agencies do
that, as well as videos, let’s say, right? So documentation, footage,
storing footage, angles, aperture of the
film and things like that, scripts. Does Does — what is it, you
said primer and Basecamp, are they compatible with that, as
well? Jon: Yeah, I think so, I mean in
the context of WordPress and online
task products, all that kind of stuff, design systems are used
to bridge the gap between how designers and developers work
together. But that’s just inside the
context of WordPressy website kind of stuff, but the ideas can
be applied anywhere, really. If you’re working with video, if
you’re doing audio for podcasty kind of stuff, it’s just a way
to — it’s a tool to help many different people be
alined of how you work together. What you name your stuff, where
you organize your things, what you should do, what you shouldn’t do, all
of that can be applied to anything you do, really.
Hopefully that helps. * Yes, there’s someone on the
front? Hi there. Audience: You mentioned before
you can start doing this you have to get
buy-in. Jon: Yeah. Audience: Do you have any
suggestions about how to go about starting that process?
Jon: Yeah, it’s tough. So this is from my personal experience,
from my experience in my previous company and again, this
is different from company to company and your personal
experience. What happened was, I needed to
create something initially, so that I can show them, like, hey,
I built this thing. I used this thing with a
collection of code components to build the initial iteration of
this prototype. And also, we’re starting to use little bits of
it to build the — to build something else. Look at how effective it’s
already — look at how helpful it’s been so far. Like, it’s
helped these teams move faster. Would you like for me to
continue working on this thing? So it’s like, I needed to show
them first. That might be something that you have to do. Or if you’re just working with
like your friend, maybe you can just say, hey, I’d like to build
this thing and they’ll be like, cool, so it
depends on your situation, but sometimes, at least from my
experience, you’ve got to build something and you’ve got to show
them the value in a way. And that’s easier for you to get
buy-in and depending on where you work, you with use words
like deliverable. They like words like deliverable.
[laughter] Moderator: Anybody else? Jon: Yeah, someone at the front. Audience: Can you just switch
back to the slide with all your links? Because that was up for
only like one second. Jon: Sure. There we go. Yes,
take pictures of the slides. Awesome. Again, oh, wait, someone in the
back? Audience: Can you share an
example of a situation where you, like, came across, like, maybe kind of a hairy
problem that your team needed to solve and how you went about
doing that? Jon: Yeah, so this touches upon
a little bit on the dev side. I apologize. So CSS, it’s an interesting
thing. And previously the thing that we
were building involved an embeddable
kind of thing, similar to an intercom or
any kind of thing you visit at a website, you see a question mark
and something pops up and says, hey, how can I
help you today? These things are typically rendered in iFrames, so coming up with a
component things in React, with Styles,
how do we effectively render these components inside of iFrames, not inside of
iFrames? How do all of this stuff even work?
So what ended up happening was we looked at a technology that existed,
that fulfilled 7890 full 90
fulfilled 90% of the use cases, except for iFrames so what I did
was I copied that code and I made my own version of it and I
added iFrame support and that solved the problem for us. So that is like a — one of the
hairier things that I needed to do, but once that happened, the
devs were able to move on and not ever think about
CSS loading and iFrames or anything, anymore. That was a
nonissue. They can just get on with their work. So yeah, that was the hairiest
thing I think I had to work on. Man, writing CSS compilers and
all that kind of stuff, don’t do it. I don’t recommend. Moderator: OK, we got time for
one more. Job: YesJon: Yes.
Audience: Hi. Thank you for the talk. So in my understanding of
design systems, a lot of design systems are very specific to the product,
like div buttons and everything and components but I work in a
really small agency where we build a lot of different
websites. Is it possible, do you think, to build one design
system that we could use across all the different
products and websites and everything?
Yeah. Absolutely. So in my opinion, within the
world of web things, the most successful design system that is out there right
now is Bootstrap that was originally created by Twitter. Everyone has used bootstrap in
some capacity at some point. I think that’s why a lot of us
raised our hands when I said button
groups and accordions and things like that. They’ve established patterns and
built code that is accessible. So it’s definitely possible.
You just need to find the common thing, like I mentioned earlier,
that allows for you to do this, and also, whatever code or
whatever it is you need that will work in all of these
various platforms, that’s all. So yeah, it’s definitely
possible. All right, let’s give it up for
Q [applause] If you’d like to speak with him
any further, catch him or take him out to lunch. Speaking of
lunch. Lunch is the same location it was yesterday. If you go out the hallway and
down the escalators and keep walking, you’ll see the room off
to your left. There are special dietary needs. They are assigned
at each station. Such as vegetarian, gluten free
or whatever. Kosher or halal meals, other
special meals that you alerted organizers to ahead of time, also please see a
staff member. We’ll be back in this room at
1:30. Enjoy your lunch! … Can people in the back hear me
all right? Yes? Can everybody hear? All right, if we could trickle
in, I know lunch just ended but we’ve got to get started. My
name is Beth. I will be your host today, and a
few things before we start. If you could make sure your cell
phone is silent, if you’re in the end of a row, consider
moving into the center, make sure people can get seats. If you have accessibility needs
that we might be able to assist you with or any other questions,
our room manager is right up here, please feel free to grab him and let him know what you
need. In the interest of time please hold questions until the
end of our speaker presentation. If you would like to talk with
our speaker at the end, … : Please pick up your t-shirt in
the sponsor hall. Tomorrow is contributor day. Please come in. If you are not — if you’re
sitting there thinking, well, I’m not
really a developer, what do I have to contribute? The answer
is there’s lots of choices. Feel free to come and find me in
between the talks and I will happily tell you how you can
contribute at contributor day. All right. So those are the
logistical things I have to say. Now for the more exciting part.
Our presentation. This is K Adam White. He is a senior engineer at Human
Made where he leads teams building modern enterprise-scale
experiences on top of WordPress. He is also excellent at
JavaScript. He is a component maintainer for
the WordPress REST API and a long-time contributor: He likes to make
quote strange art from his bio, though
I question what art is actually strange, if not all of it. When he’s not online, you can
find him voluming New York City with a camera, or playing video
games. Thank you so much.
Thank you so much Beth. [applause] So I figured we’d start with an
ice breaker, everyone turn to the person next to you and find the thing
you disagree about the most vehemently. Actually definitely
don’t do that. We are living in a very, very polarized time and
we tend to focus on the things that are the sort of intractable
differences that we have and regretfully, I’m afraid I’m not
going to be talking about what to do when
people sass you on Twitter, like my manager here, I’m going to
talk about some of the ways that we can actually harness our
disagreements and our differences to try to be more
productive as we work together. I will say briefly that the
first and foremost thing that I would bring to any sort of
interaction online is to always assume good intent, because by
and large when we get down to an individual level, certainly within an excellent
open and welcoming community like this, most of us are here
because we’re trying to do something that we think is
interesting and valuable and if you can figure out what it is
that’s making someone say one of those sassy things, like for
example, from a supportive manager, who I do believe to be
supportive, so I’d like to read this in the best of terms. If
you assume good intent, then the one thing that I would say about
these sorts of interactions is that it might keep you from
making that snap judgment and snap back. I let other people do
that for me. Disagreement is a positive
consequence of having a diverse community. When we have people from all
sorts of different backgrounds, we have more of a composite picture of what we are
trying to accomplish and the ways in which we might go about
it. We’re able to look at those problems that we’re trying to
solve as a group, and come up with more interesting or
innovative solutions, because we have perspectives from all over the
world, different types of background, different types of
anything. And this talk is going to be
about how we can keep our teams from focusing on, you know,
things that enrage us. This is the only slide of code
in my talk. That’s very unusual for me, but
it’s going to be trying to focus not on like the petty arguments
that we’re prone to as humans, but on how we can
actually put our heads together and how we can try to make sure
that we’re making the best use of the people around us, because we’re all primed to
recognize differences. No one has ever like sat up
suddenly and said, oh, it’s the same
temperature as it was five minutes ago, we say it got cold
or it got hot. We only notice the differences. And so things
that are different from what we expect and things that are
different from how we are used to doing things stand out like a
sore thumb or a leading comma, but they’re not necessarily
always a bad thing, although this, I would argue, is. The question that we’re here to
answer is — [laughter]These four-digit
numbers that we encounter or five or six. These thousands and
thousands of issues and possibilities and problems and
bugs and things that we could be working on. If we sat down with a repository
like Gutenberg and this screenshot was taken at the
beginning of the month — I’m sure the numbers have changed,
probably gone up and down in the interim, we would never be able
to sit down and work through these in a time effective and
productive way. There’s just too much to do. How do you figure out what it is
you want to accomplish? How do you make sure you’re doing what
you want to do effectively. It’s difficult to identify productive ways of working together across
distance through Slack and chat, but there’s actually a lot of study that has
been done going around decades around how to make groups of
people effective when they’re working towards a common goal. So in this talk I’m going to
look a little bit in how decisions get made in a company
project or a corporate project and compare that to some of the
difficulties that we have in the open source community and look
at how we might be able to improve our own policies and
learn from these organizational psychologists and studies that
have been done in the business space to steal and borrow where
appropriate and to find techniques that might help us at
least identify the root of some of the disagreements that we
have. In a company we usually have
some mandate from management or a client. Like, I work at Human Made. We’re a consulting company,
we’re brought in to solve people’s problems. That tends to be the goal, it
might be making their site more performant, it might be making
it more accessible, it might be making it more easily
internationalized, but the project as a whole orients
around and focuses on a specific goal. That goal is broken down into
individual tasks that we represent with roles that people
take on, and someone might wear several different hats over the
course of a project, but the roles are relatively clearly
defined. We tend to have project managers, product owners,
technical leads, developers, these roles all take
different tasks and own them and make sure that they get done to
move us towards that goal, and we keep ourselves coordinated by
consistently using processes that encourage us to
iteratively and regularly check in and make sure that we’re all
working towards that game goal and that we have managed to move
the product forward, rather than simply rowing in different
directions, because if you have two people working towards
different goals, neither one is going to be achieved. If this is all beginning to feel
like a reductionist framework designs in a lab to analyze the
productivity of a business, you are correct. These goals, roles,
and processes are part of a model of business that
is known colloquially as GRPI. It was designed in the ’70s, and
it’s been part of the Six Sigma
methodology, it’s been around for a long time. And it breaks down a team’s
effectiveness into these categories and it’s kind of a
hierarchy of needs. The notion is you would start with a goal
and the goal is paramount, everyone must be aligned on the
goal in order for a team to be maximally productive. That goal
then requires different roles, you have different tasks that
must be achieved. Those roles have processes to ensure that
they work together productively and finally interpersonal Reece
lations and interteam conflict has to be resolved. We have to
have clear communication channels and clear feedback
mechanisms. I was first introduced to this
model at my first actual full-time job out of college, a
number of years ago where I was working for a travel agency
and I got this little laminate card
and it had a series of questions, and what
we would do is at the end of each meeting whoever was
facilitating would pull out one of the items on this card and do
everyone do a finger shoot, where everyone sitting around
the table, engineering team or a small group of leadership folks,
you’d say a question, if you can’t read that, the one on top
is there’s maximum use of the
different resources of individuals on the team. It’s a
relatively concrete question and in the context of the meeting,
which would usually be around figuring out what we were doing
next or breaking down the upcoming sprints, we would do a
finger shoot as in on a count of three, one, two, and you’d throw down 1
for I don’t think we’re doing this
well, 5 5 for I think we’re doing it well,
4 — and if this sounds a bit culty u
it definitely was. I was really — really? This is a weird thing
with everyone treats this card very highly, but it did work.
Excuse me. In practice and the first time I
saw it really productively change our course was on a
meeting we were having around the relaunch of our site around
a different CMS platform and we were asking these questions
about making sure that everyone is clear on their
responsibilities and jobs, and most of us were like, yeah,
absolutely, I know what I’m doing, but then two
people on team, one of our QA people and
one of our senior engineers both were like 2s. And we said that’s
interesting. What do you think? And it was like, well, I don’t
see how my role fits into this and that
made us stop and take a step back and realize that a couple of us had already
driven the meeting towards what we think we were working on and
we hadn’t taken the time to realize that we were all able to
productively use our time towards that goal. We agreed on
what we were doing. That’s why we were on this set of questions
rather than the baseline, rather than do we understand what the
goal is. Common follow-up is asking someone to restate it in
their own language. But this process was able to let us regularly and as part of our
ongoing meeting, rhythm and culture,
check our assumptions and what we had been accomplishing in the
meeting and determine places where we really weren’t in
alliance in what we were doing. It made us a more effective
team. Once you know a goal, you can
begin to prioritize tasks. In another role at a later company,
I had the incredible privilege to work on a couple of projects
that were founded by Knight Foundation grants and
one of the interesting things is they would get people
representatives from the different teams that had been
working on projects from that grant cycle and bring them
together for a workshop around you human centered design and do
exercises to make sure that we were able
to kind of send off our projects that we had done for clients or
newspapers or organizations, and leave them with sox kind some kind of backlog of ideas
and meta conversation around what we had built and they had a project that was run by the
Lum Luma Institute and for taking a large issues of things
that we could be working on, like that backlog of issues in
Gutenberg and find ways to focus ourselves. The one that is
depicted here, this is a picture of a book that the
Luma Institute put out called
innovating for people. And it’s an exercise called
bullseye diagramming. The gist is again if you’re in a room
together, you can sit up there and draw some circles on a white
board. Write down all of the tasks that you could be working
on on sticky notes and then give people those sticky notes as a
group and tell them to group them closer towards the center,
the more important or the more high priority that task is.
Except the sticky notes cannot overlap. Because we’ve all been on
projects where you know that if you had a bunch of sticky notes
and you’d stick them all in the middle and every single one of
them, we’ve got to do all of this, and we’ve got to do it by Sunday.
That’s not realistic and to face yourself to take that step back
and say, well, all these things can’t be in the middle or if they are, then this
one certainly can’t. How to agree what rings these go
into and once people have taken a step back and they’ve looked
at the board and nothing is actually moving, then you might
have some agreements around what the team as a group thinks is
the key priority. Another exercise that was
introduced in those workshops was an impact effort matrix.
This is one that I actually see a lot. It’s the notion that bullsby
diagram is bulls bulls eye diagram is one dimensional. We’re used to estimating effort
as developers, that’s the main thing that we will be doing if we’re
planning at a sprint. We’ll tasking out and saying, oh, this
is really big we might need to break this down into smaller
chunks. Impact is a nicer one because
there can be things that are extremely impactful that we
don’t regularly think about in terms of the long-term thing
that they will bring to the project. Tech debt is a big one that
falls into this category. And then you put them on a board
and say this one is really high impact
but it’s pretty easy, and this one is
pretty high impact but it’s going to be really hard and you
can break it down into quadrants and then you can separate it
into 4 sections. If it’s low effort and high impact, that’s
an easy win. That’s something you can pull in as sprints allow
that’s going to make a big change, that’s going to make
things better and it’s going to be really satisfying. Those are
the ones that are going to be oh, yeah, I get to check a bunch
of stuff off this week and it feels good. Big bets, things
that could be really transformative technologically
and from a business standpoint but they’re going to take a lot
of time to execute. Low effort and low impact is
incremental stuff. There’s always tons of these. The paper
cuts, the little things on your team that frustrate and slow you down on a regular basis, that
you can and should pull in progressively as you’re working. And the high impact low energy
things. Those are those boondoggles
where you spend a lot of time and it doesn’t move the needle
at all and you think, what could we have done with those hours
instead? The problem is that we’re very bad at estimating
both of these dimensions. We as humans, and particularly as
software developers, I would say, routinely, and this has been
proven in a number of studies, over
imestimate our impact and underestimate the time it’s
going to take. So the graph really looks much
more like this. The conclusion of the project
manager from whom I stole these graphics
is that this model is broken and we should throw it away
entirely, because we tend to only have a very small number of
things that are truly low effort and a very small number of
things that are truly high impact and we’re also very
bad at measuring impact long term and coming back to
validating those changes over time and there are a number of
things that are loss generators, where it’s not even a money pit.
It takes us back, it moves us farther away from our goal. I
don’t think that the model is entirely flawed, because every
model is reductive and every tool that we
can use, all of these techniques that I’m sharing today, are on, on their
own imperfect solutions to a very complicated problem and
more importantly, there’s very useful
established ways to mitigate these effects that we’re
actually quite used to. When I was preparing for this talk I had the fun realization — I had
never realized in all of my years at that company that there
was a copyright line on this card and it fell out of
a bunch of files while I was cleaning out my office. And that
was oh, they’re either professors or business school
faculty or all three. But one name stewed out to stood out to me. I believe he is the same person
who wrote this article in Harvard
which created the word scrum. The way that you get away from
the fallacies of believing in the impact effort matrix is by
iterating and measuring, this is what we do
with agile, this is what we do with a lot of these other
processes and other schools of work and thought that we use as
a team. It’s built into our systems. So what does this all tell us
about working on open source? Because I think as anyone who’s
actually contributed to WordPress or another large-scale project would
believe and attest, the way that we behave in a group, in a small room, in an
office, particularly if we’re all employees of the same
company, is very different from how things work when we’re part
of a giant multinational global group of diverse individuals
working on a platform like this. I would argue that all of these
rules actually still apply. The thing about open source that is different is that we have even
more diverse perspectives and diverse backgrounds and so we’re going
to see disagreements and we’re going to see differences of
opinion about priority more, but if we are able to
define some ways that we can work together productively as a
team, the potential benefit of that is commensurately even
greater because we are bringing the power ever so many more
minds to bear on a problem. That’s the entire premise of
open source. This notion that we’re better together, that
we’re better sharing and we’re better accepting input from
outside. I had a fantastic conversation during lunch with someone who it
divides their time between the WordPress and the Drupal
community. A lot of the sort of us and them
things that we talk about in the open source space in particular
are entirely falls dichotomies. We should spend more time
looking at the web and the open web in particular as a platform
where we are generally trying to solve similar goals and we could do a much better job of
borrowing from each other and saying, well, I think the way
their governance struck it tour is set up, structure but I
think the accessibility that this project prioritizes are
things that we should strive towards. You can look around and
you can figure out the best attribute for each individual
dimension of your product, and there’s nothing stopping you
from reaching out and asking to those groups, like hey, how has
this been working? Have you been finding this to be effective or
not? I had the idea for this talk in particular, because of all of
the fear, uncertainty and doubt, or FUD, as we sometimes call it,
around the launch of WordPress 5.0 and the Gutenberg editor.
There was a tremendous amount of concern in the community, and
there still is, a lot of frustration in many parts of the
internet around the launch of this new editor, and to me, that speaks to a fundamental failure
for us as a project to accurately communicate the goal
that we were striving for with Gutenberg. I believe that I read — I
forget if it was a tweet or a blogpost from
Matt Mullenweg at one point about how when you have a
platform that powers this many sites of this many types of
business of individual practice and small journalistic
organizations all the way up to some of the biggest companies in
the world, if you recognize that there’s an area that you can do
better, it’s hard to let that sit. There’s almost a mandate
for you to be trying to make that change and make that push
forward towards something that you believe to be in the long
term going to benefit the community a
tremendous amount. This is exactly what happened with the
block editor. We were very comfortable with
it, we were very complacent as all of
these new platforms that were springing
long side WordPress started to experiment with new directions with editing, even
within the WordPress ecosystem, the explosion of Page Builders suggests the exact
same problem. There was a challenge that we as a community
were being told from all sides was important to solve by the
number of different solutions that were springing up, and I
think that it was important for WordPress as a whole to
reinvent itself and to take a stand and say we need to modernize this, we need
to make this something that we can build upon going forward to
keep this platform being such a resource for all of the
different people that work with it. That goal was stated at times
throughout the process. That notion that we’re not changing
for change’s sake. We’re changing because we feel an
imperative to improve, to benefit the community that we
have already. But we doesn’t do a good job of saying that, we
didn’t do a good job of regularly and kindly and openly
communicating where we were coming from on that. Another issue that sprung up
around Gutenberg was the very late-breaking realizations
about some of the accessibility shortcomings that it had, and a
lot of frustration within the accessibility team and the
accessibility community around the sense that these concerns
were being overlooked. I could have put documentation up there,
as well. I felt that we did not have
nearly enough documentation to launch, but it wasn’t
necessarily a priority, because there was so much to do in other
regards. I think that — this was not
necessarily a goal issue, but a process issue, because we had
the sense that we wanted to build something accessible. I
don’t believe anyone on the project would say, no, I don’t
care about that, I don’t think that’s an important thing for
the web. It’s clearly something that we have to be doing, and we
have excellent, excellent people in the community who can
identify and teach and train and share how to build an accessible
site and we have very good developers, hundreds of people,
collaborating on Gutenberg. But there wasn’t a good process in place to make sure that new
features and new tickets were being vetted and tested in the
right way. And that lack of process, that
lack of those checks, meant that there were a number of things
that we missed over the development cycle that were
popping up at the very end, and that were
probably, I would say — I can’t speak for
the Gutenberg core team itself. But I would suspect that it was
frustrating to look back on their work and to realize that
there were things that had been missed that could have been not
missed had we done a better job of collaborating as a team. I
think within WordPress we have gotten to a point where we’re very
siloed in the different groups that we have and our different
Slack channelings. I have Slack channels.
Unfortunately there’s ways where that can lead you to kind of step
back and introduce difficulty in working together between these
groups that are really trying to solve the same problem. This is — this sort of process
issue also stems from a roles confusion around leadership, and
there’s been an interesting push from Matt and others to broaden
the number of people that have the ability to commit code into WordPress and to make commit
more of a sort of mark of trust of someone who is doing work
already, and less of a badge of leadership. Previously we had a situation
and a structure in which there were a small number of lead
developers who made most of the calls about the long-term vision
of the product. Matt’s now the product holder and the vision
leader predominantly and we’re trying to get many more people
involved in commit, but that does leave this question of who
else is there to stand in for the leadership? And I know that people like Josepha the Executive Director
of the WordPress project and there have been a number of
other community initiatives to figure out what we could do
around clarifying what leadership looks like in
WordPress right now, but it tends to feel like an ongoing open
question and I think that’s something that we’ll continue to get clarity and
feedback on on the people that are leading the project as we go
forward. But … as we it continue to clarify
these roles and to try to make sure that the burden of actually
moving code into WordPress is spread around more folks and that we can get a broader
and more global and more truly representative audience of
people involved on all parts of it, not just design and
development, but documentation, testing, that way, we’re going
to have more people in the room who could potentially step into
these leadership roles long-term. I think that it’s
important for us to start thinking about what WordPress
looks like in five to ten years, and what a friend of mine calls a
succession plan for open source is. In the meantime, some
changes that we have been making as a group that I’ve been seeing sob seen to be very productive. A meeting without an agenda
isn’t a useful meeting. It takes time to put together an
agenda and to post notes and we’ve been very bad about it and that has
impacted very negatively our ability to bring in other
people, because it’s hard for someone who isn’t regularly in
the channel or isn’t regularly looking at track on their own
and looking at our backlog of tickets to understand what the
team is trying to focus on. If we want to be really
effective in our roles shepherding this part
of WordPress, we and I need to get better at planning out the
meetings, making sure that note takers are clear,
making shoo sure that things get
posted. If you’re not familiar with the
development of WordPress, we have make. make.wordpress. org/core, and these kind of
micro-blogs and these meeting notes and meeting minutes and
meeting agendas are a really useful way for people that are
all over the world, geograph quickly geographically disparate. It’s
something that we have to do, and we have to get better at, to tap
the global audience that this this
platform has obtained, that we’re leaving that door open and
telling people, it actually matters to us what you think.
You don’t have to be in our timezone, you don’t have to be available
at this time on a Thursday in order to participate in this. We
would love your opinion wherever you are. Similarly it’s a great way for
us to document the outcomes and the
action items. And that leads into whatever the
stated goal of the release is in this way. We’re a remote community. We’re
all coming from different backgrounds. The dialogue is
predominantly happening in English, but also happening in
hundreds of other communities and dozens of dozens of other
languages all over the world. It’s very easy for us to both
silo inside our own communities, but also to not take that extra
moment that we need when we are participating in a group shared
channel to understand where someone’s coming from, and what
their background is. Most of the debates that I’ve
seen inside the WordPress community fail at this very
basic level of people forgetting to always assume the good intent
of other people involved in the discussion, and by assuming good
intent, by taking that moment to say oh, this person seems to be
saying that what I have built is horrible and should never be
launched, but maybe that means that they have a different
perspective. Just thinking off the top of my head, looking at
something like Gutenberg, there are so many ways you can come at
it. Some people have sites with thousands of users, those are
going to fall down in performance in different
ways, than sites of only a few users, but thousands of
taxonomies. There’s a lot of room for improvement across the
board, because there’s so many different ways to use this
product. And if someone is saying this absolutely doesn’t
work, the correct response is not, well, it does for me.
Because we’ve all been there. We’ve all been in that situation
that oh, I’ve got this bug report, but it’s working fine on
my computer. That’s only the first part of the problem. You
have to then really take a step back and say, well, people
aren’t really — we aren’t acclimated and
attuned to producing good bug reports,s to saying like, this
doesn’t work for me, because these are the sorts of sites
that I maintain, they have this number of users, they have this
business purpose, and if the product is launched
as it is, then all of the businesses that I support are
going to fail. We don’t have that habit of putting all of
that context out there and being open about where we’re coming
from on things, which tends to make us more defensive. But by
and large, particularly within Gutenberg and within WordPress
and other projects that I’ve had the pleasure of working in, when a complaints or
a concern has been voiced and has
been met with thanks for bringing that up, I’d love to
know more about the context, that conversation immediately
shifts to a different tone and becomes more collaborative and
becomes more about how we can leverage these different perspectives we have on a
problem and figure out a way to work together to make them
better, because I really don’t believe that certainly anyone at
an event like this is here to
undermine the whole. We’re not here to sap WordPress from
within and bring it down around us. We’re here to make it
better. We’re here because we use it for ourselves, we use it
for others, we have found this community to be of
benefit to us in some way, that’s why we participate in it
and that’s why we leave it open for ourselves to
be thinking about how other people might be coming at these
same problems with a different perspective. There’s a model of learning in
general which is dialectical. It’s that you never learn
something that is at us over and over again, we
only learn from something new, if we take the time to
understand the reasons that another perspective has been
constructed and presented to us, we can synthesize those different world views into
that new world view as we ourselves grow. I think that we
should all continue to grow, I think we do all continue to grow, and I’m really excited to
see what this project does in the future. I would also very
much encourage everyone to come to contributor day to see how
they might get involved, even if you’ve never written a line of
code, there is so much you could bring to this conversation with
your perspective, your business, your needs and your
understanding of how these get used in practice and we would love
everyone to be a part of that. Thank you.
[applause] Moderator: All right, if you
have a question, let me know and I’ll bring the mic to you.
Anyone? Adam: I will also accept
heckling, in the spirit of the talk.
[laughter] Audience: Kadam, I think that
your whole approach is wrong and you should feel bad. I’m here
for you. So one of the things that I see happen a lot, is the sense that you
oftentimes get people that have arguments
because they’re talking about two totally separate things within the same
— within the same space. And there’s numerous examples in
the WordPress project where you see people arguing around each other,
instead of like constructively about the same thing. How can we identify those
moments and how do we like maybe help bring
a more constructive conversation when that happens?
It’s a good question. Do you have a particular example that
you might cite? Audience: Do you need a list?
I’ve got 20. Adam … hit me with one. To
help focus the conversation. Audience: I think one that is
pertinent to this conference is the auto updates conversation.
Where you have lots of people having conversations around each
other about different aspects, but not really having the same
conversation. That would be one example. Gutenberg is happened
all the time. Those are the sorts of things I’m thinking of. Adam: It’s a good point. I think
that the times that we do that well are when we branch the
issue early and we try to be clear about defining the two
problems that we’re trying to solve. I saw in Gutenberg a
couple of occasions where there were questions about the
efficacy of a particular interface or a accessibility of
a particular interface and simultaneous questions about
whether that was the right interface at all. And we were
able to sort of separate those discussions in a couple of times
into one conversation about what the ideal right interface for a
particular type of, you know, tag selector or something, might
be, and I think that there’s ongoing conversations there, and
then there were separate threads around how to take what we had
and to make it more acceptable and more scalable and improve it
in place. That’s not necessarily an easy
thing to do with the auto updates
conversation and regrettably I missed this
morning’s panel so I’ll have to go check out the notes on that
afterwards, but I think defining or terms is always a positive
thing and if we’re saying this doesn’t work when we scale, you
have to say, this is what I mean by scale. This is the number of users or
the complexity of posts — I forget the name of the post, but
there is a particular post that got used as a routine example of
frontend performance on Gutenberg, because it had tons
of blocks and content in it and when you loaded it initially in
the project, it would actually crash the editor
because it was too complex and too big and so that became a
benchmark that people would work towards. If we did a good job of
defining those terms and saying, I think that we have a problem
with this, then that gives the other person the opportunity to
say, oh, we agree on that. I’m talking about this other thing
and then you can ideally and
hopefully — and I don’t know to extent
extent this would be applicable in this particular example,
hopefully have multiple parallel conversations rather
than one muddled single conversation. Audience: Hey, Kadam, great
talk. Thank you. So you mentioned a couple of
things that could be done, like posting agendas or notes for
team meetings and yesterday I attended a panel one of the
ideas was making them more thematic, a
common goal that teams could collaborate across. And I’m wondering, what else can
we do to align our goals better and to
start introducing more processes? Any ideas? KAdam: The contributor day
questions were a fun one. Because I’ve seen contributor
day to be focused around a particular area to be generally
more successful, because it was easier for people to limit the
firehose of things they could be working on and work through that
prioritization exercise and say, well, these are the things that
are small enough and relevant enough to our shared goal that I
can actually tackle them today. I think that the frustrations
that I’ve had for contributor day are
usually around venue wifi or sort of
artificial divisions between teams. I think one of the most
productivuleses that we have when we’re produc
issues I shall tive issues when we’re all in a room together. * Gutenberg is built on top of
the REST API, and we have a strong need
to continue to be available to that team, and there were a
number of contributor days where we were at completely different
tables and they were treated at like completely separate things
and this was partially a result of how the focuses were defined, but I
think it made it hard for us to break down some of those silos
and figure out whether we were working on tickets that were actually going to converge
toward different pages. That doesn’t answer your question. It’s just me pontificateing
about contributor day. I’m sorry. I would be curious and chat
later to see if you had any thoughts about it. I don’t have anything cogent off
the top of my head, hence the babbling.
Audience: I love the idea of this mark of like expertise or worth as
opposed to this badge of leadership idea. But how do you
move people in that direction, particularly when they’ve been in leadership roles a long
time and sometimes it’s — their title is
even director or something like that and you know, you may bring
more expertise to the table than they do, but they’re not going
to get on board easily. Adam: In what context are you
asking that question? Can you elaborate? I’m thinking more about internal
team works within organizations or companies. Because I think the exact same
concepts could apply. Adam: I’m pre I have a different perspective
than most people. Because I’ve proceed dominantly
come in as a paid consultant. So there’s an implicit theory at
least that you might be bringing something to the table that
hasn’t been present before and so they should take heed of what
you say, but I think that also does a disservice to the teams
on the client side that really do understand and know their
project and their client base and their business. In terms of
bringing someone along, in the open source space, the argument
that I’ve heard is that it’s always
better to give someone commit earlier, because it’s a lot easier to revert a
change and take away someone’s commit, than it is to bring
someone along after they’ve necessarily, if they’ve had that
initial impetus to join the community
deflected in a way. But it makes me very, very in favor of trying to expand the contributor
pool in WordPress. I think that in a company project I’ve
definitely benefited from the times when people that weren’t
necessarily on the developer team have come in and
tried to contextualize the work that we’ve been doing. I think
it’s frequently been more important than our sort of
longstanding sense of the technical side of things, because we get very much in the
weeds around the nuances and the architectures of our systems and
it can be very beneficial to have someone, regardless of their role, come in and check
those assumptions, but I definitely don’t have enough
experience managing a team to be able to give a better answer
about how to encourage people to participate in that conversation
and to bring them along. That’s a different kind of
organizational challenge that I haven’t had the opportunity to
tackle yet. I think there’s one question in the back and one up
here. We’ve got time for I I think one
more. One more. So … Audience: I am very much a fan
of the assuming good infent. I am curious if you have an
experience or an example or a general thought on how to turn
that around. If you, you know, have had maybe
some past experiences where someone felt like, you know,
hurt basically, they’re having a hard time getting to the point of assuming everyone’s good
intent on a team. Adam: It’s hard. That’s actually
caused me to be severely burned out on contributing. I think there’s a couple of
occasions that made it really hard to
engage and it took a couple of years and it took seeing how other people were
seeing and using and building upon the foundation that we laid
for me to have the confidence to step back up and
start being a stronger participant and it’s hard to do.
I think it’s an iterative process. You’re not going to turn the
other cheek and immediately be able to
engage in someone positively. I think there’s no shame in
taking a step back and I don’t think anything positive has ever
come from snap reactions or snapping at someone because I’ve
disagreed with someone, that tends to make things worse, so I
think that it’s very important when we work on a very big
project to leave time to protect ourself and to guard ourselves
from emotional overinvestment and burnout. Not 100% aligned with what you
asked. I think. Audience: It’s still very nice.
Thank you. Thank you all.
[applause] Moderator: Hello, everybody. If we can all get seated we’re
going to start the next session. Congratulations, this is the
last regular session of WordCampUS if
you could please silence all of your cell phones, that would be
great, move into the center so people can fill in. If anyone has any additional
accessibility needs, please come to the front and chat with our
room manager up here. In the interest of time, please hold
all of your questions until the end. Any more extensive
conversations you’d like to have with our speaker, please follow
up with him after the talk. If you have not already picked
up your t-shirt, please go to the swag table in the sponsor hall, ASAP after
this talk is done. So it’s the ta I believe in it’s
the table in the opposite corn after you walk in. Also, please consider going to
contributor day, which is tomorrow. If you’re not a developer and
you haven’t contributed before and
you’re nervous please don’t. If you feel nervous and would like
to chat with me afterwards about this, please feel free to flag me,
I’ll still be running around with this red shirt for a little
while afterwards. And with that I’m here to
introduce Carl Alexander, who is a PHP developer from Montréal. He shares a lot of his passion
for advance programming topics and also memes on his website
where he publishes on a regular basis. So he is truly both
building WordPress and using WordPress.
He’s also been a WordPress Montréal organizer since 2010 and he’s
here today to talk about how to beat technical writer’s block,
which admittedly I can say is a very scary thing for many of us.
So Carl, thank you. Carl: Awesome. All right. OK, so today we’re going to talk
about technical writer’s block. Like the lovely Beth just
introduced me, I’m Carl Alexander, you can
find mow at find me at Twitter @twigpress. You can find extra or just go
over it at your own leisure, on your own
time after this talk, you can just read it. I’m also going to
share it on Twitter later. So we see a lot of our developer
peers write wonderful, like articles, and we’re always
thinking, oh, can I do something like that, and for me
especially, the first person I think about when I’m thinking of
developers, is this lovely individual. If you don’t know
who that is, that is Tom McFarland. He’s been writing about
programming since 2010, and he writes daily. He’s written — it blows my
mind, because hi archive has 385
pages, that’s an insane amount of writing. He — for now he writes about 3
times a week, but for a long time, he
was writing 5 days a week, so every
weekday he’d have a new article up. And a lot of times if you’re
Googling something for how to do something with WordPress, his
site will come up. So when I used to read Tom’s
blog I was thinking, maybe I should do the same thing, maybe
I should write and the first thing that all of us hit when
we’re thinking about writing is writer’s block. You know? What
am I going to write about? That’s obviously the first thing
you’re thinking about is what am I going to write about, and
also, oftentimes you write and then you’re like, no, this is —
this is poop, I don’t like it! I really don’t like it, I don’t
like what I’ve written, so it’s not just about not having
something to write, it’s not being happy with what you’ve
written, and this is something that happens to both new writers,
but also experienced writers like myself. We all go through phases where
it’s harder to write, we don’t get ideas as easily, we’re not
too sure what we’re doing, and really it can be really
frustrating to be in that kind of writer’s block phase, because
it makes us want to stop writing. We’re like, why should I keep
writing? This is like really frustrating, I don’t know what
to talk about, what I’m writing doesn’t feel really good or
great. I can attest for me at least
this year that’s how I’ve felt a lot about the things I’ve
written. Just uh, I don’t feel this is
the best thing that I could have done or things like that, but it’s more of a
mindset than anything else. I also want to briefly warn that
this is about technical writer’s
block, so I don’t want to really want to
talk about what your goals are for writing, are you trying to
build your own personal brand, are you trying to start a
business, are you trying to do that? That’s not really what I am
worried about here, so I won’t be talking about those types of
things specifically. So what to write about? That’s probably the most
frustrating thing about writer’s block. Because we don’t know
what to write. We feel like everything’s been
written, and we shouldn’t be writing it again, or we don’t
know what to write. But what we fail to realize is
that there are a lot of sources of material that you can write
technical articles about, and we just don’t think of them as
sources of material. And that’s really what I want to
go over a lot, is like these different sources that we don’t
always think about. The first one is a problem that
we face, so each day, would he all we all
spend time coding, at least I spend a good amount of time
coding, and I’m always looking for answers to problems and most of the time I end up on
StackOverflow or something like that, and sometimes we don’t
even find a solution that we’re looking for, and the fact of the
matter is that there’s probably other people doing the same search that you
are doing and aren’t finding the apeses
that apes answers that they’re looking for and so you should
definitely write about it. And the good thing about is that
it’s so much easier to write about that. You’ve faced that
problem. It’s fresh in your mind, and
you’re also better able to empathize
with other developers, because again, the problem is fresh, so
it’s something that you were frustrated about, that you spent
like maybe all day, all week, trying to solve, and it’s at the forefront
of your mind and it’s at the forefront
of what pain that you had and what you were trying to solve, so it’s really,
really good for writing articles, because you’re really
able to empathize with the person that’s going to read your
article. Another good one is something
that you’re working on. So we all have — a lot of us
have side projects, or we’re working on things at work, and
they’re interesting. You know, you’re like — you’re
building something and you’re like, this is so cool. I love
what I’m doing with this. Those are great things to write
about. Because you might have to write
have tried a new technology. Nowadays we’re doing things with
JavaScript, we’re doing things with PHP, the PHP version of
WordPress is increasing, so you could try things that you
couldn’t do before and that’s really, really cool. You could
also have used a new concept. This is really useful for me
because I spend a lot of my time teaching
computer science topics to WordPress developers, so I’m
always thinking, oh, cool, could I use this in a WordPress
project, you know, this concept and how does it translate? What
was the problems that I had translating that concept? It and
that’s really, really good. And especially for those kinds of
things, they’re not things that I can necessarily do at work. So I can just do it on my own time
and then I can write about it and share it with the rest of
the community. This one I really don’t see a
lot of people doing, but I wish more
people did. So post-mortems, it’s kind of a
bit the same idea that we were talking about, about trying new
things and sharing them, but this is like really useful
because it’s technology or concepts that you’ve used, like,
in production. So they’ve — you’ve put a
serious amount of effort trying to get it working. You’ve actually most likely got
it working, or if you didn’t get it working, that’s still useful,
too, because you put a lot of energy, like your agency or the
group of developers spent a lot of time trying to get this to
work. So you can discuss what went
well, what didn’t, and honestly, this is super-valuable for other
developers, like I love reading those types of articles,
especially, you know, if you think about like Dropbox or like
big startups, they’ll say, hey, we tried this technology and
then we had to move away from it, or like here’s what worked,
what didn’t work, and this is a really, really useful way for me
to see, OK, is this a type of technology that scales? Is it a type of technology that
will solve the problem that I think it will solve? So that’s really useful for me
as a developer, and it’s also super-valuable if I — I used to
be a project manager, as well, and it’s super-useful when
you’re trying to evaluate what you’re going to use for a
project. So if you’re like trying to use — and this can
apply not just to technologies and things like that, it can
apply to a plugin, like you’ve used WP
Rocket and it didn’t do what you wanted or you’ve used this other
plugin, and those are very valuable because when you are
planning for a project you’re planning for what technologies
you’re going to use, it’s an investment, it’s a serious time
investment on top of the project. You don’t want to
realize halfway through the project that this isn’t going to
work and they you have to gut the — you know, gut that
technology out and spend so much time getting it to work the way
you want it to. So post-mortem ares are super
useful for that and honestly I wish I saw more of them. Answering questions: I love this
one, as well, everyone’s asking questions online. That’s why StackOverflow is
super good and what you can do is just go
on StackOverflow and look at a question and you pick one and
you write about it and the fun thing about that is that’s how I
actually got started with writing. There’s a lovely developer named Natanio, he works for Human
Made. He didn’t work there at the
time, but I had a question, how do I use this concept to bring
all these different things together? He was asking how do I use the
single-responsibility principle with WordPress and I was like,
cool, I really want to write about that, actually. I don’t
want to write it on StackOverflow. I’m going to
write a blogpost about it. And that’s how I got started. And
there’s a lot of places that you can go to find questions to
answer. I’ve mentioned StackOverflow, that’s a really easy one, but you can
also go on Reddit. Reddit like there’s the Pro WordPress group. WordPress group on Facebook. And you can go to meetups and
somebody ask a question, and you’re like,
oh, I’m sure somebody has written about that and you
Google and you find out that nobody has. Well, those are
opportunities to find something to talk about and to write. This
one is also one that I cherish a lot. Things you wish people knew
about. And that’s like the essence of
why I started writing. I wanted to teach computer
science topics to WordPress developers,
because I felt that, you know, people should know about this.
And I couldn’t find anybody to write on it, so it was — and
the reason for that is because it’s not like a hot topic. So you know, nowadays, the
really hot topic is like how can I do this with React or how did I get Gatsby
working with WordPress and GraphQL and all that stuff, but
you know, computer science topics, not the sexiest topic to
write about, but I thought this needs to be written about and
that’s just how I started and even like one of the first talks
that I gave, too, was just a basic security talk. I was
like, there’s nobody that’s written about how to just
discuss basic security concepts with — to
WordPress people, like, not at a technical level, just explain, like, what are
attack vectors, why did they come from, what can you do? It
those are not things that people write about, but they’re
important, and they’re not the hottest topic, but they’re
important, and that was really a strong inspiration for me for
getting material. So like I said, a lot of
developers in the WordPress community don’t have computer
science backgrounds, so that was like super-important for me to
just get started, but also I really
thought about — I like this idea of
past self, future self. So in this case I like thinking about
the past person, so a good way to think about this, too, is OK,
I know this concept now, but when I didn’t know about it, what do I wish was
available to me that I could have read and helped me with
that? And that actually inspired a lot
of crazy articles that I’ve written, like I wrote one on PHP strings. I wrote just only on PHP
strings, and I wrote some on regular expressions, I wrote
some on command line. Especially the command line — I don’t know about you, but I was
super-scared of command line initially. I was just like,
command line is scary, I don’t know what’s going on, I’m just
typing words, I don’t know what these words mean and it’s like
dash-a/Z, and I wish somebody had something for me to make it
less scary and nobody did, so I just wrote about it and that’s
really important to think about, is your past person, is what do
I wish I could have read or somebody had written about when I was trying to learning learn
something? So that kind of goes over the
really kind of material that you want to think of, like different
sources of material that you might not have thought about for
writing technical articles, but another aspect that I think is
not talked about as much when you think about writer’s block
is your overall writing process, because yes,
you need things to write about, but really what drives the
entire thing is how you write. Like, what is your writing
process. And that’s why it’s as important
of a topic, almost, it’s almost as important as where you get
your ideas, because you can get all the ideas in the world, but
if you can’t write or you don’t have the — a writing process that helps
you write, it can be really, really
hard to even get those ideas onto — into the written word. So the one that I think is
really important is trying to develop a regular writing habit
and the reason is because you don’t want to wait for
inspiration to hit you, because just that never happens. The reality is that it’s better
to try to write a bit every day, and in
fact, I think it’s super-important to write a bit every day, because it gets
you to, you know, it gets you to think about just writing. Not thinking about, OK, this is
good, this is bad, you know, I don’t
like what I’ve written. It’s just I’m just taking time
and I’m just writing and you get more familiar with it and you
also get used to the idea that you’re just writing something
and you’re not necessarily writing something that you’ll
publish, although most of the time for me I do,
but it gets me used to the idea of just writing things and
getting used to the idea that what I write today might not be
great but the end result will be great once I just keep going at
it and that’s really, really important because you don’t want
to wait until you have that idea and then write, because that can be
fleeting and it doesn’t really help you kind of build that
habit. Another one that I find
interesting, and that’s maybe a bit more specific to me, but I
think a lot of people get intimidated with the idea of
writing, so you get blocked and you’re like,
I feel I have to write a lot. If I didn’t write 1,000 words
today, I don’t think I’ve done things properly. And then you’re
like, well, I don’t even know what to write about, now I have
to write 1,000 words? That’s like super-scary and you’re
like, oh, maybe I should not write. And I think that’s
something that you should experiment with your writing
habit. There’s different ways to think about this. You can think about it in the
sense of I’m going to do it at a specific
time of the day, so I might write every
day from 8 a.m. to 9 a.m., and that’s it. Doesn’t matter how
many words I’ve written. It’s just I sat down and I wrote a
bit. You can also say, I just want to
write one hour a day. So it doesn’t matter when you do it,
you just kind of do it. You can also do how many words
per day. And that’s the one I use,
personally. But it’s also the one — when I
was researching this, that’s also like, if I can think of a more prolific
writer, I can’t think of anybody else than
Stephen King and he writes 2,000 words a
day and that’s his process, and I
think it’s important to give you an idea of how this played out
for me. So when when I started writing,
I was following this dye named Nadan
Berry and he said, I write a thousand
words a day and I would say oh, I try to
do it and I couldn’t write a thousand words a day and you
feel like a failure and you feel like you can’t do it, but really
when I thought about it more, I was like, what I really need to
do is just write regularly. So I actually divided it by 10.
I just said I’m going to write 100 words a day. And that’s not a L that’s not
too bad. You can even do 50 if you want. But 100 words a day, if you do
it for the whole week, that’s 700 words. And 700 words is
usually the size that you want to see online. I write long
articles, they’re usually 2,000 words or more, but for
most people, 700 words is a good
article length and that’s something you can get done in a
week, you know, 100 words a day. And I started doing that, I did
a bit more, I did 150, and then I did
300 and then 450, but the thing that’s interesting is that I
decided that I liked writing just a small amount of words so
I started working on multiple things at the same time. So when I was doing 450, I was
working on 3 different things at the same time and doing 150 words for each and
that’s something that you can play with to see if you can get
your writing habit to be in a way that’s comfortable for you.
Because that’s really what I want to do, is you want to find
a way that will enable you to write regularly. So I want to also talk about
writing slowly. Because you know, I don’t hear a
lot about this idea of writing like
100 words in a day. Everybody is like, no, you got
to write 1,000 or you need to get an article out or you need
to do this. But I think there’s a lot of benefits to actually taking your time to
write, and that’s because the essence
of writing is actually — it’s
putting words to our thoughts. So it’s like what we’re thinking
and we have to find ways to put it into words, so it’s actually
more of a thinking exercise. And because it’s a thinking
exercise, we don’t realize that what makes it hard to write is
when things aren’t really clear in our head. So if we’re confused about what
we’re trying to talk about or write about, it’s hard to find
words to write about. The two things are linked so the
benefits of writing slowly is that it gives you time to think. And that’s super-useful for me,
because I can’t count the number of times where I was thinking,
you know, at the beginning, I’m like, you know, often I’m like,
this is poop! I don’t like what I’m writing and usually it’s
just because I’m working on it for a while and I’m thinking
about it, you know, in the shower or commuting to, you
know, downtown, any kind of sort of dead time you think about
things, and you can sometimes think of new
ways to approach what you’re trying to say, or find analogies
or other things like that and I can’t even count the number of
times that’s happened for me. So it’s really a really huge
benefit of taking your time, is that it gives you time to think. The only problem with that is it
can take a long time to get articles out. I know like for me, because I
write things that are like 3,000,
4,000 words, we’re talking even at is 50
words a day, we’re talking over a month and sometimes we get
kind of sick of it. So it’s not without its flaws,
but I still wouldn’t write any other way. I think having that
time to process, to really wrap your head around
a topic — doing research — that’s something I also didn’t
mention but I have to do a lot of research for my articles. So
that’s like one of the sources of frustration, is if you have
to write 1,000 words and you have to do all of this research
about it and think about it, it’s really hard to do all
of that at the same time, so it can take a long time to write, but I wouldn’t do
it any other way, because I like to have the time to think about
what I’m writing about. The last thing I want to talk
about is they’re not really specific with writer’s block.
They’re other things you should keep in mind when you’re writing
that I think are super-important. One of them is always keep in
mind that there’s — this is especially for technical
articles, there’s other ways to solve your problems. It’s really
tempting, especially for developers, we like to have the
way, the answer. I want to know like, what is the right way to
do this. And it’s really important to,
like, not get into that kind of mindset that what I’ve done is
the way. It’s really something — this
worked for me, so like having the language
of like, this worked for me, it might work for you, like this talk, like this
talk is a perfect example of that. What works for me might
not work for you, but there’s probably things in there that
you’ll read or you’ll hear and you’ll be like, oh, yes,
like, I could use that or I could do this. So it’s really
important to always keep that in mind, that there’s other ways to
do things and it’s not because you’re writing about it that it’s just
the way to do it. I love this picture. You don’t
know everything. The worst thing you can tell to a developer, like, you do not know
the answer to something. Yes, there’s a lot of limits to our
knowledge. It’s super-important, especially when you’re writing about technical
things, to realize that there’s limits to things. If you’re
writing about databases and you’re not a DBA or you didn’t
work on mySQL, there’s probably things you don’t know. Be honest
about it. You know? Just say OK, well, you know, I don’t know about this, but this kind
of works, so you know, saying I don’t know to me is a sign of
strength. I even say that a lot to
speakers, especially first-time speakers. They can get scared of like
somebody asking a question and not knowing the answer, but really being able to
say “I don’t know” is a sign of
strength because it shows that you have the integrity to say I
don’t know about something, and either I’ll look it up or I
don’t know. And I just simply don’t know. And it kind of leads to this
next point that I think is super-important, is do your best
not to be wrong. So it’s kind of tied to this,
because if you know what your limit is, you can do your best
to try to find answers to those questions. So if you don’t know about a
computer science concept, or a design pattern and I’m not sure
if that’s how you’re supposed to implement it, I do more
research. I’d look things up. I’d fact check. Check
Wikipedia, check for articles. Like for example, I had one on
— a did a teaching talk and there’s this
quote that’s misattributed to Einstein which is that you don’t
know anything until you teach it to somebody else, and it’s attributeed to Einstein but I
couldn’t find anything that says Einstein
said it and I said that, I don’t know who this is attributed to. And proof of concepts, if you’re
going to use code examples, make sure they work, you know, take
the time, get the code samples working, make sure that your
idea is applicable, because there are people that are going
to come and read your code, copy those code snippets, and then they’re going
to come and say, oh, well, this doesn’t work. It’s time
consuming to do that, but it’s again, super-important, which is why it ties a lot to the writing
votely about things slowly about
things. But yeah, that’s kind of the essence of it, is you really
want to spend time making sure that what you’re saying — if
you’re going to put something out into the world, I would like
it to be something that’s as accurate as I can make it. So to wrap it up, the essence of
dealing with writer’s block is that it’s
practice. You have to kind of see writing
as a habit. It’s not something that’s going
to happen overnight, obviously. You know, if you decide you want
to go to the gym or lose weight or things like that, it’s all
the same thing. It doesn’t happen overnight. I know that as adults we tend to
sometimes forget how long we spent learning things and we
expect to learn and be good at things right away, but it really, it takes time, it takes
a certain amount of dedication, but it’s really about finding the time to
get better at it. And when you see it that way,
you realize that writer’s block isn’t so much an issue of a state, like
it’s not a permanent thing. It’s more of a — it’s a bump in the
road. It’s a setback, it’s oh, OK,
right now I’m struggling to write stuff,
but it won’t always be like that and if I could just keep writing
a bit every day, it will work itself out in the larger scheme
of things. It’s the same as if you know, you’re losing weight,
you go on vacation, you gain 3 pounds and you’re like, shoot, I
didn’t want to gain 3 pounds on vacation, but you go back and
you start working on it again and over time it gets better and
better and better. Thank you. [applause] I don’t know if there’s any
questions. Audience: Hey, Carl, Birgit
from California. My question is so you wrote, you did your 100
words a day, you’re finished. What is your approach to editing
that content? Carl: That’s actually a very
good question. So what’s the approach with editing? There’s
this funny quote from I want to say Hemingway, I can’t fact
check right now, but you know, you write drunk and edit sober.
Type of thing. I’ve always been kind of OCD
about editing, so I — again, that’s
why it’s time consuming for me and why
the 1,000 words did not work is I can’t
write and not edit at the same time. I
can’t do that. It doesn’t mean that I don’t come at the end and
do a larger editing pass. In terms of tools, there’s
Hemingway. com there’s the app, but also —
I use grammarly and another one, a pro-writing aid that you have
to pay for. Because I’m trying to get away
from grammarly because they harvest a lot of information
from your browser, so those are really good tools that you can
go through it to like fix tone and things like that. I wills do talks in Spanish, so
I have a Spanish spell-checker, too,
that I use but I try to do it as I’m going
and not just at the end. But at the end you want to do a larger
kind of pass of how the thing flows together. Usually I have
notes or a section where I put in square brackets, where
OK, I’m not too sure I like this part,
maybe I’ll have to rework it. So thoughts kind of my edit
that’s kind of my editing process. Audience: Hey, Carl, James from
Indiana. Thanks for your talk. I have a comment and a quick
question. In college I nearly lost it because of some advice a professor gave to
read George Orwell’s Rules of
Writing. Never use a metaphor, sim simile
or other figure of speech, never
use a long word where a short one will do, never use the
passive, use the active, and then he breaks his own rules by
saying never. So everybody should read that
and study that. And then instantly kill your
writing. But my question — Carl … funny thing about that is I had
to relearn writing, because I come from a classical
engineering background so I need to write reports and reports are
dry and boring, I had to basically unlearn all of that. Audience: But my question is if
you or anybody else in the room could share a good workflow or
kind of life hacks to get your thoughts onto paper. Like are you dictating using
Siri or like Notes on your phone? Carl: I used this app called
Draft for writing, but it lets me write in markdown, but
usually my idea for kind of getting my — my process for
ideas is what we discussed here, like if I’m working on
something, I’m like, this is cool, I’ll write down a note
like I’ll usually have a like a drafts section where I’d like just put a fake
title, like this concept or I did this, and I write really
briefly. I did this for this project,
this was kind of cool, I should write about that and I just do
it like the moment I see it, I just do it. And if you keep
doing that, you’ll start having a pooling pool of
ideas and then when you’re working on your next one you
just look through them and if one jumps at you, you just pick
it and go. But I mean it’s not flawless,
like a bit of my struggle this year is I have all of these
ideas and none of them are really jumping at me right now,
so that is a problem right now, you can have as many ideas as
you want, but if you’re not really interested in writing
about them, or if they don’t stimulate
you, it can be problematic again,
because writing is thinking and if you
don’t feel like writing about something because it’s not
interesting to you, that’s a problem, as well.
Audience: I’m not sure if you’ve covered this, but I’ve
gone to a lot of sessions like this and one of the things they
keep saying is you need to write for SEO. Which really just
drives me crazy. And I can see it in technical,
but I can’t see it in what I do. Carl: So the question is about
SEO. I’m the worst person to talk about that because I literally just wrote
because I wanted to write about what I wanted to write about,
and the joke when I started is like I basically chose a
niche within a niche within a niche of WordPress because I’m basically talking to
an stream subset of advanced WordPress developers and that’s
who you targeted and there’s no SEO for that, and
in certainly, you know, trying to
work for SEO, again, I don’t have enough
experience on that but I don’t know how useful it is. It’s
really about your goals. I didn’t want to talk about it
specifically in this talk, but it’s like if your goal is to
drum up business or having as a funnel lead, then
obviously SEO is important because you want people to get
to the page and read, and things like that, but if your goal is
personal branding or just writing or just
getting used to writing, because writing is useful just
careerwise, like, if you can write well, you can lead well,
like if you want to become like a lead
developer, you have to be able to tell people what to do.
Especially nowadays we’re working remotely more and more,
we’re talking, but we’re also writing a lot,
and it’s really important for developers to be able to write
well, because it will translate well to other people
understanding what you’re trying to do or what you want them to
do. It’s a bit tangential, but yeah,
in terms of SEO, it’s really about
your goals and what you want. Any other questions? There’s
one person in front. Audience: Hey, Carl, thank you
for your inspirational talk. Can you tell me what’s your take
an editing posts after you have published them? I’m asking
because like I recently migrated — long story short, I have a few posts that I’ve written like
a few years ago that I not totally
disagree with, but looking at them, I
say, like, ah, yeah, why did I write that? Carl: Sometimes I look at my old
stuff and I say this is crap, I didn’t explain enough or things
like that. I definitely reedit. — talking about goals, one of
the things about my writing is I want my content to be relatively
evergreen, because you know, teaching
computer science topics, the computer
science concepts are not going to change, WordPress has a
pretty stable codebase so that’s not going to change
but I’ll still go back and edit it. Like I’m slowly adding name
spaces to my articles. Because now you can use name
spaces and I always wrote the articles for the lowest PHP version than
WordPress supported so I wrote the code differently. But I will
keep it evergreen and one thing that I do that sometimes gets on developers’ nerves is I have no
publish date for that reason, because I’m like — I spent a lot of time, you
know, I spend — most articles for me take 70 hours to write,
you know? With the editing, with the
research, with things like that, so I spend a lot of time, I
don’t want somebody to come and be like, oh, this was
written like five years ago, this is useless, especially
about a computer science topic, you know, those topics don’t
change. The strategy pattern was the same when it was invented
than it is now, there’s no reason for you to be like oh,
this is old, I don’t want it. So back and editing is
definitely important to me, but I haven’t had to do a lot because if you put in a
lot of work researching, fact-checking
and doing all the work. Obviously your writing style
changes and you’re like, ugh, but
usually I don’t rewrite them because of writing style.
There’s going to be weaker articles — it’s important to
realize when you’re writing that you’re going to have hits,
you’re going to have flops, you’re probably going to fail at
anticipating the hits and you’re going to fail at anticipating
the flops, and you know, so it’s just a question, just keep
writing, you know, keep writing, and some
stuff will resonate really well with people and some will not, and but for
in terms of writing style, it’s just like
I’m not really too worried about that. Sorry, I kind of went on.
Any other questions? I think that’s it. Oh, no,
there’s one. Audience: Do you keep aback log
of a backlog of topics? Carl: Yeah, so I write in this
tool called. draft, I think it’s draft
in.com. It’s a nice minimummistic tool. minimum minimalistic and when I’m
picking something next to write about, I
just look through it and I’m like, OK, cool, I want to talk
about this and I write about it. That’s pretty much the extent of
my process, and if you keep doing
that constantly whenever you hit those kind of sources of
material that I’ve talked about, you can get a pretty long
list of topics really quick quickly
because of that. Because there are a lot of things that are not
talked about and there’s things that we take for granted that we
know that other people are struggling with, and things
like that, so there’s always stuff to write about from a
technical standpoint. Any other questions? There’s one
over there. Audience: So my husband’s a
techy, and I’ve been trying to get him to stop reading RSS
feeds and start writing things, instead. So one of the things —
I’m a writer myself, but I can’t get into his
head to write for him. So any suggestions on how to get
all of that information that everyone’s absorbing, which is
really useful information, but it seems like there’s a lot of incoming and not outgoing
with people that are technical and/or
introverted, so I would love some thoughts on — for those of us
who want to help people get all that great information they have in their
head out, how we can help them. Carl: I mean that’s the part I
love. But it’s the part I love. It’s the habit-building part.
So you have to figure out what his carrot is. You know, what
would make him interested in sharing his information? And that’s like super-true — developers don’t always want to
write, and some specific, you know, some things that I like to
talk about that I want to talk more about, for example, is
everything server-related. If there’s a subset of techies
that never write about anything, it’s
system administrators, they write documentation but they
don’t write any articles on how to set up things or — that’s a
really arcane kind of — it’s kind of like a database
administrator, it’s like they’re wizards and they’re wizards
without a spell book because they never write it down anywhere, they
just know it and they’re like, oh, don’t
you know E Mack EM ACS and vim and stuff, don’t you
know that? And I’m like no. But I don’t know what their
carrot is, but it’s always the carrot. For me it was this idea of I
like sharing information, I like helping people, I thought
writing would be great. I really wanted this — I —
that’s why I’m a niche within a niche
within a niche, because I wanted to write
about something specific. I thought it was important that
this was said and that was my carrot. There’s a bit of personal
branding in there, but that was like the main carrot was to get
that out. So it’s about finding what your husband’s carrot is,
what would make him share information with other people. Because there’s advantages to — I have a talk on teaching,
and basically I have to wrap up real quick, but I have a talk on
teaching, and basically when you write online,
if — it could be valuable to write and publish, just for the sake of
just being hired. Because if you write about stuff
online, especially like Tom is a great example of that. He’s gotten so much — I — but
for nine years he was a freelancer and he would get
business through that as a develop developer because you
get to know the person. Because writing is thinking, you get to
know how the person thinks, how they solve problems and things
like that, and just for hiring. Hiring is hard. Like, I’ve had to hire
developers, hiring is hard. You want things that will help you
get an idea of who that person is and how they think and solve
problems. Writing can be a great way to do that and then when he’s applying for
jobs ar or things like that or he’s trying to go in this
specific direction careerwise, writing can be useful for that
because then they can see that he’s an expert and he really
cares about things and how he cares about them and that could
be the carrot. And I have to wrap up now, but
thank you. [applause]

Leave a Reply

Your email address will not be published. Required fields are marked *