oliverdavies.uk/content/node.46b8861e-c2e4-49ef-8b79-fb14effaef6a.yml

88 lines
4.8 KiB
YAML

uuid:
- value: 46b8861e-c2e4-49ef-8b79-fb14effaef6a
langcode:
- value: en
type:
- target_id: daily_email
target_type: node_type
target_uuid: 8bde1f2f-eef9-4f2d-ae9c-96921f8193d7
revision_timestamp:
- value: '2025-05-11T09:00:08+00:00'
revision_uid:
- target_type: user
target_uuid: b8966985-d4b2-42a7-a319-2e94ccfbb849
revision_log: { }
status:
- value: true
uid:
- target_type: user
target_uuid: b8966985-d4b2-42a7-a319-2e94ccfbb849
title:
- value: 'To configure or not to configure'
created:
- value: '2024-08-08T00:00:00+00:00'
changed:
- value: '2025-05-11T09:00:08+00:00'
promote:
- value: false
sticky:
- value: false
default_langcode:
- value: true
revision_translation_affected:
- value: true
path:
- alias: /daily/2024/08/08/to-configure-or-not-to-configure
langcode: en
body:
- value: |
<p>It's been <a href="/daily/2023/08/08/8-years-of-dotfiles">more than nine years</a> since I started <a href="https://github.com/opdavies/dotfiles.nix">my dotfiles repository</a>, which is a collection of configuration files for tools I use.</p>
<p>Originally containing my <code>.gitconfig</code> configuration file for Git, it now contains my configuration for Neovim, tmux, Git and a lot more.</p>
<p>One of the things I like is being able to see and read other peoples' dotfiles and take inspiration from their configurations.</p>
<p>I see some configurations that are very complex and customised, and some which are simpler.</p>
<p>Recently, I've been thinking about how much customisation is too much, and moving towards a more minimal configuration.</p>
<p>This isn't specific to command-line tools and also applies to customising GUI programs such as PhpStorm or VSCode.</p>
<p>A more complex configuration means more code to maintain.</p>
<p>It's more difficult to work on different computers, whether you're pair or mob programming, or working on a remote server. Would you still be productive if you didn't have all your configurations?</p>
<p>If you've changed the default behaviour of a command, such as not allowing merge commits in Git or rebasing by default, if someone doesn't have that same option, is that going to cause confusion or introduce inconsistencies?</p>
<p>I'm not going to reset all my configuration files to their default values, but I'll continue to review and decide whether I want to customise something on a case by case basis and whether adding it - especially if it's a larger addition, such as adding a Vim plugin - is worth the maintenance overhead.</p>
<p>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.</p>
format: full_html
processed: |
<p>It's been <a href="/daily/2023/08/08/8-years-of-dotfiles">more than nine years</a> since I started <a href="https://github.com/opdavies/dotfiles.nix">my dotfiles repository</a>, which is a collection of configuration files for tools I use.</p>
<p>Originally containing my <code>.gitconfig</code> configuration file for Git, it now contains my configuration for Neovim, tmux, Git and a lot more.</p>
<p>One of the things I like is being able to see and read other peoples' dotfiles and take inspiration from their configurations.</p>
<p>I see some configurations that are very complex and customised, and some which are simpler.</p>
<p>Recently, I've been thinking about how much customisation is too much, and moving towards a more minimal configuration.</p>
<p>This isn't specific to command-line tools and also applies to customising GUI programs such as PhpStorm or VSCode.</p>
<p>A more complex configuration means more code to maintain.</p>
<p>It's more difficult to work on different computers, whether you're pair or mob programming, or working on a remote server. Would you still be productive if you didn't have all your configurations?</p>
<p>If you've changed the default behaviour of a command, such as not allowing merge commits in Git or rebasing by default, if someone doesn't have that same option, is that going to cause confusion or introduce inconsistencies?</p>
<p>I'm not going to reset all my configuration files to their default values, but I'll continue to review and decide whether I want to customise something on a case by case basis and whether adding it - especially if it's a larger addition, such as adding a Vim plugin - is worth the maintenance overhead.</p>
<p>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.</p>
summary: null
field_daily_email_cta: { }