Blog

Introducing Theme User Experience Requirements

At Automattic this year, we’ve focused heavily on improving people’s experience using themes on WordPress.com. It’s one reason we introduced the TUX List, a set of theme user experience requirements. Putting these best practices into your themes on WordPress.org and elsewhere means anyone using them will have an easier time getting to what they really want to do: publish their site. Not fiddle with theme setup and options. Making themes easier is a job for everyone, so let’s keep working at it!

New House

Ranch style, one-story house, white with blue shutters.
The new house.

We moved into our new house in Greensboro about two weeks ago, and are settling in! We’re loving it, and the yard finally looks presentable today after some work mowing, trimming, raking and pulling weeds. We’ve also put a new roof on the addition, installed a new sub pump for better drainage and done some light plumbing and electrical fixes. Home ownership can be exhausting! 🙂

Hidden Expectations

Over the years I’ve come to realize that most difficult part of making websites isn’t the code, it’s the “hidden expectations”, the unseen aspects I didn’t know were my responsibility when I started: Accessibility, Security, Performance, and Empathy.

Dave Rupert in Hidden Expectations.

Dave Rupert writes about the responsibilities that come with building websites – the ones that often matter more than you know.

Now

I stumbled across a cool project about now pages, thanks to cheking out Melanie Richards’ site. You focus the content around one conversation starter:

Think of what you’d tell a friend you hadn’t seen in a year.

I dig the idea so I made my own, converting an old reading list page that I hardly used.

I’m aiming to check on it once a month and update it as necessary. It fits in nicely with the minimalist living I’ve strived for in the last year or so.

One Way to Learn JavaScript Deeply

At WordCamp U.S. 2015, Matt Mullenweg set a goal for everyone in the community: Learn JavaScript deeply. But how does one do that?

In this post, I’ll share what’s worked for me in the past six months or so as I’ve dove deeper into JavaScript.

How Do You Learn?

These days, you can go in many directions. From books and blog post tutorials to courses and bootcamps, you have many ways to learn something new. There’s no one right way for everyone. You have to experiment to figure out which method works best for you. Once you figure out which method works, stick with it, and don’t be afraid to mix and match as you go.

For me, working through courses on Code School and reading in-depth blog posts has stuck best. Blog posts have helped the most since I can consider about how the concepts might surface in my own projects.

And speaking of projects, let’s talk about those. After all, you can’t just read and listen to concepts if you want to truly learn something. Here are five things I recommend that have helped me further my skills with JavaScript:

Just Dive In

Just build. At every opportunity I’ve had, I’ve tried to build with vanilla JavaScript if it made sense to do so. Whether that’s fixing bugs in themes on WordPress.com or taking on new work, I’ve looked for ways to touch JavaScript.

Find a mentor. If you really want to learn, you need a teacher. Someone that can take your questions, hear your frustrations and be there to push you. For me, that’s been my colleague at Automattic, Ernesto Mendez. He’s found a way to teach me something almost every day and challenged me in a way I couldn’t have done myself.

Start small. You might be tempted to jump into a big project when going deeper into a topic. I wanted to experiment with building a JavaScript-powered WordPress theme. But the more I researched and looked into it, the more complex it became. That’s not to say building something like that isn’t beneficial, but keeping what you’re working on manageable means you can control the complexity and get to the “Aha” moments faster.

Redo a project or code snippet you know. The best way to learn something new is to focus on it. You can do this by rewriting jQuery plugins and bits of code in vanilla JavaScript. I’ve done it with a JavaScript file on this site, and several other recent projects. It has forced me to see parts of JavaScript I’m unfamiliar with, and as a result, I’ve picked a lot of new knowledge.

Work on something consistently. Benjamin Franklin famously woke early to read and write. He set goals and measured them, always experimenting and dedicating time to those tasks every day. I’ve tried to do the same, finding projects and tinkering a little each day. It’s helped me progress steadily. I break the work up into two periods, one at the beginning, and one at the end of each day. Sometimes, that means I feel like I don’t get very far. Otherwise, the short amounts of time on tasks give me bursts of energy and excitement. It’s a balance.

I hope this helps you take on JavaScript sooner rather than later. WordPress needs you.

How to Learn Technical Things

The people that know the concept you are learning went through the same process that you are going through – often multiple times – to get where they are today.

The actual mechanics of learning are the same for everyone: you poke around, you push the edges of what you know, you make mistakes, you do dumb things, you struggle to understand, you apply it to problems you are interested in, and knowledge grows over time.

Jamison Dance in How to Learn Technical Things.

Jamison Dance has some great points in his article on learning. He goes onto describe the techniques of a skilled learner. It’s a process of making mistakes, asking questions, getting rapid feedback, being uncomfortable, comparing what you know and continuing to learn. As we’re trying to learn, we often forget that learning doesn’t just happen at all once but over time. And during each step, learning happens… Give yourself credit for that too!

Less Apps, One Week In

A week ago, I came to the realization that I’d hit app overload. So I took action.

I deleted a number of apps from both my iPhone and iPad, my two primary iOS devices. The hitlist included Facebook, Twitter, MeetUp, Google Plus, Tumblr and more. In the last week, I’ve used only the web versions of Facebook and Twitter on those devices. It has felt both freeing and only slightly restrictive. To be honest, I don’t think I’m going back to the native apps.

I think I only had notifications enabled on Facebook and Twitter, and I probably used those two the most out of the deleted bunch. That said, just glancing at my home screen feels much less stressful. Every app there has provides more value than novelty. When I pop open my phone, I’m much less likely to get sucked into mindlessly browsing content, which is amazing. I now have small chunks of time for more important things.

It’s not that I think Facebook or Twitter don’t provide value. They do. They connect me with both real-life friends and online friends in a way I can’t achieve on my own. It’s more that I want to nuture and engage with those connections on my time, rather than know the second someone leaves a comment or like.

This new experiment has its faults though. My friends in town have a Facebook group that we use to coordinate events and fun stuff. A friend posted late one afternoon that he’d like to go to the movies that night. It balooned into a quick, last-minute event that I missed because I saw it too late. That likely wouldn’t have happened had I had the app, enabled with notifications.

But I still think a missing the occasional news or event is better than missing out on some of life’s little pleasures. I plan to keep this up, and see how it goes in the future. Maybe it will stick, and maybe it won’t.