Texas Camp 2018: The blazing heat of Austin and learning much about Drupal core

I occasionally get on an airplane and am freezing thanks to the AC being cranked all the way up. This was the case when flying to the lone star state and was immediately met with 104 degree heat when they opened the doors on the ground. To be honest, this is not my favorite kind of weather, but at least I would be indoors for the most part, since I was there for Texas Camp 2018.

This was the second time I have ever been to City of the Violet Crown or Texas at all for that matter. The first time had literally changed my life. It was my first Drupal event I had ever attended, DrupalCon 2014. It was the event where I went from just another sales guy in a another tech job I thought was interesting to full blown community member and Drupal enthusiast. It would be hard to understate the importance of this for my life and there is zero doubt I would not be writing this now, nor would I be even living this well, if it were not for that trip. Tamping down crazy expectations of something that life changing, I went in like I do every camp. What I got out of it was again some of the most memorable moments I have had in this space yet.

Food and Fun

Thursday

Speaker dinner

After a long, full day of training the speaker, sponsors, organizers and volunteers all got together for some Texas BBQ over at Stiles Switch. It was awesome to see everyone. The team made me feel very welcome with the food, by brining in some vegan quesadillas that really hit the spot along with some awesome veggies we all could share. Other folks with dietary restrictions also commented on how inclusive this event was. Not even going to mention it on the other things below, there were vegan options every singe time we were together, just as I think it should be.

Friday

No coffee to be found. I almost cried and went a walking around to try to find some. The only coffee place I could find opened at 10:00am. I don’t know what Texas thinks coffee is for exactly or when they think it should be consumed, but this was literally a first for me and was not too pleasant a surprise. However there were breakfast tacos. No lunch was provided so I ended up eating the really awesome and tasty breakfast tacos all day long

There was a Friday night after party as well. We gathered over at 4th Tap Brewing, another co-op, to play some board games and try their pretty terrific brews. I am normally not a beer drinker, but if you are in the area, drop in and see of they still have the Highland Scoundrel, a 10% ABV malty Scotch-style ale, made with peated malt smoked in-house. Best beer I have ever tried.

Saturday

More breakfast tacos! No coffee, which lead to sleepiness on my end and might have ended disastrously if not for the heroics of David Needham who brought me iced coffee.
We again were on our own for lunch and instead of just grabbing the free option, I ventured around the block to Wich ‘Wich which has pretty awesome selection of subs, wraps and salads. It was great to get to hang out with my Drupal folks over a meal.
The after party was a hoot, taking place not too far away from the venue at The Local Post where we had more drink tickets than we knew what to do with and a terrific spread of food. Afterwards, we found a pretty awesome karaoke spot over at Common Interest and sang and sang and sang until they threw us all out at closing! At the karaoke, we got to see something that was a first for me, a trumpet player playing along with some of the singers and doing the best version of ‘Georgia On My Mind’ I think I have ever heard.

Sessions

Training Day

Training: Visual Regression Testing with BackstopJS

I was super pumped to be able to co-present/assist with this training. I had done so at LoopConf and it was awesome. Being able to do it here again was also good, though this time I had my own agenda. I used the time to really wrap my head around some of the internals and how I could better use them for my workflow that I build Postitnow around. Here is a video of my then current results

Friday Keynote

Keynote: Breaking the Binary: The Politics of Code and Inclusivity in Technology
Nikki Stevens

Inclusion is one of the things we like to pay lip service to a lot I think. When Nikki showed some examples though of us getting it wrong, it was like a gut punch. I love a good gut punch, it makes me uncomfortable but motivates me at the same time. Like when I think about Accessibility, I always get that same feeling of ‘I am not doing enough’ which drives me to always make alt text at least now. Now I am inspired to always consider ‘am I being tolerant or am I being inclusive with this decision’. They are both important but they are very, very different ideas. I am glad to be on this journey of FOSS with so many people from so many backgrounds. This is and excellent talk to put us in the right direction, but it is up to each and every one of us to move down this path and make tomorrow better, and more inclusive, for everyone.

Great intro from Michael Schmid
Are things the way they are now, the way they have to be?
No
binary does not change for instance
code does not change
but we used to have balanced ternary system
nothing is inevitable or unchangeable
can we image a different future?
Politics
definitions from the crowd
slow
messy
intersection of change
manipulative
power is exchanged
tech work is political
algorithm to tell who on skid row on who gets a house
it affects real things
internet exists in the real world
internet is just tubes filled with cats
we forget that this is computers made with stuff from mines
in a system, we are all connected
do small choices matter? yes
vim vs emacs
trello vs jira
vagrant vs lando
all the choices matter
the foundation for inclusion is the ability to imagine new futures
no one knows how tech works in general populations
does you ‘user’ exist
average pilot issue
Open demographics began last year
gender: male/female/other
open-demographics on github
gender form to many more options
small choice, huge difference
distributed credit shatters illusions of meritocracy by showing all the labor involved
supported by charts that show 86% male in the space
reinforcing illusions in the system
What’s the business case?
Diverse companies do better and make more money
changing ideas about women
why are we still here?
what is the business case for not changing our hiring practices
data show this is import to change
what systems are we supporting with our corporate and
why are black women so
things designed for white faces/skin
not taking things like gender diversity in stats
tech is important and impacts the world

My talk

Discovery, discovery, discovery, discovery! The most important part of the project

I really had a great time presenting this. Had a pretty full house and people gave me good feedback. The more I think this stuff is common knowledge the more I am always surprised people say they have not encountered some of this stuff before. I am about to retire this one I think, going to replace it with the best parts of a couple other talks about process and give a polished ‘Follow the Process to Success’ kind of a talk, but no time line on that. Thanks to you if you came out to it or listened online.

Getting closer to your customer: Using Drupal in the last mile
Kelly Albrecht

I honestly went to this talk with the thoughts of a) I think Kelly is an awesome presenter and b) What does he mean by last mile here? I was right on the money with the first assumption, Kelly knocked it out of the park and this was a great presentation. I was honestly surprised by the second part, having my expectations completely subverted and walking away literally pumped about a part of Drupal Core I did no know even existed. I spend a lot of time talking the ‘hows’ around DevOps. Automating and such, which is at the heart of the tech side of ‘What is DevOps?’. I don’t spend almost any time thinking about or discussing the ‘Why is DevOps?’.

Why we are thinking this way and how to implement
How close are you to your customers now?
easy to push customers away if you see them as interruptions
lot of misconceptions of what DevOps is
people think about it terms of servers and machine
DevOps came from the developer and the operations folks not communicating
shortening the feedback loop and adding value to chain
customer benefits
break down the wall of confusion
automation helps
feedback though is critical
narrow version of this topic and that is ok, we talk about it a lot
want to automate to noops (no ops)
this is short sighted
Whole point is delivering something of value to the customer
think about getting everyone in loop to customer as communicative as possible
Dev, Test, Engineers to get to mind set
build,CI,Deploy,Operate,feedback,plan,build loop
manager / maker schedule
feedback comes in as tickets
that is what the devs thought
needs to think wider with it
apply flow and automation ot customer feedback as well
which new thing is more important than the other new thing
what’s new, what is, how is it?, what’s next
people lose faith based on how they misunderstand a product
WP as a community thinks about the end customer a lot more than Drupal generally does
What if we modified the Drupal login experience
Tour is in D8 core, not being promoted but very valuable
?tour trigger tour trick pop-up
demo
end user feedback at the end of a tour
get feedback quiz
if people feel their feedback would be heard, they give it
We need everyone’s perspective to make our product as intuative as possible
keep experimentations simple and cheap,
iterate to get closer to you
related: https://www.drupal.org/contributor-tasks/create-tour

