WordCamp Orlando 2018

Today I gave a talk at WordCamp Orlando titled “Building A Code Review Culture”. Below you can find my slides. I also wanted to share some links for further reading on the topic.

The Guten-Report: WordCamp Portland, ME 2018

Today was WordCamp Portland, ME. There were around 150 attendees that attended this one day WordCamp, and was packed with great sessions.

One time slot was occupied by a panel discussion about Gutenberg where the panel fielded questions from the crowd about the new editing experience. The attendees at this camp represented a good mix of the different types of WordPress users. Attendees were also able to anonymously submit their questions.

I thought this was a great opportunity to take the pulse of the WordPress community.

The panel was moderated by Sam Hotchkiss. These following people were on the panel:

Below is every question that was asked during this session.

  • When you are talking to your clients, do you tell them about Gutenberg, and what you are going to need to do?
  • What do you think the biggest hurdles to adoption are going to be?
  • How comfortable or uncomfortable are you with the short release timeline? How is this affecting your rollout plans?
  • After the introduction, is there a certain overall timeline for adding functionality? Are you talking years? Or less?
  • Gutenberg pushes itself to the top of the page. Is there a way currently, or do you see a way to push this down and add tabs at the top of the screen?
  • How do you see Gutenberg affecting current page builders?
  • Do you see the future of Gutenberg as a full featured drag and drop theme builder?
  • After 5.0, how long do you think that the Classic Editor plugin will be supported?
  • Can you just not update to WordPress 5.0 and keep running the 4.9 branch of WordPress indefinitely?
  • How concerned are you about the lack of parity between Gutenberg and the Classic Editor?
  • What are the pieces you are the most nervous about with Gutenberg rolling out?
  • What are the pieces you are the most excited about with Gutenberg rolling out?
  • What is the current state of Gutenberg in mobile?
  • What resources would you recommend to someone that wants to get started in Gutenberg development?

Accessibility: A Developer’s Pledge

My grandfather was legally blind.

Even in my earliest memories of him, he did not drive, My grandmother drove until she needed to give up driving herself. He never really described his vision to me in detail, but I do remember him saying it was darker, he saw mostly shapes and outlines, and he always asked you to move in closer when having a conversation so he could see you. He carried his folding white cane everywhere with him (if you see someone with a white cane, offer assistance), and we always looked after him to make sure he had everything he needed to be independent and live on his own.

He suffered from Macular Degeneration, an incurable eye disease that causes degradation of vision, straight lines to appear wavy, and dark or blurry areas in the center of your vision.

Macular degeneration is the leading cause of vision loss, affecting more than 10 million Americans – more than cataracts and glaucoma combined.

(source: American Macular Degeneration Foundation)

He was a very proud veteran, serving for the US Navy during the Korean War aboard the USS Allen M. Sumner (DD-692). He fondly told stories of his time at sea circumnavigating the globe, having stopped in Spain, Greece, Japan, and more (if this interests you, you can read the ship’s entire 1953 log book, or view information about the ship’s Korean War deployment). He was honorably discharged on May 19th, 1955 as a MM2 (Machinist Mate Second Class) and returned home.

A photo of Harold Jackson on the USS Allen M. Sumner with bedding draped over the railings.
My grandfather on “air bedding” day (days when bedding was tied to life lines to air out)

Many years later when his vision had declined, his veteran status made him eligible for computer training in Connecticut. While there, he and other blind veterans were taught how to use the computer to perform general tasks, everything from composing documents and printing to sending e-mails and using the Internet. After his training, he returned home and a technician came to his house to set up a computer for him to use.

We emailed back and forth regularly, which was great! I still have some of them in an old email account of mine, asking for scuttlebutt for the “ol’ sea dog”. When I visited him, he was always excited to show me the new projects he was working on, the new useful site he had discovered, or the new tricks he had learned. Since I was good with computers (and his grandson), he also turned to me for help.

