WordCamp US 2024 – It’s been a while

Liminal Wapuu

This year I was fortunate to attend WordCamp US 2024 in one of my favorite cities, Portland, Oregon. I was not only able to attend, but was also one of the fortunate few selected to present. I heard tell that 350 folks submitted presentations for this event. I can only imagine the difficulty and work the volunteer organizers had in selecting speakers and am grateful for the opportunity.

It was an interesting intersection of my interests. For many years I was active in the local WordPress community as one of the event organizers for WordCamp St. Louis and the monthly WordPress meetup group. The pandemic put a big kibosh on my involvement and disrupted the community as a whole. It’s been five years since I’ve been at a WordPress-centric event, and this time I was there as a speaker. Life is funny that way.

I wanted to take a moment to jot down my notes and thoughts from the event. I learned a lot and met some interesting folks along the way.

Contributor Day

Tuesday kicked off the event with Contributor Day, which is a full day dedicated to improving WordPress. That could be contributing code to core, working on plug-ins, documentation, community building, or even video and marketing efforts. I ended up spending the first half of the day at the table for Openverse, a search engine for freely-licensed (Creative Commons) images and audio. Since I’ve contributed to Wikimedia Commons and work at the Foundation, I was curious to learn more.

I chatted with Zack Krida, Madison Swain-Bowden, and Krystle Salazar1 and learned more about their work. The project originally started at Creative Commons in 2017 as CC Search, and was brought under the WordPress umbrella in 2021. It’s integrated into WordPress, allowing authors of any site to search and use freely licensed imagery from Flickr, Wikimedia Commons, and more.

Openverse in verse

They face many of the same challenges Commons faces regarding reuse, attribution, NSFW content, and to a smaller degree moderation. They are mostly a front-end to existing repositories whereas Commons is a repository upon itself! We had some good chats, with far too little time to cover it all.

One WordPress-related pain point we shared was the lack of formal functionality in WordPress core for attribution and licensing information. Over the course of WordCamp US, I heard from no fewer than four presenters, along with a few side conversations, about how everyone ends up creating their own solution to manage these pieces of custom data. NASA, Vox Media, Disney, and others have all devised their own solutions. Even we at the Foundation, for Diff and the Foundation’s site, have created unique approaches—each a reinvention of the wheel. There’s a solid opportunity here to improve this in WordPress Core.


I was also able to reconnect with some friends from the St. Louis WordPress community, many of whom I haven’t been in contact with for five years. Pandemics, man. Jen Swisher, Joe McGill, David Smith, Mary and Dick, and Michelle were all regulars at WordCamp St. Louis back in the day. Maybe with things settling down, we might see more community building happening here in town…

For dinner, I sauntered out to Frank’s Noodle House and had a wonderful meal. I have a 99% success rate eating at restaurants that were formerly actual houses. Frank’s was no exception. 2

The pendulum in the Oregon Convention Center

Showcase Day

Showcase Day was a new addition to WordCamp US. It is described as, “an opportunity for creators to showcase some of their most innovative, interesting, and indubitably incomparable uses of WordPress”. So the coolest and most interesting uses of WordPress. I’d argue that they achieved this with the packed schedule. Here are the sessions I attended (so hard to choose!), with a few notes where I remembered.

Keynote: Reach for the Sky: A Magical Transformation with Gutenberg and Unlocking the Digital Evolution: Navigating the Gutenberg Era by Alexandra Guffey and Katrina Yates

These two back-to-back presentations – the first being the keynote of the day – covered how the Disney Experiences team used the block editor (Gutenberg) to design and develop custom blocks for their editorial needs. Two lovely folks from Disney talked about their strategy and approach. They created a main theme and used child themes for different sites. Each with blocks specific to those sites. A key takeaway quote from their work, “We are growing with Gutenberg instead of working against it.” Nice.

I also learned of the Gutenberg Storybook for WordPress components. A handy guide to know what components are available to reuse with variables and live code demos. A valuable resource. Instead of developing your own controls you can use these components to provide as close-to-core interface for editors as possible.

