WordPress Serves Many Masters

I have used WordPress in a number of different ways over the last (just shy of )10 years.  I got my start building a blog that my friends I and I wrote on. We got a bit of a following (I remember the first time we hit 1000 views in a day on one article, it was exciting). I then moved on to building a site for a movie my friends and I wanted to make, before starting freelancing and being exposed to many sites.

Freelancing Days

Over the course of about two and a half years of freelancing, I worked with dozens of clients. They most commonly were:

  • Comedians
  • Small non-profits.
  • Small Businesses and Restaurants
  • An SEO consultant on products that he offered (my first foray into product development rather than developing primarily for marketing) 

A site I worked onwhile freelancing

The first three groups of sites make up a large percentage of WordPress sites. There are freelancers and agencies in just about every town/city in the world helping Individuals, smaller non-profits, small businesses, and restaurants get online every day. In general, the organization has little knowledge about what tools they should use, and doesn't care what WordPress is. These are the passive users of WordPress.

The Enterprise

I then moved to a couple of large organizations( ranging from 50 to 500,000 employees). Here, WordPress was chosen by the organization, but it was never the main technology of the site.  It was a supplement

WordPress supplemented the technology, rather than being its base.

Each of these organizations had at least 5 engineers, but it was rarely more than one or two people who worked on WordPress, and outside of security updates, months would go by without any work being done to WordPress from a coding standpoint.  At one organization during a major redesign, the only reason WordPress was updated to match the site design was due to other tasks taking less time than anticipated.  

Big Media

Some of the biggest WordPress sites (at the time) were at Condé Nast. The New Yorker switching to WordPress received praise from Matt Mullenweg (twice!), while WIRED, Vogue, Bon Appetit, and others were receiving large amounts of page views and allowing editorial teams to seamlessly publish a lot of content. Working with the teams on each of these sites showed me that when you have multiple people all working on WordPress at once, you can make it do whatever you need it to.

Let's Try Something Different

The next step was a short stop building an analytics product with WordPress as the main piece of the backend technology. Essentially, it was using WordPress as a framework. WordPress provided much of what we needed, but we could have just as easily used something that advertises itself as a framework. WordPress gave us a lot of things out of the box though. We didn't need to build a user system, we could use WordPress. We didn't need to build a command line interface, we could use WP-CLI. By using WordPress, we got a lot out of the box for free.

Where I am now

I primarily work on five sites now: two personal, one volunteer non-profit, two for work. My personal sites are "boring" sites. The non-profit site is rather complicated, in that it is a marketing site, a conference registration system, a blog, and an intranet all in one. But it's also not 100% WordPress. Many pieces have been carried forward

And my two work sites? Those are content-heavy media sites. They feature a lot of videos and regularly go viral. 

What WordPress Excels At

The problem for WordPress is that for all of these sites, it works pretty well.  It's far from perfect, but it works. One of the biggest challenges for WordPress, especially when it comes to core features that are used on almost all sites, is that it needs to work for many many use cases. Working on sites of all shapes and sizes has taught me there is rarely one solution that solves every site's problems. 

Serving many masters means people look at WordPress and think "It's just a blog", and it is, it powers this blog.  They look at it and think "It's for small business brochure sites" and it is, it powers many of them.  They look at it and think "It's for big media sites with large staff" and it is, it powers ScaryMommy.

Scale is often thought of as the ability to receive a lot of traffic or handle a lot of users, but scale also means working for many use cases.  This is the type of scale that is the biggest challenge for WordPress. It doesn't have a narrow focus of serving one use case, it has a broad focus of serving all users use cases. Scaling WordPress from a core perspective means providing features that first, work for all, and second can be modified to be better for them as well.  Out of the box, WordPress is never going to solve every use case, but when features make it harder for a use case, we really need to ask ourselves if they should go into core.

Patty Melts

One of the greatest food items is the patty melt. It's a burger, it's a sandwich, it's delicious.

As great dinner sandwiches go, it is hard to beat the patty melt

The patty melts deliciousness comes from the fact that's it's only four components. Rye bread, , Cheese, and grilled onions. The simplicity doesn't mean you can't customize it though. Dark, light, and marbled rye each add a different flavor, but the biggest way to customize it though is the choice of cheese. Swiss and American are the two classics, but I think cheddar and muenster also deserve consideration.

BONUS: If you want to make the patty melt even better, make sure to include a pickle on the side for dessert.

Random Thoughts on Gutenberg