Because he was blind, he relied on a combination of screen reading software (JAWS) and zoom software to magnify his screen to a size that he could read. Using a screen reader takes a lot of patience. At first, helping him was difficult for me. I had to slow down considerably in order to allow him time to listen and step through the commands and navigate the screen with JAWS. Eventually, I adjusted, and I frequently helped him with common issues he experienced.

What’s The Point?

While I enjoy reminiscing about the times I shared with my grandfather, I am telling you about him for a reason. My experiences with my grandfather made me aware of accessibility and its importance, specifically related to blindness. Some people are never exposed to anyone with a disability, so I consider myself to have an above average awareness of accessibility.

When I think of accessibility, I think of my grandfather. I watched the Internet open so many doors for him. He had a new hobby to pass the time. He scanned old photograph slides and photos and shared them with family and friends who had no idea they existed. He reconnected with old shipmates and contributed his photos and stories to the officially commissioned website for his destroyer. He helped produce and edit email newsletters for online blind communities.

While at a Blind Veterans of America (BVA) reunion in 2006, a former ship mate (who was not blind) decided to drive the 2 hours to the reunion to surprise him. He knew my grandfather would be there after reconnecting through email. The two had not seen each other in over 54 years.

A newsletter clipping about my grandfather reuniting with an old friend after 54 years.
A newsletter clipping my grandfather shared with his destroyer’s website.

I want WordPress to open the same doors for everyone, regardless of their mental or physical abilities.

When I worked at Boston University, I frequently asked team members to revise designs or update markup to be more accessible. I played around with pa11y and proposed adding an automated accessibility scan to our pull request process. When I have questions about accessibility best practices, I reach out to accessibility contributors for answers.

But, up until now, my involvement with accessibility has only met the bare minimum. And I want to do better.

Fixing The Problem

This post is not to discuss why certain decisions have been made, the politics of those decisions, or the different opinions of whether Gutenberg is the right thing for WordPress (for the record, I believe it is). What’s done is done, and I’m not aware of any time machines in existence.

This is a personal exercise for me to take my share of the responsibility for the current state of accessibility, and define the steps I am going to take to improve it.

The problem: I have not done enough to positively progress accessibility in WordPress.

Accessibility is not just about physical disabilities, whether permanent such as blindness or temporary due to a broken arm. Accessibility can also help those with cognitive disabilities, such as Dylexia. It even benefits those without disabilities dealing with situational limitations, such as being in bright sunlight, or living in an area with expensive or low bandwidth.

The passionate WordPress accessibility community needs support. Many are burnt out, beyond frustrated. They have been asking, hell, pleading with us to do more to progress accessibility. More people need to join in and help. It’s time for more people to listen.

My Pledge

Below is what I am pledging to do moving forward:

  • I pledge to learn something new about accessibility every week.
  • I pledge to blog about what I learn to help spread awareness and share knowledge.
  • I pledge to provide closed captions for any publicly available video of me speaking.
  • I pledge to spend two days a month working exclusively on accessibility tickets for WordPress (I will still work on accessibility tickets outside of these two days, but these days will exclusively be accessibility).
  • I pledge to more closely follow the #accessibility meetings in the WordPress.org Slack and offer help whenever I can.

In the grand scheme of things, this is not a lot at all. But, if everyone makes a similar pledge to do something to progress accessibility, it will quickly add up.

I challenge everyone to step back and think about what they have done recently to progress accessibility in WordPress, and consider why they have not done more.

Please, hold me accountable to my pledge above. Ask me which days I focused on accessibility tickets this month. Ask me what I have learned this week about accessibility. Ask me for a ticket you can help out on.

Write a blog post with your own reflection and pledge. Comment below with your pledge. Put it somewhere publicly and ask your peers to hold you accountable.

A photo of Harold Jackson Sr..
Harold Jackson Sr. – 1932-2011

Note:

I am extremely fortunate to be part of a team at Bluehost that is sponsored to contribute to the WordPress open source project. Part of my job (as I see it) is community service.