The Power of Extending the WordPress Editor: A Block Visibility Showcase by Nick Diego

Nick walked through a plugin he created called Block Visibility. It works with any block and allows you to adjust the visibility of blocks based on a smorgasbord of conditions. User roles, date and time, viewport size, and more. Along the way, I learned that the Group block can be made sticky, making it easy to create navigation items within the editor.

I also learned about how you can extend a WordPress block with custom functionality, which is a far better approach than creating a custom block from scratch, especially since core now contains many useful blocks.

Dynamic blocks also look rather interesting. “Dynamic blocks are blocks that build their structure and content on the fly when the block is rendered on the front end.”

My one idea for Nick’s Block Visibility plugin would be to incorporate visibility by language. So if the site language is set to Spanish, don’t show a promotion happening in English. Or if a block content is translated, show the appropriate language version.

Nick is also leading an Admin refresh and media library update to WordPress core. I’m going to be bugging him to learn more about that work soon. 🙂


I had lunch with some folks. Met TJ Mullinax and a few other folks. TJ is an interesting fellow. He lives in central Washington state and is a digital producer and photojournalist at Good Fruit Grower magazine. Which is a magazine about fruit cultivation with a history going back to the 1940s! They, naturally, use WordPress for their digital publication.


Reinventing Vox Media’s CMS: A WordPress Migration Journey by Thomas Stang, Anique Halliday, Stéphane Boisvert

This session was interesting because over the last twelve years Vox Media had built their own custom content management system called Chorus. They used it for all of their properties including Vox.com, The Verge, Polygon, and SB Nation. Migrating away from an in-house developed tool to an open-source project like WordPress is not only interesting from a technical perspective, but also from a business and political perspective. We now have one less CMS competing with WordPress, which isn’t great, but we also have another set of high-traffic and well-supported sites being built on top of WordPress.

From a community health perspective, I was interested in hearing about how readers of the websites handled this transition. It sounded, based on the presentation and conversations with the presenters afterward, that in most cases, folks didn’t even realize that a change had been made. In the case of Polylang in particular, the design of the site from the viewers’ perspective was exactly the same—a rather impressive magic trick.

Building a Block First Digital News Platform for Pew Research Center by Seth Rubenstein

I attended a session from Pew Research on how they build a new news platform using blocks – right before block patterns were a thing. Their blocks are rather complex items such as quizzes and charts. I was happy to learn that they give back by making their work available as open-source software!

Highlights from the Automattic Special Projects Team by Christy Nyiri

What a charming and whirlwind tour of the amazingly well-designed projects taken on by Automattic’s Special Projects Team! It was a very visual experience, so summarizing it too much here is a challenge and would not suffice.

I wish I had an ounce of the design chops these folks have. They showcased (see, it was Showcase Day) some really great designs and talked every so briefly about the work that went into each of them. Christy is a natural presenter and hit all the high notes.

A Technical Deep Dive Into Our Favorite Features of the New Harvard Gazette Site by Joeleen Kennedy

Joeleen led us through the work she and the fine folks at Human Made did for the Harvard Gazette. It was a great overview of the challenges of building something the editorial team can use that is flexible, but not so varied as to be inconsistent. I loved the little bit of genius for the dual-column layout on desktop and stacking the sidebar on mobile.


Speaking of Human Made, I wanted to take a moment to thank the crew for inviting me to sit with them at lunch – big middle school “someone asked me to sit with them vibes!”, so thank you – and for inviting me out for food and drinks. I had a great time getting to know them better as people. Wonderful people. KAdam, Joleen, Pam, Adam, Stuart, Kirsty, Jon, and Joe.

Conference Day 1

wp-admin as Mission Control by Gary Kovar

Anyone from NASA has an unfair advantage when presenting their work. I mean, it’s space exploration for Pete’s sake! Even with this frustratingly cool starting position, Gary delivered an interesting and informative dive into how NASA customized the WordPress dashboard to allow their editorial team to work quickly to develop news packages, articles, and the famous (and again, cool) Image of the Day feature.

