WPCampus 2017 – Good times in Buffalo and fireworks at the Falls

WPCampus logo for event. The words WPCampus over a picture of a college campus with the dates of the event, July 14 through 15

After a couple weekends home in my beloved SF, I was very happy to get to attend my second WPCampus event of the year, this time in Buffalo NY at the lovely Canisius College campus. You might recall back in January I attended WPCampus Online from the comfort of the Pantheon HQ. While the sessions were on par with the live event, it lacked a few things that make a camp a camp. Namely the hallway track, the dinners, after hours conversations with my #WPLife family and of course #WCKaraoke. I was very, very glad to get to see my higher ed focused kinfolk and share in the joy at WPCampus 2017!

Food and Fun

WPCampus Welcome Party

Flying in overnight, I didn’t get as much sleep, but I was overly excited to hear stories from the field, have a lot of meaningful discussions and learn so darn much over these ~2 days that it didn’t slow me down at all. I was very glad to join my fellow WPCampusers at the local watering hole near the canal, Lagerhaus 95. We were met with the official Buffalo food, Buffalo Chicken Wings. I didn’t have any, but the pretzels and fries I stuck to for appetizers where pretty good.

It always warms my heart to see the awkward start of strangers introducing themselves gives way to camaraderie and new friendships. We capped the night with my new favorite ultra smooth vodka, Aylesbury Duck at the pretty hip Ballyhoo with those of us too wired up to just go home and sleep yet. Still, day one of the show was going to start early, so we didn’t stay out too late.

I was very, very lucky that I just happened to be in town at the same time Ghostface Killah was playing a $5 show with Slick Rick opening up.  I missed Slick Rick 🙁 but I did get to rock out with a member of Wu-Tang!  I couldn’t get too close to the stage but the crowd was awesome.  It was awesome!

Ghostface Killah on stage with a large crowd in the foreground
Ghostface Killah on stage!!!!!

Breakfast was your normal assortment of pastries and fruit with coffee and tea. Lunch was a serious step up though, even though we had to walk about a block away to another building on campus. We were treated to several food stations in the cafeteria, including fresh made sandwiches, wings, salads, tostadas, a few Chinese dishes and excitingly for me vegan mac and cheese and seitan enchiladas. Lines where a tad longer than anyone would have liked but the quality was pretty good.

Tray of sausages half empty tray of buffalo wings

The organizers kept us well fed in the mid afternoon with a snack break featuring a popcorn bar, which of course had a buffalo flavor option.

For Dinner we were left to our own devices and a small gathering of us met up at a local sports bar for some local delicacies. I like sports bars for larger informal dinners. They are used to a ruckus and don’t mind when a party gets a little loud, which WP people can be at times, as we get excited when hanging out together. I even got to meet and have my picture taken with the Molson Blue Bear!

Me and Demo from BoldGrid with the Molson bear

Afterwards a few of us took advantage of the geological proximity to Niagara Falls and went to see the summer fireworks over the Falls. There is a good reason this is an internationally known destination as pictures do not do justice to the spectacle. Truly a natural wonder. The Canadians that went had never seen the US side before and all thought it was adequate, but suggested that I eventually make it over the border to see their view. If only I had brought my passport.



Breakfast was a repeat of the first day. I was extra thankful for the coffee as my lack of sleep as result of my travel plus the time difference had caught up with me a bit. Again we traveled to the cafeteria for lunch and this time all the line issues were gone, though the trade off was that the feed as all pre-prepared wraps and sandwiches with chips and salads. Again they had a very good vegan option with a “chick’n salad” wrap that was quite filling. I actually ended up skipping the afternoon snack as a result. For that they served cheerio marshmallow squares, yogurt and fruit for that.

After Party