a11y — ARIA Rules: To Use Or Not To Use
Susan LaRonde
Charles Leverington

ACCESSABILITY FTW! You know it as well as I do, this is everyone’s responsibility. As if to underscore this and literally have the universe put a face to the issue, when we went out to Karaoke on Saturday, a group of visually impaired folks were having a party and ripping the stage up with how great they were! I had an ah-ha moment of imaging any of them trying to use this site, or anything else I have touched. These awesome people should have the best experience possible. It is a real blessing that Drupal (and WP for that matter) make accessibility automatically OK and it does not take much to get 100% of the way there from our end as content makers and site builders. Don’t delay, make your site accessible today!

Speaker notes are available on the slides from link
examples of ARIA accessible approved code are freely examples
purpose
add functionality where semantic HTML does not
classes and how they relate
HTTML DOM tree JS Accessibility tree Assistive technology user
right click inspect, look at JS events, look for accessibility tree
only exists since 2012
most roles are automatically made in HTML5, leveraging semantic HTML
roll = navigation
no aria is better than bad ARIA
do not overwrite existing accessibility semantics
do not change the native semantics unless you have to
ARIA uses KISS principal
lot of code examples in this talk that ironically I had to strain to see from even my third row seat
third rule of ARIA, always make sure keyboard controls are usable
NVDA – NVAccess, free and open source

The traffic fallacy
Sean Eddings

I work on a team that is in the midsts of trying to adopt a more Agile methodology for working on projects that fall outside recurring events. Every time I see a talk about this stuff, I feel it puts me a much better place to even communicate ideas on how to apply SCRUM or Kanban with others. This talk started with a ‘where is he going with this’ moment. Then he got there and I don’t think I can think about tickets in the same way ever again. If you are struggling with tickets and your whole team being too darn busy to get anything done, this this is the talk for you and a way of thinking that will help optimize everything about functional deliverables.

lives in NYC
traffic is bad and many places are too
but thinking while stuck in traffic
not a ton of thought given to solving
he researched and Houston to Katyland TX
41 minutes to go 28 miles on average
right now, hour and 20 minutes
in 2004 nonprofit said 25million hours wasted
delay would double by 2025
about $503,620,000 lost opportunity per year
engineers, extra lanes means more capacity
Texas spent $2.8 billion to widen the Katy Freeway
average time increased from 41 min to 64 minutes
55% increase
the amount of freeway increased the number of cars increased, ratio remained the same and actually worsened
50 lane freeway in hong kong
freeway engineers have the best intentions
Need a vehicle and progress limit
Manhattan is experiment with congestion pricing
no go on this idea now
Stockholm, Sweden, bunch of islands
set up experiment, costs a $1 to enter central city
when people saw the data after 6 months
travel time decreased by 50%
emissions dropped by 14-18% in inner city
what about our industry
Backlogs are like this, things taking forever never get done
think, more people, get done faster
looked at task list and too many things assigned to single contributors
Value was taking too long to get to the customer, and everyone was too busy
looked at they way they managed processes
realized they had a command and control model
traditional management says 100% utilization of people was the key
but if everyone is busy, delivering value with predictability is not impossible
changed to prioritized delivering work to the customer as quickly as possible
goal: put our good ideas into action quickly
1. Visualize our process
2. limit our work in progress
3. improve as a team
1. visualized
moved away from tech, went to boards and paper
high level visibility for team
bottlenecks easier to see, respect or change
makes hidden work apparent
2. limit work in progress
how many things can you really work on?
excessive WIP heightens distractions
marked WIP limits on board
there is no right WIP limit for everyone
a lower WIP is generally better
a too high WP leaves work idle
too low leaves people ide
WIP limits are not rules
take a list of work, prioritize it based on biz value
that is your backlog
work top to bottom
right now thinking of tasks and breaking them in different ways so something is completed
task that needs approval example,
deliverable is the thing to be evaluated but that is a new card once feedback is given
conversation the team has on who does what
always keep things in motion though to get to value delivered
flow efficiency is the sum of value adding activities in relation to the throughput time
Flow Efficiency = Value Adding Activities/throughput time
Works because devs do not put things in To Do
selected for dev is a parking lot
ready to deploy is a staging area
what stayed the same?
Multi-functional team
dedicated team
queue hygiene
daily stand ups
retros
what changed
optimizing for getting a single work unit through the process as quickly as possible
ea members attached to work
team members pull work
that takes a lot of autonomy
Good to Great teams:
set the stage
gather data
generate insights
decide what to do
clone the retro
What did we learn?
Start with what we have
prioritize our work
visualize our process
limit WIP
Retros are how team improves
goal is to deliver value faster to customer
Agile and Lean, are all about experimentation and learning. Enjoy the trip

Saturday Keynote

Keynote: The Future of Drupal
Michael Schmid

I can not overstate how good this one was. Whatever you are doing when you read this, stop and go watch this talk! My summary is OK for my purposes but it loses Michael’s impassioned tone and the pure excitement he expresses about how we are being adopted as a community philosophy and software by governments around the globe. I went in thinking ‘oh great, another talk on how we are not growing and maybe some hand waving around some stats’ and I left going ‘oh yeah, I forgot that Drupal is the best expression of FOSS Internet CMS anyone has made yet. We are doing some great stuff and we can keep making it great!’ Some version of this should be the keynote at DrupalCon Seattle.

We need to talk Drupal
You taught us a lot Drupal
collaboration
parties
speaking
growing companies
You have changed lives
but you also changed a lot
Drupal 8 is not the old Drupal
Upgrading from D7->D8 is really hard
Modules work differently
OOP everywhere, you have to understand deeply
so many new things to learn
and already Drupal 9 is in discussion
Adoption is slowed down and it is scary
same is true for DrupalCon attendees
no DCon Europe
You also created physical and mental pain
Drupal Confessions
didn’t do his due diligence and found out too late
He is sorry for what happened
it is gone now, but caused a lot of pain he sees now
Had to learn composer and the CLI
so complex now
and now need to learn JavaScript
and it is very different too
and now the Security Issues
so many hours
is Drupal over?
is that our tomorrow?
NO! it is not over
Who is Drupal?
If we blame Drupal, we are blaming ourselves
we are all in there together
The others are not sleeping
Drupal is already powering the web
we have a lead
over a million sites
5% of top Million websites are Drupal
181 governments use Drupal for sites
So many governments decided to use this code we make
Want to buy a car, you are likely using Drupal sites
Lush – Drupal commerce, but because of our code
NBC, Pfizer, etc
Drupal is used more and more by bog and important websites
is more market share really better?
D.O Data Usage is voluntary
many people disable the ping back to Drupal
Now we have a road map!
we have a plan for next
an upgrade path
D9 Upgrade path, as easy as 8.0 to 8,1
will be smooth process
Camps are happening and getting more and more important
Camps are less intimidating than Cons
Camps are closer to the people
and much more affordable
only works if businesses sponsor
It is hard since ‘what do I get back’
small $ back, sure
but you are making Drupal better and possible
and send employees to participate and bring community closer
should be sharing that knowledge internally
lunch and learn it, share what you loved
employees: ask to go to camps
All the major frameworks using Symfony framework
Drupal started that
added complexity, but makes us all stronger
why embracing and using other tools
We have always done it, like jquery
Less overall work
brings us closer to the rest of the PHP world
easier to hire engineers
Composer
We need package managers
there is no other way
everybody uses it
everyone has always used package managers
like driving a car
it seems impossible at first
Secure is much more transparent
Drupal Security is completely volunteers
Same processes like Linux, Google, Apple, etc
hosting companies have you covered
JavaScript?
Most popular tools, tops the list
TensonFlow, React
Stanford intro CS is in JS
Decoupled frameworks
this is how most large sites work now
API first is key
MOre dev, design, UX capabilities
So Drupal, forefront of decoupling
Full support for JSON-API and GraphQL
Contenta CMS
Angular, Elm, Ember, React, Vue
still a hard problem, but this is getting easier
So Dear Drupal
Lets build the future
Accept and embrace change from all of us
we always making it better
but that takes investment from us all
and if we believe