The customizations to the dashboard have me thinking about how we might use that to make Diff, the community blog I support, more inviting and easier to use.

Building WordPress Websites with ‘Privacy by Design’ in Mind by Donata Stroink-Skillrud

Donata gave a really compelling and informative presentation on why you, average site developer, should give a hoot about GDPR, data collection, and user privacy. It was great to see someone who is not a designer or developer by trade presenting on their bailiwick and how it intersects with working with WordPress and the web. I found myself nodding at many of the points she made and internally yelling about the many clients I’ve worked with who have never considered privacy as part of their design.


This was the first day the Sponsor Hall was open. As I was wandering about during lunch I spotted a corner where a typewriter was set up allowing you to write some poetry. A gentleman was typing away and I asked if I could take a photo while they typed. They turned to me afterward, looked at my name badge, and said, “Wikimedia! I’m a Wikimedian!”. I had surprisingly ran into Younesh Dhaubhadel, a photographer from Nepal. He had participated in Wiki Loves Monuments in 2018 and came in second place in his region! Small world.


Decoding the Woo and WordPress Strategies of Industry Giants by Bryce Adams, Travis Lima

Brilliant title. While I don’t have much experience with WooCommerce, only using it on one site in my 15-year journey with WordPress, I do find it to be an impressive suite of tools for e-commerce. I love that it’s open-source, allowing company owners to control every bit of the experience without too many middlemen. This session was a grand tour of various implementations of WooCommerce and how the software can be customized to fit a seemingly endless set of circumstances.

Aside: I also learned about Universal Yums, which I just subscribed to. See! WooCommerce works! :p

Creating Client-Friendly Editing Experiences by Kristin Falkner

Kristin walked us through some great strategies for adapting WordPress to client expectations, reminding us that while we may be steeped in technology, some folks have actual work to do. 🙂 The ideas shared in this session have me reflecting on my own assumptions and how I might better communicate with and learn from those who use the sites I support.

One additional take away from this session was learning bout programs like Scribe and Screen Studio – apps that help create great video tutorials of software interfaces. This is something I will definitely include in any future client work.


After the group photo, I had the fortune to bump into Dinara Lima and her husband John Arthur Strauss. Both were, like me, carrying around some camera kit. John and I happened to be carrying the same camera, and we chatted for a bit. They came to WordCamp US all the way from São Paulo and were spending some time in the PNW area after the event.

Dinara made a nice video sharing her experiences at WordCamp US. Check it out!

Photo of group photo photographers photographing the group

Conference Day 2

How the Wikimedia Foundation Uses WordPress to Run an Open Community Blog for the Wikipedia Community and Beyond by Chris Koerner

Oh wait, this is me! I presented on our use of WordPress at the Wikimedia Foundation. How we took WordPress and with a few plugins, some customizations, and a bunch of tenacity made a multilingual, multi-author community blog.

The response to my presentation was really positive. People seemed inspired by the work we were doing. I had a few conversations with folks afterward about community building and keeping communities healthy. That giving some recognition and having awareness of other people can go a long way in building trust and mutual respect.

Unedited livestream


Releasing a Version of WordPress in 8 Hours or Less by Aaron Jorbin, Jonathan Desrosiers

This was an introspective review of just how interconnected software is. The speakers, Aaron and Jonathan, walked us through minute-by-minute, how a small but impactful bug was added to WordPress core and remedied within hours. I won’t spoil the cause, but some folks couldn’t update their sites because of it. Which is important!

It makes you think about how software can feel fragile and the importance of a robust, thoughtful community to help keep things going.

200,000 Games and Going: The Pandemic Kept Us Apart, But My WordPress Project Brought Us Together by Corey Maass

This was a really sweet session about how Corey built a digital board game during the pandemic that created a community and connection between people. A great example of going, “Huh, I didn’t think WordPress could do THAT!”. A great narrative and an interesting use of WordPress. :chefs kiss:

