I remember being enchanted by the ubiquity of the web as a teenager. I knew that I could go to any computer in the house and to any internet cáfe in town and still be able to use Yahoo! Mail or Friendster without bothering to install anything.
It was magic, and I never actually got to appreciate the amount of work that happens behind the scenes until I started working as a web developer myself.
Now having this sort of ubiquity and reach in the world gives us web developers a lot of responsibility. These are responsibilities that we might not even be aware of most of the time, so I thought I should list them all out here for me and everyone else's benefit.
Of course, there's the age-old philosophical question that asks, "If a website has no visitors, does it exist?" One of the main reasons for making a website is to offer something of value to people. However, most of the time, people are not like you; people can come in different shapes and sizes. So it's important to learn about them.
Whether you're a one-woman/one-man team or someone who works for a large company, this is something that we should be constantly aware of because knowing your audience means that you can build better products for them.
I've treated accessibility as something that's mostly an afterthought—or not really a thought at all. I thought accessibility is something that only very few people would actually benefit from. It turns out that a disability can be temporary as well. Microsoft Inclusive Design shows that a person could be holding a baby (lack of motor skills), be in a noisy bar (hearing impairment), or driving a car (visual impairment).
Websites can be loaded from anywhere in the world (well, unless it's being blocked by the government), which means that we have to consider the types of devices and the network conditions that they're in. If you've ever tried WiFi at the airport, you know how frustrating it can be to load a slow website. I think a good starting point for this is Lara Hogan's Designing for Performance. It's also a free book that you can read online! From there, you can branch out to other resources like Addy Osmani's Essential Image Optimization.
I previously mentioned that knowing about your audience is essential, which means that having data about them is useful. We can use this information to improve the website and to offer better services and features. Let's take my podcast Friends Talk Frontend for example. I'd like to know how many people listen to the episodes, what podcast clients they use, and where they're coming from. I also have a newsletter where I have people's e-mail addresses.
But other than that, I don't have anything else about my listeners. I think it's important to keep it that way. We, as makers and stewards of websites, need to be aware of the data that we store about people, and it's not because I work for a privacy company—it's just the right thing to do.
Contrary to what Hollywood portrays, programming is a very social activity. We work with people who are good at design, content creation, marketing, and business, and of course, we collaborate with other programmers as well.
Supporting one another
Communities, whether online or IRL, can expose us to unfamiliar things, push us to be better people, and inspire us to do better work. Being around other people can lead to unexpected collaborations as well.
If you want to see what a thriving tech community looks like, check out #elaconf on Twitter.
Advocating for diversity
You already probably know that having a diverse team is A Good Thing because it's good for the product and the company. A diverse team can check your biases, expose you to people who don't look and talk like you, and to ideas that you don't usually hear.
But another thing about diversity is about having the feeling of belonging. Not only do we have a responsibility towards our users by making a good product, but also a responsibility towards the wellbeing of the team. Even if you're not a part of the hiring process, I think it's important to be aware of this and to be able to voice your concerns to management.
We wouldn't be able to manage taking care of our work, our users, and our colleagues without helping yourself first. If you've been on an airplane, you might have heard flight attendants say, "before you assist others, always put your oxygen mask on first."
We sit a lot since we work on our computers all day, and it's kinda fucking with our bodies. Make it a point to move more because a lot of problems can arise from being sedentary. Now, going to the gym is good, but you need to be moving all the time—not just 3 or 4 hours every week.
Taking care of your mental health
Mental health is also important in our industry because we can feel a lot of anxiety at work, feel like we don't belong to a group, feel like we're not good enough, and feel like we're fucking up.
- The School of Life
- What people get wrong about depression
- Adventures in Depression
- Do YOU have GENERALIZED ANXIETY??
This is a lot to take in, but we all have an obligation to look after ourselves and the people around us. Our work can affect a lot of people—even indirectly: workers labor in harsh conditions in the Congo for our lithium-ion batteries, Facebook influencing the election, and all the carbon footprint of our servers.
So tread lightly.