Hmm, I Didn’t know that Module Existed!
Fito Kahn

I started out in 2013 on Drupal 7 and have never really put it away, though I do much more WordPress stuff in my personal dev experimentation. I thought I would go to this beginner talk to learn a little about what Drupal 8 modules were all about, especially after learning about tour being in core earlier in the day. I took incomplete notes because I kept opening tabs for the modules Fito introduced me to and was just like ‘wow, I didn’t know about this one’ with almost every feature. With a goal of introducing the site builder to how to make very customized sites without cracking open the code even once, he made the case very well that through configuration of the modules alone, D8 can do just about anything out o the box or with a couple easily installed components. Again, this list is incomplete, but good thing there are also resources like this.

Drupal?!?!
What have I gotten myself into?
Fear!
Some people on first site right now
Overwhelming at first
but there is hope
there are so many modules
and the Joy of D8 being awesome
History of D8 75 core modules in D8
not as many contrib modules needed
30 core in D7
important dates
3982 D8 modules in 2018
8641 D7 Modules
Experimental Models as well
many in core are turned off, just need activated,
Modules that will make life better
– Admin Toolbar/Tool Bar Extra
– Coffee and Coffee Extras – search in admin that is easy to use
– Pathauto – makes URLs with tokens easy
– SEO Checklist 0
– Content Moseration/Workflows – in core!
– multilingual support, content translation in Core – 4 modules
– Webform – you can design your own
– Simple Sitemap – lighter than XML sitemap
– Slick/Slick Extras – one of many solutions for slideshows/carousel
can be touch to configure
– Focal Point – crop API
– Honeypot – defer spam bots from completing forms, not as intrusive as captcha
– Autoban (Automatic IP ban) using watchdog table
– Scheduler
– Paragraphs – editors control flow of content – replaces bidy field with content types you can mix and match
– Views Reference – field conjunction with paragraphs, adds more flexibility
– Panels/Panelizer/Display suite – create drag and drop layouts for customize looks of site
Let’s remember this is all to avoid actually touching code
this is all just install and config, very different than hand changing views
– settings tray – core. Customizer for Drupal
– Bricks
– String overrides
– Statistics – in core – can slow down the site but valuable info
– Module filter
– Alexa – yeas integrate Alexa with a D8 site

Archiving and Visual Regression Using Drupal 8
David Stinemetze

David was so impassioned about this idea, I just had to see this in action! Going in I was not 100% sure what to expect from this. The idea, as he had described it to me, seemed logical but I wasn’t sure about how it did it nor did I really get an idea of why you would even do this. Leaving the session, I was blown away by the quality of what they are building and sharing with the community. Leveraging the beautiful solution of BackstopJS, we get a solid path for backups, archiving and automatic testing that I had not thought of before. It is well worth watching just for David’s enthusiasm.

Old parts of site don’t change
testing anyway
add on a wayback machine element
Module overview
Web Page Archive module snap local or remote, triggered periodically, compare snapsops based on URL or XML sitemaps
Snapshops can be captured on any site
not just current instance, not just drupal, not just sites you own
Requirements, D8
Why?
Learn D8, Ease of use for non-tech users
Drupal 8 plugin ecosystem makes it easy to support additional use cases
give back to the Drupal community
Capture Utilities
Drupal plugins responsible for performing captures
uses annotation based discovery
configurable per instance
Captures screenshots of URLs
uses Headless chrome and puppetier
examples
can also capture raw HTML
Skeleton Capture, prototyping tool
Web Page Test Capture Utility
Captures web performance test results
just capturing it now
other proposed use cases
Configuration Archive Capture
Rendered DOM capture
Google Analytics Capture
Security Scan Utility
can configure easily with dropdowns
don’t want to manually capture each page, use site map
capture stores things, storage can be an issue
Current Project Sessions – yesterday Spot the Difference tool
Visual Regression is all about the things human eyes easily overlook
slider compare
compare screenshots Heatmap
bright red to highlight differences
Release plan drupal.org/node/2930857
Some remaining issues
You can help
needs new code, needs reviews, etc
demo time
in config, website archive tab

Goldilocks Decoupled: What the Future Holds for Decoupled Publishing
Mike Minecki

I hear decoupled being talked about a lot and I am certainly one who has seen it as not only a better way to think about building for multiple end user system. Mike reminded us all that this is not a panacea for all our issues and there are a lot of disadvantages for decoupled systems if the team is too small, the use case requires a lot of the CMS solved services or other things that a REST API can not do well yet. Even though this was towards the end of the camp, the conversation that flowed from the end of the presentation was lively and I didn’t capture that effectively. If this sparks an interest, go listen to the conversation from the recording.

This is not a demo or a show and tell
why Devs love Decoupled
Hard choices
are you doing stand alone or hub
chart for this out there
simplifies the ideas of it
if there are other apps basically
heart of the chart is layout and display management
modules, toolbar notifications, caching and performance
end up with choices
coupled, progressive, fully decoupled
more JS –>
Why do Devs love it?
bad reasons
new and shiny, Drupal is hard, performance, Dogfood API
Why good
good reasons
Shared templates and language
building frontend in JS is really fast and rather easy
Static site generators are really performance
separation of concerns
a lot more to a website than static markup and content
Content routing and complexity for instance
Decoupled pitfalls
Snowflakes – every front end unique
can’t install stuff (like twitter cards or sitemap.xml)
caching and routing – static site generators don’t work for bigger sites
Progressive Decoupled – the middle way
Cons
Redheaded stepchild of the monoloth and JS framworks
need deep understanding of both to build new stuff
DX is only great if 2 teams
Tons of Content APIs
0 ways to render them without a dev
44 decoupled backend listed on headlesscms.org
that’s weird
off the reservation – Arc publishing
a pagebuilder
Superdesk publisher
lightweight source renderer
Goldilocks
benefits for devs
100%JS
Declarative
Editorial controls
Built to work with reverse proxies
Standardized workflows

Wrapping Up

It was an intense few days for me. Some personal stuff happened, like it often does, that distracted me a bit. Very fortunately for me I was far from alone and had my Pantheor and Drupaler family members there to help me get back on track. This event also re-sparked an honest curiosity about what this D8 thing can even do. Time to get exploring now for sure. I know I will be digging into a few things more deeply and don’t be surprised if you hear me talking about tour sometime very soon at a DrupalCamp, as a BOF if nothing else. Also, I didn’t have the chance to see it live, but for sure check out the session about Drupal’s Layout Builder that I am pretty keen on as well. So many good ideas, hard to fit it all in one blog post.
I do hope I get to go back to Austin again in the future, but man I sue hope it is not nearly as hot when I got back. If nothing else, I hope to return for a future Texas Drupal Camp!

WordCamp Seattle: Seeing my first snow of the year and living through the time change