Enhancing WordPress Accessibility: Tools, Techniques, and Real-World Solutions by Jennifer Dust, Eli Frigoli

A great overview of the importance of accessibility and some useful tools to use – and avoid – to make your site more accessible. I found it particularly illuminating that automated “site checker” tools can give you a false sense of security, something I was not aware of and hadn’t really thought deeply about before.

This session reminds me that design for accessibly is not only for folks with a specific need, but for everyone. We all benefit now, and we’ll all eventually need some sort of aid as we age.

An In-Person Q&A With Matt Mullenweg by Matt Mullenweg

I actually went back to my hotel to watch this one remote. It was something. Terrible leadership from Matt and such a negative ding against WordPress as an ecosystem to invest in. I feel for all the folks impacted at WP Engine and beyond. Matt needs to log off and take a walk. Not being a jerk here, genuinely concerned for his well-being and the health of the community.

Misc Notes

I also learned – from which session I cannot remember – about work happening to allow WordPress admins to create and manage custom post types inside the admin interface. This is pretty cool no-code solution to something that a lot of sites need/use.

Custom fields and post types inside the block editor – with WordPress.com

Closing event at OMSI

This was the perfect venue to close out the event. A visually fun area to hang out in with dozens of built in ice breakers with all the various interactive exhibits. Kudos to the organizers for selecting OMSI and having it stuffed to the gills with food and things to do.

During dinner I talked with Ben from WP Engine who happened to see my presentation. We ended up at a table with fellow XOXO’er Tim Tate. Come to find out both Ben and Tim grew up in Boise! What are the odds. 🙂

Conclusion

I learned a lot from the different sessions I attended and appreciated all the speakers sharing their work so freely. I think the event organizers did a wonderful job in organizing the event. The signage was great. The rooms were well staffed. The audio/video work was flawless. Ok, there’s always a few hiccups. 🙂 Everyone I bumped into was friendly, and open to conversation. Five stars, would attend again.

One refrain I heard in talking to different people was the impact the pandemic had on a sense of community. How many of us are still recovering from that and how many were not present because of the now endemic nature of the virus. Five years later I felt like I missed a lot of WordPress events, but actually there haven’t been that many. It feels like we’re still getting back into the swing of things. For instance, it felt like there were fewer sponsors and vendors at WordCamp US this year than say five years ago. That could just be my subjective observation. I don’t know.

I have a lot of fondness for WordPress, both in what allows me to do as a professional, but in the strong sense of community and in the healthy way – I think –people help one another. Even while working under the horrendous umbrella of capitalism. It mirrors and mimics a lot of the work I do in the Wikimedia movement. I also like having another open-source web-based community separate from work to be invested in. So, I hope things continue to improve and maybe I’ll get back into the community in the future.


I took some photos along the way. A few have been scattered within this post. More are on Flickr.

X100VI

5 – Grand Central Terminal

I recently bought a new camera. My first in over 12 years.3 The new camera is a Fujifilm X100VI, the latest in their line of fixed lens travel cameras.

It’s a very different camera than what I’ve been shooting with, a still wonderful Nikon D800. I love the D800, but I wanted something smaller and less complicated. Something I can just throw in a bag and not worry about which lens to bring – and the bulk. The D800 with an 50mm lens is close to 2.6 pounds! The X100VI by comparion is 1.15 lbs.

I’m still wrapping my head around the new camera. Learning the menus and commands and getting comfortable with setting it up how I like it. I’ve gone on one long trip and captured a few decent photos.

I wanted to document a few of the things I’ve learned along the way. To help reflect and reset my expectations – and hopefully so others can learn from my experiences.

All images are taken with the X100VI. Edited RAW files in Apple Photos. Full gallery on Flickr

Setup Command Dial

Unsurprisingly, I’ve customized the front and rear command dials to work just like the D800 – Aperture on the front dial, shutter speed on the rear. ISO set to Auto or I use the dial for specific needs.

