Revert "Update permalinks for old daily emails"

This reverts commit a99fa854e1.
This commit is contained in:
Oliver Davies 2024-09-02 23:15:55 +01:00
parent 82f437a712
commit d6d09ab172
34 changed files with 40 additions and 40 deletions

View file

@ -437,8 +437,8 @@ RewriteRule ^wp-tailwind-starter$ https://github.com/opdavies/wordpress-tailwind
RewriteRule ^wp-tailwind-static$ https://wp-tailwind.oliverdavies.uk [R=301]
RewriteRule ^yXhoS$ /presentations/things-you-should-know-about-php [R=301]
RewriteCond %{REQUEST_URI}$ !^/archive/?$
RewriteRule ^archive/(.*)$ /daily/$1 [L,R=301]
# ^ewriteCond %{REQUEST_URI}$ !^/archive/?$
# RewriteRule ^archive/(.*)$$ /daily/$1 [L,R=301]
RewriteRule ^articles/(.*)$ /blog/$1 [L,R=301]
RewriteRule ^talks/(.*)$ /presentations/$1 [L,R=301]

View file

@ -1,7 +1,7 @@
---
title: "Mob programming at PHP South Wales"
pubDate: 2022-09-28
permalink: "daily/2022/09/28/mob-programming-php-south-wales"
permalink: "archive/2022/09/28/mob-programming-php-south-wales"
tags: []
---

View file

