diff --git a/wcoc17/burn-it-all.gif b/wcoc17/burn-it-all.gif new file mode 100644 index 0000000..fe947fd Binary files /dev/null and b/wcoc17/burn-it-all.gif differ diff --git a/wcoc17/chuttersnap-255216.jpg b/wcoc17/chuttersnap-255216.jpg deleted file mode 100644 index 1125cd3..0000000 Binary files a/wcoc17/chuttersnap-255216.jpg and /dev/null differ diff --git a/wcoc17/cowboy.gif b/wcoc17/cowboy.gif new file mode 100644 index 0000000..a237cb3 Binary files /dev/null and b/wcoc17/cowboy.gif differ diff --git a/wcoc17/create.gif b/wcoc17/create.gif new file mode 100644 index 0000000..ed2659d Binary files /dev/null and b/wcoc17/create.gif differ diff --git a/wcoc17/edwin-andrade-158050.jpg b/wcoc17/edwin-andrade-158050.jpg deleted file mode 100644 index edd8f5a..0000000 Binary files a/wcoc17/edwin-andrade-158050.jpg and /dev/null differ diff --git a/wcoc17/ferris-valets.gif b/wcoc17/ferris-valets.gif new file mode 100644 index 0000000..e22ab22 Binary files /dev/null and b/wcoc17/ferris-valets.gif differ diff --git a/wcoc17/himesh-kumar-behera-216019.jpg b/wcoc17/himesh-kumar-behera-216019.jpg deleted file mode 100644 index 428baff..0000000 Binary files a/wcoc17/himesh-kumar-behera-216019.jpg and /dev/null differ diff --git a/wcoc17/hotdog.gif b/wcoc17/hotdog.gif new file mode 100644 index 0000000..fe41a34 Binary files /dev/null and b/wcoc17/hotdog.gif differ diff --git a/wcoc17/marco-djallo-127113.jpg b/wcoc17/marco-djallo-127113.jpg deleted file mode 100644 index cc7c431..0000000 Binary files a/wcoc17/marco-djallo-127113.jpg and /dev/null differ diff --git a/wcoc17/markus-spiske-207946.jpg b/wcoc17/markus-spiske-207946.jpg deleted file mode 100644 index 118ad10..0000000 Binary files a/wcoc17/markus-spiske-207946.jpg and /dev/null differ diff --git a/wcoc17/martin-sanchez-zekedrone-250745.jpg b/wcoc17/martin-sanchez-zekedrone-250745.jpg deleted file mode 100644 index 56bec17..0000000 Binary files a/wcoc17/martin-sanchez-zekedrone-250745.jpg and /dev/null differ diff --git a/wcoc17/merge.gif b/wcoc17/merge.gif new file mode 100644 index 0000000..f953ae8 Binary files /dev/null and b/wcoc17/merge.gif differ diff --git a/wcoc17/mike-wilson-36140.jpg b/wcoc17/mike-wilson-36140.jpg deleted file mode 100644 index c47d17f..0000000 Binary files a/wcoc17/mike-wilson-36140.jpg and /dev/null differ diff --git a/wcoc17/parking.gif b/wcoc17/parking.gif new file mode 100644 index 0000000..ed9f766 Binary files /dev/null and b/wcoc17/parking.gif differ diff --git a/wcoc17/pete-wright-105201.jpg b/wcoc17/pete-wright-105201.jpg deleted file mode 100644 index 1841f97..0000000 Binary files a/wcoc17/pete-wright-105201.jpg and /dev/null differ diff --git a/wcoc17/raphael-koh-126192.jpg b/wcoc17/raphael-koh-126192.jpg deleted file mode 100644 index beaa079..0000000 Binary files a/wcoc17/raphael-koh-126192.jpg and /dev/null differ diff --git a/wcoc17/science.gif b/wcoc17/science.gif new file mode 100644 index 0000000..dd387e7 Binary files /dev/null and b/wcoc17/science.gif differ diff --git a/wcoc17/show-off.gif b/wcoc17/show-off.gif new file mode 100644 index 0000000..279e8fd Binary files /dev/null and b/wcoc17/show-off.gif differ diff --git a/wcoc17/speechless.gif b/wcoc17/speechless.gif new file mode 100644 index 0000000..6d8627b Binary files /dev/null and b/wcoc17/speechless.gif differ diff --git a/wcoc17/the-best.gif b/wcoc17/the-best.gif new file mode 100644 index 0000000..1346324 Binary files /dev/null and b/wcoc17/the-best.gif differ diff --git a/wcoc17/the_minimal_dev-wcoc17.md b/wcoc17/the_minimal_dev-wcoc17.md index 08678d0..352ff87 100644 --- a/wcoc17/the_minimal_dev-wcoc17.md +++ b/wcoc17/the_minimal_dev-wcoc17.md @@ -1,4 +1,5 @@ footer: boogah.org/wcoc17 +autoscale: true # [fit] The Minimal Dev @@ -10,61 +11,183 @@ footer: boogah.org/wcoc17 --- -# Hi +# So... +# dev environments -![](http://riotgirl.club/~boogah/wave.gif) +![](burn-it-all.gif) -^ I'm about to hit you with some pretty dry stuff up top. But I promise that I'll be quick about it. +^ I hope everyone in here is at least passingly familiar with the concept of a local development environment. + +^ If you aren't, local dev environments involve a specialized software stack that runs on your laptop or desktop. This stack allows your computer to emulate a live site while still keeping your work private. Kind of like a staging site, but way less formal. + +^ And because dev environments run locally, you don't have to worry about uploading any changes you make. You can dig right into your site's code with your favorite text editor and see your work as soon as you hit save. + +^ Dev environments are handy when you want to test something out — such as a new plugin or theme — and can't afford to experiment on your production environment. --- -# [fit] What is Valet? +# [fit] Mamas, don't let your +# [fit] babies grow up to be +# [fit] cowboy coders -![](mike-wilson-36140.jpg) +![](cowboy.gif) -^ Valet is a PHP development environment for, as the project site says, "minimalists". Originally developed for the Laravel PHP framework, Valet also supports other PHP projects, such as WordPress, through the use of "drivers". +^ Speaking of experimenting in production... -^ While the primary distribution of Valet is for macOS, there are unofficial ports for the Windows and Linux folks in the crowd. With that being said, I'm going to be focusing on the macOS version today. Hope that's not a deal breaker for anyone. [pause for people to leave the room] Okay. Good. +^ Don't. + +^ Nobody can really _afford_ to experiment in production. + +^ If your host provides a staging area, use it. + +^ If you already use a dev environment, great. --- -# [fit] Why Valet? +# Dev environments -![](mike-wilson-36140.jpg) +* Vagrant +* Docker +* DesktopServer +* Local +* Chassis +* MAMP +* WAMP + +^ Since we just came back from lunch, let's get the blood flowing and move around a little bit. + +^ I know I'm speaking to an audience of mostly developers, so I won't ask you to move around too much. + +^ Show of hands, who has used at least one of these before? + +^ Which one's your favorite? + +^ What do you like about it? + +^ What do you hate about it? + +--- + +![](the-best.gif) + +^ Today we're going to talk about my favorite dev environment... + +--- + +# Valet + +![](http://www.reactiongifs.com/wp-content/uploads/2013/10/joy-ride.gif) + +^ Valet is a PHP development environment for, as the project site says, "minimalists". Originally developed for the Laravel PHP framework, Valet also supports other PHP projects, like WordPress, through the use of "drivers". + +^ While the primary distribution of Valet is for macOS, there are unofficial ports for the Windows and Linux folks in the crowd. With that being said, I'm going to be focusing on the macOS version today. Hope that's not a deal breaker for anyone. + +--- + +# Why Valet? + +![](what.gif) ^ If you saw how cluttered the area around my desk is, you'd be pretty hard pressed to call me a minimalist. But when it comes to development environments, I run a pretty tight ship. -^ One of the most appealing things, to me, about Valet is how lightweight it is. The core components—which are installed through Homebrew and the Composer dependency manager—take up no more than a few hundred MB on my laptop. On top of that, Valet uses around 10MB of RAM while idle. - ---- - -# [fit] Why not Vagrant? - -![](martin-sanchez-zekedrone-250745.jpg) - ---- - -# [fit] Why not Docker? - -![](chuttersnap-255216.jpg) - ---- - -# [fit] Why not X? - -![](wesson-wang-110739.jpg) +^ One of the most appealing things, to me, about Valet is how lightweight it is. The core components — which are installed through Homebrew and the Composer dependency manager — take up no more than a few hundred MB on my laptop. On top of that, Valet uses around 10MB of RAM while idle. --- # [fit] Installing Valet -![](mike-wilson-36140.jpg) +![](parking.gif) + +--- + +# [boogah.org/inst-valet](https://boogah.org/inst-valet) + +^ While I'd like to say that there's a package that installs all the prerequisites for Valet, the process is still pretty manual. + +^ I've written up a list of commands you need to run to install the Homebrew package manager, PHP 7.0 with Xdebug, MySQL, the Composer dependency manager, and Valet. + +[.hide-footer] + +--- + +# Installing Valet (Homebrew) + +``` [.highlight: 2,5,8,11] +# Install Xcode Command Line Tools +→ xcode-select --install + +# Install Homebrew +→ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" + +# Update Homebrew Package Index +→ brew update + +# Confirm Homebrew is Installed Correctly +→ brew doctor +``` + +--- + +# Installing Valet (PHP 7) + +``` [.highlight: 2,3,6,9] +# Install PHP 7.0 +→ brew tap homebrew/php +→ brew install php70 + +# Install Xdebug (optional) +→ brew install php70-xdebug + +# Confirm PHP is Installed Correctly +→ php -v +``` + +--- + +# Installing Valet (MySQL) + +``` [.highlight: 2,5] +# Install MySQL +→ brew install mariadb + +# Launch MySQL at Login +→ brew services start mariadb +``` + +--- + +# Installing Valet (Composer) + +``` [.highlight: 2,5] +# Install Composer +→ brew install composer + +# Confirm Composer is Installed Correctly +→ composer -V +``` + +--- + +# Installing Valet (Valet) + +``` [.highlight: 2,5,8,9,10] +# Install Valet (Part 1) +→ composer global require laravel/valet + +# Install Valet (Part 2) +→ valet install + +# Create a Directory for Valet Sites +→ mkdir ~/sites/valet/ +→ cd ~/sites/valet/ +→ valet park +``` --- # [fit] Installing WP-CLI -![](pete-wright-105201.jpg) +![](typing.gif) --- @@ -81,7 +204,13 @@ footer: boogah.org/wcoc17 --- -# Install WP-CLI Valet commands +# Valet + WP-CLI + +![](merge.gif) + +--- + +# WP-CLI Valet commands ``` → wp package install aaemnnosttv/wp-cli-valet-command @@ -91,7 +220,7 @@ footer: boogah.org/wcoc17 # [fit] Creating sites -![](marco-djallo-127113.jpg) +![](hotdog.gif) --- @@ -120,7 +249,7 @@ Success: modok was destroyed. # [fit] Preserving workflows -![](markus-spiske-207946.jpg) +![](work.gif) --- @@ -131,11 +260,17 @@ Success: modok was destroyed. * [Skeleton](https://github.com/Baadier-Sydow/wordpress-skeleton-valet-driver) * [Bedrock](https://github.com/aaemnnosttv/bedrock-valet-driver) +^ WordPlate = Built around Composer & Packagist + +^ Skeleton = Mark Jaquith's simple git skeleton + +^ Bedrock = Roots created boilerplate + --- # [fit] Showing off -![](raphael-koh-126192.jpg) +![](show-off.gif) --- @@ -159,9 +294,9 @@ Connections ttl opn rt1 rt5 p50 p90 --- -# [fit] Exploration +# [fit] Experimentation -![](himesh-kumar-behera-216019.jpg) +![](science.gif) --- @@ -191,4 +326,4 @@ Connections ttl opn rt1 rt5 p50 p90 # [fit] Questions? -![](edwin-andrade-158050.jpg) +![](speechless.gif) diff --git a/wcoc17/typing.gif b/wcoc17/typing.gif new file mode 100644 index 0000000..4728dd8 Binary files /dev/null and b/wcoc17/typing.gif differ diff --git a/wcoc17/wesson-wang-110739.jpg b/wcoc17/wesson-wang-110739.jpg deleted file mode 100644 index 83839b1..0000000 Binary files a/wcoc17/wesson-wang-110739.jpg and /dev/null differ diff --git a/wcoc17/what.gif b/wcoc17/what.gif new file mode 100644 index 0000000..f42da2d Binary files /dev/null and b/wcoc17/what.gif differ diff --git a/wcoc17/work.gif b/wcoc17/work.gif new file mode 100644 index 0000000..3e90da3 Binary files /dev/null and b/wcoc17/work.gif differ