This video from JayRegular was really helpful in figuring this out. One note, from Jay in the comments, is really important!

“For everyone who cannot get the aperture dial to work when set to “A” go into menu > wrench icon > button dial setting > aperture ring setting (A) and set it to ‘command’ instead of ‘auto'”

I love how many Fn buttons there are on this little guy and have been playing around with them. I have even set the manual focus ring to switch between the 50mm and 70mm digital teleconverter. It’s like a zoom ring (but not)!

Use the EVF

It’s faster than the optical viewfinder and gives you a better representation of how your shot will look. Coming from a D800 this was a big change to get use to. After a few outings, I’m starting to appreciate it more. I like the idea of an optical viewfinder, but with the offset on the X100VI – and with an added lens hood – it’s almost useless.4

Speed Things Up

Get a good SD card. You don’t need a UHS-II card as the X100VI only supports UHS-I cards. However, if you do buy a card that is faster than what the camera can utilize, you can still benefit when transferring images from the SD card to a computer. For example my Mac’s SD card slot can utilize UHS-II speeds up to 312 MB/s. I picked up a Sandisk that has a read rating of about 200MB/s. For the first week I used an old 80MB/s SD card I had lying around and it was so slow to save and preview images.

New York City

In the power management settings there is an option called “boost”. Turn this on. It helps with focus and viewfinder display performance.5 Two of the most key aspects of nailing a shot.

If you’re worried about battery life, Wasabi Power makes a great replacement battery (x2) and a charger for like $30. Way cheaper than Fuji’s own battery and the charger can charge two batteries at the same time over USB-C.

This was a wild one to learn. By default the X100VI will use 2.4GHz wi-fi to transfer images to your smartphone. Switch the wi-fi to 5GHz for noticeably faster transfer speeds. 5GHz has been around for over a decade at this point. It should be the default to give a better user experience and it’s one setting that can be easily overlooked.

Chris Lee (pal2tech on YouTube) created a great beginners setup video for this camera. I learned of this tip and a few others from his videos. Go check them out.

Shoot in RAW

Even though my photo editing app of choice doesn’t support the latest RAW (.RAF) files from this camera (yet), I’m still shooting RAW. Storage space is cheap and I love being able to pull the most range out of the images I shoot. I find JPEG/HEIF images direct from the camera to have too much contrast. Here’s a subtle example between a HEIF version and RAW version of the same image. The RAW file was converted to DNG so I can edit. No other edits to the images, direct from the camera.

Notice how much darker the HEIF image is in the eye sockets. There’s no data there to pull from when editing.

Move with your feet

This is just general photography advice and more of a reminder for myself. For the last 12 years I’ve shot primarily with my D800 and a fixed prime lens. Either a 50mm or an 85mm (for portraits). I’m use to shooting with these longer focal length lenses. The 35mm equivalent on the X100 means I need to move in more often. Or, be mindful that with this camera that you’re going to capture more surrounding context than you would with a longer lens.

You can also fib this a bit with the X100VI. With a 40 megapixel image size, cropping by 50% still gives you a very usable 20 megapixel image. I’m not a purist! Do both if that’s what works for you.

OUTATIME

Trust in the Force IBIS

This is the first camera I’ve used that has in body image stabilization. I shoot mostly handheld and would never go below the reciprocal rule when shooting. So if I was shooting with my 85mm I would never go below ~1/100th of a second shutter speed. The resulting image, no how hard I tried to control my stance, grip, and breathing, would result in a blurry image.

New York City

But oh boy, the X100VI has five-axis stabilization. I can take a sharp photo, handheld, at a shutter speed far lower than the focal length. I’ve been able to get a few great shots at 1/25 and 1/15. That is pure magic. I’m having to learn that I have this new superpower and where its limits lie, but so far I’m really enjoying it. When I remember I can do it!

The wonderful Dave Etchells from Imaging Resource has this surprisingly in-depth interview with Hisashi Takeuchi from Olympus on how this all works. Fascinating stuff.

Conclusion