For the first time since I was in Iceland I saw fresh snowfall. Unfortunately it was falling a lot and on the SEATAC airport so my flight got delayed a bit and we sat on the runway once we landed waiting the backlog to clear. Not too terrible of a flight all in all. Regardless of weather, I was super thrilled to come back to the home of Starbucks and Microsoft for WordCamp Seattle 2017, aka WCSEA

This was my second time to WordCamp Seattle and thus my second trip to the Washington State Convention Center. Also, I was just there 2 weeks prior for WooConf and had some pretty high expectations from that event for this community. Well friends, I am happy to report that I was not disappointed! From amazing sessions to fantastic lunch options to contributor track fun and excitement, this was not a WordCamp you wanted to miss. Let’s dig in.

Food and Fun

Speaker Dinner

As per usual with WordCamps, the fun kicked off the night before the event with the speakers and sponsors gathering together and sharing a drink and some food. We assembled at The Elephant & Castle . While this place scpecializes in hearty pub grub, I was very pleasantly surprised by the quality of their baked balsamic glazed hummus. Tangy and sweet and creamy all at once. It was so great to see so many people there including some surprises like the amazing Carole Olinger who introduced me on stage back at WC Europe. I was also there with a few members of ym company and I had the divine pleasure of introducing people around. It feels good to make introductions and see people immediately hit it off.

Day 1

Like many conference centers, this place relies on the in house catering to provide conference coffee. Unlike most places, since we are in Seattle, bad coffee is a terrible sin and we got Seattle’s Best which is a far step above most bulk coffee. My colleagues had supplied me with some pretty neat options for breakfast, including some vegan donuts, and the day started out amazing.
Lunch at WCSEA takes an interesting approach that leverages it’s proximity to so many lunch places and I wich more camps would follow this approach. Each day of the conference you get a gift card for $10 to go to one of several local restaurants. $10 is enough for a filling small lunch from any of these places and if you wanted more to supplement it, no issues paying extra with cash or card. I chose Veggie Grill which is a chain I really wished was in SF, but also thankful it is not too close to my house or I would eat nothing else. No animal products allowed on their decadent and robust menu. I really wanted to take all the folks who were on the fence about the plant based food options here. The food is just better.

After Party

Again, as the year before and as many other camps are starting to opt for, the after party happened immediately following the last session on day one. We once again returned to Elephant & Castle for our “No Host” party. I go to a lot of events and I have only ever heard this term in Seattle, leading me oo believe it is a regional phrase. “No Host” means that you are on your own for drinks and food, the venue is just providing the space to use. Not a terrible way to go to be honest. It keeps bad behaviors in check because if you overdo it, then it is your own fault, not ever because you got one too many drink tickets.

It was a great time, but soon enough, some of us wanted to eat dinner so a small band broke off and had some pretty awesome asian fusion over at Wild Ginger. Their wine list is absurdly large, over 20,000 bottles and the staff is top notch. Can not recommend them enough

WCKaraoke

I was extra excited about WCKaroake this time around because it meant I got to go back to one of my favorite karaoke bars in the world, RockBox, where you can, according to their website “Rock Like A Salaryman.” This is my current favorite slogan for anything. There was a great showing from the camp and this might be second only to Chicago for largest turn out for a WCKaraoke this year. I am super happy to be a part of this community!

Day 2

More of the same from day one. I again had good coffee and once again returned to Veggie Grill to feast for lunch. There was some dessert things that happened but I am not sure of the details, all i know is I got handed vegan ice cream with peanut butter. It was incredible. Thanks to my teammate Tessa for looking out for me.

No pics of this ice cream exist, so here is a random tweet about vegan ice cream I found:

Sessions

Opening Remarks:

Keynote

WordPress is a Banquet
Andrea Middleton

It is not everyday I get to hear one of the leads of the whole WordPress Community give a talk. I was super excited as the community itself has become one of my passions over the last couple years. I love being a part of making WordPress even though I have never done a single pull request for code on the project. This was actually the crux of Andrea’s talk and I was super glad to hear this articulated so well. The talk revolved around three stories of people who contribute significantly to WordPress without writing code. No matter who you are or what you think you know, you know enough to contribute to the project. Don’t just sit there, go to make.wordpress.org right now and join the team!

Raw Notes:
Most people are surprised that this free software runnign 28% of the interenet is made by community
lot of people work on WP but no one works for WP
Goes over the teams
Looks like a lot of plates on a table
like a banquet
each of us bring something to create something bigger than ourselves
Not going to talk about the eating part – the using
talk about contributing and the recipes
and what some contributors have found works
One of the goals
I couldn’t do that fallacy
I can’t write code so I can’t contribute
3 stories of contributors with no code!
there is some secret people or unusual attributes required
She wants to show the source code of contributions
humans made of human stuff
1 – James Huff
2004 – Lost and House re new, flip phones, ipods are new
James working at a feed store
macmanx news site
wanted blogs, movable types
James didn’t like it, minor things got on his nerves
WP 1.2
hit bug
answered a few questions on install
he liked helping people
he learned in the process
I learned most of what I know today by researching answers for questions I thought were really cool
User: Can I display only one category on my front page?
Me: Wow, that sounds cool! Let’s find out!
Became a moderator when unemployed
went to work for WP.com
happiness engineer
49,000 replies on the support forums!
start by focusing on what you know, not what you don’t know.
You know something that someone does not know of the forums, even if you just installed WP
Patience
Willingness to help others
Dedication to the project over your own needs
Petya Raykovska
2007
Superbad, iPhone and FB premiered
She was marketing manager for publishers
set up a blog
WP let her do things that until then took a dev to do
in 2011 started a web agency
translated stuff into Bulgarian
she learned a lot about WordPress
she got in deep in a way she
Eventually met the head of translations at WCEU
Editing the Codex
just gave her a page to edit, she did, and she realized at that table of international people
part of something huge that mattered
She ended up running the team
in 2015 polyglots went to translating 30,000 projects
still needed more people
Stayed for the people
they came up with WP Global translation day
the last one was the biggest and she didn’t have a direct hand, she passed it on
it will be bigger than you
Curiosity, Respect and patience a
Bridget Willard
in 2007
Was working at the office manager for contractor firm
WP.com blog personally
in 2008 economy crash – crushed construction market
Started a blog for company and didn’t tell her boss
she ran it on her own
they let her
no tech background, she had a relentless curiosity
networking for a lot of social media
brought in work
undervalued
she had 20K followers, which is crazy good for a construction company
First WordCamp in 2013
Side note – Keeping the price low for WC helps keep it accessible and growing
Anyhow
Bridget kept building and learning and blogging about her user experiences
by end of 2015 she got a job at a plugin
she found her tribe
I got a shout out 🙂
Listening
learning and listening
Intellectually honesty
open-mindedness
start small and move forward
that is only 3 of the ‘dishes’ in our banquet
You are welcome to join us
you are invited
and you can definitely bring something to the table

Accelerating Custom Development with Dynamic Scaffolding and WP-CLI
Ben Byrne

There is no secret that I am in love with the WP-CLI. It is a real time saver for sure, but the real magic of the tool is that you can extend it and make it do anything you want. It is rare however to hear someone make that as an articulate argument or real world example of anyone doing this. Ben hits the ball clear out of the park with this talk on both of those fronts. His team has not only figured out how to make the most out of what WP-CLI offers out of the box, but they have also bent it to their own needs and made it do some pretty neat tricks. I did my best to follow along here and make sense of my raw notes, but you should really find his slides to see the awesome code examples.