I am always available to anyone who needs help with any aspect of contributing to WordPress. Anything from help with running VVV to writing a component meeting summary. You are always welcome to ping me and ask for help on Slack.

I’m Blue: My Next Chapter

Today is my last day at Boston University, a place that I have worked at for nearly two years. I am extremely excited to start my new full-time job on Monday as a WordPress Core Contributor at Bluehost.

Contributing to WordPress is very important to me. I believe in what WordPress represents and the doors that it opens for millions of people. I am excited that I can now focus entirely on contributing to and making WordPress better.

As I reflect on my time at Boston University, there are things I won’t miss about working here (*cough* traffic *cough*), but there are many more things that I will miss. My department, Interactive Design, and the University as a whole is full of amazing and inspiring people. If you are in the Boston area and are looking for work, I highly recommend that you reach out.

I was encouraged to grow by attending conferences, including being sent to Paris in 2017 to attend the WordPress Community Summit (one of my proudest professional moments) & WordCamp Europe.

I think about some of the projects I had a hand in:

  • Questrom School of Business
  • College of Arts & Sciences
  • Of Hoops & Healing (Winter-Spring 17 Bostonia feature)
  • I helped re-engineer the internal (soon to be open sourced) theme framework that runs a large percentage of BU websites to make it easier to build on.
  • I helped implement a pull request/peer review workflow that included coding standards checks using CodeClimate.
  • Created a banner plugin called BU Banners that will be activated on every new site moving forward (also soon to be open sourced).

And these are just the things that come to mind as I write this.

After today, the scarlet will fade to blue, but I’ll always be thankful for my time and experiences at BU. ♥️

WordPress Boston – March

Last night, I gave a short talk at the monthly Boston WordPress meetup about what plugins I use. Below is the list, in case you wanted to look into them and try them out.

And finally, my absolute favorite, must have plugin.

Query Monitor – John Blackbourn

What are your favorites? Comment below!

WordCamp RI 2017

Today, I will be giving a talk at WordCamp Rhode Island. Even though I am an organizer for WordCamp Boston and the WordPress Boston meetups, I have always considered WordCamp Rhode Island as my home WordCamp. I have spoken every year since its inception (previously WordCamp Providence).

This year, my talk is titled “Coding Standards: What They Are and Why You Should Follow Them”.

Slides

You can follow along during my talk with my slide deck if you would like.

Slide Deck

Below, is a list of links to things mentioned in my talk.

WordPress Coding Standards
WordPress Core Trac Tickets
Code Linting Resources
Services

Space Exploration is Awesome

Space exploration has always been fascinating to me, both manned and unmanned. There is something about the unknown vastness of space that provokes endearing curiosity. The Cassini-Huygens project has fed that curiosity for years, but will stop doing so later this week.

The New York Times posted a great article last week detailing the impending demise of the Cassini-Huygens spacecraft, an unmanned space probe that has been pestering Saturn and its moons over the last 13 years. While the Huygens part of the craft (a probe designed to separate and land on Titan, one of Saturn’s moons) has been dead since 2005, the Cassini part of the craft has been weaving in and out of Saturn’s rings and moons collecting data, photos, and even sounds for over a decade.

So Long. Farewell

On Friday, September 15th at approximately 7:53am EDT, Cassini will descend towards Saturn where it will transmit its last messages and disintegrate into the atmosphere. The article’s video does a great job of detailing the whole project and illustrating the final descent of the elder spacecraft.

Rest in peace.

Be sure to check out the original article.

vvv-custom.yml Files – Show Me Your’s, I’ll Show You Mine

Update 5/18/18: Added entries for 4.8 and 4.9. Also, configure the highest version of PHP officially supported for each version.
Update 6/9/17: Added entry for 4.7.

With version 2.0 released of the Varying Vagrant Vagrants project, it is now much easier to configure your local VVV environment to your liking. Adding additional sites that are created and configured with a single command is easy breezy.