@ -5,7 +5,7 @@ permalink: daily/2022/10/09/coding-defensively-implicit-explicit
tags: [tailwindcss, php]
---
As well as [being introduced to Astro](https://www.oliverdavies.uk/daily/2022/10/08/first-impressions-astro) in Simon's most recent Pro Tailwind workshop, something else that we discussed was implicit vs explicit coding, and coding defensively.
As well as [being introduced to Astro](https://www.oliverdavies.uk/archive/2022/10/08/first-impressions-astro) in Simon's most recent Pro Tailwind workshop, something else that we discussed was implicit vs explicit coding, and coding defensively.
For example, if you had this code:

View file

@ -3,12 +3,12 @@ title: >
The open-source-first development workflow
pubDate: 2022-10-29
permalink: >-
daily/2022/10/29/the-open-source-first-development-workflow
archive/2022/10/29/the-open-source-first-development-workflow
tags:
- open-source
---
Yesterday's email talked about [writing reusable, framework-agnostic packages](https://www.oliverdavies.uk/daily/2022/10/28/why-write-framework-agnostic-packages) but didn't mention where those packages could be located.
Yesterday's email talked about [writing reusable, framework-agnostic packages](https://www.oliverdavies.uk/archive/2022/10/28/why-write-framework-agnostic-packages) but didn't mention where those packages could be located.
They could be kept within a private repository and still have the same benefits, such as re-usability for internal projects, but I like to open-source code as often as I can and make it available publicly to see and use.

View file

@ -3,7 +3,7 @@ title: >
Writing good automated test names
pubDate: 2022-11-15
permalink: >-
daily/2022/11/15/writing-good-automated-test-names
archive/2022/11/15/writing-good-automated-test-names
tags:
- testing
---

View file

@ -8,7 +8,7 @@ tags:
- git
---
[Yesterday's email](https://www.oliverdavies.uk/daily/2022/11/20/version-controlled-commented-out-code) talked about whether commented-out code should be present if your code is version-controlled, but how do you avoid committing it in the first place?
[Yesterday's email](https://www.oliverdavies.uk/archive/2022/11/20/version-controlled-commented-out-code) talked about whether commented-out code should be present if your code is version-controlled, but how do you avoid committing it in the first place?
You could make sure that you remove everything manually before you stage and commit your changes, or I like to use `git add --patch` (or `git add -p`) to interactively stage my changes, allowing me to select which parts of files I want to include in my commit and ignore anything else. The `--patch` option also works for other commands, including `checkout` and `reset`.

View file

@ -3,20 +3,20 @@ title: >
Automating all the things
pubDate: 2023-03-14
permalink: >-
daily/2023/03/14/automating-all-the-things
archive/2023/03/14/automating-all-the-things
tags:
- automation
---
As a solo Developer and Consultant, I rely a lot on automation to get my tasks done.
I use tools like [Pulumi, Ansible and Terraform](https://www.oliverdavies.uk/daily/2023/03/09/in-what-language-should-i-write-my-automation) to automate creating and configuring infrastructure - recently creating new client GitHub repositories using a standard configuration with Pulumi.
I use tools like [Pulumi, Ansible and Terraform](https://www.oliverdavies.uk/archive/2023/03/09/in-what-language-should-i-write-my-automation) to automate creating and configuring infrastructure - recently creating new client GitHub repositories using a standard configuration with Pulumi.
I use Nix and Home Manager to automate my local development environment, install packages I need and create files like `.gitconfig` for my needs. These are reusable and stored in my [dotfiles](https://github.com/opdavies/dotfiles) repository.
For projects, I use tools like Docker, Docker Compose and Nix flakes for consistency.
[I wrote a tool for generating configuration files for each project](https://www.oliverdavies.uk/daily/2023/03/04/why-i-built-a-tool-to-generate-configuration-files) - reducing the time it takes me to set up, configure and maintain standard files for tools like Docker and Docker Compose that I always use. If I need to add a new feature or fix a bug in a configuration file, I can do that in my templated version and re-generate each project's files rather than making the same change manually.
[I wrote a tool for generating configuration files for each project](https://www.oliverdavies.uk/archive/2023/03/04/why-i-built-a-tool-to-generate-configuration-files) - reducing the time it takes me to set up, configure and maintain standard files for tools like Docker and Docker Compose that I always use. If I need to add a new feature or fix a bug in a configuration file, I can do that in my templated version and re-generate each project's files rather than making the same change manually.
Today, I wrote a script that loops over all projects where I commit those files to GitHub, clones a fresh version of it, re-generates the files and pushes any new files or changes back to the repository. This means that any changes will be automatically applied and all of my projects will remain in sync.

View file

@ -3,14 +3,14 @@ title: >
The benefits of automation
pubDate: 2023-03-15
permalink: >-
daily/2023/03/15/the-benefits-of-automation
archive/2023/03/15/the-benefits-of-automation
tags:
- automation
---
I've been working on a project with a client, using [Fractal](https://fractal.build) for our component library. I've been working on it locally but yesterday I needed to make it public for the client to review the work I've done.
I recently added `node` support to my [build configuration file generator](https://www.oliverdavies.uk/daily/2023/03/04/why-i-built-a-tool-to-generate-configuration-files) and used that to generate and use a consistent set of configuration files for a Fractal project.
I recently added `node` support to my [build configuration file generator](https://www.oliverdavies.uk/archive/2023/03/04/why-i-built-a-tool-to-generate-configuration-files) and used that to generate and use a consistent set of configuration files for a Fractal project.
I've used Terraform in [some codebases](https://github.com/opdavies/rebuilding-acquia) to create and configure AWS resources like S3 buckets and Cloudfront distributions, so I was able to use that to create what I needed as well as adding the DNS record for a new subdomain to access Cloudfront.

View file

@ -3,7 +3,7 @@ title: >
CI pipelines should start locally
pubDate: 2023-04-24
permalink: >-
daily/2023/04/24/ci-pipelines-should-start-locally
archive/2023/04/24/ci-pipelines-should-start-locally
tags:
- development
- devops

View file

@ -3,7 +3,7 @@ title: >
Write the test backwards
pubDate: 2023-04-27
permalink: >-
daily/2023/04/27/tdd-write-the-test-backwards
archive/2023/04/27/tdd-write-the-test-backwards
tags:
- automated-testing
- test-driven-development

View file

@ -3,7 +3,7 @@ title: >
Only write enough code to get a failing test
pubDate: 2023-05-08
permalink: >-
daily/2023/05/08/only-write-enough-code-to-get-a-failing-test
archive/2023/05/08/only-write-enough-code-to-get-a-failing-test
tags:
- automated-testing
- test-driven-development

View file

@ -10,7 +10,7 @@ tags:
- phpc
---
Compared to Drupal 7, [which is almost at version 100](https://oliverdavies.dev/daily/2023/04/30/will-we-see-drupal-7-100), the release cycle from Drupal 9 onwards has been quite different.
Compared to Drupal 7, [which is almost at version 100](https://oliverdavies.dev/archive/2023/04/30/will-we-see-drupal-7-100), the release cycle from Drupal 9 onwards has been quite different.
We've adopted semantic versioning with new feature releases every six months, and we've already sunsetted Drupal 8 and moved on to Drupal 9 and 10.

View file

@ -3,7 +3,7 @@ title: >
Drupal 9: almost end-of-life already
pubDate: 2023-05-21
permalink: >-
daily/2023/05/21/drupal-9-almost-end-of-life-already
archive/2023/05/21/drupal-9-almost-end-of-life-already
tags:
- drupal
- php

View file

@ -3,7 +3,7 @@ title: >
Should you feature flag everything?
pubDate: 2023-06-13
permalink: >-
daily/2023/06/13/should-you-feature-flag-everything
archive/2023/06/13/should-you-feature-flag-everything
tags:
- feature-flags
---

View file

@ -3,7 +3,7 @@ title: >
Pull requests are great for open-source, but not for teams
pubDate: 2023-08-27
permalink: >-
daily/2023/08/27/pull-requests-are-great-for-open-source
archive/2023/08/27/pull-requests-are-great-for-open-source
tags:
- code-review
- git

View file

@ -3,7 +3,7 @@ title: >
Do you proactively refactor your code?
pubDate: 2023-09-08
permalink: >-
daily/2023/09/08/do-you-proactively-refactor-your-code
archive/2023/09/08/do-you-proactively-refactor-your-code
tags:
- software-development
- refactoring

View file

@ -3,7 +3,7 @@ title: >
Buggy software causes reputational damage
pubDate: 2023-09-21
permalink: >-
daily/2023/09/21/buggy-software-causes-reputational-damage
archive/2023/09/21/buggy-software-causes-reputational-damage
tags:
- software-development
- automated-testing

View file

@ -3,7 +3,7 @@ title: >
Test to save your job
pubDate: 2023-09-24
permalink: >-
daily/2023/09/24/test-to-save-your-job
archive/2023/09/24/test-to-save-your-job
tags:
- software-development
- automated-testing

View file

@ -3,7 +3,7 @@ title: >
Separating environments with feature flags
pubDate: 2023-09-27
permalink: >-
daily/2023/09/27/separating-environments-with-feature-flags
archive/2023/09/27/separating-environments-with-feature-flags
tags:
- software-development
- feature-flags

View file

@ -12,7 +12,7 @@ tags:
I've just added the hundredth test to a client project I'm developing.
I'm following [the outside-in approach](https://www.oliverdavies.uk/daily/2023/09/14/outside-in-or-inside-out), starting with functional tests and moving to kernel and unit tests where needed - meaning more functional tests and fewer unit tests - most of which cover some complex search functionality containing custom blocks, forms, endpoints for autocomplete lists, pattern matching and results pages, which is the core functionality of the project.
I'm following [the outside-in approach](https://www.oliverdavies.uk/archive/2023/09/14/outside-in-or-inside-out), starting with functional tests and moving to kernel and unit tests where needed - meaning more functional tests and fewer unit tests - most of which cover some complex search functionality containing custom blocks, forms, endpoints for autocomplete lists, pattern matching and results pages, which is the core functionality of the project.
Here's the breakdown of the different types of tests:

View file

@ -3,7 +3,7 @@ title: >
Why use Composer to manage Drupal dependencies?
pubDate: 2023-10-10
permalink: >-
daily/2023/10/10/why-use-composer-to-manage-drupal-dependencies
archive/2023/10/10/why-use-composer-to-manage-drupal-dependencies
tags:
- software-development
- drupal

View file

@ -3,7 +3,7 @@ title: >
Do you need to write tests for small or short-lived projects?
pubDate: 2023-10-14
permalink: >-
daily/2023/10/14/do-you-need-to-write-tests-for-small-or-short-lived-projects
archive/2023/10/14/do-you-need-to-write-tests-for-small-or-short-lived-projects
tags:
- software-development
- automated-testing

View file

@ -3,7 +3,7 @@ title: >
Automated tests prevent regressions when upgrading
pubDate: 2023-10-25
permalink: >-
daily/2023/10/25/automated-tests-prevent-regressions-when-upgrading
archive/2023/10/25/automated-tests-prevent-regressions-when-upgrading
tags:
- software-development
- php

View file

@ -3,7 +3,7 @@ title: >
Why your company should contribute to open-source software
pubDate: 2023-11-03
permalink: >-
daily/2023/11/03/why-your-company-should-contribute-to-open-source-software
archive/2023/11/03/why-your-company-should-contribute-to-open-source-software
tags:
- software-development
- open-source

View file

@ -33,4 +33,4 @@ Rebuilding and re-inventing would mean immediately avoiding the technical debt a
There isn't a right and wrong answer, and it will depend on the thoughts and objectives of the team and business.
[yesterday]: https://www.oliverdavies.uk/daily/2023/12/08/dont-just-rewrite
[yesterday]: https://www.oliverdavies.uk/archive/2023/12/08/dont-just-rewrite

View file

@ -3,7 +3,7 @@ title: >
Building your own in-house Drupal distribution
pubDate: 2023-12-15
permalink: >-
daily/2023/12/15/building-your-own-in-house-drupal-distribution
archive/2023/12/15/building-your-own-in-house-drupal-distribution
tags:
- software-development
- php
@ -20,4 +20,4 @@ Alternatively, maybe keep a template composer.json file to base new projects on
That could declare the modules and themes you want to include, without the additional overhead.
[drupal distribution](https://www.oliverdavies.uk/daily/2023/12/14/save-time-and-effort-with-drupal-distributions)
[drupal distribution](https://www.oliverdavies.uk/archive/2023/12/14/save-time-and-effort-with-drupal-distributions)

View file

@ -27,4 +27,4 @@ You can enable and disable rules as needed but, like setting the PHPStan level,
It depends on the code being tested and the preference of the team, though I find the stricter the rules, the less bugs there are.
[extension]: https://github.com/phpstan/phpstan-strict-rules
[yesterday]: {{site.url}}/daily/2024/05/04/strict-typing-in-php
[yesterday]: {{site.url}}/archive/2024/05/04/strict-typing-in-php

View file

@ -36,4 +36,4 @@ And I learned something new about Git at the same time.
[1]: https://git-scm.com/docs/git-merge#Documentation/git-merge.txt---allow-unrelated-histories
[3]: https://github.com/opdavies/oliverdavies.uk
[4]: {{site.url}}/daily/2024/07/31/why-i-use-linux
[5]: {{site.url}}/daily/2023/08/08/8-years-of-dotfiles
[5]: {{site.url}}/archive/2023/08/08/8-years-of-dotfiles

View file

@ -33,5 +33,5 @@ I'm not going to reset all my configuration files to their default values, but I
The same as in an application, I don't want to add modules or plugins that I'm not going to use or aren't adding value, and I want to ensure I'm making the most of what the software offers.
[0]: {{site.url}}/daily/2023/08/08/8-years-of-dotfiles
[0]: {{site.url}}/archive/2023/08/08/8-years-of-dotfiles
[1]: https://github.com/opdavies/dotfiles.nix

View file

@ -30,6 +30,6 @@ This means that I can easily generate diagrams and store in the codebase too, an
[Here's one I did for the Build Configs tool][3], which I recently open-sourced, and that GitHub renders by default (you can click the 'Code' tab to see the code for the chart).
[0]: {{site.url}}/daily/2024/08/16/what-are-err--req-and-res
[1]: {{site.url}}/daily/2022/09/23/adrs-technical-design-documents
[1]: {{site.url}}/archive/2022/09/23/adrs-technical-design-documents
[2]: https://github.com/mermaid-js/mermaid
[3]: https://github.com/opdavies/build-configs/blob/f02fce7ff5b5cff202ec8b893a4b3c7e7c56f3c4/docs/diagram.mmd

View file

@ -29,4 +29,4 @@ Now, if anyone else wanted to use this script, or I wanted to share another scri
[0]: {{site.url}}/daily/2024/08/19/bash-scripting-for-fun-and-profit
[1]: https://github.com/opdavies/dotfiles.nix/blob/a1ef2d1402c9c607e7a3e4427ce125d0cabeddcd/lib/shared/scripts/export-video-list.nix#L12-L31
[2]: {{site.url}}/daily/2022/09/26/experimenting-with-the-nix-package-manager
[2]: {{site.url}}/archive/2022/09/26/experimenting-with-the-nix-package-manager

View file

@ -30,6 +30,6 @@ All emails are sent from my personal email address, so you can press reply and c
[email list]: /daily
[tailwind css]: /presentations/taking-flight-with-tailwind-css
[test driven drupal]: /presentations/tdd-test-driven-drupal
[workshop]: /daily/2024/01/22/tailwind-css-workshop-recording
[workshop]: /archive/2024/01/22/tailwind-css-workshop-recording
{% endblock %}

View file

@ -11,7 +11,7 @@ Thank you for attending my session at DrupalCamp Ghent.
You can view the slides and previous recordings of my [Test Driven Drupal](/talks/tdd-test-driven-drupal) and [Tailwind CSS](/talks/taking-flight-with-tailwind-css) talks on this website.
If you want to learn more, I released a video of the [Tailwind CSS workshop](/daily/2024/01/22/tailwind-css-workshop-recording) I gave for DrupalCamp Florida, and I've created a [free 10-day email course](/atdc) on automated testing in Drupal.
If you want to learn more, I released a video of the [Tailwind CSS workshop](/archive/2024/01/22/tailwind-css-workshop-recording) I gave for DrupalCamp Florida, and I've created a [free 10-day email course](/atdc) on automated testing in Drupal.
## Can we work together?

View file

@ -40,7 +40,7 @@ faqs:
-
- Do you work with Drupal Commerce?
- |-
Yes, I have a lot of experience with Drupal Commerce and have used it for [various types of e-commerce applications](/daily/2024/03/19/drupal-commerce-not-just-for-selling-t-shirts-and-hats).
Yes, I have a lot of experience with Drupal Commerce and have used it for [various types of e-commerce applications](/archive/2024/03/19/drupal-commerce-not-just-for-selling-t-shirts-and-hats).
-
- Is there a limit to how many requests I can have?
- |-