Saturday night brought the After Party. We gathered at The Expo, a large hall with several food vendors and a brewcade. I got there just as they put out our catered food, which was very heavy on the vegan options. I really appreciated this as it meant I could lay down a substantial layer of pot stickers, sweet potato salad and veggie wraps before I cashed in my drink tickets.
The organizers of WPCampus are also big fans of the WCKaraoke movement and we had a karaoke dj awaiting us, cranking up the tunes around 8:00pm and kicking things off with a very fun rendition of “Wrecking Ball”. After he went, I was super delighted to hear my fellow WPCampusers go in turn and blow the roof off the place. Some of the party enjoyed the corn hole (‘corn toss’ I also heard it called that night) and foosball tables by the bar. All in all, this was one of the better overall parties of the WordPress world and so many good memories were made. All to soon the clock struck midnight and we had to evacuate the place bringing an official end to the official activities of the camp. Really looking forward to next year already!

The Sessions

Opening remarks

My Session

Every project is a story: Applying storytelling to your client interactions

I was very honored to be invited to speak on one of my favorite topics, storytelling. I was also flattered that I was given first session slot of the whole event. This is often the most attended set of sessions of a camp. We livestreamed the event for those around the world that couldn’t make the trip and my video of this will be added to the page linked here, though I don’t know when exactly.

The biggest challenges of this particular time giving this talk were a) I had to stand relatively still as I was on a video capture so folks could see my face while presenting. And b) I had moved a few slides around in preparation of the talk thinking I might get a better overall flow, but only throwing me off when I presented. Still, I had very good reception. I am always thrilled when people comment that they see immediate applicability to their work. Storytelling applies to just so many facets of our lives that this is my current favorite talk I am submitting and am grateful to all the folks who have participated in the sessions and given me some great feedback.


A survey of WordPress online learning plugins
Chris Lema

I make no secret that Chris is one of my favorite speakers and I was not disappointed with this talk on a topic which I knew almost nothing about going in. Chris believes there has never been a better time for this or any web tech. Never been cheaper or more available. But implementing any learning system requires certain considerations both on a technical level and on a human level. For example he reminded us that people need encouragement. That often comes in the form of certificates. We need to think about how to deliver timely rewards to give people that little chemical release that spurns them on to get to the next learning opportunity.

The heart of his talk though were a set of slides that very eloquently showed the differences between the popular plugins. Rather than try to recreate those, just go look at his slides

He finished up with a top 10 list, which I love because those translate well to a blog format:
Ten mistakes not to make:
1 Don’t forget to capture course AND cohort metrics (mixPanel can help with this)
2 Performance metrics – get them, is it working?
3 Capture project (cost) metrics
4 Don’t forget that you have multiple stakeholders
5 Integrate metrics with email notifications
6 Don’t forget everyone is using their phones all the time
7 Everyone is being interrupted all the time (James patterson effect)
8 Short videos are cheaper to produce and easier to consume, (shorter better)
9 Everyone needs encouragement and motivation
10 Don’t forget to test everything, NOT just your content.


I do(n’t) belong here
Ashley Kolodziej

This was a talk on a very important concept that needs to be brought up constantly as we all fall victim to it, namely Imposter Syndrome. I have heard a number of such talks and this was a very good one. She addressed a few key issues such as the fact that millennials are known for getting participation trophies for everything, but this false praise makes us mistrust all compliments.

Also feeling like you can’t get anything right and struggling, but then you get a great job review, which is hard to accept since we see it as false praise. And then there is the notion that we just got lucky, blaming any success on external factors beyond our control instead of recognizing our own contributions. I know I identified with her point of succeeding initially only because of over preparation, which you can’t keep up forever. This makes you feel like you don’t belong, even when you are a great fit and excelling. She actually said something I hear in head more than I like to admit, a feeling that she has nothing to contribute to our space because “i’m not a developer”, which she attributes to the nagging feeling that others know way more than us and therefore we are not as good. She finished with a call for action for us to openly talk about this stuff and said “solving this is really a group effort”. I am grateful for her talk and am looking forward to continuing the conversation with my peers to help them and myself get over the terror of IS.

WordPress high performance hosting
Guillaume Molter

The short version is that you CAN do this on your own, but know it is complex. You are going to need more than a few tools and need to manage them all. Anyone can get their hands on these open source tools and spend the time and mental efforts to do this.