Raw Notes:
real name of talk:
“Come hear about this neat thing we built”
building good stuff fast is the issue at hand
Want to keep affordable, non-profit
custom sites, can take a lot of time and effort
A lot of people immediately got o premium themes
overblown for some use cases
hard to maintain sometimes, bugs and troubleshooting
sometimes very hard to customize
Starter themes
+ component libraries are another approach,
preferred way for a lot of people
but at Cornershop
lot of institutional knowledge
hard to maintain library if you are doing a lot
plus all the copy and pasting
Dynamic scaffolding
for their starter theme
fancy way of copying things and configuring them as they set them
warning: your milage may vary, not a best practices talk
just ideas around efficient workflows they have experienced
First goal is to speed development
also easy for new folks to learn
theme should have everything it needs and NOTHING IT DOES NOT – clean code
Avoid reinventing the wheel
avoid tedious, repetitive work (e.g. copy/past)
WP-CLI is the cornerstone of the their work
Broad support and awareness
already offers scaffolding
supports Mustache templating
Easy documentation! – no separate help docs, all in tool
WP-CLI scaffold child theme
plugin
post-type
taxonomy – outputs you have to STOUD
theme-tests – build s a bunch of files
_s
They extended it
built Produce (it could be a package as well)
It extends wp-cli with a new command and subcommands
then run, command inject code into our starter theme, Crate
Basic flow
Make sure starter theme is present
install & Activate Produce plugin
Run WP-CLI commands

Example
customize the admin login
manually it is cumbersome
Quick command lines to automate adding new logo and changing background!
other subcommands
wp produce site-options (bundle of fields they commonly mod)
term-fields – acf fields builder
articles gives you a new post type
10 commands now and still growing
lot of ideas in queue
architecture –
base class with methods, variables and helpers to facilitate building commands
subdirectories for a lot fo things
articles files commands/articles
more
mustache templates
automatic support for WP-CLI is part of why they like it
template with some PHP and CSS
4 variables injected
mustache is name of curly brackets for simple templates
commands are straightforward to extend and build
__invoke is what gets triggered when you type a command
you can skip things that are not needed when you enqueue things
Don’t touch non-generated fields!
makes it way easier to customize bu standardizing what they can touch
moustache.github.io

Stronger Than Fear: Mental Health in the Developer Community
Edward Finkler
OS Mental Illness

Ed is one of the bravest persons I have ever met. He is brave because he is standing up and saying things that absolutely need to be said. Mental health is just as critical as any other kind of health, in some ways even more so. It is easy to see someone with a broken arm or other obvious injury and give compassion and sympathy. But mental health issues have a terrible stigma imposed by our fear and ignorance as a society which prevent us from even wanting to acknowledge this is a real problem. Ed shared his personal experiences, ones I am all too familiar with and never really talk about because I too have a fear of being stigmatized. It is time we openly talk about mental health and realize we all need some help and know people that are in need of some support and help. If anyone out there reading this wants to talk, let me know. I am always willing to be there to listen and support you if you feel you need someone to talk with about anything mental health related. Be brave.

Raw Notes:
this talk if for the people who work with tech
How many people wear glasses?
Are you comfortable talking to your co-workers about glasses?
How about diving? Talking about it?
Cancer?
Mental health? A larger number than he thought would
talk about your own mental health
difference between talking about mental and physical health
Generalized anxiety disorder – flight or fight is extreme in non extreme situation
like a lion going to eat you is OK to have reaction
but how about buying lunch?
Walking into a new bar for the first time
overwhelms
ADHD – low frustration threshold – ten minute “snit fit” when things go poorly
good at constructing false situations in his mind,
Therapy helps – talks about how and why he does the things he does
some of this is advantageous to his job
security issues, empathizing with users
able to make disparate connections faster
it can take everything from you though
hospitalized and had to do outpatient therapy
forced him to quit a job
had o step away from stuff that is normal for him
Feeling alone is a real part of it
especially in a crowd
depression kicks in
afraid of people getting tired of him and leaving
lot of people feel that way as well
that is what we are fighting
WHO study – burden of mental disorders is largest in North America across all catogies
People do not feel they can talk to their peers or employers about mental health
most people think it would affect their careers
there is some evidence that there is more mental health issues with tech professionals
Sick workers don’t work
it benefits the org to have better employees
mental wellness = better employees
people want to work with people who respect them fully
1. Get the OSMI handbooks for free
ebooks on getting your workplace improved
2. Speak openly about Mental Health subjects
you have a lot of influence o the community around you
you would be surprised how many people open up if you open us first
3. Tell people that they matter
we are social creatures and need affirmation
those are tings you can do
we are talking about our colleagues and friends
suffer in silence
some disappear
and we are left to wonder and regret and try to understand
Fear is the only thing that allows this
we have to choose
give in to fear and be quiet, it is easier
pretend it does not happen
meet inaction with action
meet confusion with understanding
meet indifference with compassion
Yes, we need you, lot to do, go check out the
osmihelp.org

Women in WordPress Panel
Miriam Goldman
Francesca Marano
Rachel Cherry
Bridget Willard
Tessa Kriesel

I have a ton of respect for anyone that is ever in front of an audience on a panel who is willing to share their experiences. The sheer talent of this group of individuals made this an awesome one. It is almost like they planned an ‘Awesome people in WordPress’ panel and it just happened to be all women. I wish we lived in a world where that would happen by happenstance, but I am very glad that we made sure in fact it did happen this time by planning an all women panel. I showed up and I listened and I took a lot of notes and walked away with some awesome stories to share next time I encounter anyone feeling like they are limited in what they can do because of their gender. I am super grateful to this panel for giving their time.
I did my best to capture what was said and represent exactly what I heard verbatim here without commentary.

Raw Notes:
Miriam intro karate and ballroom dance
Tessa is 10 years a dev, works at Pantheon
Bridget Marketing Freelancer, WPBlab womenwhoWP, apple music CD of her music
Francesca from Italy, siteground manager, building sites since 1999, freelancer 6 years, meetup organizer, global WP community team
Rachel works Disney, build shopdisney, was in an ad campaign for slack, in NYT!
– What was a major challenge and how you overcome it
Mariam: job people didn’t take her serious because she is small and look a newbie in some ways
persevered and now people take her more serious
Tessa: Her attitude is sassy and outspoken, been an issue with
Outspokenwomen.io
Bridget: Being taken seriously as a marketer, marketing is as important as code, WP does value words!
she went to meetups and talks and taught herself a lot and she is taken more seriously now, friends spoke dev
Rachel: People assume she is a designer or marketer only, she is a dev though, not taking seriously, she had a boss who was intimidated by her
she as trying to make the world better and he made it harder on her, only wanted his opinion validated, she kept on keeping on and ultimately she left on her own terms to go to a dream job
F: Imposter syndrome, very real
first job was picking oranges at age 20
she became freelancer because she didn’t
Siteground tell her she had a impressive resume
she is surprised and delighted, felt good
– What is greatest achievement?
M: Doing so many talks and conferences
T: teaching herself code and site building in a super small town
B: year of transitions, biggest achievement is believing she is worth being valued and worth investing in herself this is the year she is not going to be afraid anymore, that is awesome, we are awesome
Stop apologizing for being awesome
F: born in the herring capitol of Romania, teaching herself English and bettering her life is greatest
R: didn’t;t ever thing she could do this for a living, wanted to be a band director, no access to real education, born in Alabama, she taught herself along the way, worked way up to where she is now, Higher education work, stuff she does at Disney, sometimes she is the only woman int he room, recognizing that she deserves to be there. Feels good to not feel out of place, safety is the main reason teams get better
– how to get started as a woman in WP
All: Just do it!
R: Diversity talk – person speaking is not always expert, just person who said yes
F: sometimes you don’t even need to say yes, just tweeted and got on
R: that’s how we got this organized
Q&A (I had to go get on booth duty 🙁 )

