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