Personally I think there are better ways to spend you time than managing the tools of a deployment pipeline plus a stack with multiple cache levels on AWS, but I am a tad biased.

Overall a fantastic talk and Guillaume is a really good presenter. If you are at all curious what it takes to professionally manage WordPress at scale, I would highly recommend adding a vid of this talk to your research.

Interview like a journalist, write like a marketer: Telling stories with heart…and accuracy
Donna Talarico

The final talk of day one was from a speaker I was very excited to see. Her workshop on storytelling for better school websites at the previous year’s event had given me the wherewithal to formulate my own talk on storytelling. I was eager to hear what ideas she was bringing that I might be able to borrow from this year.

Interviewing is one of those skills I had not really thought a lot about, even though I read and listen to interviews almost every day.
Here are my mostly raw notes:
Don’t make your subjects sound like robots, let these interviews be conversational and natural.
Go offline for research sources, not all the best stories are (already) online.
Don’t be afraid to go the distance. Do what it takes to get the data to make it a meaningful interview.
Think about in person interview. How you condut the interview might need to be altered to make them comfortable and relaxed. Meet them on their terms.
Build Trust. Don’t launch into questions without just chatting and getting them comfortable with you. Makes for a much better experience and improved results.
Observe your subject. Take in their surroundings. Pay attention to little details from the environment.
Don’t prepare too many questions, let the interview be a conversation
Open ended questions, not yes/no questions
lead them to tell you stories. People love telling stories and you will get all you need from these most of the time.
Ask follow up questions. Not only to show you are listening, but this will help your reader later when we get an explanation of any unclear concepts directly from the interview subject.
Listen carefully!
Think about your body language. We say a lot when we react positively or negatively to information and that might skew the process.
Be quiet, give them room to think and formulate their thoughts
Be humble
Be open
Bring what you need, and bring what you don’t need, better to be over prepared for the unexpected than to be caught flat footed. Backup recording equipment or your own chairs for an outside meeting are examples.
Get your subject’s phone number just in case. If something comes up this will greatly simplify making other arrangements.
Record the conversation as well as writing your notes.
Prepare for the weather. Maybe plastic bags for your gear if you are going to be outside at all, especially in monsoon season.
If you are coming with a team, hide all internal woes, just be professional
If you are going to do a video, make the proper considerations, such as lighting and, as we learned from that famous professor learned when talking to the BBC, lock the door.
Email interviews are not good. Impersonal and lazy.
Surveys are OK with email but too many things and you will lose information. Also people write different than they talk. For example it is very common to write NYC to save time, but no ones says “NYC” to mean “New York” (or “The City” if you are local).
People don’t talk in bulleted lists
You want warmth in your stories, emails are the worst for this
When you are writing the final content, write first from memory, then dig into your notes. You remember the important parts and capturing those while still fresh serves everyone well.

Day 2
Code reviews: People use it, so it must be fine
Ronnie Burt and Joe Fusco

The team from CampusPress shared with us some of their challenges and how they were leveraging tools to overcome them. When they first audited all the sites they were managing, they found a whopping 38% of sites were ‘bad’, meaning there were significant issues with the theme, plugins or other factors. The talk delved into the tooling they used to fix this. It all boils down to one important fact though, you have to fully consider all the ways your code will impact a site before committing it.
First though they busted some common myths they think lead them to the situation in the first place.
Myth 1) Paid is better than free. Can be true but paying for support does not mean that the product itself is actually a beter fit for your needs.
Myth 2) New products are always better than old ones.
Myth 3) The number of downloads equals quality.
Importanly, no matter what themes, plugins or other tools you go with, you have got to test this stuff out. Without proer testing you are asking for long term issues.
Design plays a large part of this as well. It is not easy to support sites with annoying menus, lot of ads or overlapping plugins.
They reccomended a lot of tools for Performance testing, including my personal favorite, New Relic. Others included P3 PLugin, StatsD WP Client, xdebug, AWS Cloudwatch Logs.
They were very proud to talk about their own Campuspress code check plugin which they are making freely available. Custom build for their needs they have released it into the wild and are making all sorts of improvements now to make it better and more widely useful. So glad when companies give back.
For them, using Git and Bitbucket with the code check plugin to test locally before ever thiking of making a pull request is key to their success.
There were a ton of little suggestions as well, making this a must watch session when uploaded if you are at all committing code to a website.