Gutenberg is being developed as the next generation WordPress editor. I made my first contribution earlier today. Nothing big, but something that will hopefully help people test it.  The contribution process was , but for end users, that’s not the important thing. What is important is the actual editor. I’ve seen talk that Gutenberg is in “Open Beta” now, but I think calling this beta software is still premature. I think there is plenty that will change between now and any possible inclusion in WordPress core for Gutenberg. Here are my random thoughts and my first reactions to using Gutenberg.
  • It’s pretty.  And Fast. I never thought of the post editor as being slow, but there is something about Gutenberg that makes it feel fast.
  • There are a lot of rough edges. It’s hard to know what is a bug, what is intentional,  what just hasn’t been done yet, and what hasn’t been thought of.
  • There is an option for “Drop Cap” that doesn’t seem to do anything on the front end yet.
  • I’ve also never intentionally been able to highlight multiple blocks at once, but I’ve sure done it on accident a lot.
  • I can’t seem to delete some blocks without going into the text format.
  • I really like how the plugin is implemented. Being able to test Gutenberg without completely giving up the current editor is awesome and will hopefully help encourage people to test it out.
  • The tab key doesn’t let me actually add a tab, even inside a code block.
  • Existing content can’t really be imported. I hope this is something that is on the roadmap since it sure would be odd to Gutenberg sometimes not work like Gutenberg.
  • I miss a lot of the meta boxes I’m used to seeing on the screen.  Things like Yoast SEO (on some sites) and custom taxonomies are just not shown. If every metabox ever made for WordPress needs to be remade, it sure is going to make developers lives a living hell.
  • Adding images and the image block in general are confusing. For example, despite having “All da” ( which I think is “All Dates” but is cut off) selected, only my 10 most recent images are shown initially.  There are no names/text associated with the
  • I can’t figure out how to add an image to this list.
  • Autoembeds seem to work, but don’t display anything in the UI.
  • The Embed URL block tells me that I can’t embed that content, but the front end of my site tells me differently.
  • The sidebar being empty 3/4 of the time feels really odd.
  • The default state is likely my favorite “Distraction Free Writing” implementation in WordPress yet.  I’m simultaneously able to focus on my content, and yet I have all the tools I need for writing. I don’t have all the tools I need for content creation.
  • I need to take my hands off my keyboard more than usual. Adding a paragraph after a list isn’t easy to do with just a keyboard.
Lots of things are constantly changing with Gutenberg ( my small change was merged within hours of proposing it). I’m going to keep my eye on it. The content for this post was drafted in Gutenberg and I’m going to try to continue to do that going forward.  Go install Gutenberg, so you can generate your own opinons on it.

Up close differences

Painting, while often thought of a 2d medium, is much more three-dimensional than it is often given credit. It makes it hard to appreciate a work of art in two dimensions.

I spent a while yesterday studying two of MoMA’s masterpieces.  Flag by Jasper John stood outside the entrance for the Robert Rauschenberg: Among Friends exhibit that’s in place right now. From a distance, flag appears to be a textured painting of an American Flag, but as you get close you can not only see that it’s newsprint underneath, but you can actually read the paper. You can see how it hang off the side of one of the stripes.  You can hear other people ask ridiculous questions like “Was this made before Alaska and Hawaii were states and that’s why there aren’t 50 stars on it?” (there are 56 stars). Up close and in person, you really get to appreciate the aspects of the piece you can’t see from a 2d picture.

Around the corner, Roy Lichtenstein’s iconic Drowning Girl inspired a similar feeling. When you look at photographs of Drowning Girl or you view it from far away, it comes across as a comic book piece that likely was first done in pencil, and then gone back over in ink (we can debate if this is tracing some other time) but upclose it becomes clearer that it’s not just clean lines. The strong black lines that dominate the painting aren’t smooth. The brush marks are clear. The dots that make up the shading are far from uniform in size. Many of them, especially in the lower left of the painting blend into each other.

When looking at things from far away, it’s easy to miss the imperfections. But it’s the imperfections that make it art. In many ways, it’s the same when we are working on a website. From a distance, when we aren’t intimately involved, there are things we aren’t going to see. When we get close, we can start to really understand what is going. We learn the background for why specific decisions get made. It can also cloud us. We stop seeing the big picture and focus on the flaws.

Balancing the close-up view of the imperfections and the broader story is always going to be a challenge. Concurring it though is what helps separate good from great.

Thirty Four

Today I’m still three years away from another prime birthday, but this is my ninth semiprime birthday and my ninth Fibonacci birthday.  That last Fibonacci birthday was a bit of a bigger deal though.

I didn’t publish my post about thirty-three. I spent the day fairly exhausted after having my brother visit, and for a while when I get exhausted I tend to get fairly down emotionally. I need to get better with sleeping. Maybe I’ll try that as a thirty-four-year-old.

As a thirty-three year old, I really threw myself into making art. I painted, I drew, I burned wood.  I often struggle to love anything I create, but every once in a while I do. Lately, I’ve mostly been doing watercolor sketching in bars, painting with a brush attached to a Dremel, and burning small pieces of wood. It’s fun to experiment with things that are so different than how I spend my days. It’s important to step away from the computer. I’m glad I found an outlet for me to do that in 2016.

