I found myself in Bethesda, Maryland for the first time since I was a wee lad, when I visited the capitol to see my aunt who lived in the area. Bethesda is not properly Washington DC I was corrected on a couple occasions by Lyft drivers, but is instead a ‘chichi’, ‘foo foo’, ‘ritzy’ or ‘fancy’ little city next to DC. I will admit my hotel was recently renovated and kinda nice for the cheapest ‘in class’ place I could find. However you want to refer to it, I was glad to go and reunite with my Drupal family at Drupal GovCon 2017.
Held at the National Institute of Health’s Natcher Conference Center, we gathered on a Monday through Wednesday to partake in a discussion and celebration of Drupal 8 and the adoption of Drupal in government. This is an interesting intersection, as I saw in Iceland. I learned a lot. From Fibonacci sequence applied to project management to hilarious cat food content type issues, there was so much to take in. 3 days flew by, so let’s get to it.
— uniongal (@uniongal) July 31, 2017
Food and Fun
Sunday night I arrived and was fortunate enough to meet up with Kevin Thull. Kevin is the man responsible for a lot of the DupalCamps sessions being recorded. If you have any interest in helping with this project to make camp more accessible to all by puting high quality recordings online, please let him know. I had the extreme pleasure to be on the MidCamp team with him and was eager to catch up. While we did so, we caught a really good jazz/fusion/funk act at Villain and Saint. It was a low key and amazing way to kick off my first ever GovCon.
— Dwayne McDaniel (@McDwayne) July 31, 2017
I will say this, if you are going to go to the NIH on a Monday moring, expect that to take a bit of time. Both in terms of traffic and in terms of security lines. I recommend that you get a good breakfast first. After getting set up at the booth, I found coffee and got my busy day really going.
Lunch of day one was a bit of a letdown as I did not get any. I did my normal ‘wait till the line goes down’ routine but this time it backfired hard. Fortunately there is a pretty alright cafeteria there and belive it or not there was very little junk food. Sure some chips and there was soda, but most options were pretty darn healthy and they had an OK vegan lentil stew. Never thought I would say this, but good job NIH cafeteria staff. Well served.
— Mike (@Gov_Dude) July 31, 2017
The festivities for the whole camp community were at Brickside Food & Drink with an open bar right after the last session ended. To my delight they had falafel. I always love me some falafel. I even got to make a little speech as a co-sponsor of the party. I got to use the 45 seconds to thank the awesome community for giving us so much. I mean that. If it was not for the amazing open source communities I belong to I would not be doing this for a living. I don’t want to fathom that.
— uniongal (@uniongal) July 31, 2017
— Karl Kaufmann (@karolus) July 31, 2017
— Jesus Manuel Olivas (@jmolivas) August 1, 2017
Day 2 coffee was coffee. No more needs said on that. Lunch was better since I actually got served. It was a lentil based veggie burger with chips. A few too many pickles later I was happy to report back to the booth pretty full and rejuvenated.
— Michelle Krejci (@dev_meshev) August 1, 2017
Tuesday evening was an adventure. It involved meeting my team and some amazing people for a drink and pretty spectacular vegan food in DC proper at Smoke and Barrel. My ride there took a path that surely avoided all traffic by cutting through Rock Creek Park during the craziest cloudburst I can recall in years. There were even flash flood warnings on the emergency phone alerts of everyone at dinner.
Afterward I was super fortunate to see the Washington Monument. While I will always hear Jello Biafra’s description of it in my head, I gotta admit, it is a pretty spectacular thing to behold.
— Kevin Thull (@kevinjthull) August 2, 2017
Meanwhile there was party on a boat from the fine folks at Taoti Creative!
Short day for me but coffee met me with the same potence as any other day and for the indifference I was grateful. I had signed up for lunch duty volunteering and glad I did. This gave me chance to eat a quick bite first and I again feasted on falafel from Moby Dick House of Kabob, but this time had dolmas and what was either guacamole or baba ghanoush a combo of the two and a tiny pile of hummus. There was kabob on the menu and salad and roasted veggies. The attendance the third day exceeded expectations as day one had overwhelmed supplies. I was glad to have seen this from the volunteer side and got to ponder it from an organizer perspective. While I am a bit miffed that not all options were available for all people in line, there is a silver lining that meant a lot of walk up registrations had occurred at this very large Drupal event. While no event is without its hitches, this supply/demand issue is one that we should all aspire to have though my hunger on day one would have me disagree.
This was part 1 of a 3 part trip, so reality of airline schedules meant I had to depart before the last session adjourned and missed the (I am sure) awesome speaker/sponsor dinner. Alas, the United Club lounge and the beginnings of writing this post paled in comparison.
Quick note before I dig in: This is a very large event, approximately one fourth the size of DrupalCon. This cause my attention to primarily reside at the booth. So many conversations, but this is not the place to reflect on those one on one interactions individually. In the broadest strokes I can say this is where I really learn the most at a camp. Every individual person I talk to has their very own set of particular circumstances which I have to absorb and consider before explaining if I think I can offer any assistance. Sometimes the answer is no. But more often than not I can at least point someone in the right direction for better answers. I am grateful to everyone who stopped by to say hi, not just at this event but at all of them. The only downside of this is that I did not get to attend too may sessions this time around, but happy to report on what I was lucky enough to see.
Keynote Day 1
I get to work with Michelle at Pantheon and it is a thrill to hear her talk about DevOps because she is so darn passionate about it. This talk was pretty spectacular and I highly recommend going and watching the recording.
Storage silos and grain deliver
Her father was vice president of GEAPS
Insert the DevOps in the middle is what you would think
but the pipeline looks very different
everthing what goes on requires DevOps
in 2010 learned Drupal is scalable and safe
WH.gov deploying on Drupal
2011, features modles
2014 – mortonDK had no idea what DevOps meant
year to year perceptions of DevOps,
2012 about 1/3 was DevOps not worth it
in 2014 1% against
how to implement instead of if I should implement
94% adoption of Git
showing tools of what the industry ses, wants to highlight the problems that people were solving with those tools
2015 – Continuous Integration and Continuous Delivery
2016 – improved release cycles – tools took us to automation deploying an scale
presentations are about putting it all together
2017 – containers
DevOps track on it’s own
if just getting into industrial drupal you can get caught up
DevOps submissions account for almost half of submissions to many camps
infiltration of DevOps
Predicts the DevOps tracks will go away
everything and one is DevOps now
But the resistance is real! We can/will overcome.
— Mike Chelen📢 (@mchelen) July 31, 2017
— Jon Pugh (@jonpugh) July 31, 2017
Keynote Day 2
My notes for this…well, let’s just say had some issues and I am not going to write much of a summary. Go watch it yourself. I am going to boil it down to three tweets and a wikipedia link.
— Amani Mansour (@Amani_Mansour92) August 1, 2017
— Liz Lipinski (@lizardata) August 1, 2017
— Kevin Thull (@kevinjthull) August 1, 2017
So you want to speak at a camp? Yes please! I have been thinking about this talk for a long while, as it is something that I have been talking to people about on a one on one basis for the better part of the last two years. I had originally written the abstract to submit as a lightning talk and submitted it to this camp since it was CMS agnostic. I was thrilled to give this talk and overwhelmed by the supportive feedback and people that explained I had given them a new perspective. Super grateful to share this knowledge with people and hope they share it with folks they encounter.
Like all the other talks I give I heavily borrow from google image searches, whcih lead me to this related article on imposter syndrome. While not the whole of the talk I do think this is the best take away from it: https://www.psychologytoday.com/blog/happy-trails/201511/feeling-fraud
— Elli L 🐌 (@ekl1773) August 1, 2017
— Michelle Krejci (@dev_meshev) August 1, 2017
I knew this was going to be a good one when he started out with “Hi, I’m Mike and I have not touched the Features module in 3 months.” This is the chief maintainer of the old Features module btw. He spent the next 45 minutes with us explaining that D8 core configuration management was all you needed and walked through how to use it to best effect.
Raw notes follow:
Used to be push everything to PHP, which is a little weird, now it is yml
DOn’t push bad config, review what is about to be added and push to dev branch
In D8 can only import into the same SITE UUID
Clean install created a new random UUID
Config items have their own UUIDs creating new
config-import can create conflicts
Export and import
— Dwayne McDaniel (@McDwayne) August 1, 2017
This was the first time I had the pleasure of hearing Emilia give a presentation and I hope it is not the last. Through very concrete examples of very familiar things she gave a wonderful strategy for communicating with a dev team in an effective and straightforward manner that leaves little room for doubts or ambiguity.
Raw notes follow:
This was the first time I had the pleasure f hearing Emilia give a presentation and I hope it is not the last. Through very concrete examples of very familiar things she gave a wonderful strategy for communicating with a dev team in an effective and straightforward mannor that leaves little room for doubts or ambiguity.
Raw notes follow:
Laundry analogy: step by step
as if explaining to small child
be detailed to elimiate all past assumptions in your brain
gets better results
Points are easier to determine then you have a clear understanding of the scope of the task
Time management hard, weighting things against each other easier, better for new kinds of tasks
start with a common set of tasks that the team might encounter to be used as examples recommend using Fibonacci sequence as points (1,2, 3, 5, …)
grape 1, apple. 2 cantaloupe 3, watermelon 8
facts you have them, but compared to apple in pic
make no assumptions
detail in requirements
might change points with scope creep
Let devs do their jobs!
Build a page that lists each congressperson’s contact information
-The page should only be HTML/CSS
-each person should have a name, district, an image an email address
Each email should open a template directly
page should use a grid of 3 per row, one on mobile
text should be below the image with the format of name and district on the first line and email on the second
She then crowd sourced even more things to add!
“Heading off questions preemptively wil make a much better project results”
Imposter Syndrome BOF
One of the things I have become increasingly aware of over the last few years of my life is the devastating effects that Imposter Syndrome has on folks, especially in the open source community. I learned from Bridget Willard that 1 in 3 folks in our community likely suffer from some form of depression brought on by and exacerbated by the isolation working behind a monitor brings. I personally believe this fact is directly tied to the anxiety brought on by feeling like a ‘fraud’ or a ‘imposter’, because we never feel like we are good enough. I was very glad to have the change at GovCon to sit down with some of my peers and discuss this. After all I do really believe this is not something for any individual to confront and solve alone, but instead is a community issue that can only be dealt with by us coming together and dealing with it in the open, in the sunlight. We shared personal stories and I know I left feeling less isolated and knowing that I was not alone in feeling like I do sometimes.
If you are reading this, raise this issue with those around you. We all are at risk and we all need each other to get through it. Together we are better.
Day three was a short one for me. Since I volunteered to help with the day 3 lunch and I had a 5:00pm flight I didn’t get to go to as many sessions as I would have liked, but I really got a lot out of the ones I saw.
We forget to think and end up reacting to pressures from upper management or the ones with the loudest voices way too often. Lets take a deep breath and remember that users are great at finding problems with our products, apps, website, and so on but terrible at solving said problems. We will go over ways how user experience helps us plan for the unexpected and explain why certain things function the way they do. All of this will help us clearly communicate to stakeholders that our work is never done and the importance of iterating for a better experience and ROI.
— Dwayne McDaniel (@McDwayne) August 2, 2017
There is a LOT of information in this presentation. Here are my raw scattered 1/2 make sense notes that I can not figure out how to organize better for the purpose of this blog.
You need to figure out if one pass or incremental,
need to know platform considerations, can’t just rewrite files on Pantheon or Acquia
Team specialists, don’t forget the data specialist!
Why not a bug tracker? A spreadsheet is easier, less to fight
going to have a lot fo data
Agile vs Waterfall, this is a case for waterfall
test, prep, move, test
Pre project education: It rakes as long as it takes
undefined new features are a risk to schedule
aggressive schedule causes own issues
Audit for migration
goals and features
DNS settings plug – don’t forget your TTL for the set, find who has control and confirm the settings and process, research early!!!
Architecting the new site: Got to set it up early, URL patterns planning
Every new entity is a new migration path (paragraphs)
you must archive everything before building
DO NOT let site builders just build without documenting
Don’t over engineer, Get Er Done!
max joins on a MyQL DB is 61
Pre-production migrations: keep running migrations
populate bulk of data
estimate duration to Go live
site testing and data audit
it adds up quick, many thousands of $$ if vary from the plan
final code freeze nd go-live checklist finish, DNS
Talk about your no-nonsense technical talks, this was the kind of talk everyone on earth should watch. 0% spin or marketing, this was a 100% factual account of what happens when you request a Drupal 8 page from your browser. I felt like I was back in college drinking from a firehose at an advanced lecture. It was done with poise and he showed grace when there was a technical issue with the presentation itself. I am not sure how the recording will turn out, but go read those slides! Here is the notes I could keep up with while wrapping my head around these core CS concepts:
Your full URL path determines everything!
What happened when you click?
the browser Call ISP, the ISP DNS looks up the caches first, browser or ISP cache
until you eventually get to the ip address xx.xxx.xxx.x
without a number nothing happens
D8 server operating system to apache to php to db and back out
PHP essentially executed scripts, Server do this right now!
index.php is the first place the server looks once we get to PHP execution
walk through the code, building and requesting kernel to do something
Symphony does the rest
autoload adds packages to Drupal kernel
created and has site directory, creates the site and loads into RAM
Drupal loads p content from DB (pages, users)
the URL is compared for aliases, Path module allows you to specify a custom URL for any internal system path
rendering is something on the browser end from what the PHP built (he talked fast)
It was a real joy to see my Drupal family in Bethesda for GovCon. I went in feeling a tad disconnected form the Drupal space as I have done 7 events with them this year out of 18 total, I find myself identifying first with the #WPLife side of it. It is always refreshing to be reminded I am part of the Drupal world and it is my imposter syndrome that keeps from remembering that. It also speaks to the quality of the Drupal community that it can always welcome you in such a great way. I really look forward to the next Drupal event, which might be BadCamp…
Drupal Viking https://twitter.com/drupalviking/status/892417244680134657
— CHIEF (@agencyCHIEF) July 28, 2017