Move all files to old/astro/
This commit is contained in:
parent
b176f4d25e
commit
cdf77e8b5f
1340 changed files with 0 additions and 0 deletions
|
@ -0,0 +1,33 @@
|
|||
---
|
||||
title: Building Static Websites with Sculpin
|
||||
description:
|
||||
A lightning talk on how to use Sculpin to generate static HTML websites.
|
||||
type: Lightning talk
|
||||
speakerdeck:
|
||||
id: 6c9c4be1a1344f1291ff13a391674a66
|
||||
ratio: '1.37081659973226'
|
||||
url: https://speakerdeck.com/opdavies/building-static-websites-with-sculpin
|
||||
code: https://github.com/opdavies/sculpin-demo
|
||||
tags: [meetups, phpsw, sculpin]
|
||||
tweets: yes
|
||||
video:
|
||||
type: youtube
|
||||
id: aN53arCKZAU
|
||||
events:
|
||||
- event: phpsw
|
||||
date: 2015-10-14
|
||||
joindin: https://joind.in/talk/view/15486
|
||||
---
|
||||
|
||||
[Sculpin][0] is a static site generator written in PHP. It converts Markdown
|
||||
files, Twig templates and standard HTML into a static HTML site that can be
|
||||
easily deployed.
|
||||
|
||||
This talk will cover a little of the background to Sculpin and what it is, and
|
||||
then will move into some demonstrations of how to build a Sculpin site and what
|
||||
it can do!
|
||||
|
||||
You can [view the full slides][1], including the embedded videos.
|
||||
|
||||
[0]: http://sculpin.io
|
||||
[1]: https://opdavies.github.io/slides-phpsw-sculpin
|
|
@ -0,0 +1,22 @@
|
|||
---
|
||||
title: 'Configuring all the Things (in Drupal 8)'
|
||||
description:
|
||||
A short notice talk on configuration management in Drupal 8, and things I’ve
|
||||
learned working on my current Drupal 8 project.
|
||||
speakerdeck:
|
||||
id: 6de3fe8947a34727b79eb9d9dcc66bf2
|
||||
ratio: '1.37081659973226'
|
||||
url: https://speakerdeck.com/opdavies/configuring-all-the-things-in-drupal-8
|
||||
video:
|
||||
type: ~
|
||||
id: ~
|
||||
tags:
|
||||
- drupal
|
||||
- drupal-8
|
||||
events:
|
||||
- event: drupal_bristol
|
||||
date: 2018-07-25
|
||||
---
|
||||
|
||||
A short notice talk on configuration management in Drupal 8, and things I’ve
|
||||
learned working on my current Drupal 8 project.
|
34
old/astro/sculpin-old/source/_talks/dancing-for-drupal.md
Normal file
34
old/astro/sculpin-old/source/_talks/dancing-for-drupal.md
Normal file
|
@ -0,0 +1,34 @@
|
|||
---
|
||||
title: Dancing for Drupal
|
||||
description:
|
||||
A talk on Drupal, presented alongside others representing Umbraco, Sitecore
|
||||
and Episerver.
|
||||
speakerdeck:
|
||||
id: ffa9b6dea6dc4a8eb207b9982ed6e1bd
|
||||
ratio: '1.33333333333333'
|
||||
url: https://speakerdeck.com/opdavies/umbristol-dancing-for-drupal
|
||||
tags: [meetup, umbristol, drupal]
|
||||
tweets: yes
|
||||
events:
|
||||
- event: umbristol
|
||||
date: 2015-08-25
|
||||
---
|
||||
|
||||
As part of their [CMS Dance-Off][1], I was selected to speak about Drupal
|
||||
alongside other speakers representing Umbraco, Sitecore and Episerver.
|
||||
|
||||
The points to cover were:
|
||||
|
||||
- How does your CMS store configuration data, 'structure' and content?
|
||||
- How do you manage source-control, versioning and deployment?
|
||||
- How do you manage multiple simultaneous editors and/or developers?
|
||||
- How do you manage upgrades?
|
||||
- What are the 3 best things about your CMS?
|
||||
- What are the 3 worst things about your CMS?
|
||||
- What does the future of your CMS look like?
|
||||
|
||||
In each point, tried to cover the differences between Drupal core and developing
|
||||
a project using Drupal, as well as between Drupal 7 and Drupal 8, as things like
|
||||
source control and versioning would be approached differently.
|
||||
|
||||
[1]: http://www.meetup.com/umBristol/events/223807592
|
|
@ -0,0 +1,24 @@
|
|||
---
|
||||
title: Decoupling Drupal with Vue.js
|
||||
description: Decoupling Drupal with Vue.js.
|
||||
code: https://github.com/opdavies/blue-conf-2019
|
||||
speakerdeck:
|
||||
id: 60c8b7abdf194946b7a78a1bb74a0982
|
||||
ratio: '1.77777777777778'
|
||||
url: https://speakerdeck.com/opdavies/decoupling-drupal-with-vue-dot-js
|
||||
events:
|
||||
- event: blue_conf_19
|
||||
date: 2019-06-07
|
||||
---
|
||||
|
||||
Decoupled or headless Drupal has been a trend for a number of years, with
|
||||
modules like RESTful Web Services available for Drupal 7 to expose data, and
|
||||
Drupal 8 becoming more API-first with JSON:API module now included as part of
|
||||
core. This makes it easier for third party systems or alternative front-end
|
||||
applications to consume and work with the data provided by Drupal.
|
||||
|
||||
In this talk, we’ll look at how to build progressively and fully decoupled
|
||||
applications - passing data from a Drupal 8 back-end to a Vue.js front-end.
|
||||
|
||||
The demo code used in the talk is
|
||||
[available on GitHub](https://github.com/opdavies/blue-conf-2019 'View the demo code for this talk on GitHub.').
|
|
@ -0,0 +1,43 @@
|
|||
---
|
||||
title: 'Deploying Drupal with Fabric'
|
||||
description:
|
||||
How to use Fabric, a Python command line based library, to deploy your Drupal
|
||||
applications.
|
||||
speakerdeck:
|
||||
id: 40d1eca4bd484afc86295924fff5dd41
|
||||
ratio: '1.77777777777778'
|
||||
url: 'https://speakerdeck.com/opdavies/deploying-drupal-and-anything-else-with-fabric'
|
||||
embed:
|
||||
'<script async class="speakerdeck-embed" data-id="" data-ratio=""
|
||||
src="//speakerdeck.com/assets/embed.js"></script>'
|
||||
tags: [meetup, conference, php, fabric, drupal]
|
||||
meta:
|
||||
og:
|
||||
title: Deploying Drupal with Fabric
|
||||
description:
|
||||
"You've built your Drupal site, now learn how to deploy it with Fabric."
|
||||
type: website
|
||||
events:
|
||||
- event: drupalcamp_dublin_17
|
||||
date: 2017-10-20
|
||||
time: '15:00 - 15:40'
|
||||
- event: drupal_somerset
|
||||
date: 2017-10-26
|
||||
---
|
||||
|
||||
You’ve built your website, and now you just need to deploy it. There are various
|
||||
ways that this could be done - from (S)FTP, to SCP and rsync, to running
|
||||
commands like “git pull” and “composer install” directly on the server (not
|
||||
recommended).
|
||||
|
||||
My favourite deployment tool of late is [Fabric][1] - a Python based command
|
||||
line tool for running commands locally as well as on remote servers. It’s
|
||||
language and framework agnostic, and unopinionated so you define the steps and
|
||||
workflow that you need - from a basic few-step deployment to a full Capistrano
|
||||
style zero-downtime deployment.
|
||||
|
||||
This talk will cover some introduction to Fabric and how to write your own
|
||||
fabfiles, to then covering some examples and demos of different use case
|
||||
deployments for your Drupal project.
|
||||
|
||||
[1]: http://www.fabfile.org
|
|
@ -0,0 +1,60 @@
|
|||
---
|
||||
title: Deploying PHP applications with Ansible, Ansible Vault and Ansistrano
|
||||
description:
|
||||
How to use Ansible and Ansistrano to perform robust, secure deployments of
|
||||
your PHP applications.
|
||||
speakerdeck:
|
||||
id: c11fe635ed8f4741b35bf3ebe53e8323
|
||||
ratio: '1.77777777777778'
|
||||
url: https://speakerdeck.com/opdavies/deploying-php-applications-with-ansible-ansible-vault-and-ansistrano
|
||||
video:
|
||||
type: youtube
|
||||
id: TmS0FIVwKQg
|
||||
tags: [meetup, php, ansible, ansistrano]
|
||||
events:
|
||||
- event: drupal_bristol
|
||||
date: 2019-01-23
|
||||
- event: php_south_wales
|
||||
date: 2019-07-23
|
||||
- event: drupalcon_eu_19
|
||||
date: 2019-10-30
|
||||
- event: bristol_devops
|
||||
date: 2020-01-30
|
||||
url: https://www.meetup.com/Bristol-Cloud-Native-DevOps/events/266609627
|
||||
- event: drupal_edinburgh
|
||||
date: 2020-03-12
|
||||
remote: true
|
||||
url: https://www.meetup.com/Drupal-Edinburgh/events/267905594
|
||||
- event: cms_philly_20
|
||||
date: 2020-05-01
|
||||
remote: true
|
||||
- event: drupal_yorkshire
|
||||
date: 2020-05-21
|
||||
remote: true
|
||||
---
|
||||
|
||||
Great! You’ve built your website, and now you just need to deploy it. There are
|
||||
various ways that this could be done - from (S)FTP, to SCP and rsync, to running
|
||||
commands like `git pull` and `composer install` directly on the server which is
|
||||
not ideal.
|
||||
|
||||
As well provisioning and maintaining your server configuration and running
|
||||
commands, you can also use [Ansible](https://www.ansible.com) to deploy your PHP
|
||||
application - leveraging relevant Ansible modules such as Git and Composer,
|
||||
custom Ansible roles,
|
||||
[Ansible Vault](https://docs.ansible.com/ansible/latest/user_guide/vault.html)
|
||||
for managing secrets, and features such as idempotency out of the box to build a
|
||||
simple deployment playbook.
|
||||
|
||||
We can then extend that and make it more robust by adding
|
||||
[Ansistrano](https://ansistrano.com) - a port of
|
||||
[Capistrano](https://capistranorb.com) - which adds extra features such as
|
||||
storing multiple builds for each project and the ability to roll-back if needed,
|
||||
customising your build steps using built-in hooks, multi-stage environments and
|
||||
more.
|
||||
|
||||
I've been using Ansible and Ansistrano to deploy a variety of PHP projects -
|
||||
including Drupal 7 & 8, Symfony, Laravel and Sculpin, as well as basic HTML
|
||||
websites, and found it to be very flexible and easy to install and use, and by
|
||||
the end of this talk we will have a fully working deployment playbook, deploying
|
||||
real code onto a real server.
|
52
old/astro/sculpin-old/source/_talks/deploying-php-fabric.md
Normal file
52
old/astro/sculpin-old/source/_talks/deploying-php-fabric.md
Normal file
|
@ -0,0 +1,52 @@
|
|||
---
|
||||
title: Deploying PHP Applications with Fabric
|
||||
description:
|
||||
How to use Fabric, a Python command line based library, to deploy your PHP
|
||||
applications.
|
||||
speakerdeck:
|
||||
id: c147618ce07546ca92f92983c52d6a41
|
||||
ratio: '1.77777777777778'
|
||||
url: https://speakerdeck.com/opdavies/deploying-php-applications-with-fabric
|
||||
tags: [meetup, conference, php, fabric]
|
||||
meta:
|
||||
og:
|
||||
title: Deploying PHP Applcations with Fabric
|
||||
description:
|
||||
"You've built your PHP application, now learn how to deploy it with
|
||||
Fabric."
|
||||
type: website
|
||||
image:
|
||||
url: /images/talks/deploying-php-fabric.png
|
||||
width: 2560
|
||||
height: 1440
|
||||
type: image/png
|
||||
events:
|
||||
- event: nomad_php
|
||||
date: 2017-04-20
|
||||
time: '19:00 (CET)'
|
||||
type: 'Lightning talk'
|
||||
- event: phpsw
|
||||
date: 2017-09-13
|
||||
joindin: https://joind.in/talk/a5ff3
|
||||
- event: phpnw_17
|
||||
date: 2017-10-01
|
||||
time: '09:00 - 09:45'
|
||||
joindin: https://joind.in/talk/4e35d
|
||||
---
|
||||
|
||||
You’ve built your application, and now you just need to deploy it. There are
|
||||
various ways that this could be done – from (S)FTP, to SCP and rsync, to running
|
||||
commands like “git pull” and “composer install” directly on the server (not
|
||||
recommended).
|
||||
|
||||
My favourite deployment tool of late is [Fabric][1] – a Python based command
|
||||
line tool for running commands locally as well as on remote servers. It’s
|
||||
language and framework agnostic, and unopinionated so you define the steps and
|
||||
workflow that you need – from a basic few-step deployment to a full Capistrano
|
||||
style zero-downtime deployment.
|
||||
|
||||
This talk will cover some introduction to Fabric and how to write your own
|
||||
fabfiles, and then look at some examples of different use case deployments for
|
||||
your PHP project.
|
||||
|
||||
[1]: http://www.fabfile.org
|
|
@ -0,0 +1,42 @@
|
|||
---
|
||||
title: Getting Started with Drupal 8 Module Development
|
||||
description: How to build your first module for Drupal 8.
|
||||
tags: [conference, php, drupal, drupalcamp, drupal-8]
|
||||
tweets: yes
|
||||
code: https://github.com/opdavies/dclondon16-d8-module
|
||||
speakerdeck:
|
||||
id: 0041804e52664d12a8e31cd118264813
|
||||
ratio: '1.77777777777778'
|
||||
url: https://speakerdeck.com/opdavies/getting-started-with-drupal-8-module-development
|
||||
video:
|
||||
type: youtube
|
||||
id: qO_Wh5WE3VA
|
||||
meta:
|
||||
og:
|
||||
title: Getting Started with Drupal 8 Module Development
|
||||
image:
|
||||
url: /images/talks/dclondon16.png
|
||||
type: 'image/png'
|
||||
height: 540
|
||||
width: 960
|
||||
events:
|
||||
- event: drupalcamp_london_16
|
||||
date: 2016-03-05
|
||||
---
|
||||
|
||||
New to object-orientated PHP, Symfony or YAML, and want to get started building
|
||||
modules in Drupal 8? This is the session for you!
|
||||
|
||||
In this session, we’ll cover:
|
||||
|
||||
- Where Drupal 8 modules are located, and how they are structured.
|
||||
- How to build a simple module, including our own permissions and routes.
|
||||
- How to add your own controller and service classes.
|
||||
- What is the service/dependency injection container, and how do we use it?
|
||||
- How we can use tools such as PhpStorm and Drupal Console to speed up the
|
||||
process.
|
||||
|
||||
What we won’t be covering:
|
||||
|
||||
- Automated testing in PHPUnit or Simpletest.
|
||||
- Adding third party libraries and external dependencies via Composer.
|
|
@ -0,0 +1,61 @@
|
|||
---
|
||||
title: Having Fun with Drupal 8, PHP libraries and the Drupal.org API
|
||||
description:
|
||||
A crash course in developing PHP packages and Drupal 8 modules, based on the
|
||||
Drupal.org API.
|
||||
speakerdeck:
|
||||
id: 6e42ae9620bb4e91b3955f8c30d66934
|
||||
ratio: '1.77777777777778'
|
||||
image:
|
||||
url: /images/talks/having-fun-drupalorg-api.png
|
||||
width: 2000
|
||||
height: 1125
|
||||
type: image/png
|
||||
tags:
|
||||
- drupal
|
||||
- drupal-8
|
||||
- drupalorg
|
||||
- php
|
||||
video:
|
||||
type: youtube
|
||||
id: JyDjC7gGDpU
|
||||
events:
|
||||
- event: drupal_bristol
|
||||
date: 2018-04-18
|
||||
joindin: https://joind.in/talk/14851
|
||||
- event: drupalcamp_london_19
|
||||
date: 2019-03-03
|
||||
time: '12:05 - 12:50'
|
||||
---
|
||||
|
||||
A overview and demo of some of the open source projects that I’ve been working
|
||||
on lately that are based on information from the Drupal.org API, including a PHP
|
||||
library for the API itself as well as some Drupal 8 modules that use it.
|
||||
|
||||
This session will cover various topics including:
|
||||
|
||||
- Why would you want to separate your code into reusable packages
|
||||
- An overview of how to structure a PHP package (e.g. an API for interacting
|
||||
with Drupal.org)
|
||||
- How to add a PHP package as a dependency for a Drupal module using Composer
|
||||
- How to create routes and services, and use dependency injection in Drupal 8
|
||||
- How to use Drupal to configure the packages
|
||||
- How to increase performance and reliability by using Drupal's cache system to
|
||||
store API results
|
||||
|
||||
## Links
|
||||
|
||||
- [Drupal.org API library][2]
|
||||
- [Drupal.org API documentation][3]
|
||||
- [Laravel Collections][4]
|
||||
- Example module: [Drupal.org project statistics][5]
|
||||
- Example module: [Drupalversary][6]
|
||||
- Talk: [Using Laravel Collections outside Laravel][7]
|
||||
|
||||
[0]: https://www.drupalbristol.org.uk
|
||||
[2]: https://github.com/opdavies/drupalorg-api-php
|
||||
[3]: https://www.drupal.org/drupalorg/docs/api
|
||||
[4]: https://laravel.com/docs/collections
|
||||
[5]: https://github.com/opdavies/drupal-module-drupalorg-project-statistics
|
||||
[6]: https://github.com/opdavies/drupal-module-drupalversary
|
||||
[7]: /talks/using-laravel-collections-outside-laravel/
|
|
@ -0,0 +1,28 @@
|
|||
---
|
||||
title: 'Drupal 8: Rejoining the Herd'
|
||||
description:
|
||||
A talk highlighting some of the recent technical and non-technical changes in
|
||||
Drupal 8.
|
||||
tags: [conference, php, drupal, drupal-8]
|
||||
speakerdeck:
|
||||
id: 440fd6592f474741bc606c96bc32c104
|
||||
ratio: '1.37081659973226'
|
||||
url: https://speakerdeck.com/opdavies/drupal-rejoining-the-herd
|
||||
events:
|
||||
- event: php_south_coast_16
|
||||
date: 2016-06-11
|
||||
joindin: https://joind.in/talk/41d0f
|
||||
---
|
||||
|
||||
[Drupal 8][0] was (finally) released on November 19th 2015, after almost 4 years
|
||||
of work and code commits by over 3,200 different contributors. Whilst it’s
|
||||
pretty much the same as the Drupal that we know and, hopefully, love, a lot has
|
||||
changed behind the scenes and under the hood!
|
||||
|
||||
In this talk, I'll highlight some of the new features and improvements in Drupal
|
||||
8, and discuss some of the benefits to Drupal site builders, themers, and module
|
||||
developers. I'll also talk about some of the non-technical changes and the
|
||||
cultural shift from "not invented here" to "proudly found elsewhere", and how we
|
||||
are rejoining the PHP herd.
|
||||
|
||||
[0]: https://www.drupal.org/8
|
25
old/astro/sculpin-old/source/_talks/drupal-8.md
Normal file
25
old/astro/sculpin-old/source/_talks/drupal-8.md
Normal file
|
@ -0,0 +1,25 @@
|
|||
---
|
||||
title: Drupal 8
|
||||
description:
|
||||
A lightning talk presented to the PHPSW user group, highlighting some of the
|
||||
relevant changes in Drupal 8.
|
||||
speakerdeck:
|
||||
url: https://speakerdeck.com/opdavies/drupal-8
|
||||
id: 46ba4ba577d94a32b7abdade610ceb69
|
||||
ratio: '1.29456384323641'
|
||||
video:
|
||||
type: youtube
|
||||
id: 36zCxPrOOzM
|
||||
tags: [meetup, phpsw, drupal, drupal-8]
|
||||
tweets: yes
|
||||
events:
|
||||
- event: phpsw
|
||||
date: 2015-04-08
|
||||
---
|
||||
|
||||
This was a ten minute lightning talk, designed to highlight the major changes
|
||||
coming in Drupal 8.
|
||||
|
||||
I categorised the technical changes into groups for site builders, developers
|
||||
and themers, and also highlighted the cultural shift from "not invented here" to
|
||||
"proudly found elsewhere" and the benefits that brings.
|
23
old/astro/sculpin-old/source/_talks/drupal-vm-generator.md
Normal file
23
old/astro/sculpin-old/source/_talks/drupal-vm-generator.md
Normal file
|
@ -0,0 +1,23 @@
|
|||
---
|
||||
title: Drupal VM Generator
|
||||
description: Announcing the Drupal VM Generator CLI tool.
|
||||
type: Lightning talk
|
||||
code: https://github.com/opdavies/drupal-vm-generator
|
||||
tags: [drupal-vm, drupal-vm-generator, meetup, symfony]
|
||||
speakerdeck:
|
||||
id: a27ee1d2bfed4a209dc395fa455acb41
|
||||
ratio: '1.37081659973226'
|
||||
url: https://speakerdeck.com/opdavies/bristol-dug-drupal-vm-generator
|
||||
video:
|
||||
type: youtube
|
||||
id: U1pbKAAO2Wo
|
||||
events:
|
||||
- event: nwdug
|
||||
date: 2016-03-08
|
||||
- event: drupal_bristol
|
||||
date: 2016-04-02
|
||||
---
|
||||
|
||||
An short talk about the [Drupal VM Generator][1] project.
|
||||
|
||||
[1]: https://github.com/opdavies/drupal-vm-generator
|
|
@ -0,0 +1,32 @@
|
|||
---
|
||||
title: Drupal VM, Meet Symfony Console
|
||||
description:
|
||||
How to develop command line applications using Symfony Console, using the
|
||||
Drupal VM CLI as an example.
|
||||
tags: [conference, php, drupal-vm, symfony]
|
||||
speakerdeck:
|
||||
id: 56c79770f73f4e47a542a30243437c49
|
||||
ratio: '1.37081659973226'
|
||||
url: https://speakerdeck.com/opdavies/drupal-vm-meet-symfony-console
|
||||
image: drupal-vm-meet-symfony-console.png
|
||||
events:
|
||||
- event: drupalcamp_bristol_16
|
||||
date: 2016-07-23
|
||||
---
|
||||
|
||||
_TL;DR - Come and learn about Symfony Console, with examples from a real-world
|
||||
project._
|
||||
|
||||
The [Drupal VM Generator][2] is a CLI application, built on [Symfony
|
||||
Console][0], that generates configuration files for [Drupal VM][1] based on
|
||||
personal settings and user interaction.
|
||||
|
||||
After an introduction to Drupal VM itself and the Drupal VM Generator, we’ll
|
||||
jump into the code and see how Symfony Console applications are structured, how
|
||||
to write new commands, and how to integrate additional libraries like Guzzle,
|
||||
Twig and other Symfony components - whilst referencing code from the Drupal VM
|
||||
Generator project.
|
||||
|
||||
[0]: http://symfony.com/doc/current/components/console/introduction.html
|
||||
[1]: https://www.drupalvm.com
|
||||
[2]: https://www.drupalvmgenerator.com
|
19
old/astro/sculpin-old/source/_talks/drupalorg-2015.md
Normal file
19
old/astro/sculpin-old/source/_talks/drupalorg-2015.md
Normal file
|
@ -0,0 +1,19 @@
|
|||
---
|
||||
title: "Drupal.org in 2015: What's Coming Next"
|
||||
description:
|
||||
A retrospective of the Drupal Association’s work in 2014 and a look forward to
|
||||
what we’ll be working on in 2015.
|
||||
tags: [conference, drupalcamp, drupalcamp-london, drupal-association]
|
||||
speakerdeck:
|
||||
id: 0cf8d7b647c94ae289e9db2b46a9e8f2
|
||||
ratio: '1.77777777777778'
|
||||
url: https://speakerdeck.com/opdavies/drupal-dot-org-in-15
|
||||
events:
|
||||
- event: drupalcamp_brighton_15
|
||||
date: 2015-01-18
|
||||
- event: drupalcamp_london_15
|
||||
date: 2015-02-28
|
||||
---
|
||||
|
||||
A retrospective of the Drupal Association’s work in 2014 and a look forward to
|
||||
what we’ll be working on in 2015.
|
|
@ -0,0 +1,15 @@
|
|||
---
|
||||
title: drush make drupalbristol
|
||||
description: How to Drush Make to build your Drupal websites.
|
||||
speakerdeck:
|
||||
id: 42605700f102013198de5a5f6f23ab67
|
||||
ratio: '1.29456384323641'
|
||||
url: https://speakerdeck.com/opdavies/drush-make-drupalbristol
|
||||
tags: [meetup, drupal, drupal_bristol, drush, drush-make]
|
||||
events:
|
||||
- event: drupal_bristol
|
||||
date: 2014-08-19
|
||||
---
|
||||
|
||||
An introduction to Drush Make and how to use it to build reusable custom
|
||||
installation profiles or entire websites.
|
|
@ -0,0 +1,44 @@
|
|||
---
|
||||
title: Getting (Your Data) Into Drupal 8
|
||||
description:
|
||||
An overview of Drupal’s Migrate functionality, and a look at how to write your
|
||||
own migrations.
|
||||
speakerdeck:
|
||||
id: 63e5dfce996e46699e304d50e896477b
|
||||
ratio: '1.77777777777778'
|
||||
url: 'https://speakerdeck.com/opdavies/getting-your-data-into-drupal-8-drupal_bristol'
|
||||
video:
|
||||
type: youtube
|
||||
id: jtmARTuYhp8
|
||||
tags: [drupalcamp, migration, drupal-8]
|
||||
meta:
|
||||
og:
|
||||
title: Getting (Your Data) into Drupal 8
|
||||
description: 'How I migrated the Drupal Bristol website onto Drupal 8.'
|
||||
type: website
|
||||
image:
|
||||
url: /images/talks/getting-your-data-into-drupal-8.png
|
||||
width: 2560
|
||||
height: 1440
|
||||
type: image/png
|
||||
use: [talks]
|
||||
events:
|
||||
- event: drupal_bristol
|
||||
date: 2017-01-18
|
||||
- event: drupalcamp_london_17
|
||||
date: 2017-03-04
|
||||
time: '12:05 - 12:50'
|
||||
---
|
||||
|
||||
If you’ve moved a site from Drupal 6 to 7, the chances are that you’ve either
|
||||
used the upgrade path to update your old site in-place, or you built a new site
|
||||
from scratch and used the Migrate module from contrib to migrate your data from
|
||||
the old database.
|
||||
|
||||
In Drupal 8, things have changed as there’s no upgrade path from Drupal 7 and
|
||||
the Migrate module has been moved into core, though there are still migration
|
||||
related modules available in contrib.
|
||||
|
||||
This talk will look at the core Migrate module and how it implements Drupal 8
|
||||
features such as YAML and the plugin and configuration systems, and how to write
|
||||
your own migrations to get your data into Drupal 8.
|
20
old/astro/sculpin-old/source/_talks/git-flow.md
Normal file
20
old/astro/sculpin-old/source/_talks/git-flow.md
Normal file
|
@ -0,0 +1,20 @@
|
|||
---
|
||||
title: Never Commit to Master - An Introduction to Git Flow
|
||||
description:
|
||||
An introduction to and demonstration of the Git Flow branching model.
|
||||
speakerdeck:
|
||||
id: 201559e0f103013198dd5a5f6f23ab67
|
||||
ratio: '1.29456384323641'
|
||||
url: https://speakerdeck.com/opdavies/never-commit-to-master-an-introduction-to-git-flow
|
||||
video:
|
||||
type: youtube
|
||||
id: T-miCpHxfds
|
||||
tags: [conference, drupalcamp, drupalcamp-london, git, git-flow]
|
||||
tweets: yes
|
||||
events:
|
||||
- event: drupalcamp_london_14
|
||||
date: 2014-03-01
|
||||
---
|
||||
|
||||
An introduction to the Git Flow branching model and the git-flow plugin, and how
|
||||
I’ve used them to manage a Drupal development project.
|
|
@ -0,0 +1,33 @@
|
|||
---
|
||||
title: Goodbye Drush Make. Hello Composer!
|
||||
description: How to use Composer to manage your Drupal applications.
|
||||
tags: ['meetup', 'drupal', 'composer']
|
||||
speakerdeck:
|
||||
id: 1c1e0e129ab34816bd4c4edb5f6642c2
|
||||
ratio: '1.37081659973226'
|
||||
url: https://speakerdeck.com/opdavies/goodbye-drush-make-hello-composer
|
||||
video:
|
||||
type: youtube
|
||||
id: ZL2FtRTX9Y8
|
||||
events:
|
||||
- event: drupal_bristol
|
||||
date: 2016-11-17
|
||||
- event: php_uk_18
|
||||
date: 2018-02-16
|
||||
time: '14:40 - 15:40'
|
||||
joindin: https://joind.in/talk/650ab
|
||||
---
|
||||
|
||||
One of the main outcomes of Drupal 8 was “getting off the island” with
|
||||
third-party code included in core and adopting modern best practices from the
|
||||
wider PHP ecosystem - including [Composer][1], PHP’s dependency manager.
|
||||
|
||||
Included to manage core’s dependencies, it has also gained traction in the
|
||||
contrib space with the creation of the Drupal Composer project, and the Drupal
|
||||
Packagist and now native endpoints on Drupal.org exposing contrib project
|
||||
metadata.
|
||||
|
||||
In this session, I'll show how to fully manage a Drupal 7 or Drupal 8 website
|
||||
including contributed modules and themes and external libraries with Composer.
|
||||
|
||||
[1]: https://getcomposer.org
|
|
@ -0,0 +1,18 @@
|
|||
---
|
||||
title: It All Started With A Patch
|
||||
description: A lightning talk on how and why to get involved with open source.
|
||||
type: Lightning talk
|
||||
tags: [meetup, phpsw, open-source]
|
||||
speakerdeck:
|
||||
id: 5862bdecb7a24cfaa5fc844696fafa0c
|
||||
ratio: '1.37081659973226'
|
||||
url: https://speakerdeck.com/opdavies/it-all-started-with-a-patch-phpsw
|
||||
video:
|
||||
type: youtube
|
||||
id: 5FYMRR61sdo
|
||||
events:
|
||||
- event: phpsw
|
||||
date: 2017-02-08
|
||||
---
|
||||
|
||||
A crash course of why and how to get involved with open source.
|
|
@ -0,0 +1,27 @@
|
|||
---
|
||||
title: Modern Drupal Development with Composer
|
||||
description:
|
||||
A lightning talk on how to use Composer to manage your Drupal projects.
|
||||
type: Lightning talk
|
||||
tags: ['meetups', 'phpsw', 'drupal', 'composer']
|
||||
speakerdeck:
|
||||
id: 7a1358502526425a9cfd288f85fb32f3
|
||||
ratio: '1.37081659973226'
|
||||
url: https://speakerdeck.com/opdavies/modern-drupal-development-with-composer
|
||||
video:
|
||||
type: youtube
|
||||
id: Yi_FPI3xHwc
|
||||
events:
|
||||
- event: phpsw
|
||||
date: 2016-11-09
|
||||
---
|
||||
|
||||
Building a Drupal application? You no longer need to download archives to add
|
||||
new modules or update core, or deal with Drupal specific tools to manage your
|
||||
codebase.
|
||||
|
||||
With Drupal "getting off the island" there has been an increase in the adoption
|
||||
of common PHP tools within the Drupal ecosystem.
|
||||
|
||||
In this lightning talk, I’ll show how to build a Drupal application using
|
||||
Composer for dependency management.
|
|
@ -0,0 +1,35 @@
|
|||
---
|
||||
title: Out of the Box Initiative Update
|
||||
description:
|
||||
An update on Drupal’s "out of the box" initiative, and core’s new Umami
|
||||
installation profile.
|
||||
speakerdeck:
|
||||
id: 3f66c48653f44ed4867fc3cc05c1db06
|
||||
ratio: '1.77777777777778'
|
||||
url: https://speakerdeck.com/opdavies/out-of-the-box-initiative-update
|
||||
video:
|
||||
type: youtube
|
||||
id: ~
|
||||
tags: [meetup, drupal]
|
||||
events:
|
||||
- event: drupal_bristol
|
||||
date: 2019-03-27
|
||||
---
|
||||
|
||||
From the
|
||||
[DrupalCamp London website](https://drupalcamp.london/session/out-box-initiative-update):
|
||||
|
||||
> Since the last DrupalCamp London, the Umami Demo install profile is now one of
|
||||
> the options shown to anyone installing Drupal. But this doesn't mean we've
|
||||
> finished.
|
||||
|
||||
> There are many existing Drupal features that we want to showcase, and new
|
||||
> features stabilising with each minor release. Join the Out of the Box
|
||||
> initiative leads Keith Jay (kjay) and Gareth Goodwin (smaz) for this session,
|
||||
> where we'll talk about:
|
||||
|
||||
> - Where we are, and how we got here
|
||||
|
||||
- Our targets for inclusion in Drupal 8.7.0
|
||||
- How you can help!
|
||||
- Plans for the more distant future
|
|
@ -0,0 +1,14 @@
|
|||
---
|
||||
title: So, what is this Drupal thing?
|
||||
description:
|
||||
My first talk, where I talk about Drupal, what it is and what it can do.
|
||||
video:
|
||||
type: vimeo
|
||||
id: 49827006
|
||||
tags: [meetup, drupal, unified-diff]
|
||||
events:
|
||||
- event: unified_diff
|
||||
date: 2012-09-05
|
||||
---
|
||||
|
||||
My very first talk, where I talk about Drupal, what it is and what it can do.
|
|
@ -0,0 +1,58 @@
|
|||
---
|
||||
title: Taking Flight with Tailwind CSS
|
||||
description:
|
||||
An introduction to the utility-first approach to writing CSS with a focus on
|
||||
the Tailwind CSS framework.
|
||||
speakerdeck:
|
||||
id: 10ca51f23560443d83b898a92929b4b3
|
||||
ratio: '1.77777777777778'
|
||||
url: https://speakerdeck.com/opdavies/taking-flight-with-tailwind-css
|
||||
video:
|
||||
type: youtube
|
||||
id: A-EUdvSAi_I
|
||||
tags: [css, tailwind, meetup]
|
||||
events:
|
||||
- event: drupal_bristol
|
||||
date: 2018-01-17
|
||||
- event: php_south_wales
|
||||
date: 2018-07-31
|
||||
- event: wpchelt
|
||||
date: 2019-04-17
|
||||
- event: wordcamp_bristol_2019
|
||||
date: 2019-05-18
|
||||
- event: blue_conf_19
|
||||
date: 2019-06-07
|
||||
- event: cms_philly_20
|
||||
date: 2020-05-01
|
||||
remote: true
|
||||
meta:
|
||||
og:
|
||||
title: Taking Flight with Tailwind CSS
|
||||
description: An introduction to utility CSS and Tailwind.
|
||||
type: website
|
||||
image:
|
||||
url: '/images/talks/taking-flight-tailwind.jpg'
|
||||
width: 2560
|
||||
height: 1440
|
||||
type: 'image/png'
|
||||
---
|
||||
|
||||
An introduction to utility class and component based styling, and how to soar
|
||||
with [Tailwind CSS][1].
|
||||
|
||||
Things we’ll cover:
|
||||
|
||||
- Advantages and disadvantages to utility based styling and Tailwind.
|
||||
- How to install Tailwind and add it to your build process using tools such as
|
||||
Symfony Encore and Laravel Mix.
|
||||
- How to configure and customise Tailwind for your project.
|
||||
- How to promote repeating classes into re-usable components for better
|
||||
maintainability.
|
||||
- Strategies to control the file size, and using external tools like PurgeCSS.
|
||||
|
||||
Also, if time allows:
|
||||
|
||||
- How to extend Tailwind and add extra classes with community written plugins.
|
||||
- How to write and test your own custom plugins.
|
||||
|
||||
[1]: https://tailwindcss.com
|
|
@ -0,0 +1,88 @@
|
|||
---
|
||||
title: TDD - Test Driven Drupal
|
||||
description:
|
||||
How to write automated tests for Drupal, and how to create a new Drupal module
|
||||
using test driven development.
|
||||
speakerdeck:
|
||||
id: 088cb18033064f5cb18d1079795294a1
|
||||
ratio: '1.77777777777778'
|
||||
url: 'https://speakerdeck.com/opdavies/tdd-test-driven-drupal'
|
||||
video:
|
||||
type: youtube
|
||||
id: 3AUhpkxZ7DQ
|
||||
tags: [drupalcamp, simpletest, phpunit, testing]
|
||||
has_tweets: true
|
||||
image:
|
||||
url: /images/talks/test-driven-drupal-development.png
|
||||
width: 2560
|
||||
height: 1440
|
||||
type: image/png
|
||||
use: [talks]
|
||||
events:
|
||||
- event: drupalcamp_london_17
|
||||
date: 2017-03-04
|
||||
time: '16:15 - 17:00'
|
||||
- event: drupalcamp_dublin_17
|
||||
date: 2017-10-21
|
||||
time: '12:00 - 12:40'
|
||||
- event: drupal_bristol
|
||||
date: 2017-11-22
|
||||
- event: drupal_somerset
|
||||
date: 2018-06-14
|
||||
- event: drupal_dev_days_18
|
||||
date: 2018-07-05
|
||||
time: '12:15 - 13:00'
|
||||
- event: drupalcamp_london_19
|
||||
date: 2019-03-02
|
||||
time: '14:00 - 14:45'
|
||||
- event: nwdug
|
||||
date: 2020-05-12
|
||||
remote: true
|
||||
---
|
||||
|
||||
{% block content %}
|
||||
|
||||
<!-- prettier-ignore -->
|
||||
Testing is important. Why? It allows developers to add new features and edit and
|
||||
refactor existing code without the worry of adding regressions, reduces the
|
||||
reliance on manual testing to discover bugs, and by taking a test driven
|
||||
approach, your implementation code is leaner as you only write what is needed
|
||||
for your tests to pass.
|
||||
|
||||
Drupal 7 includes the SimpleTest module for unit and functional testing, whilst
|
||||
Drupal 8 also includes and supports PHPUnit - the defacto PHP testing framework,
|
||||
used by other PHP projects including Symfony and Laravel - making it easier for
|
||||
people to test their code. And with testing being one of the Drupal core gates
|
||||
with tests needing to be included with every new feature or bug fix, and core’s
|
||||
100% pass rate policy, testing has become an essential skill when contributing
|
||||
to core, or when working on your own projects.
|
||||
|
||||
In this talk, we’ll cover the methodology and terminology involved with
|
||||
automated testing, and then take a test driven approach to creating a new Drupal
|
||||
module.
|
||||
|
||||
<!-- prettier-ignore -->
|
||||
{% endblock %}
|
||||
|
||||
{% block tweets %}
|
||||
|
||||
<!-- prettier-ignore -->
|
||||
<div class="flex flex-wrap -mx-2">
|
||||
<div class="w-full sm:w-1/2 lg:w-1/3 px-2 flex flex-col">
|
||||
{% include 'tweet' with {
|
||||
content: '<p lang="en" dir="ltr">An informative session on <a href="https://twitter.com/hashtag/TDD?src=hash&ref_src=twsrc%5Etfw">#TDD</a> <a href="https://twitter.com/hashtag/Drupal?src=hash&ref_src=twsrc%5Etfw">#Drupal</a> <br>"Test Driven Drupal Development with SimpleTest and PHPUnit - Oliver Davies"<a href="https://twitter.com/opdavies?ref_src=twsrc%5Etfw">@opdavies</a> Thanks ! :) <a href="https://t.co/xQNaq8e0zU">https://t.co/xQNaq8e0zU</a></p>— जयदीप सिंह कण्डारी (@JayKandari) <a href="https://twitter.com/JayKandari/status/939598826087706624?ref_src=twsrc%5Etfw">December 9, 2017</a>',
|
||||
} %}
|
||||
</div>
|
||||
<div class="w-full sm:w-1/2 lg:w-1/3 px-2 flex flex-col">
|
||||
{% include 'tweet' with {
|
||||
content: '<p lang="en" dir="ltr">Really motivational and well delivered talk from <a href="https://twitter.com/opdavies?ref_src=twsrc%5Etfw">@opdavies</a> tonight. Structured brilliantly - I don't think anybody left not wanting to write tests! "Test Driven Drupal" 💧 <a href="https://twitter.com/hashtag/Drupal8?src=hash&ref_src=twsrc%5Etfw">#Drupal8</a> <a href="https://twitter.com/hashtag/testing?src=hash&ref_src=twsrc%5Etfw">#testing</a> <a href="https://twitter.com/hashtag/drupal?src=hash&ref_src=twsrc%5Etfw">#drupal</a> <a href="https://t.co/bvQf7WFwdy">pic.twitter.com/bvQf7WFwdy</a></p>— Drupal Somerset (@drupalsomerset) <a href="https://twitter.com/drupalsomerset/status/1007413440875565056?ref_src=twsrc%5Etfw">June 15, 2018</a>',
|
||||
} %}
|
||||
</div>
|
||||
<div class="w-full sm:w-1/2 lg:w-1/3 px-2 flex flex-col">
|
||||
{% include 'tweet' with {
|
||||
content: '<p lang="en" dir="ltr">Terrible quality photo but the talk drove me to test and it's great so far, it's really helped give me peace of mind and helped me uncover a bug I wouldn't have otherwise :) so thank you 😁</p>— Tawny Bartlett (@littlepixiez) <a href="https://twitter.com/littlepixiez/status/1009189555600273409?ref_src=twsrc%5Etfw">June 19, 2018</a>',
|
||||
no_parent: true,
|
||||
} %}
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
|
@ -0,0 +1,31 @@
|
|||
---
|
||||
title: Test Drive Twig with Sculpin
|
||||
description:
|
||||
With Drupal 8 just around the corner, see how you can develop your Twig skills
|
||||
with Sculpin - a static site generator based on Symfony components and Twig.
|
||||
speakerdeck:
|
||||
id: 54589d2e50a3476a9a75aed809e9edf1
|
||||
ratio: '1.77777777777778'
|
||||
url: https://speakerdeck.com/opdavies/test-drive-twig-with-sculpin
|
||||
code: https://github.com/opdavies/sculpin-demo
|
||||
tags: [conference, drupalcamp, drupalcamp-north, sculpin, twig]
|
||||
tweets: yes
|
||||
events:
|
||||
- event: drupalcamp_north_15
|
||||
date: 2015-07-25
|
||||
---
|
||||
|
||||
[Sculpin][1] is a static site generator written in PHP, and based on [Symfony
|
||||
components][2]. It uses [YAML][3] and [Twig][4], which makes it very appealing
|
||||
to Drupal people wanting to learn these in preparation for Drupal 8.
|
||||
|
||||
This session covered how to install Sculpin itself, as well as how to use it to
|
||||
build a static site from Markdown, HTML and Twig templates. We also covered
|
||||
Sculpin concepts such as content types, themes and partials, and Twig layouts,
|
||||
blocks and inheritance, as well as some tips and tricks that I've found whilst
|
||||
developing with Sculpin.
|
||||
|
||||
[1]: https://sculpin.io
|
||||
[2]: http://symfony.com/doc/current/components/index.html
|
||||
[3]: http://yaml.org
|
||||
[4]: http://twig.sensiolabs.org
|
|
@ -0,0 +1,22 @@
|
|||
---
|
||||
title: Things you should know about PHP
|
||||
description:
|
||||
An introduction to PHP, presented to the Swansea Software Development
|
||||
Community (SSDC) meetup.
|
||||
speakerdeck:
|
||||
id: fe360f1030f34bdb9eb14cdab907bb3c
|
||||
ratio: '1.37081659973226'
|
||||
tags:
|
||||
- meetup
|
||||
- php
|
||||
meta:
|
||||
og:
|
||||
image:
|
||||
url: /images/talks/things-you-should-know-about-php.png
|
||||
events:
|
||||
- event: ssdc
|
||||
date: 2019-01-28
|
||||
---
|
||||
|
||||
An introduction to PHP, presented to the Swansea Software Development Community
|
||||
(SSDC) meetup.
|
|
@ -0,0 +1,28 @@
|
|||
---
|
||||
title: Using Illuminate Collections... Outside Laravel
|
||||
description:
|
||||
How to include and use Laravel’s Illuminate Collections in your non-Laravel
|
||||
PHP projects.
|
||||
speakerdeck:
|
||||
id: 76f1718a75a74940b0b028aac8b9f78b
|
||||
ratio: '1.77777777777778'
|
||||
url: https://speakerdeck.com/opdavies/using-laravel-collections-dot-dot-dot-outside-laravel-php-south-wales-august-2018
|
||||
video:
|
||||
type: youtube
|
||||
id: 1l0kO-iaN_o
|
||||
tags: [nomad-php, lightning-talk, laravel, collections]
|
||||
type: Lightning talk
|
||||
events:
|
||||
- event: nomad_php
|
||||
date: 2017-12-21
|
||||
time: 19:00 CET
|
||||
- event: php_south_wales
|
||||
date: 2018-08-28
|
||||
---
|
||||
|
||||
Laravel's Illuminate Collections are a powerful object-orientated way of
|
||||
interacting with PHP arrays, but did you know that they can be used outside of
|
||||
Laravel, in any PHP project?
|
||||
|
||||
This short talk shows how we can use Composer to include Illuminate Collections
|
||||
within a non-Laravel project and put them to use within your own code.
|
Loading…
Add table
Add a link
Reference in a new issue