Tom Nowell wrote a great breakdown of what is new in version 2.0, and the documentation on the VVV website goes into great detail on the different configuration options available to you. I also recommend reading through the README file for the Custom Site Template repository (which your custom site definitions will most likely use for provisioning instructions). I am not going to cover the changes or the different options or settings in this post, so feel free to read through these links to get up to speed.

My vvv-custom.yml File

Recently, during the 4.7.4 release process, I was helping to test the built package files generated for the maintenance release. In addition to the 4.7.x version being updated, some changes were backported all the way back to the 3.7 branch (currently, the oldest maintained version of WordPress).

I realized that I did not have anything set up for testing older versions of WordPress when I started testing the builds. So, I spent a few minutes expanding my vvv-custom.yml file to accommodate this need.

Here is my current vvv-custom.yml file with some of my personal and work sites removed. In addition to the two default sites (wordpress-default and wordpress-develop), I include a multisite environment, and each WordPress version back to 3.7.

Share Yours

What does your vvv-custom.yml file look like? Do you have any cool tricks worked into yours? Share them below!

Why I WordCamp: A Reflection

I had an experience at a WordCamp in 2016 that I wanted to take a moment to share. It was unexpected and made me reflect on my involvement in the WordPress community and why participating is so important to me.

Let’s travel back to 2014. I was teaching a workshop called Plugin Development from Scratch at WordCamp Providence (now WordCamp Rhode Island). This would be my third year in a row speaking at this WordCamp, but it was my first time running a workshop. Participants would learn how to build a plugin using basic WordPress action and filter hooks, APIs and best practices.

As I was going around the room to answer the questions people had, there was one person that had many more questions than the others. I spent as much time with her as I could while continuing to run the workshop. I could tell something was not quite making sense to her yet and did my best to explain things to her.

The workshop went on and eventually came to an end. The participants slowly filed out of the room until there were only two people left: the person with all the questions, and myself. She had a few more to finish off the day, so I spent some more time with her to ensure she had the pieces she needed to continue on her own.

WordCamp ended, and I went on with my daily life. When the next WordPress meetup came around, the person from my workshop showed up. She had more questions related to the material in the workshop and told me that she was determined to get her example plugin to work.

This went on nearly every month for a year. She continued to show up with questions ready to learn. WordCamp RI 2015 & 2016 came around and she volunteered, helping to organize both years.

At the speaker’s dinner for WordCamp RI 2016 I had a chance to catch up with her. It had been several months since our paths had crossed at a meetup, and she, of course, had a handful of questions for me. This time was different, though. Her questions were far more advanced than the last time we had talked.

“I am really impressed, Karen. You’ve come a long way!” I told her.

“It’s all because of you. Your workshop changed how I saw everything. Because of the way you explain things, something clicked. And all of a sudden, everything made sense.”

When I was driving home I reflected on what she said to me. It caught me off guard. I always contribute to WordPress and speak at WordCamps because I enjoy it. But I had never thought about what impact the things I said would have on the people who attended my talks.

Because I took the time to teach a workshop (that I was afraid no one would receive any benefit from) and answer some questions, someone received a level of clarity that helped them understand WordPress better. And this improved their ability to make a living on WordPress.

I started to think back. I was once that person. We all were. Even though we may not be able to trace our own eureka moment back to an individual person’s instruction at a workshop, the collective pointers that we receive from the people we interact with in the community play just as much a part of our skill sets as the long hours spent at the keyboard combing through the files in WordPress Core.

No matter what level your skills are at, there is always someone who can learn from you. Don’t be afraid to offer help. Open source a project you have been working on. Answer questions in the support forums. Attend local meetups. Speak at WordCamps. Translate plugins & themes. There is a way to contribute to the community for every person.

This is why I love the WordPress community. The number of people willing to take the time to teach, mentor, give guidance. Everyone belongs, everyone has a right to be there. WordCamps pull all of these people from all walks of life together to collaborate, to help, and to learn about WordPress.

This is why I WordCamp.