From c26c66038406c0fb05cc05060f5ecf5340b7d9fd Mon Sep 17 00:00:00 2001 From: Matthias Date: Wed, 23 Sep 2026 12:03:33 +0200 Subject: [PATCH] Fix blog headline capitalization and typos --- content/2009/running-legacy-code/index.md | 4 +- .../index.md | 6 +- content/2011/are-you-a-programmer/index.md | 2 +- content/2017/boxes-and-trees/index.md | 6 +- content/2017/digitial-clocks/index.md | 4 +- content/2017/future-of-rust/index.md | 4 +- content/2017/go-vs-rust/index.md | 12 ++-- content/2017/hacktoberfest/index.md | 14 ++--- content/2017/image-previews/index.md | 2 +- content/2017/makefiles/index.md | 12 ++-- content/2017/obsolete/index.md | 10 ++-- .../2017/professional-programming/index.md | 14 ++--- content/2017/rust-for-rubyists/index.md | 12 ++-- content/2017/rust-url-shortener/index.md | 18 +++--- content/2017/why-i-love-programming/index.md | 16 +++--- content/2017/why-type-systems-matter/index.md | 10 ++-- content/2017/yes/index.md | 6 +- content/2018/cargo-inspect/index.md | 12 ++-- content/2018/excel/index.md | 2 +- content/2018/fastcat/index.md | 8 +-- content/2018/functional-mathematics/index.md | 14 ++--- content/2018/github/index.md | 10 ++-- content/2018/go-io-testing/index.md | 6 +- content/2018/keyboard/index.md | 10 ++-- content/2018/ls/index.md | 14 ++--- content/2018/rust-2018/index.md | 10 ++-- content/2018/ten-years-of-vim/index.md | 6 +- .../maybe-you-dont-need-kubernetes/index.md | 6 +- content/2019/tinysearch/index.md | 8 +-- content/2020/cratesio/index.md | 6 +- content/2020/folklore/index.md | 18 +++--- content/2020/go-is-not-simple/foo.md | 6 +- content/2020/go-is-not-simple/index.md | 12 ++-- content/2020/perf/index.md | 12 ++-- content/2020/review/index.md | 14 ++--- content/2020/sponsors/index.md | 6 +- content/2020/timelapse/index.md | 2 +- content/2020/unix-microservices/index.md | 6 +- content/2021/codeprints/index.md | 8 +-- content/2021/first-business/index.md | 2 +- content/2021/history/index.md | 14 ++--- content/2021/oss-money/index.md | 2 +- content/2021/sleep/index.md | 14 ++--- content/2021/uber-of-poland/index.md | 2 +- content/2022/alloc/index.md | 56 +++++++++---------- content/2022/look/index.md | 4 +- content/2022/zerocal/index.md | 16 +++--- content/2023/cursed-rust/index.md | 8 +-- content/2023/move-fast-rust/index.md | 4 +- content/2024/asking-better-questions/index.md | 18 +++--- content/2024/follow-the-hackers/index.md | 4 +- .../2024/move-slow-and-fix-things/index.md | 2 +- content/2024/no-matter-what/index.md | 6 +- content/2024/selling-to-developers/index.md | 8 +-- content/2024/the-dying-web/index.md | 8 +-- content/2025/best-programmers/index.md | 4 +- .../building-up-and-sanding-down/index.md | 2 +- content/2025/how-to-review-code/index.md | 20 +++---- content/2025/reinvent-the-wheel/index.md | 2 +- content/2025/repeat-yourself/index.md | 10 ++-- .../2026/advice-to-young-developers/index.md | 2 +- .../index.md | 2 +- .../how-other-link-checkers-recurse/index.md | 32 +++++------ content/2026/lychee-recursion/index.md | 4 +- content/2026/newsletter-setup/index.md | 2 +- content/2026/personal-blog/index.md | 2 +- content/2026/taste/index.md | 2 +- .../index.md | 2 +- 68 files changed, 301 insertions(+), 301 deletions(-) diff --git a/content/2009/running-legacy-code/index.md b/content/2009/running-legacy-code/index.md index c1074924..3816a38d 100644 --- a/content/2009/running-legacy-code/index.md +++ b/content/2009/running-legacy-code/index.md @@ -8,7 +8,7 @@ tags=["dev"] This short article deals with a severe problem in software development: bit rot. When switching to a new platform (for instance from Windows XP to Windows Vista/7), the programmers need to make sure that old bits of code run flawlessly. There are several ways to achieve this goal that will be discussed in the next paragraphs: -## Porting the code +## Porting the Code This is generally considered a hard path to follow. For non-trivial legacy code-blocks, chances are high that they contain side-effects and hacks to make them work in different environments. Porting code means replacing parts of the program that use functions and methods that don't exist anymore with new ones which make use of the modern libraries  and routines of the new platform. The significant advantages are maintainable software and sometimes faster running programs. But it may be needed to hack the new platform libraries in order to preserve the whole functionality of an old application. When changing an algorithm inside legacy code, the ported version may become unstable. Thus there may be better ways of maintaining obsolete code today. @@ -16,7 +16,7 @@ This is generally considered a hard path to follow. For non-trivial legacy code- Emulators work much the same like porting the code. You replace old function calls with new ones to make everything work again.
However you don't alter the old codebase itself (because you may not have the source code available) but you create a new compatibility layer that "translates" the communication between the underlying operating system and software (our new platform) and our old software. Emulation can also be very fast and run stable for many years but writing an emulator can be even harder than porting the code because an educational guess may be needed to figure out how the program works internally. Additionally, the emulator itself may become obsolete in the future and might eventually  be replaced by a new one. -## Virtual machines +## Virtual Machines During the last years, a new approach was gaining popularity. The idea is simple: Don't touch anything. Take the whole platform and copy it in order to run old software. The old software runs on top of the old operating system within a virtual machine that runs on the new platform. diff --git a/content/2010/howto-sort-a-vector-or-a-list-in-c-using-stl/index.md b/content/2010/howto-sort-a-vector-or-a-list-in-c-using-stl/index.md index f1be98f7..6fbeb0b9 100644 --- a/content/2010/howto-sort-a-vector-or-a-list-in-c-using-stl/index.md +++ b/content/2010/howto-sort-a-vector-or-a-list-in-c-using-stl/index.md @@ -1,5 +1,5 @@ +++ -title="Howto Sort a Vector or a List in C++ using STL" +title="How to Sort a Vector or a List in C++ Using STL" date=2010-01-27 [taxonomies] tags=["dev"] @@ -104,7 +104,7 @@ int main() { } ``` -## Compilation and execution +## Compilation and Execution Save the above code inside a file, e.g. `list_vector.cpp` and compile it like so: @@ -118,7 +118,7 @@ To run it, execute the resulting binary. ./a.out ``` -## Program output +## Program Output ``` Vector: 12 5 1 diff --git a/content/2011/are-you-a-programmer/index.md b/content/2011/are-you-a-programmer/index.md index f6ef10e7..c6004ff3 100644 --- a/content/2011/are-you-a-programmer/index.md +++ b/content/2011/are-you-a-programmer/index.md @@ -1,5 +1,5 @@ +++ -title="Are you a Programmer?" +title="Are You a Programmer?" date=2011-10-20 [taxonomies] tags=["culture", "dev"] diff --git a/content/2017/boxes-and-trees/index.md b/content/2017/boxes-and-trees/index.md index d2c7889f..e5121411 100644 --- a/content/2017/boxes-and-trees/index.md +++ b/content/2017/boxes-and-trees/index.md @@ -122,13 +122,13 @@ Therefore we would need to add lifetime parameters here. This can make it tediou } ``` -## Putting the tree into a box +## Putting the Tree into a Box All three options are totally valid. Which one you should choose, depends on your use-case. A rule of thumb is to keep it simple. In my case, I chose to use a `Box`, because I did not need any special guarantees. -## Making subtrees optional +## Making Subtrees Optional The next problem I faced was that I could not instantiate a tree structure. The left and right subtree have the type `Box`, but at some @@ -241,7 +241,7 @@ root(15) ); ``` -## Why did it just work in Python? +## Why Did It Just Work in Python? Now you might be wondering why our tree implementation worked so flawlessly in Python. The reason is that Python *dynamically* allocates memory for the tree object at *runtime*. diff --git a/content/2017/digitial-clocks/index.md b/content/2017/digitial-clocks/index.md index 3178d46f..c4696a38 100644 --- a/content/2017/digitial-clocks/index.md +++ b/content/2017/digitial-clocks/index.md @@ -16,7 +16,7 @@ As a result I didn't set the correct time, instead, I set a cooking timer... and {{
}} -## Let's add a clock to the microwave! +## Let's Add a Clock to the Microwave! On occasions like these, I wonder why there's a digital clock on every single household device these days. They're integrated into microwaves, fridges, ovens, dishwashers, dryers, mixers — and that's just the kitchen! @@ -44,7 +44,7 @@ That's why I constantly need to look after those clocks. Let me tell you a secret: When I'm not warming stuff in the oven, I don't want it to tell me the local time. I want the stove to be _off_. -## Why I have trouble setting the clock on our oven +## Why I Have Trouble Setting the Clock on Our Oven Our oven has three buttons related to time: plus, minus and a clock symbol. To set the time, you push the clock symbol. An arrow appears and the display changes to 00:00. You press time again and another arrow appears. diff --git a/content/2017/future-of-rust/index.md b/content/2017/future-of-rust/index.md index d67ed4b4..ce1dca17 100644 --- a/content/2017/future-of-rust/index.md +++ b/content/2017/future-of-rust/index.md @@ -40,7 +40,7 @@ It is not unthinkable that Rust is going to be some healthy competition for C++ The benchmarks of [leaf](https://github.com/autumnai/leaf), a machine learning library written in Rust, are already nothing short of impressive. -## Blockbuster games +## Blockbuster Games [Games](https://www.reddit.com/r/rust_gamedev/comments/4qlftu/look_our_game_writen_entirely_in_rust/d4tz4r3/) are another area where Rust might shine. It's financially attractive for Game Studios to support multiple platforms without much @@ -57,7 +57,7 @@ That said, the first AAA Rust game might still be far in the future. [Here's Bli Maybe — eventually — we will also see formal verification of the Rust core. Projects like [RustBelt](https://plv.mpi-sws.org/rustbelt/) would then open new opportunities in safety-focused industries like the Space industry. Wouldn't it be nice to safely land a Spacecraft on Mars that is controlled by Rust? (Or by one of its spiritual successors.) I wonder if [SpaceX](https://www.spacex.com/) is experimenting with Rust already... -## Integrating with other languages +## Integrating with Other Languages There are many other areas I haven't even mentioned yet. For example, financial and medical software or Scientific Computing, just to name a few. In all cases, Rust might be a good fit. Right now the biggest barrier to entry diff --git a/content/2017/go-vs-rust/index.md b/content/2017/go-vs-rust/index.md index 7cff7f2c..a71435a6 100644 --- a/content/2017/go-vs-rust/index.md +++ b/content/2017/go-vs-rust/index.md @@ -36,7 +36,7 @@ Shuttle 🚀 Both languages seem to be competing for the same user base and they both seem to be _systems programming_ languages, so there must be a clear winner, right? -## Go: practical, pragmatic, plain +## Go: Practical, Pragmatic, Plain {{
}} @@ -47,7 +47,7 @@ But with Go, you _get things done_ — fast. Go is one of the most productive languages I've ever worked with. The mantra is: solve real problems today. -## Rust's strong guarantees come at a cost +## Rust's Strong Guarantees Come at a Cost {{
}} @@ -70,7 +70,7 @@ That's because these guarantees come with a cost: ramp-up time. You'll need to unlearn bad habits and learn new concepts. Chances are, you will [fight with the borrow checker](https://m-decoster.github.io/2017/01/16/fighting-borrowchk/) a lot when you start out. -## Case-study: Primality by trial division +## Case-Study: Primality by Trial Division Let's say, you want to check if a number is [prime](https://en.wikipedia.org/wiki/Prime_number). The easiest way is to check if we can divide the number by any smaller natural number (without a remainder). If not, we found a prime number! This approach is called [trial division](https://en.wikipedia.org/wiki/Trial_division). @@ -136,14 +136,14 @@ It might seem a little alien at first, but it will become second-nature after a This was just a quick example, of course. I suggest, you browse some code on [Rosetta Code](https://rosettacode.org/wiki/Rosetta_Code) to get a better feeling for both languages. -## Case study: Finding duplicate words in text files +## Case Study: Finding Duplicate Words in Text Files If you're more like a visual type, here is a video where I write a simple concurrent program in Go and Rust to compare both languages: {{