What WordPress is Doing to Keep Your Site Safe
Aaron Campbell

Once again I got to see a new talk from the awesome Aaron Campbell and hear about the deep dark secrets of the security team. This is a special subgroup of the Core team that does not operate as openly as the rest of the Core group and with good reason. They are the team concerned with all the terrible stuff black hats are trying to do against WordPress installs and trying to stay one step ahead. Next time you hear someone say “WordPress is insecure” I would recommend citing this talk. WP does more for its users’ security than a lot of other projects and thanks to their backwards compatibility commitment, every WP user can get the latest and greatest patches ASAP after release, ahead of the black hats targeting their site for those recently surfaced vulnerabilities.

Raw Notes:
Talks about what you have to do
this talk is about that WP is doing for the user
Goal is not really site secure, it is keep users secure
makes what they are doing more difficult than just the site
security team
50 volunteers
most have day jobs around security
Code review is def part of it
constantly changing
bad actors are always coming up with new ways to break things
bug bounty program https://hackerone.com/WordPress
a secure, safe way to surface and fix issues
some real successes with it already
increased number of reported issues
reporters feel appreciated
paid out about $12K in bounties
average bounty $350
better tools HackerOne – used to be an email chain
make sure it is fixed right the first time thanks to testing
there has been some struggles too
only about 16% of reports are valid
information overload, 5 out of 6 are invalid
high touch – lot more time per ticket
time is the limiting factor they struggle with the most
some things we do better than other projects
Relationships
plugin devs
can help
Hosts
WAFs
able to help protect WP sites before the actors ever hit the site itself
want to protect millions of sites thanks to WAFs and Hosts
4.7.2 – millions sites protected before there was even an issue
does not want it to be a fair race, lets get a head start on security
they are pretty good at that
Automatic updates are fast
tens of thousands of updates a minute
If you are turning off auto updates OK if you got 24/7 staff working with host, that is reasonable
But if you don’t have staff and turned them off from fear o site breaking, that is bad
99.9% of new updates success
.001% failure rate
rest are retries
you are far more likely because you were late on updating to get hacked than have a broken site
and with that Q&A

Picture Perfect: Getting Beautiful Images Without Violating the Law
Timeca Briggs
Zainab Hussain
Christine Winckler
Lisa Stewart

I was very interested in this talk mainly because I borrow a lot of images for my talks. Mostly my use falls under Fair Use since I am using them for scholarly reasons and not commercially. However, this talk made me very aware of some of the things I have been overlooking when considering the implications of doing image searches for gifs and such. For instance, I have been taking CC (Creative Commons) licensing for granted if I saw it CC licensed at all. Turns out you should always do a reverse image search to see if it is really CC licensed or if someone just re-uploaded with a new license on it. This is done all the time and not legit at all. You will be liable if it come up for litigation! Be careful out there and maybe just make your own pics to be sure you own the rights.

Raw Notes:
Copyright vs copywrong
Copyright is the legal right
exclusive, yo have the right to use and distribute the image
exclusive but not absolute
they do expire, then go to public domain
copywrong
cr not to ideas just the specific written down thing
copyright is not universal, it is territorial
Copywrite is automatic without registering
but registering makes it way easier to prove you have the rights
also registered lets you get damages above normal damages
How to find the images
think about what you really need, too tall/too short, what do you need it for and costs
Think about compelling composition
this can subjective, go back to your style guides
make sure it addresses an emotional needs
need to know their needs and how you solve them, images reinforce that messaging
How do I find free images
First up is Google image search, easy to see these
flickr is actually really good as well
another great source is wikimeida – lot of public domain that require no attribution
as well as paper trail on how it was used in the past
unsplash has over 500,000 shared images you can freely use for a variety of reasons
lots of options these days
Use trusted sources because they will have terms that explain licensing in one page
google does a good job of this, but has disclaimer, not 100% but it helps show your good faith efforts which protects you somewhat
Watch out for other people re-uploading an image they don’t own under creative commons license
try reverse image search to see obvious violations
Make sure you are regularly reviewing your use and the terms
sometimes they change but more importantly sometimes you change
some licenses are non-profit specific for example
some specific verticals have certain rules
Licensing for images are NOT transferable
make sure you are not buying on their behalf
if they don’t use it then
tips for non-photographers to take their own photos
Assessment. Know what you need
want to be super organized
orientation, resolution, number needed, budget, etc
blogpost have to have an attractive image that has something to do with content
matching images
sometimes easier to just take own pics
Lighting is super important
daytime if you can
know your subject!

My Session

“Discovery, Discovery, Discovery, Discovery! The Most Important Part of the Project”

I was super happy to deliver this talk only for the second time. The first time was back at Stanford in the Spring. I have developed a similar talk around this subject as well, but with a Motorhead theme. The real highlights for me on this talk are hearing the Q&A feedback and suggestions. As Rachel Cherry said in the Women in Tech Panel, it is not always the be all expert up on stage, it those of us that raised our hands and volunteered to contribute. I firmly believe that the real experts are in the room, collectively knowing more than I could possibly store in my limited brain. The other part was, since this was loosely based on Ballmer’s “Developers” speech I got to close the thing out by having everyone chant “Discovery, Discovery, Discovery, Discovery!” Truly one of my crowning achievements this year!

Contributor Day

There was not a dedicated contributor day at this camp, it was instead a dedicated track on day 2. This has the plus side that there is a lot of foot traffic that would not be there otherwise, but it also means that you have to choose between contributing and seeing sessions. This is a hard choice. Since Andrea had called me out as one of the leads for the Marketing team I decided I better roll up my sleeves and help out. Very glad I did, helping people get started and having some interesting discussions with both the Meta and the Core teams. So many good ideas were born that day and I can not wait to discuss them more deeply with the rest of the team formally at WordCamp US contributor day!
If you are reading this and want to contribute to WP, hit me up, I am more than happy to guide you towards the right path if I can. So happy to be a part of this team and can not wait for you to join in to also experience the feelings of awesomeness that come with contributing.

Wrapping up

I learned a lot this camp even though I missed all the lightning talks to go be part of the contributor day. That is a lesson unto itself that I struggle with, FOMO: fear of missing out. I realize intellectually I can’t do everything and am going to have to make some trade offs. In my head though I feel like I am missing all the best things by doing the other amazing things. This camp actually did a good deal to help me settle down and just be able to focus. This is mainly due to my amazingly talented teammates from Pantheon who held theo booth down and kept the steady flow of folks informed on what we are all about.

I really dig Seattle. From the fact that I never see see the sun, to the awesome coffee options, all the way down to Pike’s Market and the many goodies that are for sale there, this town has a lot going on. Making it even better is a pretty amazing and wonderful WordPress community that puts on a pretty good camp. I am super happy to get to visit and hope to visit again well before WordCamp Seattle 2018!

WordCamp Baltimore: All about that B2B – Bay Area to the B’more

I love Baltimore. Every time I visit I find a new reason to like it even more. It was here that I first gave my improv talk. It was here that I got to take part in the largest to date DrupalKaraoke event. And it is here that I returned for WordCamp Baltimore 2017, WCBalt

Food and Fun

Speaker Dinner