Professionally, thirty-three was the year I was honored with the opportunity to be the deputy lead of a WordPress release. Helping do that will forever be an important accomplishment and one of my most important contributions to WordPress.  I also switched jobs (again), moving back into media and publishing. I’ve also added to new events to my volunteer schedule, taking a (broader) role in WordCamp US and being a part of the inaugural team around WordCamp for Publishers. The role I have as a part of the Model UN I help organize has evolved yet again and I’ve switched into a senior staff role that is less focused on the day to day running of a department and is now completely focused on photography, technology, and helping where it is needed during the actual event.

Thirty-three had challenges. Every year does. These challenges won’t magically go away with me turning a year older. Today is really just another day, it just happens to be the anniversiry of the day I was born.  So I guess I’ll drink to that.

Aaron’s Rule for Better Meetings #6

An addendum to my initial list of rules for better meetings.

  1. All Meetings where product decisions get made need to include a designer and an engineer. It’s important to provide multiple perspectives when making product decisions, and none of those decisions should be made without engineering and design having an opportunity to explain their perspective on benefits and costs.

photo: used under a Creative Commons Attribution license. Original: #WOCinTech

We Use Way Too Many Fonts

Massimo Vignelli is most famous for designing the NYC Subway map. In this video, he speaks about typography, the history of fonts and argues that “There are good maybe a dozen (fonts)…I only really used three or four in my life.” He also argues that when designers are less good, they use more fonts. When they are really bad, they use them all.

Fonts also greatly affect the load time of web pages. Since most web fonts are almost always externally hosted, it’s even more important to be conscious of how many fonts you use. What would happen if we limited font choices more? What if you only could use Open Sans at two weights along with both the regular and italic versions. How would that affect what you designed?  Would it force you to use other differentiators?  Would color become more pronounced? Would size?

When one variable is taken away from the design process it doesn’t have to limit you; it can actually make your design more impactful.

MoMA uses a single font for the vast majority of the museum. However, it also designs a new font for each of its special exhibits. It makes each one stand out even more. Could single font websites do the same thing? When you write a really powerful essay you make your own font just for it?

Null Propagation Operator proposal for JavaScript

At it’s January meeting, TC39 (essentially the standards body responsible for JavaScript) heard a proposal for some syntactical sugar that really excites me.  It’s called the Null Propagation operator and allows code that looks like

const firstName = (message
&& message.body
&& message.body.user
&& message.body.user.firstName) || 'default';

to become code that looks like

const firstName = message.body?.user?.firstname || 'default';

Essentially, it allows for eliminating lots of checks to ensure multilevel JavaScript objects are properly defined. This reminds me a bit of the null coalesce operator in PHP as  it allows for easier to read code. It needs to be balanced so these languages don’t turn into Perl filled with secret operators.

The proposal is now in stage 1 which means that TC39 “expects to devote time to examining the problem space, solutions and cross-cutting concerns”. It’s still early to get excited about this, but this is one of those pieces of syntactical sugar that make writing code easier.

My One Icon

A few years ago, I needed an icon for something I was working on, so I opened up the noun project and started looking.  I couldn’t  find anything, so I set out to design my first icon.  What I came up with is my blood pressure icon.

The best part isn’t the emails every few months letting me know I made $0.40 (which I did in February), it’s seeing that for a few hundred people, my representation of blood pressure is how they want to represent blood pressure.

As someone who struggles at times to consider themselves a designer, it is reaffirming to see the icon used. If you happen to use it, please let me know.  I would love to see how it’s used by others.

Random Thoughts on my email norms

Over the years, I’ve sent a few thousand emails.  Less than some, more than others and I’ve developed a handful of normative behaviors in the process that others may find useful.

  • My default on a group conversation is to always reply all.  Communication is oxygen and I figure it is best to error on the side of overcommunicating.  People can always choose to self-filter.  I love that gmail includes an option to make reply-all the default. Everyone should set it that way.
  • If I don’t reply all, in the first line I will use a minus symbol so the rest of the chain knows who (if anyone) has been removed.
  • Concurrently, if I add people, I use a plus symbol so the rest of the chain knows as well.
  • The only time I use BCC is to remove someone who made an introduction, and I will state that they are being BCCed
  • I try to make the subject line clear and simple. The subject line should be evergreen (it should encompass the entirety of the conversation that needs to take place)
  • If it can all be said in the subject line, I’ll end it with EOM so people know they don’t need to open it.
    • This is less of an issue with chat programs like Slack being available.
  • I hate email signatures that are more than a line or two.
  • If my response can be said completely in emoji, you bet your ass I’m going to do it.
    • I do only use emoji for positive responses though.  No one wants to see as the response to a request.
  • I try to avoid sarcasm.  It is much harder to be sarcastic in writing than it is in a higher fidelity form of communication.

What are your email norms? What email etiquette do you follow? Share it in the comments.