A look at the modern WordPress server stack
Carl Alexander

Carl is one of my favorite presenters. Self described ‘oddball of WordPress’ he brings a very wide breadth of development know how to our space. This talk was a great example of the importance of looking at the basics to make sure we are efficient with our time as developers. I am just going to list out my raw notes of the highlights, but go see his slides for much better effect.
Used to be simple LAMP and you had afast WP site
Good old days
Now everything wants to load a lot faster
HTML always leads first responce
Nginx FTW! Built for traffic. Less config needed
you want to hit PHP as little as possible
PHP is a bottleneck. It is just slow to execute compaired to anything else needed for a site.
Cache as much as possible HTTP responses
three ways to do this.
Easy- plugin
middle level difficulty – on server caching (good to handle ddos)
hard (but the most customizable and might get you the best results): Varnish

Thankfully @ebarney took very good notes via twitter. You can find the string here:

A technical plan for success: Preparing to optimize 4,000+ sites at NYU
Daniel Cunsolo

Test everything (a recurring theme in many technical talks recently),
Automate the testing process to reduce human error as much as possible.
We warned of WP-options table bloat – things being stored in there can be crazy. This leads to autoloading entire giant files stored in there incorrectly.

A four-step guide on how to succeed at practically anything
Lori Packer

Of all the presentations I got to see, I went on the biggest emotional journey with this one. Lori is a terrific speaker and used great imagery in ger slides. She at one point shared a video that had me tearing up with all the feels. Pause and go watch that.
I also nearly fell out of my chair laughing at some of the things she shared, like how the TSA instagram account is using humor to make rather ‘meh’ material ‘marvelous’. That ‘meh to marvelous’ idea really struck a chord with me. I don’t think I am going to be able to ever write an informational doc the same way again.
Rather than me butcher her eloquence by describing her talk, go look at the slides and watch the video once available.

On the move: Website migrations debunked
Jonathan Perlman

This is a great example of a talk that could be easily turned into a training for any agency or organization on the planet. Jonathan laid out the realities and many considerations of migrations. There are a lot of tools to use and a lot of ways to approach this but the fundamental concepts are common under them all. This process is gonna take a lot of tools. A lot of them.
You could do this with GUI based tools but things will move a lot faster using command line. In fact when dealing with a large DB command line tools for MySQL might be your only option. He walked through the process and went a bit faster than I had time to  fully take notes on. Again, I am going to refer you out to his slides for a better picture of what this was all about.

If you are a newer dev reading this, the talk is a MUST WATCH and something I wished I would have seen a long while back. This stuff is complex, but at least the way Jonathan laid it out makes it seem very straightforward.


Wrapping up

My excitement at the beginning was equally matched with the sorrow of seeing the event end. The main reasons I like this event are not the fun times or even the sessions where I am learning all I am learning. They are the sense of togetherness and unity and commiseration I feel from the attendees. During the first WPCampus I was fortunate to be a part of so many conversations with folk who were either just meeting for the first time or who had not seen each other in person in a long while, but who shared so many common experiences and struggles.

These folks are building at enterprise scale with a fraction of a commercial enterprise’s resources. They face all the same challenges as the most high volume web agencies without the luxury of being able to fire bad clients. They have to deal with use cases that many developers loath touching. Many of them are working at public universities where funding and resources are getting tighter and tighter while the demands are only growing for better tools to educate the next generation. The love and passion they show makes them stand out in a field of extremely passionate engineer minded people. I felt humbled to get to share this event with them and to sing with them.

I can’t wait until next year!

Leave a Reply

Your email address will not be published.