I’m heading out on another trip soon. This one a little longer and varied than the last. I’m hoping to have more to share and I’ll update this post if I come across any other tidbits that I think might be useful. Thanks for reading and please share your own tips in the comments and check out more of my photos on Flickr.

See also

Private Internet Access (PIA) OpenVPN with Synology DSM 6.2

Update 29, November 2020 – There’s been a change in how PIA connects. Following the directions I wrote below will not work. Instead, follow the directions here with the following edits (from /u/cossadone on Reddit) to your openVPN config file of choice.

  • Delete the “compress” line
  • Delete the entire “<crl-verify>” section
  • Add the line “comp-lzo no”

I recently signed-up for Private Internet Access‘ (PIA) VPN service. I do a lot of traveling and work in various places away from home. Having the extra – if not essential – security layer regarding my web traffic is something I’ve been wanting for a while now. The PIA iOS and Mac apps are easy to set up and use. Since I also use my Synology NAS to transfer content I wanted to figure out how to make that device also take advantage of my VPN account.

I found some directions for setting this up with the Synology DSM software version 6.1 and since I didn’t perceive much difference between 6.1 and 6.2 as a user I followed the directions. Except, things didn’t work!

Every time I went to connect the VPN connection in the Network control panel I was met with a connection error. I tried recreating the connection, resetting my password, and yes, even turning the NAS off and on again. Everything worked fine from my other devices, but the Synology would not successfully authenticate.

Here’s what worked.

First, download the files from PIA as described in the directions linked to before.

https://www.privateinternetaccess.com/openvpn/openvpn.zip

Unzip that file and keep the resulting folder handy.

Second, log-in to your Synology running 6.2. Open the Control Panel then select Network. From there, select the Network Interface option. You’ll want to click Create from the top menu and then Create VPN profile. Now this is where things diverge from existing directions. Select OpenVPN and click Next.

Now give the profile a name you’ll recognize. For the server address, remember that zip file you downloaded? In that file is a bunch of .ovpn files. These are OpenVPN configuration files. They are just text files. Select the file that matches the server location you wish to use. I chose one that is geographically near me. You may wish to select one that is geographically far. it doesn’t matter. 🙂 Open it in your favorite text editor. I used BBEdit.

There are a few bits of information we want from the file. Look for the line that starts with remote and then an address and port.

remote hk.privateinternetaccess.com 1198

Return to your window with DSM open and enter the information into the Create profile window. Enter your PIA user name and password. Make sure you change the port to match what you found in the OpenVPN config. You should have something that looks like this.

For the last step on this window, you’ll want to select the CA certificate from the zip file. It’s the file that has a .crt extension. Then click Next.

Leave the Enable compression on the VPN link setting checked. Check the Use default gateway on remote network and Reconnect when the VPN connection is lost option. Then click Apply.

Now, select your newly created VPN interface and click Connect. Viola! Your Synology should now be connected to your VPN account.

One last thing. If you want all traffic to go through that connection (which you probably do!), click the Manage option in the Network Interface menu and select Service order. Put the VPN connection first. Then click OK. Return to the General tab in the Network control panel and set the default gateway to your VPN connection. Set the order here as well; VPN first.

Now, to test your connection! Visit https://ipleak.net in a new window/tab in your web browser. Navigate to the section that says Torrent Address detection. Activate that feature and then copy and paste the Magnet link into the DSM Download Station app. Start the download and wait for ipleak.net to refresh. Check the IP address. It should not match your local machine, but that of your VPN connection.

Two quick notes. There is no intelligent dead switch to stop transfers if your VPN connection goes down. My experience has been that it’s quite reliable. Your mileage may vary. In researching this topic I found comments related to the remote features of your Synology not working properly and requiring further configuration. I don’t frequently use my NAS off my local network so I have not bothered looking into this aspect. There are numerous guides online for both issues that may be helpful.

I hope this guide helps folks. Leave a comment if it helped, if made a mistake in my instructions, or if you have a better suggestion for setting this all up! Thanks for reading.