As per the normal custom, got to participate in the Speaker/Sponsor dinner and hanging out. We gathered at Spark, a coworking space inside of Power Plant Live, the entertainment complex tha feels a bit like a little tiny Las Vegas, sans gambling. We had pizza and refreshments. Some of us journeyed a few doors down afterward to extend the eventing’s activities but we didn’t stay out too late, as the one and Sal Ferrarello was set to once again host the pre WCBalt breakfast early the next morning. I tried to get up for this, but I didn’t make it.

Can’t find a tweet with a pic, but it was in the same place as last year, so here is a tweet from then:

Day 1

The coffee at WCBalt reminds me of what you would find at a church function, meaning it is made in small batches in old fashion electric percolators. Snacks were plentiful and flowing throughout the whole event, with rotating selections of chips, candy, soda and such. I was never wanting for snacks.
Lunch on the first day was absolutely outstanding, with hearty vegan options of beans and rice, mixed steamed veggies and fried plantains. I ate way too many of that latter, as they were sorta like a fried banana candy.

After Party (Networking Social)

WCBalt joined the growing list of camps that are attempting to stem the tide of people not making it back out for the after party by turning the event into a networking social immediately following the last session of day one. I have mixed feeling about this to be honest. I am very much in favor of the inclusion it brings. No matter who you are or the circumstances, if you made it to the venue, this is an accessible function. There is no alcohol but there were some pretty spectacular appetizers. They ordered from Dooby’s which got all the locals excited. They had tremendously great vegan Kimbap, a sort of Korean sushi and veggie pot stickers, as well as pork buns, spinach artichoke dip, cookies and some fantastic looking donuts. It was great to connect with so many people but what felt like all too soon, the crowd thinned and we had to find elsewhere to go.

Dinner

Since the after party ended so soon and there were only (the very tasty) appetizers, some of us wanted to go grab a proper meal before we found later night fun together. One of the greatest side effects of my dietary choice is it helps narrow down the crazy wide array of options a larger city tosses at you when you google search for ‘Restaurants near (an address)’. I stumbled across the menu for Of Love and Regret and was excited to try this out. An amazing beer list, fine spirits and creative cuisine in a very stylish old building across from Natty Boh Tower. Bette than any of that though was the company of my fellow WC folks. While plugins and continuous integration strategies are great subjects, getting to hang out and talk about more human things is part of what keeps me going out on the road. So many new connections and friends made along the way.

WCKaraoke

My top Karaoke bars are:
1 – Bow Bow Lounge (Cinatown in San Francisco)
2 – Otter’s Saloon (Minneapolis, MN)
3 – Walt’s Inn (Baltimore, MD)
A small group of us made it out to Walt’s Inn to celebrate a great first day at camp. Walt’s has ridiculously cheap drink specials and a heavy hand when pouring. The only downside, which I do not remember them enforcing last year, is a 2 drink minimum before you can sign up for singing. Fortunately, if one person signs up you can get any number of people to back you up. We rocked B’more with a stirring rendition of “Bohemian Rhapsody”. Freddy and the boys would have been proud.

Day 2

Coffee and tea were again available and pretty alright.
Lunch however was a bit of a letdown, especially in light of the previous day’s bounty of awesome, filling options. They ordered Dominos and the only vegan option were 2 side salads we would have to split between all the dietary restriction folks that are Gluten, Dairy or Animal Product adverse. I have learned on the road to carry backup food and was OK, but if you are reading this and are organizing an event where you plan to order pizza please, please, please either get it from somewhere that offers vegan cheese or gat a few pies with no cheese and extra veggies. Most pizza dough is vegan and so is the sauce. Not the healthiest meal but a filling one and no dairy involved.

In liu of a lunch tweet here is Mr. Trash Wheel

Sessions

Opening remarks

Keynote

The Future: Why Open Matters
Aaron Campbell

I had just seen the first version of this talk back at WordCamp Sacramento a few weeks before and was actually pretty excited to hear the next evolution. I love this central premise in this talk, that we have only gotten here in our technological advancement arc by openly sharing information. This has always been true. From the earliest roots of language, to Newton and Calculus, to the internet, which is the greatest information sharing system ever devised. We are at a place now where some people do not agree we should be sharing and open with information. We face a new kind of existential threat where the very same openness that helped create some of the monster tech platforms might not help further our freely shared knowledge base. It is in this light that he made a ‘call to arms’ for us to own our own data and make sure a free and open internet continues to exist. No easy answers here, but an important conversation that needs to be had.

Raw notes:
History teachers
not a fan of history
but important for this talk to go back in time
1994 super important year
changed all our lives
how we shared informations
but before that 1990
SNES changed Aaron’s life
such a giant leap from qbasic gorillas
but that game and DOS taught him to code/modify the source code
before internet, books from bookstore
open code he did not write, just modify
standing on the shoulders of giants, from 1100’s is that saying
Newton 1675 paraphrased
sharing information has evolved
technology has improved knowledge base you can access
books were a huge jump
stores of information
then computers
then internet – single most effective information sharing tool in history
closed systems are not necessarily bad, just potential hazard
risks are OK sometimes, but looking from history
sharing is what advances us
now we are risking private hands of big advances and not share
divorcing net neutrality
trying to treat all data the same
should be easier than it is
handling all data the same weight is a lot easier
but morally and ethically this is not so easy
not illegal stuff, just bad info
“If I was in control I would wipe out this bad info from the internet”
small groups that hold minority opinion are sometimes right
majority rule and suppressing voices and info
then who decides what is true?
Internet is where people go to learn things
historically, putting that in the hands of a limited set of people has issues
only way to overcome those mistakes is to distribute all into to all people
then people can decide
must allow things we don’t care for, it is possible we are wrong
love that people can prove him wrong
most be allowed to have progress
What happens to the internet in the future
can we make info free to create a next isaac newton?
Steps we need to take make sure it stays around
1) use open alternatives. Don’t give single companies closed monopolies.
2) Spread the word about this idea. Inform and inspire people to keep it open and accessible
3) Vote and make your voice heard, but please be informed
4) Vote with your money, support businesses that support the open web!

Write Better Javascript
Ethan Butler

I am not even going to pretend I absorbed all this. It was a very quick paced delivery and jammed full of awesome knowledge. Part of this is my just lack of personally using JS day to day. Without a direct application only so much is going to seep through. I think it is vital to understanding the future of the internet to undertand it though and I hate not trying at least. I did glean some knowledge and didn’t know JS can directly do Map/Reduce. This is a terrific talk to watch if you are thinking about building JS and want to do it right!

Raw notes:
Javascript is the future
(I came in late I assume he said that)
Browserify
“Writing webpack direct is like inviting demon into your home”
recapping modularity
write doce i
you need a bundler
JS makes it hard to express your ideas
transpiliation to the rescue?
Future specs!
Languages move faster than browser tech
real language features
babel is the go to, really only game in town for transpilers
(I got distracted and missed more)
Object notation
He deconstructed an object for us
Object destructuring is a newer thing
Object assign – data method on the object primative to merge objects
Promises are if you expect a return at a future unspecified time
resolve or reject
used is Ajax a lot
async/await is a more powerful alternative
we can use transpiliers to leverage new features without worry about browser
final problem for today
hard to debug
Functional programming
avoids mutable data
program is just an evaluation of user input
same input gets the same output, every time
Bugs happen because of side effects
pure functions a + b + c example
Data – arrays of objects for the most part
array.map – iterate over the values and transform it
array.sort (not a new thing) compare values pos, neg or 0, to sort posts for instance
array.includes – see if includes a string, so a search, can use for strings or anything really
array.some – true if callback is partial match of term
array.every – true if every value matches term
array.reduce – flatten values to a single value,

Making Your Code Easy To Extend
Sal Ferrarello

