Commit 538dfa2807

538dfa2807ebb82704b2249d337cc9abefde4020

parent: 54339a23f5

Verified · cmc

cmc <hello@cleberg.net> · 2026-06-21 17:42 UTC

fix: resolve spelling issues in pre-2026 posts

Layout: unified · split

content/blog/2018-11-28-aes-encryption.org +3 −3
@@ -23,7 +23,7 @@ Though many papers have been published on the cryptanalysis of AES, the fastest
23single-key attacks on round-reduced AES variants [20, 33] so far are only 23single-key attacks on round-reduced AES variants [20, 33] so far are only
24slightly more powerful than those proposed 10 years ago [23,24]. 24slightly more powerful than those proposed 10 years ago [23,24].
25 25
26- [[http://research.microsoft.com/en-us/projects/cryptanalysis/aesbc.pdf][Bogdonav, et al.]] 26- [[http://research.microsoft.com/en-us/projects/cryptanalysis/aesbc.pdf][Bogdanov, et al.]]
27#+end_quote 27#+end_quote
28 28
29* How Secure is AES? 29* How Secure is AES?
@@ -42,7 +42,7 @@ Someone may know the method of AES, but without the key, they are powerless.
42To obscure and spread the data out, AES creates a substitution-permutation 42To obscure and spread the data out, AES creates a substitution-permutation
43network. Wikipedia has a wonderful [[https://upload.wikimedia.org/wikipedia/commons/thumb/c/cd/SubstitutionPermutationNetwork2.png/468px-SubstitutionPermutationNetwork2.png][example of an SP network]] available. This 43network. Wikipedia has a wonderful [[https://upload.wikimedia.org/wikipedia/commons/thumb/c/cd/SubstitutionPermutationNetwork2.png/468px-SubstitutionPermutationNetwork2.png][example of an SP network]] available. This
44network sends the data through a set of S boxes (using the unique key) to 44network sends the data through a set of S boxes (using the unique key) to
45substitute the bits with another block of bits. Then, a P box will permutate, or 45substitute the bits with another block of bits. Then, a P box will permute, or
46rearrange, the bits. This is performed numerous times, with the last round 46rearrange, the bits. This is performed numerous times, with the last round
47deriving the key. For AES, the key size specifies the number of transformation 47deriving the key. For AES, the key size specifies the number of transformation
48rounds: 10, 12, and 14 rounds for 128-bit, 192-bit, and 256-bit keys, 48rounds: 10, 12, and 14 rounds for 128-bit, 192-bit, and 256-bit keys,
@@ -63,7 +63,7 @@ respectively.
63This process does not necessarily stop after one full round. Steps 2 through 5 63This process does not necessarily stop after one full round. Steps 2 through 5
64will repeat for the number of rounds specified by the key. However, the final 64will repeat for the number of rounds specified by the key. However, the final
65round excludes the MixColumns step. As you can see, this is a fairly complex 65round excludes the MixColumns step. As you can see, this is a fairly complex
66process. One must have a solid understanding of general mathematic principles to 66process. One must have a solid understanding of general mathematical principles to
67fully understand how the sequence works (and to even attempt to find a 67fully understand how the sequence works (and to even attempt to find a
68weakness). 68weakness).
69 69
content/blog/2018-11-28-cpp-compiler.org +4 −4
@@ -55,7 +55,7 @@ C++ preprocessor includes the code from all the header files, such as =#include
55=iostream= header. This tells the computer that you want to use the =iostream= 55=iostream= header. This tells the computer that you want to use the =iostream=
56standard library, which contains classes and functions written in the core 56standard library, which contains classes and functions written in the core
57language. This specific header allows you to manipulate input/output streams. 57language. This specific header allows you to manipulate input/output streams.
58After all this, you'll end up which a temporary file that contains the expanded 58After all this, you'll end up with a temporary file that contains the expanded
59source code. 59source code.
60 60
61In the example of the C++ code above, the =iostream= class would be included in 61In the example of the C++ code above, the =iostream= class would be included in
@@ -66,7 +66,7 @@ the expanded code.
66After the compiler expands the code, the compiler comes into play. The compiler 66After the compiler expands the code, the compiler comes into play. The compiler
67takes the C++ code and converts this code into the assembly language, understood 67takes the C++ code and converts this code into the assembly language, understood
68by the platform. You can see this in action if you head over to the [[https://godbolt.org][GodBolt 68by the platform. You can see this in action if you head over to the [[https://godbolt.org][GodBolt
69Compiler Explorer]], which shows the compiled converting C++ into assembly 69Compiler Explorer]], which shows the compiler converting C++ into assembly
70dynamically. 70dynamically.
71 71
72For example, the =Hello, world!= code snippet above compiles into the following 72For example, the =Hello, world!= code snippet above compiles into the following
@@ -116,13 +116,13 @@ _GLOBAL__sub_I_main:
116 116
117*** Step 3 117*** Step 3
118 118
119Third, the compiled assembles the assembly code into the object code for the 119Third, the compiler assembles the assembly code into the object code for the
120platform. Essentially, this is when the compiler takes the assembly code and 120platform. Essentially, this is when the compiler takes the assembly code and
121assembles it into machine code in a binary format. After researching this 121assembles it into machine code in a binary format. After researching this
122online, I figured out that a lot of compilers will allow you to stop compilation 122online, I figured out that a lot of compilers will allow you to stop compilation
123at this step. This would be useful for compiling each source code file 123at this step. This would be useful for compiling each source code file
124separately. This saves time later if a single file changes, since the developer 124separately. This saves time later if a single file changes, since the developer
125will only need to re-compile single file. 125will only need to re-compile a single file.
126 126
127*** Step 4 127*** Step 4
128 128
content/blog/2020-02-09-cryptography-basics.org +1 −1
@@ -149,7 +149,7 @@ encryption method for Windows Active Directory (AD).
149* Cybersecurity Controls 149* Cybersecurity Controls
150 150
151If you're someone who needs solutions on how to control risks associated with 151If you're someone who needs solutions on how to control risks associated with
152utilizing a crytograhpic system, start with these basic controls: 152utilizing a cryptographic system, start with these basic controls:
153 153
154- *Policies:* A policy on the use of cryptographic controls for protection of 154- *Policies:* A policy on the use of cryptographic controls for protection of
155 information is implemented and is in accordance with organizational 155 information is implemented and is in accordance with organizational
content/blog/2020-05-03-homelab.org +1 −1
@@ -91,7 +91,7 @@ modem supports DOCSIS 3.0, which is something that I definitely wanted as a
91minimum. The Sagecom router is also standard, no fancy bells or whistles. 91minimum. The Sagecom router is also standard, no fancy bells or whistles.
92However, it does support the dynamic host configuration protocol (DHCP) for 92However, it does support the dynamic host configuration protocol (DHCP) for
93internet protocol version 4 (IPv4) and internet protocol version 6 (IPv6), which 93internet protocol version 4 (IPv4) and internet protocol version 6 (IPv6), which
94is something iyou can use to route all household traffic through a pi-hole or 94is something you can use to route all household traffic through a pi-hole or
95firewall. 95firewall.
96 96
97** TP-Link EAP 97** TP-Link EAP
content/blog/2021-03-19-clone-github-repos.org +1 −1
@@ -117,7 +117,7 @@ do this, let's create another bash script:
117nano change_remote_urls.sh 117nano change_remote_urls.sh
118#+end_src 118#+end_src
119 119
120Past the following information and be sure to change the URL (uniform resource 120Paste the following information and be sure to change the URL (uniform resource
121locator) information to whichever host you are moving to. For this example, I am 121locator) information to whichever host you are moving to. For this example, I am
122looping through all of my cloned GitHub directories and changing them to 122looping through all of my cloned GitHub directories and changing them to
123Sourcehut (e.g. =<YOUR_NEW_REMOTE_URL>= -> =git@git.sr.ht:~myusername=). 123Sourcehut (e.g. =<YOUR_NEW_REMOTE_URL>= -> =git@git.sr.ht:~myusername=).
content/blog/2021-08-25-audit-sampling.org +1 −1
@@ -70,7 +70,7 @@ goes, we will trust that these functions are mathematically random.
70 70
71As mentioned in the intro, sampling is only an effective method of auditing when 71As mentioned in the intro, sampling is only an effective method of auditing when
72it truly represents the entire population. While some audit departments or firms 72it truly represents the entire population. While some audit departments or firms
73pmay consider certain judgmental sample sizes to be adequate, you may need to 73may consider certain judgmental sample sizes to be adequate, you may need to
74rely on statistically-significant confidence levels of sample testing at certain 74rely on statistically-significant confidence levels of sample testing at certain
75 75
76points. I will demonstrate both here. For statistically-significant confidence 76points. I will demonstrate both here. For statistically-significant confidence
content/blog/2022-03-26-ssh-mfa.org +1 −1
@@ -13,7 +13,7 @@ for other security measures, such as:
13- Disable root SSH 13- Disable root SSH
14- Disable SSH password authentication 14- Disable SSH password authentication
15- Allow only certain users to login via SSH 15- Allow only certain users to login via SSH
16- Allow SSH only from certain internet protocol (IP) addressess 16- Allow SSH only from certain internet protocol (IP) addresses
17 17
18However, MFA can be added as an additional security measure to ensure that your 18However, MFA can be added as an additional security measure to ensure that your
19server is protected. This is especially important if you need to allow password 19server is protected. This is especially important if you need to allow password
content/blog/2023-06-08-self-hosting-baikal.org +1 −1
@@ -47,7 +47,7 @@ docker container:
47sudo docker-compose up -d 47sudo docker-compose up -d
48#+end_src 48#+end_src
49 49
50* Intial Setup 50* Initial Setup
51 51
52As long as no issues came up when starting the container, you should be 52As long as no issues came up when starting the container, you should be
53able to visit the server's set-up page at =http://<server_ip>:<port>=. 53able to visit the server's set-up page at =http://<server_ip>:<port>=.
content/blog/2023-10-17-self-hosting-anonymousoverflow.org +1 −1
@@ -61,7 +61,7 @@ Let's start by creating a configuration file.
61sudo nano /etc/nginx/sites-available/ao 61sudo nano /etc/nginx/sites-available/ao
62#+end_src 62#+end_src
63 63
64Within this file, paste the following content and repace 64Within this file, paste the following content and replace
65=ao.example.com= with your URL. You may need to update the SSL 65=ao.example.com= with your URL. You may need to update the SSL
66certificate statements if your certificates are in a different location. 66certificate statements if your certificates are in a different location.
67 67
content/blog/2023-11-08-scli.org +1 −1
@@ -132,7 +132,7 @@ scli
132* Configuration 132* Configuration
133 133
134Lastly, there are a number of configuration options that you can pass 134Lastly, there are a number of configuration options that you can pass
135via the command or in the =~/.config/sclirc= file. See the Github README 135via the command or in the =~/.config/sclirc= file. See the GitHub README
136for more information on configuration options. 136for more information on configuration options.
137 137
138#+begin_src sh 138#+begin_src sh
content/blog/2024-01-08-dont-say-hello.org +1 −1
@@ -24,5 +24,5 @@ did not contain any indication of the purpose of the conversation. I also
24noticed that a few of the users were responsible for the large majority of the 24noticed that a few of the users were responsible for the large majority of the
25cliffhangers. 25cliffhangers.
26 26
27There's no real point to this post, just a desparate request for people to 27There's no real point to this post, just a desperate request for people to
28please stop doing this. 28please stop doing this.
content/blog/2024-01-13-local-llm.org +3 −3
@@ -34,7 +34,7 @@ to install and use so far:
34[[https://ollama.ai/][Ollama]] is a simple Go application for macOS and Linux that can run various LLMs 34[[https://ollama.ai/][Ollama]] is a simple Go application for macOS and Linux that can run various LLMs
35locally. 35locally.
36 36
37For macOS, you can download the pplication on the [[https://ollama.ai/download/mac][Ollama download page]] and 37For macOS, you can download the application on the [[https://ollama.ai/download/mac][Ollama download page]] and
38install it by unzipping the =Ollama.app= file and moving it to the 38install it by unzipping the =Ollama.app= file and moving it to the
39=Applications= folder. 39=Applications= folder.
40 40
@@ -49,7 +49,7 @@ mv ~/Downloads/Ollama.app /Applications/
49 49
50After running the app, the app will ask you to open a terminal and run the 50After running the app, the app will ask you to open a terminal and run the
51default =llama2= model, which will open an interactive chat session in the 51default =llama2= model, which will open an interactive chat session in the
52terminal. You can startfully using the application at this point. 52terminal. You can start using the application at this point.
53 53
54If you don't want to use the default =llama2= model, you can download and run 54If you don't want to use the default =llama2= model, you can download and run
55additional models found on the [[https://ollama.ai/library][Models]] page. 55additional models found on the [[https://ollama.ai/library][Models]] page.
@@ -84,6 +84,6 @@ Once you have a file downloaded, you simply create a new chat and select the
84downloaded model file and ensure the inference matches the requirement in the 84downloaded model file and ensure the inference matches the requirement in the
85=models.md= file. 85=models.md= file.
86 86
87[[https://github.com/AugustDev/enchanted][Enchanted]] is also an iOS for private AI models, but it requires a public-facing 87[[https://github.com/AugustDev/enchanted][Enchanted]] is also an iOS app for private AI models, but it requires a public-facing
88Ollama API, which did not meet my "on device requirement." Nonetheless, it's an 88Ollama API, which did not meet my "on device requirement." Nonetheless, it's an
89interesting looking app and I will likely set it up to test soon. 89interesting looking app and I will likely set it up to test soon.
content/blog/2024-02-06-zfs.org +2 −2
@@ -146,7 +146,7 @@ sudo zpool add -f tank mirror /dev/sdX /dev/sdY
146I added two 8TB hard drives and this process took around 10 seconds to complete. 146I added two 8TB hard drives and this process took around 10 seconds to complete.
147 147
148When viewing the pool again, you can see that the pool has now doubled in size. 148When viewing the pool again, you can see that the pool has now doubled in size.
149We have 14.3 TB useable space and the same space used for mirroring. 149We have 14.3 TB usable space and the same space used for mirroring.
150 150
151#+begin_src sh 151#+begin_src sh
152> zfs list 152> zfs list
@@ -237,7 +237,7 @@ sudo zpool add tank mirror /dev/sdc /dev/sdd
237When we list the pool again, we can see that our size is now updated to 237When we list the pool again, we can see that our size is now updated to
238approximately 22TB. This represents my hard drives totalling 45.6TB when shown 238approximately 22TB. This represents my hard drives totalling 45.6TB when shown
239with =fdisk -l=, with a Raid10 configuration using 22TB for mirroring and 22TB 239with =fdisk -l=, with a Raid10 configuration using 22TB for mirroring and 22TB
240of useable space. 240of usable space.
241 241
242#+begin_src sh 242#+begin_src sh
243> zfs list 243> zfs list
content/blog/2024-03-13-doom-emacs.org +2 −2
@@ -8,7 +8,7 @@
8 8
9These screenshots are showing a project opened with projectile, a treemacs side 9These screenshots are showing a project opened with projectile, a treemacs side
10pane open with the project contents, multiple buffers tiled next to each other, 10pane open with the project contents, multiple buffers tiled next to each other,
11and the help pane open at the bottomm. 11and the help pane open at the bottom.
12 12
13The themes are =doom-homage-white= and =doom-homage-black=. 13The themes are =doom-homage-white= and =doom-homage-black=.
14 14
@@ -42,7 +42,7 @@ that would have helped me learn it faster had I known where to start.
42This post focuses on [[https://github.com/doomemacs/doomemacs][Doom Emacs]], which is an Emacs framework that provides an 42This post focuses on [[https://github.com/doomemacs/doomemacs][Doom Emacs]], which is an Emacs framework that provides an
43alternative experience to the vanilla [[https://www.gnu.org/software/emacs/][GNU Emacs]]. 43alternative experience to the vanilla [[https://www.gnu.org/software/emacs/][GNU Emacs]].
44 44
45The [[https://github.com/doomemacs/doomemacs/blob/master/docs/getting_started.org][Getting Start Guide]] has an extremely detailed walkthrough of installation 45The [[https://github.com/doomemacs/doomemacs/blob/master/docs/getting_started.org][Getting Started Guide]] has an extremely detailed walkthrough of installation
46for all systems, so please refer to that guide for up-to-date instructions. 46for all systems, so please refer to that guide for up-to-date instructions.
47 47
48I chose to install on macOS, using the Homebrew option with the 48I chose to install on macOS, using the Homebrew option with the
content/blog/2024-03-15-self-hosting-ddns-updater.org +1 −1
@@ -15,7 +15,7 @@ If you've read any of my other posts, you'll notice that I have been searching
15for and using a few different DDNS updating solutions for years. You'll also 15for and using a few different DDNS updating solutions for years. You'll also
16notice that I love any projects that offer a Docker Compose solution. 16notice that I love any projects that offer a Docker Compose solution.
17 17
18Luckily, DDNS Upater fits both of these preferences. 18Luckily, DDNS Updater fits both of these preferences.
19 19
20** Installation 20** Installation
21 21
content/blog/2024-03-29-org-blog.org +1 −1
@@ -245,7 +245,7 @@ My only current complaints are:
245 245
2461. Errors messages are not helpful. It takes work to determine what the error is 2461. Errors messages are not helpful. It takes work to determine what the error is
247 and where it's coming from. I generally have to sit and watch the build 247 and where it's coming from. I generally have to sit and watch the build
248 process to see the file that weblorg pubslishes right before the error 248 process to see the file that weblorg publishes right before the error
249 occurred. 249 occurred.
2502. The build process re-builds every single file on each run, which takes a long 2502. The build process re-builds every single file on each run, which takes a long
251 time for a blog of my size. See below for the last time I measured. 251 time for a blog of my size. See below for the last time I measured.
content/blog/2024-04-08-docker-local-web-server.org +1 −1
@@ -113,7 +113,7 @@ server {
113 113
114I am currently blogging with [[https://emacs.love/weblorg/][weblorg]], which uses a custom =publish.el= file to 114I am currently blogging with [[https://emacs.love/weblorg/][weblorg]], which uses a custom =publish.el= file to
115build the static site. Within this file, I have configured my deployment process 115build the static site. Within this file, I have configured my deployment process
116to check for the =ENV= variable in thesh and if it's set to =prod=, the script 116to check for the =ENV= variable in the shell and if it's set to =prod=, the script
117will set the base URLs to =https://cleberg.net=. If not, it sets the base URLs 117will set the base URLs to =https://cleberg.net=. If not, it sets the base URLs
118to =localhost:8000= (which matches the port used in the container above). 118to =localhost:8000= (which matches the port used in the container above).
119 119
content/blog/2025-04-05-git-mirror.org +1 −1
@@ -7,7 +7,7 @@
7This is a short post detailing how I maintained repositories on GitHub and 7This is a short post detailing how I maintained repositories on GitHub and
8mirrors on GitLab - including both public and private repositories. 8mirrors on GitLab - including both public and private repositories.
9 9
10Since GitLab locks pull-only mirrors behing their Premium and Ultimate tiers, I 10Since GitLab locks pull-only mirrors behind their Premium and Ultimate tiers, I
11found a different solution. 11found a different solution.
12 12
13* Creating Mirrors 13* Creating Mirrors
content/blog/2025-06-02-private-ios-apps.org +3 −3
@@ -65,7 +65,7 @@ for my purposes.
65This allows for access to your email without installing an application that 65This allows for access to your email without installing an application that
66access native APIs or other potential data sources you may be concerned about. 66access native APIs or other potential data sources you may be concerned about.
67This is especially important if you're concerned about allowing permissions to 67This is especially important if you're concerned about allowing permissions to
68device APIs, non-reproducible buils from the App Store, or mobile device 68device APIs, non-reproducible builds from the App Store, or mobile device
69fingerprints. 69fingerprints.
70 70
71Lastly, [[https://blog.thunderbird.net/2025/05/thunderbird-for-mobile-april-2025-progress-report/][Thunderbird iOS]] is under development. Keep an eye out for an alpha or 71Lastly, [[https://blog.thunderbird.net/2025/05/thunderbird-for-mobile-april-2025-progress-report/][Thunderbird iOS]] is under development. Keep an eye out for an alpha or
@@ -79,7 +79,7 @@ releases for iOS, I will probably use that.
79 79
80* Browsers 80* Browsers
81 81
82Your choise of browser is very important if you're concerned with privacy. Any 82Your choice of browser is very important if you're concerned with privacy. Any
83and all links you click will be opened in your default browser, so you need to 83and all links you click will be opened in your default browser, so you need to
84make sure you choose the right browser and configure it properly. Trackers, ads, 84make sure you choose the right browser and configure it properly. Trackers, ads,
85fingerprints, and data leaks are constant threats that should be avoided when 85fingerprints, and data leaks are constant threats that should be avoided when
@@ -98,7 +98,7 @@ possible.
98- [[https://brave.com/][Brave]] - Another chromium-based privacy browser. Can sync with other Brave 98- [[https://brave.com/][Brave]] - Another chromium-based privacy browser. Can sync with other Brave
99 browsers via a secure linking process (no account). Fully-featured and great 99 browsers via a secure linking process (no account). Fully-featured and great
100 privacy defaults. There have been some concerns in the past about the company 100 privacy defaults. There have been some concerns in the past about the company
101 behind Brave, but I still think it's a decent option for most peoplel. 101 behind Brave, but I still think it's a decent option for most people.
102- [[https://www.apple.com/safari/][Safari]] (with caveats) - Great option if the browsers above don't work for you. 102- [[https://www.apple.com/safari/][Safari]] (with caveats) - Great option if the browsers above don't work for you.
103 Be sure to read PrivacyGuide's [[https://www.privacyguides.org/en/mobile-browsers/#safari-ios][Safari]] section for more information on what you 103 Be sure to read PrivacyGuide's [[https://www.privacyguides.org/en/mobile-browsers/#safari-ios][Safari]] section for more information on what you
104 need to do to lock it down before relying on it full time. 104 need to do to lock it down before relying on it full time.
content/blog/2025-09-04-website-redesign.org +6 −6
@@ -20,7 +20,7 @@ https://img.cleberg.net/blog/20250905-human-website-design/after.webp
20 20
21* Inspiration 21* Inspiration
22 22
23I've written numerous times on this blog about minimaliasm, so it shouldn't 23I've written numerous times on this blog about minimalism, so it shouldn't
24surprise any readers here that I've redesigned my website again for even more 24surprise any readers here that I've redesigned my website again for even more
25minimalism. However, it's a bit different this time as I've historically 25minimalism. However, it's a bit different this time as I've historically
26designed my website to be very computer design driven (think monospace fonts and 26designed my website to be very computer design driven (think monospace fonts and
@@ -98,10 +98,10 @@ blue accent colors for inline code and links, respectively.
98} 98}
99#+end_src 99#+end_src
100 100
101After the update, the focus of the color scheme is focused on a more natual, 101After the update, the focus of the color scheme is focused on a more natural,
102paper-like effect. The light mode focuses on a yellow/orange-tinted paper-like 102paper-like effect. The light mode focuses on a yellow/orange-tinted paper-like
103substance, with a dark red accent and straightfoward design. Likewise, the dark 103substance, with a dark red accent and straightforward design. Likewise, the dark
104mode scheme uses a charcoal-like color scheme with very simliar accent colors. 104mode scheme uses a charcoal-like color scheme with very similar accent colors.
105 105
106#+begin_src css 106#+begin_src css
107:root { 107:root {
@@ -138,7 +138,7 @@ a comfortable and intentional page layout.
138That being said, let's dive into the changes I've made so far: 138That being said, let's dive into the changes I've made so far:
139 139
140- *Font style*: I've updated the font style from a monospace font stack to a 140- *Font style*: I've updated the font style from a monospace font stack to a
141 serif font stack. This created a more natual flow across the screen and less 141 serif font stack. This created a more natural flow across the screen and less
142 rigid constraints on the area of the fonts. 142 rigid constraints on the area of the fonts.
143- *Font size*: Related to font style, I naturally had to update the font size as 143- *Font size*: Related to font style, I naturally had to update the font size as
144 well. This allows for natural reading breaks for the eyes, spacing between 144 well. This allows for natural reading breaks for the eyes, spacing between
@@ -164,7 +164,7 @@ in mind:
164 164
165- *Color palettes*: The current scheme is good but not great. I'd love to find a 165- *Color palettes*: The current scheme is good but not great. I'd love to find a
166 color palette that feels like reading natural paper. 166 color palette that feels like reading natural paper.
167- *Emphasized text*: Are links legible enough? Is there enought contrast between 167- *Emphasized text*: Are links legible enough? Is there enough contrast between
168 quotes, inline code, links, etc.? 168 quotes, inline code, links, etc.?
169- *Spacing*: Font sizes, padding, and potentially reducing content. 169- *Spacing*: Font sizes, padding, and potentially reducing content.
170- *Layout*: Is there a better structure to this document that would allow for 170- *Layout*: Is there a better structure to this document that would allow for
content/blog/2025-09-25-minimalist-website-redesign.org +1 −1
@@ -28,7 +28,7 @@ I /briefly/ touched on my inspiration in the last post (hint: wabi-sabi, sho ga
28nai, brutalism, minimalism), but I didn't expand on the /why/ for these 28nai, brutalism, minimalism), but I didn't expand on the /why/ for these
29concepts. 29concepts.
30 30
31So, why? The minimalismtic approach to web design has resonated with me for a 31So, why? The minimalistic approach to web design has resonated with me for a
32long time. But why minimalism? 32long time. But why minimalism?
33 33
34Officially, "the concept of minimalist architecture is to strip everything down 34Officially, "the concept of minimalist architecture is to strip everything down
content/blog/2025-12-20-self-hosting-home-assistant.org +1 −1
@@ -80,7 +80,7 @@ Assistant Hostname=, =Cloudflare Tunnel Name=, and the =Cloudflare Tunnel Token=
80within the Configuration tab of the installed add-on. Once configured, I 80within the Configuration tab of the installed add-on. Once configured, I
81restarted Home Assistant to start fresh. 81restarted Home Assistant to start fresh.
82 82
83Next, I opened Cloudflare and configured the tunnel to expore the 83Next, I opened Cloudflare and configured the tunnel to expose the
84=ha.example.com= domain to the =homeassistant.local:8123= address in 84=ha.example.com= domain to the =homeassistant.local:8123= address in
85Cloudflare's Zero Trust dashboard. 85Cloudflare's Zero Trust dashboard.
86 86