Sal is a great guy but also a terrific code writer. If you look at his github repos they are well commented and have clear readme files (which is vital to any project). This talk was not about that aspect but the cleaner the code the easier it is to build off of bu other later. If you are contributing code at all this is a must see.

Raw notes:
(missed first 10 minutes)
MU Plugins -best kept secret in WP
Best place to put code as pugins and not worry about client deleting them
the code expects it
Add actions – do_action – await for a thing to happen
not returning a value
takes control and then give chance to do own thing
he likes bootstrap to acheive effects
wrote a email stop plugin stop-emails
used do_action
takes focus and says log email to a file
using DIR .
solves a problem for a plugin request without actually modifying the plugin
by exposing that do_action and tiny bit of code
template
esc_html( $btn_text ) .
fe-raptor-button.php
using include
templates/btn.php

SASS isn’t Scary
Beth Soderberg

Last year at WCBalt 2016 I met Beth and heard her amazing talk I Learned to Code Through WordPress and So Can You
. I have sent this talk to a good number of people who are getting started or want to get started. Clear an straightforward, I really appreciated her approach. I was excited to see this same style applied to a talk about something I really didn’t fully understand, Sass. Just like JS, I don’t touch it all the time, so my limited functional understanding is limited. The lightbulb turned on for sure and I can’t imagine someone approaching a larger project without this approach. For sure one to see when it hits WordPress.TV

Raw notes:
Beginner, welcome, you do need to know a little CSS
Selectors
properties
values
that is it for CSS
A preprocessor is a anguage that compiles to another language
all kinda the same, syntax is a little different but converging on a set standard of ideas
Preprocessors bring programatic methodology to CSS
DRY: don’t Reprat Yourself
Reusable libraries – pulling from a standard set of code
ability to define abstract values, let the computer built to do the math
CSSS preprocessors are NOT CSS
CSS don’t have to follow the rules of the CSS specification rules
Benefits
Modularity – don’t get lost by stuffing everything in one file
programmability + automation + modularity = scalability
Potential challenges
Fear of change
old way fels inefficient even for small projects
Set Up is sometimes hard, uses Ruby and is unfamiliar to most
Issues are normal, you are not alone
Debugging is harder with SASS since there are so many partials
“Why is this not telling me where this is coming from?” – Beth’s least favorite part about SASS
Bloat – easy to write crappy code in SASS just like CSS, just way more code created
Still want the thing you are compiling to to be as small as possible, avoid bloat
Maintainability – can be an issue for legacy especially – inherited sites are much harder
once compiled to one file can at least make it approachable though
Why SASS over LESS?
Work team preference
Overall in the WP community – lot of resources and blogs about this and WP
Accessibility written books/resources
Less is still a thing though –
Syntactically Awesome Stylesheets
Sass is a extention of CSS
Really helps you use Compass
Sass has 2 extentions
.sass and .scss
Basics:
Learn SASS slowly but also learn CSS first
Nesting
Benefits
avoids duplicating selectors
reflects markup structure
uses indentation to indicate heirarchy
should eb limited to 4-5 levels
less typing
Nesting Properties with Shared Namespaces
in simple examples not that impressive, but in production real world saves a lot of time and effort
can reference the parent selector
Variables
invoking varaibles
good uses
colors
font stacks
image paths
margin
widths
font sizes
Mixins
Allows defining a group of styles once for use throughout a style sheet
should be used for common patterns independent of HTML markup
80% of mixins have less than 5 declarations
Mixin Libraries
write your most common mixins once and reuse accross projects
write your own
Compass
Bourbon
Sass CSS3 Mixins
Breakpoint and more!
Operators – letting the machine do the math
Partials
and underscore-prefixed Sass file is prtial
Don’t generate CSS files directly

Conquering Continuous Integration and Deployment
Tessa Kriesel

I am a huge fan of Tessa and her relentless work for Girl Develop IT, which is a great organization teaching women to code. I am also a real fan of the content of this talk since I also discuss and deliver these worts of enablements and trainings at our shared employer Pantheon. No matter how deeply you understand something like CI, seeing the crowd react to this information is always enlightening.

Raw notes:
First let’s look at what daily things we routinely do
She lays out a list of daily dos
Automating tings in your life
Invest the time in automation
can be hard to fit it in
walks through automating updates
look at slack to show off visual regression tests
explains Backstop
pics comparing 2 versions of a site
build steps
setup containers
install dependencies
running automated testing
behat (behavioral testing)
containers are awesome
Github is where all the code lives

Sketches: The Universal Language
Joshua Wold

Joshua was last of the Would brothers I had not met. All working at the top notch XWP, they further the state of the art of WP in their own ways. Joshua is much more design minded and brought those sensibilities and skills to his session and to the WordPress Core Team. Anyone who has seen my site can likely attest to my lack of design skills and I feel very lacking in my visual communication abilities. One of my mental blocks has always been my self consciousness around nonexistent drawing skill, always worrying it is not good enough. I was very encouraged by Joshua to not care at all about this i the early stages of sketching. He showed how with some very simple lines and shapes and a few basic notations you can turn a page long written description, that might take hours to interpret, into

Raw notes:
How should a portal be set up
how to communicate with the client on what they want
and how the designers are thinking about it
He did a sketch to try to understand what the client was trying to say
the whole conversation changed for the better
cleared up confusion
Once the client saw the issue more clearly, was able to move forward much better
a quick sketch in 10 minutes changed everything
the tech doesn’t really matter, he used an ipad
most people are visual thinkers
hard to put into words what a website looks like, easier to sketch
they are building a house
miscommunicated on paper, once saw in person, visually saw what was issue
if you have a pen and a napkin you can sketch
simple lines and shapes and arrows are all you really need
just draw something and share it
does not have to be pretty just to get idea across
Gutenberg example (see his handout)
Ticket management…hard to recall what ticket messages mean
if you can sketch wire frames an attach to ticket
gets anyone no matter what their native language is to get on same page in seconds
stay in the ugly lines as long as you can,
once you move beyond that it can takes hours to make any changes
He has been able to contribute to core by adding sketches to help everyone communicate
simle really is better, just standardize a few simpe elements like clickable buttons
Sketching: paper and pen really is the best way to go for initial phase
next best is ipad pro, + Paper 53, then Balsamiq for squiggly lines (tells people you are not done.
Prototyping: Adobe XD, Illustrator, INvision
Sharing CloudUp, Quicktime, Tapes for Mac
It is more important to get on same page with clients than to dwell on tech or pretty sketches

My session

Everything louder than everything else! Navigating stakeholder needs through better discovery

I have only given this talk one other time, at MIT, and was very happy to give it again! The talk is basically me cramming all I know about the discovery phase of a project or sales process into 35 minutes of slides with a lot of references to Motorhead along the way. I love sharing tools that I have gathered over time by earning it the hard way. It was great to see so many people nodding along and asking questions as they were trying to apply these “best practices” to their situation. Thank you too all who had such kind words afterwards in person and on social media.
During the Q & A, both times I have given this talk, there indirectly arose the matter of ‘what is the goal of a website’. I think I am going to write a talk on that next.

Closing and cleanup

Wrapping Up

After a great camp it is always a little sad to pack up and part company with folks. I got to spend a rare personal evening meeting up with an old friend who lives in the city and seeing yet another new-to-me vibrant part of the old town. Every time I visit I find new surprises and reasons I like it a little more. Plan your visit today!
I am not sure when I will be back to Baltimore. I certainly hope I will again before too long. For sure I plan to return next year for WCBalt 2018!